Nios II - Nios II

Nios II
Návrhář Altera
Bity 32-bit
Design RISC
Endianness Malý Endian
Otevřeno Ne
Registry
Obecný účel 32

Nios II je 32bitová architektura vestavěného procesoru navržená speciálně pro rodinu integrovaných obvodů programovatelného hradlového pole (FPGA) Altera . Nios II obsahuje mnoho vylepšení oproti původní architektuře Nios, takže je vhodnější pro širší škálu integrovaných počítačových aplikací, od zpracování digitálního signálu (DSP) až po ovládání systému.

Nios II je nástupcem prvního konfigurovatelného 16bitového integrovaného procesoru Nios společnosti Altera .

Klíčové vlastnosti

Stejně jako původní Nios je i architektura Nios II architekturou soft-core RISC, která je plně implementována v programovatelných logických a paměťových blocích FPGA od Altera. Na rozdíl od svého předchůdce se jedná o plně 32bitový design:

  • 32 univerzálních 32bitových registrů,
  • Plná 32bitová instrukční sada, datová cesta a adresový prostor,
  • Single-instrukce 32 × 32 násobí a dělí a vytváří 32bitový výsledek.

Soft-core povaha procesoru Nios II umožňuje návrháři systému specifikovat a generovat vlastní jádro Nios II přizpůsobené jeho konkrétním aplikačním požadavkům. Návrháři systému mohou rozšířit základní funkce systému Nios II přidáním předdefinované jednotky správy paměti nebo definováním vlastních pokynů a vlastních periferií.

Vlastní pokyny

Podobně jako u nativních instrukcí Nios II, uživatelem definované instrukce přijímat hodnoty až ze dvou 32- bit zdrojových registrů a případně odepsat výsledek pro 32bitové cílového registru. Pomocí vlastních instrukcí, systém návrháři mohou doladit systém hardware k dosažení cílů výkonnosti setkat a také designer lze snadno zpracovat instrukci jako makro v C .

Vlastní periferie

U systémů s kritickým výkonem, které tráví většinu cyklů CPU prováděním konkrétní části kódu, může uživatelsky definované periferní zařízení potenciálně snížit část nebo celé provedení softwarového algoritmu na uživatelsky definovanou hardwarovou logiku , čímž se zlepší energetická účinnost nebo propustnost aplikace. .

Jednotka pro správu paměti

Představený s Quartus 8.0, volitelná MMU umožňuje Nios II provozovat operační systémy, které vyžadují stránkování a ochranu založenou na hardwaru, jako je linuxové jádro. Bez MMU je Nios omezen na operační systémy, které používají zjednodušenou ochranu a model virtuální paměti: např. ΜClinux a FreeRTOS .

Jednotka ochrany paměti

Představený s Quartus 8.0, volitelná MPU poskytuje ochranu paměti podobnou ochraně poskytované MMU, ale s jednodušším programovacím modelem a bez režie výkonu spojené s MMU.

Rodina procesorů Nios II

Nios II classic je nabízen ve 3 různých konfiguracích: Nios II / f (rychlý), Nios II / s (standardní) a Nios II / e (ekonomický). Nios II gen2 je nabízen ve 2 různých konfiguracích: Nios II / f (rychlý) a Nios II / e (ekonomický).

Nios II / f

Jádro Nios II / f je navrženo pro maximální výkon na úkor velikosti jádra. Mezi funkce systému Nios II / f patří:

  • Samostatné instrukční a datové mezipaměti (512  B až 64  KB )
  • Volitelné MMU nebo MPU
  • Přístup až k 2  GB externího adresního prostoru
  • Volitelná pevně spojená paměť pro pokyny a data
  • Šestistupňový plynovod k dosažení maxima DMIPS / MHz
  • Jednocyklové hardwarové násobení a posunutí hlavně
  • Volitelná možnost rozdělení hardwaru
  • Dynamická predikce větví
  • Až 256 vlastních pokynů a neomezené hardwarové akcelerátory
  • Ladicí modul JTAG
  • Volitelná vylepšení ladicího modulu JTAG, včetně zarážek hardwaru, spouštěčů dat a trasování v reálném čase

Nios II / s

Jádro Nios II / s je navrženo tak, aby udržovalo rovnováhu mezi výkonem a náklady. Mezi funkce systému Nios II / s patří:

  • Cache instrukcí
  • Až 2 GB externího adresního prostoru
  • Volitelná pevně spojená paměť pro pokyny
  • Pětistupňový plynovod
  • Statická predikce větve
  • Možnosti násobení, dělení a posunu hardwaru
  • Až 256 vlastních pokynů
  • Ladicí modul JTAG
  • Volitelná vylepšení ladicího modulu JTAG, včetně zarážek hardwaru, spouštěčů dat a trasování v reálném čase

Nios II / e

Jádro Nios II / e je navrženo pro nejmenší možné logické využití FPGA. To je zvláště efektivní u nízkonákladových aplikací FPGA Cyclone II. Mezi funkce systému Nios II / e patří:

  • Až 2 GB externího adresního prostoru
  • Ladicí modul JTAG
  • Kompletní systémy za méně než 700  LE
  • Volitelná vylepšení ladění
  • Až 256 vlastních pokynů
  • Zdarma, není vyžadována žádná licence

Rozhraní Avalon switch fabric

Nios II používá Avalon Přepínací jako rozhraní k jeho vestavěných periferií. Ve srovnání s tradiční sběrnicí v systému založeném na procesoru, který umožňuje přístup ke sběrnici současně pouze jedné hlavní sběrnici, umožňuje přepínací struktura Avalon pomocí arbitračního schématu na straně otroka pracovat více masterů současně.

Vývojové procesy

Vývoj pro Nios II se skládá ze dvou samostatných kroků: generování hardwaru a tvorba softwaru.

Vývoj je hostován v aplikaci Altera zvané Embedded Design Suite (EDS). EDS obsahuje kompletní integrované vývojové prostředí pro správu hardwaru i softwaru ve dvou samostatných krocích:

Proces generování hardwaru

Návrháři hardwaru Nios II používají ke konfiguraci a generování systému Nios nástroj pro integraci systému Qsys, součást balíčku Quartus-II. Konfigurační grafické uživatelské rozhraní (GUI) umožňuje uživatelům vybrat si sadu funkcí systému Nios-II a přidat do integrovaného systému periferní a I / O bloky (časovače, řadiče paměti, sériové rozhraní atd.). Po dokončení hardwarové specifikace provede Quartus-II syntézu, umístění a směr implementace celého systému na vybraný cíl FPGA.
Qsys nahrazuje starší SOPC (System-on-a-Programmable-Chip) Builder, který by mohl být také použit k vytvoření systému Nios II, a je doporučován pro nové projekty.

Proces vytváření softwaru

Vývoj softwaru řídí samostatný balíček s názvem Embedded Design Suite (EDS). Na základě Eclipse IDE obsahuje EDS kompilátor C / C ++ (založený na nástrojové řadě GNU ), debugger a simulátor sady instrukcí. EDS umožňuje programátorům testovat jejich aplikace v simulaci nebo stahovat a spouštět jejich kompilované aplikace na skutečném hostiteli FPGA.

Protože vývojový řetězec C / C ++ je založen na GCC, drtivá většina softwaru s otevřeným zdrojovým kódem pro Linux se kompiluje a běží s minimálními nebo žádnými úpravami. Do systému Nios II byly také přeneseny operační systémy třetích stran. Patří mezi ně Micrium MicroC / OS-II , eCos , Segger Microcontroller embOS, ChibiOS / RT , μCLinux a FreeRTOS .

Licencování

Nios II je srovnatelný s MicroBlaze , konkurenčním softcore CPU pro rodinu FPGA Xilinx . Na rozdíl od MicroBlaze je Nios II licencovatelný pro ASIC se standardními buňkami prostřednictvím poskytovatele IP třetích stran, Synopsys Designware. Prostřednictvím licence Designware mohou návrháři přenášet návrhy založené na systému Nios z platformy FPGA na zařízení ASIC pro masovou výrobu.

Viz také

Reference

externí odkazy