Professional Documents
Culture Documents
KenanBaysal AkademikBilisim2011
KenanBaysal AkademikBilisim2011
Özet: Günlük hayatta kullandığımız neredeyse her elektronik cihazda sistemin çalışmasını
kontrol eden ve işlemleri sonuçlandıran bir mikroişlemci bulunmaktadır. Yarı iletkenlerden
meydana gelen transistörler mikroişlemciyi oluşturan temel elektronik devre elemanıdır. Bazı
mikroişlemcilerde transistör sayısı milyarlara ulaşmaktadır. Mühendislik açısından bu koşullar
mikroişlemcinin tasarımı ve bu konuda eğitim vermeyi zorlaştırmaktadır.
Bu çalışmanın amacı VHDL dili kullanılarak bir mikroişlemci tasarımının basite indirgenmesi
ve eğitimi alanında sağladığı kolaylıkları göstermektir.
Abstract: Almost every electronic device that we use in daily life has a microprocessor that
controls working of system and results the procedures. Transistors, consisting of
semiconductors, are basic electronic circuit devices that compose the microprocessors. In some
microprocessors, transistors could reach billions. In terms of engineering designing a
microprocessor is too much hard and is too hard to educate on this subject.
The aim of this study is to show, how to simplify a microprocessor design and to provide the
facilities in education area.
VHDL ile yapılan bir tasarımın basitliği ve Burada bulunan 3 bitlik işlem seçim uçları ve
anlaşılabilirliği, mikroişlemcinin temel birimi Load ucu doğrudan işlemcinin kontrol
olan Aritmetik Lojik Ünitenin tasarımı birimine bağlıdır. Tek veri çıkışı ise doğrudan
incelenerek görülebilir. Akümülatöre bağlıdır, E çıkışı ise yapılan
aritmetik işlem sonucunda oluşan elde bitini
E bayrağına aktarır. Tablo 1’de belirtilen
2. 16 Bitlik Aritmetik Lojik Ünite Tasarımı
sekiz adet işlem 16 bitlik ALU devresinin her
bir biti için ayrı ayrı gerçekleştirilmiştir
Devresi çıkartılacak 16 bitlik ALU’nun
gerçekleştireceği işlemler ve işlemlerin seçim LD girişi aktif edildiğinde; AC aktar, AND,
kodları Tablo 1’de, ALU’ya bağlı birimler ADD, CMP, DR aktarma, INPR aktar, SHR
Şekil 2’de gösterilmiştir. veya SHL işlem girişlerinden aktif edilene ait
edilen sonucu JK tipi yaz-boza aktarmaktadır.
Yaz-boz, sonuca ait 1 bitlik değeri bir saat
vuruşu süresince korumaktadır. Şekil 3’te gösterilen Aritmetik Lojik Ünitenin
1 bit düzeyinde işlem yapan bu birimler 1 bitinin lojik devresinin Şekil 4’te
birleştirilerek 16 bitlik ALU elde gösterildiği gibi 16 adet ardışık olarak
edilmektedir. Şekil 4’te ALU’nun içersinde bağlanmasıyla elde edilmektedir. Bunun
her bir bitin blok olarak nasıl bağlandığı sadece 16 bitlik bir işlemcinin Aritmetik
gösterilmiştir. Lojik Ünitesi olduğu göz önüne alınırsa, 32
bit ve 64 bitlik işlemcilerin kullanıldığı
günümüz teknolojisinde, bu şekilde bir
tasarımın gerçekleştirilmesi ve benzetiminin
yapılması oldukça güçtür.
İşlem Açıklama
Seçim
000 AC’ü çıkışa aktar
001 AC AND DR
010 AC + DR
011 DR’i, AC’ye aktar
100 NOT AC
101 INPUT Reg.’i AC’ye
aktar
110 AC’yi bir sağa kaydır
111 AC’yi bir sola kaydır
Bitin yüksek değerlikli bit olmasını Şekil 5. Giriş Çıkış portlarının VHDL ile
isteniyorsa “7 downto 0” veya tersi durumda tanımlanması
“0 to 7” şeklinde tanımı yapılmaktadır.
Aritmetik ve Lojik Ünitenin gerçekleştirmesi
Tablo 2. Giriş Çıkış portları istenilen 8 işlemin davranışları “architecture”
yapısı altında tanımlanır. “signal” olarak
tanımlanan 17 bitlik “elde” dizisi, ALU
Bit Uzunluğu
portları tanımlanır. Bunlarla beraber birer ders içeriğine dahil edilebilir. Öğrenci,
adet “Yaz”, “Sil”, “Arttır” tek bit giriş uçları mevcut bir işlemcinin tasarımını
tanımlanır. Yaz=’1’ olması durumunda geliştirebileceği gibi aynı zamanda yeni bir
işlenecek process, 16 bitlik girişin mikroişlemciyi en baştan tasarlayacak
akümülatörün içeriğine aktarılması olarak seviyeye ulaşabilir.
tanımlanır. Buna benzer şekilde Sil=’1’
durumunda akümülatörün içeriğinin
4. Kaynaklar
temizlenmesi, Arttır=’1’ durumunun
akümülatörün içeriğinin bir arttırılması olarak
tanımlanır. Sil, Arttır ve Yaz uçlarının hangi [1]
durumlarda ‘1’ olacağı işlemcinin kontrol http://www.amigahistory.co.uk/amigahist
ory. html
biriminde tanımlanır. İşlemcinin diğer bütün
birimleri buna benzer şekilde tanımlandıktan [2] M. Morris Mano, “Computer
sonra ‘component’ tanımlaması ile birimler System Architecture”, (1993).
birbirine bağlanır.
[3] Enoch O. Hwang, “Digital and Logic
3. Sonuç Microprocessor Design With VHDL”,
La Sierra University, Riverside, (2005).
Geçmişte işlemci tasarımının en sorunlu
aşaması olan prototip üretiminin VHDL ile [4] Jayaram Bhasker, “A VHDL Primer,
basit bir hale geldiği, örneklenen 16 bit American Telephone and Telgraph
Aritmetik Lojik Ünite devresinde açık olarak Company Bell Laboratories Division”,
görülmektedir. VHDL dili ile mikroişlemci (1991).
tasarımı; Algoritma ve programlama bilgisi
olan ve temel mikroişlemci mimarisi bilgisine
sahip bir öğrencinin anlayabileceği seviyede