BBM 231 Yazmaçların Aktarımı Seviyesinde Tasarım! Hacettepe Üniversitesi Bilgisayar Müh. Bölümü



Benzer belgeler
Bu derste! BBM 231 Yazmaçların Aktarımı Seviyesinde Tasarım! Yazmaç Aktarımı Düzeyi! Büyük Sayısal Sistemler! 12/25/12

Geçtiğimiz hafta# Dizisel devrelerin tasarımı# Bu hafta# Örnek: Sekans algılayıcı# Örnek: Sekans algılayıcı# 12/11/12

BİL 201 Birleşimsel Mantık (Combinational Logic) Bilgisayar Mühendisligi Bölümü Hacettepe Üniversitesi

Bilgisayar Mühendisligi Bölümü Hacettepe Üniversitesi

Ders hakkında" İletişim" Bu derste" Bellek" 12/3/12. BBM 231 Zamanuyumlu dizisel devreler (synchronous sequential logic)"

Yrd.Doç.Dr. Celal Murat KANDEMİR. Kodlama (Coding) : Bir nesneler kümesinin bir dizgi (bit dizisi) kümesi ile temsil edilmesidir.

EEM122SAYISAL MANTIK SAYICILAR. Elektrik Elektronik Mühendisliği Yrd. Doç. Dr. Hüseyin Sağkol

Bölüm Bazı Temel Konseptler

BBM 231 Zamanuyumlu dizisel devreler (synchronous sequential logic)" Hacettepe Üniversitesi Bilgisayar Müh. Bölümü

T.C. KOCAELİ ÜNİVERSİTESİ TEKNOLOJİ FAKÜLTESİ BİLİŞİM SİSTEMLERİ MÜHENDİSLİĞİ

BLM 221 MANTIK DEVRELERİ

BM-311 Bilgisayar Mimarisi

HDL Dilleri VHDL. Son olarak, spesifik ASIC teknolojisi için devrenin yerleşimi netlist tanımlamalarından gelen diğer araçlarla oluşturulmuş olunur.

KASIRGA 4. GELİŞME RAPORU

FPGA ile Gömülü Sistem Tasarımı (EE 525) Ders Detayları

BM-311 Bilgisayar Mimarisi

BÖLÜM 2 SAYI SİSTEMLERİ

Ders Notlarının Creative Commons lisansı Feza BUZLUCA ya aittir. Lisans:

BLM 221 MANTIK DEVRELERİ

yaratırdı), sayma dizisi içinde, bir bit geçişini tetiklemek için kullanılabilecek, bazı diğer biçim düzenleri bulmak zorundayız:

BILGISAYAR ARITMETIGI

BÖLÜM 10 KAYDEDİCİLER (REGİSTERS) SAYISAL TASARIM. Bu bölümde aşağıdaki konular anlatılacaktır

FPGA ile Gömülü Sistem Tasarımı (EE 525) Ders Detayları

BM-311 Bilgisayar Mimarisi. Hazırlayan: M.Ali Akcayol Gazi Üniversitesi Bilgisayar Mühendisliği Bölümü

SAYISAL ELEKTRONİK. Ege Üniversitesi Ege MYO Mekatronik Programı

AND Komutu. and hedef, kaynak

Yazılan programın simülasyonu için; (A<B), (A>B) ve (A=B) durumunu sağlayacak 2 şer tane değeri girerek modelsimde oluşan sonuçları çiziniz.

Birleşik Devreler ve Kompleks Fonksiyonlar

x86 Ailesi Mikroişlemciler ve Mikrobilgisayarlar

Deney 6: Ring (Halka) ve Johnson Sayıcılar

SAYISAL TASARIM. Ege Üniversitesi Ege MYO Mekatronik Programı

Ders Adı Kodu Yarıyılı T+U Saati Ulusal Kredisi AKTS

DERS 3 MİKROİŞLEMCİ SİSTEM MİMARİSİ. İçerik

Quiz:8086 Mikroişlemcisi Mimarisi ve Emirleri

Deney 2: Flip-Floplar

DSP DONANIMI. Pek çok DSP için temel elemanlar aşağıdaki gibidir.

BILGISAYAR ARITMETIGI

Sayısal Devreler ve Sistemler (EE203) Ders Detayları

İKİLİ SAYILAR VE ARİTMETİK İŞLEMLER

1. Sayıcıların çalışma prensiplerini ve JK flip-floplarla nasıl gerçekleştirileceğini anlamak. 2. Asenkron ve senkron sayıcıları incelemek.

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

SELÇUK ÜNĠVERSĠTESĠ MÜHENDĠSLĠK-MĠMARLIK FAKÜLTESĠ ELEKTRĠK-ELEKTRONĠK MÜHENDĠSLĠĞĠ BÖLÜMÜ LOJĠK DEVRE TASARIM DERS NOTLARI

Bu deney çalışmasında kombinasyonel lojik devrelerden decoder incelenecektir.

Yrd.Doç.Dr. Celal Murat KANDEMİR

DOĞU AKDENİZ ÜNİVERSİTESİ BAHAR BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ BLGM-324 BİLGİSAYAR MİMARİSİ

DOĞU AKDENİZ ÜNİVERSİTESİ BAHAR BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ BLGM-324 BİLGİSAYAR MİMARİSİ DENEY #6

Bilgisayar Mimarisi ve Organizasyonu Giriş

Fatih University- Faculty of Engineering- Electric and Electronic Dept.

7.Yazmaçlar (Registers), Sayıcılar (Counters)

Komutların Yürütülmesi

SAYISAL MANTIK LAB. PROJELERİ

Programlama Giriş. 17 Ekim 2015 Cumartesi Yrd. Doç. Dr. Mustafa YANARTAŞ 1

BLG Sistem Analizi ve Tasarımı. Öğr. Grv. Aybike ŞİMŞEK

Ders Adı Kodu Yarıyılı T+U Saati Ulusal Kredisi AKTS. Dijital Tasarım EEE

Saklayıcı (veya Yazmaç) (Register)

BİLGİSAYAR MİMARİSİ. İkili Kodlama ve Mantık Devreleri. Özer Çelik Matematik-Bilgisayar Bölümü

HAFTA 1 KALICI OLMAYAN HAFIZA RAM SRAM DRAM DDRAM KALICI HAFIZA ROM PROM EPROM EEPROM FLASH HARDDISK

Şekil. 64 Kelimelik Yığıtın Blok Şeması

8086 nın Bacak Bağlantısı ve İşlevleri. 8086, 16-bit veri yoluna (data bus) 8088 ise 8- bit veri yoluna sahip16-bit mikroişlemcilerdir.

BM-311 Bilgisayar Mimarisi

DENEY 2- Sayıcılar. 1. Sayıcıların prensiplerinin ve sayıcıların JK flip-flopları ile nasıl gerçeklendiklerinin incelenmesi.

Bölüm 4 Ardışıl Lojik Devre Deneyleri

Data Communications. Gazi Üniversitesi Bilgisayar Mühendisliği Bölümü. 10. Hata Kontrolü

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

NECMETTİN ERBAKAN ÜNİVERSİTESİ MÜHENDİSLİK MİMARLIK FAKÜLTESİ ELEKTRİK-ELEKTRONİK MÜHENDİSLİĞİ BÖLÜMÜ SAYISAL DEVRE TASARIMI LABORATUVARI DENEY FÖYÜ

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

BÖLÜM 5 S_BĐT. Komut listesi (STL) Network 1 LD I0.0 S Q0.0, 1

İşletim Sistemlerine Giriş

ARDIŞIL DEVRELER. Çıkışlar. Kombinezonsal devre. Girişler. Bellek

T.C. İstanbul Medeniyet Üniversitesi Mühendislik ve Doğa Bilimleri Fakültesi Elektrik-Elektronik Mühendisliği Bölümü

mikroc Dili ile Mikrodenetleyici Programlama Ders Notları

BİLGİSAYAR MİMARİSİ. << Bus Yapısı >> Özer Çelik Matematik-Bilgisayar Bölümü

Bölüm 7 Ardışıl Lojik Devreler

Deney 3: Asenkron Sayıcılar

İSTANBUL TEKNİK ÜNİVERSİTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ LOJİK DEVRELERİ LABORATUVARI DENEY RAPORU

ArĢ. Gör. Mehmet Zeki KONYAR ArĢ. Gör. Sümeyya ĠLKĠN

TEKNOLOJİ FAKÜLTESİ ELEKTRİK ELEKTRONİK MÜHENDİSLİĞİ EET-206 SAYISAL ELEKTRONİK - II LABORATUVARI

T.C. BOZOK ÜNİVERSİTESİ ELEKTRİK ELEKTRONİK MÜHENDİSLİĞİ BÖLÜMÜ LOJĐK DEVRELER LABORATUARI DENEY FÖYÜ

Teorik Bilgi DENEY 7: ASENKRON VE SENKRON SAYICILAR

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

Sayı sistemleri-hesaplamalar. Sakarya Üniversitesi

EGE ÜNİVERSİTESİ EGE MYO MEKATRONİK PROGRAMI

Güz Y.Y. Lojik Devre Laboratuvarı Laboratuvar Çalışma Düzeni

Mobil ve Kablosuz Ağlar (Mobile and Wireless Networks)

Digital Design HDL. Dr. Cahit Karakuş, February-2018

Algoritmalar. Arama Problemi ve Analizi. Bahar 2016 Doç. Dr. Suat Özdemir 1

SAYISAL ELEKTRONİK. Ege Ü. Ege MYO Mekatronik Programı

Çoktan Seçmeli Değerlendirme Soruları Akış Şemaları İle Algoritma Geliştirme Örnekleri Giriş 39 1.Gündelik Hayattan Algoritma Örnekleri 39 2.Say

Bölüm 16 CVSD Sistemi

BLGM BÖLÜM. Problem Çözme Kavramları (Algoritma ve Akış Şemaları)

Deney 5: Shift Register(Kaydırmalı Kaydedici)

(I) şimdiki. durum (S) belleği. saat. girşi

Merkezi İşlem Birimi MİKROİŞLEMCİ SİSTEMLERİ. MİB Yapısı. MİB in İç Yapısı. MİB Altbirimleri. MİB in İç Yapısı

KASIRGA -4 Buyruk Tasarımı Belgesi Ankara

Sayısal Sistemler (MECE 305) Ders Detayları

FPGA İLE UYGULAMA ÖRNEKLERİ

BİL 201 Geçit düzeyinde yalınlaştırma (Gate-Level Minimization) Hacettepe Üniversitesi Bilgisayar Müh. Bölümü

Bilgisayarların Gelişimi

Lecture. (saat/hafta. hour/week) 4 3/

1. DENEY-1: DİYOT UYGULAMALARI

Transkript:

BBM 231 Yazmaçların Aktarımı Seviyesinde Tasarım! Hacettepe Üniversitesi Bilgisayar Müh. Bölümü

Bu derste! Büyük, karmaşık sayısal sistemlerin tasarımı ele alınacaktır. ASM ve ASMD çizgeleri Tasarım Örnekleri Denetleme Mantığı * yazmaç ve kod çözücüler ile * her bir durum için bir iki durumlu ile Çoklayılar ile Tasarım 2

Büyük Sayısal Sistemler! Büyük sayısal sistemleri, Durum sayıları çok fazla olduğundan, durum tablosu ile ifade edemeyiz. Modüler bir yaklaşım ile ele alınırlar. Sistem her biri bir işlevi yerine getiren daha küçük sistemlere bölünür. Bu modüller, yazmaçlar, kodlayıcılar, aritmetik elemanlar, kontrol mantığı gibi cihazlardan oluşur. Modüller, veri yolları ve kontrol sinyalları ile birbirlerine bağlanırlar. 3

Yazmaç Aktarımı Düzeyi! Yazmaçlar, bir sayısal sistemin temel bileşenleri arasında sayılırlar. Yazmaç aktarım düzeyi sistemdeki yazmaçlar kümesi yazmaçlarda saklanılan veri üzerindeki işlemler sistemdeki işlemlerin sırasını denetleyen denetim birimi 4

Gösterimler! Bir sayısal sistemde en çok karşılaşılan işlemler: 1. Aktarım işlemleri R2 ß R1 if(t3 == 1) then (R2 ß R1, R3ß R2) (T3: kontrol sinyali) 2. Aritmetik işlemler R1 ß R1 + R2 3. Mantıksal işlemler (e.g. OR) 4. Kaydırma işlemleri R4 ß shr R4 5

ASM : Algoritmasal Durum Makinaları (Algorithmic State Machines)! Sayısal sistemlerde saklanan ikili veri Veri Denetim Veri-işleme işlemleri : aritmetik işlemler, kaydırma, vb. Sayısal sistem tasarımı: 1. Veri işleme işlemlerini gerçekleştiren devrelerin tasarımı (datapath unit) 2. Çeşitli olayların hangi sırada olduğunu belirleyen denetim devrelerinin tasarımı (control unit) 6

Donanım Algoritması => bir sayısal sistemin denetim sırası ve datapath görevlerinin belirtilmesi. Donanım algoritmasının tanımlanması için kullanılan akış çizgeleri ASM (algorithmic state machine) 7

3 temel bileşen içerir: ASM çizgesi! 1. Durum kutusu (State box) 2. Karar kutusu (Decision box) 3. Koşullu kutu (Conditional Box) 8

ASM Çizgesi Bileşenleri 1/2! State Box: Decision Box: R 0, S_pause durumundan bir sonraki duruma geçişte gerçekleşir! Start_OP_A: Moore tipi sinyal 9

ASM Çizgesi Bileşenleri 2/2! Hiçbir veri- işleme işlemi barındırmayan ASM çizgesi 10

ASM Bloğu! Her bir blok, bir saat-vuruşu süresinde sistemin durumunu belirtir. Genel olarak, Moore türü çıkışlar state box lar ile, Mealy türü çıkışlar ise koşullu box lad ile üretilirler. 11

Eşdeğer Durum Çizeneği! 12

ASM de Zaman! Bir sonraki saat vuruşunda : A yazmacındaki değer arttırılır. Eğer E = 1 ise R temizlenir. Bir sonraki duruma geçilir. 13

ASMD Çizgesi (Algorithmic State Machine and Datapath ASM çizgesinden farkı. 1) Yazmaç işlemleri state box larda ifade edilmez. 2) Yazmaç işlemleri, çizgenin kenarlarında gösterilir. 3) conditional box lar yazmaç işlemlerini denetleyen sinyalleri belirtir. 14

Tasarım Örneği-1! Veriyolu (datapath) birimi E ve F diye iki tane JK ikidurumlusundan Bir tane 4-bit ikili sayaç : A[3:0] tan oluşur. A daki ikidurumlular A 3 A 2 A 1 A o dır. A 3 en yüksek öncelikli bittir. Start sinyali sistemi başlatır. A nın içeriği ve F sıfırlanır. Herbir saat vuruşunda sayaç 1 arttırılır. A 2 A 3 bitleri işlemlerin sırasını belirler. A 2 =0 ise E 0 lanır ve sayma devam eder. A 2 =1 ise E 1 lenir ve A 3 =0 ise sayma devam eder. A 2 =1 ise E 1 lenir ve A 3 =1 ise F 1 lenir ve bir sonraki saat vuruşunda sistem saymayı durdurur. - Start = 0 ise sistem ilk durumda kalır, 1 ise işlemler devam eder. 15

Tasarım Örneği-1: Blok diagram! Status signals A3 A2 clr_e set_e Datapath A Start Controller set_f clr_a_f E incr_a F reset_b clock (a) 16

Tasarım Örneği-1: ASMD Çizgesi! Zamanuyumsuz reset için Zamanuyumlu reset için 17

Tasarım Örneği-1 : Gelişmiş ASMD Çizgesi! Zamanuyumsuz reset için Eğer bir işlem koşulsuz ise Moore-türü sinyal A nın arttırılması (S_1) Koşullu ise Mealy-türü sinyal E nin 1lenmesi (S_1 ve A 2 =1) 18

Tasarım Örneği-1: İşlem Sırası! 19

Tasarım Örneği 1! 20

Tasarım Örneği-1: Durum Tablosu! 21

Tasarım Örneği-1! 22

Tasarım Örneği-2: İkili Çarpma! (register B) (register Q) partial product formed in register A, stored in registers A and Q carry after addition in flip-flop C number of bits in the multiplier initially in counter P 4. Bölümde, toplayıcılar ve AND geçitleri ile gerçekleştirmiştik. daha çok donanım ile fakat 1 saat vuruşunda gerçekleşir. Şimdi à 1 toplayıcı ve 1 kaydırma yazmacı ile gerçekleştireceğiz. daha az donanım ile fakat birden çok saat vuruşunda gerçekleşir. 23

Tasarım Örneği-2: Genel Görünüm! 24

Tasarım Örneği-2 : Yazmaçlar! 25

Tasarım Örneği-2: ASMD Çizgesi! 26

Tasarım Örneği-2: Çalışması! 27

Tasarım Örneği-2: Durum Çizeneği! Start 0 Zero 1 S_idle Start 1 S_add S_shift (a) Zero 0 State Transition Register Operations From To S_idle Initial state S_idle S_add A 0, C 0, P dp_width S_add S_shift P = P 1 if (Q[0]) then (A A B, C C out ) S_shift shift right {CAQ}, C < 0 28

Denetleme Mantığı (Control Logic)! Denetleyici, bir dizisel devredir. Bilinen dizisel devre tasarımı ile yapılabilir. Durum ve girişlerin çok olduğu durumlarda? İki tasarım yöntemi: Bir yazmaç ve kod çözücü ile (sequence register and decoder) Her bir durum için bir ikidurumlu ile (one-hot design: one flip-flop per state) 29

Bir Yazmaç ve Kod Çözücü ile Tasarım! 30

Bir Yazmaç ve Kod Çözücü ile Tasarım (1)! 31

Bir Yazmaç ve Kod Çözücü ile Next State Tasarım Logic (2)! Q[0] Zero D C 0 1 2 4 Decoder (S_add) T 1 (S_shift) T 2 G 1 T 3 Add_regs Decr_P Shift_regs C clock reset_b (a) Next State Logic Ready Start Q[0] D C G 0 0 (S_idle) T 0 Load_regs Add_regs (S_add) T 1 2 4 Decoder Decr_P Zero (S_shift) T 2 Shift_regs 1 D G 1 T 3 D G1 = T 1 D G0 = T 0 Start + T 2 Zero C clock reset_b 32

Her Bir Durum için İkidurumlu ile Tasarım! Maksimum sayıda ikidurumlu içerir. Bir önceki yöntemde 2 n durum için n ikidurumlu. Bu yöntemde 2 n durum için 2 n ikidurumlu. Avantajı basitliği durum ya da uyarma çizelgesine ihtiyaç yoktur. (D türü ikidurumlu için) ASMD ya da durum çizgesine bakarak tasarlanabilir. 33

Her Bir Durum için İkidurumlu ile Tasarım! 34

Çoklayıcılar ile Tasarım! Bir yazmaç ve kod çözücü ile tasarım İkidurumlular (durum değeri) Kod çözücü: denetim çıkışlarını üretir. Geçitler: bir sonraki durumu ve çıkış sinyallerini belirler. Geçitler yerine çoklayıcılar da kullanabiliriz. 35

Bir Örnek: Çoklayıcılar ile Tasarım! 00 durumunda w = 0 ise 00 durumuna w = 1 ise 01 durumuna 36

37

Bir Örnek: Çoklayıcılar ile Tasarım! 00 durumunda w = 0 ise 00 durumuna w = 1 ise 01 durumuna 38

Tasarım Örneği: Yazmaçtaki Birlerin Sayılması! R1 yazmacındaki birlerin sayısı R2 yazmacına aktarılır. Birim zamanda R1 den bir bit sola, E ikidurumlusuna aktarılır. E = 1 ise R2 yazmacındaki değer arttırılır. R1= 0 ise sona erer. Status signals E Zero data Load_regs E Datapath... R1 Start Ready Controller Shift_left Incr_R2 Shift_left... R2 reset_b clock count 39

Yazmaçtaki Birlerin Sayılması! 40

41

Yazmaçtaki Birlerin Sayılması! 42