Sunum yükleniyor. Lütfen bekleyiniz

Sunum yükleniyor. Lütfen bekleyiniz

TUNA AYAN ARM Tabanlı Mikrodenetleyici Temelleri ve Programlama.

Benzer bir sunumlar


... konulu sunumlar: "TUNA AYAN ARM Tabanlı Mikrodenetleyici Temelleri ve Programlama."— Sunum transkripti:

1 TUNA AYAN ARM Tabanlı Mikrodenetleyici Temelleri ve Programlama

2 • İşlemci Nedir? • İşlemci Nasıl Çalışır? • Mikrodenetleyici Nedir? • ARM Mimarisi • Stellaris LM3S811 • Stellaris LM3S811 Evaluation Kit • StellarisWare(API) • Keil (IDE) • Programcı Modeli • Demo Uygulama

3 İşlemci: • Çevresel birimlerin çalışmasını sağlayan, • Bu birimler arasındaki veri (data) akışını kontrol eden, • Veri işleme görevlerini yerine getiren, • Milyonlarca transistörden(IC) oluşan bir yapıdır.

4 Temel Kavramlar: • Register(Kaydedici) • Instruction(Komut) • Decoder(Çözücü) => • Accumulator(Toplayıcı) • Memory(Hafıza) İşlemciye Ait Birimler: • Komut Kaydedici(Instruction Register) • Komut Çözücü (Instruction Decoder) • ALU(Arithmetic Logic Unit)

5 Memory(Hafıza): • Kodumuzun okunacağı hafıza alanıdır. Memory add #5 sub #4 STRA $10 XX XXX Program Counter Program Counter(Program Sayıcı): • Hafıza üzerinde hangi satırdan okuma yapacağımızı belirleyen kısımdır.

6 Instruction Register(Komut Kaydedici): • Memory üzerinden okunan makine kodunu yorumlar. • Makine kodunu ayrıştırır. Kontrol sinyallerini ayarlar ve işlemi başlatır. Memory add #5 sub #4 STRA $10 XX XXX Program Counter Instruction Register ALU ALU: • İşlemcinin matematiksel ve mantıksal işlemleri yapan birimine ALU denir.

7 Accumulator(Toplayıcı): • ALU sonuçları accumulator e kaydedilir. • Accumulator genel amaçlı kaydediciler sınıfına girmektedir. Memory add #5 sub #4 STRA $10 XX XXX Program Counter Instruction Register ALU Accumulator Write Back(Geri Yazma): • Bazı işlemlerde geri yazma operasyonu da kullanılır.

8 BUS: İşlemcinin, kendi içinde ve çevresindeki donanımlarla arasındaki bağlantıyı sağlayan iletken yollardır. • Data Bus • Address Bus • Control Bus Memory add #5 sub #4 STRA $10 XX XXX Program Counter Instruction Register ALU Accumulator

9 Uygulama Linki Kullanılan Elemanlar: • PC: Program Counter (Program sayıcı) • IR: Instruction Register (Komut kaydedici) • ACC: Accumulator (Toplayıcı) • MAR: Memory Address Register(Adres kaydedici hafıza) • MBR: Memory Buffer Register (Buffer kaydedici hafıza) • A,B : Register (Özel kaydedicilerimiz) Örnek Uygulama : Kullanılan Komutlar: • MOVE: Taşı komutudur. • ADD : Ekleme komutudur • STO : Yazma komutudur.

10 Pipeline: • Birden fazla komutun aynı anda işlenmesi olayına pipeline denir • ARM tabanlı sistemlerde 3 aşamalı(fetch,decode,execute) pipeline kullanılır. Örnek Uygulama

11 CISC(Complex Instruction Set Computer): • İşlemci kendi üzerinde bulunan minyatür bir yazılımı kullanarak komut setlerini çalıştırır. Bu sayede komut setleri değişik uzunluklarda olabilir ve bütün adresleme modellerini kullanabilirler. Bunun dezavantajı çalışmak için daha karmaşık bir devre tasarımına ihtiyaç duyulmasıdır RISC(Reduced Instruction Set Computer): • Daha az komutla çalışan, tek bir saat döngüsünde çalışacak çok hızlı komutları işleyebilecek, basit bir devre tasarımıyla gelmiştir. ARM tabanlı sistemlerde RISC kullanılır.

12 CISC vs RISC: • Hafıza üzerinde (1,1) ve (1,2) koordinatlarında bulunan 2 sayıyı çarpalım ve sonucu (1,1) adresine yazalım. CISC: MULT (1,1), (1,2) RISC: LOAD A, (1,1) LOAD B, (1,2) PROD A, B STORE (1,1), A Referans Hangisi daha iyi ??

13 • Mikrodenetleyici, özel amaçlı mikroişlemcidir. • Üzerinde işlemci dışında RAM,ADC,I/O vs. entegre edilmiş olarak bulunabilir. • Maliyeti ucuz olması ve tek bir entegrede (IC) çevresel aygıt modüllerinin bulunması mikrodenetleyicileri cazip kılmıştır. • Mikrodenetleyici = Microcomputer = MCU = uC

14 Hakkında: • ARM (Acorn Risc Machine) mimarisi 32-bit RISC işlemci mimarisine sahiptir. • Düşük güç tüketimi sağlar. • Sadeleştirilmiş komut setine sahiptir. • Yüksek performans sağlar.

15 ARMv7 Çeşitleri: M Serisi: Cortex-M0, Cortex-M3, Cortex-M4 A Serisi: Cortex-A8, Cortex-A9 R Serisi: Cortex-R4, Cortex-R5, Cortex-R7

16 ARM Teknolojisi: • Thumb • Thumb2 • TrustZone • Jazelle • SIMD • DSP Komutları • CMSIS • NVIC

17 Cortex-M3Teknolojisi: • Thumb: Thumb komut seti ARM komut setinden farklı olarak 16 bit ile çalışır. Hafızada daha az yer kaplaması ve perfomans artışı sağladığı için tercih edilir. • Thumb2: Komut çeşitliği, performans ve ARM komut setiyle aynı anda kullanılabilirliği açısından thumb komut setinin geliştirilmesiyle oluşmuş bir sistemdir.

18 Cortex-M3Teknolojisi: • CMSIS: Türkçesi Cortex mikrodenetleyici yazılım ara yüzü standardıdır. Cortex çekirdeğine sahip işlemciler üzerinde, üreticiden ve çipten bağımsız olarak basit bir şekilde gerçek zamanlı işletim sistemi kullanabilmeye olanak sağlar • NVIC: Kesme(interrupt) modülüdür. İşlemci üzerindeki bütün portlara harici kesme verebilme olanağı sağlamaktadır.

19 Hakkında: • ARM Cortex M3 mimarisine sahip olan stellaris serisi MCU’lar düşük fiyat ve yüksek performans sağlamalarından dolayı tercih edilmektedirler. • Kolay programlanabilme özelliği (stellarisware) ile programcıya rahatça 32bit işlemci programlayabilme avantajı sağlamaktadır. • Düşük güç tüketimi sayesinde mobil uygulamalarda tercih edilir. • Ortalama fiyatı : $2.75

20 Özellikleri: • 50MHz işlemci • 64kB flash ve 8 kB SRAM • Genel amaçlı Timer(sayıcı) • Watchdog Timer(sayıcı) • I2C • UART • 10-bit ADC • PWM • SPI • RTC • LDO

21 Özellikleri: • Stellaris LM3S811 işlemci • 96x16 OLED display • Programlanabilir kullanıcı butonu • Reset buton • Potansiyometre • 20-pin JTAG debug konnektörü (ICDI) • UART0 üzerinden sanal USB haberleşme portu • USB üzerinden güç seçeneği

22 Hakkında: • Ücretsiz lisanslı Stellaris MCU’larda kullanılmak üzere geliştirilmiş açık kaynaklı kütüphaneler topluluğudur. • Stellaris MCU’ları kolayca programlamamızı sağlar • C tabanlı yazılsa da arka planda Thumb-2 komut setini kullandığı için performans konusunda oldukça iddialıdır. • uKeil, CCS, IAR, Code Red givi derleyicilerle derlenebilmektedir.

23 Hakkında: • Cortex-M, Cortex-R4, ARM7 ve ARM9 cihazlarının tamamını destekliyor • Üzerinde IDE, debugger ve simülasyon desteği vardır • CMSIS özelliğini destekliyor • TCP/IP ve UDP protokollerini destekliyor. • 32 KB ücretsiz kullanım özelliği vardır.

24 Kodumuz derlenir ve hafızaya gönderilir İşlemci daha sonra kodumuzu çalıştırır

25 DİNLEDİĞİNİZ İÇİN TEŞEKKÜRLER


"TUNA AYAN ARM Tabanlı Mikrodenetleyici Temelleri ve Programlama." indir ppt

Benzer bir sunumlar


Google Reklamları