foto

Bilgisayar Mühendisliğine Giriş

Mikroişlemciler nedir?

-Mantıksal işlem yapabilme birimlerinden oluşur.(CPU)

-Mikrodenetleyicileri oluşturan önemli parçalardandır.

-Mikrodenetleyicilerden daha büyük işlemleri ve veri akışını sağlayabilecek entegrelerdir.

MİKRODENETLEYİCİLER

-Üzerlerinde mantıksal birim bulundururlar.

-Kendi ram,rom,I/O sistemlerine sahip programlanabilen entegrelerdir.

-Kısaca mikroişemcileri içinde barındıran sistemlerdir.

FARKLARI

Mikroişlemci

-CPU tek başınadır, ram, rom, ı/o, timer ayrık birimlerdir.

-Rom, ram ve ı/o kullanıcı tarafından belirlenir.

-Komut sayısı 100 den fazla

-Genel amaçlıdır.

-Pahalıdırlar

-Çok yönlüdürler

Mikrodenetleyici

-Cpu,ram,rom,ı/o ve timer birimleri tek bir chip içerisindedir.

-Chip üzerindeki rom,ram,ı/o port sayıları sabittir.

-Çoğunlukla özel amaçlı

-Maliyet,enerji ve yer bakımından önemli olan uygulamalarda tercih edilirler.

GÖMÜLÜ SİSTEMLER-EMBEDDED SYSTEMS

-Gömülü sistemler herhangi bir cihazın içinde bulunan ona çevresiyle iletişim kurabilme yeteneği veren sistemlerdir.

-Çevremizde gördüğümüz hemen hemen çoğu elektronik cihazın içinde bulunurlar.

MİKRODENETLEYİCİLERDE SEÇİM KOŞULLARI

-Maliyet

-Çalışma hızı

-I/O Port sayısı

-Bellek büyüklüğü

-Zamanlayıcı ve sayıcı miktarı

-Analog/Dijital Dönüştürücü

-Captura-Compare-PWM Özelliği

NEDEN PIC MİKRODENETLEYİCİSİ?

-PIC(Peripheral Interface Controller yada Programmble Intelligent Computer) kısaltmasıdır.

-Microchip firması tarafından RISC mimarisi ile üretilmiştir.

-Günümüzde kullanılan en yaygın mikrodenetleyicilerdir.

-Bunun nedeni Microchip firmasının yazılım ve yardım desteğinin olması aynı zamanda kolay ve ucuza bulunabilmesidir.

F HARFİ: Flash tipinde derleyicidir. Defalarca yazılıp silinebilir.

C HARFİ: OTP tipinde derleyicidir. Bir kez programlanabilir.

L HARFİ: Low Voltage yani düşük voltajla çalışabilen denetleyicidir.

CR HARFİ: ROM tabanlı denetleyicidir. Yalnızca bir kez programlanabilir.

PIC PROGRAMLAMA DİLLERİ

-PIC ASSEMBLY – MPLAB

-PIC C-CCS-HİTECTH-MİCRO C vb. -PIC BASIC – MicrocodeStudio – MicroBasic vb.

BELLEK ÇEŞİTLERİ

ROM: (READ ONLY MEMORY) Sadece okunabilen bellektir. Yalnızca bir kez kodlanabilir değiştirilmemek için yazılmıştır.

OTP ROM: (One Time Programmable Rom) Yalnızca bir kez programlanabilme hakkı olan belleklerdir.

UV EPROM: (UV Erasable Programmable Rom) UV ışığı altında tam olarak silinebilir belleklerdir.

EEPROM: (Eletrically Erasable Programmable Rom) Elektriksel olarak silinebilen yalnızca okunabilen belleklerdir.

Flash: Teorikte sınırsız sayıda silinip yazılabilen belleklerdir.

OSİLATÖR

-Osilatörler elektronik devrelerde kare,üçgen,testere dişli gibi sinyaller üretmeye yarayan elektronik düzeneklerdir.

LP MOD: 4 Mhzden küçük kristal osilatör

XT MOD: 4 Mhz veya 4 Mhzden küçük osilatör

HS MOD: 4 Mhzden büyük kristal osilatör

RESET

-Mikrodenetleyicilerin MCLR Pinine sinyal uygulandığında denetleyici resetlenir ve içindeki programları baştan başlatır.(bu harici uygulamadır.)

-İstenildiği takdirde dahili reset de üretilebilir.

-Güç kaynağı açıldığında oluşan kararsız durum nedeniyle (gerilim sıçraması,yavaş gerilim yükselmesi, clock frekansının dengelenmesi) reset oluşur. Bundan dolayı bir zaman gecikmesi kullanılır. Bu gecikme için PWRT veya OST zamanlayıcısı kullanılır.

-PWRT program yazılırken etkin ya da pasif yapılabilir.

POWER UP

-Güç kaynağı gerilimi 1.2v ile 1.7v aralığında kararsız durum meydana gelir. Bu durumdan kurtulmak için denetleyici 72ms resetlenir daha sonra osilatör start-up isimli  bir başka zamanlayıcıda tetiklenerek 1024 pals bekler ve en sonunda sabit bir çıktı elde edilerek denetleyicinin normal çalışması sağlanır.

BROWN OUT (BOR)

-BOR programlama yapılırken konfigürasyon bitleri ile açılıp kapatılabilir.

-Besleme gerilimi çalışma geriliminden yaklaşık olarak 4v aşağı düşer ve bu düşme yine yaklaşık olarak 100ms devam ederse denetleyici sıfırlanır ve besleme gerilimine gelinceye kadar da reset durumda kalır.

YOL (BUS) SİSTEMLERİ

-Mikroişlemci üstündeki elemanların birbiriyle haberleşmesi için gerekli olan hatlara yol(bus) denir.

-Üç çeşit yol vardır.

ADRES YOLU: Veri transferinde kullanılan yollardır. Tek yönlüdür. Mikroişemciden hafızaya ya da giriş çıkış birimlerine doğrudur.

VERİ YOLU: Veri bilgisinin taşındığı yollardır. İki yönlüdür. Mikroişlemciden giriş çıkış pinlerine, giriş çıkış pinlerinden mikroişlemciye, hafızadan mikroişlemciye doğrudur.

KONTROL YOLU: Mikroişlemci ile diğer elemanlar arasındaki iletişim ve senkronizasyonu sağlayan birimdir. Tek yönlüdür. Mikroişlemciden diğer elemanlara doğru iletişim gerçekleşir.

MİKRODENETLEYİCİ MİMARİSİ

-Mikrdenetleyiciler iki farklı kategoriye göre sınıflandırılırlar.

-Hafıza organizasyonu açısından; Harvard – Von Nuemann

-Komut işleme açısından; Risc-Cisc

HARVARD

-Veri ve program alanı farklı hafıza haritası üzerindedir.

-Hızlıdır.

-Bu mimaride program kodları ve veriler farklı bellek bloklarındadır.

-İşlem hızı yüksektir.

-Az sayıda komut vardır. -Bu mimari yapıdaki ilk bilgisayar “Harvard Mark 1”1944’te çalıştırılmıştır.

HARVARD

VON NUEMANN

-Veri ve program alanı aynı hafıza haritasında bulunur.

-Bu sistem bilgisayarlarda kullanılan standart sistemlerdir.

-Bu mimaride kodlar, veriler aynı bellek bloğu içerisindedir.

-İşlem hızı düşüktür.

-Çok fazla sayıda komut vardır.

-Bu mimari pentiumXlerde kullanılmakta ayrıca ilk apple Macintoshlarda da kullanılmıştır.

Von Nuemann

RISC (Azaltılmış Komut Setli)

-Assembly dilindeki her komut kullanılmamış basit kısa ve hızlı komutlar kullanılarak daha  verimli bir sistem elde edilmiştir. Sadece en çok kullanılan komutlar bulunmaktadır.

-Bu sistemlerde çipler karmaşık değillerdir. -Fakat az sayıda komut olması daha fazla komut satırı yazılmasına neden olmaktadır.

CISC (Karmaşık Komut Setli)

-Çok sayıda komut içermektedir neredeyse her olay için bir komut vardır. Bu işlemleri hızlandırır fakat donanım yükünü önemli ölçüde arttırır.

-Yapıları karmaşıktır. Kod çözücü ve kodlayıcı gibi devrelere ihtiyaç duyulur.

CPU (Central Processor Unit)

-İçerisinde mantıksal işlemlerin gerçekleştirildiği ALU(Arimetrik Mantık Birimi) bulundurur.

-ALU içerisinde toplama(add), çıkarma(sub), sağ ve sol bitlerinin yerini değiştirici(swap), kaydırma(shift) ve döndürme(rotate) işlemlerini yapan birimler bulunur. Ayrıca and,or,xor gibi mantıksal işlemleri gerçekleştiren kapılar da bulunur.

-ALU’daki işlemler W kayıtçısına ya da belirtilen hedef kayıtçısına yüklenirler.

W KAYDEDİCİSİ

-Genel amaçlı kaydedicir.

-8 bit genişliğinde ve CPU’daki herhangi bir veriyi transfer etmek için kullanılır.

STATUS KAYDEDİCİ

-Programın akıışını kontrol eden kaydedicidir.

-İşlem durumlarını bize bildirir. ÖRN: TIME OUT BİRİ O; POWER DOWN BİTİ 1; olduğunda WDT sayacı ile RESET gibi

ASSEMBLY

Assembly Dili ve Özellikleri

-Her bir komu, gerçekleştirdiği işleve karşılık gelen İngilizce kelimenin (mnemonic-anımsatıcı) ile ifade edilir.

-Her bir kısaltma, makine dilindeki farklı bir dizisine karşılık gelmektedir.

-MOV A, #55 ; Akümülatöre 55 değerini yükle

-Assembly dilini kullanarak uygulama geliştirmek makine diline(ikili sayı sistemine) göre daha kolaydır.

-C, Basic, Pascal vb. gibi yüksek seviyeli dillerde program yazmaya nazaran daha zordur.

ASSEMBLY DİLİNİN AVANTAJLARI

-Donanım hakkında fazla fazla detay bilmeyi gerektirir. Bu bir programcı için dezavantaj gibi görülse de üzerinde çalışılan donanım hakkında tasarımcıya önemli bilgi birikimi sağlar.

-Özel donanım ihtiyaçları üzerinde daha fazla kontrol sağlar.

-Yüksek seviyeli dillere göre daha küçük, daha az yer kaplayan ve daha hızlı icra edilebilir kodlar üretilebilir.

PROGRAM FORMATI

Etiket Alanı

-Komut satırının ilk bilgisidir ve sembolik isimlerden oluşur.

-Program içerisindeki belirli işlevlerin gerçekleştiği bölümlerin başlangıcını göstermek amacı ile kullanılır.

-Program içerisinde istenilen kısma kolaylıkla dallanılmasını sağlar.

-Etiket ismi olarak mikroişlemci komut setinde tanımlı ola bir komut ismi verilemez.

-Etiket bir harf ile başlamak zorundadır.

Komut

-Mnemonic tabanlı komut seti içerisinde mikroişlemcinin belirli bir işi yapmasını sağlayan tanımlanmış kısaltmalardır.

-Komut alanına etiketten sonra 1 boşluk ya da sekme(tab) girilir.

İşlenen(operand)

-Bu alan, işlemciye işlenecek veriyi ya da verinin nerede olduğunu gösterir.

-Tek başına bir anlam ifade etmez.

-Genelde komutun etki edeceği hedef ve kaynak bilgisini içerir. Hedef ve kaynak bilgisi birbirinden virgül ile ayrılır.

Assembly dilinde sayı sistemlerinin kullanımı

Açıklama Satırı

-Assembly dili (;) ile başlayan satırları açıklama satılı olarak kabul eder.

-Bu satıları yorumlamaz ve makine kodu üretmez.

-Yazılan uygulamanın anlaşılırlığını arttırır.

YÖNERGELER

ORG

-Kod bellek içerisinde programın başlangıç adresini belirtmek için kullanılan adres konumlandırma talimatıdır.

-ORG ’Adres’ şeklinde kullanılır.

-Bir program içerisinde birden fazla ORG komutu kullanılabilir.

END

-Programın bittiğini gösteren talimattır.

DB(Define Byte)

-Kod bellek içerisinde sayı ve kelime (string) dizilerinin tanımlanmasını sağlar.

EQU

-EQU(Equal=eşittir) bir sayısal değerin istenilen sembol adına atanması işlemini gerçekleştirir.

-Bu tanımlama program içerisinde bir ifadenin ya da değerinin çok fazla tekrar edildiğinde programın anlaşılırlığını arttırmak için kullanılır.

KOMUT TÜRLERİ

-8051’de de kullanılan komutlar 8-bit işkoduna sahiptir.

-8-bir işkodu 2^8 = 256 farklı komuta imkan tanır ve 8051’de toplam 255 komut tanımlıdır.

-8051 komut kümesi 1,2 ya da 3 bayt uzunluğunda komutlardan meydana gelmektedir.

-Komut kümesini oluşturan 255 komutun 139’u 1 bayt, 92’si 2 bayt ve 24’ü 3 bayttır.

-8051 komut kümesi beş ana başlık altında incelenebilir:

            -Aritmetik komutlar

            -Mantıksal komutlar

            -Veri transfer komutları

            -Bit işlem komutları

            -Program dallanma komutları

Aritmetik Komutlar

-Toplama, çıkarma, artırma, azaltma, çarpma, bölme ve onluk tabana uyarlama komutlarından oluşmaktadır.

Mantıksal Komutlar

-Lojik işlem komutları VE,VEYA,Özel VEYA, sola ve sağa döndürme komutları ile akünün 4’lüklerinin (nibble) yerini değiştirme komutundan meydana gelmektedir.

Veri Transfer Komutları

-Bellekten veya G/Ç portlarından saklayıcılara ya da saklayıcılardan belleğe veri taşımak için kullanılırlar.

-8051’de kullanılan veri transfer komutları 3 başlık altında toplanabilir.

            -Dahili veri  belleğine erişmek için kullanılanlar.

            -Harici veri belleğinde erişmek için kullanılanlar.

-Program belleğine ya da bakış tablolarına (look-up table) erişmek için kullanılanlar.

Dahili veri belleği transfer komutları

Harici Veri Belleği Transfer Komutları

Program Belleği Transfer Komutları

Bit-İşlem Komutları

Program Dallanma Komutları

-Şartsız dallanma

-Şartlı dallanma

-Alt program çağırma ve alt programdan dönme komutları

Şartsız Dallanma Komutları

Şartlı Dallanma Komutları

Alt Program Çağırma ve Alt Programdan Dönme Komutları

NETWORK

Network Nedir?

Network Çeşitleri

Network Cihazları

KABLO TÜRLERİ

ETHERNET KABLO KATEGORİLERİ

TOPOLOJİ

TCP VE OSI

TCP

UDP

IP ADRESİ

IP Subnet ve Supernet

YAZILIM GELİŞTİRME DÖNGÜSÜ

İHTİYAÇLAR

DESIGN

GERÇEKLEŞTİRİM

TEST

BAKIM

YAZILIM SÜRÜMLENDİRME VERSIONING

YAZILIM GELİŞİTİRME METOTLARI

1 Yorum

  1. Necat 19 Ocak 2021

Yorum Yap