AVR32 - AVR32

AVR32
ATMEL AVR32.jpg
Návrhář Atmel
Bity 32bitové
Verze Rev.2
Design RISC
Kódování Variabilní
Endianness Velký
Rozšíření Virtuální stroj Java
Registry
15

AVR32 je 32bitový RISC mikrokontrolér architektura vyrábí Atmel . Architekturu mikrokontroléru navrhla hrstka lidí vzdělaných na Norské univerzitě vědy a technologie , včetně vedoucího designéra Øyvinda Strøma a architekta CPU Erika Renna v norském designovém centru Atmel.

Většina instrukcí se provádí v jednom cyklu. Jednotka násobení a akumulace může provádět 32bitovou × 16bitovou + 48bitovou aritmetickou operaci ve dvou cyklech (latence výsledků), vydaných jednou za cyklus.

Nepodobá se 8bitové rodině mikrokontrolérů AVR , přestože byly oba navrženy v Atmel Norway, v Trondheimu . Některé nástroje pro ladění jsou podobné.

Podpora pro AVR32 byla zrušena z Linuxu od jádra 4.12; Atmel přešel většinou na M varianty architektury ARM .

Architektura

AVR32 má alespoň dvě mikroarchitektury, AVR32A a AVR32B. Ty se liší architekturou sady instrukcí, konfigurací registrů a použitím mezipaměti pro instrukce a data.

Tyto AVR32A jádra CPU jsou cenově výhodné aplikace. Neposkytují vyhrazené hardwarové registry pro stínování souboru registru, stavu a zpáteční adresy v přerušeních. To šetří oblast čipu na úkor pomalejšího zpracování přerušení.

Tyto AVR32B jádra CPU jsou určeny pro rychlé přerušení. Mají vyhrazené registry pro uchování těchto hodnot pro přerušení, výjimky a volání supervizora. Jádra AVR32B také hardwarově podporují virtuální stroj Java .

Instrukční sada AVR32 má 16bitové (kompaktní) a 32bitové (rozšířené) instrukce, podobné např. Některým ARM, s několika specializovanými instrukcemi, které nebyly nalezeny ve starších ARMv5 nebo ARMv6 nebo MIPS32 . Na AVR32 ISA a návrhovou platformu je podáno několik amerických patentů.

Stejně jako 8bitová architektura mikrokontroléru AVR byl AVR32 navržen pro vysokou hustotu kódu (balení mnoha funkcí v několika instrukcích) a rychlé instrukce s několika hodinovými cykly. Atmel použil nezávislé benchmarkové konsorcium EEMBC ke srovnávání architektury s různými kompilátory a trvale překonal jak 16bitový ( Thumb ) kód ARMv5, tak 32bitový ( ARM ) kód ARMv5 až o 50% na velikosti kódu a 3 × na výkonu .

Atmel říká, že „picoPower“ AVR32 AT32UC3L spotřebuje v aktivním režimu méně než 0,48 mW/MHz, což v té době tvrdilo, že spotřebovává méně energie než jakýkoli jiný 32bitový procesor. V březnu 2015, tvrdí své nové Cortex-M0 + založené mikroprocesory, s použitím ARM Holdings ' ARM architekturu , nikoli jejich vlastní instrukční sadu , ‚porušil všechny ultra-low výkonu výkon překážky k dnešnímu dni.‘

Implementace

Architektura AVR32 byla použita pouze ve vlastních produktech společnosti Atmel. V roce 2006, Atmel zahájila AVR32A: The AVR32 AP7 jádro, 7-stupňová pipeline , mezipaměti na bázi konstrukce platformy. Tento „AP7000“ implementuje architekturu AVR32B a kromě hardwarové akcelerace Java podporuje instrukce SIMD (single data multiple data) DSP ( digital signal processing ) k sadě instrukcí RISC . Obsahuje jednotku pro správu paměti (MMU) a podporuje operační systémy jako Linux . Na začátku roku 2009 se říkalo, že následný procesor AP7200 je zadržován, přičemž zdroje jdou do jiných čipů.

V roce 2007 Atmel uvedl na trh druhé AVR32: jádro AVR32 UC3. Toto je určeno pro mikrokontroléry využívající paměť flash na čipu pro ukládání programů a běžící bez MMU (jednotka pro správu paměti). Jádro AVR32 UC3 využívá třístupňovou propojenou harvardskou architekturu speciálně navrženou pro optimalizaci načítání instrukcí z flash paměti na čipu . Jádro AVR32 UC3 implementuje architekturu AVR32A. Sdílí stejnou architekturu instrukční sady (ISA) jako její sourozenec AP7, ale liší se tím, že nezahrnuje volitelné instrukce SIMD nebo podporu Java. S AVR32B sdílí více než 220 instrukcí. ISA nabízí manipulaci s atomovými bity pro ovládání periferních zařízení na čipu a obecné I/O a aritmetiku DSP s pevným bodem .

Obě implementace lze kombinovat s kompatibilní sadou periferních řadičů a sběrnic, které byly poprvé k vidění na platformách AT91SAM ARM. Některá periferní zařízení poprvé spatřená v AP7000, například vysokorychlostní USB periferní řadič a samostatný řadič DMA, se objevila později v aktualizovaných platformách ARM9 a poté v produktech založených na ARM Cortex-M3.

Obě jádra AVR32 zahrnují sestavení rámce On-Chip Debug založené na JTAG na třídě Nexus 2+ .

Jádro UC3, oznámené na Electronica 2010 v Mnichově v Německu 10. listopadu 2010, je prvním 32bitovým mikrokontrolérem AVR s volitelnou jednotkou s plovoucí desetinnou čárkou .

Zařízení

Jádro AP7

Dne 10. dubna 2012 společnost Atmel oznámila konec životnosti zařízení AP7 Core od 4. dubna 2013.

UC3 jádro

Pokud název zařízení končí na *AU, jedná se o audio verzi, umožňují spuštění IP adres firmwaru s licencí Atmel s licencí.

Pokud název zařízení končí na *S, obsahuje krypto modul AES.

Řada A0/A1- zařízení dodávají 91 Dhrystone MIPS (DMIPS) při 66 MHz (1 čekací stav blesku) a spotřebovávají 40 mA při 66 MHz při 3,3 V.
Řada A3/A4 - zařízení dodávají 91 Dhrystone MIPS (DMIPS) při 66 MHz a spotřebovávají 40 mA při 66 MHz při 3,3 V.
Řada B - dodává 72 Dhrystone MIPS (DMIPS) při 60 MHz a spotřebovává 23 mA při 66 MHz při 3,3 V.
Řada C - zařízení dodávají 91 Dhrystone MIPS (DMIPS) při 66 MHz a spotřebovávají 40 mA při 66 MHz při 3,3 V.

Řada D -UC3D s nízkým výkonem integruje technologii SleepWalking, která umožňuje perifernímu zařízení probudit zařízení z režimu spánku.

Řada L - dodává 64 Dhrystone MIPS (DMIPS) při 50 MHz a spotřebovává 15 mA při 50 MHz při 1,8 V.

Desky

Viz také

Reference

externí odkazy