一種數(shù)字示波器的微處理器硬件設(shè)計(jì)
掃描二維碼
隨時(shí)隨地手機(jī)看文章
引言
隨著通信技術(shù)的迅猛發(fā)展,電信號(hào)越來越復(fù)雜化和瞬態(tài)化,開發(fā)人員對測量領(lǐng)域必不可少的工具——數(shù)字示波器的性能提出了越來越高的要求。最大限度提高實(shí)時(shí)采樣率和波形捕獲能力成為了國內(nèi)外眾多數(shù)字示波器生產(chǎn)廠商研究的重點(diǎn),實(shí)時(shí)采樣率和波形捕獲率的提高又必然帶來大量高速波形數(shù)據(jù)的傳輸、保存和處理的問題。因此,作為數(shù)字示波器數(shù)據(jù)處理和系統(tǒng)控制的中樞,微處理器性能至關(guān)重要。本文選用TI公司的雙核DSP OMAP-L138作為本設(shè)計(jì)的微處理器,并實(shí)現(xiàn)了一種數(shù)字示波器微處理器硬件設(shè)計(jì)。
數(shù)字示波器的基本架構(gòu)
目前數(shù)字示波器多采用DSP、內(nèi)嵌微處理器型FPGA或微處理器+FPGA架構(gòu)。雖然內(nèi)嵌微處理器型FPGA靈活性強(qiáng),可以充分進(jìn)行設(shè)計(jì)開發(fā)和驗(yàn)證,便于系統(tǒng)升級(jí)且FPGA外圍電路簡單。但是該類型FPGA屬于高端FPGA,價(jià)高且供貨渠道難得,不適合低成本的數(shù)字示波器使用。若單獨(dú)使用DSP,雖然其數(shù)據(jù)處理能力強(qiáng)大,運(yùn)行速度較高,但DSP的控制能力不突出,且數(shù)字示波器的采樣率越來越高,DSP內(nèi)部不能做數(shù)據(jù)流降速和緩存,當(dāng)設(shè)計(jì)采用高實(shí)時(shí)采樣率的ADC,就得選用頻率更高且內(nèi)部存儲(chǔ)資源更豐富的DSP,而此類DSP一般都價(jià)格昂貴,同樣不適合低成本的數(shù)字示波器使用。因此,微處理器+FPGA架構(gòu)的方案是本設(shè)計(jì)首選。微處理器+FPGA架構(gòu)的數(shù)字示波器的系統(tǒng)結(jié)構(gòu)圖如圖1所示:
圖1 微處理器+FPGA架構(gòu)的數(shù)字示波器系統(tǒng)結(jié)構(gòu)圖
被測信號(hào)經(jīng)模擬通道運(yùn)放調(diào)理后送到ADC器件;ADC轉(zhuǎn)換器將輸入端的信號(hào)轉(zhuǎn)換成相應(yīng)的數(shù)字信號(hào)并經(jīng)過FPGA緩存和預(yù)處理;微處理器對采樣得到的數(shù)字信號(hào)進(jìn)行相關(guān)處理與運(yùn)算;最后將波形送到屏幕上顯示,完成一次采集過程。同時(shí)采集過程中觸發(fā)電路不斷監(jiān)測輸入信號(hào),看是否出現(xiàn)觸發(fā)狀態(tài),觸發(fā)條件決定了波形的起始位置,觸發(fā)系統(tǒng)能夠保證被測波形能夠穩(wěn)定的顯示到屏幕上。
微處理器選型
本設(shè)計(jì)實(shí)時(shí)采樣率高達(dá)2Gsps,需要微處理器實(shí)時(shí)處理的波形數(shù)據(jù)量很大。同時(shí)微處理器要實(shí)現(xiàn)模擬通道控制、高速ADC采樣控制、波形數(shù)據(jù)存儲(chǔ)控制、LCD顯示控制等。因此兼具強(qiáng)大的數(shù)據(jù)處理能力和優(yōu)異控制能力的微處理器成為本設(shè)計(jì)首選。
基于這些要求,本設(shè)計(jì)選擇了TI公司的OMAP- L138 DSP。此芯片是TI公司2009年推出的一款高性能處理器芯片。該芯片特點(diǎn)如下:
1、采用C*8 DSP內(nèi)核與ARM9內(nèi)核的雙核結(jié)構(gòu),可實(shí)現(xiàn)高達(dá)300 MHz的單位內(nèi)核頻率。利用片上ARM9,開發(fā)人員可充分利用DSP內(nèi)核支持高強(qiáng)度的實(shí)時(shí)處理計(jì)算,同時(shí)讓ARM負(fù)責(zé)非實(shí)時(shí)任務(wù)。
2、豐富的內(nèi)部存儲(chǔ)器資源。其中ARM核內(nèi)部有16KB的L1程序Cache和16KB的數(shù)據(jù)Cache;DSP核采用二級(jí)緩存結(jié)構(gòu),包括32KB 的L1程序Cache、32KB 的數(shù)據(jù)Cache和256KB 的L2統(tǒng)一映射SRAM,該二級(jí)高速緩存結(jié)構(gòu)可以為所有載入、存儲(chǔ)以及處理請求提供服務(wù),可以為CPU提供高效、高速的數(shù)據(jù)共享;此外在ARM核與DSP核之間還有高達(dá)128KB的片上RAM,可被ARM核、DSP核以及片外存儲(chǔ)器訪問。
3、豐富的外設(shè)資源。主要包括1個(gè)EMIFA口,可接16bit SDRAM或者NOR/NAND Flash;1個(gè)EMIFB口,可接16bit的DDR2(最高頻率150MHz)或16bit mDDR (最高頻率133MHz);3個(gè)UART接口;2個(gè)SPI接口;2個(gè)I2C接口;1個(gè)EMAC控制器;1個(gè)USB2.0接口和1個(gè)USB1.1接口;1個(gè)LCD控制器;1個(gè)SATA控制器;1個(gè)uPP接口;1個(gè)VPIF接口;4個(gè)64位通用定時(shí)器。豐富的外設(shè)資源不僅可以為示波器提供與PC機(jī)、便攜式USB接口設(shè)備通信的接口,而且極大減少DSP外圍電路的設(shè)計(jì)規(guī)模,
4、低功耗。采用1.2V內(nèi)核電壓,1.8V或3.3V I/O接口電壓,在深度睡眠模式下功耗僅有6mW,正常工作模式下功耗約為420mW。
此外OMAP-L138為浮、定點(diǎn)兼容DSP,使用硬件來完成浮點(diǎn)運(yùn)算,可以在單周期內(nèi)完成,這一優(yōu)點(diǎn)在實(shí)現(xiàn)高精度復(fù)雜算法時(shí)尤為突出,為復(fù)雜算法的實(shí)時(shí)處理提供了保證。OMAP-L138還可與C*8 DSP實(shí)現(xiàn)引腳對引腳兼容,從而使客戶可采用不同的處理器同時(shí)開發(fā)多種不同特性的產(chǎn)品。
數(shù)字示波器系統(tǒng)硬件結(jié)構(gòu)設(shè)計(jì)
本設(shè)計(jì)ADC選用Atmel公司的AT84AD001,該芯片有兩個(gè)通道,每個(gè)通道采樣率高達(dá)1Gsps,拼合可實(shí)現(xiàn)2Gsps的實(shí)時(shí)采樣率;FPGA選用Xilinx公司Spartan-3A系列的XC3S400A芯片,該芯片內(nèi)有8064個(gè)邏輯單元,360Kbit塊RAM,56Kbit分布式RAM,4個(gè)數(shù)字時(shí)鐘管理模塊(DCM),311個(gè)I/O口。300KB容量的SRAM芯片外掛在FPGA上作深存儲(chǔ)用,由于SRAM存儲(chǔ)器容量比FPGA內(nèi)部緩存FIFO大得多,能夠存儲(chǔ)更多的波形數(shù)據(jù),因而能觀察到更多的波形細(xì)節(jié)。采用64Mbit容量的SPI Flash存儲(chǔ)示波器掉電需要保存的數(shù)據(jù),例如程序代碼、Boot loader程序、中英文字庫、開機(jī)畫面等。
基于OMAP-L138的示波器硬件系統(tǒng)結(jié)構(gòu)圖如圖2所示:
圖2 數(shù)字示波器系統(tǒng)結(jié)構(gòu)圖
本設(shè)計(jì)中,被測信號(hào)進(jìn)入模擬通道調(diào)理后送入ADC,ADC對模擬信號(hào)采樣、量化后,進(jìn)入FPGA數(shù)據(jù)流降速和數(shù)據(jù)同步處理,然后根據(jù)存儲(chǔ)深度要求選擇存入FPGA內(nèi)部FIFO或者存入片外SRAM,待FPGA內(nèi)部FIFO或者片外SRAM滿標(biāo)志有效后,DSP讀取采樣數(shù)據(jù)存入DDR2 SDRAM,并完成一系列復(fù)雜的處理和運(yùn)算,如FFT、插值和濾波等,再存入在DDR2內(nèi)拓展的顯示存儲(chǔ)區(qū),待需要顯示時(shí)再由DSP讀取顯存中的數(shù)據(jù)通過內(nèi)部集成的LCD控制器采用DMA方式將數(shù)據(jù)送到LCD顯示,完成一次采集過程。
OMAP-L138與DDR2的接口電路設(shè)計(jì)
OMAP-L138內(nèi)部集成的DDR2/Mobile DDR控制器可外接工作頻率150MHz的DDR2 SDRAM或者工作頻率133MHz的Mobile DDR。本設(shè)計(jì)采用DDR2 SDRAM作為系統(tǒng)后級(jí)波形數(shù)據(jù)緩存器。較之SDRAM,DDR2 SDRAM不僅讀寫速度可大幅提高,存儲(chǔ)容量更是得到極大擴(kuò)展,示波器因而能夠存儲(chǔ)更多波形數(shù)據(jù)并觀察到更多的波形細(xì)節(jié),提高示波器對復(fù)雜信號(hào)和瞬態(tài)信號(hào)的捕獲概率。本設(shè)計(jì)的DDR2 SDRAM選用鎂光公司的DDR2 800內(nèi)存顆粒,型號(hào)為MT47H64M16,容量為1Gbit,核心工作電壓為1.8V,核心工作頻率為400MHz,由于OMAP-L138內(nèi)部的DDR2控制器最高工作頻率為150MHz,所以此系統(tǒng)中DDR2需要降頻使用。OMAP-L138與DDR2的接口連接示意圖如圖3所示:
圖3 OMAP-L38與DDR2的接口連接示意圖
DDR2的信號(hào)線包括時(shí)鐘、數(shù)據(jù)和命令三部分。本設(shè)計(jì)由DDR2控制器提供差分時(shí)鐘CLK+和CLK-給DDR2,,差分時(shí)鐘之間并接一個(gè)100Ω的匹配電阻,用以消除時(shí)鐘的毛刺并限制驅(qū)動(dòng)電流;數(shù)據(jù)部分主要完成數(shù)據(jù)傳輸工作,包括數(shù)據(jù)線DQ[15:0]、數(shù)據(jù)同步信號(hào)DQS(本設(shè)計(jì)LDQS對應(yīng)數(shù)據(jù)線低八位,UDQS對應(yīng)數(shù)據(jù)線高八位)、數(shù)據(jù)信號(hào)屏蔽線DM(在突發(fā)寫傳輸時(shí)屏蔽不存儲(chǔ)的數(shù)據(jù),LDM對應(yīng)數(shù)據(jù)位低八位DQ[7:0],UDM對應(yīng)數(shù)據(jù)線高八位DQ[15:8]),本設(shè)計(jì)在DQS信號(hào)和DM信號(hào)上串接一個(gè)22Ω的電阻,起抗干擾和濾波作用,提高信號(hào)質(zhì)量;命令部分包括行地址選通信號(hào)RASn、列地址選通信號(hào)CASn、寫使能信號(hào)WEn、片選信號(hào)CSn、時(shí)鐘使能信號(hào)CKE以及芯片內(nèi)部終端電阻使能ODT,主要完成尋址、組成各種控制命令以及內(nèi)存初始化工作。本設(shè)計(jì)由于DDR2控制器內(nèi)沒有終端電阻,因此將DDR2 SDRAM的ODT信號(hào)直接接地使DDR2芯片內(nèi)的終端電阻無效。
DDR2的讀、寫時(shí)序圖分別見圖4和圖5:
圖4 DDR2的讀數(shù)據(jù)時(shí)序圖
圖5 DDR2的寫數(shù)據(jù)時(shí)序圖
以太網(wǎng)的接口電路設(shè)計(jì)
用示波器測量電信號(hào)時(shí),信息和測量結(jié)果便捷的保存和共享變得日益重要。若數(shù)字示波器提供以太網(wǎng)接口,開發(fā)人員就可以方便地將測量數(shù)據(jù)和結(jié)果通過網(wǎng)絡(luò)共享,實(shí)現(xiàn)遠(yuǎn)程調(diào)試;也可以將波形數(shù)據(jù)通過網(wǎng)絡(luò)上傳到PC機(jī)上,在PC機(jī)上實(shí)現(xiàn)波形數(shù)據(jù)的處理、分析和顯示。
OMAP-L138內(nèi)部集成的以太網(wǎng)控制器(EMAC)支持IEEE802.3標(biāo)準(zhǔn),支持10Base-T和100Base-T兩種以太網(wǎng)標(biāo)準(zhǔn),有全雙工和半雙工兩種工作模式可供選擇,提供了MII和RMII兩種以太網(wǎng)接口。
選用LAN8710以太網(wǎng)收發(fā)器,該以太網(wǎng)收發(fā)器提供MII和RMII兩種以太網(wǎng)接口。本設(shè)計(jì)采用MII接口實(shí)現(xiàn)LAN8710與EMAC的互聯(lián)。MII接口包括一個(gè)數(shù)據(jù)接口,一個(gè)MAC和PHY之間的管理接口。數(shù)據(jù)接口包括分別用于發(fā)送器和接收器的兩條獨(dú)立信道。每條信道有4根數(shù)據(jù)線、時(shí)鐘和控制信號(hào),其中管理接口是雙信號(hào)接口:一個(gè)是時(shí)鐘信號(hào),另一個(gè)是數(shù)據(jù)信號(hào)。通過管理接口,上層能監(jiān)視和控制PHY。管理接口的時(shí)鐘MDC由EMAC提供,最高可達(dá)8.3MHz;數(shù)據(jù)信號(hào)MDIO是雙向接口,與MDC同步,控制收發(fā)器并從收發(fā)器收集狀態(tài)信息??墒占男畔ㄦ溄訝顟B(tài)、傳輸速度與選擇、斷電、低功率休眠狀態(tài)、TX/RX模式選擇、自動(dòng)協(xié)商控制、環(huán)回模式控制等。
以太網(wǎng)接口連接示意圖如圖6所示:
圖6 以太網(wǎng)接口連接示意圖
本設(shè)計(jì)采用外接25M有源晶振為以太網(wǎng)收發(fā)器提供時(shí)鐘輸入,當(dāng)配置為100Mbit/s的數(shù)據(jù)傳輸速率時(shí),LAN8710提供給EMAC 25MHz的發(fā)送時(shí)鐘TXCLK和接收時(shí)鐘RXCLK;當(dāng)配置為10Mbit/s的數(shù)據(jù)傳輸速率時(shí),25MHz時(shí)鐘輸入經(jīng)LAN8710內(nèi)部PLL分頻10倍后得到2.5MHz的收、發(fā)數(shù)據(jù)時(shí)鐘送給EMAC。發(fā)送數(shù)據(jù)總線TXD[3:0]和接收數(shù)據(jù)總線RXD[3:0]分別在發(fā)送時(shí)鐘TXCLK和接收時(shí)鐘RXCLK的上升沿被觸發(fā)。當(dāng)選擇半雙工工作模式時(shí),網(wǎng)絡(luò)沖突監(jiān)測信號(hào)COL若檢測到網(wǎng)絡(luò)出現(xiàn)數(shù)據(jù)發(fā)送沖突,該信號(hào)會(huì)自動(dòng)置位報(bào)警。載波感應(yīng)信號(hào)CRS在網(wǎng)絡(luò)處于繁忙狀態(tài)時(shí),會(huì)自動(dòng)置位并告知EMAC。若在接收的幀中發(fā)現(xiàn)錯(cuò)誤,接收數(shù)據(jù)錯(cuò)誤標(biāo)志信號(hào)RXERR會(huì)置位,并持續(xù)一個(gè)或幾個(gè)RXCLK時(shí)鐘周期。
結(jié)論
本設(shè)計(jì)有以下優(yōu)點(diǎn):數(shù)據(jù)處理與系統(tǒng)控制同步執(zhí)行;微處理器內(nèi)部存儲(chǔ)資源豐富,且采用二級(jí)緩存結(jié)構(gòu),系統(tǒng)響應(yīng)速度快;外設(shè)資源豐富,提供了如USB接口、RS232接口和以太網(wǎng)接口等與PC機(jī)互聯(lián)的接口,方便示波器上采集到的波形數(shù)據(jù)在PC機(jī)上實(shí)時(shí)處理和在線調(diào)試;外部存儲(chǔ)器資源豐富,采用1Gbit 容量的DDR2 SDRAM作后級(jí)波形數(shù)據(jù)緩存區(qū)和顯示數(shù)據(jù)緩存區(qū),能夠存儲(chǔ)更多波形數(shù)據(jù),觀察到更多波形細(xì)節(jié)。由此可見,采用該示波器系統(tǒng)可大幅提高數(shù)字示波器的數(shù)據(jù)處理能力和波形捕獲率,整機(jī)的響應(yīng)速度也將上一個(gè)臺(tái)階。