90 likes | 233 Views
9 Family. Pavel Mezera. ARM processors family. jsou založené 32b RISC architektuře s ortogonálními instrukcemi dnes představují 75% trhu procesorů pro vestavěné aplikace široká podpora mezi vývojovými nástroji u verzí s MMU možnost Linuxu, WinCE, VxWorks a dalších OS.
E N D
9 Family Pavel Mezera
ARM processors family • jsou založené 32b RISC architektuře s ortogonálními instrukcemi • dnes představují 75% trhu procesorů pro vestavěné aplikace • široká podpora mezi vývojovými nástroji • u verzí s MMU možnost Linuxu, WinCE, VxWorks a dalších OS. • obchodní model založený na licencování výroby – řada implementátorů – množství procesorů a SoC vyvinutých a ušitých na míru specializovaným třídám aplikací – není potřeba chodit s dělem na vrabce
Filosofie ARM jádra jsou založena na • Redukované sadě instrukcí (RISC) bez využití mikrokódování • Volitelné representaci – Little / Big Endian • Load/Store architektuře (operace pouze nad registry, nikoliv přímo nad pamětí) • sadě všeobecně použitelných registrů (31 celkem, 16 pro normální využití, 15 pro rychlá přerušení) • Jednoduchých adresovacích módech (adresa se musí být určitelná pouze z prováděné instrukce a obsahu registrů) • Využití Pipeline – paralelizace zpracování instrukcí, s plánováním pro zamezení pipeline hazardů • Možnosti redukované šířky instrukce(16b) – Thumb • Privilegovaných módech procesoru • Podmiňování instrukcí – instrukce obsahuje podmínku
Schéma značení ARM [x] [y] [z] [T] [D] [M] [I] [E] [J] [F] [S] • x – Family • y – memory management / protection • z – cache • T – Thumb mode • D – JTAG support • M – fast multiplier • I – Embedded ICE macro cell • E – Enhanced instruction • J – Jazelle – hardware accelerated Java • F – floating point unit • S – Synthesizable version Př. : ARM926EJ-S
ARM9 32-bit ARM926EJ-S RISC processor : • 103 to 177 MHz • 5-stage pipeline with interlocking • Harvard architecture • 8 kB instruction cache and 4 kB data cache • 32-bit ARM and 16-bit Thumb instruction sets. Can be mixed for performance/code density tradeoffs. • MMU to support virtual memory-based OSs, such as Linux, WinCE/Pocket PC, VxWorks, others • DSP instruction extensions, improved divide, single cycle MAC • ARM Jazelle, 1200CM (coffee marks) Java accelerator • Embedded ICE-RT debug unit • JTAG boundary scan, BSDL support
Memorymanagement Modified virtual address Virtual address Physical address • FCSE – Fast Context Switch Extension – rozšíření pro rychlé přepínání procesů v multi-threadovém OS – modifikuje virtuální adresní prostory jednotlivých procesů, tak aby se nepřekrývaly, což normálně vyvolává při přepínání procesů nutnost výměny TLB • MMU – Memory Management Unit – pomocí Translation Lookaside Buffer (TLB) překládá virtuální adresy jednotlivých procesů do fyzického adresného prostoru Main Memory ARM core FCSE MMU Cache