《基于FPGA的嵌入式系統(tǒng)設(shè)計(jì)》課件第4章_第1頁
《基于FPGA的嵌入式系統(tǒng)設(shè)計(jì)》課件第4章_第2頁
《基于FPGA的嵌入式系統(tǒng)設(shè)計(jì)》課件第4章_第3頁
《基于FPGA的嵌入式系統(tǒng)設(shè)計(jì)》課件第4章_第4頁
《基于FPGA的嵌入式系統(tǒng)設(shè)計(jì)》課件第4章_第5頁
已閱讀5頁,還剩112頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

第4章Qsys系統(tǒng)開發(fā)工具4.1Qsys簡介4.2Qsys設(shè)計(jì)流程4.3Qsys用戶界面4.4Qsys用戶自定制元件

4.1Qsys簡介

Qsys系統(tǒng)集成工具自動生成互聯(lián)邏輯,連接知識產(chǎn)權(quán)(IP)功能和子系統(tǒng),從而顯著節(jié)省了系統(tǒng)開發(fā)時(shí)間,減輕了FPGA設(shè)計(jì)工作量。Qsys是新一代SoPCBuilder工具,在片上網(wǎng)絡(luò)NoC(NetworkonaChip)新技術(shù)的支持下,與SoPCBuilder相比,提高了系統(tǒng)集成性能,增強(qiáng)了設(shè)計(jì)重用功能,可更迅速地進(jìn)行系統(tǒng)集成驗(yàn)證。

4.1.1SoPC技術(shù)簡介

SoPC(SystemonaProgrammableChip)是用可編程邏輯技術(shù)把整個(gè)系統(tǒng)放到一塊硅片上。SoPC是一種特殊的嵌入式系統(tǒng):一方面它是片上系統(tǒng)(SystemonaChip,SoC),即由單個(gè)芯片完成整個(gè)系統(tǒng)的主要邏輯功能;另一方面,它是可編程系統(tǒng),具有靈活的設(shè)計(jì)方式,可裁減、擴(kuò)充、升級,并具備軟硬件在系統(tǒng)可編程的功能。這項(xiàng)技術(shù)將EDA技術(shù)、計(jì)算機(jī)設(shè)計(jì)、嵌入式系統(tǒng)、工業(yè)自動控制系統(tǒng)、DSP及數(shù)字通信系統(tǒng)等技術(shù)融為一體。

SoPC結(jié)合了SoC和PLD、FPGA各自的優(yōu)點(diǎn),一般具備以下基本特征:

(1)至少包含一個(gè)嵌入式處理器內(nèi)核;

(2)有小容量片內(nèi)高速RAM資源;

(3)有豐富的IPCore資源可供選擇;

(4)有足夠的片上可編程邏輯資源;

(5)有處理器調(diào)試接口和FPGA編程接口;

(6)可包含部分可編程模擬電路;

(7)單芯片,低功耗,微封裝。

首先,SoPC在極大地提高了許多電子系統(tǒng)性能價(jià)格比的同時(shí),還開辟了許多新的應(yīng)用領(lǐng)域,如高端的數(shù)字信號處理、通信、軟件無線電系統(tǒng)的設(shè)計(jì)以及微處理器和大型計(jì)算機(jī)處理器的設(shè)計(jì)等;同時(shí),由于SoPC具有基于EDA技術(shù)標(biāo)準(zhǔn)的設(shè)計(jì)語言與系統(tǒng)測試手段、規(guī)范的設(shè)計(jì)流程與多層次的仿真功能,以及高效率的軟硬件開發(fā)與實(shí)現(xiàn)技術(shù),使得SoPC及其實(shí)現(xiàn)技術(shù)無可爭議地成為現(xiàn)代電子技術(shù)最具時(shí)代特征的典型代表。與基于ASIC的SoC相比,SoPC具有更多的特點(diǎn)與吸引力:開發(fā)軟件成本低,硬件實(shí)現(xiàn)風(fēng)險(xiǎn)低,產(chǎn)品上市效率高,系統(tǒng)結(jié)構(gòu)可重構(gòu)及硬件可升級,而且具有設(shè)計(jì)者易學(xué)易用、復(fù)雜系統(tǒng)集成設(shè)計(jì)成本低等優(yōu)勢。

4.1.2Qsys與SoPC開發(fā)

Qsys是Altera公司在QuartusⅡ11.0以上版本發(fā)布的新功能,它是SoPCBuilder的新一代產(chǎn)品。在QuartusⅡ11.0及以后的軟件版本中,SoPCBuilder工具逐漸被Qsys所取代。Qsys在SoPC開發(fā)中的作用是在SoPCBuilder的基礎(chǔ)之上實(shí)現(xiàn)新的系統(tǒng)開發(fā)與性能互聯(lián)。

與SoPCBuilder相同,Qsys是一種可加快在PLD內(nèi)實(shí)現(xiàn)嵌入式處理器相關(guān)設(shè)計(jì)的工具,它的功能與PC應(yīng)用程序中的“引導(dǎo)模板”類似,旨在提高設(shè)計(jì)者的效率。設(shè)計(jì)者可確定所需要的處理器模塊和參數(shù),并據(jù)此創(chuàng)建一個(gè)處理器的完整存儲器映射,同時(shí)還可以選擇所需的IP外圍電路,如存儲器控制器、I/O控制器和定時(shí)器模塊等。

Qsys可以快速地開發(fā)定制新方案,重建已經(jīng)存在的方案,并為其添加新的功能,提高系統(tǒng)的性能。通過自動集成系統(tǒng)組件,它允許用戶將工作的重點(diǎn)集中到系統(tǒng)級的需求上,而不是把一系列組件裝配在一起這種普通的、手工的工作上面。在AlteraQuartusⅡ11.0及以后的軟件版本中,都已經(jīng)包含了Qsys(QuartusⅡ13.0以上版本完全用Qsys替代SoPCBuilder)。設(shè)計(jì)者采用Qsys系統(tǒng)集成工具,能夠在一個(gè)工具內(nèi)定義一個(gè)從硬件到軟件的完整系統(tǒng),而花費(fèi)的時(shí)間僅僅是傳統(tǒng)SoC設(shè)計(jì)的幾分之一。

Qsys提供了一個(gè)強(qiáng)大的平臺,用于組建一個(gè)在模塊級和組件級定義的系統(tǒng)。它的組件庫包含了從簡單的固定邏輯的功能塊到復(fù)雜的、參數(shù)化的、可以動態(tài)生成的子系統(tǒng)等一系列組件。這些組件可以是從Altera或其他合作伙伴購買來的IP核,其中一些是可以免費(fèi)下載用來做評估的。用戶還可簡單地創(chuàng)建他們自己定制的組件。Qsys內(nèi)建的IP核庫是OpenCorePlus版的業(yè)界領(lǐng)先的Nios/NiosⅡ嵌入式軟核處理器。所有的QuartusⅡ用戶能夠把一個(gè)基于Nios/NiosⅡ處理器的系統(tǒng)經(jīng)過生成、仿真和編譯,進(jìn)而下載到AlteraFPGA中,進(jìn)行實(shí)時(shí)評估和驗(yàn)證。

Qsys庫中已有的組件包括:

(1)處理器。

①片內(nèi)處理器;

②片外處理器的接口。

(2)IP&外設(shè)。

①通用的微控制器外設(shè);

②通信外設(shè);

③多種接口(存儲器接口、橋接口、ASSP、ASIC);

④數(shù)字信號處理(DSP)IP;

⑤硬件加速外設(shè)。

4.1.3Qsys的功能特點(diǎn)

1.具有直觀的圖形用戶界面(GUI)

用戶可以快速方便地定義和連接復(fù)雜的系統(tǒng)。如圖4.1所示,用戶可從左邊的庫中添加所需的部件,然后在右邊的表中配置它們。圖4.1Qsys的圖形用戶界面

2.自動生成和集成軟件和硬件

Qsys會自動生成互聯(lián)邏輯(地址/數(shù)據(jù)總線連接、總線寬度匹配邏輯、地址解碼邏輯以及仲裁邏輯等)。它也會產(chǎn)生系統(tǒng)可仿真的RTL描述,以及為特定硬件配置設(shè)計(jì)的測試平臺,能夠把硬件系統(tǒng)綜合到單個(gè)網(wǎng)表中。另外,Qsys還能夠生成C和匯編頭文件,這些頭文件定義了存儲器映射、中斷優(yōu)先級和每個(gè)外設(shè)寄存器空間的數(shù)據(jù)結(jié)構(gòu)。這樣的自動生成過程幫助軟件設(shè)計(jì)者處理硬件潛在的變化性。如果硬件改變了,Qsys會自動更新這些頭文件。Qsys也會為系統(tǒng)中現(xiàn)有的每個(gè)外設(shè)生成定制的C和匯編函數(shù)庫。

3.開放性

Qsys開放了硬件和軟件接口,允許第三方像Altera一樣有效地管理SoPC部件,用戶可以根據(jù)需要將自己設(shè)計(jì)的部件添加到Qsys的列表中。

4.1.4Qsys的優(yōu)點(diǎn)

Qsys系統(tǒng)集成工具自動生成互聯(lián)邏輯,連接知識產(chǎn)權(quán)(IP)功能和子系統(tǒng),從而顯著節(jié)省了時(shí)間,減輕了FPGA設(shè)計(jì)的工作量。Qsys是下一代SoPCBuilder工具,在FPGA優(yōu)化芯片網(wǎng)絡(luò)(NoC)新技術(shù)的支持下,與SoPCBuilder相比,提高了性能,增強(qiáng)了設(shè)計(jì)重用功能,縮短了FPGA設(shè)計(jì)過程,更迅速地進(jìn)行驗(yàn)證,主要體現(xiàn)在以下幾點(diǎn):

1.加速開發(fā)

(1)使用方便的GUI界面,支持IP功能和子系統(tǒng)的快速集成。

(2)自動生成互聯(lián)邏輯(地址/數(shù)據(jù)總線連接、總線寬度匹配邏輯、地址解碼邏輯以及仲裁邏輯等)。

(3)Altera及其IP合作伙伴提供的即插即用Qsys兼容IP。

(4)支持包括Avalon和ARMAMBAAXI接口的不同工業(yè)標(biāo)準(zhǔn)接口的混合。

(5)系統(tǒng)HDL自動生成。

(6)分層設(shè)計(jì)流程,實(shí)現(xiàn)了靈活的設(shè)計(jì),支持基于團(tuán)隊(duì)的設(shè)計(jì),提高了設(shè)計(jì)重用能力。

(7)將SoPCBuilder設(shè)計(jì)移植到Qsys的移植流程。

2.更快的時(shí)序收斂

(1)與SoPCBuilder系統(tǒng)互聯(lián)架構(gòu)相比,基于NoC體系結(jié)構(gòu)的高性能Qsys互聯(lián)以及自動流水線將性能提高了兩倍。

(2)控制功能強(qiáng)大的自動流水線,滿足fMAX和延時(shí)系統(tǒng)要求。

3.更快地完成驗(yàn)證

(1)利用自動測試臺生成功能并使用驗(yàn)證IP套裝可迅速開始仿真。

(2)通過系統(tǒng)控制臺進(jìn)行發(fā)送讀寫系統(tǒng)級操作,從而加快電路板開發(fā)。

4.2Qsys設(shè)計(jì)流程

Qsys的設(shè)計(jì)理念是提高設(shè)計(jì)抽象級,從而使機(jī)器自動生成底層代碼,包括從開始的門級電路到寄存器傳輸級(RTL),從SoPCBuilder所提出的IP級到Qsys提出的系統(tǒng)級模式。針對設(shè)計(jì)級別的提高,Qsys采用了片上網(wǎng)絡(luò)架構(gòu)。在這種架構(gòu)上IP可以直接互聯(lián),這樣標(biāo)準(zhǔn)化之后,軟件便可以自動為標(biāo)準(zhǔn)內(nèi)核及膠合邏輯提供標(biāo)準(zhǔn)化互聯(lián),而設(shè)計(jì)者只需修改自己的定制邏輯即可。由于采用了標(biāo)準(zhǔn)化IP接口,因此對于設(shè)計(jì)復(fù)用而言接口不必重新設(shè)計(jì),Altera的Avalon總線的IP可以與ARMAMBA總線通過Qsys混合。

Qsys的系統(tǒng)設(shè)計(jì)流程如圖4.2所示。具體描述為:導(dǎo)入RTL設(shè)計(jì),Qsys進(jìn)行自動封裝并改進(jìn)IP庫,之后就可以成為獨(dú)立IP來復(fù)用了。圖4.2Osys系統(tǒng)設(shè)計(jì)流程

2.更快的時(shí)序收斂

(1)與SoPCBuilder系統(tǒng)互聯(lián)架構(gòu)相比,基于NoC體系結(jié)構(gòu)的高性能Qsys互聯(lián)以及自動流水線將性能提高了兩倍。

(2)控制功能強(qiáng)大的自動流水線,滿足fMAX和延時(shí)系統(tǒng)要求。

3.更快地完成驗(yàn)證

(1)利用自動測試臺生成功能并使用驗(yàn)證IP套裝可迅速開始仿真。

(2)通過系統(tǒng)控制臺進(jìn)行發(fā)送讀寫系統(tǒng)級操作,從而加快電路板開發(fā)。

4.3Qsys用戶界面

打開QuartusⅡ的一個(gè)項(xiàng)目,選擇QuartusⅡ的工具欄(tool菜單)中的Qsys選項(xiàng),就啟動了Qsys。Qsys的用戶界面包括:系統(tǒng)元件頁(SystemContentsPage)、系統(tǒng)從屬頁(SystemDependencyPage)和系統(tǒng)選項(xiàng)頁(SystemOptionsPage)。隨EDA軟件版本的不同,Qsys界面會稍有不同。

4.3.1系統(tǒng)元件頁

用戶在系統(tǒng)元件頁中來定義所需的系統(tǒng)(如圖4.3所示)。在Osys的元件庫(ComponentLibrary)中包括了Osys集成的所有元件列表。在SystemContents標(biāo)簽頁中列出的是用戶已經(jīng)添加到系統(tǒng)中的模塊。當(dāng)用戶用Qsys生成系統(tǒng)時(shí),它就生成了一個(gè)系統(tǒng)模塊,這個(gè)模塊就包含了用戶所定義的所有元件和接口。另外,該模塊還包括了自動生成的總線(互聯(lián))邏輯。圖4.3系統(tǒng)元件頁

1.模塊池

在模塊池中列出了根據(jù)總線類型和邏輯類別來分類的所有可用的庫元件。每個(gè)元件名前面都有一個(gè)帶顏色的圓點(diǎn),不同的顏色代表不同的含義。

(1)綠圓點(diǎn):用戶添加到用戶系統(tǒng)中的元件是完全許可的。

(2)黃圓點(diǎn):元件在系統(tǒng)設(shè)計(jì)中的應(yīng)用受到某種形式的限制,主要是使用時(shí)間和功能有所減少。

(3)白圓點(diǎn):元件目前還沒有安裝到用戶的系統(tǒng)上,用戶可以從網(wǎng)上下載這些元件。

用戶可以使用模塊池選擇器來列出可用的元件、安裝元件、網(wǎng)上獲取元件以及通過網(wǎng)絡(luò)升級元件。

用右鍵點(diǎn)擊元件就可以看到一個(gè)菜單,它包括了元件的詳細(xì)信息,并且可以鏈接到相關(guān)的文件和升級元件。如果用右鍵點(diǎn)擊的已安裝的元件是可以獲得升級的,則在彈出的菜單中包含了一個(gè)子菜單(以元件的版本號做標(biāo)題),點(diǎn)擊這個(gè)菜單就可以對元件進(jìn)行升級。模塊池下方的New按鈕用于創(chuàng)建新的組件,Add按鈕則用于將選擇的組件添加到系統(tǒng)中。

2.模塊表

模塊表中列出的是用戶添加到用戶所設(shè)計(jì)的系統(tǒng)中的模塊,包括橋、總線接口、CPU、存儲器接口、外圍設(shè)備等。此外,用戶可以用模塊表來描述以下項(xiàng)目:

(1)連接的主、從性;

(2)系統(tǒng)地址映射;

(3)系統(tǒng)中斷請求分配;

(4)控制共享從元件的優(yōu)先權(quán)。

3.添加元件到模塊表

(1)在模塊池中點(diǎn)擊要添加的元件名。

(2)點(diǎn)擊Add,之后會出現(xiàn)以下兩種情況之一。

①對于可用的、已安裝上的并有附加設(shè)置的元件,會出現(xiàn)一個(gè)對話框,讓用戶設(shè)定各種選項(xiàng)。設(shè)定完選項(xiàng)后點(diǎn)擊Finish,就可將元件添加到模塊表中。如果元件沒有選項(xiàng)對話框,則它會被自動加到模塊表中。

②對于可用的、但沒有安裝的元件,會出現(xiàn)一個(gè)對話框,它可鏈接到網(wǎng)上下載元件或是從廠商索取。安裝了元件后,用戶就可以將它添加到用戶所設(shè)計(jì)的系統(tǒng)中了。

4.3.2系統(tǒng)從屬頁

當(dāng)用戶向所設(shè)計(jì)的系統(tǒng)中添加元件,比如一個(gè)NiosⅡ嵌入式處理器時(shí),在Qsys中就會出現(xiàn)一個(gè)附加頁。這個(gè)附加頁可以讓用戶設(shè)置一些附加的參數(shù)或是與系統(tǒng)中其他元件的相連關(guān)系。比如,用戶可以定義CPU和存儲器元件之間的相連關(guān)系來指明哪一個(gè)用作程序存儲器,哪一個(gè)用作數(shù)據(jù)存儲器。對于用到系統(tǒng)從屬頁的元件,Qsys會對用戶添加到用戶系統(tǒng)中的這個(gè)元件的每種情況都生成一個(gè)單獨(dú)的系統(tǒng)從屬頁。

另外,處理器元件可能會有相關(guān)的軟件組件,并且會在系統(tǒng)從屬頁中顯示出來。從實(shí)用程序庫(UtilityLibraries)到實(shí)時(shí)操作系統(tǒng)都有軟件組件的例子,Altera在開發(fā)工具包中還提供了多種軟件組件。

4.3.3系統(tǒng)選項(xiàng)頁

系統(tǒng)選項(xiàng)頁是指在創(chuàng)建和生成Qsys系統(tǒng)中所用到的選項(xiàng)設(shè)置,與Qsys主界面中的八個(gè)選項(xiàng)卡相對應(yīng),它們分別是SystemContents、AddressMap、ClockSettings、ProjectSettings、InstanceParameters、SystemInspector、HDLExample和Generation。

1.SystemContents選項(xiàng)

SystemContents是顯示用戶自定義的系統(tǒng)構(gòu)成的選項(xiàng),詳細(xì)給出了系統(tǒng)構(gòu)成的各組件名稱、連接情況、描述、基址、時(shí)鐘和中斷優(yōu)先級分配等情況,如圖4.4所示。圖4.4SystemContents選項(xiàng)

2.AddressMap選項(xiàng)

AddressMap選項(xiàng)用于用戶設(shè)置系統(tǒng)在內(nèi)存映射中的地址,從而確保與其他部分的映射一致。如果該選項(xiàng)中有紅色標(biāo)記,則表示地址出現(xiàn)重疊錯(cuò)誤,可雙擊地址進(jìn)行修改。圖4.5所示為修改后正確的地址映射。圖4.5AddressMap選項(xiàng)

3.ClockSettings選項(xiàng)

ClockSettings是時(shí)鐘設(shè)置選項(xiàng)。如圖4.6所示,在該選項(xiàng)下可以進(jìn)行系統(tǒng)可用時(shí)鐘類型及頻率的設(shè)置。需要注意的是,實(shí)際上CPU時(shí)鐘頻率的設(shè)置是有限制的,不同的器件其最大時(shí)鐘頻率也是不一樣的,具體詳見Altera的官網(wǎng)文檔《NiosⅡPerformanceBenchmarks》。圖4.6ClockSettings選項(xiàng)

4.ProjectSettings選項(xiàng)

ProjectSettings選項(xiàng)用來設(shè)置一些系統(tǒng)參數(shù),包括器件系列(Devicefamily)的選擇、Clockcrossingadaptertype(跨時(shí)鐘域適應(yīng)器類型)設(shè)置、Limitinterconnectpipelinestagesto(限制互聯(lián)總線層次)設(shè)置和GenerationId(生成ID)設(shè)置等,如圖4.7所示。圖4.7ProjectSettings選項(xiàng)

(1)器件系列(Devicefamily)的選擇是由用戶從器件列表中選擇用戶的目標(biāo)器件。這項(xiàng)設(shè)置非常重要,因?yàn)镼sys是利用所選器件系列的結(jié)構(gòu)優(yōu)勢來產(chǎn)生系統(tǒng)的邏輯的。

(2)Clockcrossingadaptertype選項(xiàng)在SoPCBuilder中是沒有的,在Qsys系統(tǒng)中如果要處理跨時(shí)鐘域的數(shù)據(jù)傳輸,則在系統(tǒng)生成時(shí)會自動加入一個(gè)Clockcrossingadaptor,無需手動加入(Clockcrossingadaptor在component列表中也有)。其中在選項(xiàng)下拉菜單中有三個(gè)選擇項(xiàng):Handshake、FIFO和Auto。

①Handshake:采用簡單的握手協(xié)議處理跨時(shí)鐘域數(shù)據(jù)傳輸,在這種模式下耗用的資源比較少,適用于數(shù)據(jù)吞吐量比較少的情況。

②FIFO:采用了雙時(shí)鐘的FIFO做同步處理,這種模式下可以處理吞吐量比較大的數(shù)據(jù)傳輸,但是總體延時(shí)是Handshake的兩倍,適用于吞吐量比較大的存儲器映射的數(shù)據(jù)傳輸。

③Auto:在這種模式下同時(shí)采用Hankshake和FIFO方式的連接,在突發(fā)連接中使用FIFO方式,其他情況下使用Handshake方式。

(3)Limitinterconnectpipelinestageto選項(xiàng)在SoPCBuilder中也是沒有的。這也是Qsys的改進(jìn)之一,在Qsys中對用戶開放了一部分總線信息。關(guān)于Interconnect的具體資料,可以查閱官方資料。需要注意的是,這個(gè)互聯(lián)只針對Avalon-MM接口,而Avalon-ST接口的信息早已公布。

(4)GenerationId(生成ID)的設(shè)置是指在Qsys系統(tǒng)生成之前賦給時(shí)間標(biāo)簽一個(gè)唯一的整數(shù)值,用于檢查軟件的兼容性。

5.InstanceParameters選項(xiàng)

InstanceParameters選項(xiàng)(見圖4.8)用來給該Qsys系統(tǒng)定義參數(shù)。當(dāng)該系統(tǒng)作為另一個(gè)Qsys系統(tǒng)的子系統(tǒng)時(shí),可以用該實(shí)例參數(shù)來修飾該Qsys系統(tǒng),而高一級的Qsys系統(tǒng)可以指定具體實(shí)例參數(shù)的數(shù)值。圖4.8InstanceParameters選項(xiàng)

InstanceScript定義了該實(shí)例參數(shù)指定的值將如何影響到Qsys設(shè)計(jì)中的各子組件。它允許用戶在此查詢在設(shè)計(jì)中定義和設(shè)置的實(shí)例參數(shù)的數(shù)值。

點(diǎn)擊PreviewInstance按鈕,Qsys會給出指定了參數(shù)和實(shí)例腳本的當(dāng)前Qsys系統(tǒng)的預(yù)覽,同時(shí)還顯示該實(shí)例的參數(shù)編輯器。

6.SystemInspector選項(xiàng)

SystemInspector選項(xiàng)(見圖4.9)與ProjectSettings選項(xiàng)相對應(yīng),用于將ProjectSettings選項(xiàng)設(shè)置好的相關(guān)信息在此顯示出來。圖4.9SystemInspector選項(xiàng)

7.HDLExample選項(xiàng)

HDLExample選項(xiàng)用于采用Verilog或VHDL語言給出系統(tǒng)的頂級HDL定義,同時(shí)給出系統(tǒng)組件的VHDL聲明。如果該Qsys系統(tǒng)不是QuartusⅡ工程中的頂層模塊,則可以將HDLExample復(fù)制或粘貼到實(shí)例化本Qsys系統(tǒng)的頂層HDL文件中。該選項(xiàng)界面如圖4.10所示。圖4.10HDLExample選項(xiàng)

8.Generation選項(xiàng)

Generation選項(xiàng)是用來生成用戶系統(tǒng)的。如圖4.11所示,它包含一些選項(xiàng),用戶可以通過設(shè)置(比如仿真控制、系統(tǒng)綜合和輸出路徑等)來控制生成過程。圖4.11Generation選項(xiàng)

(1)仿真控制設(shè)置包括創(chuàng)建仿真模型、創(chuàng)建Qsys系統(tǒng)測試腳本以及創(chuàng)建仿真模型測試腳本的有關(guān)選擇。

(2)系統(tǒng)綜合設(shè)置包括是否創(chuàng)建Qsys生成系統(tǒng)的HDL文件以及是否生成原理圖文件。

(3)輸出路徑設(shè)置則用于指定生成系統(tǒng)相關(guān)文件及仿真、綜合后相關(guān)文件的輸出路徑。

以上相關(guān)選項(xiàng)設(shè)置后,用戶就可以點(diǎn)擊Generate按鈕來生成所設(shè)計(jì)的系統(tǒng)。點(diǎn)擊Generate按鈕后,Qsys會創(chuàng)建以下項(xiàng)目:

(1)SDK(針對Nios系統(tǒng));

(2)系統(tǒng)中每一個(gè)元件的HDL文件;

(3)一個(gè)對于頂層系統(tǒng)模塊的符號文件(.bsf);

(4)ModelSim文件;

(5)一個(gè)Tcl腳本文件,它建立了所有QuartusⅡ編輯所需的文件。

4.3.4Qsys菜單命令

表4.1所示為Qsys中常用的菜單命令。

4.4Qsys用戶自定制元件

隨著基于FPGA的SoPC/Qsys技術(shù)已經(jīng)成為SoC設(shè)計(jì)的趨勢,Altera公司QuartusⅡ軟件集成的Qsys(低版本為SoPCBuilder)可以方便地調(diào)用集成外設(shè)元件構(gòu)建SoPC/Qsys系統(tǒng),如NiosⅡProcessor、JTAGUART、SDRAM等,這些在Qsys的組件庫中都具有集成的組件可以直接調(diào)用。而在有些情況下,如果組件庫中不存在用戶所需添加的外設(shè)組件(非通用外設(shè)元件),則需要用戶在Qsys(或SoPCBuilder)中自定制外設(shè)組件。

在Qsys或SoPCBuilder中添加外設(shè)一般有兩種方法:

(1)如果外設(shè)僅需要通過軟核處理器的I/O接口進(jìn)行控制,則可以根據(jù)外設(shè)所需I/O功能在Qsys中添加PIO將外設(shè)簡單地接入總線。這種方法在硬件接入上很直觀,但需要根據(jù)外設(shè)的控制時(shí)序來編寫相關(guān)的時(shí)序控制程序,對時(shí)序的要求比較嚴(yán)格。

(2)當(dāng)所需添加外設(shè)要完成一些具體的功能,如添加以太網(wǎng)控制器W5300控制組件時(shí),需要用硬件描述語言描述定制元件接口,通過Qsys中的自定制元件功能定制所需組件時(shí)序上的轉(zhuǎn)換邏輯,通過所描述的元件接口將外設(shè)直接接入系統(tǒng)總線(Avalon總線),并編寫相關(guān)的軟件對其進(jìn)行操作。

本節(jié)主要介紹第二種外設(shè)自定義方法。為了理解Qsys外設(shè)的自定義元件方法,我們先以DDS(DirectDigitalFrequencySynthesizer,直接數(shù)字頻率綜合器)波形發(fā)生器為例,通過自定制元件的方法將波形發(fā)生器模塊的接口信號掛接到Avalon總線上,通過Avalon總線的讀寫時(shí)序來控制波形產(chǎn)生的頻率,如圖4.12所示。另外,我們給出以太網(wǎng)控制器W5300的自定制元件描述及Avalon總線的時(shí)序設(shè)置來進(jìn)一步理解實(shí)際芯片接口信號掛接到Avalon總線上的方法。圖4.12Qsys中添加自定制元件

4.4.1Qsys組件構(gòu)成

Qsys組件由以下部分組成:

(1)組件類型信息,如組件名稱、版本和作者;

(2)組件硬件的硬件描述語言(HDL)描述;

(3)組件接口硬件的描述,如I/O信號的類型;

(4)配置組件運(yùn)行的參數(shù)說明;

(5)配置Qsys中組件的實(shí)例參數(shù)編輯器。

設(shè)計(jì)者可以使用組件所要求的任意數(shù)量的接口和接口類型的任意組合來設(shè)計(jì)自定制組件。例如,一個(gè)組件除了對控制器提供存儲器映射的從端口以外,還可以對高吞吐量數(shù)據(jù)提供Avalon-ST源端口。

Qsys自定義組件可以使用的組件接口包括:

(1)Memory-Mapped(MM):用于存儲器映射通信的Avalon-MM或AXI主端口和從端口。

(2)AvalonStreaming(Avalon-ST):用于Avalon-ST源和發(fā)送數(shù)據(jù)流的接收器之間的點(diǎn)到點(diǎn)的連接。

(3)Interrupts:用于生成中斷的中斷發(fā)送器和執(zhí)行中斷的中斷接收器之間的點(diǎn)到點(diǎn)的連接。

(4)Clocks:用于時(shí)鐘源和時(shí)鐘接收器之間的點(diǎn)到點(diǎn)的連接。

(5)Resets:用于復(fù)位源和復(fù)位接收器之間的點(diǎn)到點(diǎn)的連接。

(6)AvalonTri-StateConduit(Avalon-TC):用于連接到PCB上的三態(tài)器件的Qsys系統(tǒng)中的三態(tài)總線控制器。

(7)Conduits:用于通道接口之間的點(diǎn)到點(diǎn)的連接。設(shè)計(jì)者可以使用該接口來定義不符合任何其他接口種類的信號。

4.4.2Qsys組件編輯器

Qsys組件編輯器是Qsys的一個(gè)重要組成部分,用戶可以通過該編輯器創(chuàng)建并且封裝用于Qsys的自定制組件,也可以對創(chuàng)建好的自定制組件進(jìn)行編輯。如圖4.13所示,在創(chuàng)建好的組件上點(diǎn)擊右鍵,選擇Edit命令就可以編輯自定制組件。圖4.13在Qsys中編輯創(chuàng)建好的自定制組件

使用Qsys組件編輯器GUI界面,用戶可以完成以下任務(wù):

(1)指定組件的識別信息,如組件名稱、版本、作者等。

(2)指定描述組件接口及硬件功能的硬件描述語言(HDL)文件,以及定義綜合和仿真的組件約束文件。

(3)定義參數(shù)和接口信號,并創(chuàng)建組件的HDL模板。

(4)關(guān)聯(lián)并定義組件接口的信號類型。

(5)設(shè)置接口參數(shù),并指定其特性。

(6)指定接口之間的關(guān)系。

如果自定制組件不是基于已經(jīng)編輯好的HDL文件,則需要首先在組件編輯器窗口的Parameters、Signals和Interfaces標(biāo)簽中輸入?yún)?shù)、信號和接口,然后返回Files標(biāo)簽,點(diǎn)擊CreateSynthesisFilefromSignals按鈕來創(chuàng)建頂層HDL文件模板。當(dāng)點(diǎn)擊組件編輯器窗口底部的Finish按鈕時(shí),Qsys使用組件編輯器標(biāo)簽上提供的詳細(xì)信息創(chuàng)建組件_hw.tcl文件(使用Qsys組件的Tcl腳本語言編寫的文本文件,包含組件設(shè)計(jì)文件的名稱和位置信息)。

保存自定義組件后,自定義的組件即出現(xiàn)在Qsys組件庫中。

4.4.3自定義組件實(shí)例1—DDS信號產(chǎn)生模塊

該實(shí)例利用FPGA內(nèi)部軟核處理器對DDS信號產(chǎn)生模塊進(jìn)行控制,實(shí)現(xiàn)正弦波及掃頻信號輸出,還可以將DDS信號產(chǎn)生模塊輸出的波形數(shù)據(jù)讀入軟核處理器NiosⅡ。其中,DDS信號產(chǎn)生模塊是EDA實(shí)驗(yàn)教學(xué)中經(jīng)常介紹的實(shí)驗(yàn)項(xiàng)目。該實(shí)例為了將DDS信號產(chǎn)生模塊作為軟核處理器NiosⅡ的外設(shè)進(jìn)行控制,在原DDS信號產(chǎn)生模塊的基礎(chǔ)上增加了如圖4.14左邊虛線框所示的控制信號及相關(guān)模塊,包括32位寫數(shù)

據(jù)總線DDS_oDATA[31:0]、32位讀數(shù)據(jù)總線DDS_DATA[31:0]、地址總線DDS_ADD[3:0]、寫信號DDS_WR_N、讀信號DDS_RD_N、復(fù)位信號DDS_RST_N,以及頻率控制字寄存器、控制寄存器、數(shù)據(jù)寄存器和地址譯碼器。頻率控制字寄存器模塊的地址為EN0(0x00),控制寄存器地址為EN1(0x01),數(shù)據(jù)寄存器地址為EN2(0x02)。通過Qsys自定制組件接口邏輯將這些控制信號掛接到Avalon總線上,即可通過Altera軟核處理器NiosⅡ?qū)DS信號產(chǎn)生模塊進(jìn)行控制。

使用硬件描述語言所實(shí)現(xiàn)的Qsys自定制組件接口描述文件,主要實(shí)現(xiàn)Avalon總線與自定制組件接口控制信號的連接。本實(shí)例中要連接到Avalon總線上的外設(shè)接口信號如圖4.14左側(cè)所示,因此接口描述文件中所包括的接口信號定義如圖4.15所示。圖4.14DDS信號產(chǎn)生模塊(DDS_Module)接口控制圖4.15Qsys自定制組件接口描述文件接口信號

1.自定制元件的VerilogHDL接口描述文件

通過該接口描述文件即可把需要控制外設(shè)(這里是DDS信號產(chǎn)生模塊)的接口信號(包括數(shù)據(jù)總線、地址總線和控制信號)掛接到Avalon總線的從端口上,如圖4.15所示。

注意:以上接口描述文件需要在EDA軟件中編譯通過才能進(jìn)行下一步操作。

2.使用Qsys元件編輯器創(chuàng)建自定制元件

在QuartusⅡEDA軟件(建議11.0以上版本)中打開需要使用自定制元件的工程文件,并按照4.3節(jié)的操作啟動Qsys界面。通過雙擊Qsys界面左邊Library組件庫中Project下的NewComponent打開Qsys組件編輯器(或選擇菜單File->NewComponent),如圖4.16所示。點(diǎn)擊組件編輯器(ComponentEditor)中每個(gè)標(biāo)簽頁左上角的About三角,則出現(xiàn)對應(yīng)標(biāo)簽頁所需要和顯示的信息,如圖4.16中ComponentType標(biāo)簽頁中AboutComponentType所示。圖4.16打開Qsys組件編輯器界面

1)ComponentType標(biāo)簽頁

如圖4.16所示,ComponentType標(biāo)簽頁可以指定關(guān)于自定制組件的以下信息:

(1)Name:指定_hw.tcl文件名中使用的名稱(如輸入DDS_controller)。對于不是基于已經(jīng)編輯好的HDL文件的自定制組件,也指定頂層模塊名稱。

(2)Displayname(可選):識別參數(shù)編輯器GUI中的組件(如輸入DDS_controller),也出現(xiàn)在組件庫中的Project下和Qsys界面的SystemContents標(biāo)簽上。

(3)Version:指定組件的版本編號(如1.0)。

(4)Group(可選):代表組件庫中組件列表中組件的類別(如輸入U(xiǎn)ser_IP)。用戶可以從組件列表中選擇一個(gè)現(xiàn)有的組,或通過在Group對話框中輸入一個(gè)名稱定義新組。使用斜線在Group對話框中分離選項(xiàng)以便定義一個(gè)子類別。例如,輸入MemoriesandMemoryControllers/On-Chip,則組件出現(xiàn)在組件庫中的On-Chip組下,它是MemoriesandMemoryControllers組的子類別。如果將Qsys設(shè)計(jì)保存到工程目錄中,則組件出現(xiàn)在組件庫的Project下定制的組中。另外,如果將設(shè)計(jì)保存到QuartusⅡ安裝目錄中,則組件出現(xiàn)在Library下定制的組中。

(5)Description(可選):組件描述(如輸入DDS_controller)。

(6)Createdby(可選):指定組件的作者。

(7)Icon(可選):可以輸入圖標(biāo)文件(.gif、.jpg或.pgn格式)的相對路徑,它代表組件并在組件的參數(shù)編輯器中顯示為標(biāo)頭。默認(rèn)圖像是AlteraMegaCore功能圖標(biāo)。

(8)Documentation(可選):可以添加鏈接到組件的文件中,右鍵點(diǎn)擊組件庫中的組件,選擇Details時(shí)該選項(xiàng)會出現(xiàn)。

①要指定一個(gè)Internet鏈接,其路徑以http://開始,如:/datasheets/my_memory_controller.html。

②要指定文件系統(tǒng)中的文件,對于Window,其路徑以file:////開始,如:file:////company_server/datasheets/my_memory_controller.pdf。

③對于Linux,其路徑以file:///開始。

2)Files標(biāo)簽頁

組件編輯器的Files標(biāo)簽頁可以指定綜合和仿真的硬件描述語言文件。對于已經(jīng)編輯好的HDL文件的自定制組件,在Files標(biāo)簽頁中可以直接指定HDL文件;對于沒有編輯好的HDL文件的自定制組件,可以使用Files標(biāo)簽頁來創(chuàng)建頂層HDL模板文件。

(1)對于已經(jīng)編輯好的HDL文件(本例),點(diǎn)擊Files標(biāo)簽頁中SynthesisFiles下的“+”按鈕,添加應(yīng)該包含的自定制組件HDL接口描述文件及其他支持文件。如圖4.17所示,添加DDS_controller.v文件,并指示為頂層文件。

一個(gè)組件必須將HDL文件指定為包含頂層模塊的頂層文件。SynthesisFiles列表也可包含時(shí)序約束文件,或需要在QuartusⅡ中綜合和編譯的其他文件。組件的綜合文件在Qsys系統(tǒng)生成過程中被復(fù)制到生成輸出目錄中。

(2)對于還沒有編寫好的HDL文件,可以使用組件編輯器來定義組件,對組件創(chuàng)建一個(gè)包含信號和參數(shù)的簡單的頂層綜合文件,然后可以編輯該HDL文件來添加自定制組件行為的接口描述及相關(guān)邏輯。開始時(shí)需要首先在Parameters、Signals和Interfaces標(biāo)簽頁指定組件的信息,然后點(diǎn)擊Files標(biāo)簽頁SynthesisFiles下的CreateSynthesisFilefromSignals按鈕(如圖4.17中灰色按鈕所示),組件編輯器按照指定的參數(shù)和信號來創(chuàng)建一個(gè)HDL文件模板。圖4.17Qsys組件編輯器Files標(biāo)簽頁

Files標(biāo)簽頁其他功能介紹如下:

(1)分析綜合文件。在Files標(biāo)簽頁中指定了頂層HDL文件后,點(diǎn)擊SynthesisFiles下面的AnalyzeSynthesisFiles按鈕來分析頂層中的參數(shù)和信號,然后從Top-levelModule列表中選擇頂層模塊。如果在HDL文件中有一個(gè)單一模塊或?qū)嶓w,那么Qsys自動填入Top-levelModule列表(本例及如此)。

一旦分析完成并選擇了頂層模塊,頂層模塊中的參數(shù)和信號就會被自動用作組件的參數(shù)和信號,在Parameters和Signals標(biāo)簽頁上可以查看這些參數(shù)和信號。由于還沒有完全定義信號和接口類型,組件編輯器在這一階段可能會報(bào)告錯(cuò)誤或警告,如圖4.17所示。在該階段不能隨便添加或刪除指定HDL文件所創(chuàng)建的參數(shù)或信號。

(2)指定仿真文件。要仿真Qsys生成的系統(tǒng),必須指定組件的VHDL或Verilog仿真文件。當(dāng)用戶將組件添加到Qsys系統(tǒng)并且選擇生成Verilog或VHDL仿真文件時(shí),將生成對應(yīng)組件的仿真文件。

大多數(shù)情況中,這些文件和綜合文件相同。如果已經(jīng)編寫了自定制組件的HDL仿真文件,那么除了使用綜合文件以外還可以直接使用它們,或者使用它們替代綜合文件。要將綜合文件用作仿真文件,在Files標(biāo)簽頁中,可點(diǎn)擊CopyFromSynthesisFiles按鈕將綜合文件的列表復(fù)制到VerilogSimulationFiles或VHDLSimulationFiles列表。

3)Parameters標(biāo)簽頁

組件編輯器的Parameters標(biāo)簽頁可以指定用于Qsys系統(tǒng)中配置組件的實(shí)例參數(shù)。Parameters列表顯示了在頂層HDL模塊中聲明的HDL參數(shù)及類型,用戶不可以隨意添加或刪除它們,除非重新編輯組件的HDL描述源文件。

本實(shí)例中所使用的DDS_controller.v描述中沒有使用參數(shù)。對于使用組件編輯器來創(chuàng)建組件HDL描述模板文件的用戶,可以使用Parameters表來指定每個(gè)參數(shù)的以下信息:

(1)Name:參數(shù)名。

(2)DefaultValue:設(shè)置組件在調(diào)用實(shí)例中使用的默認(rèn)值。

(3)Editable:指定用戶是否可以編輯參數(shù)值。

(4)Type:定義參數(shù)類型,如字符串、整型數(shù)、布爾類型、std_logic、邏輯矢量等。

(5)Group:可以在參數(shù)編輯器中將參數(shù)分組。

(6)Tooltip:可以添加參數(shù)說明。

可以點(diǎn)擊該標(biāo)簽頁中的PreviewtheGUI按鈕查看所聲明的參數(shù)是如何出現(xiàn)在參數(shù)編輯器中的。

在參數(shù)編輯器中HDL參數(shù)應(yīng)該遵循以下規(guī)則:

(1)可編輯的參數(shù)不能包含計(jì)算表達(dá)式。

(2)如果參數(shù)<n>定義信號的寬度,則表示信號寬度的格式為<n-1>:0。

4)Signals標(biāo)簽頁

組件編輯器的Signals標(biāo)簽頁用于指定組件中的每個(gè)信號的接口及信號類型。將組件HDL描述文件添加到Files標(biāo)簽上的SynthesisFiles表后,點(diǎn)擊Files標(biāo)簽頁中的AnalyzeSynthesisFiles按鈕,頂層模塊上的信號將出現(xiàn)在Signals標(biāo)簽頁中。

注意:如果還沒有組件頂層HDL描述文件,則可以點(diǎn)擊Signals標(biāo)簽頁中的AddSignal按鈕來添加組件的每個(gè)頂層信號,并在Name、Interface、SignalType、Width和Direction列中輸入或選擇相應(yīng)的值。用戶可以使用窗口底部的錯(cuò)誤和警告信息來指導(dǎo)相關(guān)參數(shù)的選擇。通過雙擊Name列可編輯信號的名稱。

注意:如果在Files標(biāo)簽頁中已經(jīng)分析了組件的頂層HDL文件,就不可以在Signals標(biāo)簽上添加或刪除信號,也不能更改信號的名稱。要更改信號,就必須編輯HDL描述文件,然后重新添加到Files標(biāo)簽頁中進(jìn)行分析。

Signals標(biāo)簽頁中的Interface列可以對接口分配信號。每個(gè)信號必須屬于一個(gè)接口并且基于該接口分配一個(gè)合法的信號類型。要創(chuàng)建一個(gè)新的指定類型的接口,可以從Interface列的列表中選擇new<interfacetype>,則新的接口就可以用于接下來的信號分配,如圖4.18所示。

注意:接口名稱可以在Interfaces標(biāo)簽頁中進(jìn)行編輯,但不可以在Signals標(biāo)簽頁中編輯。

依據(jù)圖4.15及組件HDL接口描述文件DDS_controller.v,在Signals標(biāo)簽頁中為每個(gè)信號指定相應(yīng)的Interface類型。例如iCLK信號,從Interface列的列表中選擇newClockInput,并在SignalType列中選擇clk。

圖4.15中對應(yīng)Avalon從接口的信號其Interface均為avalon_slave_0類型,根據(jù)信號類型在SignalType列中選擇對應(yīng)的信號類型,如32位的iDATA信號是Avalon總線從端口的寫數(shù)據(jù)總線,因此在SignalType中選擇writedata,iRD_N是Avalon總線從端口的讀信號,低電平有效,因此選擇read_n;而圖4.15中對應(yīng)DDS接口信號(即設(shè)備端的信號),包括外部時(shí)鐘信號iOSC_50,需要在Interface列中選擇newConduit,建立conduitend接口類型,并在SignalType列中選擇export導(dǎo)出這些信號。設(shè)置好的Signals標(biāo)簽頁信號及其類型如圖4.19所示。圖4.18Qsys組件編輯器Signals標(biāo)簽頁圖4.19設(shè)置好的Signals標(biāo)簽頁信號及其類型

5)Interfaces標(biāo)簽頁

組件編輯器的Interfaces標(biāo)簽頁用于管理組件的每個(gè)接口的設(shè)置。當(dāng)創(chuàng)建好的組件例化添加到Qsys系統(tǒng)中時(shí),出現(xiàn)在Signals標(biāo)簽頁中的接口名稱將顯示在QsysSystemContents標(biāo)簽中。

在Interfaces標(biāo)簽頁中,用戶可以配置Signals標(biāo)簽中Interface列所設(shè)置的每個(gè)接口的類型和屬性,如圖4.20所示的avalon_slave_0接口的類型和屬性。接口的類型和屬性設(shè)置可以參考圖4.19中的錯(cuò)誤信息,這些信息已經(jīng)告訴用戶各接口應(yīng)該如何設(shè)置。某些接口顯示了描述接口時(shí)序的波形,如果需要更新時(shí)序參數(shù),則波形自動更新。圖4.20Qsys組件編輯器Interfaces標(biāo)簽頁

6)保存組件

點(diǎn)擊組件編輯器界面下方的Finish按鈕保存組件,組件編輯器將組件保存到文件名為<component_name>_hw.tcl的文件,如圖4.21所示,本例為DDS_controller_hw.tcl文件。用戶也可以將組件文件移到一個(gè)新的目錄,以便其他用戶可以在系統(tǒng)中使用該組件。_hw.tcl文件包含其他文件的相對路徑,所以如果移動一個(gè)_hw.tcl文件,那么也應(yīng)該移動所有與其相關(guān)的HDL及其他文件。圖4.21保存組件

7)在Qsys中調(diào)用自定制元件

自定制組件生成后,可以在Qsys的組件列表下的User_IP組(在圖4.16的Group中輸入的名稱)中找到名為DDS_controller的組件,雙擊DDS_controller組件,可以在Qsys系統(tǒng)中添加該組件的例化,如圖4.22所示。圖4.22Qsys中的自定制元件及其例化

3.自定制元件的調(diào)用

啟動QuartusⅡEDA軟件工程,通過在Qsys中加入所需的集成IP核(包括NiosⅡ軟核處理器、存儲器和各種外圍設(shè)備)快速為自己的設(shè)計(jì)項(xiàng)目定制處理器硬件系統(tǒng),如本例需要在Qsys中分別添加NiosⅡ處理器(NiosⅡ_cpu)、DDS信號產(chǎn)生模塊(DDS_controller_1)、外部輸入控制信號(pio_sw_in,用來控制輸出信號頻率)、處理器程序存儲器(sdram)以及下載調(diào)試接口(jtag_uart)等設(shè)備,如圖4.22所示。其中DDS_controller_1是自定制元件的例化模塊,通過該模塊將DDS信號產(chǎn)生模塊(圖4.14框圖所描述的模塊,如圖4.23中的DDS_Module模塊)掛接到Avalon總線上。圖4.23Qsys中定制產(chǎn)生的處理器及外設(shè)模塊

在Qsys中完成一定的參數(shù)配置(如基地址、中斷等)并生成Qsys系統(tǒng)后,一個(gè)以NiosⅡ軟核處理器為核心的嵌入式系統(tǒng)的硬件部分即定制完成。完整的Qsys系統(tǒng)工程如圖4.23所示。圖中,My_Interrupt_cpu即為Qsys中定制的處理器模塊,DDS_Module為圖4.14框圖所描述的DDS信號產(chǎn)生模塊。SW[0]接pio_sw_in_export信號控制DDS輸出信號頻率,clk_50M為50MHz系統(tǒng)時(shí)鐘,sys_clock與clk_50M頻率相同。圖4.23中的DRAM_<xxx>均為SDRAM存儲器信號。DDS_Module的q[9..0]是輸出正弦波信號,DDS_oDATA[31..0]與q[9...0]一樣,但可以通過NiosⅡ處理器RD讀信號讀入并顯示到計(jì)算機(jī)上。

4.自定制元件的NiosⅡ軟件控制與測試

在Qsys界面選擇Tools->NiosⅡSoftwareBuildToolsforEclipse菜單命令,啟動Eclipse軟件編程工具,選擇File-New->NiosⅡApplicationandBS

溫馨提示

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

評論

0/150

提交評論