資源描述:
《Quartus II設(shè)計向?qū)pt課件.ppt》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。
1、第2章QuartusII設(shè)計向?qū)?.1頻率計的VHDL設(shè)計2.2使用宏功能塊設(shè)計頻率計2.3嵌入式系統(tǒng)塊ESB的應(yīng)用2.4嵌入式系統(tǒng)塊ESB的應(yīng)用2.5時序驅(qū)動式優(yōu)化編譯方法2.6頻率計結(jié)構(gòu)原理2.7QuartusII優(yōu)化特性2.1頻率計的VHDL設(shè)計2.1.1創(chuàng)建工程和編輯設(shè)計文件首先應(yīng)該建立好工作庫目錄,以便設(shè)計工程項目的存儲。作為示例,在此設(shè)立目錄為D:ftest,作為工作庫,以便將設(shè)計過程中的相關(guān)文件存儲于此。任何一項設(shè)計都是一項工程(Project),都必須首先為此工程建立一個放置與此工程相關(guān)的所有文件的文件夾,此文件夾將被EDA軟件默認(rèn)為工作庫(WorkL
2、ibrary)。一般地,不同的設(shè)計項目最好放在不同的文件夾中。注意,一個設(shè)計項目可以包含多個設(shè)計文件,如頻率計。在建立了文件夾后就可以將設(shè)計文件通過QuartusII的文本編輯器編輯并存盤,詳細(xì)步驟如下:1.新建一個文件夾首先利用Windows資源管理器新建一個文件夾。假設(shè)本項設(shè)計的文件夾取名為ftest,在D盤中,路徑為D:ftest。注意,文件夾名不能用中文。2.輸入源程序打開QuartusII,選擇菜單“File”→“New”,在New窗中的“DeviceDesignFiles”中選擇編譯文件的語言類型,這里選“VHDLFiles”(如圖2-1所示)。然后在VH
3、DL文本編譯窗中鍵入例2-1的程序,這是頻率計項目中的一個模塊:測頻計數(shù)器CNT1,文本編輯窗口如圖2-2所示。圖2-1選擇編輯文件的語言類型圖2-2編輯輸入設(shè)計文件【例2-1】計數(shù)器設(shè)計。LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;ENTITYCNT1ISPORT(CLOCK:INSTD_LOGIC;ACLR:INSTD_LOGIC;CLK_EN:INSTD_LOGIC;Q:OUTSTD_LOGIC_VECTOR(31DOWNTO0));ENDCNT1;ARCHITECTU
4、REbehavOFCNT1ISSIGNALCQI:STD_LOGIC_VECTOR(31DOWNTO0);BEGINPROCESS(CLOCK,ACLR,CLK_EN)BEGINIFACLR='1'THENCQI<=(OTHERS=>'0');ELSIFCLOCK'EVENTANDCLOCK='1'THENIFCLK_EN='1'THENCQI<=CQI+1;ENDIF;ENDIF;ENDPROCESS;Q<=CQI;ENDbehav;【例2-2】測頻時序控制器設(shè)計。LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_L
5、OGIC_UNSIGNED.ALL;ENTITYTESTCTLISPORT(CLK:INSTD_LOGIC;TSTEN:OUTSTD_LOGIC;CLR_CNT:OUTSTD_LOGIC;Load:OUTSTD_LOGIC);ENDTESTCTL;ARCHITECTUREbehavOFTESTCTLISSIGNALDiv2CLK:STD_LOGIC;BEGINPROCESS(CLK)BEGINIFCLK'EVENTANDCLK='1'THENDiv2CLK<=NOTDiv2CLK;ENDIF;ENDPROCESS;PROCESS(CLK,Div2CLK)BEGINIFC
6、LK='0'ANDDiv2CLK='0'THENCLR_CNT<='1';ELSECLR_CNT<='0';ENDIF;ENDPROCESS;Load<=NOTDiv2CLK;TSTEN<=Div2CLK;ENDbehav;【例2-3】鎖存器設(shè)計。LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;ENTITYREG1ISPORT(CLOCK:INSTD_LOGIC;DATA:INSTD_LOGIC_VECTOR(31DOWNTO0);Q:OUTSTD_LOGIC_VECTOR(31DOWNTO0));ENDREG1;ARCHITECTUREb
7、ehavOFREG1ISBEGINPROCESS(CLOCK,DATA)BEGINIFCLOCK'EVENTANDCLOCK='1'THENQ<=DATA;ENDIF;ENDPROCESS;ENDbehav;【例2-4】頻率計頂層設(shè)計文件。LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;ENTITYFREQTESTISPORT(CLK:INSTD_LOGIC;FSIN:INSTD_LOGIC;DOUT:OUTSTD_LOGIC_VECTOR(31DOWNTO0));ENDFREQTEST;ARCHITECTU