Mikroişlemciler. Giriş



Benzer belgeler
Mikroişlemciler. Giriş

Veri Yapıları ve Algoritmalar. Giriş

Veri Yapıları ve Algoritmalar. Giriş (Genel Tanımlar ve Kavramlar) Dr. Öğr. Üyesi M. Ozan AKI

MTM 305 MĠKROĠġLEMCĠLER

W SAYAC SAYAC SAYAC. SAYAC= ise, d=0 W

BÖLÜM 3 3. PIC 16F8X KOMUTLARI 3.1.KULLANILAN SEMBOLLER: 3.2.KOMUTLAR VE KULLANIM ÖRNEKLERİ

KOMUT AÇIKLAMALARI VE ÖRNEKLERİ

Özet DERS 5. Şu ana kadar bilmeniz gerekenler... İşaretsiz Çarpma. Bayraklardaki Durumlar. İşaretli Çarpma

b) Aritmetik İşlem Komutları

8086 Mikroişlemcisi Komut Seti

Mikroişlemci: Merkezi işlem biriminin fonksiyonlarını tek bir yarı iletken tümleşik devrede birleştiren programlanabilir sayısal elektronik devre

# PIC enerjilendiğinde PORTB nin 0. biti 1 olacak #PIC enerjilendiğinde PORTA içeriğinin tersini PORTB de karşılık gelen biti 0 olacak

Quiz:8086 Mikroişlemcisi Mimarisi ve Emirleri

Deney No Deney Adı Tarih. 3 Mikrodenetleyici Portlarının Giriş Olarak Kullanılması / /201...

YILDIZ TEKNİK ÜNİVERSİTESİ ELEKTRİK - ELEKTRONİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ. EasyPic6 Deney Seti Kullanım Kılavuzu

PIC16F877A nın Genel Özellikleri

1. PORTB ye bağlı 8 adet LED i ikili sayı sisteminde yukarı saydıracak programı

Mikrobilgisayar Mimarisi ve Programlama

16F84 ü tanıt, PORTB çıkış MOVLW h FF MOWF PORTB

MİKRO DENETLEYİCİLER II DERS NOTLARI (VİZE KONULARI) Prof. Dr. Hakan Ündil Bahar-Vize

DERS 7 PIC 16F84 PROGRAMLAMA İÇERİK. PIC 16F84 örnek programlar Dallanma komutları Sonsuz döngü

MİKROBİLGİSAYAR SİSTEMLERİ. Teknik Bilimler Meslek Yüksekokulu

Mikroişlemciler Ara Sınav---Sınav Süresi 90 Dk.

MIKROBILGISAYARLAR ve PIC PROGRAMLAMA TEST ÇALIŞMA SORULARI

PİC BASİC PROFESSİONAL

5. BÖLÜM - DÖNGÜ (ÇEVRİM) ve Z BAYRAĞI

Mikrobilgisayar Mimarisi ve Programlama

BİLGİSAYARIN TARİHÇESİ Tarihsel olarak en önemli eski hesaplama aleti abaküstür; 2000 yildan fazla süredir bilinmekte ve yaygın olarak

Mikrobilgisayar Sistemleri ve Assembler

Dr. Feza BUZLUCA İstanbul Teknik Üniversitesi Bilgisayar Mühendisliği Bölümü

Bilgisayar Mühendisliğine Giriş. Yrd.Doç.Dr.Hacer KARACAN

UYGULAMA 05_01 MİKRODENETLEYİCİLER 5.HAFTA UYGULAMA_05_01 UYGULAMA_05_01. Doç.Dr. SERDAR KÜÇÜK

BİLİŞİM TEKNOLOJİLERİ

Mikroişlemciler Laboratuar Deney Föyü

MİKRODENETLEYİCİLER II DERS NOTLARI Prof. Dr. Hakan ÜNDİL Bahar-FİNAL KISMI

Komut Seti Mimarisi (ISA)

1. Ders Giriş. Mikroişlemcili Sistem Uygulamaları

MİKRO DENETLEYİCİLER II DERS NOTLARI (Vize) Prof. Dr. Hakan Ündil Bahar

MİKROİŞLEMCİLER VE MİKRO DENETLEYİCİLER 2 DERS NOTLARI Prof. Dr. Hakan Ündil Bahar-Final

B.Ç. / E.B. MİKROİŞLEMCİLER

LCD (Liquid Crystal Display )

BİLGİSAYAR SİSTEMLERİ

# PIC enerjilendiğinde PORTB nin 0. biti 1 olacak #PIC enerjilendiğinde PORTA içeriğinin tersini PORTB de karşılık gelen biti 0 olacak

Mikroişlemci Nedir? Mikrodenetleyici Nedir? Mikroişlemci iç yapısı Ders Giriş. Mikroişlemcili Sistem Uygulamaları

BİLGİSAYAR MİMARİSİ. Komut Seti Mimarisi. Özer Çelik Matematik-Bilgisayar Bölümü

MİKRODENETLEYİCİLER 2 DERS NOTLARI Prof. Dr. Hakan ÜNDİL Bahar-Final Kısmı

MTM 305 MĠKROĠġLEMCĠLER

Bölüm 5: ARITMETIK VE MANTIK IŞLEM YAPAN KOMUTLAR

ONDOKUZ MAYIS ÜNİVERSİTESİ

İSTANBUL TİCARET ÜNİVERSİTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ MİKROİŞLEMCİLİ SİSTEM LABORATUARI İKİLİ TABANDA ÇOK BAYTLI ÇARPMA

Assembly Programlama Dili T e m m u z

Mikroişlemcili Sistemler ve Laboratuvarı 8.Hafta

IŞIĞA YÖNELEN PANEL. Muhammet Emre Irmak. Mustafa Kemal Üniversitesi Mühendislik Fakültesi. Elektrik-Elektronik Mühendisliği Bölümü

MİKROİŞLEMCİ MİMARİLERİ

İstanbul Teknik Üniversitesi IEEE Öğrenci Kolu

KBÜ. TBP111 Bilgisayar Donanımı. Öğr. Gör. Dr. Abdullah ELEN KARABÜK ÜNİVERSİTESİ.

KONFİGÜRASYON BİTLERİ

80x86 MICROPROCESSOR Instructions

Mimari Esaslar. Mikroişlemcinin mimari esasları; Kaydediciler Veriyolları İş hatları dır.

Prepared By IcEN. >> IcEN. Bu makalemizde 80x86 gerçek mod komutlar inceleyece iz.

LCD (Liquid Crystal Display)

KOMUT TABLOSU İLE İLGİLİ AÇIKLAMALAR:

Bank değiştirme Bir banktan diğerine geçmek için STATUS register denilen özel registerin 5. ve 6. bitinin durumunu değiştirmek gerekir.

İçİndekİler. 1. Bölüm - Mİkro Denetleyİcİ Nedİr? 2. Bölüm - MİkroDenetleyİcİlerİ Anlamak

Hacettepe Robot Topluluğu

Bilgisayar Mimarisi Nedir?

Assembly. Programlama Dili. T e m m u z

BSF STATUS,5 ;bank1 e geçiş CLRF TRISB ;TRISB= BCF STATUS,5 ;bank0 a geçiş

Bilgisayar Mimarisi ve Organizasyonu Giriş

MTM 305 MİKROİŞLEMCİLER

T.C. MİLLİ EĞİTİM BAKANLIĞI MEGEP (MESLEKİ EĞİTİM VE ÖĞRETİM SİSTEMİNİN GÜÇLENDİRİLMESİ PROJESİ) BİLİŞİM TEKNOLOJİLERİ MİKRODENETLEYİCİLER 1

8. MİKROİŞLEMCİ MİMARİSİ

MİKRODENETLEYİCİLER II DERS NOTLARI Prof. Dr. Hakan ÜNDİL Bahar-FİNAL KISMI

EEM 306 Mikroişlemciler ve Lab. Doç.Dr. Mehmet SAĞBAŞ

PIC Mikrodenetleyiciler. Hazırlayan:Öğr.Gör.Bülent ÇOBANOĞLU 1

ELEKTRİK-ELEKTRONİK TEKNOLOJİSİ

Embedded(Gömülü)Sistem Nedir?

Bölüm 4 Veri Aktarma Komutları

x86 Ailesi Mikroişlemciler ve Mikrobilgisayarlar

MIKRODENETLEYICILER. Ege Üniversitesi Ege MYO Mekatronik Programı

PIC MİKRODENETLEYİCİ KULLANARAK BİR SİSTEMİN TELEFONLA UZAKTAN KONTROLÜ

Mikroişlemcili Sistemler ve Laboratuvarı 6.Hafta

Bahar Dönemi. Öğr.Gör. Vedat MARTTİN

Program Kontrol Komutları. Mikroişlemciler ve Mikrobilgisayarlar 1

EA-16F877 Mikrodenetleyici Eğitim Seti. Kullanım ve Uygulama Kitabı. Eyüp ÖZAVCI

BİLGİSAYAR MİMARİSİ. Bilgisayar Bileşenleri Ve Programların Yürütülmesi. Özer Çelik Matematik-Bilgisayar Bölümü

Giris {\} /\ Suhap SAHIN

Mikroişlemciler. Alper Bayrak Abant İzzet Baysal Üniversitesi Bolu

MAK 1005 Bilgisayar Programlamaya Giriş. BİLGİSAYARA GİRİŞ ve ALGORİTMA KAVRAMI

Jalv2 ile PIC Programlama 1.BÖLÜM. Sercan TEK. Temmuz Temel JALv2 Kavramları

ESM-361 Mikroişlemciler. 1. Hafta Ders Öğretim Üyesi Dr.Öğr.Üyesi Ayşe DEMİRHAN

Giriş MİKROİŞLEMCİ SİSTEMLERİ. Elektronik Öncesi Kuşak. Bilgisayar Tarihi. Elektronik Kuşak. Elektronik Kuşak. Bilgisayar teknolojisindeki gelişme

Günümüz. Intel Core i nm teknolojisi 1.86 Milyar tranzistör. Intel Core i nm teknolojisi 1.4 Milyar tranzistör

C++ Programming: Program Design Including Data Structures, Third Edition. Bölüm 1: Bilgisayarlar ve Programlama Dillerine Kısa Bakış

Bu yürütme, Prof. Dr. Hakan ÜNDİL (Bir haftalık derse ait ders notudur)

Sistem Gereksinimleri: Uygulama Gelistirme: PIC Mikroislemcisinin Programlanmasi: PIC Programlama Örnekleri -1

ÖĞRENME FAALİYETİ-1 1. MİKRODENETLEYİCİ PROGRAMI YAZMA

3.2 PIC16F84 Yazılımı PIC Assembly Assembler Nedir?

İSTANBUL TİCARET ÜNİVERSİTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ MİKROİŞLEMCİLİ SİSTEM LABORATUVARI KESMELİ GİRİŞ/ÇIKIŞ

ncü Bilgi İşleyen Makine Olarak Beyin Beyin 2005 Albert Long Hall, Boğazi

Transkript:

Mikroişlemciler Giriş Öğr. Gör. M. Ozan AKI r1.0

Mikroişlemcilerin Kısa Tarihçesi Hesaplama makinelerinin temelleri çok eskiye dayanır; İlk olarak Çin de kullanılmaya başlayan Abaküs, tamamen elle çalışan ilk mekanik hesaplama aracı sayılır İlk mekanik hesaplama cihazı 1642 Yılında Fransız Bilim Adamı Blasie Pascal Tarafından Yapılmıştır. Charles Xavier Thomas dört işlem yapabilen ilk ticari hesap makinesini 1820 de geliştirmiştir. Charles Babbage Fark Makinesi adını verdiği ve bir talimat programıyla kumada edilen tam otomatik hesaplama makinesini geliştirmiştir. 1937 Yılında Mark-1 adı verilen ve elektromekanik rölelerle çalışan ilk otomatik hesaplama makinesi olan bilgisayar Howard Hathaway Aiken in yönettiği ekip tarafından geliştirildi.

Mikroişlemcilerin Kısa Tarihçesi 1938 Yılında Lowa State Collage da matematik ve fizik profesörü olan Dr. John Vincent Atanasoff, adı ABC (Atanasoff-Berry Computer) olan ilk elektronik kişisel bilgisayarı tasarladı. Bu çalışmaların ışığında 1940 lı Yıllarda A.B.D. Ordusu tarafından finanse edilen ENIAC projesi yapıldı. Bu, 18000 vaku tüpü ile çalışan 30 ton ve 140 metrekarelik bir bilgisayardı. Saniyede 300 çarpma işlemi yapabiliyordu. Aynı yıllarda John Von Neumann bu bilgisayarlarda ikili (binary) sayı sisteminin kullanılabileceğini gösterdi. 1960 lı yılların başında transistörün keşfiyle elektronik devreler küçüldü, hızlandı ve daha az enerjiyle çalışabildiler. 1965 li yıllarda ise, çok sayıda transistörün çok çüçük bir yüzey üzerinde üretilebilmesine olanak tanıyan Entegre Devre teknolojisi ile ilk mikroişlemciler doğmuş oldu.

Mikroişlemcilerin Gelişimi

Mikroişlemcilerin Gelişimi Intel 4004 (1970) Intel 8086 (1977) Intel 80386 (1985) Intel Core i7 (2010)

Mikroişlemcili Bir Sistemin Yapısı

Bir Mikroişlemcide üç temel birim vardır; Mikroişlemcinin İç Yapısı ALU (Aritmetik Lojik Birim) Registers (Kaydediciler) Control (Kontrol Birimi)

Mikroişlemci ile ilgili Kavramlar Reset Vektörü : Mikroişlemcinin, enerji verildiğinde ilk komutunu alacağı bellek adresidir. (Genellikle 0x0000) Fetch & Execution : Mikroişlemcinin çalışma sırasında komutu bellekten alıp getirmesi & komutun gereğinin yapılması (icra etme) (Pipeline?) Instruction Set : Mikroişlemci Komut Seti ALU (Arithmatic Logic Unit) : Aritmetik ve Lojik işlemlerin yapıldığı birim. Register : Kaydedici, Yazmaç. Mikroişlemcinin içinde, geçici işlem verileri ve sonuçlarının yazıldığı 1 WORD uzunluğundaki bellek bölgeleri

Mikroişlemci ile ilgili Kavramlar Interrupt : Kesme. Donanımsal ya da Yazılımsal olarak bir mikroişlemcinin, program akışını keserek daha önce tanımlanmış başka bir program parçasını işletmesi ve tekrar geri dönmesi için uyarı, dürtme. CISC (Complex Instruction Set Computer) : Karmaşık komut setine sahip bilgisayar, mikroişlemci. Bu sınıftaki mikroişlemciler çok sayıda komuta sahiptir ancak komutların çalışma zamanları daha çok cycle harcar. RISC (Reduced Instruction Set Computer) : Azaltılmış komut setine sahip bilgisayar, mikroişlemci. Bu sınıftaki mikroişlemciler az sayıda komuta sahiptir ancak her komuz çok az sayıda (1 ya da 2) cycle harcar.

Mikroişlemci ile ilgili Kavramlar Flags (PSW Program Status Word) / STATUS Çalışma durumu ve komutların çalışma sonuçları ile ilgili bilgilerin bit olarak tutulduğu kaydedicidir. Instruction Pointer (IP) / Program Counter (PC) Komutları sırasıyla çalışmasını sağlayan sayaçtır. Bu sayaç dallanma komutları ile değiştirilerek komut işleyişinin sırası değiştirilir. (Kaç bit olmalı?)

Mikroişemci 8086 Program Status Word (PSW) Flag Register

Mikroişlemci ile ilgili Kavramlar Frekans, Cycle: Her mikroişlemci, çalışabilmesi için bir saat frekansına (sürekli bir lojik kare dalga) ihtiyaç duyarlar. Bu saat darbelerini üreten devreye osilatör devresi, bunu sağlayan devre elemanına ise kristal denir. Üretilen frekans osilatör frekansına bağlıdır. Her bir komut, belirli sayıdaki saat darbeleri boyunca işlemini tamamlar. Her bir komutun kaç cycle işlem yaptığı ise mikroişlemcinin Instruction Set kataloğunda verilir. T = 1 / F ve F = 1 / T formülünden, her bir cycle (saat darbesi) ne kadar süre olduğu bulunur. Daha sonra her bir komutun cycle zamanı ile çarpılarak bu komutun toplam işletim zamanı bulunabilir.

CISC / RISC Komut Seti CISC (Complex Instruction Set Computer) Örn: 8086/8088 AAA, AAD, AAM, AAS, ADC, ADD, AND, CALL, CBW, CLC, CLD, CLI, CMC, CMP, CMPSB, CMPSW, CWD, DAA, DAS, DEC, DIV, ESC, HLT, IDIV, IMUL, IN, INC, INT, INTO, IRET, JA, JAE, JB, JBE, JC, JCXZ, JE, JG, JGE, JL, JLE, JNA, JNAE, JNB, JNBE, JNC, JNE, JNG, JNGE, JNL, JNLE, JNO, JNP, JNS, JNZ, JO, JP, JPE, JPO, JS, JZ, JMP, LAHF, LDS, LEA, LES, LOCK, LODSB, LODSW, LOOP, MOV, MOVSB, MOVSW, MUL, NEG, NOP, NOT, OR, OUT, POP, POPF, PUSH, PUSHF, RCL, RCR, REP, REPE, REPNE, REPNZ, REPZ, RET, RETN, RETF, ROL, ROR, SAHF, SAL, SAR, SBB, SCASB, SCASW, SHL, SHR, STC, STD, STI, STOSB, STOSW, SUB, TEST, WAIT, XCHG, XLAT, XOR RISC (Reduced Instruction Set Computer) Örn: PIC16F84A ADDWF, ANDWF, CLRF, CLRW, COMF, DECF, DECFSZ, INCF, INCFSZ, IORWF, MOVF, MOVWF, NOP, RLF, RRF, SUBWF, SWAPF, XORWF, BCF, BSF, BTFSC, BTFSS, ADDLW, ANDLW, CALL, CLRWDT, GOTO, IORLW, MOVLW, RETFIE, RETLW, RETURN, SLEEP, SUBLW, XORLW

CISC CMP A,B JB X MOV AX,[A] JMP Z X: MOV AX,[B] Z: MOV [C],AX CISC vs RISC A ve B Bellek adreslerindeki iki sayıyı karşılaştıralım ve büyük olan sayıyı C adresine yazalım RISC MOVF B,W SUBWF A,W BTFSS STATUS,C GOTO X MOVF A,W GOTO Z X: MOVF B,W Z: MOVWF C

Donanım Mimarileri DEP (Data Execution Preventation) Win7: Bilgisayarım -> Özellikler -> Gelişmiş Ayarlar -> Sistem özellikleri -> Advanced - > Performance -> Ayarlar -> Data Execution Prevention

Fiziksel Ortamına Göre Bellek Çeşitleri

Erişim Durumuna Göre Bellek Çeşitleri Analoji: Depo -> Toptancı -> Market, Bakkal -> Dolap, Buzdolabı -> Tabak Bardak

Belleğin Adreslenmesi Register Doğrudan kaydedici adı ile kullanılırlar, bellek adresleri söz konusu değildir. (Instruction Word içerisinde kodlanmıştır) Bellek Bellek adresi ile kullanılırlar. Her adres bir bellek hücresine işaret eder. Her hücre, veriyolu bit sayısı kadar veri saklar

Mikroişlemci Yazılımı (Software) Makine Dili (Machine Language) Komut setlerini oluşturan ikili sayılar doğrudan mikroişlemciye girilebilir. Birleştirici Dil (Assembly) İnsan tarafından okunabilir ve anlaşılabilir OPCODE lar makine diline çevrilir. Kaynak Kod (Source Code) Yüksek seviyeli dillerin kaynak kodlarını makine diline çevirerek object file olarak kaydeder. Compiler (Derleyici) Yüksek seviyeli dillerin kaynak kodlarını makine diline çevirerek object file olarak kaydeder. Cross Compiler (Çapraz Derleyici) Yüksek seviyeli dillerin kaynak kodlarını üzerinde çalıştığı makineden farklı bir işlemcinin makine diline çevirerek object file olarak kaydeder. Linker (Bağlayıcı) Daha önce derlenmiş olan object dosyaları birleştirerek çalıştırılabilir (COM, EXE, BIN, HEX) dosyayı elde eder ve kaydeder.

Mikrodenetleyiciler Mikrodenetleyiciler, mikroişlemcilerin spesifik görevler için özelleştirilmiş halidir. Mikrodenetleyiciler, çalışamaları için gerekli ROM (Flash), RAM, Osilatör gibi birimleri aynı çip üzerinde barındırır. Böylece, neredeyse hiç bir çevre birimine ihtiyaç duymadan çalışabilirler. Ancak mikrodenetleyiciler, hız, bellek ve işlem hacmi bakımından mikroişlemcilerden çok çok küçük boyutlardadır. Mikrodenetleyiciler, özel ve spesifik olarak tanımlanmış görevlerde kullanılırlar. Belirli bir işletim sistemleri olmayabilir,

Mikrodenetleyiciler Yaygın olarak kullanılan mikrodenetleyici üreticileri şunlardır. Microchip PIC -> www.microchip.com Atmel AVR -> www.atmel.com Texas Instruments -> www.ti.com Cypess PSoC -> www.cypress.com Renesas -> www.renesas.eu Philips NXP -> www.nxp.com STMicroelectronics -> www.st.com

Mikrodenetleyicilerin Programlanması DOS/Windows ortamında çalıştırılabilir ikili dosyalar.exe dosyalarıdır. Linux ortamında ise Executable özellikteki ikili dosyalar çalıştırılabilirdir. Mikrodenetleyicilerde ise, derleme ve bağlama işlemlerinden sonra elde edilen çalıştırılabilir dosya.hex ya da.bin ya da.elf dosyalarıdır. Bu dosyaların mikrodenetleyici içerisinde bulunan ROM / Flash belleğe aktarılması gerekir. Bunun için ise programlayıcıler kullanılır.

Programlayıcılar Programlama işlemleri şu şekillerde olabilir; Mikrodenetleyici, bir programlama cihazına takılarak programlanır, ve oradan çıkarılarak tekrar çalışacağı devreye takılır. Mikrodenetleyicinin devre üzeri programlama (In Circuit Serial Programming ICSP, JTAG) uçları kullanılarak devreden hiç sökülmeden programlanır. Daha önce mikrodenetleyiciye yüklenmiş olan bir bootloader kullanılarak HEX dosya seri ya da USB port ile doğrudan programlanır.

Ders ile ilgili Kaynaklar Mikroişlemciler www.intel.com www.amd.com Mikrodetleyiciler www.microchip.com www.atmel.com Arduino www.arduino.cc ozanaki.blogspot.com Proteus (Simülasyon) www.labcenter.com NI Multisim (Simülasyon) www.ni.com Board Şema Çizimi www.fritzing.org