電子發(fā)燒友網(wǎng)核心提示:基于QuartusII通過實驗板上的KEY1按鈕控制FPGA核心板上的第一個LED燈。本實驗比較簡單,使用本站FPGA開發(fā)板或者CPLD開發(fā)板以及其它FPGA開發(fā)板都可進(jìn)行實驗。實驗?zāi)康模和ㄟ^該實例學(xué)習(xí),可以了解FPGA的基本開發(fā)流程,熟識quartusII軟件基本功能的使用。
基本原理:利用一個常開按鈕(實驗板上的KEY1)作為輸入(常開時輸入1,閉合時輸入0),經(jīng)過一個反相器后輸出到核心板的第一個LED。KEY1常開時,LED亮,按下(閉合)實驗板上的KEY1,該LED熄滅。
1. 建立工程
運(yùn)行QuatrusII軟件(以下簡稱Q2),建立工程,F(xiàn)ileàNew Project Wizad如
點(diǎn)擊New Project Wizard 后彈出指定工程名的對話框,在Diectory, Name, Top-Level Entity中如下圖填寫:
按Next按鈕,出現(xiàn)添加工程文件的對話框:
在這里我們先不用管它,直接按Next進(jìn)行下一步,選擇FPGA器件的型號:
在Family下拉筐中,我們選擇Cyclone系列FPGA,然后在“Available devices:”中根據(jù)核心板的FPGA型號選擇FPGA型號,注意在Filters一欄選上“Show Advanced Devices”以顯示所有的器件型號。執(zhí)行下一步出現(xiàn)對話框:
這里是選擇其它EDA工具的對話框,我們用Q2的集成環(huán)境進(jìn)行開發(fā),因此這里不作任何改動。按Next進(jìn)入工程的信息總概對話框:
按Finish按鈕即建立一個空項目。
2. 建立頂層圖
執(zhí)行FileàNew,彈出新建文件對話框:
選擇“Block Diagram Schematic File”按OK即建立一個空的頂層圖,缺省名為“Block1.bdf”,我們把它另存為(FileàSave as),接受默認(rèn)的文件名,并將“Add file to current project”選項選上,以使該文件添加到工程中去。如圖所示:
3. 添加邏輯元件(Symbol)
雙擊頂層圖圖紙的空白處,彈出添加元件的對話筐:
在Libraries里尋找所需要的邏輯元件,如果知道邏輯元件的名稱的話,也可以直接在Name一欄敲入名字,右邊的預(yù)覽圖即可顯示元件的外觀,按OK后鼠標(biāo)旁邊即拖著一個元件符號,在圖紙上點(diǎn)擊左鍵,元件即安放在圖紙上。
在圖紙上分別添加非門(not)、輸入(input)、輸出(output)三個symbol,如圖所示:
連線,將鼠標(biāo)移到symbol連線端口的那里,鼠標(biāo)變成圖示模樣:按下左鍵拖動鼠標(biāo)到另一個symbol的連線端。本例中,這三個symbol的連線如下圖所示:
分別雙擊input和output symbol的名字“pin_name”、“pin_name1”,將它們的名字改為Key1,LED1:
4. 分配管腳
為芯片分配管腳可以用QuartusII軟件里的“AssignmentsàPins”菜單,也可以用tcl腳本文件。用Tcl文件進(jìn)行配置可重用性好,易于管理,因此本文介紹用tcl的方法。對于另一種方法,可以參考QuartusII軟件的幫助文檔。
在工程目錄下建立一個name為Setup.tcl的file。FileàNew,選擇other files頁面:
有關(guān)tcl文件的更詳盡內(nèi)容可參考QuartusII的幫助文檔,對于我們所選用的FPGA開發(fā)板SOPC開發(fā)板來說,由于不同型號的FPGA核心板的管腳與實驗板上的引腳也不同,因此不同的核心板對應(yīng)的.tcl文件也不同(關(guān)于核心板引腳與實驗板引腳對應(yīng)的詳細(xì)情況請參照“CT-SOPCx學(xué)習(xí)套件用戶手冊”或相關(guān)電路原理圖)。在實際項目中,該文件也可以根據(jù)具體管腳分配要求來改寫。
對應(yīng)于EP1C6 FPGA開發(fā)板,EP1C12 FPGA開發(fā)板:
#Setup.tcl
# Setup pin setting
set_global_assignment -name RESERVE_ALL_UNUSED_PINS “AS INPUT TRI-STATED”
set_global_assignment -name ENABLE_INIT_DONE_OUTPUT OFF
set_location_assignment PIN_1 -to led1
set_location_assignment PIN_122 -to key1
保存到工程目錄下,并注意在保存對話框選上“Add file to current project”選項。然后打開Tools -》 Tcl Scripts,選中剛才編輯的Script文件:Setup,并點(diǎn)擊Run,如下圖:
注意:建立工程時如果路徑名有中文字符或者路徑名有空格字符,則tcl Script文件將運(yùn)行不了。比如,本例建立的工程“FPGA_led_test”目錄是: C:alteraquartus51myq2projectsFPGA_led_test
如果是:
C:alteraquartus51my q2projectsFPGA_led_test
在該目錄下運(yùn)行工程里的setup.tcl就會出錯。
如果使用Tools -》 Tcl Scripts 后沒有彈出“tcl Script”對話框可以試一下關(guān)了QII,再重新打開。使用TCL文件分配管腳是很方便的,用戶可以直接從相關(guān)例子工程中復(fù)制需要管腳分配表到自己的工程中,省時又方便。
評論
查看更多