ARM11 - ARM11
| Informații generale | |
|---|---|
| Proiectat de | Holdings ARM |
| Arhitectură și clasificare | |
| Microarhitectura | ARMv6, ARMv6T2, ARMv6Z, ARMv6K |
| Set de instructiuni |
ARM (32-bit) , Thumb (16-bit) , Thumb-2 (32-bit) |
ARM11 este un grup de nuclee mai vechi de 32 de biți RISC ARM licențiate de ARM Holdings . Familia de bază ARM11 este formată din ARM1136J (F) -S, ARM1156T2 (F) -S, ARM1176JZ (F) -S și ARM11MPCore. Deoarece nucleele ARM11 au fost lansate din 2002 până în 2005 , acestea nu mai sunt recomandate pentru noile modele IC, în schimb sunt preferate nucleele ARM Cortex-A și ARM Cortex-R .
Prezentare generală
| Anunțat | |
|---|---|
| An | Miezul |
| 2002 | ARM1136J (F) -S |
| 2003 | ARM1156T2 (F) -S |
| 2003 | ARM1176JZ (F) -S |
| 2005 | ARM11MPCore |
ARM11 microarhitecturii ( a anunțat 29 aprilie 2002) a introdus Armv6 adăugări arhitecturale care au fost anunțate în octombrie 2001. Acestea includ SIMD instrucțiuni media, multiprocesor suport și o nouă arhitectură cache. Implementarea a inclus o conductă de procesare a instrucțiunilor îmbunătățită semnificativ, în comparație cu familiile anterioare ARM9 sau ARM10 și este utilizată pe smartphone-urile de la Apple , Nokia și altele. Nucleul inițial ARM11 (ARM1136) a fost eliberat deținătorilor de licență în octombrie 2002.
Familia ARM11 este în prezent singurele nuclee de arhitectură ARMv6. Există, totuși, nuclee ARMv6-M ( Cortex-M0 și Cortex-M1 ), care se adresează aplicațiilor de microcontroler ; Miezurile ARM11 vizează aplicații mai solicitante.
Diferențe față de ARM9
În ceea ce privește setul de instrucțiuni, ARM11 se bazează pe generația precedentă ARM9 . Acesta încorporează toate caracteristicile ARM926EJ-S și adaugă instrucțiunile ARMv6 pentru suport media (SIMD) și accelerarea răspunsului IRQ.
Îmbunătățirile microarhitecturii în nucleele ARM11 includ:
- Instrucțiuni SIMD care pot dubla MPEG-4 și viteza algoritmului de procesare a semnalului digital audio
- Cache-ul este abordat fizic, rezolvând multe probleme de aliasare a cache-ului și reducând cheltuielile de schimbare a contextului.
- Este acceptat accesul la date nealiniat și mixt-endian.
- Producția de căldură redusă și riscul mai mic de supraîncălzire
- Conductă reproiectată, acceptând viteze de ceas mai mari (țintă de până la 1 GHz)
- Căi de date pe 64 de biți
Suportul de depanare JTAG (pentru oprire, pas, puncte de întrerupere și puncte de supraveghere) a fost simplificat. Modulul EmbeddedICE a fost înlocuit cu o interfață care a devenit parte a arhitecturii ARMv7. Modulele de urmărire hardware (ETM și ETB) sunt versiuni compatibile, dar actualizate, ale celor utilizate în ARM9. În special, semantica de urmărire a fost actualizată pentru a aborda executarea instrucțiunilor paralele și transferurile de date.
ARM depune eforturi pentru a promova stilurile și tehnicile de codificare recomandate de Verilog . Acest lucru asigură designuri riguroase din punct de vedere semantic, păstrând semantica identică pe tot parcursul fluxului de proiectare a cipurilor, care a inclus o utilizare extinsă a tehnicilor de verificare formală . Fără o astfel de atenție, integrarea unui ARM11 cu design-uri terțe ar putea risca expunerea unor erori latente greu de găsit. Datorită faptului că nucleele ARM sunt integrate în multe modele diferite, utilizând o varietate de instrumente de sinteză logică și procese de fabricație a cipurilor, impactul calității nivelului de transfer al registrului (RTL) este mărit de multe ori. Generația ARM11 s-a concentrat mai mult pe sinteză decât generațiile anterioare, făcând astfel de preocupări mai importante.
Miezuri
Există patru nuclee ARM11:
- ARM1136
- ARM1156, a introdus instrucțiunile Thumb2
- ARM1176, a introdus extensii de securitate
- ARM11MPcore, a introdus suport multicore
Chipsuri
- Ambarella A5s, A7, A7L
- ASPEED Technology Inc. AST25xx
- Broadcom BCM2835 ( Raspberry Pi 1 A / B, Pi Zero), BCM21553
- Cavium ECONA seria CNS3000
- CSR Quatro 4230, 45xx, 53xx
- Freescale Semiconductor seria i.MX3x, cum ar fi i.MX31 , i.MX35
- Infotmic IMAPX2xx
- CPU Nintendo CTR (procesor Nintendo 3DS )
- Modulul NTC 1879VYa1Ya, K1879KhB1Ya, 1879KhK1Ya, K1888VS018
- Nvidia Tegra
- MediaTek MTK6573
- Mindspeed Comcerto 1000 (Freescale LS102MA)
- Tehnologie PLX NAS782x
- Qualcomm MSM720x, MSM7x27
- Qualcomm Atheros AR7400
- Samsung S3C64xx, S5P64xx, S5L87xx, S5L89xx sau Exynos Dual cu Logic11
- Telechips TCC8902
- Texas Instruments seria OMAP2 , cu un TSP320 C55x sau C64x DSP ca al doilea nucleu
- Xcometic KVM2800
Vezi si
- Arhitectura ARM
- Lista arhitecturilor și nucleelor ARM
- JTAG
- Întrerupe , gestionează întreruperea
- Sistem de operare în timp real , Compararea sistemelor de operare în timp real
Referințe
linkuri externe
- Documente oficiale ARM11
- Site-ul oficial al ARM11
- Manuale de referință pentru arhitectură: ARMv4 / 5/6 , ARMv7-A / R
- Manuale de referință de bază: ARM1136J (F) -S , ARM1156T2-S , ARM1156T2F-S , ARM1176JZ-S , ARM1176JZF-S , ARM11 MPCore
- Manual de referință al coprocesorului : VFP11 (virgulă mobilă pentru ARM1136JF-S)
- Carduri de referință rapidă
- Instrucțiuni: Thumb ( 1 ), ARM și Thumb-2 ( 2 ), Vector Floating Point ( 3 )
- Opcodes: Thumb ( 1 , 2 ), ARM ( 3 , 4 ), Directivele GNU Assembler 5 .
- Alte
- ARM11 nu are o instrucțiune de divizare hardware întreagă
- The ARM11 Architecture , 2009, de Ian Davey și Payton Oliveri