Nios嵌入式處理器,于2001年首次推出,創(chuàng)新的Nios? 嵌入式處理器成為業(yè)界第一款專門針對(duì)FPGA的商用處理器。自此以后,眾多的FPGA用戶采用了Altera提供的Nios和Nios II處理器。

中文名

NIOS嵌入式處理器

性質(zhì)

針對(duì)FPGA的商用處理器

時(shí)間

2001年

提供商

Altera

基本信息

Altera建議新設(shè)計(jì)采用Nios II處理器。

在二○世紀(jì)九十年度末,可編程邏輯器件(PLD)的復(fù)雜度已經(jīng)能夠在單個(gè)可編程器件內(nèi)實(shí)現(xiàn)整個(gè)系統(tǒng)。完整的單芯片系統(tǒng)(SOC)概念是指在一個(gè)芯片中實(shí)現(xiàn)用戶定義的系統(tǒng),它通常暗指包括片內(nèi)存儲(chǔ)器和外設(shè)的微處理器。最初宣稱真正的SOC――或可編程單芯片系統(tǒng)(SOPC)――能夠提供基于PLD的處理器。在2000年,Altera發(fā)布了Nios處理器,這是Altera Excalibur嵌入處理器計(jì)劃中第一個(gè)產(chǎn)品,它成為業(yè)界第一款為可編程邏輯優(yōu)化的可配置處理器。本文闡述開發(fā)Nios處理器設(shè)計(jì)環(huán)境的過程和涉及的決策,以及它如何演化為一種SOPC工具。

Altera很清楚地意識(shí)到,如果我們把可編程邏輯的固有的優(yōu)勢(shì)集成到嵌入處理器的開發(fā)流程中,我們就會(huì)擁有非常成功的產(chǎn)品。基于PLD的處理器恰恰具有應(yīng)用所需的特性。一旦定義了處理器之后,設(shè)計(jì)者就“具備”了體系結(jié)構(gòu),可放心使用。因?yàn)镻LD和嵌入處理器隨即就生效了,可以馬上開始設(shè)計(jì)軟件原型。CPU周邊的專用硬件邏輯可以慢慢地集成進(jìn)去,在每個(gè)階段軟件都能夠進(jìn)行測(cè)試,解決遇到的問題。另外,軟件組可以對(duì)結(jié)構(gòu)方面提出一些建議,改善代碼效率和/或處理器性能,這些軟件/硬件權(quán)衡可以在硬件設(shè)計(jì)過程中間完成。

Nios II系列軟核處理器是Altera的第二代FPGA嵌入式處理器,其性能超過200DMIPS,在Altera FPGA中實(shí)現(xiàn)僅需35美分。Altera的Stratix 、Stratix GX、 Stratix II和 Cyclone系列FPGA全面支持Nios II處理器,以后推出的FPGA器件也將支持Nios II。

自Altera于2000年推出第一代16位Nios處理器以來,已經(jīng)交付了13000多套Nios開發(fā)套件,Nios成為最流行的軟核處理器。剛推出的Nios II系列采用全新的架構(gòu),比第一代Nios具有更高水平的效率和性能。和第一代相比,Nios II核平均占用不到50%的FPGA資源,而計(jì)算性能增長(zhǎng)了1倍。

Nios II系列包括3種產(chǎn)品,分別是:Nios II/f(快速)——最高的系統(tǒng)性能,中等FPGA使用量;Nios II/s(標(biāo)準(zhǔn))——高性能,低FPGA使用量;Nios II/e(經(jīng)濟(jì))——低性能,最低的FPGA使用量。這3種產(chǎn)品具有32位處理器的基本結(jié)構(gòu)單元——32位指令大小,32位數(shù)據(jù)和地址路徑,32位通用寄存器和32個(gè)外部中斷源;使用同樣的指令集架構(gòu)(ISA),100%二進(jìn)制代碼兼容,設(shè)計(jì)者可以根據(jù)系統(tǒng)需求的變化更改CPU,選擇滿足性能和成本的最佳方案,而不會(huì)影響已有的軟件投入。

特別是,Nios II系列支持使用專用指令。專用指令是用戶增加的硬件模塊,它增加了算術(shù)邏輯單元(ALU)。用戶能為系統(tǒng)中使用的每個(gè)Nios II處理器創(chuàng)建多達(dá)256個(gè)專用指令,這使得設(shè)計(jì)者能夠細(xì)致地調(diào)整系統(tǒng)硬件以滿足性能目標(biāo)。專用指令邏輯和本身Nios II指令相同,能夠從多達(dá)兩個(gè)源寄存器取值,可選擇將結(jié)果寫回目標(biāo)寄存器。同時(shí),Nios II系列支持60多個(gè)外設(shè)選項(xiàng),開發(fā)者能夠選擇合適的外設(shè),獲得最合適的處理器、外設(shè)和接口組合,而不必支付根本不使用的硅片功能。

Nios II系列能夠滿足任何應(yīng)用32位嵌入式微處理器的需要,客戶可以將第一代Nios處理器設(shè)計(jì)移植到某種Nios II處理器上,Altera將長(zhǎng)期支持現(xiàn)有FPGA系列上的第一代Nios處理器。另外,Altera提供了一鍵式移植選項(xiàng),可以升級(jí)至Nios II系列。Nios II處理器也能夠在HardCopy器件中實(shí)現(xiàn),Altera還為基于Nios II處理器的系統(tǒng)提供ASIC的移植方式。

Nios II處理器具有完善的軟件開發(fā)套件,包括編譯器、集成開發(fā)環(huán)境(IDE)、JTAG調(diào)試器、實(shí)時(shí)操作系統(tǒng)(RTOS)和TCP/IP協(xié)議棧。設(shè)計(jì)者能夠用Altera Quartus II開發(fā)軟件中的SOPC Builder系統(tǒng)開發(fā)工具很容易地創(chuàng)建專用的處理器系統(tǒng),并能夠根據(jù)系統(tǒng)的需求添加Nios II處理器核的數(shù)量。

使用Nios II軟件開發(fā)工具能夠?yàn)镹ios II系統(tǒng)構(gòu)建軟件,即一鍵式自動(dòng)生成適用于系統(tǒng)硬件的專用C/C++運(yùn)行環(huán)境。Nios II集成開發(fā)環(huán)境(IDE)提供了許多軟件模板,簡(jiǎn)化了項(xiàng)目設(shè)置。此外,Nios II開發(fā)套件包括兩個(gè)第三方實(shí)時(shí)操作系統(tǒng)(RTOS)——MicroC/OS-II(Micrium),Nucleus Plus(ATI/Mentor)以及供網(wǎng)絡(luò)應(yīng)用使用的TCP/IP協(xié)議棧。

長(zhǎng)期以來,Altera一直推行嵌入式處理器戰(zhàn)略的原因是,隨著應(yīng)用的ASIC開發(fā)日益受到成本的困擾,OEM日漸轉(zhuǎn)向FPGA來構(gòu)建自己的系統(tǒng)。這些系統(tǒng)中絕大多數(shù)需要一個(gè)處理器,而Altera正是為設(shè)計(jì)者提供了為FPGA優(yōu)化的靈活的嵌入式處理器方案,可以滿足16位和32位嵌入式處理器市場(chǎng)的需求。估計(jì)到2007年,該市場(chǎng)價(jià)值將到達(dá)110億美元。

在FPGA中使用軟核處理器比硬核的優(yōu)勢(shì)在于,硬核實(shí)現(xiàn)沒有靈活性,通常無法使用最新的技術(shù)。隨著系統(tǒng)日益先進(jìn),基于標(biāo)準(zhǔn)處理器的方案會(huì)被淘汰,而基于Nios II處理器的方案是基于HDL源碼構(gòu)建的,能夠修改以滿足新的系統(tǒng)需求,避免了被淘汰的命運(yùn)。將處理器實(shí)現(xiàn)為HDL的IP核,開發(fā)者能夠完全定制CPU和外設(shè),獲得恰好滿足需求的處理器。

Nios II嵌入式處理器特性

嵌入式處理器Nios?II系列為Altera? FPGA和可編程片上系統(tǒng)(SOPC)的集成應(yīng)用專門做了優(yōu)化。表1詳細(xì)描述了Nios II軟核嵌入式處理器系列的特性,更多通用信息請(qǐng)參閱Nios II簡(jiǎn)介頁面。

表1. Nios II嵌入處理器系列特性

特性說明

設(shè)計(jì)流程及工具

硬件開發(fā)工具 本頁面詳列了搭建Nios II處理器硬件系統(tǒng)所用到的開發(fā)工具。

軟件開發(fā)工具 本頁面提供了Nios II集成開發(fā)環(huán)境(IDE)的相關(guān)信息,這是一種開發(fā)人員廣泛應(yīng)用的,包含編輯、編譯和調(diào)試應(yīng)用軟件等功能的集成開發(fā)環(huán)境。

開發(fā)套件 Altera及其合作伙伴提供了大量應(yīng)用了NiosII系列嵌入式處理器的開發(fā)板套件。

系統(tǒng)級(jí)設(shè)計(jì)流程 Altera的SOPC Builder工具提供了快速搭建SOPC系統(tǒng)的能力,這種架構(gòu)可以是包含一個(gè)或幾個(gè)CPU,提供存儲(chǔ)器接口,外圍設(shè)備和系統(tǒng)互連邏輯的復(fù)雜系統(tǒng)。

構(gòu)架及特性

Nios II處理器核 Nios II處理器系列由三個(gè)不同的內(nèi)核組成,可以靈活地控制成本和性能,從而擁有廣泛的應(yīng)用空間。

JTAG調(diào)試模塊 JTAG調(diào)試模塊提供了通過遠(yuǎn)端PC主機(jī)實(shí)現(xiàn)Nios II處理器的在芯片控制、調(diào)試和通訊功能,這是Nios II處理器的一個(gè)極具競(jìng)爭(zhēng)力的特性。

用戶指令 開發(fā)人員可以在Nios II CPU 核內(nèi)增加硬件,用以執(zhí)行復(fù)雜運(yùn)算任務(wù),為時(shí)序要求緊張的軟件提供加速算法。

外圍設(shè)備及接口 Nios II開發(fā)套件包括一套標(biāo)準(zhǔn)外圍設(shè)備庫(kù),在Altera的FPGA中可以免費(fèi)使用。

Avalon?交換式總線 Avalon交換式總線在處理器、外圍設(shè)備和接口電路之間實(shí)現(xiàn)網(wǎng)絡(luò)連接,并提供高帶寬數(shù)據(jù)路徑、多路和實(shí)時(shí)處理能力。Avalon交換式總線可以通過調(diào)用SOPC Builder設(shè)計(jì)軟件自動(dòng)生成。

設(shè)計(jì)資源

Nios II處理器支持 Nios II處理器支持頁面提供了對(duì)Nios II 設(shè)計(jì)者有幫助的多種信息,其中包括使用許可、下載、參考設(shè)計(jì)、文檔資料、在線展示及常見問題。

嵌入式處理器方案中心 嵌入式處理器方案中心提供了大量的信息以幫助開發(fā)人員應(yīng)用Altera的嵌入式處理器實(shí)現(xiàn)系統(tǒng)設(shè)計(jì)??色@取的信息有器件支持、軟件開發(fā)工具,外圍設(shè)備及接口、培訓(xùn)、技術(shù)支持和資料。

Nios續(xù)訂信息 Nios II開發(fā)套件包括一年期的CPU、外設(shè)和嵌入式軟件開發(fā)工具的升級(jí)許可。(其中不包括Quartus? II軟件的升級(jí)。)客戶可以通過Nios續(xù)訂程序每年訂購(gòu)包括Nios II 處理器的升級(jí)等額外信息。

Nios II嵌入式處理器問與答頁面 此頁提供Altera Nios II系列嵌入式處理器的常見問題及解答。

Stratix? II器件及Nios II處理器系列 Stratix II器件結(jié)構(gòu)的優(yōu)異特性和Nios II嵌入式處理器系列相結(jié)合,提供了無與倫比的處理能力,滿足網(wǎng)絡(luò)、通信、數(shù)據(jù)信號(hào)處理(DSP)應(yīng)用、海量存儲(chǔ)及其他高帶寬系統(tǒng)的應(yīng)用需求。

Stratix器件及Nios II處理器系列 Stratix FPGA結(jié)構(gòu)的優(yōu)異特性和Nios II嵌入式處理器相結(jié)合,提供了很高的處理能力,滿足高帶寬系統(tǒng)應(yīng)用需求。

Cyclone?器件及Nios II處理器系列 在Cyclone器件中應(yīng)用Nios II嵌入式處理器系列,降低了成本,提高了靈活性,在價(jià)格敏感應(yīng)用環(huán)境中給低成本分立式微處理器提供了一個(gè)理想的替代品。

在HardCopy II結(jié)構(gòu)化ASIC中實(shí)現(xiàn)Nios II處理器

Nios? II系列嵌入式處理器具有三個(gè)處理器內(nèi)核,可實(shí)現(xiàn)較大范圍的嵌入式處理應(yīng)用。這些軟IP處理器內(nèi)核可以工作在任何最新一代Altera? FPGA以及HardCopy?系列結(jié)構(gòu)化ASIC上。設(shè)計(jì)人員可以選擇使用高性能內(nèi)核、低成本內(nèi)核或者性價(jià)比合適的內(nèi)核。Nios II系列處理器可實(shí)現(xiàn)如下任務(wù):

做為系統(tǒng)處理器運(yùn)行實(shí)時(shí)操作系統(tǒng)

實(shí)現(xiàn)復(fù)雜的狀態(tài)機(jī)

分擔(dān)現(xiàn)有處理器載荷

執(zhí)行I/O和數(shù)據(jù)處理任務(wù)

加速數(shù)字信號(hào)處理(DSP)算法

在HardCopy II結(jié)構(gòu)化ASIC中運(yùn)行時(shí),Nios II嵌入式處理器出眾的處理能力滿足了高性能片上系統(tǒng)(SOC)的要求。Nios II嵌入式處理器能夠提供系統(tǒng)級(jí)處理器性能,實(shí)現(xiàn)處理器和系統(tǒng)功能以及邏輯在單個(gè)器件中的集成。HardCopy II結(jié)構(gòu)化ASIC和Nios II嵌入式處理器結(jié)合使用能夠滿足計(jì)算、大容量存儲(chǔ)、電信和網(wǎng)絡(luò)應(yīng)用的要求。

圖1是單個(gè)HardCopy II結(jié)構(gòu)化ASIC中多個(gè)Nios II處理器在數(shù)據(jù)處理和控制應(yīng)用上的實(shí)例。

圖1. HardCopy II器件中Nios II處理器進(jìn)行數(shù)據(jù)處理

HardCopy器件設(shè)計(jì)流程使設(shè)計(jì)人員可以在一個(gè)FPGA中測(cè)試、驗(yàn)證其設(shè)計(jì)。然后將經(jīng)過驗(yàn)證的設(shè)計(jì)遞交給HardCopy設(shè)計(jì)中心,以沒有風(fēng)險(xiǎn)的無縫移植方式在結(jié)構(gòu)化ASIC中實(shí)現(xiàn)。HardCopy結(jié)構(gòu)化ASIC是唯一能夠?qū)崿F(xiàn)在正式投產(chǎn)前,硬件功能在FPGA中驗(yàn)證以及系統(tǒng)軟件在真實(shí)系統(tǒng)配置環(huán)境中進(jìn)行設(shè)計(jì)、測(cè)試的器件。

由于設(shè)計(jì)在移交給Altera之前在FPGA中進(jìn)行了測(cè)試,因此Altera從第一個(gè)原型開始就可以保證實(shí)現(xiàn)芯片的全部功能。

HardCopy II結(jié)構(gòu)化ASIC體系結(jié)構(gòu)

HardCopy II結(jié)構(gòu)化ASIC基于Stratix II系列FPGA,在HardCopy II器件和Stratix II FPGA之間有多個(gè)原型選擇。這取決于所需的HardCopy器件、I/O引腳和封裝要求。HardCopy II器件具有高達(dá)350-MHz的性能,以Nios II處理器內(nèi)核實(shí)現(xiàn)迄今為止最高的性能表現(xiàn),而只消耗原型Stratix II器件的一半功率。

Stratix II器件結(jié)構(gòu)中的嵌入式DSP模塊也可以應(yīng)用在HardCopy II器件中。這些DSP模塊是對(duì)Nios II用戶指令集和其他硬件加速單元的完美補(bǔ)充。DSP設(shè)計(jì)人員可以在高性能硬件DSP模塊中生成DSP算法和復(fù)雜的數(shù)學(xué)程序,做為常用軟件程序來訪問或者做為Nios II CPU的用戶指令來運(yùn)行。設(shè)計(jì)人員可以方便靈活的實(shí)現(xiàn)高級(jí)軟件設(shè)計(jì),支持結(jié)構(gòu)化ASIC中的并行硬件操作性能,而不需要進(jìn)行額外的時(shí)鐘加速。

HardCopy II器件的存儲(chǔ)器可滿足典型SOC的所有存儲(chǔ)要求。每個(gè)最大9 M-RAM模塊可提供64-K字節(jié)段。最大的HardCopy II器件含有576 K字節(jié)源碼和數(shù)據(jù)存儲(chǔ)。HardCopy II結(jié)構(gòu)化ASIC還支持高速存儲(chǔ)器接口,可使用最新的DDR2 SDRAM進(jìn)行外部源碼和數(shù)據(jù)存儲(chǔ)。

低成本許可方式

Nios II系列嵌入式處理器以一次付清的方式進(jìn)行許可,不需要對(duì)每個(gè)器件或每個(gè)工程支付額外的版稅。Nios II許可允許在任何Altera器件中使用處理器內(nèi)核,因此采用Nios II處理器和HardCopy II器件可為批量產(chǎn)品提供最具成本效益的解決方案。

Nios II許可通常做為Nios II開發(fā)包的一部分進(jìn)行購(gòu)買?,F(xiàn)在可應(yīng)用于Stratix?、Stratix II 和 Cyclone? 器件系列,開發(fā)包含有Quartus? II FPGA設(shè)計(jì)軟件和Nios II集成開發(fā)環(huán)境以及Nios II全部許可。所有的開發(fā)包都包括一塊開發(fā)板及所需的電纜、電源,用戶在打開包裝后的幾分鐘內(nèi)就可以使用Nios II處理器進(jìn)行開發(fā)設(shè)計(jì)。

全面的SOPC解決方案

Altera的SOPC Builder自動(dòng)系統(tǒng)開發(fā)工具為設(shè)計(jì)人員提供了強(qiáng)大的開發(fā)平臺(tái),可構(gòu)成包括處理器、外設(shè)和存儲(chǔ)器接口等常用系統(tǒng)組成的總線系統(tǒng)。

HardCopy II設(shè)計(jì)流程得益于采用了在FPGA原型階段,F(xiàn)PGA設(shè)計(jì)文件生成時(shí)的SOPC Builder模塊設(shè)計(jì)方法?;谀K的設(shè)計(jì)方法有助于Nios II處理器和其他IP模塊同用戶邏輯、用戶指令和硬件加速器等典型高密度邏輯設(shè)計(jì)組成的集成。

Nios II外設(shè)和接口庫(kù)頁面上有適用于Nios II處理器的外設(shè)的更多詳細(xì)信息