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