基于FPGA的簡(jiǎn)易數字存儲示波器設計
3 FPGA程序設計
此部分實(shí)現的主要的功能是將A/D轉換后的數據經(jīng)FPGA控制寫(xiě)入RAM及將數據從RAM讀出經(jīng)FPGA輸出給D/A轉換器,頂層原理圖如圖5所示。外圍主要接口端功能為:A[15..3]為數據輸入端,CLK4M為時(shí)鐘信號端,TONGIN為觸發(fā)端口,CS、RC、WE、OE為片選、轉換、讀寫(xiě)控制端,RAMI、RAMO、AA為存儲器I/O端、地址端,QQ為數據輸出端。
其中模塊CHANA實(shí)現的功能是對數據的最高位取反,因為AD976最高位“l(fā)”表示負電平,而AD669最高位“1”表示高電平;模塊INTRD在EN為“1”,信號上升沿過(guò)零點(diǎn)時(shí),Q輸出為“l(fā)”,直到完成對存儲器的寫(xiě)操作為止;模塊SIGND是整個(gè)程序的核心部分,主要功能是為存儲器和lAD976提供控制信號,啟動(dòng)A/D轉換,對存儲器進(jìn)行寫(xiě)操作和讀操作;模塊SAN在對存儲器由寫(xiě)操作轉變?yōu)樽x操作后,將存儲器的數據輸出變?yōu)楦咦钁B(tài),不妨礙存儲器數據的正常讀入;模塊TONG端口A(yíng)外接開(kāi)關(guān),按下時(shí)低電平,起同步作用。仿真結果如圖6,(a)為寫(xiě)操作時(shí)的仿真波形;(b)為讀操作時(shí)的仿真波形。當運行在寫(xiě)操作時(shí),QQ無(wú)輸出,如圖6(a)所示,實(shí)現存儲功能,讀操作時(shí),QQ輸出,由于模塊CHANA的存在,QQ輸出的數據要對A輸入的數據首位取反,即A輸入是0101,QQ輸出是1101,如圖6(b)所示,仿真結果正確。
4 結語(yǔ)
本文以PLC器件為控制核心,通過(guò)附加一定的外電路及普通示波器構成簡(jiǎn)易數字存儲器,使普通示波器具有波形數字存儲的功能。其中以FPGA為主部件的控制部分采用VHDL語(yǔ)言,按模塊化方式進(jìn)行設計,并將各模塊集成于芯片中,最后通過(guò)MAXPLUS II軟件對設計進(jìn)行邏輯仿真,對FPGA芯片進(jìn)行編程,實(shí)現系統的設計要求。隨著(zhù)科學(xué)技術(shù)的不斷發(fā)展,這種以FPGA為基礎的軟件硬件化,其發(fā)展前景十分看好。
評論