Mikroişlemcili Sistem Tasarımı

Slides:



Advertisements
Benzer bir sunumlar
8051 MİKROKONTROLÖR AİLESİ
Advertisements

Register ve Türleri Nihal GÜNGÖR.
Mikroişlemciler ve Mikrobilgisayarlar
ENDÜSTRİYEL GÖMÜLÜ BİLGİSAYAR SİSTEMLERİ
Amaçlar Assembly dilinin genel özelliklerini tanımak
Algoritma.  Algoritma, belirli bir görevi yerine getiren sonlu sayıdaki işlemler dizisidir.  Başka bir deyişle; bir sorunu çözebilmek için gerekli olan.
Donanım Birimleri.
Hat Dengeleme.
SAYISAL DEVRELER BÖLÜM-2 Sayı Sistemleri ve Kodlar
DONANIM VE YAZILIM.
İŞLETİM SİSTEMLERİ ISE 206 DR. TUĞRUL TAŞCI. Dersin Amacı Bilgisayar sistemlerinin temel organizasyonunu tanımak İşletim sistemlerinin ana bileşenlerini.
Yazılım Mühendisliği1[ 3.hft ]. Yazılım Mühendisliği2 Yazılım İ sterlerinin Çözümlemesi Yazılım Yaşam Çevrimi “ Yazılım Yaşam çevrimin herhangi bir yazılım.
Komut Türleri  8051’de de kullanılan komutlar 8-bit opkoda sahiptir.  8-bit opkod 2 8 =256 farklı komuta imkan tanır ve 8051’de toplam 255 komut tanımlıdır.
ÇOK BOYUTLU SİNYAL İŞLEME
YÖNLENDİRME. Yönlendirme ● Statik ● Dinamik ● Kaynakta yönlendirme ● Hop by hop yönlendirme.
HARİCİ VERİ DEPOLAMA SİSTEMLERİ. HARİCİ VERİ DEPOLAMA NEDİR?  Harici Veri Depolama: Verilerimizi saklamak ve gelecekte kullanmak amacıyla kullanılan.
BİLİŞİM TEKNOLOJİLERİ VE YAZILIM DONANIM VE YAZILIM.
Bilişim Teknolojileri ve Yazılım Dersi
Excel 2007.
C Programlama Dili Çağdaş Hakan Aladağ.
İŞLETİM SİSTEMLERİ ISE 206 Dr. Tuğrul TAŞCI.
LINK LAYER PROTOCOLS (ARP/INARP)
TAM SAYILAR.
Bilgisayar Donanım ve Sistem Yazılımı
ARAÇ GEREÇLERİN EĞİTİMDEKİ YERİ VE ÖNEMİ
Mikroişlemciler Temel I/O Arayüzleri.
PROGRAMLAMA TEMELLERİ
Mikroişlemcili Sistemler ve Laboratuvarı
Mikroişlemciler Adresleme Modları.
DONANIM BİRİMLERİNİ TANIYOR MUSUNUZ?
Mikroişlemciler Temel I/O Arayüzleri.
BİLGİSAYAR ÇEŞİTLERİ.
Bilgi ve İletişim Teknolojileri
Mikroişlemci Sistemleri
DOSYA BÜYÜKLÜKLERİ İkili Sistem Dosya Büyüklükleri ve Hesaplamalar
Bilgisayar Donanım ve Sistem Yazılımı
STORAGE BÜŞRA KARADENİZ
Bilgisayar Donanım ve Sistem Yazılımı
BİLGİSAYAR NEDİR ? Samet AYDEMİR Metin KARAARSLAN
Bilgisayar Sisteminin Anatomisi
NİŞANTAŞI ÜNİVERSİTESİ
FI – Finansal Muhasebe Genel Sunumu
Prof. Dr. Eşref ADALI Doç. Dr. Şule Gündüz Öğüdücü Sürüm-B
Bilgisayar Mühendisliğine Giriş
MİKROİŞLEMCİLER VE MİKROBİLGİSAYARLAR
Prof. Dr. Eşref ADALI Doç. Dr. Şule Gündüz Öğüdücü Sürüm-B
Tolga Ayav, K.Atilla Toker İzmir Yüksek Teknoloji Ensitütüsü
NİŞANTAŞI ÜNİVERSİTESİ
DERS 13 PIC 16F84 ile DONANIM SAYICI KULLANIMI
Temel Kavramlar Bilgisayar Çalışma Mantığı
Bilgisayar Bilimi Koşullu Durumlar.
BİLİŞİM TEKNOLOJİLERİ VE YAZILIM DERSİ
NİŞANTAŞI ÜNİVERSİTESİ
İŞLETİM SİSTEMİ KATMANLARI (Çekirdek, Kabuk ve diğer temel kavramlar)
Prof. Dr. Eşref ADALI Doç. Dr. Şule Gündüz Öğüdücü Sürüm-B
Bilgi Teknolojileri Hafta 01
Bilgisayar Donanımı BELLEKLER –ROM.
Bilgisayar II 8 Mart Mart
Bölüm 4 Seçme Komutları Koşul İfadesi if Komutu Bileşik Komut
NİŞANTAŞI ÜNİVERSİTESİ
İşlemciler.
Pedagojİk Formasyon Sertifika programI ÖĞRETİM İLKE VE YÖNTEMLERİ Hafta V Prof.Dr.Bülent ÇAVAŞ.
Hata ayıklama da denilen programlama hatalarını bulma ve düzelme işlemine ne denir? a) Veri b) Yazılım c) Bug d) Debugging e) Donanım.
NİŞANTAŞI ÜNİVERSİTESİ
BLM113 Bilgisayar Bilimlerine Giriş
Veri Saklama Birimleri
Bölüm 4 Seçme Komutları Koşul İfadesi if Komutu Bileşik Komut
NİŞANTAŞI ÜNİVERSİTESİ
Önbellek Hafızalar BIL-304: Bilgisayar Mimarisi
Bellek içi raporlama sistemleri için denormalizasyon uygulaması
Sunum transkripti:

Mikroişlemcili Sistem Tasarımı 2. Hafta Bellek Birimleri ve Programlamaya Giriş Yrd.Doç.Dr. Kubilay TAŞDELEN

Mikroişlemcili Sistem Tasarımı Bellekler Bellekler 0 veya 1 değerini alan bitlerin saklanabildiği entegre devrelerdir Dout Din D Q WR EN RD 1 Bit (0 veya 1) saklayabilen temel bellek ünitesi: D Flip Flop D Flip Flop için doğruluk tablosunu hatırlayınız. Mikroişlemcili Sistem Tasarımı

Bellek ünitelerine erişim Satır (Adres) Sütun (Veri) 1x1 Din Dout WR RD EN D Q 1 bitlik hafıza hücresi EN 1x2 EN D7 D6 D5 D4 D3 D2 D1 D0 1x8 1 Bayt EN A0 ? 2 Bayt 2x8 Mikroişlemcili Sistem Tasarımı

Mikroişlemci Sayı sistemi ADDRES Bellek Hücreleri 0 0 0 0 10110111 0 0 0 1 01110001 0 0 1 0 10001001 0 0 1 1 00001011 0 1 0 0 01000100 0 1 0 1 00000000 0 1 1 0 RAM/ROM Kullanılan tüm sayılar ikilik sayı sistemindedir, neden? Donanımın daha basit ve maliyetin az olması Bilgi depolamanın basitliği Mikroişlemcili Sistem Tasarımı

Mikroişlemcili Sistem Tasarımı Örnek Soru: 8 adet bellek ünitesine erişebilmek için kaç adet Adres hattına ihtiyaç duyulur? 2n=8 n=? A0 A1 A2 Bayt 4 Bayt 5 Bayt 6 Bayt 7 3→8 kod çözücü 1 0 0 1 0 1 1 1 0 1 1 1 A2A1A0 Bayt 0 Bayt 1 Bayt 2 Bayt 3 0 0 0 0 0 1 0 1 0 0 1 1 Soru: 65536 adet bellek ünitesine erişebilmek için kaç adet Adres hattına ihtiyaç duyulur? 2n=65536 n=16 (A15.......A0) Mikroişlemcili Sistem Tasarımı

Mikroişlemcili Sistem Tasarımı Bellek Türleri Mikroişlemci iç bellek türleri (8051) Kayıtçılar (registers) Akümülatör (A) B Kayıtçısı R0,R1,R2,R3,R4,R5,R6,R7 ( Bank0..Bank3 ) SP (Yığın İşaretçisi) PSW (Program Durum Kaydedicisi) DPTR (16-bit) PC (16-bit) Diğer özel fonkisyon Kayıtçıları (Mikrodenetleyici) RAM ve ROM (Mikrodenetleyici) Dış Bellek türleri RAM ve ROM ile türevleri Manyetik disk, teyp CD vs. Mikroişlemcili Sistem Tasarımı

CPU Sadeleştirilmiş iç yapısı (8051) Komut Kayıtçısı Program Sayıcı (Instruction Register) (Program Counter) Kayıtçılar (Registers) IR PC Komut Çözme Ve Kontrol Ünitesi Aritmetik ve Lojik işlem Ünitesi Mikroişlemcili Sistem Tasarımı

Mikroişlemcilerde Temel İşlevler Komut Okuma Komut Çözme Çalıştırma Giriş işlemleri Çıkış işlemleri Mikroişlemcili Sistem Tasarımı

Mikroişlemcili Sistem Tasarımı Komut Yapsı Mnemonics Kayıtçı Adı İvedi Adresleme MOV A, #55h Anlamı: A←55h 0111 0100 + 0101 0101 (74) + (55) 2 Byte Opcode Operand Mikroişlemcili Sistem Tasarımı

Mikroişlemcili Sistem Tasarımı Örnek 8051 Komutları 8051 komut setleri bayt adedine göre üçe ayrılır: Tek baytlık komutlar İki baytlık komutlar Üç baytlık komutlar SORU: Komutun bayt sayısı çalıştırma hızını etkiler mi? Mnemonics Opcode + operand Anlam Cycle Bayt Adedi NOP 0000 0000 İşlem Yok 1 INC A 0000 1000 A=A+1 MOV A,#55h 0111 0100 + 0101 0101 (74 55) A←55h 2 MOV A,#0xAA 0111 0100 + 1010 1010 (74 AA) A←AAh MOV DPTR,#55AAh 1001 0000 + 0101 0101 (90 55 AA) DPTR←55AAh 3 Tüm komutların listesi için: philips_80C51 Family Programmer's Guide .pdf Mikroişlemcili Sistem Tasarımı

CPU Komut İşleme Senaryosu (MOV A,#55h) Bayt 65535 FFFF Bayt 3 0003 Bayt 2 0002 0 1 0 1 0 1 0 1 0001 0 1 1 1 0 1 0 0 0000 Mikroişlemcili Sistem Tasarımı

CPU Komut İşleme Senaryosu (MOV A,#55h) Program Sayıcı “Opcode”un adresini tutar Adres “Adres yolu” na verilir Operand adresi adres yoluna verilir Adres Yolu CPU PC Veri Yolu IR Bayt 65535 FFFF Kayıtçılar (Registers) Bayt 3 0003 Komut Çözme Ve Kontrol Ünitesi Bayt 2 0002 A 0 1 0 1 0 1 0 1 0001 Operanda ulaşılır ve bilgi “Veri yolu” na iletilir 0 1 1 1 0 1 0 0 74h 0000 55h Opcode çözülür ve “ MOV A,” olduğu anlaşılır Opcode’a ulaşılır ve Kod bilgisi “Veri yolu” na iletilir Veri yolundaki bilgi A kayıtçısına gönderilir Komut İşlemci içindeki “Komut Kaydedicisine aktarılır. Mikroişlemcili Sistem Tasarımı

Mikroişlemcili Sistem Tasarımı KAYITÇILAR Mikroişlemcili Sistem Tasarımı

Accumulator, A Kayıtçısı Verilerin bellek ve kayıtçılar arası transferinde Veri üzerinde mantıksal ve aritmetik işlemlerin gerçekleştirilmesinde kullanılır 8 Bit Uzunluğundadır Mikroişlemcili Sistem Tasarımı

Mikroişlemcili Sistem Tasarımı B Kayıtçısı Geçici verilerin depolandığı bir kaydedicidir MOV B, A ;B ← A (2 byte) MOV B,#55 ;B ←55 MUL AB ; A ve B kaydedicilerini çarp Sonuc 16-bit: Sonuc_L=A, Sonuc_H=B DIV AB ; A’yı B’ye böl Bölüm=A, Kalan=B Mikroişlemcili Sistem Tasarımı

Program Status Word (PSW) BIT SEMBOL ADRES BİT TANIMI PSW.7 CY D7H Elde bayrağı PSW.6 AC D6H Yardımcı elde bayrağı PSW.5 F0 D5H Bayrak 0 PSW.4 RS1 D4H Bank seçme 1 PSW.3 RS0 D3H Bank seçme 0 00 = bank 0; adres 00H-07H 01 = bank 1; adres 08H-0FH 10 = bank 2; adres 10H-17H 11 = bank 3; adres 18H-1FH PSW.2 OV D2H Taşma bayrağı PSW.1 - D1H PSW.0 P D0H Çift eşlik biti (Even Parity bit) Mikroişlemcili Sistem Tasarımı

Program Status Word (PSW) Aritmetik işlemler sonucundaki değişen bayraklar CY: Carry Flag (Elde Bayrağı) Aritmetik işlemlerde bir elde ortaya çıktığında kurulur AC:Auxillary Carry (Harici Elde Bayrağı) D3 bitinden D4 bitine elde geçtiğinde kurulur, BCD işlemlerde kullanılır P: Parity (Eşlik biti) Çift eşlik (even) biti P=1, Akümülatör tek sayıda birlere sahipse Mikroişlemcili Sistem Tasarımı

Mikroişlemcili Sistem Tasarımı Örnek Toplama örneği MOV A,#12h ADD A,#3Fh 12  0001 0010 3F  0011 1111 CY = 0 AC = 1 P = 1 + + 5 1 0101 0001 Mikroişlemcili Sistem Tasarımı

Mikroişlemcili Sistem Tasarımı Kayıtçı Deposu (R0..R7) R0’dan R7’ye kadar toplam 8 kaydedici MOV A,R0 ;R0 kaydedicisini A kayıtçısına kopyala (1 byte) R0-R7 kaydedici grubları (Bank0..Bank3) RS0 PSW.3 RS1PSW.4 RS1 RS0 R-BANK Bank 0 1 Bank 1 Bank 2 Bank 3 MOV PSW, #18h ; Bank 3 seçildi MOV PSW, #08h ; Bank 1 seçildi 4 kayıtçı deposu ardışık adreslerdedir 4 kayıtçı deposu toplam 32byte Bank 0 varsayılan (Reset sonrası seçilen) banktır. Mikroişlemcili Sistem Tasarımı

Mikroişlemcili Sistem Tasarımı Örnek Bit Adres Bayt Adres FF F0 F7 F6 F5 F4 F3 F2 F0 F1 B E0 E7 E6 E5 E4 E3 E2 E0 E1 ACC MOV A,R7 D0 D7 D6 D5 1 D4 1 D3 D2 - D0 PSW SETB RS0 SETB RS1 MOV A,R7 = MOV A,0x1F MOV A,R7 (1 byte) MOV A,0x07 (2 byte) 1F 18 BANK 3 17 10 BANK 2 0F 08 BANK 1 İlk Kayıtçı Bankası R0-R7 07 00 Mikroişlemcili Sistem Tasarımı

Veri İşaretçisi (DPTR) 8051 2 adet 16-bit kaydedici içerir DPTR 16-bittir Harici belleğin veya kod alanının Adresini tutar Harici bellekten veya kod alanından veri transfer için kullanılır 16-bit veri depolama için de kullanılabilir Başvuru tablolarında (Look-up Tables) çok kullanışlıdır Dolaylı Adresleme MOV DPTR, #0xFFAA ; DPTR ←FFAAh MOVX A, @DPTR ; ACU ← RAM (FFAA) MOVC A,@A+DPTR Mikroişlemcili Sistem Tasarımı

Mikroişlemcili Sistem Tasarımı Program Sayacı (PC) PC her zaman bir sonraki erişilecek komut adresini tutar 16-bit Uzunluğundadır Bellekten getirilen bir komuttan (1 veya daha fazla bayt) hemen sonra, bir sonraki komutun adresine yükseltilir Sadece MOVC A,@A+PC komutunda kullanılır Sadece okunabilir özelliktedir Mikroişlemcili Sistem Tasarımı

SP (Yığın İşaretçisi, Stack Pointer) Yığın hafızası FILO tipindedir 8051’de yığın adresi artarak büyür (düşük değerli adresten, yüksek değerli adrese doğru) SP, yığındaki son kullanılan adresi gösterir Pop veriyi alır daha sonra SP bir azalır PUSH SP’yi artırır, yeni adrese veriyi kopyalar SP, Reset işleminden sonra 07’ye kurulur Bank 1,2 ve 3 yığının normal depo alanıdır SP, başka bir adrese yönlendirilebilir PUSH ACC ;Akümülatörü yığına kopyala Mikroişlemcili Sistem Tasarımı

Mikroişlemcili Sistem Tasarımı 8051 Komut Seti-1 Veri Transfer Komutları mov, movc, movx, push, pop, xch, xchd Mantıksal İşlem Komutları anl, orl, xrl, clr, cpl, rl, rlc, rr, rrc, swap Aritmetik İşlem Komutları add, addc, subb, inc, dec, mul, div Program Kontrol Komutları jmp, ajmp, ljmp, sjmp, jc, jnc, jb, jnb, jbc, jz, jnz, acall, lcall, cjne, djnz, ret, reti NOP Mikroişlemcili Sistem Tasarımı

Mikroişlemcili Sistem Tasarımı Önemli Assembly programı yazarken: Bütün komutları hatırlamak zorunda değilsiniz Sadece komutları mantıksal gruplara böl Komut setini önünüze koyarak, yapılmak istenen işi hangisinin hangi komutun veya komut grubunun yaptığını tespit et Her komutun farklı kaydedici ile çalıştırılması mümkün değildir MOV A,@DPTR (DOĞRU) MOV R0, @DPTR (YANLIŞ) Mikroişlemcili Sistem Tasarımı

Mikroişlemcili Sistem Tasarımı Çalışma Soruları Mikroişlemcileri farklı açılardan gruplandırınız. 8051 de kullanılan genel kaydediciler hangileridir? Komut seti nedir? Assembly dilinin genel özellikleri nelerdir? Mikroişlemcili Sistem Tasarımı