




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
EDA項目教程
——基于VHDL與FPGA主編:于潤偉本章要點
可編程邏輯器件QuartusⅡ軟件的圖形輸入方式QuartusⅡ軟件LPM宏單元庫項目2數據運算器的設計與實現2.1可編程邏輯器件20世紀70年代中期,出現了可編程邏輯陣列(ProgrammableLogicArray,PLA)器件20世紀70年代末期,出現了可編程陣列邏輯(ProgrammableArrayLogic,PAL)器件20世紀80年代初期,Lattice公司最先發明了通用陣列邏輯(GenericArrayLogic,GAL)20世紀80年代中期,Altera公司(已被Intel收購)推出了可擦除可編程邏輯器件(ErasablePLD,EPLD)現場可編程門陣列(FPGA)是Xilinx公司(已被AMD收購)在1985年首家推出的20世紀80年代末期,復雜可編程邏輯器件(CPLD)由Lattice公司提出20世紀末期,出現了片上可編程系統SOPC器件1.早期PLD的編程工藝
早期PLD主要包括可編程邏輯陣列(PLA)、可編程陣列邏輯(PAL)和通用陣列邏輯(GAL)。采用熔絲編程工藝,其原理是在器件可以編程的互連節點上設置有相應的熔絲。在編程時,對需要去除連接的節點上通以編程電流燒掉熔絲,而需要保持連接的節點則不通電保留熔絲,編程結束后器件內熔絲的分布情況就決定了器件邏輯功能。
早期的PLD只允許編程一次,不利于設計調試與修改。但是,其抗干擾能力強、工作速度快,集成度與可靠性都很高,并且價格相對低廉。2.1.2編程工藝(1)EPROM:采用浮柵編程技術,在斷電時存儲的數據不會丟失,保存10年,其電荷損失不大于10%。擦除EPROM時,需要將器件放在紫外線或X射線下照射10~20分鐘。其缺點是擦除時間較長,且需要專門的器件。(2)EEPROM:采用隧道浮柵編程技術,其編程和擦除都是通過在MOS管的漏極和控制柵上,加一定幅度和極性的電脈沖實現,不需要紫外線照射。EEPROM的擦除和寫入都是逐點進行的,對每一個點先擦后寫,需要花費一定的時間。與EPROM相比,具有擦除方便、速度快的優點,因而受到用戶的歡迎。(3)FlashROM:采用沒有隧道的浮柵編程技術,柵極靠襯底較近,是E2PROM編程器件的改進型。擦寫過程與EEPROM基本一致,但擦除不是逐點進行,而是一次全部擦除,然后再逐點改寫,所以其速度比E2PROM編程器件還要快。2.CPLD的編程工藝(1)反熔絲(Antifuse)
反熔絲技術是通過擊穿介質達到連通線路的目的。(2)靜態存儲器(SRAM)
每個連接點用一個靜態觸發器控制的開關代替熔絲,當觸發器被置1時,開關接通;置0時,開關斷開。在系統不加電時,編程數據存儲在片外的E2PROM器件、FlashROM器件、硬盤或軟盤中。在系統上電時,把這些編程數據立即寫入到FPGA中,從而實現對FPGA的動態配置;系統掉電時,片內的編程數據將全部丟失。3.FPGA的編程工藝1.邏輯資源量的選擇2.芯片速度的選擇3.器件功耗的選擇2.1.3器件的選用(1)FPGA是“時序豐富”型的,更適合于完成時序邏輯,CPLD是“邏輯豐富”型的,更適合于完成各種算法和組合邏輯,即FPGA更適合于觸發器豐富的結構,而CPLD更適合于觸發器有限而乘積項豐富的結構。(2)FPGA主要通過改變內部連線的布線來編程,CPLD通過修改具有固定內連電路的邏輯功能來編程。又由于CPLD有專用連線連接宏單元,信號到每個宏單元的延時相同并且延時最短,所以CPLD比FPGA有較大的時間可預測性,可以預測管腳到管腳的最大延遲時間。(3)CPLD主要是基于E2PROM或FlashROM存儲器編程,其優點是在系統斷電后,編程信息不丟失,且無需外部存儲器芯片,使用簡單。FPGA大部分是基于SRAM編程,其優點是可進行任意次數的編程,其缺點是編程信息需存放在外部存儲器上,每次上電時,需從器件的外部存儲器或計算機中將編程數據寫入SRAM。4.FPGA與CPLD應用比較2.2.1半加器
只考慮兩個加數本身的相加,不考慮來自低位的進位,這樣的加法運算稱為半加,實現這種運算的邏輯電路稱為半加器。半加器可對兩個一位二進制數進行加法運算,同時產生進位。1.題目要求
利用QuartusⅡ軟件的圖形輸入方式,
設計一位二進制半加器,完成編譯和波形仿真后,下載到實驗平臺驗證電路功能。2.電路設計
設半加器的輸入端為A(被加數)和B(加數);輸出端為S(和)和C(進位)。2.2加法器的設計半加器的題目要求列出真值表
(1)在計算機的E盤,建立文件夾作為項目文件夾。(2)啟動QuartusⅡ,單擊【CreateaNewProject】按鈕打開新項目建立向導,也可以單擊菜單File→New→NewQuartusIIProject,在新項目建立向導對話框中分別輸入項目文件夾、項目名和頂層設計實體名。項目名為HalfAdd、頂層設計實體名也為HalfAdd。(3)由于采用圖形輸入方式,在添加文件對話框的Filename中輸入HalfAdd.bdf,然后單擊【Add】按鈕,添加該文件。(4)在器件設置對話框中,根據實驗箱或開發板上使用的器件決定選擇的芯片系列和具體元件,本書選擇CycloneⅣE系列的EP4CE10E22C8芯片。(5)單擊【Finish】按鈕,關閉新項目建立向導。3.建立項目(1)編輯。單擊File→New選項,選中BlockDiagram/SchematicFile,單擊【OK】按鈕,打開圖形編輯器窗口。(2)打開圖形文件編輯窗口,根據半加器的邏輯表達式,依次輸入1個XOR(異或門)、1個AND2(與門)、2個INPUT(輸入管腳)和2個OUTPUT(輸出管腳),按照邏輯關系將其連接。4.編輯與編譯(1)單擊File→New選項,選中UniversityProgramVWF選項,單擊【OK】按鈕,建立波形輸入文件。(2)單擊Edit→SetEndTime選項,設定仿真時間為1us;單擊Edit→GridSize…選項,設定仿真時間周期為40ns。將波形文件以HalfAdd為名稱存入文件夾E:\EXAM221文件夾下。(3)雙擊波形編輯器“Name”下的空白處,打開插入管腳或總線對話框。(4)單擊該對話框的【NodeFind…】按鈕,打開管腳搜索對話框,選中Pins:all,然后單擊【list】按鈕。在下方的NodesFinder窗口中會出現設計項目的所有端口管腳名。5.波形仿真(5)選中輸入端口節點A、B和輸出信號節點S、C后,單擊窗口中間的方向按鈕,將管腳進入窗口右側的選擇區,單擊【OK】按鈕;回到插入管腳或總線對話框,再次單擊【OK】按鈕。(6)調整波形坐標間距后,選中輸入管腳A,單擊波形編輯按鈕
,并在Countevery輸入框內輸入40,單位選ns;選中輸入管腳B,單擊波形編輯按鈕
,并在Countevery輸入框內輸入80,單位選ns。(7)單擊菜單欄中的Simulation→RunFunctionalSimulation選項或工具欄中的
按鈕,啟動仿真。仿真結果如圖所示(1)單擊標題欄中的Assignments→PinPlanner選項,出現管腳規劃窗口。(2)在Location輸入框中,雙擊鼠標,再單擊出現的彈出式菜單的下拉式箭頭,出現的下拉菜單列出所選用芯片的所有可用管腳,可根據所使用的實驗箱或開發板的管腳分配情況鎖定管腳。將輸入信號管腳鎖定為按鍵、輸出管腳鎖定為發光二極管。(3)單擊標題欄中的Processing→StartCompilation選項,再次啟動全程編譯。編譯成功后,就可以將設計的程序下載到可編程邏輯芯片中。6.編程(4)使用電纜將計算機和實驗箱連接,接通實驗箱電源。單擊Tools→Programmer選項,在編程窗口中進行硬件配置,可選擇LPT1接口輸出的ByteBlasterMV、ByteBlasterⅡ或USB-Blaster編程器等硬件類型,編程方式選中JTAG編程方式。(5)單擊【AddFiles】按鈕,在彈出的對話框中,再打開output_files文件夾,單擊選中HalfAdd.sof文件,再單擊【Start】按鈕,即可開始對芯片編程。(6)如果建立項目時選定的芯片和實驗箱適配板上的芯片不同,下載會失敗。這時可單擊Project→Add/RemoveFilesinProject…,打開設置對話框,單擊右上角的【Device】按鈕,重新選擇器件,重新編譯,重新鎖定管腳,再次編譯后即可重新下載。輸入信號為按鍵按下輸入信號為1,按鍵指示燈亮;按鍵抬起輸入信號為0,按鍵指示燈暗。輸出信號為1時,信號燈亮;輸出信號為0時,信號燈暗。測試結果如表2-2所示。7.電路測試測試結果完全正確的電路,可以生成符號元件,該元件可作為獨立的器件供其他設計項目調用。回到圖形編輯器窗口,單擊File→Create/Update→CreateSymbolFilesforCurrentFile選項,在彈出的對話框中將此符號文件按默認名稱(即HalfAdd)保存,擴展名為.bsf。8.生成符號元件不僅考慮兩個一位二進制數的相加,而且還考慮來自低位進位的運算電路,稱為全加器。全加器有3個輸入端、2個輸出端。1.題目要求
利用QuartusⅡ軟件的圖形輸入方式,設計一位二進制全加器,完成編譯和波形仿真后,下載到實驗平臺驗證電路功能。2.電路設計
設全加器的輸入端為A(被加數)、B(加數)、Ci(低位進位);輸出端為S(和)和Co(進位)。2.2.2全加器根據全加器的題目要求列出真值表(1)在計算機的E盤,建立文件夾作為項目文件夾。(2)啟動QuartusⅡ,單擊【CreateaNewProject】按鈕打開新項目建立向導,也可以單擊菜單File→New→NewQuartusIIProject,在新項目建立向導對話框中分別輸入項目文件夾、項目名和頂層設計實體名。項目名為ComAdd、頂層設計實體名也為ComAdd。(3)由于采用圖形輸入方式,在添加文件對話框的Filename中輸入ComAdd.bdf,然后單擊【Add】按鈕,添加該文件。(4)在器件設置對話框中,根據實驗箱或開發板上使用的器件決定選擇的芯片系列和具體元件,本書選擇CycloneⅣE系列的EP4CE10E22C8芯片。(5)單擊【Finish】按鈕,關閉新項目建立向導。3.建立項目4.編輯與編譯(1)編輯。單擊File→New選項,選中BlockDiagram/SchematicFile,單擊【OK】按鈕,打開圖形編輯器窗口。(2)打開圖形文件編輯窗口,依次輸入2個XOR(異或門)、3個AND2(與門)、1個OR3(或門)、3個INPUT(輸入管腳)和2個OUTPUT(輸出管腳),按照邏輯關系將其連接(1)單擊File→New選項,選中UniversityProgramVWF選項,單擊【OK】按鈕,建立波形輸入文件。(2)單擊Edit→SetEndTime選項,設定仿真時間為1us;單擊Edit→GridSize…選項,設定仿真時間周期為40ns。將波形文件以ComAdd為名稱存入文件夾E:\EXAM222文件夾下。(3)雙擊波形編輯器“Name”下的空白處,打開插入管腳或總線對話框。(4)單擊該對話框的【NodeFind…】按鈕,打開管腳搜索對話框,選中Pins:all,然后單擊【list】按鈕。在下方的NodesFinder窗口中會出現設計項目的所有端口管腳名。5.波形仿真(5)選中輸入端口節點A、B、Ci和輸出信號節點S、Co后,單擊窗口中間的方向按鈕,將管腳進入窗口右側的選擇區,單擊【OK】按鈕;回到插入管腳或總線對話框,再次單擊【OK】按鈕。(6)調整波形坐標間距后,選中輸入管腳A,單擊波形編輯按鈕
,并在Countevery輸入框內輸入80,單位選ns;選中輸入管腳B,單擊波形編輯按鈕
,并在Countevery輸入框內輸入160,單位選ns;選中輸入管腳Ci,單擊波形編輯按鈕
,并在Countevery輸入框內輸入320,單位選ns。(7)單擊菜單欄中的Simulation→RunFunctionalSimulation選項或工具欄中的
按鈕,啟動仿真。使用調整焦距工具調整波形坐標間距,仿真結果如圖2-6所示1)單擊標題欄中的Assignments→PinPlanner選項,出現管腳規劃窗口。(2)在Location輸入框中,雙擊鼠標,再單擊出現的彈出式菜單的下拉式箭頭,出現的下拉菜單列出所選用芯片的所有可用管腳,可根據所使用的實驗箱或開發板的管腳分配情況鎖定管腳。將輸入信號管腳鎖定為按鍵、輸出管腳鎖定為發光二極管。(3)單擊標題欄中的Processing→StartCompilation選項,再次啟動全程編譯。編譯成功后,就可以將設計的程序下載到可編程邏輯芯片中。6.編程(4)使用電纜將計算機和實驗箱連接,接通實驗箱電源。單擊Tools→Programmer選項,在編程窗口中進行硬件配置,可選擇USB-Blaster編程器等硬件類型,編程方式選中JTAG編程方式。(5)單擊【AddFiles】按鈕,在彈出的對話框中,再打開output_files文件夾,單擊選中ComAdd.sof文件,再單擊【Start】按鈕,即可開始對芯片編程。(6)如果建立項目時選定的芯片和實驗箱適配板上的芯片不同,下載會失敗。這時可單擊Project→Add/RemoveFilesinProject…,打開設置對話框,單擊右上角的【Device】按鈕,重新選擇器件,重新編譯,重新鎖定管腳,再次編譯后即可重新下載。輸入信號為按鍵按下輸入信號為1,按鍵指示燈亮;按鍵抬起輸入信號為0,按鍵指示燈暗。輸出信號為1時,信號燈亮;輸出信號為0時,信號燈暗。7.電路測試測試結果完全正確的電路,可以生成符號元件,該元件可作為獨立的器件供其他設計項目調用。回到圖形編輯器窗口,單擊File→Create/Update→CreateSymbolFilesforCurrentFile選項,在彈出的對話框中將此符號文件按默認名稱(即ComAdd)保存,擴展名為.bsf。8.生成符號元件四位加法器是可以對2個四位二進制數進行加法運算,并考慮來自低位的進位。1.題目要求
利用QuartusⅡ軟件的圖形輸入方式,設計四位加法器,完成編譯和波形仿真后,下載到實驗平臺驗證電路功能。2.電路設計
四位加法器可以在半加器和全加器的基礎上進行,利用1個半加器和3個全加器分別運算四位二進制數的每個數位。其應具備的管腳為輸入端:A[3..0]、B[3..0];輸出端:S[3..0]、Bit(Bit=1代表進位)。2.2.3四位加法器(1)在計算機的E盤,建立文件夾作為項目文件夾。(2)啟動QuartusⅡ,單擊【CreateaNewProject】按鈕打開新項目建立向導,也可以單擊菜單File→New→NewQuartusIIProject,在新項目建立向導對話框中分別輸入項目文件夾、項目名和頂層設計實體名,項目名為FCAdd、頂層設計實體名也為FCAdd。(3)采用圖形輸入方式,在添加文件對話框的Filename中輸入FCAdd.bdf,然后單擊【Add】按鈕,添加該文件。3.建立項目(4)由于需要使用先前生成的半加器元件HalfAdd.bsf和全加器元件ComAdd.bsf,可單擊添加文件對話框的Filename右側的按鈕,找到HalfAdd.bdf,單擊【Add】按鈕添加該文件;再找到的ComAdd.bdf,再次單擊【Add】按鈕,添加該文件。(5)在器件設置對話框中,根據實驗箱或開發板上使用的器件決定選擇的芯片系列和具體元件,本書選擇CycloneⅣE系列的EP4CE10E22C8芯片。(6)單擊【Finish】按鈕,關閉新項目建立向導。(1)編輯。單擊File→New選項,選中BlockDiagram/SchematicFile,單擊【OK】按鈕,打開圖形編輯器窗口。(2)雙擊圖形文件編輯窗口的編輯區,打開元件輸入對話框。單擊元件輸入對話框中Name輸入框右側按鈕,在彈出的“打開”對話框選擇HalfAdd.bsf文件;再選擇ComAdd.bsf文件,并復制成3個,再依次輸入2個INPUT(輸入管腳)和2個OUTPUT(輸出管腳)。4.編輯與編譯(3)命名節點線:選中與總線連接的節點線(在線上單擊),即可輸入節點線名稱,但需要注意連接信號輸入、輸出端的節點線,其名稱要與相應管腳的名稱對應。例如與管腳A[3..0]相連的4條節點線分別命名為A[0]、A[1]、A[2]、A[3],不同的節點線名代表總線的數據分配關系。還要注意輸入的節點線名稱的顏色與節點線的顏色必須相同,不同就是沒有選中,需要重新做。(4)更改連線類型:選中連線單擊右鍵,在彈出的下拉菜單中選擇BusLine(總線)或NodeLine(節點線)選項。傳送兩個以上信號時,必須選用總線。(1)單擊File→New選項,選中UniversityProgramVWF選項,單擊【OK】按鈕,建立波形輸入文件。(2)單擊Edit→SetEndTime選項,設定仿真時間為1us;單擊Edit→GridSize…選項,設定仿真時間周期為40ns。將波形文件以HalfAdd為名稱存入文件夾當前文件夾下。(3)雙擊波形編輯器“Name”下的空白處,打開插入管腳或總線對話框。(4)單擊該對話框的【NodeFind…】按鈕,打開管腳搜索對話框,選中Pins:all,然后單擊【list】按鈕。在下方的NodesFinder窗口中會出現設計項目的所有端口管腳名。5.波形仿真(5)選中輸入端口節點A、B和輸出信號節點S、Bit后,單擊窗口中間的方向按鈕,將管腳進入窗口右側的選擇區,單擊【OK】按鈕;回到插入管腳或總線對話框,再次單擊【OK】按鈕。(6)調整波形坐標間距后,選中輸入管腳A,單擊波形編輯按鈕
,并在Countevery輸入框內輸入80,單位選ns;選中輸入管腳B,單擊波形編輯按鈕
,并在Startvalue輸入框內輸入“0101”,在Countevery輸入框內輸入80,單位選ns。(7)單擊菜單欄中的Simulation→RunFunctionalSimulation選項或工具欄中的
按鈕,啟動仿真。使用調整焦距工具調整波形坐標間距,仿真結果如圖所示(1)單擊Assignments→AssignmentsEditor選項,出現配置編輯器窗口,單擊Category輸入框右側的下拉按鈕,從中選擇Pin選項,根據使用實驗箱的具體情況鎖定管腳。注意:多位管腳需要按位鎖定,例如管腳A需要分別鎖定A[3]、A[2]、A[1]、A[0],不要鎖定A。管腳B、S與A的處理相同。(2)再次編譯成功后,就可以將鎖定的管腳信息加入到設計文件中。(3)使用電纜將計算機和實驗箱連接,接通實驗箱電源。單擊Tools→Programmer選項,編程方式選中JTAG編程方式。(4)在編程窗口中,單擊選中FCAdd.sof文件,再單擊【Start】按鈕,即可開始對芯片編程。6.編程輸入信號A(例如1001)和B(例如0101),輸出信號S應該為1110、輸出信號Bit應該為0(表示沒有進位);改變A和B,再觀察輸出信號S和Bit。7.電路測試LPM(LibraryParameterizedModules)即參數化的宏功能模塊庫。應用這些功能模塊庫可以大大提高IC設計的效率。調用LPM庫函數非常方便,既可以在圖形輸入法中直接調用,也可以在HDL源文件中調用。2.3.1乘法器的設計1.題目要求
利用QuartusⅡ軟件的圖形輸入方式,設計一個能實現3位二進制數和4位二進制數乘法運算的電路,完成編譯和波形仿真后,下載到實驗平臺驗證電路功能。2.電路設計
使用LPM庫函數實現。2.3LPM宏單元庫(1)在計算機的E盤,建立文件夾作為項目文件夾。(2)啟動QuartusⅡ,單擊【CreateaNewProject】按鈕打開新項目建立向導,也可以單擊菜單File→New→NewQuartusIIProject,在新項目建立向導對話框中分別輸入項目文件夾、項目名和頂層設計實體名。項目名為EXMULT、頂層設計實體名也為EXMULT。(3)由于采用圖形輸入方式,在添加文件對話框的Filename中輸入EXMULT.bdf,然后單擊【Add】按鈕,添加該文件。(4)在器件設置對話框中,根據實驗箱或開發板上使用的器件決定選擇的芯片系列和具體元件,本書選擇CycloneⅣE系列的EP4CE10E22C8芯片。(5)單擊【Finish】按鈕,關閉新項目建立向導。3.建立項目(1)雙擊圖形編輯窗口右側的Library→BasicFunctions→Arithmetic→LPM_MULT,打開保存IP變量對話框,如圖所示。4.生成乘法運算模塊(2)單擊【OK】按鈕。在彈出的MegaWizardPlug_1對話框中按照題意,被乘數是3位、乘數是4位,乘積是7位。如圖所示。(3)單擊【Next】按鈕。彈出MegaWizardPlug_2對話框,從上到下依次為乘數是否設置為常數(以及常數值)、乘運算的類型(無符號或有符號)、乘運算的實現方式(缺省、部分器件自帶的乘法電路、邏輯單元)。(4)單擊【Next】按鈕。彈出MegaWizardPlug_3對話框,上一條為是否使用流水線功能,如使用可以需要設置時鐘、復位端和使能端;下一條為優化方式,可選(缺省、面積和速度)。(5)單擊【Next】按鈕。彈出MegaWizardPlug_4對話框,確定仿真模式。(6)單擊【Next】按鈕。彈出MegaWizardPlug_5對話框,確定生成文件的類型。(7)單擊【Finish】按鈕。彈出QuartusⅡIPFiles對話框。5.編輯與編譯(1)編輯。單擊File→New選項,選中BlockDiagram/SchematicFile,單擊【OK】按鈕,打開圖形編輯器窗口。(2)雙擊圖形文件編輯窗口的編輯區,打開元件輸入對話框。單擊元件輸入對話框中Name輸入框右側按鈕,在彈出的“打開”對話框選擇MULT.bsf文件,再依次輸入2個INPUT(輸入管腳)和1個OUTPUT(輸出管腳)。(1)單擊File→New選項,選中UniversityProgramVWF選項,單擊【OK】按鈕,建立波形輸入文件。(2)單擊Edit→SetEndTime選項,設定仿真時間為2us;單擊Edit→GridSize…選項,設定仿真時間周期為100ns。將波形文件以EXMULT為名稱存入文件夾當前文件夾下。(3)雙擊波形編輯器“Name”下的空白處,打開插入管腳或總線對話框。(4)單擊該對話框的【NodeFind…】按鈕,打開管腳搜索對話框,選中Pins:all,然后單擊【list】按鈕。在下方的NodesFinder窗口中會出現設計項目的所有端口管腳名。(5)選中輸入端口節點A、B和輸出信號節點S后,單擊窗口中間的方向按鈕,將管腳進入窗口右側的選擇區,單擊【OK】按鈕;回到插入管腳或總線對話框,再次單擊【OK】按鈕。6.波形仿真(6)調整波形坐標間距后,選中輸入管腳A,在管腳名右側的B000(取值)上雙擊,打開管腳參數對話框,將其設置為UnsignedDecimal(無符號十進制)(7)單擊【OK】按鈕。選中輸入管腳A,單擊波形編輯按鈕
,并在Countevery輸入框內輸入100,單位選ns;選中輸入管腳B,單擊波形編輯按鈕
,并在Countevery輸入框內輸入200,單位選ns;選中輸出管腳S,在管腳名右側的B0000000(取值)上雙擊,打開管腳參數對話框,將其設置為UnsignedDecimal(無符號十進制)。
(8)單擊菜單欄中的Simulation→RunFunctionalSimulation選項或工具欄中的
按鈕,啟動仿真。使用調整焦距工具調整波形坐標間距。(1)單擊標題欄中的Assignments→PinPlanner選項,出現管腳規劃窗口。(2)在Location輸入框中,雙擊鼠標,再單擊出現的彈出式菜單的下拉式箭頭,出現的下拉菜單列出所選用芯片的所有可用管腳,可根據所使用的實驗箱或開發板的管腳分配情況鎖定管腳。將輸入信號管腳鎖定為按鍵、輸出管腳鎖定為發光二極管。(3)單擊標題欄中的Processing→StartCompilation選項,再次啟動全程編譯。編譯成功后,就可以將設計的程序下載到可編程邏輯芯片中。7.編程(4)使用電纜將計算機和實驗箱連接,接通實驗箱電源。單擊Tools→Programmer選項,在編程窗口中進行硬件配置,可選擇LPT1接口輸出的ByteBlasterMV、ByteBlasterⅡ或USB-Blaster編程器等硬件類型,編程方式選中JTAG編程方式。(5)單擊【AddFiles】按鈕,在彈出的對話框中,再打開output_files文件夾,單擊選中EXMULT.sof文件,再單擊【Start】按鈕,即可開始對芯片編程。(6)如果建立項目時選定的芯片和實驗箱適配板上的芯片不同,下載會失敗。這時可單擊Project→Add/RemoveFilesinProject…,打開設置對話框,單擊右上角的【Device】按鈕,重新選擇器件,重新編譯,重新鎖定管腳,再次編譯后即可重新下載。按照二進制乘法運算規則驗證電路。例如輸入信號A為“101”(十進制數字5)、輸入信號B為“1011”(十進制數字11),輸出信號應該為“0110111”(十進制數字55)。測試時注意二進制數字的高、低位的排列順序。8.電路測試1.題目要求
利用QuartusⅡ軟件的圖形輸入方式,設計一個能實現4位二進制數和十進制常數(數值=3)的除法運算的電路,完成編譯和波形仿真后,下載到實驗平臺驗證電路功能。2.電路設計
使用LPM庫函數實現。3.建立項目(1)在計算機的E盤,建立文件夾作為項目文件夾。2.3.2除法器的設計(2)啟動QuartusⅡ,單擊【CreateaNewProject】按鈕打開新項目建立向導,也可以單擊菜單File→New→NewQuartusIIProject,在新項目建立向導對話框中分別輸入項目文件夾、項目名和頂層設計實體名。項目名為EXMULT、頂層設計實體名也為EXDID。(3)由于采用圖形輸入方式,在添加文件對話框的Filename中輸入EXDID.bdf,然后單擊【Add】按鈕,添加該文件。(4)在器件設置對話框中,根據實驗箱或開發板上使用的器件決定選擇的芯片系列和具體元件,本書選擇CycloneⅣE系列的EP4CE10E22C8芯片。(5)單擊【Finish】按鈕,關閉新項目建立向導。(1)雙擊圖形編輯窗口右側的Library→BasicFunctions→Arithmetic→LPM_DIVIDE,打開保存IP變量對話框。4.生成除法運算模塊(2)單擊【OK】按鈕。在彈出的MegaWizardPlug_1對話框中按照題意,被除數是4位、除數是2位,商是4位、余數是2位。(3)單擊【Next】按鈕。彈出MegaWizardPlug_2對話框,上一條為是否使用流水線功能,如使用可以需要設置時鐘、復位端和使能端;左下一條為優化方式,可選(缺省、面積和速度)、右下一條為是否總是返回正的余數。(4)單擊【Next】按鈕。彈出MegaWizardPlug_3對話框,確定仿真模式。(5)單擊【Next】按鈕。彈出MegaWizardPlug_4對話框,確定生成文件的類型,單擊單選按鈕DIV.bsf。(6)單擊【Finish】按鈕。彈出QuartusⅡIPFiles對話框。5.生成常數模塊(1)雙擊圖形編輯窗口右側的Library→BasicFunctions→Miscellaneous→LPM_CONSTANT,打開保存IP變量對話框.(2)單擊【OK】按鈕。在彈出的MegaWizardPlug_1對話框中按照題意,除數是十進制數字3,數據寬帶2bits。(1)編輯。單擊File→New選項,選中BlockDiagram/SchematicFile,單擊【OK】按鈕,打開圖形編輯器窗口。(2)雙擊圖形文件編輯窗口的編輯區,打開元件輸入對話框。單擊元件輸入對話框中Name輸入框右側按鈕,在彈出的“打開”對話框選擇DIV.bsf;同樣添加CON3.bsf文件;再依次輸入1個INPUT(輸入管腳)和2個OUTPUT(輸出管腳)。6.編輯與編譯(1)單擊File→New選項,選中UniversityProgramVWF選項,單擊【OK】按鈕,建立波形輸入文件。(2)單擊Edit→SetEndTime選項,設定仿真時間為2us;單擊Edit→GridSize…選項,設定仿真時間周期為100ns。將波形文件以EXDID為名稱存入文件夾E:\EXAM232文件夾下。(3)雙擊波形編輯
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 西方政治制度對移民公民化的影響試題及答案
- 叉車全部考試題庫及答案
- 2025年環境政策與地方實施考試題及答案
- 軟件設計師考試團隊項目展示與試題及答案
- 兔玩網java面試題及答案
- java程序員進bat面試題及答案
- 動畫駕駛考試題及答案
- 人大哲學面試題及答案
- 華泰證券java面試題及答案
- 自我反思的抒情作文5篇
- 世界環境日主題課件
- 職業道德與法治 第13課《學會依法維權》第一框課件《依法理性維權》
- 鄰近鐵路營業線施工安全監測技術規程 (TB 10314-2021)
- 婦科常見病科普知識講座
- 城市土壤主要類型及特點
- 賓館財務安全管理制度
- 《康復護理學基礎》期末考試復習題庫(含答案)
- 寶鋼武鋼并購重組案例研究
- 胰島素的種類及應用(共26張PPT)
- 眩暈診療方案總結優化
- 轉讓魚塘股份合同范本
評論
0/150
提交評論