范舒顏
(南京工業大學,南京 210000)
在學生參與硬件實驗操作過程中,一般借助實驗箱連線這一方式,完成對電路功能的測試及驗證[1]。但是由于存在學生實驗中的誤操作,以及線路連接錯誤所致損壞芯片等多種情況,再加上傳統實驗的過于枯燥單一,導致無法提高學生的實驗分析及功能設計能力。QuartusII作為綜合性CPLD/FPGA軟件,能夠實現VHDL、原理圖以及AHDL和VerilogHDL不同輸入形式,且基于設計輸入至配置硬件完成完整的PLD設計流程[2]。對此本次研究探索基于QuartusII的數字邏輯電路功能設計。
QuartusII作為綜合性CPLD/FPGA軟件,由Altera公司研發生成,采用了層次結構法實現對電路描述,提供了電路功能設計結構無關的集成開發環境,并具備了電路仿真的完備工具,包括功能仿真及時序邏輯仿真[3]。且具備了全部數字邏輯電路功能設計這一特性,在設計數字邏輯電路功能過程中,主要包括五大組成:新建工程項目、完成對文件源程序的編輯、對綜合設計文件的編輯、模擬仿真以及元件符號生成。QuartusII作為綜合性CPLD/FPGA軟件,在運用過程中極為簡便,除了無法支持少數實驗此外,幾乎可以對所有數字邏輯電路實驗支持[4]。因此在展開對數字邏輯電路功能設計實驗研究中,可以直接運用QuartusII,依據其電路原理輸入功能及仿真實驗功能,完成對數字邏輯電路的功能仿真。因此本次研究提出基于QuartusII的數字邏輯電路功能設計,可以改變傳統電路設計實驗的單一,滿足對數字邏輯電路功能設計的仿真驗證需求。
全加器作為對一位二進制總和完成計算的電路,包含了多種不同的設計方法,本文采用最為簡單的邏輯表達式完成,對全加器獨立元件符號的表達,用于四位串行加法器設計。為了進一步提升全加器設計便捷性,結合(見表1)全加器的真值表,畫出本次研究的輸出本位、S及高位進位 卡諾圖(見圖1、2)。

表1 全加器真值表

圖1 本位及卡諾圖

圖2 想高位進位卡諾圖
根據上圖可以得出全加器的輸出端最簡表達式,以及非邏輯表達式如下:

通過為本次數字邏輯電路功能設計,構建工作庫專用文件夾,在文件夾中新建一個未完成的工程項目,對該工程項目拓展名設置為“.bdf”文件。本文根據如上部分分析所得的全加器的輸出端最簡表達式,以及非邏輯表達式,參照公式(1)具體要求,完成邏輯電路單元模塊的逐一輸入,具體包括非門模塊、兩輸入與門模塊、三輸入與門模塊、三輸入或非門模塊、四輸入或非門模塊,針對不同模塊借助信號線完成彼此連接之后,即可得到原理模型圖設計。之后借助QuartusII編譯器統一完成,檢查本次邏輯電路功能設計的邏輯是否一致及是否完整。經過綜合邏輯之后仿真測試所輸入的原理圖,對該原理是否達到電路功能的設計需求加以驗證,仿真圖(見圖3)。

圖3 仿真波形示意圖
通過對最終仿真結果分析發現電路功能設計邏輯無誤,封裝本次設計電路生成元件符號,以便能夠基于原理圖編輯器實現功能設計過程中有效調用。經過封裝生成的元件符號(見圖4)。之后借助元件符號完成對串行四位加法器的設計,驗證本次設計的基于QuartusII編譯器的數字邏輯電路功能設計,最終得出的輸出波形圖(見圖5)。證實QuartusII軟件設計,能夠達到較好的設計性能,且仿真結果符合預期,具備較強的可移植性,減少了資源占用量。不僅如此還有效提升了數字邏輯電路功能設計的整體質量及靈活性,對設計進程及效率有效加快。

圖4 封裝生成的元件符號

圖5 仿真輸出波形圖
在本次研究中通過探索基于QuartusII的數字邏輯電路功能設計。利用QuartusII原理圖及硬件描述語言VHDL,仿真設計本次研究的數字邏輯電路功能,仿真結果證實QuartusII軟件設計,能夠達到較好的設計性能,且仿真結果符合預期,具備較強的可移植性,減少了資源占用量。不僅如此還有效提升了數字邏輯電路功能設計的整體質量及靈活性,對設計進程及效率有效加快。