基于FPGA的嵌入式_第1頁(yè)
基于FPGA的嵌入式_第2頁(yè)
基于FPGA的嵌入式_第3頁(yè)
基于FPGA的嵌入式_第4頁(yè)
基于FPGA的嵌入式_第5頁(yè)
已閱讀5頁(yè),還剩73頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

基于FPGA的

嵌入式系統(tǒng)設(shè)計(jì)第1章嵌入式系統(tǒng)概述1.1嵌入式系統(tǒng)的產(chǎn)生和發(fā)展1.2嵌入式系統(tǒng)的概念1.1嵌入式系統(tǒng)的產(chǎn)生和發(fā)展

嵌入式系統(tǒng)的全面發(fā)展是從20世紀(jì)90年代開始的,主要受到了分布式控制、數(shù)字化通信、信息家電、網(wǎng)絡(luò)應(yīng)用等強(qiáng)烈的應(yīng)用需求所牽引?,F(xiàn)在,人們可以隨處發(fā)現(xiàn)嵌入式系統(tǒng)的應(yīng)用,如手機(jī)、MP3播放器、數(shù)碼相機(jī)、VCD、機(jī)頂盒、路由器、交換機(jī)等。嵌入式系統(tǒng)在軟、硬件技術(shù)方面迅速發(fā)展,首先是面向不同應(yīng)用領(lǐng)域、功能更加強(qiáng)大、集成度更高、種類繁多、價(jià)格低廉、低功耗的32位微處理器逐漸占領(lǐng)統(tǒng)治地位,DSP器件向高速、高精度、低功耗發(fā)展,而且可以和其他的嵌入式微處理器相集成。

其次,隨著微處理器性能的提高,嵌入式軟件的規(guī)模也成指數(shù)型增長(zhǎng),所體現(xiàn)出的嵌入式應(yīng)用具備了更加復(fù)雜和高度智能的功能,軟件在系統(tǒng)中體現(xiàn)出來(lái)的重要程度越來(lái)越大,嵌入式操作系統(tǒng)在嵌入式軟件中的使用越來(lái)越多,所占的比例逐漸提高,同時(shí),嵌入式操作系統(tǒng)的功能不斷豐富,在內(nèi)核基礎(chǔ)上發(fā)展成為包括圖形接口、文件、網(wǎng)絡(luò)、嵌入式Java、嵌入式CORBA、分布式處理等完備功能的集合;最后,嵌入式開發(fā)工具更加豐富,已經(jīng)覆蓋了嵌入式系統(tǒng)開發(fā)過(guò)程的各個(gè)階段,現(xiàn)在主要向著集成開發(fā)環(huán)境和友好人機(jī)界面等方向發(fā)展。

1.2嵌入式系統(tǒng)的概念

1.2.1嵌入式系統(tǒng)的定義

嵌入式計(jì)算系統(tǒng),簡(jiǎn)稱為嵌入式系統(tǒng)。那么究竟什么是嵌入式系統(tǒng)呢?在WayneWolf著的一本有關(guān)嵌入式系統(tǒng)設(shè)計(jì)的教科書《嵌入式計(jì)算系統(tǒng)設(shè)計(jì)原理》里這樣定義:“不嚴(yán)格地說(shuō):它是任意包含一個(gè)可編程計(jì)算機(jī)的設(shè)備,但是這個(gè)設(shè)備不是作為通用計(jì)算機(jī)而設(shè)計(jì)的。因此,一臺(tái)個(gè)人電腦并不能稱之為嵌入式計(jì)算系統(tǒng),盡管個(gè)人電腦經(jīng)常被用于搭建嵌入式計(jì)算系統(tǒng)?!?/p>

IEEE(國(guó)際電氣和電子工程師協(xié)會(huì))的定義是:“Deviceusedtocontrol,monitor,orassisttheoperationofequipment,machineryorplants”。微機(jī)學(xué)會(huì)的定義是:“嵌入式系統(tǒng)是以嵌入式應(yīng)用為目的的計(jì)算機(jī)系統(tǒng)”,并分為系統(tǒng)級(jí)、板級(jí)、片級(jí),系統(tǒng)級(jí)包括各類工控器、PC104模塊等;板級(jí)包括各類帶CPU的主板和OEM產(chǎn)品;片級(jí)包括各種以單片機(jī)、DSP、微處理器為核心的產(chǎn)品。目前被大多數(shù)人接受的一般性定義是:“嵌入式系統(tǒng)是以應(yīng)用為中心,以計(jì)算機(jī)技術(shù)為基礎(chǔ),軟、硬件可裁剪,適應(yīng)應(yīng)用系統(tǒng)對(duì)功能、可靠性、成本、體積和功耗等嚴(yán)格要求的專用計(jì)算機(jī)系統(tǒng)。”

1.2.2幾個(gè)相關(guān)基本概念(1)嵌入式系統(tǒng)—EmbeddedSystem通俗的說(shuō),嵌入式系統(tǒng)就是內(nèi)嵌到對(duì)象體系中的微型專用計(jì)算機(jī)。它具有比通用計(jì)算機(jī)更簡(jiǎn)潔、更個(gè)性化的功能,可運(yùn)行操作系統(tǒng),又兼有單片機(jī)體積小、低功耗等特點(diǎn),是當(dāng)前最熱門的概念和應(yīng)用最廣泛的技術(shù)之一。嵌入式系統(tǒng)包括硬件和軟件兩部分。嵌入式處理器是嵌入式系統(tǒng)的核心,有硬核和軟核之分。

由于嵌入式系統(tǒng)的概念從外延上很難統(tǒng)一,其應(yīng)用形式多種多樣,因此定義嵌入式系統(tǒng)非常困難。不過(guò),通過(guò)對(duì)上述定義分析后不難發(fā)現(xiàn),從嵌入式系統(tǒng)概念的內(nèi)涵上講,它的共性是一種軟、硬件緊密結(jié)合的專用計(jì)算機(jī)系統(tǒng)。通常我們所說(shuō)的嵌入式系統(tǒng),硬件以嵌入式微處理器為核心,集成存儲(chǔ)系統(tǒng)和各種專用輸入/輸出設(shè)備;軟件包含系統(tǒng)啟動(dòng)程序、驅(qū)動(dòng)程序、嵌入式操作系統(tǒng)、應(yīng)用程序等,這些軟件有機(jī)結(jié)合,構(gòu)成系統(tǒng)特定的一體化軟件。這種專用計(jì)算機(jī)系統(tǒng)必然在可靠性、實(shí)時(shí)性、功耗、可裁減等方面具有一系列特點(diǎn)。如果我們關(guān)注一下嵌入式系統(tǒng)的特性,也許能夠?qū)η度胧较到y(tǒng)的概念獲得更深入的理解。

(2)片上系統(tǒng)SOC—SystemOnChip片上系統(tǒng)又稱為集成電路(IntegratedSystem),簡(jiǎn)稱IS。有人認(rèn)為,IS與IC的關(guān)系和當(dāng)時(shí)的集成電路與分離元件的關(guān)系類似。IS或SOC是一個(gè)復(fù)雜的系統(tǒng)。它一般將一個(gè)完整產(chǎn)品的各功能集成在一個(gè)芯片上或芯片組上。(3)可編程片上系統(tǒng)SOPC—SystemOnProgrammableChipSOC是專業(yè)集成系統(tǒng),設(shè)計(jì)周期長(zhǎng),設(shè)計(jì)成本高;而SOPC是一種通用器件,是基于FPGA的可重構(gòu)SOC,其設(shè)計(jì)周期短,設(shè)計(jì)成本低。SOPC集成了硬核或軟核CPU、DSP、存儲(chǔ)器、外圍I/O及可編程邏輯,是更加靈活、高效的SOC解決方案。(4)集成電路IP(知識(shí)產(chǎn)權(quán))—IntellectualPropertyIP是知識(shí)產(chǎn)權(quán)的簡(jiǎn)稱。集成電路IP的定義是:經(jīng)過(guò)預(yù)先設(shè)計(jì)、預(yù)先驗(yàn)證,符合產(chǎn)業(yè)界普遍認(rèn)同的設(shè)計(jì)規(guī)范和設(shè)計(jì)標(biāo)準(zhǔn),具有相對(duì)獨(dú)立功能的電路模塊或子系統(tǒng),可以復(fù)用于SOC、SOPC或復(fù)雜ASIC設(shè)計(jì)中。這種IP庫(kù)與傳統(tǒng)的單元庫(kù)不同,它的知識(shí)含量更高,規(guī)模更大,可重用性好,被公認(rèn)為是芯片面積小、運(yùn)行速度快、功耗低、工藝容差大的設(shè)計(jì)。在工業(yè)界,IP又稱為SIP(SiliconIP)或虛擬單元VC(VirtualComponent)。第2章

SOPCBuilder開發(fā)工具

2.1簡(jiǎn)介2.2SOPCBuilder設(shè)計(jì)流程2.3SOPCBuilder用戶界面

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

SOC技術(shù)已經(jīng)成為半導(dǎo)體行業(yè)的技術(shù)主流,在SOPC出現(xiàn)之前,業(yè)界廣泛采用ASIC技術(shù)實(shí)現(xiàn)SOC。ASIC和FPGA不同的技術(shù)特征造就了他們應(yīng)用于不同的市場(chǎng)。ALTERA公司于2000年提出了SOPC概念,在可編程邏輯器件上實(shí)現(xiàn)SOC技術(shù),同時(shí)推出了相應(yīng)的開發(fā)軟件QuartusⅡ。SOPC結(jié)合了SOC和可編程邏輯器件各自的優(yōu)點(diǎn),一般具備以下基本特征:(1)至少包含一個(gè)嵌入式處理器內(nèi)核(2)具有小容量片內(nèi)高速RAM資源(3)豐富的IPCore資源可供選擇(4)足夠的片上可編程邏輯資源(5)處理器調(diào)試接口和FPGA編程接口(6)包含部分可編程模擬電路(7)單芯片、低功耗、小封裝

隨著EDA技術(shù)的發(fā)展和大規(guī)??删幊唐骷阅艿牟粩嗵岣?,SOPC技術(shù)已被廣泛應(yīng)用于許多領(lǐng)域。首先,SOPC在極大提高了許多電子系統(tǒng)性能價(jià)格比的同時(shí),還開辟了許多新的應(yīng)用領(lǐng)域,如高端的數(shù)字信號(hào)處理、通信系統(tǒng)、軟件無(wú)線電系統(tǒng)的設(shè)計(jì)、微處理器及大型計(jì)算機(jī)處理器的設(shè)計(jì)等等;同時(shí),由于SOPC具有基于EDA技術(shù)標(biāo)準(zhǔn)的設(shè)計(jì)語(yǔ)言與系統(tǒng)測(cè)試手段、規(guī)范的設(shè)計(jì)流程與多層次的仿真功能以及高效率的軟硬件開發(fā)與實(shí)現(xiàn)技術(shù),使得SOPC及其實(shí)現(xiàn)技術(shù)無(wú)可爭(zhēng)議地成為現(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)及硬件可升級(jí)等,它還具有設(shè)計(jì)者易學(xué)易用、高附加值、產(chǎn)品設(shè)計(jì)成本低等優(yōu)勢(shì)。

2.1.2SOPCBuilder簡(jiǎn)介

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

SOPC

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

SOPC

Builder提供了一個(gè)強(qiáng)大的平臺(tái),用于組建一個(gè)在模塊級(jí)和組件級(jí)定義的系統(tǒng)。SOPC

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

SOPCBuilder庫(kù)中已有的組件包括:(1)處理器:包括片內(nèi)處理器和片外處理器的接口。(2)?IP及外設(shè):包括通用的微控制器外設(shè),通信外設(shè),多種接口(存儲(chǔ)器接口、橋接口、ASSP、ASIC),數(shù)字信號(hào)處理(DSP)IP和硬件加速外設(shè)。2.1.3SOPCBuilder的功能特點(diǎn)1.具有直觀的圖形用戶界面(GUI) 利用圖形用戶界面,用戶可以快速方便地定義和連接復(fù)雜的系統(tǒng)。如圖2.1所示,用戶可從左邊的庫(kù)中添加所需的部件,然后在右邊的表中配置它們。2.開放性 SOPCBuilder開放了硬件和軟件接口,允許第三方像Altera一樣有效地管理SOPC部件,用戶可以根據(jù)需要將自己設(shè)計(jì)的部件添加到SOPCBuilder的列表中。圖2.1SOPCBuilder的圖形用戶界面3.自動(dòng)生成和集成軟件與硬件

SOPCBuilder會(huì)生成每個(gè)硬件部件以及連接部件的片內(nèi)總線結(jié)構(gòu),仲裁和中斷邏輯。它也會(huì)產(chǎn)生系統(tǒng)可仿真的RTL描述以及為特定硬件配置設(shè)計(jì)的測(cè)試平臺(tái),能夠把硬件系統(tǒng)綜合到單個(gè)網(wǎng)表中。

另外,SOPCBuilder還能夠生成C和匯編頭文件,這些頭文件定義了存儲(chǔ)器映射、中斷優(yōu)先級(jí)和每個(gè)外設(shè)寄存器空間的數(shù)據(jù)結(jié)構(gòu)。這樣的自動(dòng)生成過(guò)程可以幫助軟件設(shè)計(jì)者處理硬件潛在的變化性。如果硬件改變了,SOPCBuilder會(huì)自動(dòng)更新這些頭文件。SOPCBuilder也會(huì)為系統(tǒng)中現(xiàn)有的每個(gè)外設(shè)生成定制的C和匯編函數(shù)庫(kù)。例如,如果系統(tǒng)包括一個(gè)UART,SOPCBuilder就會(huì)訪問(wèn)UART的寄存器并定義一個(gè)C結(jié)構(gòu),生成通過(guò)UART發(fā)送和接收數(shù)據(jù)的C和匯編例程。2.2SOPCBuilder設(shè)計(jì)流程

如圖2.2所示,SOPCBuilder的設(shè)計(jì)流程包括兩個(gè)階段:配置(框圖左邊所示)和生成(框圖右邊所示)。它是利用ClassPTF和SystemPTF這兩個(gè)文件來(lái)配置和生成系統(tǒng)流程的。

SOPCBuilderGUI引導(dǎo)用戶完成兩部分的配置:部件配置和系統(tǒng)配置。部件配置需要匯總參數(shù),ClassPTF文件標(biāo)準(zhǔn)包括了為這一要求定義GUI的格式。當(dāng)需要時(shí),SOPCBuilder讀取該格式,產(chǎn)生相應(yīng)的部件向?qū)?ComponentWizard),收集所需的用戶數(shù)據(jù)。然后SOPCBuilder把收集的參數(shù)值存放在SystemPTF文件中。系統(tǒng)配置是指把用戶提供的有關(guān)處理器的配置、外設(shè)連接等數(shù)據(jù)寫入SystemPTF中。 當(dāng)這兩部分配置都完成后,SOPCBuilder進(jìn)入到生成階段,生成設(shè)計(jì)的輸出文件。SOPCBuilder查閱每個(gè)ClassPTF文件,允許相關(guān)的部件生成程序,它們會(huì)正確地輸出特定系統(tǒng)配置的硬件和/或軟件文件。 簡(jiǎn)單的部件生成程序可能每次都會(huì)輸出相同的文件,更多的可配置部件則會(huì)根據(jù)用戶輸入生成完全不同的結(jié)構(gòu)。例如,Nios處理器中包括的UART可以配置為軟件控制波特率,以更多門換取更大的靈活性。這種配置選項(xiàng)由用戶在部件配置階段進(jìn)行設(shè)置,根據(jù)這個(gè)設(shè)計(jì),UART生成程序產(chǎn)生所需UART的硬件描述。在生成階段的最后一步,SOPCBuilder創(chuàng)建適合于系統(tǒng)部件的總線結(jié)構(gòu),把所有的部件連接在一起。圖2.2系統(tǒng)生成流程2.3SOPCBuilder用戶界面 2.3.1系統(tǒng)元件頁(yè) 用戶在系統(tǒng)元件頁(yè)中定義所需的系統(tǒng)(如圖2.3所示)。在它的模塊池中包括了用戶可獲得的所有元件列表。在模塊表中列出的是用戶已經(jīng)添加到系統(tǒng)中的模塊。當(dāng)用戶用SOPCBuilder生成系統(tǒng)時(shí),它就生成了一個(gè)系統(tǒng)模塊,這個(gè)模塊包含了用戶所定義的所有元件和接口以及自動(dòng)生成的總線(互聯(lián))邏輯。圖2.3系統(tǒng)元件頁(yè)1.模塊池在模塊池中列出了根據(jù)總線類型和邏輯類別來(lái)分類的所有可用的庫(kù)元件。每個(gè)元件名前面都有一個(gè)帶顏色的圓點(diǎn),不同的顏色代表不同的含義。(1)綠圓點(diǎn):用戶可以添加到用戶系統(tǒng)中的元件是完全許可的。(2)黃圓點(diǎn):元件在系統(tǒng)設(shè)計(jì)中的應(yīng)用受到某種形式的限制,主要限制有使用時(shí)間有所限制和功能有所減少。(3)白圓點(diǎn):元件目前還沒(méi)有安裝到用戶的系統(tǒng)上,用戶可以從網(wǎng)上下載這些元件。用戶可以使用模塊池選擇器來(lái)列出可用的元件,安裝元件,從網(wǎng)上獲取元件以及通過(guò)網(wǎng)絡(luò)升級(jí)元件。如果用戶有Internet鏈接,就可以查看來(lái)自Altera和AMPPsm最新的可用元件。要查看新元件,可點(diǎn)擊Check按鈕,最新的可獲得的元件就會(huì)顯示在升級(jí)頁(yè)中;接著點(diǎn)擊元件名和Add就可以將元件下載到本地。用右鍵點(diǎn)擊元件就可以看到一個(gè)菜單,它包括了元件的詳細(xì)信息,并且可以鏈接到相關(guān)的文件并升級(jí)元件。如果右鍵點(diǎn)擊的已安裝的元件是可以獲得升級(jí)的,在彈出的菜單中就包含一個(gè)子菜單(以元件的版本號(hào)作標(biāo)題),點(diǎn)擊這個(gè)菜單就可以對(duì)元件進(jìn)行升級(jí)。2.模塊表模塊表中列出的是用戶添加到用戶所設(shè)計(jì)的系統(tǒng)中的模塊,包括橋、總線接口、CPU、存儲(chǔ)器接口、外圍設(shè)備等。此外,用戶可以用模塊表來(lái)描述以下一些項(xiàng)目:

連接的主、從性;·

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

系統(tǒng)中斷請(qǐng)求分配;控制共享從元件的優(yōu)先權(quán)。3.添加元件到模塊表在模塊池中點(diǎn)擊要添加的元件名,然后點(diǎn)擊Add,會(huì)出現(xiàn)以下兩種情況中的一種:(1)對(duì)于可用的、已安裝上的并有設(shè)置向?qū)У脑?,?huì)出現(xiàn)一個(gè)對(duì)話框,讓用戶設(shè)定各種選項(xiàng),設(shè)定完選項(xiàng)后再點(diǎn)擊Finish,就可將元件添加到模塊表中。如果元件沒(méi)有選項(xiàng)對(duì)話框,它會(huì)被自動(dòng)加到模塊表中。(2)對(duì)于可用的但沒(méi)有安裝的元件,也會(huì)出現(xiàn)一個(gè)對(duì)話框,通過(guò)該對(duì)話框可鏈接到網(wǎng)上下載元件或從廠商處獲取元件。安裝元件后,用戶就可以將它添加到用戶所設(shè)計(jì)的系統(tǒng)中了。如果點(diǎn)擊View菜單并選中ShowMasterConnections選項(xiàng),則在模塊表的左邊就會(huì)出現(xiàn)主、從元件的互聯(lián)示意圖。任何一個(gè)元件都可以有一個(gè)或多個(gè)主或從的接口。如果主元件和從元件使用同一個(gè)總線協(xié)議,則任何一個(gè)主元件都可以和任何一個(gè)從元件相連。如果使用的是不同的總線協(xié)議,則用戶可以通過(guò)使用一個(gè)橋元件來(lái)把主、從元件連接起來(lái),比如可使用AMBA-AHB-to-Avalon橋。當(dāng)兩個(gè)或多個(gè)主元件共享同一個(gè)從元件時(shí),SOPCBuilder會(huì)自動(dòng)插入一個(gè)判優(yōu)器來(lái)控制對(duì)從元件的訪問(wèn)。當(dāng)對(duì)一個(gè)從元件有多個(gè)請(qǐng)求同時(shí)發(fā)生時(shí),判優(yōu)器可以決定由哪個(gè)主元件來(lái)訪問(wèn)這個(gè)從元件。要查看仲裁優(yōu)先權(quán),可在View菜單里選中ShowArbitrationPriorities選項(xiàng)。4.附加設(shè)置系統(tǒng)元件頁(yè)還包括以下一些附加選項(xiàng):(1)器件系列(DeviceFamily):由用戶從器件列表中選擇用戶的目標(biāo)器件。這項(xiàng)設(shè)置非常重要,因?yàn)镾OPCBuilder是利用所選器件系列的結(jié)構(gòu)優(yōu)勢(shì)來(lái)產(chǎn)生系統(tǒng)的邏輯的。注意:Quartus?Ⅱ軟件不使用這個(gè)器件設(shè)置,用戶還必須在Quartus?Ⅱ軟件中確定器件。(2)系統(tǒng)時(shí)鐘頻率(SystemClockFrequency):外圍設(shè)備利用系統(tǒng)時(shí)鐘來(lái)產(chǎn)生時(shí)鐘分頻或波特率等。SOPCBuilder的built-intestbench發(fā)生器還利用這項(xiàng)設(shè)置來(lái)產(chǎn)生用戶所要求的頻率。2.3.2系統(tǒng)設(shè)置頁(yè)當(dāng)用戶向所設(shè)計(jì)的系統(tǒng)中添加元件時(shí),比如一個(gè)Nios嵌入式處理器,在SOPCBuilder中就會(huì)出現(xiàn)一個(gè)系統(tǒng)設(shè)置(More“CPU”Setting)的附加頁(yè)。這個(gè)附加頁(yè)可以讓用戶用來(lái)設(shè)置一些附加的參數(shù)或者與系統(tǒng)中其他元件的相連關(guān)系。比如,用戶可以定義CPU和存儲(chǔ)器元件之間的相連關(guān)系來(lái)指明哪一個(gè)是用來(lái)作程序存儲(chǔ)器的,哪一個(gè)是用來(lái)作數(shù)據(jù)存儲(chǔ)器的。對(duì)于用到系統(tǒng)設(shè)置頁(yè)的元件,SOPCBuilder會(huì)對(duì)用戶添加到用戶系統(tǒng)中的這個(gè)元件的每種情況都生成一個(gè)單獨(dú)的系統(tǒng)設(shè)置頁(yè)。2.3.3系統(tǒng)生成頁(yè)系統(tǒng)生成頁(yè)是用來(lái)生成用戶系統(tǒng)的。它包含一些選項(xiàng),用戶可以通過(guò)設(shè)置來(lái)控制生成過(guò)程,比如器件支持和仿真控制。在系統(tǒng)生成過(guò)程中,這一頁(yè)會(huì)報(bào)告系統(tǒng)生成過(guò)程中的各種消息。圖2.4所示即為系統(tǒng)生成頁(yè)。圖2.4系統(tǒng)生成頁(yè)1.SDK(SoftwareDevelopmentKid,軟件開發(fā)工具包) 用戶選擇了SDK選項(xiàng),SOPCBuilder會(huì)在用戶每一次生成系統(tǒng)的時(shí)候給用戶系統(tǒng)中的每個(gè)CPU都生成一個(gè)專用的SDK。其中包含了對(duì)每個(gè)系統(tǒng)元件的各種軟件文件(驅(qū)動(dòng)、庫(kù)和實(shí)用程序),這些文件在它們的庫(kù)定義中給系統(tǒng)元件提供了軟件支持。

注意:SDK只在Nios處理器系統(tǒng)中產(chǎn)生,若使用Nios?Ⅱ處理器,則在生成選項(xiàng)中沒(méi)有這一項(xiàng)。2.HDL當(dāng)用戶選擇了HDL選項(xiàng)時(shí),SOPCBuilder就會(huì)以VerilogHDL或VHDL語(yǔ)言的形式生成系統(tǒng)級(jí)的硬件描述語(yǔ)言(HDL)文件。使用VerilogHDL還是VHDL,由用戶在SOPCBuilder里建立系統(tǒng)時(shí)指定。3.仿真如果選擇了Simulation選項(xiàng),在系統(tǒng)生成過(guò)程中,SOPCBuilder會(huì)創(chuàng)建一個(gè)ModelSim的工程目錄。2.3.4生成系統(tǒng)建立系統(tǒng)并進(jìn)行生成選項(xiàng)設(shè)置后,用戶就可以點(diǎn)擊Generate按鈕來(lái)生成所設(shè)計(jì)的系統(tǒng)。這個(gè)按鈕可在任何一個(gè)SOPCBuilder的用戶界面中使用。點(diǎn)擊Generate按鈕后,SOPCBuilder會(huì)創(chuàng)建以下一些項(xiàng)目:

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

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

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

ModelSim文件;一個(gè)Tcl腳本文件,它建立了所有Quartus?Ⅱ編輯所需的文件。在生成進(jìn)行的過(guò)程中,SOPCBuilder會(huì)在系統(tǒng)生成過(guò)程信息欄中顯示一些消息。系統(tǒng)生成完成后,SOPCBuilder會(huì)顯示信息“GenerationComplete”,并在用戶所創(chuàng)建的項(xiàng)目的根目錄下生成一個(gè)日志(log)文件。第3章NiosⅡ嵌入式處理器設(shè)計(jì)

3.1NiosⅡ嵌入式處理器簡(jiǎn)介3.2NiosⅡ嵌入式處理器軟、硬件開發(fā)流程簡(jiǎn)介

3.3NiosⅡ嵌入式處理器系統(tǒng)的開發(fā)

3.1NiosⅡ嵌入式處理器簡(jiǎn)介3.1.1第一代Nios嵌入式處理器20世紀(jì)90年代末,可編程邏輯器件(PLD)的復(fù)雜度已經(jīng)能夠在單個(gè)可編程器件內(nèi)實(shí)現(xiàn)整個(gè)系統(tǒng),即在一個(gè)芯片中實(shí)現(xiàn)用戶定義的系統(tǒng),它通常包括片內(nèi)存儲(chǔ)器和外設(shè)的微處理器。2000年,Altera發(fā)布了Nios處理器,這是AlteraExcalibur嵌入式處理器計(jì)劃中的第一個(gè)產(chǎn)品,是第一款用于可編程邏輯器件的可配置的軟核處理器。

Altera公司的Nios是基于RISC技術(shù)的通用嵌入式處理器芯片軟內(nèi)核,它特別為可編程邏輯進(jìn)行了優(yōu)化設(shè)計(jì),也為可編程單芯片系統(tǒng)(SOPC)設(shè)計(jì)了一套綜合解決方案。第一代Nios嵌入式處理器性能高達(dá)50MIPs,采用16位指令集,16/32位數(shù)據(jù)通道,5級(jí)流水線技術(shù),可在一個(gè)時(shí)鐘周期內(nèi)完成一條指令的處理。它可以與各種各樣的外設(shè)、定制指令和硬件加速單元相結(jié)合,構(gòu)成一個(gè)定制的SOPC。在Nios之后,Altera公司于2003年3月又推出了Nios的升級(jí)版Nios3.0版,它有16位和32位兩個(gè)版本。兩個(gè)版本均使用16位的RISC指令集,其差別主要在于系統(tǒng)總線帶寬。它能在高性能的Stratix或低成本的Cyclone芯片上實(shí)現(xiàn)。

3.1.2第二代Nios嵌入式處理器2004年6月,Altera公司在繼全球范圍內(nèi)推出Cyclone?Ⅱ和Stratix?Ⅱ器件系列后又推出了支持這些新款FPGA系列的Nios?Ⅱ嵌入式處理器。Nios?Ⅱ嵌入式處理器和Cyclone?ⅡFPGA組合,在器件中只占用0.35美元的邏輯資源。Nios?Ⅱ嵌入式處理器在Cyclone?ⅡFPGA中也具有超過(guò)100DMIP的性能,允許設(shè)計(jì)者在很短的時(shí)間內(nèi)構(gòu)建一個(gè)完整的可編程芯片系統(tǒng),風(fēng)險(xiǎn)和成本比中小規(guī)模的ASIC小。它與2000年上市的原產(chǎn)品Nios相比,最大處理性能提高3倍,CPU內(nèi)核部分的面積最大可縮小1/2。Nios?Ⅱ系列嵌入式處理器使用32位的指令集結(jié)構(gòu)(ISA),完全與二進(jìn)制代碼兼容,它是建立在第一代16位Nios處理器的基礎(chǔ)上的,定位于廣泛的嵌入式應(yīng)用。Nios?Ⅱ處理器系列包括了三種內(nèi)核——快速的(Nios?Ⅱ/f)、經(jīng)濟(jì)的(Nios?Ⅱ/e)和標(biāo)準(zhǔn)的(Nios?Ⅱ/s)內(nèi)核,每種都針對(duì)不同的性能范圍和成本。使用Altera的Quartus?Ⅱ軟件、SOPCBuilder工具以及Nios?Ⅱ集成開發(fā)環(huán)境(IDE),用戶可以輕松地將Nios?Ⅱ處理器嵌入到他們的系統(tǒng)中。表3.1NiosⅡ嵌入式處理器的特性

表3.2NiosⅡ系列處理器成員表3.3Nios?Ⅱ嵌入式處理器支持的FPGA

一個(gè)典型的Nios?Ⅱ處理器系統(tǒng)如下圖所示。Nios?Ⅱ是一個(gè)可靈活配置的軟內(nèi)核處理器。3.1.3可配置的軟核嵌入式處理器的優(yōu)勢(shì)1.合理的性能組合使用AlteraNios?Ⅱ處理器和FPGA,用戶可以實(shí)現(xiàn)在處理器、外設(shè)、存儲(chǔ)器和I/O接口方面的合理組合。(1)三種處理器內(nèi)核。Nios?Ⅱ開發(fā)人員可以選擇一個(gè)或任意以下三種內(nèi)核的組合:快速的內(nèi)核(Nios?Ⅱ/f)具備高性能,經(jīng)濟(jì)的內(nèi)核(Nios?Ⅱ/e)具備低成本,標(biāo)準(zhǔn)的內(nèi)核(Nios?Ⅱ/s)用于性能和尺寸的平衡。(2)超過(guò)60種SOPCBuilder配備的內(nèi)核。用戶可以創(chuàng)建一組適合于自己應(yīng)用的外設(shè)、存儲(chǔ)器和I/O接口?,F(xiàn)成的嵌入式處理器可以快速嵌入Altera的FPGA中。(3)無(wú)限的DMA通道組合。直接存儲(chǔ)器存取(DMA)可以連接到任何外設(shè)從而提高系統(tǒng)的性能。

(4)可配置的硬件及軟件調(diào)試特性。軟件開發(fā)人員具有多個(gè)調(diào)試選擇,包括基本的JTAG的運(yùn)行控制(運(yùn)行、停止、單步、存儲(chǔ)器等)、硬件斷點(diǎn)、數(shù)據(jù)觸發(fā)、片內(nèi)和片外跟蹤、嵌入式邏輯分析儀。這些調(diào)試工具可以在開發(fā)階段使用,一旦調(diào)試通過(guò)后就可以去掉。2.提升系統(tǒng)的性能設(shè)計(jì)人員通常都會(huì)選擇一個(gè)比實(shí)際所需的性能要高的處理器(意味著更高的成本),從而為設(shè)計(jì)保留一個(gè)安全的性能上的余量。Nios?Ⅱ系統(tǒng)的性能是可以根據(jù)應(yīng)用來(lái)裁減的,與固定的處理器相比,在較低的時(shí)鐘速率下具備更高的性能。Nios?Ⅱ的以下特性可以提升系統(tǒng)的性能。3.降低系統(tǒng)成本嵌入式系統(tǒng)設(shè)計(jì)人員總是堅(jiān)持不懈地尋找降低系統(tǒng)成本的方法。然而,選擇一款處理器,在性能和特性上總是與成本存在著沖突,最終結(jié)果總是以增加系統(tǒng)成本為代價(jià)的。4.應(yīng)付產(chǎn)品的生命周期開發(fā)人員希望快速將他們的產(chǎn)品推向市場(chǎng),并保持一個(gè)較長(zhǎng)的產(chǎn)品生命周期。3.2NiosⅡ嵌入式處理器軟、硬件開發(fā)流程簡(jiǎn)介

Nios?Ⅱ和Nios的開發(fā)流程是一樣的,只是在軟件開發(fā)上

溫馨提示

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

評(píng)論

0/150

提交評(píng)論