基于FPGA的示波器圖文顯示系統(tǒng)的設(shè)計(jì)方案
0 引言
FPGA(Field Programmable Gate Array),即現(xiàn)場(chǎng)可編程門陣列是大規(guī)??删幊踢壿嬈骷?,可以取代現(xiàn)行所有的全部微機(jī)接口芯片,實(shí)現(xiàn)微機(jī)系統(tǒng)中的存儲(chǔ)、地址譯碼等多種功能。利用 FPGA可以把多個(gè)微機(jī)系統(tǒng)的功能電路集成在一塊芯片上。應(yīng)用FPGA設(shè)計(jì)功能電路時(shí),可以讓人們的思路從傳統(tǒng)的以單片機(jī)或DSP芯片為核心的系統(tǒng)集成型轉(zhuǎn)向單一專用芯片型設(shè)計(jì)。傳統(tǒng)的示波器雖然功能齊全,但是體積大、重量重、成本高、等一系列問題使應(yīng)用受到了限制。有鑒于此,便攜式數(shù)字存儲(chǔ)采集器就應(yīng)運(yùn)而生,它采用了LCD顯示、高速A/D采集與轉(zhuǎn)換、ASIC芯片等新技術(shù),具有很強(qiáng)的實(shí)用性和巨大的市場(chǎng)潛力,也代表了當(dāng)代電子測(cè)量?jī)x器的一種發(fā)展趨勢(shì),即向功能多、體積小、重量輕、使用方便的掌上型儀器發(fā)展。
1 系統(tǒng)總體設(shè)計(jì)讀寫
根據(jù)設(shè)計(jì)要求:在示波器上顯示2個(gè)以上字符或圖案,如顯示0-9十個(gè)數(shù)字及英文字符、圖象等,結(jié)合示波器顯示原理,設(shè)計(jì)電路如圖1所示。將要顯示的數(shù)字或符號(hào)進(jìn)行取模,得到其二進(jìn)制形式表示。將轉(zhuǎn)換好的數(shù)據(jù)送入FPGA內(nèi)部RAM存儲(chǔ)。
在設(shè)計(jì)上我們使用了XILINX的SPARTAN-3芯片,作為控制器,完成總的數(shù)控部分、鍵盤和和顯示接口部分的控制。采用八位(或者更高位)D/A轉(zhuǎn)換,對(duì)FPGA芯片輸出二進(jìn)制數(shù)字量進(jìn)行數(shù)一模轉(zhuǎn)換,在經(jīng)過高速
2 系統(tǒng)硬件設(shè)計(jì)
2.1 總體控制模塊
基于本設(shè)計(jì),系統(tǒng)控制模塊的部分是具有掩膜可編程門陣列的邏輯器件——FPGA。
Spartan系列FPGA是Xilinx公司可編程邏輯產(chǎn)品中的高性價(jià)比產(chǎn)品的代表,而Spartan-Ⅲ系列FPGA是為那些需要大容量、低價(jià)格電子應(yīng)用的用戶而設(shè)計(jì)的。本系統(tǒng)使用的是XILINX公司的XC3S200型號(hào)芯片,其技術(shù)參數(shù)如下:
●4 320個(gè)邏輯單元;
●系統(tǒng)門密度200 k個(gè);
●CLB陣列24*20,共480個(gè);
●最大用戶I/O173,最大差分I/O76;
●分布式RAM容量30 Kbit,Block RAM容量216Kbit;
●嵌入式18x18乘法器支持高性能DSP應(yīng)用;
●PCI和帶有LVDS的高速差分信號(hào)。
2.2 存儲(chǔ)單元模塊
由于FPGA基于CMOS SRAM工藝,不具備掉電保護(hù)功能,當(dāng)無(wú)電源供電時(shí),配置的數(shù)據(jù)丟失,芯片的功能也隨之丟失。因此,本設(shè)計(jì)采用FLASH存儲(chǔ)器在線重配置的方法。
2.3 外圍電路模塊
2.3.1 D/A轉(zhuǎn)換
在D/A選擇上,我們用的是美國(guó)半導(dǎo)體公司的
它的技術(shù)參數(shù)為:建立時(shí)間1 us;8位并行;低功率損耗20 mW;支持電壓:5 V~15 V。
2.3.2 運(yùn)算放大
在D/A轉(zhuǎn)換之后,我們得到的是電流信號(hào),而需要輸入示波器的為電壓信號(hào),因此運(yùn)用運(yùn)算放大器來進(jìn)行轉(zhuǎn)換,同時(shí)將運(yùn)放設(shè)計(jì)為可調(diào)形式,通過調(diào)節(jié)它便可以調(diào)節(jié)輸出電壓的大小,達(dá)到控制顯示幅值的目的。本設(shè)計(jì)采用LM741系列運(yùn)放,其技術(shù)指標(biāo)加下:
3 系統(tǒng)軟件設(shè)計(jì)
基于VHDL語(yǔ)言的功能與靈活性,非依賴性和可移植性種種優(yōu)勢(shì),本設(shè)計(jì)在FPGA編程上采用了VHDL語(yǔ)言實(shí)現(xiàn)??傮w設(shè)計(jì)思路:采用50 MHz外部時(shí)鐘控制對(duì)FPGA內(nèi)部進(jìn)行分頻控制,在分頻模塊的作用下得到設(shè)計(jì)所需要的時(shí)鐘信號(hào)。通過按鍵選通在ROM內(nèi)部選擇要顯示的模塊部分,進(jìn)行X、 Y方向掃描,得到初步的數(shù)據(jù),同時(shí)外加Z方向掃描來控制所顯圖形的亮度。通過將所有的“1”存儲(chǔ)在一個(gè)ROM中作為緩存,達(dá)到消除零點(diǎn)的目的。將ROM中的數(shù)據(jù)轉(zhuǎn)移到RAM中,通過乒乓交換操作來進(jìn)行模式轉(zhuǎn)換,最后通過外圍電路輸入示波器,實(shí)現(xiàn)顯示??傮w流程圖:
4 結(jié)語(yǔ)
本文是基于FPGA的數(shù)字示波器圖文顯示系統(tǒng)的硬件/軟件的設(shè)計(jì)思路和設(shè)計(jì)方案。此系統(tǒng)設(shè)計(jì)完成后,測(cè)試表明系統(tǒng)可以將相應(yīng)的圖形文字顯示出來,顯示的圖形和文字與預(yù)期的基本一致。該設(shè)計(jì)滿足了系統(tǒng)的需要,更重要的是具有很強(qiáng)的靈活性和可控性,同時(shí)使顯示更加高速度快捷,具有非常廣闊的應(yīng)用前景。
評(píng)論