五功能智能邏輯筆的設(shè)計(jì)(全套資料)_第1頁(yè)
五功能智能邏輯筆的設(shè)計(jì)(全套資料)_第2頁(yè)
五功能智能邏輯筆的設(shè)計(jì)(全套資料)_第3頁(yè)
五功能智能邏輯筆的設(shè)計(jì)(全套資料)_第4頁(yè)
五功能智能邏輯筆的設(shè)計(jì)(全套資料)_第5頁(yè)
已閱讀5頁(yè),還剩29頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、五功能智能邏輯筆的設(shè)計(jì)摘要:邏輯筆在數(shù)字電路檢測(cè)中使用是最廣泛的,它不僅新穎方便,而且操作起 來(lái)方便簡(jiǎn)單。作為一種便攜式電路檢測(cè)工具,可以通過(guò)不同顏色的LED燈來(lái)直 接顯示出電平的狀態(tài)。本課題是基于FPGA設(shè)計(jì)的一款五功能智能邏輯筆,精確 檢測(cè)5V和3.3V兩個(gè)邏輯電平,并且還可以檢測(cè)脈沖信號(hào)和髙阻態(tài)。本課題采 用狀態(tài)機(jī)去設(shè)計(jì),LM393雙向比較器去構(gòu)成了一個(gè)電平信號(hào)采樣電路,系統(tǒng)主 要由被測(cè)信號(hào)、邏輯電平測(cè)量電路、雙向比較器LM393、FPGA的狀態(tài)機(jī)、LED 顯示組成。最終的結(jié)果是通過(guò)LED燈顯示反饋給用戶。關(guān)鍵詞:邏輯筆;FPGA ;狀態(tài)機(jī)12Design of Five-Functio

2、n Intelligent Logic PenWen YalinSchool of Electronic Information Engineering, Major in Electronic InformationScience and Technology, 2016Instructor: Zhang JianniAbstract: Logic pen is the most widely used for digital circuit detection . It is not only novel and convenient but also convenient and sim

3、ple to operate As a portable circuit detection tool . the status of the level can be directly displayed by LED lights of different colors This subject is a five-function intelligent logic pen designed based on FPGA , which can accurately detects two logic levels of 5V and 3.3V , and can also detect

4、pulse signals and high-impedance states . This subject is designed with a state machine The LM393 bidirectional comparator constitutes a level signal sampling circuit The system consists of the signal under test , a logic level measurement circuit, a bidirectional comparator LM393 , a state machine

5、for FPGA , and an LED display The end result is the feedback to the user through the LED light display.Keywords: Logic Pen; FPGA: State Machine摘要1Abstract21緒論51.1課題背景及研究意義51.2課題的設(shè)計(jì)要求51.3課題的研究?jī)?nèi)容62系統(tǒng)概述721方案選擇72.1.1 方案一72.1.2 方案二72.2系統(tǒng)設(shè)計(jì)原理823系統(tǒng)組成83系統(tǒng)硬件設(shè)計(jì)93.1 LM393雙向比較器93.2電平信號(hào)采樣電路93.3 TTL邏輯電平檢測(cè)電路103.4

6、FPGA 簡(jiǎn)介113.4.1 FPGA是現(xiàn)場(chǎng)可編程邏輯陣列113.4.2面向FPGA的一般的EDA開(kāi)發(fā)流程113.5狀態(tài)機(jī)的簡(jiǎn)介123.6 LED 顯示123.7硬件整體設(shè)計(jì)134系統(tǒng)軟件設(shè)計(jì)1441主程序設(shè)計(jì)1442系統(tǒng)模塊介紹154.2.1 PLL20 模塊154.2.2計(jì)數(shù)器模塊CNT10154.2.3 LGC_PEN 模塊174.2.4邏輯筆原理圖184.2.5邏輯筆狀態(tài)圖194.3消除毛刺方法204.3.1延時(shí)方式去毛刺204.3.2邏輯方式去毛刺204.3.3定時(shí)方式去毛刺214.4程序仿真214.4.1仿真軟件214.4.2仿真結(jié)果21結(jié)論23參考文獻(xiàn)24附錄A系統(tǒng)電路和相關(guān)附圖

7、2527附錄B全部程序清單致謝錯(cuò)誤!未定義書(shū)簽。1.1課題背景及研究意義隨著現(xiàn)代社會(huì)的發(fā)展,我們需要在很多領(lǐng)域操作簡(jiǎn)單,易于攜帶的探測(cè)裝置, 在任何時(shí)間以實(shí)現(xiàn)設(shè)備故障的初始檢測(cè),為以后的維護(hù)做準(zhǔn)備。基于如此強(qiáng)烈的 需求,我們對(duì)本課題進(jìn)行一定的研究是非常必要的,從而掌握相關(guān)技術(shù),為今后 的研究奠定基礎(chǔ)。本文采用FPGA根據(jù)狀態(tài)機(jī)設(shè)計(jì)的五功能智能邏輯筆。在數(shù)字電路分析與測(cè)試中,邏輯筆有著十分廣泛的應(yīng)用,可以快速的檢測(cè)數(shù) 數(shù)字狀態(tài)、時(shí)序或故障等,它是通過(guò)測(cè)量數(shù)字電路最長(zhǎng)遠(yuǎn)發(fā)展并且簡(jiǎn)便的工具方 法之一,在調(diào)試和維修電子設(shè)備中有很大的作用,它適用于單片機(jī)、電子計(jì)算機(jī) 等數(shù)字控制設(shè)備方面。相對(duì)于示波器和萬(wàn)

8、用表去檢查故障,邏輯筆更加的簡(jiǎn)便、 靈活、方便攜帶。隨著電子行業(yè)的快速發(fā)展,對(duì)智能邏輯筆的要求也在逐漸提高, 讓它在原有的基礎(chǔ)之上,添加了一些新元素的設(shè)汁。雖然現(xiàn)在電路檢測(cè)工具五花 八門,但是很多都結(jié)構(gòu)復(fù)雜。價(jià)格昂貴。本次設(shè)計(jì)的H的是實(shí)現(xiàn)對(duì)數(shù)字電路狀態(tài) 的檢測(cè)及顯示,基于FPGA設(shè)計(jì)結(jié)構(gòu)簡(jiǎn)單、功能齊全并且低成本的五功能智能邏 輯筆。邏輯筆是一種新穎的,簡(jiǎn)單的測(cè)試工具,它可以替換示波器,萬(wàn)用表等的測(cè) 試工具,各種電子設(shè)備的TTL, CMOS, DTL數(shù)字集成電路等曲開(kāi)關(guān)檢測(cè)到的, 可以用于調(diào)試和維護(hù)使用。LI前,智能邏輯筆具有體積小、重量輕、使用方便靈 活、檢測(cè)迅速正確、方便攜帶等優(yōu)點(diǎn)。1.2課

9、題的設(shè)計(jì)要求本課題我們需要從FPGA的角度去設(shè)計(jì)一個(gè)基于FPGA的五功能智能邏輯 筆,利用LM393雙向比較器,要求能測(cè)高電平(高于3.3V5V)、低電平(低于 2.5V)、中電平(低于3.3V2.5V)、高阻態(tài)和脈沖,這五種結(jié)果分別由5個(gè)LED 燈顯示出來(lái)。通過(guò)狀態(tài)機(jī)去實(shí)現(xiàn)邏輯筆的要求,這個(gè)五功智能邏輯筆能夠測(cè)量邏輯電平并 指示和測(cè)量電平電壓。使用頂層調(diào)用與元件例化的方式去處理五種狀態(tài)關(guān)系,能 夠用狀態(tài)機(jī)去表示狀態(tài)切換,必須包括程序流程圖,程序源碼和注解。在最后還 需要附上波形仿真文件。課題要求如下:1常電平與變化時(shí)序的判斷:2. 電平電壓的測(cè)量;3. 利用LM393雙向比較器構(gòu)成電平信號(hào)釆

10、樣電路;4. 通過(guò)狀態(tài)機(jī)LED顯示測(cè)量結(jié)果。13課題的研究?jī)?nèi)容目前,智能邏輯筆具有體積小、重量輕、使用方便靈活、檢測(cè)迅速正 確、方便攜帶等優(yōu)點(diǎn)。目前市場(chǎng)上常用的是三態(tài)(高電平、低電平、高阻 態(tài))邏輯筆,這種邏輯筆可以同時(shí)通過(guò)發(fā)光二極管和數(shù)碼管顯示研究結(jié)果, 但在本課題我在此基礎(chǔ)上增加了可以測(cè)量中電平和脈沖信號(hào)的五功能智能 邏輯筆。使用的Quartusll軟件編譯器,通過(guò)Vol和Vo2 (測(cè)試端口)輸入 FPGA,由TEST輸出,將TTL兩反相器與TEST連接,最后通過(guò)LED顯 示測(cè)量的結(jié)果。在這次課題中需要重點(diǎn)解決的問(wèn)題:1、在測(cè)量TTL電平是會(huì)存在門檻 電壓?jiǎn)栴},導(dǎo)致邏輯電平測(cè)量錯(cuò)誤。本次論

11、題釆用在測(cè)量邏輯電平的同時(shí) 測(cè)量被測(cè)點(diǎn)的電壓值的辦法解決對(duì)于門檻電壓的束縛。2、狀態(tài)機(jī)在應(yīng)用中, 需要解決可能產(chǎn)生的毛刺現(xiàn)象,在后面的論述中會(huì)通過(guò)兩種方法來(lái)解決毛 刺的問(wèn)題。本文是基于FPGA狀態(tài)機(jī),釆用LM393雙向比較器,構(gòu)成五功能智能邏 輯筆的采樣電路,通過(guò)FPGA狀態(tài)機(jī)進(jìn)行顯示。包括電平信號(hào)采樣電路,F(xiàn)PGA 狀態(tài)機(jī),LED顯示電路等組成。2系統(tǒng)概述2.1方案選擇五功能智能邏輯筆實(shí)現(xiàn)方案由很多種,主要由測(cè)試信號(hào)、核心系統(tǒng)、顯示輸出三部分組 成,下面我將介紹兩種方案來(lái)實(shí)現(xiàn)邏輯筆。2.1.1方案一方案一釆用的是CD4011 (FEX-2輸入與非門集成電路系統(tǒng))和數(shù)碼管來(lái)組 成邏輯筆基礎(chǔ)電路

12、。結(jié)構(gòu)框圖及說(shuō)明圖2.1方案一系統(tǒng)框圖這款邏輯電筆是一款顯示型電筆,山共陰極數(shù)碼管和CD4011 (四-2輸入與 非門集成電路)構(gòu)成,可以將高低點(diǎn)位加到CD4011輸入端,通過(guò)數(shù)碼管去判斷 加到輸入端的高低電位,數(shù)碼管顯示(H)或(L)表示的是高帶電位和低電位。這種方法的硬件制作成本低,電路結(jié)構(gòu)也簡(jiǎn)單,但是有一些很大的缺點(diǎn):首 先,這款設(shè)計(jì)方案功能單一,只能測(cè)量?jī)煞N電平狀態(tài),一般在復(fù)雜的電路中,需 要設(shè)計(jì)到很多種電平,所以這種功能單一,參數(shù)固定的邏輯筆達(dá)不到本課題的要 求。2.1.2方案二用狀態(tài)機(jī)去實(shí)現(xiàn)五功能智能邏輯筆,用LM393雙向比較器構(gòu)成了電平信號(hào)采 樣電路。結(jié)構(gòu)框圖及說(shuō)明圖2. 2方

13、案一系統(tǒng)框圖通過(guò)FPGA的狀態(tài)機(jī)對(duì)“TEST”分別輸出1或0,以及結(jié)合來(lái)自Vol和 Vo2測(cè)試到的電平組合,分析測(cè)試終端可以檢測(cè)出邏輯信號(hào)Vin為高,低,中等 水平,脈沖信號(hào)或連續(xù)的高阻抗?fàn)顟B(tài)從以上兩種方案,容易看出方案一只能實(shí)現(xiàn)測(cè)量高電平和低電平。方案二的 操作簡(jiǎn)單,易于實(shí)現(xiàn)本次實(shí)驗(yàn)要求,可靠性高故本次設(shè)計(jì)釆用了方案二。2.2系統(tǒng)設(shè)計(jì)原理利用LM393構(gòu)成五功能智能邏輯筆電平采樣信號(hào),Vol, Vo2和TEST 3個(gè) 端口與FPGA相接。Vol和Vo2輸入進(jìn)FPGA; TEST由FPGA輸出。因?yàn)?FPGA輸出的3.3V電平不夠高,驅(qū)動(dòng)力也不夠,此信號(hào)從FPGA端口通過(guò)一 個(gè)TTL兩反向器與

14、TEST相接,通過(guò)FPGA的狀態(tài)機(jī)對(duì)“TEST”分別輸出1 或0,以及結(jié)合來(lái)自Vol和Vo2測(cè)試到的電平組合,分析測(cè)試終端可以判斷 出邏輯信號(hào)Vin為高,低,中等水平,脈沖信號(hào)或連續(xù)的高阻抗?fàn)顟B(tài)。最后通過(guò) 下載到板子上面通過(guò)LED燈顯示出來(lái)。2.3系統(tǒng)組成本課題以FPGA為核心設(shè)計(jì)的一種五功能智能邏輯筆,系統(tǒng)整體框圖主要由 被測(cè)信號(hào)、邏輯電平測(cè)量電路、雙向比較器LM393、FPGA的狀態(tài)機(jī)、LED顯 示組成。系統(tǒng)框圖如圖2.2所示。被測(cè)信號(hào)邏輯電平測(cè)量電路雙向比較器 (LM393)圖2.2系統(tǒng)基本方框圖1、被測(cè)信號(hào)2、邏輯電平測(cè)量電路3、雙向比較器(LM393)4、FPGA芯片5、LED顯示3

15、系統(tǒng)硬件設(shè)計(jì)3.1 LM393雙向比較器LM393是種雙電壓比較器集成系統(tǒng)電路。輸出負(fù)載電阻可以連接到允許的電源電壓范圍 內(nèi)的任何電源電壓,且不受VCC端了電壓值的限制。該輸出可以用作對(duì)地SPS的簡(jiǎn)單開(kāi)路(當(dāng) 不使用負(fù)載電阻時(shí)),并且輸出部分的陷波電流受驅(qū)動(dòng)器和設(shè)備的可能B值的限制。LM393的主要功能:輸出負(fù)載電阻可接在允許的電源電壓范圍內(nèi)的任何電源電壓上,不受 VCC端了電壓值的限制,輸岀部分的陷波電流受可能的驅(qū)動(dòng)器和器件的B值的限制。輸岀飽和 電壓受輸出晶體管約60歐姆的y sat限制。如果負(fù)載電流特別小,則輸曲晶體管的低偏置電壓 (約1. Omv)允許輸出鉗位在零電平。表3.1 LM3

16、93引腳功能排序表引出端序號(hào)功能符號(hào)引出端序號(hào)功能符號(hào)1輸出端10LT15正向輸入端2IN+ (21)2反向輸入端1IN- (1)6反向輸入端2IN- (2)3正向輸入端1IN+ (1)7輸出端20UT24GND8電源VCC表3. 2 LM393主要參數(shù)表參數(shù)名稱符號(hào)數(shù)值單位電源電壓VCC± 18 或 36V差模輸入電壓VID±36V共模輸入電壓VI-0.3'VCCV功耗Pd570Mw工作環(huán)境溫度Topr0、70°C貯存溫度Tstg-65、150°C電特性(除非特別說(shuō)明,VCC=50Y, Tamb=25X:)3.2電平信號(hào)釆樣電路Vol, Vo2

17、和 TEST 3個(gè)端口與FPGA 相接。Vol和 Vo2輸入進(jìn) FPGA: TEST由 FPGA輸岀。因?yàn)镕PGA輸出的3.3V電平不夠高,驅(qū)動(dòng)力也不夠,此信號(hào)從FPGA端口通 過(guò)個(gè)TTL兩反向器與TEST相接,LM393元件的第3、6腳是二比較器的兩個(gè)輸入端。左端3腳接參考電壓Vrh=2.6V, 作為高電平的分界線;右端6腳接參考電壓Vrl=0.9V,作為低電平的分界線。注意:1、電平測(cè)試口 Vin除與兩個(gè)比較器的輸入端2和5相連外,還通過(guò)個(gè)100K歐姆的 電阻與FPGA的輸出口相接,這是測(cè)試高組態(tài)必須的電阻。2、接輸出電平Vol和Vo2 口處都應(yīng)該分別接5K1上拉電阻于3.3V電平,因?yàn)镕

18、PGA 的I/O高電平是3.3V。(對(duì)于KX-CDS系統(tǒng),可選擇對(duì)應(yīng)模塊完成此實(shí)驗(yàn))3.3 TTL邏輯電平檢測(cè)電路TTL電平之所以應(yīng)用廣泛,主要是由于其數(shù)據(jù)農(nóng)示是采樣二進(jìn)制,對(duì)于實(shí)際的邏輯電平檢 測(cè)電路,般有三種方案,是直接驅(qū)動(dòng)型,二是放人驅(qū)動(dòng)型,三是集成運(yùn)放型電路(采用了集 成運(yùn)放芯片作為比較器,也就是前血已經(jīng)講解了 LM393)。對(duì)于第-種和第二種我這里就不詳細(xì)閘述,本課題是采用的第三種(集成運(yùn)放型),圖3. 3 為集成運(yùn)放型電路圖,R】為限流電阻,L1為L(zhǎng)ED發(fā)光二極管,C為比較器(集成運(yùn)放放人器), 選用的是LM393雙向運(yùn)算放人器,VR為電壓比較值。這個(gè)頂啊路不僅可以檢測(cè)到TTL邏輯

19、電 平,還可以設(shè)定設(shè)當(dāng)?shù)腣R電平比較值實(shí)現(xiàn)CMOS邏輯電平的判斷。所以在實(shí)際應(yīng)用中比較廣 泛。3.4 FPGA 簡(jiǎn)介3.4.1 FPGA是現(xiàn)場(chǎng)可編程邏輯陣列圖3. 4 FPGA的發(fā)展歷程FPGA器件是ASIC中的種半定制電路。它是種可編程邏輯陣列,能有效地解決原門電 路數(shù)量少的問(wèn)題。目前主流的FPGA采用了基于SRAM查找衣結(jié)構(gòu),另外也有些是采用的 Flash或者熔絲和反熔絲工藝的査找農(nóng)結(jié)構(gòu)3.4.2面向FPGA的一般的EDA開(kāi)發(fā)流程圖3.5 EDA開(kāi)發(fā)流程圖設(shè)計(jì)輸入:1、圖形輸入:狀態(tài)圖輸入、波形圖輸入、原理圖輸入2、硬件描述語(yǔ)言文本輸入:使用硬件描述語(yǔ)言(HDL四路設(shè)計(jì)文本,如VHDL或V

20、erilog 源程序,進(jìn)行編輯和輸入。3.5狀態(tài)機(jī)的簡(jiǎn)介狀態(tài)機(jī)山狀態(tài)寄存器和組合邏輯電路組成。它可以根據(jù)控制信號(hào)根據(jù)預(yù)設(shè)狀 態(tài)進(jìn)行狀態(tài)轉(zhuǎn)換??刂浦行呢?fù)責(zé)協(xié)調(diào)相關(guān)信號(hào)動(dòng)作,完成具體操作。有限狀態(tài)機(jī) 簡(jiǎn)稱為有限狀態(tài)機(jī),主要分為兩類:第一類,若輸出只和狀態(tài)有關(guān)而與輸入無(wú)關(guān),則稱為Moore狀態(tài)機(jī)笫二類,輸出不僅和狀態(tài)有關(guān)而且和輸入有關(guān)系,則稱為Mealy狀態(tài)機(jī)狀態(tài)機(jī)包括四個(gè)要素:當(dāng)前狀態(tài)、條件、動(dòng)作、次要狀態(tài)。其實(shí)狀態(tài)機(jī)的四 個(gè)要素就是曲因到果,當(dāng)前狀態(tài)和條件就是“因”,動(dòng)作和次要態(tài)就是“果”, 當(dāng)前狀態(tài)和條件的改變就會(huì)引起動(dòng)作和次要狀態(tài)的變化。1. 現(xiàn)態(tài):是指當(dāng)前所處的狀態(tài)2. 條件:乂稱為“事件

21、”,如果一個(gè)條件被滿足,則會(huì)觸發(fā)一個(gè)動(dòng)作或者 執(zhí)行一次狀態(tài)的遷移3. 動(dòng)作:執(zhí)行的操作,是在滿足條件的情況下。動(dòng)作也不是必需的,當(dāng)條 件得到滿足后,可以直接進(jìn)行遷移新?tīng)顟B(tài),不用執(zhí)行任何一個(gè)動(dòng)作。4. 次態(tài):新的滿足狀態(tài)轉(zhuǎn)換后的狀態(tài)。事實(shí)上,次級(jí)狀態(tài)相對(duì)于當(dāng)前狀態(tài), 當(dāng)次級(jí)狀態(tài)被激活時(shí),它就變成了一種新的當(dāng)前狀態(tài)。3.6 LED顯示LED顯示是我們常用的數(shù)字系統(tǒng)輸入,可以通過(guò)觀察LED燈的亮與滅觀察 輸岀電平的高低狀態(tài)。撥碼開(kāi)關(guān)2控制LED 1-LED 8 ,開(kāi)關(guān)3控制LED 9 -LED 1 6,即選擇模塊撥碼開(kāi)關(guān)2、3均往上撥時(shí),這1 6個(gè)LED等都有效。通過(guò)LED顯示最后可以測(cè)試出電平范圍

22、,如果是低于2. 5V則D1亮,如果 是低于3.3V2.5V貝I是D3亮,如果是高于3.3V5V的則D2亮,懸空和高阻態(tài) 則D4亮。通過(guò)四個(gè)LED顯示結(jié)果不僅直觀,易于觀察,并且程序編寫簡(jiǎn)單, 可靠性也高。3.7硬件整體設(shè)計(jì)TJ七t7粧 1T1X了它lzTJ-l¥¥j?llp 需丄圖3. 6硬件整體設(shè)訃174系統(tǒng)軟件設(shè)計(jì)4.1主程序設(shè)計(jì)本系統(tǒng)大致流程包括先開(kāi)始,對(duì)狀態(tài)機(jī)時(shí)鐘及來(lái)自LM393中兩個(gè)比較器的輸 出信號(hào),5給LED發(fā)光管,測(cè)試高阻態(tài)信號(hào)TEST進(jìn)行初始化,并且初始狀態(tài)為sO, 通過(guò)case語(yǔ)句來(lái)判別每個(gè)返回的狀態(tài),將測(cè)試端口設(shè)高并且返回狀態(tài)為10,將測(cè) 試端口設(shè)置

23、低并且返回狀態(tài)為01,則D4亮為高阻態(tài)。具體設(shè)計(jì)見(jiàn)下面流程:4.2系統(tǒng)模塊介紹4.2.1 PLL20 模塊(一)電路模塊的作用此模塊的作用是將開(kāi)發(fā)板KX-CDS上的20MHZ的標(biāo)準(zhǔn)時(shí)鐘變成2KHZ的時(shí) 鐘,用做計(jì)數(shù)器功能模塊CNT10的輸入系統(tǒng)時(shí)鐘控制信號(hào)。該模塊有2個(gè)端口,20MHZ時(shí)鐘信號(hào)作為輸入端口,輸出端口為2KHZ的時(shí) 鐘信號(hào)。(二)設(shè)計(jì)思路由于Cycleonelll的FPGA中含有高性能的嵌入式模擬鎖相環(huán)PLL,因此對(duì)于 PLL20電路模塊的設(shè)計(jì)可以通Quartus II軟件調(diào)出FPGA內(nèi)部的PLL電路即可jndkOPLL20incikO frequency 20 000 MHz

24、operation Mooe NormalPh (dq'iDC1/1000C0 0050 OOl圖42 PLL20電路芯片模型4.2.2計(jì)數(shù)器模塊CNT10(一)電路模塊的作用計(jì)數(shù)器主要是對(duì)時(shí)鐘或脈沖信號(hào)計(jì)數(shù),還能夠?qū)崿F(xiàn)定時(shí)、控制、分頻和數(shù) 學(xué)運(yùn)算等功能。此模塊主要就是將輸入的時(shí)鐘信號(hào)可以進(jìn)行計(jì)數(shù),再輸出給 LGC_PEN模塊的輸入端口 clock.此模塊有3個(gè)端口,輸入端口 clock用于接收PLL20的輸出時(shí)鐘信號(hào),輸出 端口有兩個(gè),一個(gè)是四位的輸出端口,另一個(gè)是cout輸出進(jìn)位標(biāo)志,位寬為1。CNT10> clockup counter modulus 10q|3 0 TC

25、OUt h圖4.3 CNT10集成模塊圖程序如下:timescale 1 ps / 1 psmodule CNT10 ( clock,cout.q);inputclock;outputcout;output 3:0 q;wire sub_wire0;wire 3:0 sub_wirel:wire cout = sub_wirc0;wire 3:0 q = sub_wirel3:0;lpm.counter LPM_COUNTER_component (clock (clock),.cout (sub_wire0),q (sub_wirel),.aclr (lbO),.aload (1'b

26、O),aset (TbO),.cin(rbl),clk_cn (l'bl),cnLen (l'bl),.data (4 11)0),eq (),.sclr (TbO),.sload(rbO),.sset (TbO),.updown(rbl);defparamLPM_COUNTER_component.lpm_direction = HUP, LPM_COUNTER_component.lpm_modulus = 10、 LPM_COUNTER_component.lpm_port_updown = ,PORT_UNUSED, LPM.COUNTER_component.lpm_

27、type = MLPM_COUNTERM, LPM_COUNTER_component.lpm_width = 4;EndmoduleCNT10例化元件功能仿真:V g 00 nu DO5 * | DOOM圖4.4計(jì)數(shù)器電路仿真圖4.2.3 LGC.PEN 模塊CLKTEST:-=t圖4.5 LGC_PEN集成模塊圖程序如下:module LGC.PEN (CLK. VO,TEST丄ED);input CLK; mpul 2:1 VO; output4:0 LED; output TEST ;parameter s0=0, sl=L s2=2, s3=3, s4=4, s5=5, s6=6,

28、s7=7,s8=8,s9=9, sl0=10, sll=ll,sl2=12,sl3=13;reg4:0 STNST : reg TEST: rcg3:O LED ;always ©(posedge CLK) ST<=NST;always (ST or VO) begincase (ST )sO : begin TEST <=l'bl ; NST<=sl; endsi : begin TEST<=rbl ; if (VO=2,blO) NST<=s2; else NST<=s4; end s2 : begin TEST <=l'

29、bO ; NST<=s3; ends3 : begin TEST <=fbO ; begin if (VO=2b01) begin LED<=4rbl000; NST<=sO; endelse NST<=s4; end ends4 : begin if (VO=2,b01) NST<=s5; else NST<=s7;ends5 : begin if (VO=2*b01) NST<=s6; else NST<=s7;ends6 : begin if (VO=2fb01) begin LED<=4,b0001; NST<=sO;

30、end else NST<=s7; ends7 : begin if (VO:=2'blO) NST<=s8; else NST<=slO;ends8 : begin if (VO=2,blO) NST<=s9; else NST<=slO;ends9 : begin if (VO=2'blO) begin LED<=4'b0010; NST<=sO; end else NST<=slO; endslO : begin if (VO=2'bll) NST<=sll; else NST<=sl3;ends

31、i 1 : begin if (VO=2*bll) NST<=sl2; else NST<=sl3;endsl2 : begin if (VO=2,bll) begin LED<=4,b0100; NST<=sO; end else NSTv=sl3; endsl3 : begindefault:LEDv=4'b 1111; NST<=sO;endNST<=sO;endcase endendmodule424邏輯筆原理圖PLL20:CLKindkOincM frequency: 20.000 MHz Opeotion M>de: NormalC

32、Oinst4Cyclont IIIClkRatioPh (g)DC(X)cO1/100000D050 0032圖4.6邏借筆原理圖將每個(gè)文件設(shè)計(jì)好后,將其設(shè)置為頂層實(shí)體,并進(jìn)行分析綜合后,再將每一 個(gè)設(shè)計(jì)進(jìn)行波形仿真,檢查是否滿足功能,最后將每一個(gè)文件進(jìn)行元件封裝,對(duì) 每一個(gè)元件進(jìn)行連接,添加輸入輸出信號(hào),最后設(shè)計(jì)出符合我們本次課題要求的 原理圖,如上圖46所示。6 wasLnttr:lWCOONTK_cc<rc>qocr vj.o)嚴(yán)I"7 rtct:I-II5 m?!縄殲6 ST i&tg aJO ItOQ QO TtSTtariiya2.1: OPLL20:

33、inst4CNT10:inst5LGC PEN:instclkQ-P d0CkFcoutE 9BSV02.1 E>CLKV02llTESTLEDE3.0LED3.OO TEST圖4.7綜合器生成的原理圖4.2.5邏輯筆狀態(tài)圖通過(guò)上面設(shè)計(jì)好的流程圖,只看圓和菱形部分(包括狀態(tài)和條件),并用 verliog設(shè)計(jì)實(shí)現(xiàn),完成編譯,檢查生成的狀態(tài)圖是否與上面流程圖一致。狀態(tài) 機(jī)流程表和流程圖如下:表4.1狀態(tài)流程表:Source StateDestination StateConditionSOSISIS4(!VO1J). (!VO2) + (VO1J)SIS2(!VO1J). (¥0)

34、S2S3S3S4(!V0l)+ (V0l). (VO)S3SO(VO).(!V02)S4S7(!V0l)+ (V0l). (VO)S4S5(VO).(!V02)S5S7(!VO1J) + (V0l). (VO)S5S6(VO).(!V02)S6S7(!VO1J) + (V0l). (VO)S6SO(VO).(!V02)S7S8(!VO1J). (VO)S7S10(!V0ll). (!V02) +(VO1J)S8S10(!VO1J). (!Y0)+ (VO1J)S8S9(!VO1J). (VO)S9SO(!VO1J). (VO)S9S10(!V0ll). (!Y0)+ (V0l)S10S13(!

35、V0l)+ (V0l). (!¥0)S10Sil(VO1J). (VO)SilS12(VO1J). (VO)SilS13(!V0l)+ (V0l). (!¥0)S12SO(VO1J). (VO)S12S13(!V0l)+ (V0l). (!¥0)S13SO4.3消除毛刺方法4.3.1延時(shí)方式去毛刺延時(shí)寄存器1延時(shí)寄存器2圖4. 9雙寄存器數(shù)據(jù)延時(shí)電路4.3.2邏輯方式去毛刺8 I) ««ukrhlumnrinirnnmiiwiiiBuii_nj"rrkrLTmj"LTLrLrurLnj"LJ"Ljn_nL

36、rLnj"i_rLn_rLrKHjOITi_iii圖4.11消抖動(dòng)電路仿貞波形4.3.3定時(shí)方式去毛刺參考程序:Module ERZP (CLKKINKOUT);Input CLK. KIN;工作時(shí)鐘和輸入信號(hào)Output KOUT; reg KOUT;Reg 3:0 KH.KL:泄義對(duì)高電平和低電平脈寬的寄存器Always ©(posedge CLK) beginIf ( ! KIN) KL<=KL+1;/對(duì)鍵輸入的低電平脈寬計(jì)數(shù)Else KLv=4'b0000; end 若出現(xiàn)髙電平,則計(jì)數(shù)器淸0Always (posedge CLK) beginIf (

37、KIN) KL<=KL+1;同時(shí)對(duì)鍵輸入的髙電平脈寬計(jì)數(shù)Else KLv=4'b0000; end 若出現(xiàn)髙電平,則計(jì)數(shù)器淸0Always (posedge CLK) beginIf (KINXblOO) KOUT<=rBl; 對(duì)髙電平,脈寬計(jì)數(shù)一旦大于12,則輸出1Else if( KL>4'b0111);KOUT<=1BO;對(duì)低電平脈寬計(jì)輸若大于7,則輸出0End endmodule丁廣二廣門廠匸訂門一:陽(yáng)丁門0:一一丁a TjuiwimiitlwwjorniiffluimrnwM |圖4. 12消抖動(dòng)電路仿真波形4.4程序仿真4.4.1仿真軟件Qu

38、artusII 是款 Altera 綜合 CPLD/FPGA 開(kāi)發(fā)軟件,原理圖,VHDL, VerilogHDL 和AHDL(破件支持)等設(shè)計(jì)輸入形式,有自己的合成器和仿真器,可以完成從設(shè)計(jì)輸入 到硬件配置的完整設(shè)計(jì)過(guò)程。Quartus II包含個(gè)模塊化編譯器。編譯器主要包括的功能管理模塊又適配器 (Filter)、分析 / 綜合器(Analysis & Synthesis)、時(shí)序時(shí)間分析器(Timing Analyzer)、 裝配器(Assembler)、設(shè)計(jì)進(jìn)行輔助系統(tǒng)模塊(Design Assistant) >編輯技術(shù)數(shù)據(jù)信息 接口(Complies Database In

39、terface)和 EDA 網(wǎng)農(nóng)文件通過(guò)生成器(EDA Netlist Writer) 等。4.4.2仿真結(jié)果通過(guò)FPGA的狀態(tài)機(jī)對(duì)“TEST”分別輸出1或0,以及結(jié)合來(lái)自Vol和 Vo2測(cè)試到的電平組合,完全可以判斷出測(cè)試端Vin的邏輯信號(hào)是高電平、低 電平、中電平、高阻態(tài)還是連續(xù)脈沖信號(hào)??梢赃@樣來(lái)定義:測(cè)到的電平Vin大于Vrh,判定為高電平1:小于Vrh, 則判定為低電平0:若所測(cè)結(jié)論是Vrl<Vin<Vrh,則判定為中電平,即不穩(wěn)定 電平;再若TEST輸出1時(shí)判定為高電平,TEST輸出0時(shí)判定為低電平,則最終判定為高阻態(tài)。乂若高低電平不斷變化,則判為連續(xù)脈沖。建議狀態(tài)機(jī)的

40、工作時(shí)鐘頻率不要太高,可以在250Hz左右。(Vrh=2.6V Vr 1=0.9V)仿真結(jié)果波形圖:3«>om圖4.13智能邏借筆仿真波形表4. 2測(cè)試結(jié)果真值表:TESTvo2.?n、01001111 (四個(gè)二極管亮)01101000 (D4亮-中電平) '0001 (D1亮-低電平)0010 (D2亮-高電平)110100 (D3亮-中電平)結(jié)論在本次設(shè)計(jì)中,五功能智能邏輯筆主要核心就是LM393反相器,在通過(guò)FPGA開(kāi)發(fā)板進(jìn)行 測(cè)試,制作出款性能齊全,操作方便的邏輯筆。這次設(shè)計(jì)使用的器件很少,但實(shí)現(xiàn)的功能卻 是很多,這款智能筆具有便捷性、準(zhǔn)確性、可靠性、低成本、易

41、操作、結(jié)構(gòu)簡(jiǎn)單等特點(diǎn),并且 我們不僅可以采用發(fā)光二極管來(lái)顯示,在以后的邏輯筆設(shè)計(jì)中可以采用數(shù)碼管顯示,為之后奠 下堅(jiān)實(shí)的基礎(chǔ)。這個(gè)課題的程序編寫是采用的VerilogHDL語(yǔ)言,這個(gè)語(yǔ)法和我們所學(xué)的VHDL語(yǔ)言雖然有 定的聯(lián)系,但是對(duì)于復(fù)雜的進(jìn)程,編寫還是十分的困難的。這次的頂層設(shè)計(jì)LGC_PEN,在編 寫狀態(tài)時(shí),出現(xiàn)了許多的困難,對(duì)于程序的核心代碼不理解,對(duì)于課題的原理不熟悉,讓我認(rèn) 識(shí)到本身存在許多知識(shí)上的缺漏,在以后的學(xué)習(xí)時(shí)間中,定要加強(qiáng)實(shí)踐和理論的結(jié)合。通過(guò)這次設(shè)計(jì),讓我真正意識(shí)到只學(xué)好書(shū)上Ifti的知識(shí)是遠(yuǎn)遠(yuǎn)不夠的,紙上談兵是完全不能 夠滿足自己在實(shí)際操作,必須要不斷捉高自己的動(dòng)手能

42、力。所以這次的畢業(yè)設(shè)計(jì)不僅提烏了我 的動(dòng)手能力,也讓我認(rèn)真學(xué)習(xí)了狀態(tài)機(jī)如何運(yùn)用到實(shí)際的設(shè)計(jì)中,讓我了解到實(shí)際電路中許多 細(xì)節(jié)是需要我們?nèi)プ⒈P的。我相信在以后的匚作中,多多鉆研探討,-定會(huì)更加認(rèn)真努力,勇 攀高峰。參考文獻(xiàn)1 趙潔,饒?jiān)鋈?,郭明超TTL邏輯電平檢測(cè)電路研究和設(shè)計(jì)J甘肅高師學(xué)報(bào),2016, 21 (3) : 15-16.2 楊丹,劉漢明.性能可靠的邏輯筆的設(shè)計(jì)與制作J.電子制作,2007(5):66-66.3 居敬花 基于CPLD的頻率計(jì)的設(shè)計(jì)D.蘇州大學(xué),2010.4 胡曉華.數(shù)字電壓表的設(shè)訃J.農(nóng)技服務(wù),2014, 000(004):190-191.馮海濤,王爽,周岡I.RTL

43、設(shè)計(jì)中的Verilog代碼風(fēng)格J.微處理機(jī), 2013(02):16-186 衛(wèi)一然,甄國(guó)涌,單彥虎.FPGA設(shè)訃中狀態(tài)機(jī)穩(wěn)定問(wèn)題的研究J.電視技術(shù), 2012, 36(23):47-49.7 Tapia-Jaya C, Ojeda-Zamalloa I, Robles-Bykbaev V, et al. An Intelligent Pen toAssess Anxiety Levels Through Pressure Sensors and Fuzzy LogicJ. 20178 熊小剛.Simulation research and testing of digital logic c

44、ircuits test pen%數(shù)字邏 輯電路測(cè)試筆仿真研究與試驗(yàn)J大眾科技,000:155156,141系統(tǒng)電路圖WX2.1:E>cu 匚;V0(2.1 RS19Si IG2,13實(shí)物照片圖附錄A系統(tǒng)電路和相關(guān)附圖6,h240ATAS.f h28DATAS.S*Kttx3VSe*a<xioit HlRcieqoi$s:hDATAY4 OUTO <LATO1M«6L£冋$如LATD4J;NMLEequalEquuC.VdrOrODsjjrQATAISTESTStot由> TESTO S3-0STO«_EXWu|LHX21$»ch

45、160(31$ 如附錄B全部程序清單/LGC.PEN 程序module LGC_PEN(CLK.VO.TEST.LED);input CLK; input (2:1 VO; output4:0 LED; output TEST :parameter s0=0. sl = l, s2=2, s3=3, s4=4, s5=5, s6=6, s7=7,s8=8.s9=9, s 10= 10. si 1 = 1 Ls!2=12,sl3=13 ;reg|4:0 ST.NST ; reg TEST: reg3:0 LED ;always (posedge CLK)ST<=NST ;always (S

46、T or VO)begincase (ST)sO : beginTEST <=l*bl ;NST<=sl: endsi : beginTEST <=lbl ;if (VO=2blO) NST<=s2; else NST<=s4: ends2 : beginTEST v=l'b0;NST<=s3; endbegin LED<=4*bl000;:begin TEST <=FbO ; begin if (VO=2*b01)default:NST<=sO: ends4:beginif(VO=2*b01)NST<=s5; else NS

47、Tv=s7;ends5:beginif(VO=2,b01)NST<=s6; else NSTv=s7;ends6:beginif (VO=2,b01) begin LED<=4,b0001;NST<=sO:endNST<=s7; ends7:beginif(VO=2*blO)NST<=s& else NST<=slO;ends8:beginif(VO=2,blO)NST<=s9: else NST<=slO;ends9:beginif (VO=2*blO) begin LED<=4b0010;NST<=sO:endNST<

48、;=slO; endslO:beginif(VO=2*bll)NST<=sl 1; else NSTv=sl3; endsll:beginif(VO=2*bll)NST<=sl2; else NSTv=sl3; endsl2:begin if (VO=2'bll) begin LED<=4*bOIOO;NST<=sO;endNST<=sl3;endsl3:beginLED<=4*b 1111; NST<=sO: endelse NST<=s4; end endelseelseelseNST<=sO;endcaseendendmodu

49、le/PLL20 程序timescale 1 ps / 1 ps/ synopsys translate_onmodule PLL20 (inclkO.cO);input inclkO;output cO;wire 4:0| sub_vvireO;wire 0:0 sub_wire4 = 1'hO:wire 0:0 sub_wirel = sub_wire00:0;wire cO = sub_wirel;wire sub_wire2 = inclkO;wire 11:0 sub_wire3 = sub_wire4, sub_wire2; altpllaltpll_component (

50、.inclk (sub_wire3),.elk (sub_wire0),activeclock (),areset (1'bO),.clkbad (),.clkena (6 fbl),.clkloss (),.clkswitch (1'bO),.configupdate (1 *b0),.enableO (), enable 1 (),.extclk (),.extclkena (4 fbl),.fbin (l'bl),.fbmimiebidir (),.fbout (), altpll_component.port_activeclock = M PORT.UNUSE

51、DM, altplLcomponenl.port_areset = ' PORT_UNUSED altplLcomponent.port_clkbadO = "PORT_UNUSED”, altpll_component.port_clkbad 1 = ”PORT_UNUSED”, altpll_component.port_clkloss = "PORT_UNUSED, altplLcomponenl.port_clkswitch = ,'PORT_UNUSED, altplLcomponent.port_configupdate = ,PORT_UNUS

52、ED' altpll_component.port_fbin = MPORT_UNUSED", altpll_component.port_inclkO = "PORT_USED", altplLcomponenl.port Jnclk I = "PORT_UNUSED”, altplLcomponent.portJocked = MPORT_UNUSED' altplLcomponent.porl_pfdena = "PORT_UNUSED", altpll_component.port_phasecounterse

53、lect = * PORT_UNUSEDM, al tpll_component .port_phasedone = MPORT_UNUSED altpll_component.port_phasestep = MPORT_UNUSED' altplLcomponent.port_phaseupdown = ” PORT_UNUSED”, altpll_component.port_pllena = ” PORT_UNUSED”, altplLcomponenl.port_scanaclr = nPORT_UNUSED' altpll_component.port_scanclk 二 ”PORT_UNUSED”, altplLcomponent.port_scanclkena 二"PORT_UNUSED

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論