ARM11 Mimarisi.

Slides:



Advertisements
Benzer bir sunumlar
ARM Tabanlı Mikrodenetleyici Temelleri ve Programlama
Advertisements

.NET FRAMEWORK -MASAÜSTÜ VE SUNUCU YAZILIMLARI
Yazılım Geliştirme ve Java
Sinan Doğan, Esra Beyoğlu
SelCPU Temmuz 2008 Bilg.Bil.Müh.Selçuk BAŞAK SelSistem Bilgi ve İletişim Teknolojileri
Intel Pentium Mikroişlemcisi
İŞLETİM SİSTEMİ KATMANLARI (Çekirdek, Kabuk ve diğer temel kavramlar)
Dijital Dünyada Yaşamak
İŞLETİM SİSTEMİ İşletim Sistemi Nedir İşletim Sisteminin Görevleri
BİLGİSAYAR SİSTEMİ.
Prof. Dr. Eşref ADALI Yrd. Doç. Dr. Şule Gündüz Öğüdücü SürümA
İşletim Sistemlerine Giriş
Numbers of Opcodes Nihal Güngör.
Bölüm 1: Introductions (Tanıtım,Tanım)
İleri Mikroişlemci Özellikleri
MİMARİ ESASLAR Bir bilgisayarın komut kümesi, programcının makineyi programlarken kullanabileceği ilkel emirleri veya makine komutlarının tamamının oluşturduğu.
CPU (Merkezi İşlem Ünitesi)
İŞLETİM SİSTEMLERİ KONTROL: PROF.DR.ASAF VAROL DÖNE KARAOĞLAN BİLGİSAYAR SİSTEMLERİ Bilgisayar Öğretmenliği (Gece) - 4.
Mobil Uygulamalar ve Bilgi Hizmetleri Orçun Madran
BUYRUK İşlem kodu İşlemci yazacı veri
BİLGİ TEKNOLOJİSİNİN TEMEL KAVRAMLARI
Intel Pentium II Mikroişlemcisi
BTB Branch Target Buffer BTB, işlemcinin Dal Tahmini yaparken danıştığı Branch Target Buffer. Dal Tahmini modern işlemcilerin hepsinin başvurduğu bir yöntem.
Marmara Ünv. Bilgisayar Mühendisliği Bölümü
Register ve Türleri Nihal GÜNGÖR.
Intel P6 Architecture Mustafa Çayır.
Temel Bilgisayar Yapısı ve Devreleri
66 CHAPTER SİSTEM UNITESİ. © 2005 The McGraw-Hill Companies, Inc. All Rights Reserved. 6-2 Sistem Üniteleri Mikro bilgisayarlar Masaüstü Dizüstü Tablet.
MART 2013 İŞLETİM SİSTEMLERİ.
BİLGİSAYARIN MİMARİSİ, TEMEL BİLEŞENLERİ VE ÇALIŞMA MANTIĞI
Mikroişlemciler ve Mikrobilgisayarlar
KAPASİTE (HAFIZA) ÖLÇÜ BİRİMLERİ
İŞLETİM SİSTEMLERİ Öğr. Gör. S.Serkan TAN.
YAZILIM TABANLI RADYO UYGULAMALARI
CPU.
Cemil ŞAHİN Bilişim Teknolojileri Öğretmeni
BİLGİSAYAR SİSTEMLERİ
EYLÜL 2014 İŞLETİM SİSTEMLERİ Bilgisayar Uygulamaları.
İŞLEMCİ MİMARİLERİ – Derya Işık
Bilişim Teknolojileri Öğretmeni İsmail ÖZTÜRK
DEPOLAMA.
1 Öğr. B.Aliyeva Öğr. B.Aliyeva Bilgisayar Yazılımı.
YAZILIM.
CACHE MEMORY Ersin ERSOY
BİL İŞLETİM SİSTEMLERİ
Temel Bilgi Teknolojilerinin Kullanımı Öğr.Gör. Abdullah ŞENER.
ARM TABANLI İŞLEMCİLER
BİLGİSAYAR MİMARİLERİ 12.Hafta: Çok İşlemcili Sistemler
BİLGİSAYAR MİMARİLERİ 1.Hafta: Bilgisayar Mimarisine Giriş
BİLGİSAYAR MİMARİLERİ 2.Hafta: Bilgisayar Bileşenleri
BİLGİSAYAR MİMARİLERİ 5.Hafta: Bellek Hiyerarşisi-3
BİLGİSAYAR MİMARİLERİ 7.Hafta: Çoklu-Çevrim İşlemci
BİLGİSAYAR MİMARİLERİ 11.Hafta: Pipeline Sorunları
BİLİŞİM TEKNOLOJİSİNİN TEMELLERİ
İŞLETİM SİSTEMLERİ ISE 206 DR. TUĞRUL TAŞCI. Dersin Amacı Bilgisayar sistemlerinin temel organizasyonunu tanımak İşletim sistemlerinin ana bileşenlerini.
Information Technology, the Internet, and You © 2013 The McGraw-Hill Companies, Inc. All rights reserved.Computing Essentials 2013.
1. HAFTA Giriş, Tarihçe ve Kavramlar
DaVinci TM Platformunda Video Kodlama. Neden DaVinci TM ? ? ? DaVinci TM platformu özellikle sayısal video kodlama ve çözme gibi ağır hesapsal yüklerin.
Bilgisayar Mühendisliğine Giriş
GPU Önbelleklerinde Yerelliğe Bağlı Dinamik Yazma Politikası
Mikrobilgisayar Tasarım Yapıları
Mikroişlemciler Giriş.
Bir bilgisayar sisteminin 4 bileşeni vardır;
Mikroişlemcili Sistem Tasarımı
İşletim Sistemleri (Operating Systems)
Mikrobilgisayar Tasarım Yapıları
İşletim Sistemleri (Operating Systems)
NİŞANTAŞI ÜNİVERSİTESİ
BİLGİSAYAR MÜHENDİSLİĞİNE GİRİŞ
NİŞANTAŞI ÜNİVERSİTESİ
Sunum transkripti:

ARM11 Mimarisi

ARM Hakkında Genel Bilgi

ARM Advanced RISC Machines. 1983’te kurulmuş olan ARM Modern SoC tasarımlarının önde gelen firmalarındandır. Elektronik ürün üreticileri tarafından en çok tercih edilen mimari olduğu için çok fazla yazılım desteği de almaktadır. ARM işlemcileri lisansına aldığı gibi mimarilerini de lisansına almakta ve satmaktadır. Örnek olarak, Intel® Xscale™ ARM mimarisine dayanarak yapılmıştır. 16/32 bir RISC işlemciler, Veri Makineleri (Data Engines), 3D İşlemciler, Sayısal kütüphaneler, Gömülü Bellekler, Çevre Birimleri, Yazılımlar ve geliştirme araçları üretmektedir.

ARM11 Son çıkan ürün olan ARM11; PDA'lar, kameralar ve üst düzey cep telefonları için tasarlanmıştır. Örnek olarak, Apple iPhone'larda da ARM11 işlemci kullanılmıştır. ARM11 işlemciler, ARMv6 komut setinin kullanıldığı ilk işlemcidir. Hedefi, yüksek performansa az maliyet ve güç harcaması ile ulaşmaktır.

ARMv6 2 kat hızlı ses,video işleme Gelişmiş kesme ve aykırı durum tespiti Veri paylaşımını kolaylaştıran sırasız, rasgele veri sağlama Cep içeriğini değiştirme masrafı azaltılmış gelişmiş bellek mimarisi SIMD, Thumb®, Jazelle™ ve ARM DSP ile gelişmiş bir komut seti 8 katlı iş hattı ile eski işlemcilerden %40 daha çok veri işlenmesi

ARM11 Mimarisinin İncelenmesi

Saklayıcılar ve Çalışma Modları Unranked Register R0-R7; Banked Register R8-R14; SP R13 Link register R14 PC R15; Current Program Status Register R16 ( CPSR) Her çalışma modu bir R13-R14 (banked) saklayıcıya ve SPSR’ye (Subprogram Status Register) sahiptir. Bunlar aslında R13_xyz, R14_xyz, SPSR_xyz olarak adlandırılır. xyz çalışma moduna göre değişir. R13 bir banked saklayıcıdır yani her programın kendi yığını vardır.

Çalışma Modu Örneği - Kesme Şu anki PC ( R15 ) , yeni çalışma modunun R14 saklayıcısına ( Banked – Link ) geri dönüş adresi olarak saklanır ve bu saklayıcı R14_kes olarak adlandırılır. “kes” kesme’den gelmektedir. CPSR, yeni çalışma moduna ait olan SPSR’ye kopyalanır. SPSR_kes CPSR, yeni çalışma moduna uygun olarak güncellenir. R15 yani PC’ye ilgili kesme vektörü adresi yüklenerek kesme işlemleri başlatılır. İşlem bitince ilgili ayarlar SPSR_kes ve R14_kes’ten geri yüklenir.

Adresleme Yöntemleri

Güvenlik Uygulamaları TrustZone(TM) olarak bilinir. Güvenli ve güvensiz durumlar olarak adlandırılan iki sanal işlemciden oluşur. SMC komutu ile komutun yürütüleceği mod değiştirilir. Böylece gelişmiş bir işletim sistemi ile güvenli bir kernel bir arada güvenle çalışabilir. Gelişmiş işletim sistemi güvensiz uzayda, kernel güvenli uzayda çalışır. Bu soyutlama ile işletim sistemindeki tüm erişim haklarını eline geçirmiş bir saldırı programı bile kernel'a erişemez.

Performans 350Mhz - 500Mhz, 1.2V, 0.13µmm, 0.6 mW/MHz Intelligent Energy Manager (IEM) dinamik güç yönetimi sağlar. IEM ile %25'ten %50'ye varan enerji tasarrufu elde edilir. big-endian / little-endian kontrolü ile diğer işlemcilerle ve DSP’ler ile uyumlu çalışır. Bellek alt sistemi görev değiştirme işlemlerinde gelişim ile veri yolu erişimlerini düşme ve güç gereksinimlerin de azalma. Yeni load / store komutları daha etkin semafor tanımlamaları yapılmasını sağlar ve ARM11’in çok işlemcili uygulamalara uyumluluğunu arttırır.

ARM DSP Ses kodlama/ kod çözme (MP3: AAC, WMA) Yardımcı motor kontrolü (HDD/DVD) MPEG4 kod çözme Ses ve el yazısı tanıma Gömülü kontrol sistemleri Bit zor algoritmalar (GSM-AMR) İşlemlerini sağlayan işlemcidir.

Jazelle™ Jazelle™, ARM mimarisinde yürütme uygulamalarında(Java™) düşük maliyet ve güç ile yüksek performans ve hızlanma sağlamak için geliştirilmiştir. Jazelle teknolojisi hem donanım hem de yazılım olarak ARM tarafından üretilmiş bir çözümdür.

Gelişmiş SIMD “Single Instruction Multiple Data” sadece birçok veriyi aynı anda işleyen komutları içeren komut seti. NEON teknolojisi olarak da bilinir. sinyal işleme ve ses/görüntü işleme işlemlerinde hızlanma sağlamaktadır. SIMD veriyi tek başına değil bir küme olarak algılar ve işlemek için tek veri değil birden çok veri alır. Örnek: Ekran parlaklığını değiştirmek için tüm piksellerin R G B değerlerini aynı miktarda değiştirme işlemi. Tek komutla çalışmak döngü içerisinde çalışmaktan da iyi ve hızlı olacaktır

VFP ARM mimarisinde yardımcı işlemcidir. Tek ve çift duyarlılıklı kayan noktalı sayılarla işlem yapmaktadır. SIMD'yi de desteklemektedir.

Thumb® 32bit performansına ve adres alanına 32 bit maliyetine ulaşmadan erişmeyi sağlamak için üretilmiştir. En çok kullanılan 32 bit komutların 16 bitlik işlem kodlarına sıkıştırılmasıyla oluşturulmuştur. Yürütmede bu işlem kodları maliyet kaybı olmadan 32 bite geri çözülür. 8 veya 16 bit veri yolu ve bellekten 32-bit performansı sağlanır. Program bellek alanını küçültür. Yonga tasarımında maliyeti düşürür. Tasarımcı projeye göre uygun komut setini seçer. Windows yazılım geliştirme ortamları tarafından desteklenmektedir

İş Hattı ARM11, sekiz katlı iş hattına sahiptir. “Forwarding” ve dallanma tahminleri ile ARM9’daki beş katlı iş hattındaki aynı gecikme ile daha fazla işlem yapılır. “forwarding” iş hattının sonuna gelmeden elde edilen sonucu yazma işlemi yapmadan sonraki komuta iletebilmedir. i-o komut yayınlama, o-o komut sonlandırma. Yapılan araştırmalarda aynı anda tek komut yayınlamanın birden çok komut yayınlamadan daha iyi performans verdiği görülmüş ve tek komut yayınlama seçilmiştir.

İş Hattı

İş Hattında Paralellik Her ne kadar tek komut yayınlamalı iş hattı olsa da ALU, MAC ve LS iş hatları paralellik yaratır. LS komutları ıska-vuru’ya bağlı olduğundan aritmetik işlemlerden ayrılması performansı arttırır. ALU-MAC ve LS iş hatlarının ayrılması derleyiciye komut sırası değiştirme imkanı sağlar.

Dallanma Dallanma Tahmini Dinamik İlk başvurulan Yöntem BTAC(branch target adress cahce) kullanılır 64 dallanma bilgisi saklanabilir Eşleşen dallanmanın olabileceği durumlar : Strongly Taken, Weakly Taken, Strongly not Taken, Weakly not Taken durumları

Dallanma Statik BTAC’de eşleşen kayıt bulunmazsa başvurulur Dallanılacak adres eğer büyükse yani ileriye dallanma varsa dallanılmayacağı tahmini yapılır; eğer dallanılacak adres küçükse yani gerideyse bu muhtemelen bir döngüdür ve dallanma öngörüsünde bulunulur Yapılan testlerde ARM11 mimarisinde dallanma tahminlerinin %85 inin doğru öngörüldüğü tespit edilmiştir. Her doğru tahmin komut başına 5 saat çevrimi süre kazandırmaktadır.

Veri Yolu Veri ve komut cepleri ile işlemci arasında ve yardımcı işlemci birimler arasında 64 bitlik veri yolu bulundurmaktadır. Tek saat çevriminde komut cebinden 2 komut alınır ve veri cebinden 2 veri okunur 2 LS komutu tek çevrimde yürütülür ARM11 kayan noktalı sayı işlemlerini de destekler

Bellek Mimarisi TLB(translition lookaside buffer) DMA (Direct Memory Access) TCM (Tightly-coupled memory) Yazma kuyruğu MMU(Memory Management Unit)

Bellek Organizasyonu Harvard mimarisi: Veri ve komut cebi ayrıdır. 4-64k arasında boyutu değişebilen 2 cep bulunur. Boyutları ayarlanabilir 4 kümeli asosyatif cep bulunur. Cep hatları WB veya WT çalışabilir. Aslen WB’dir. Komut ve veri cepleri bir çevrimde 2 sekizli(word) okuyabilir. Bellek erişiminde DMA kullanılır. Pseudo-Random veya Round-Robin algoritmaları ile cepte yer açılır.

Bellek Organizasyonu MMU TLB Yazma Tamponu Adres çevrimi ve işlemcinin portları için erişim izni kontrollerini sağlamaktadır. Adres çevrimlerinde TLB kullanır. TLB Micro TLB ve Macro TLB Veri ve komut Micro TLB’leri ayrıdır ve 10 birim veriyi tutar. Macro TLB, hem veri hem de komut Micro TLB’sinde ıska olan verileri tutar. Yazma Tamponu FIFO olarak çalışır. Yazma tamponundaki bir birim veri; adres bilgisi, veri ve boyut bilgisinden oluşur Şayet ardışık adreslerdeki veriler belleğe yazılacaksa bunlar birleştirilir ve tek bir adres bilgisi ile belleğe yazdırılır

Bellek Organizasyonu TCM Komut TCM - Instruction TCM (ITCM) Veri TCM - Data TCM (DTCM) TCM düşük gecikmeli bellek sağlamak için kullanılmıştır Cep bellekle benzer karakteristik gösterir fakat sistemin fiziksel bellek haritasının bir parçası olarak kullanılır Bu tip bellekler kesme veya gerçek zamanlı çalışan kritik programcıkları tutmak için kullanılır Sonsuz bir bellek alanı sağlar TCM’ye dışarıdan yazma (external write) yapılmaz

Referanslar David Cormie, Nisan 2002, The ARM11Ô Microarchitecture, ARM11MicroarchitectureWhitePaper.pdf. http://www.arm.com http://222.66.109.20/jpkc/arch/document/student/16-033230_Zu_Min.doc Chris Williams, Future ARM based processors for RISC OS? , http://www.drobe.co.uk/riscos/artifact763.html ARM Technical Tidbits, http://www.go-ecs.com/arm/armtek1.htm ARM architecture, http://en.wikipedia.org/wiki/ARM_architecture What ARM Does, http://www.arm.com/aboutarm/ http://www.all-electronics.de/ai/resources/ae88782d994.doc

Referanslar Hardware Directory: ARM11 Implements ARMv6 ISA, http://electronicdesign.com/Articles/Index.cfm?ArticleID=2474 ARM Bir Sonraki Jenerasyon İşlemcilerini Duyurdu, http://www.donanimhaber.com/arama2.asp?Sayfa=4&plus=xscale&num=10&squote=&any=&minus=&time=&mode=0 ARM11 Family, http://www.arm.com/products/CPUs/families/ARM11Family.html ARM Architecture Overview, http://www.hitex.com/products.html?con_arm_architecture_overview.html~content ARM1176JZ(F)-S, http://www.arm.com/products/CPUs/ARM1176.html Matthew Byatt, Delivering high-performance embedded signal processing with ARM OptimoDE™

SON Teşekkürler Ersin ÖZKAN