摘 要:介紹數(shù)字邏輯分析儀觸發(fā)電路的工作原理,討論了EDA技術(shù)實(shí)現(xiàn)觸發(fā)電路設(shè)計(jì)的方法,同時(shí)給出了總的時(shí)序仿真圖和部分電路的程序設(shè)計(jì)。<!--摘要CH(結(jié)束)←-->
<!--→關(guān)鍵CH(開始)--> 關(guān)鍵詞:邏輯分析儀;FPGA;觸發(fā)電路;設(shè)計(jì)<!--關(guān)鍵CH(結(jié)束)←--><!--→作者EN(開始)-->
在數(shù)字電路的調(diào)試中,往往要測試多路信號(hào)波形,分析其邏輯關(guān)系,采用普通示波器時(shí),最多只能測試兩路信號(hào)波形,若采用市面上的邏輯分析儀,由于其核心部件設(shè)計(jì)昂貴,投資較高。然而采用FPGA技術(shù)設(shè)計(jì)一種簡易邏輯分析儀,這種儀器性價(jià)比好,穩(wěn)定性高,具有一定的教學(xué)和科研價(jià)值。本文著重討論基于FPGA技術(shù)的邏輯分析儀觸發(fā)電路的實(shí)現(xiàn)方法。
1 邏輯分析儀核心硬件部分的總體設(shè)計(jì)
邏輯分析儀的功能是完成對(duì)數(shù)據(jù)的采樣存儲(chǔ)功能。他的核心硬件部分由觸發(fā)電路模塊、電平轉(zhuǎn)換模塊、啟停控制電路模塊、內(nèi)部RAM存儲(chǔ)電路模塊、多路量化顯示電路模塊等5個(gè)模塊組成,其內(nèi)部原理框圖如圖1所示。

其工作原理是:首先接收上位機(jī)的指令和觸發(fā)字,通過觸發(fā)電路產(chǎn)生觸發(fā),啟動(dòng)采樣電路進(jìn)行數(shù)據(jù)采樣,同時(shí)把數(shù)據(jù)存入EPF10K10LC84-4芯片(一種FPGA芯片)內(nèi)部 RAM中,當(dāng)RAM寫滿時(shí)產(chǎn)生一個(gè)FULL信號(hào)使采樣電路停止工作,隨時(shí)可將RAM中的數(shù)據(jù)送到示波器顯示多路信號(hào)波形。其中,觸發(fā)電路的實(shí)現(xiàn)是一項(xiàng)關(guān)鍵技術(shù),本文就針對(duì)觸發(fā)電路模塊的FPGA實(shí)現(xiàn)方法進(jìn)行具體的說明。
2 邏輯分析儀核心硬件觸發(fā)電路模塊的設(shè)計(jì)
2.1 觸發(fā)電路模塊的原理
觸發(fā)電路的功能是當(dāng)滿足觸發(fā)字條件后,產(chǎn)生一個(gè)觸發(fā)信號(hào)用以啟動(dòng)采樣電路工作。觸發(fā)電路本身又可以分為2大模塊:模塊一由單片機(jī)完成控制信號(hào)和觸發(fā)字的預(yù)置功能;另一模塊由FPGA接收單片機(jī)的預(yù)置觸發(fā)字,當(dāng)滿足觸發(fā)條件時(shí)產(chǎn)生觸發(fā)信號(hào),使采樣電路工作。其中FPGA部分實(shí)現(xiàn)觸發(fā)電路有3種觸發(fā)方法:序列觸發(fā)、并行觸發(fā)和直接觸發(fā)。其原理都是:只要滿足觸發(fā)條件就產(chǎn)生觸發(fā)信號(hào)送給后續(xù)模塊使其開始工作。由于并行觸發(fā)方式實(shí)現(xiàn)多路信號(hào)的檢測觸發(fā)比較容易,擴(kuò)展也方便,設(shè)計(jì)方法更系統(tǒng),故本文著重介紹這種觸發(fā)方式的FPGA設(shè)計(jì)方法。此處以一個(gè)四級(jí)的并行觸發(fā),檢測四路信號(hào)為例來具體說明并行觸發(fā)方法的原理。
四級(jí)的并行觸發(fā)是在設(shè)置了2個(gè)按預(yù)定次序排列的觸發(fā)字后,只有當(dāng)四路信號(hào)同時(shí)滿足所設(shè)的觸發(fā)條件時(shí),才產(chǎn)生觸發(fā)信號(hào)。首先由上位機(jī)向16b鎖存器預(yù)置觸發(fā)字,分兩次鎖存2個(gè)8b觸發(fā)字。然后檢測待測四路信號(hào),待測四路信號(hào)分別通過一個(gè)4b數(shù)據(jù)移位寄存器同時(shí)與2個(gè)觸發(fā)字進(jìn)行比較,當(dāng)兩者完全相同時(shí)產(chǎn)生一個(gè)觸發(fā)信號(hào)四路信號(hào)必須分別為1111,1111,1111,1010時(shí)電路才產(chǎn)生觸發(fā)信號(hào)。
2.2 觸發(fā)電路模塊的FPGA實(shí)現(xiàn)
該模塊主要實(shí)現(xiàn)觸發(fā)電路的功能,系統(tǒng)設(shè)計(jì)采用VHDL語言自頂向上的設(shè)計(jì)方法,采用模塊化設(shè)計(jì)思想, 將此部分電路又分為4個(gè)模塊:移位寄存器電路模塊、鎖存器電路模塊、轉(zhuǎn)換接口電路模塊、比較器電路模塊。其總體結(jié)構(gòu)圖如圖2所示。波形仿真圖如圖3所示。由于篇幅有限僅討論轉(zhuǎn)換接口電路模塊的VHDL設(shè)計(jì)。


由于移位寄存器一次只能處理一路信號(hào),四路信號(hào)需要4個(gè)移位寄存器,這就需要一個(gè)轉(zhuǎn)換電路將四路由移位寄存器模塊輸出的信號(hào)進(jìn)行處理,轉(zhuǎn)換成可以和2個(gè)觸發(fā)字同時(shí)進(jìn)行比較。下面是實(shí)現(xiàn)上述功能的VHDL源程序:


其中Clk信號(hào)是系統(tǒng)時(shí)鐘,En信號(hào)是同步信號(hào),Din_1,Din_2,Din_3,Din_4信號(hào)是移位寄存器的輸出信號(hào),Cqout信號(hào)是送給比較器模塊的。波形仿真圖如圖4所示。

3 結(jié)語
綜上所述,在掌握邏輯分析儀觸發(fā)電路的工作原理基礎(chǔ)上,可以再利用先進(jìn)的EDA工具,用VHDL語言設(shè)計(jì)出自己實(shí)際需要的邏輯分析儀觸發(fā)電路?梢 VHDL語言設(shè)計(jì)的出現(xiàn)從根本上改變了以往數(shù)字電路的設(shè)計(jì)模式,使電路設(shè)計(jì)由硬件設(shè)計(jì)轉(zhuǎn)變?yōu)檐浖O(shè)計(jì),這樣提高了設(shè)計(jì)的靈活性,降低了電路的復(fù)雜程度,同時(shí)也降低了設(shè)計(jì)的成本。
參考文獻(xiàn)
[1]潘松,黃繼業(yè).EDA技術(shù)實(shí)用教程[M].北京:科學(xué)出版社,2002.
[2]林敏,方穎立.VHDL數(shù)字系統(tǒng)設(shè)計(jì)與高層次綜合[M].北京:電子工業(yè)出版社,2002.
[3]王振紅.VHDL數(shù)字電路設(shè)計(jì)與應(yīng)用實(shí)踐教程[M].北京:機(jī)械工業(yè)出版社,2003.
[4]徐維祥,劉旭敏.單片微型機(jī)原理及應(yīng)用[M].大連:大連理工大學(xué)出版社,2002.





