Di Lihat. . .Di Baca. . .Di Comment (kalau bingung). . .Di CoPas kalau butuh :D

23 Oktober 2012

ARSITEKTUR ARM (Advanced RISC Machine)




Arsitektur ARM merupakan arsitektur prosesor 32-bit RISC yang dikembangkan oleh ARM Limited. Dikenal sebagai Advanced RISC Machine dimana sebelumnya dikenal sebagai Acorn RISC Machine. Pada awalnya merupakan prosesor desktop yang sekarang didominasi oleh keluarga x86. Namun desain yang sederhana membuat prosesor ARM cocok untuk aplikasi berdaya rendah. Hal ini membuat prosesor ARM mendominasi pasar mobile electronic dan embedded system dimana membutuhkan daya dan harga yang rendah.

Lisensi arsitektur ARM dimiliki oleh :
Alcatel                   Freescale                                     OKI
Atmel                     Intel melalui DEC                        Quallcomm
Broadcom              LG                                              Samsung
Cirrus Logic           ZiiLABS                                      ST Microelectronics
NEC                      Digital Equipment Corporation     Symbios Logic
NVIDIA                Texas Instruments                        VLSI Technology
Sharp                     Marvell Technology Group                                               
Yamaha                  NXP Semiconductors

ARM architecture merupakan sebuah instruction set Architecture (ISA). Teknologi ini lebih dikenal untuk digunakan pada prosesor atau CPU dengan konsumdi daya yang rendah atau memiliki tingkat efesiensi yang baik. Dan arsitektur ini dirancang untuk mengoptimasi kemampuan prosesor dengan menyederhanakan instruksi untuk eksekusi ygang lebih cepat. Prosesor dengan Arsitektur ARM secara umum bergantung pada eksekusi tunggal (single-cycle execution).
Arsitektur ARM terdiridari orthogonal instruction set. Meski istilah orthogonal digunakan untuk sesuatu yang berbentuk siku (right angle), istilah ini digvunakan untuk mngacu pada sebuah data objek (dalam kasus ini adalah ISA), yang berfungsi tanpa mempengaruhi komponen lainnya atau secara statistic bersifat independen.
Arsitektur ARM menggunakan 32 bit, dimana merupakan ukuran data maksimum yang dapat diakomodasi olehnya. Lebih spesifik, setiap prosesor yang menggunakan instruction set ini memiliki 16 register 32-bit, yang merupakan unit penyimpanan kecil yang menyediakan akses data berkecepatan tinggi ketimbang memungkinkan prosesor mendapatkan data dari penyimpanan lain yang memiliki kecepatan lebih rendah.

Sejarah ARM
Setelah sukses dengan komputer BBC Micro, Acorn Computers Ltd mempertimbangkan berpindah dari prosesor MOS Technology 6502 ke pasar yang akan segera didominasi oleh IBM PC yang diluncurkan pada tahun 1981. Acorn Business Computer (ABC) pada saat itu membutuhkan prosesor berikutnya untuk dapat bekerja pada platform BBC Micro.
Akhirnya Acorn mendesain prosesornya sendiri dengan proyek Berkeley RISC oleh engineernya. Kunjungan ke Western Design Center di daerah Phoenix meyakinkan engineer Acorn Steve Furber dan Sophie Wilson bahwa mereka tidak membutuhkan sumber daya dan fasilitas penelitian yang besar. Wilson mengebangkan instruction set, mensimulasikan prosesor pada BBC Basic yang menjalankan BBC Micro dengan prosesor 6502 kedua. ebelum melangkah lebih jauh, mereka membutuhkan sumber daya yang lebih. Setelah Wilson mendapat persetujuan dari CEO Acorn, Hermann Hauser, tim kecil melanjutkan implementasi ke perangkat keras.

Sebuah prosesor ARM dari Conexant yang umum digunakan pada Router.
Proyek Acorn RISC Machine resmi dimulai pada Oktober 1983. VLSI Technology, Inc dipilih sebagai mitra dalam memproduksi chip silikon dimana sebelumnya telah memproduksi ROM dan custom chip sebelumnya. Proses desain dipimpin oleh Wilson dan Furber, dengan tujuan utama latensi rendah (low-latency) pada penanganan input/output (interupsi) seperti pada prosesor MOS Technology 6502. Arsitektur 6502 memberikan pengembang mesin yang cepat dalam pengaksesan memory tanpa harus menggunakan perangkat direct access memory yang mahal. VLSI memproduksi chip ARM pertama kali pada 26 April 1985 yang berhasil bekerja dan dikenal sebagai ARM1. Dan disusul dengan ARM2 yang diproduksi pada tahun berikutnya.
Pengaplikasian prosesor ARM pertama kali adalah prosesor kedua dari BBC Micro, untuk simulasi dalam pengembangan chip pendukung (VIDC, IOC, MEMC) dan untuk mempercepat penggunaan perangkat lunak CAD dalam pengembangan ARM2. Wilson menulis BBC Basic dalam bahasa assembly ARM, dimana kode sangat padat sehingga ARM BBC Basic sangat cocok untuk setiap emulator ARM.
ARM2 mempunyai lebar bus sebesar 32-bit, 26-bit (64 Mbyte) alamat memory dan 16 buah register 32-bit. Program code harus ada dalam 64 Mbyte pertama dari memory, sebagaimana program counter dibatasi pada 26-bit karena 6-bit atas pada register 32-bit digunakan sebagai status flag. Kemungkinan besar ARM2 merupakan prosesor 32-bit paling sederhana di dunia dengan hanya 30.000 transistor bila dibandingkan dengan Motorola 68000 dengan 70.000 transistor. Kesederhanaan ini diperoleh karena ARM tidak mempunyai microcode yang mencakup seperempat hingga sepertiga transistor pada Motorola 68000. Selain itu ARM pada saat itu tidak memiliki cache memory. Hal ini membuat ARM sebagai prosesor dengan konsumsi daya rendah namun performansi yang lebih baik dari pada Intel 80286. Penerusnya yaitu ARM3 mempunyai 4 kByte cache yang meningkatkan performansi.
Pada akhir 1980-an, Apple Computer dan VLSI Technology memulai kerja sama dengan Acorn untuk prosesor ARM berikutnya. Kerjasama ini sangat penting hingga Acorn melepas tim tersebut sebagai perusahaan baru bernama Advanced RISC Machines Ltd. pada tahun 1990. Sehingga seringkali ARM disebut sebagai Advanced RISC Machine disamping Acorn RISC Machine. Dan pada tahun 1998 Advanced RISC Machines menjadi ARM Ltd.
Hasil kerja sama Apple-ARM menghasilkan ARM6 pada awal tahun 1992. Apple menggunakan ARM6 (ARM 610) sebagai prosesor pada PDA Apple Newton dan pada tahun 1994 Acorn menggunakan ARM6 pada komputer PC RISC. Pada frekuensi 233 MHz, prosesor ini hanya mengonsumsi daya sebesar 1 Watt dan versi berikutnya lebih kecil dari itu.
Inti prosesor ARM tidak mengalami perubahan ukuran yang signifikan. Pada ARM2 terdapat 30.000 transistor sedangkan pada ARM6 bertambah hingga 35.000 transistor saja. ARM Ltd. hanya menjual IP (Intelectual Property) core dimana perusahaan lain dapat memproduksi mikrokontroller dan prosesor berdasarkan rancangan ARM. Implementasi yang dinilai paling berhasil adalah ARM7TDMI yang terjual hingga ratusan juta chip. Ide dasarnya adalah produsen chip komputer dapat membuat CPU lengkap berdasarkan rancangan ARM dan dapat dibuat pada pabrik semikonduktor lama serta memberikan performansi yang tinggi pada harga yang rendah. Arsitektur ARM dapat ditemui di banyak smartphone, PDA dan perangkat genggam lain

Inti ARM

Keluarga
Versi Arsitektur
Inti
Fitur
Cache (I/D)/Memory management unit
MIPS@MHz
Aplikasi
ARM1
ARMv1 (kuno)
ARM1

Tidak ada

ARM Evaluation System second processor for BBC Micro
ARM2
ARMv2 (kuno)
ARM2
Penambahan instruksi multiply/perkalian (MUL)
Tidak ada
4 MIPS @ 8 MHz
0.33DMIPS/MHz
Acorn Archimedes, Chessmachine
ARMv2a (kuno)
ARM250
MEMC (MMU), prosesor grafis dan IO terintegrasi. Menambahkan instruksi SWP and SWPB (swap).
Tidak ada, MEMC1a
7 MIPS @ 12 MHz
Acorn Archimedes
ARM3
ARMv2a (kuno)
ARM2a
Pertama kali penggunaan cache.
4 kB unified
12 MIPS @ 25 MHz
0.50 DMIPS/MHz
Acorn Archimedes
ARM6
ARMv3 (obsolete)
ARM60
Pertama kali mendukung pengalamatan 32-bit.
Tidak ada
10 MIPS @ 12 MHz
3DO Interactive Multiplayer, Zarlink GPS Receiver
ARM600
Penambahan cache dan coprocessor bus (FPA10 floating-point unit).
4 kB unified
28 MIPS @ 33 MHz

ARM610
Tidak ada coprocessor bus.
4 kB unified
17 MIPS @ 20 MHz
0.65 DMIPS/MHz
Acorn Risc PC 600, Apple Newton 100
ARMv3 (kuno)
ARM700

8 kB unified
40 MHz
Acorn Risc PC prototype CPU card
ARM710
ARM700
8 kB unified
40 MHz
Acorn Risc PC 700
ARM710a
ARM700
8 kB unified
40 MHz
0.68 DMIPS/MHz
Acorn Risc PC 700, Apple eMate 300
ARM7100
ARM710a, System-on-a-chip.
8 kB unified
18 MHz
Psion Series 5
ARM7500
ARM710a, SoC.
4 kB unified
40 MHz
Acorn A7000
ARM7500FE
ARM7500, penambahan FPA dan EDO memory controller.
4 kB unified
56 MHz
0.73 DMIPS/MHz
Acorn A7000+
ARMv4T
ARM7TDMI(-S)
3-stage pipeline, Thumb
Tidak ada
15 MIPS @ 16.8 MHz
63 DMIPS @ 70 MHz
Game Boy Advance, Nintendo DS, iPod, Lego NXT, Atmel AT91SAM7, Juice Box, NXP Semiconductors LPC2000 dan LH754xx
ARM710T
ARM7TDMI, cache
8 kB unified, MMU
36 MIPS @ 40 MHz
Psion Series 5mx, Psion Revo/Revo Plus/Diamond Mako
ARM720T
ARM7TDMI, cache
8 kB unified, MMU dengan Fast Context Switch Extension
60 MIPS @ 59.8 MHz
Zipit Wireless Messenger, NXP Semiconductors LH7952x
ARM740T
ARM7TDMI, cache
MPU


ARMv5TEJ
ARM7EJ-S
5-stage pipeline, Thumb, Jazelle DBX, Enhanced DSP
Tidak ada


ARMv4
SA-110

16 kB/16 kB, MMU
203 MHz
1.0 DMIPS/MHz
Acorn Risc PC, Rebel/Corel Netwinder, Chalice CATS, Psion Netbook
SA-1110
SA-110, SoC
16 kB/16 kB, MMU
233 MHz
LART (computer), Intel Assabet, Ipaq H36x0, Balloon Board Balloon2, Zaurus SL-5x00, HP Jornada 7xx, Jornada 560 series, Palm Zire 31
ARM8
ARMv4
ARM810
5-stage pipeline, static branch prediction, double-bandwidth memory
8 kB unified, MMU
84 MIPS @ 72 MHz
1.16 DMIPS/MHz
Acorn Risc PC prototype CPU card
ARM9TDMI
ARMv4T
ARM9TDMI
5-stage pipeline, Thumb
Tidak ada


ARM920T
ARM9TDMI, cache
16 kB/16 kB, MMU
200 MIPS @ 180 MHz
Armadillo, Atmel AT91SAM9, GP32, GP2X, Tapwave Zodiac (Motorola i. MX1), HHP-49/50 Calculators, Sun SPOT, Cirrus Logic EP9302, EP9307, EP9312, EP9315, Samsung S3C2442 (HTC TyTN, First International Computer Neo FreeRunner)
ARM922T
ARM9TDMI, caches
8 kB/8 kB, MMU

NXP Semiconductors LH7A40x
ARM940T
As ARM9TDMI, caches
4 kB/4 kB, MPU

GP2X (second core), Meizu M6 Mini Player
ARMv5TE
ARM946E-S
Thumb, Enhanced DSP, cache
variable, tightly coupled memories, MPU

Nintendo DS, Nokia N-Gage, Canon PowerShot A470, Conexant 802.11 chips, Samsung S5L2010
ARM966E-S
Thumb, Enhanced DSP instructions
no cache, TCMs

ST Micro STR91xF, includes Ethernet
ARM968E-S
As ARM966E-S
no cache, TCMs

ARMv5TEJ
ARM926EJ-S
Thumb, Jazelle DBX, Enhanced DSP instructions
variable, TCMs, MMU
220 MIPS @ 200 MHz,
Mobile phones: Sony Ericsson (K, W series); Siemens and Benq (x65 series and newer); Texas Instruments OMAP1710, OMAP1610, OMAP1611, OMAP1612, OMAP-L137, OMAP-L138; Qualcomm MSM6100, MSM6125, MSM6225, MSM6245, MSM6250, MSM6255A, MSM6260, MSM6275, MSM6280, MSM6300, MSM6500, MSM6800; Freescale i.MX21, i.MX27, Atmel AT91SAM9, NXP Semiconductors LPC3000, GPH Wiz, Marvell Feroceon (ex.: SheevaPlug), NEC C10046F5-211-PN2-A SoC - undocumented core in the ATi Hollywood graphics chip used in the Wii, Samsung S3C2412 used in Squeezebox Duet's Controller. NeoMagic MiMagic Family MM6, MM6+, MM8, MTV; Buffalo TeraStation Live (NAS); Telechips TCC7801, TCC7901;
ARMv5TE
ARM996HS
Clockless processor, as ARM966E-S
no caches, TCMs, MPU


ARM10E
ARMv5TE
ARM1020E
6-stage pipeline, Thumb, Enhanced DSP instructions, (VFP)
32 KB/32 KB, MMU


ARM1022E
As ARM1020E
16 KB/16 KB, MMU


ARMv5TEJ
ARM1026EJ-S
Thumb, Jazelle DBX, Enhanced DSP instructions, (VFP)
variable, MMU or MPU

Western Digital MyBook II World Edition
ARMv5TE
80200/IOP310/IOP315
I/O Processor, Thumb, Enhanced DSP instructions



80219


400/600 MHz
Thecus N2100
IOP321


600 BogoMips @ 600 MHz
IOP33x




IOP34x
1-2 core, RAID Acceleration
32K/32K L1, 512K L2, MMU


PXA210/PXA250
Applications processor, 7-stage pipeline

PXA210: 133 and 200 MHz, PXA250: 200, 300, and 400 MHz
Zaurus SL-5600, iPAQ H3900, Sony CLIÉ NX60, NX70V, NZ90
PXA255

32KB/32KB, MMU
400 BogoMips @ 400 MHz; 371-533 MIPS @ 400 MHz
PXA263


200, 300 and 400 MHz
Sony CLIÉ NX73V, NX80V
PXA26x


default 400 MHz, up to 624 MHz
PXA27x
Applications processor
32 KB/32 KB, MMU
800 MIPS @ 624 MHz
Gumstix verdex, PXA270 COM, HTC Universal, HP hx4700, Zaurus SL-C1000, 3000, 3100, 3200, Dell Axim x30, x50, and x51 series, Motorola Q, Balloon3, Trolltech Greenphone, Palm TX, Motorola Ezx Platform A728, A780, A910, A1200, E680, E680i, E680g, E690, E895, Rokr E2, Rokr E6, Fujitsu Siemens LOOX N560, Toshiba Portégé G500, Trēo 650-755p, Zipit Z2
PXA800(E)F




Monahans

32KB/32KB L1, TCM, MMU
1000 MIPS @ 1.25 GHz
Samsung Omnia
PXA900



Blackberry 8700, Blackberry Pearl (8100)
IXC1100
Control Plane Processor



IXP2400/IXP2800




IXP2850




IXP2325/IXP2350




IXP42x



NSLU2 IXP460/IXP465
ARM11
ARMv6
ARM1136J(F)-S
8-stage pipeline, SIMD, Thumb, Jazelle DBX, (VFP), Enhanced DSP instructions
variable, MMU
740 @ 532-665 MHz (i.MX31 SoC), 400-528 MHz
Texas Instruments OMAP2420 (Nokia E90, Nokia N93, Nokia N95, Nokia N82), Zune, BUGbase[1], Nokia N800, Nokia N810, Qualcomm MSM7200 (with integrated ARM926EJ-S Coprocessor@274MHz, used in Eten Glofiish, HTC TyTN II, HTC Nike), Freescale i.MX31 (used in the original Zune 30gb and Toshiba Gigabeat S), Freescale MXC300-30 (Nokia E63, Nokia E71, Nokia 5800, Nokia E51, Nokia E75, Nokia N97, Nokia N81), Qualcomm MSM7201A as seen in the HTC Dream, HTC Magic, Motorola Z6, HTC Hero
ARMv6T2
ARM1156T2(F)-S
9-stage pipeline, SIMD, Thumb-2, (VFP), Enhanced DSP instructions
variable, MPU


ARMv6KZ
ARM1176JZ(F)-S
As ARM1136EJ(F)-S
variable, MMU+TrustZone

Apple iPhone, Apple iPod touch, Conexant CX2427X, Motorola RIZR Z8, Motorola RIZR Z10, NVIDIA GoForce 6100; Telechips TCC9101, TCC9201, TCC8900, Fujitsu MB86H60, Samsung S3C6410, S3C6430
ARMv6K
ARM11 MPCore
As ARM1136EJ(F)-S, 1-4 core SMP
variable, MMU

Cortex
ARMv7-A
Cortex-A8
Application profile, VFP, NEON, Jazelle RCT, Thumb-2, 13-stage superscalar pipeline
variable (L1+L2), MMU+TrustZone
up to 2000 (2.0 DMIPS/MHz in speed from 600 MHz to greater than 1 GHz)
Cortex-A9
Application profile, (VFP), (NEON), Jazelle RCT and DBX, Thumb-2, Out-of-order speculative issue superscalar
MMU+TrustZone
2.0 DMIPS/MHz

As Cortex-A9, 1-4 core SMP
MMU+TrustZone
2.0 DMIPS/MHz (per core)
Texas Instruments OMAP4430/4440 ; "Sparrow" (planned)
ARMv7-R
Cortex-R4(F)
Embedded profile, Thumb-2, (FPU)
variable cache, MPU optional
600 DMIPS @ 475MHz
Broadcom is a user, TMS570 from Texas Instruments
ARMv7-M
Cortex-M3
Microcontroller profile, Thumb-2 only.
no cache, MPU optional
125 DMIPS @ 100 MHz
ARMv6-M
Cortex-M0 (codenamed "Swift")
Microcontroller profile, Thumb-2 (16-bit Thumb instructions & BL, MRS, MSR, ISB, DSB, and DMB).
No cache.
0.9 DMIPS/MHz
Cortex-M1
FPGA targeted, Microcontroller profile, Thumb-2 (16-bit Thumb instructions & BL, MRS, MSR, ISB, DSB, and DMB).
None, tightly coupled memory optional.
Up to 136 DMIPS @ 170 MHz


Sumber :



Tidak ada komentar:

Posting Komentar