ISA KART DİZAYNI 1

Shared by: kandela4444
-
Stats
views:
6
posted:
6/24/2012
language:
pages:
16
Document Sample
scope of work template
							                         ANTRAK GAZETESİ’NDE YAYINLANMIŞTIR.



                                 3-ISA KART DİZAYNI


        ISA       kart dizayn etmek için bazı ön hazırlıklar gerekir. Şimdi bunları
inceleyelim.


        1- Kartın amacı: Kartı ne için yapıyoruz? Eğer kartı genel amaçlı yapıyor isek,
16 bitlik bir kart yapmamız yerinde olur. 16 bit’ten kasıt, 16 bit data bus
kullanılmasıdır. Eğer kartı basit bir giriş/çıkış gereksiniminden dolayı yapıyor isek, bize
kafi gelecek kadar data bus kullanabiliriz. Analog giriş/çıkış yapacaksak DAC ve ADC
kullanmalıyız.


        2- Kartın kullanılacağı PC’nin donanımı: Eğer kartı kullanacak bilgisayarda
fazla donanım yoksa, PC o kart için çalışıyorsa 4 veya 8 bit adres kullanmak bize
yetecektir. Yok eğer PC de fazlaca donanım varsa, adres çakışmalarını önlemek
açısından en az 16 bit adres kullanmak gerekir.


        3- Kesme kullanılacak mı:Eğer basit bir kart yapıyorsak ve kesmeye ihtiyaç
duymuyorsak gerek yok. İhtiyaca göre IRQ ve DMA kesmesi kullanılabilir.


        4- Adres seçmede, data buslara yol vermede vb. ne tür elemanlar kullanılacağına
karar verilir. (mikroişlemci, kapı, buffer...)


        5- Giriş çıkış nasıl sağlanacak: Tartı    taktıktan sonra, kartla kontrol etmek
istediğimiz sistemi birbirine bağlamak için ne tür bir konnektör veya soket
kullanacağız? Data bus sayısına göre uygun bir konnektör veya soket seçilir.


        6- Devrede kullanılacak elemanların bacak bağlantıları vs. edinilerek devrenin
şeması çizilir. Çizilen şemanın çalışıp çalışmadığı EWB veya benzer bir programda
kontrol edilir.




                                                                                  Sayfa 17
                           ANTRAK GAZETESİ’NDE YAYINLANMIŞTIR.



          7- Kartın baskı devresi çift yüzlü bir pertinaksa çıkarılır. Basit devreler için el ile
çıkarılabilen baskı devre, karmaşık devreler için Bordmaker veya Orcad gibi
programlarda çıkarılmalıdır.


          8- Kartın elemanları lehimlenerek denenir. Denemek için TC, BASIC veya
DEBUG gibi portlara bilgi yollayabilen programlama dilleri ile basit programlar yazılır.


          Şimdi bu işlemleri ayrıntılı olarak inceleyelim.


          3-1-Adres Seçme


          İlk önce bir adres belirlenir. Adresin başka bir donanımla çakışmaması için port
paylaşım tablosundan uygun bir adres seçmek gerekir. Kartta bu adrese duyarlı bir
devre oluşturmak gerekmektedir. Bunun için bir kapı kombinezonu kullanılabilir. Kapı
kombinezonunun girişleri adres bus’lar olup, çıkışı seçtiğimiz adreste aktif olmalıdır.
Seçtiğimiz adres 8 bitlik ise en son bit A0 pinine gelmelidir. Mesela 3F adresi için;
(3f=00111111) A0=1, A1=1, A2=1, A3=1, A4=1, A5=1, A6=0, A7=0 olacaktır. Bunlar
göz önüne alınarak adres seçici devre tasarlanır. Bu projede 7430 entegresi
kullanılmıştır.


          Örnek:


          Konunun daha iyi anlaşılması açısından bir örnekle açıklayalım. Kart adresimiz
FC3F olsun. Bu adres bilgisini ISA veriyoluna yolladığımızda adres uçlarında şu bilgi
okunur.


D15 D14 D13 D12 D11 D10 D9                     D8    D7    D6       D5   D4    D3    D2     D1      D0
1     1       1      1     1      1     0      0     0     0        1    1     1     1      1       1
             F                        C                         3                          F




                                                                                         Sayfa 18
                        ANTRAK GAZETESİ’NDE YAYINLANMIŞTIR.



       Buradan da anlaşılacağı gibi D9, D8, D7, D6 uçlarını birer değil kapısı ile,
diğerlerini direk bir çarpma kapısına verirsek, FC3F adresinde adres seçici devremizin
çıkışı aktif, diğer durumlarda pasif olacaktır. Şekil 3.1’deki devre bu işi yapmaktadır.




Şekil 3.1. Adres seçici devre


       3-2-Tampon


       Data buslara yol vermek için, çift yönlü iletime geçebilecek bir tampon
tasarlanmalıdır. Karttan dışarıya bilgi yollamak istendiğinde PC den dışarıya doğru yol
açacak, dışarıdan kart ile okuma yapılmak istendiğinde ise dışarıdan PC ye doğru yolu
açacak bir tampon işimizi görecektir. İlk akla gelen yol buffer kullanmaktır. Bir hat için
iki tane buffer çift yönlü iletimi sağlamak için yeterlidir. Bu projede 74244 buffer
entegresi kullanılmıştır. Şekil 3.2’de 4 data bit için tasarlanmış bir tampon devre
görülmektedir.




                                                                                  Sayfa 19
                        ANTRAK GAZETESİ’NDE YAYINLANMIŞTIR.




                                     Şekil 3.2. Tampon Devre


       Şekilde D0, D1,...,D7, ISA veriyolundan alınacak data uçlarıdır.
       IN-D0, IN-D1,...,IND7, Dijital girişler, OUT-D0, OUT-D0,..., OUT-D0 ise
dijital çıkışlardır. Bu devre 8 adet data bit için tasarlanmıştır. 16 bitlik bir tampon devre
benzer şekilde tasarlanabilir.


       3-3-Konnektör Seçimi


       Kartla dış ortamın ilişkisini sağlamak için bir konnektör kullanılmalıdır. Seri
port konnektörü, paralel port konnektörü, 40 pimli konnektör olabileceği gibi diğer
soketlerde kullanılabilir. Projede 25 pinli paralel port konnektörü kullanılmıştır.




                                                                                   Sayfa 20
                         ANTRAK GAZETESİ’NDE YAYINLANMIŞTIR.




         3-4-I/O Seçici Devre


         Tasarladığımız tampona yol vermek için giriş ve çıkış durumlarına göre aktif
olan bir devre daka tasarlamalıyız. Bu devrenin girişleri adres seçici devrenin çıkışı, I/O
Read ve I/O Write uçlarıdır. Çıkışı ise iki tane olup aşağıdaki durumları vermelidir.


         (R, W çıkışlar, I/OR, I/OW ve A (adres seçici devrenin çıkışı) girişler olmak
üzere)


            A          I/OR        I/OW        R             W
            Pasif      Pasif       Pasif       Pasif         Pasif
            Pasif      Pasif       Aktif       Pasif         Pasif
            Pasif      Aktif       Pasif       Pasif         Pasif
            Aktif      Pasif       Aktif       Pasif         Aktif
            Aktif      Aktif       Pasif       Aktif         Pasif


                     Tablo 3.1. I/O seçici devrenin giriş/çıkış ilişkisi


         Şekil 3.3.’te yukarıdaki tabloyu sağlayan bir I/O seçici devre görülmektedir.




                                    Şekil 3.3. I/O Seçici Devre


         Devrede adres seçme ucu Şekil 3.1.deki or kapısının çıkışından gelmelidir. I/O
Read ve I/O Write uçları ise isa slottan alınacaktır.




                                                                                  Sayfa 21
                       ANTRAK GAZETESİ’NDE YAYINLANMIŞTIR.




       3-5-Geciktirici Devre


       PC ilk açıldığında tüm donanımı kontrol eder. Eğer data buslarda bir iletim
görürse açılmaz. Yani yaptığımız devrede tampon aktif olursa PC açılmayacaktır.
Ayrıca PC kontrolü yaparken Tablo 3.1. deki tüm durumları dener. R ve W çıkışları
aktif olursa PC açılmaz. Bu yüzden PC kontrolünü yapana kadar tampon devreyi pasif
yapacak bir geciktirici devre gerekmektedir. Şekil 3.4.’te projede kullanılan geciktirici
devrenin şeması görülmektedir.




                                  Şekil 3.4. Geciktirici Devre


       3-6-Geciktirici Devrenin Çalışması


       Devre incelendiğinde C kondansatörü ile R5 direncinin bir zamanlama elemanı
olarak kullanıldığı görülecektir. PC ilk açıldığında boş olan kondansatör sayesinde T3
transistörü iletimde olacaktır. Kondansatör dolmaya başlayacak ve doldukça R5 direnci
üzerindeki gerilim azalacaktır. Belli bir süre sonra R5 üzerindeki gerilim T3
transistörünü iletimde tutamayacak ve T3 kesime gidecektir. Devrenin çıkışları A ve B
noktalarıdır. Transistör iletimde iken A ve B noktalarına +VCC gelmektedir. (Diyotların
gerilimleri ihmal edildi) Transistör kesime gittiğinde ise A ve B noktaları R7 ve R8
dirençleri üzerinden Şase potansiyeline düşecektir. Yani devre; kondansatör dolana




                                                                                Sayfa 22
                           ANTRAK GAZETESİ’NDE YAYINLANMIŞTIR.



kadar A ve B noktalarını +VCC de tutar. Diyotlar A ve B noktalarını birbirinden
yalıtmak için konulmuştur. Devrenin zaman sabitesi C ve R5 in değerlerine bağlıdır.


       Devrenin geri kalan kısmı kondansatörün hızlı deşarj olabilmesi için
tasarlanmıştır. Devre sürekli zamanda incelenirse (kondansatör şarjlı iken) T1 iletimde
ve T2 kesimdedir. T2 nin kesimde olmasının sebebi T1 in iletimde olmasıdır. Devreden
güç kesildiğinde T1 kesime gidecektir. T2 ise kondansatörün gerilimi sayesinde iletime
geçecektir. T2 iletime geçince kondansatör küçük değerli olan R4 direnci üzerinden kısa
sürede deşarj olacaktır.


       Bu devrede dikkat edilmesi gereken husus A ve B noktalarının belli bir zaman
için yüksek seviyede tutulmasıdır. Yüksek seviyede tutulmasının sebebi; buffer
entegresi olarak kullanılan 74244 entegresinin yol verme girişinin 0 da aktif olmasıdır.
Yani entegrenin yol verme girişi bir süre 1 seviyesinde tutularak, PC ilk kontrolü
yaparken tampon devrenin aktif olması engellenir.


       Tüm bu aşamalardan sonra oluşan devrenin blok şeması Şekil 3.5.’te
görülmektedir.




                                  Şekil 3.5. Kartın Blok Şeması




                                                                               Sayfa 23
                        ANTRAK GAZETESİ’NDE YAYINLANMIŞTIR.




       3-7-Baskı Devrenin Çıkarılması


       Devre şekli çizilip çalıştığından emin olunduktan sonra sıra baskı devreyi
çıkarmaya gelmiştir. Baskı devre çıkarmak için bir yöntem seçilir. Şekil 2.1. ve Şekil
2.2. deki pin numaraları ile Tablo 2.1. deki pinlerin anlamları dikkatlice incelenerek bir
baskı devre şeması hazırlanır. Burada dikkat edilecek husus (baskı devre çift yüzlü
olacağı için) her iki baskı devrenin birbirine denk gelmesidir. Ayrıca kısa ve açık devre
olmadığından emin olunmalıdır. ISA kart için elle çıkarılabilecek baskı devre PCI kart
için bilgisayar yardımı ile çıkarılmalı ve baskı işlemi serigrafi vb. bir metot ile
yapılmalıdır.


       3-8-Elemanların Yerleştirilmesi


       Şimdi sıra elemanların yerleştirilmesine gelmiştir. Entegreleri kart üzerine
lehimlerken dikkatli olunmalıdır. Entegrenin fazla ısıdan zarar görebileceği düşünülerek
soket kullanılması tavsiye edilir. Ayrıca soğuk lehim yapılmamalıdır. Çünkü kart
çalışmadığı taktirde soğuk lehimi tespit etmek biraz zordur. Pasta kullanılması halinde,
lehimleme işlemi bittikten sonra pasta kalıntılarının kazınması gerekir. Ayrıca ISA
sokete girecek bölümdeki uçlara lehim sürülmemelidir. Aksi taktirde kart sokete
girmeyebilir.


       3-9-Sağlamlık Testi


       Bütün bu işlemlerden sonra sıra kartı denemeye gelmiştir. Ancak kartı PC ye
takmadan önce denenmesinde yarar vardır. İlk olarak besleme gerilimleri alınan uçlarda
kısa devere olup olmadığı incelenir. Daha sonra bir ISA slot simülasyonu hazırlanır.
Yani adres uçlarına krokodiller ile kartın adresi, Besleme uçlarına gerekli besleme
voltajları verilir. I/O uçları sırayla aktif yapılarak tampon devrelerin doğru çalışıp
çalışmadığı kontrol edilir. Bir sorun varsa sorun araştırılır ve çözülür.




                                                                                 Sayfa 24
                         ANTRAK GAZETESİ’NDE YAYINLANMIŞTIR.



       3-10-Arabirim Devresi


       Karta ile PC’ye bilgi yazmak ve okumak için dışarıda kullanılacak bir devreye
ihtiyaç vardır. Tasarlayacağımız devre iki kısımdan oluşmalıdır. Birinci kısım PC’ye
dijital bilgi yollayacak basit bir devredir. İkinci kısım ise PC’den alınacak bilgiyi
tutacak bir LATCH devresidir. Her iki devrede de, yolladığımız ve okuduğumuz
bilgileri görmemiz için ledler kullanılmalıdır. Bu proje için tasarlanan arabirim devreler
Şekil 3.6. ve Şekil 3.7. de gösterilmiştir.




                      Şekil 3.6. Bilgi yazmak için kullanılan arabirim devre




                                                                                 Sayfa 25
                        ANTRAK GAZETESİ’NDE YAYINLANMIŞTIR.




                      Şekil 3.7. Bilgi tutmak için kullanılan arabirim devre


       1. Devre oldukça basit bir bilgi giriş devresidir. Anahtarlardan girilen bilgi aynı
anda ledlerde görünür. 2. dEvre ise bir tutma devresidir. PC bilgiyi bir an data buslara
yollar. Bu bilgiyi tutmassak göremeyiz. Bu yüzden tutucu bir devre hazırlanmıştır. 7475
entegresinin 4 ve 13 numaralı bacakları birleştirilip I/O yol verici devrenin W çıkışına
bağlanır. Dikkat edilmesi gereken nokta, I/O yol verici devrenin çıkışları aktif iken 0
dır. Çünkü buffer entegresinin aktif olması için 0 bilgisi gerekir. 7475 entegresinin aktif
olması için ise 1 bilgisi gerekir. Bu yüzden I/O yol verici devrenin W çıkışı bir değil
kapısından geçirilip 7475 entegresine verilmelidir.


       Şekillerde dijital giriş ve dijital çıkış yazan uçlar karttaki giriş ve çıkışlara
bağlanmalıdır. Gösterge ucu sayesinde ledler sürülür ve bilgiyi izleyebiliriz.


       3-11-Kartı Sürmek İçin Gerekli Program


       Kartı kullanabilmek için bir programlama dilinde, Portlara bilgi yollayabilecek
bir program yazmalıyız. Aşağıda TC dilinde yazılmış iki program bulunmaktadır.
Bunlardan birincisi dışarıdan bilgi almak ve ikincisi dışarıya bilgi yollamak içindir.




                                                                                  Sayfa 26
                        ANTRAK GAZETESİ’NDE YAYINLANMIŞTIR.



       ISA Veriyolundan bilgi okuyan program (oku.cpp) :


       #include <dos.h>
       #include <stdio.h>
       #include <conio.h>
       int main(void)
       {
                int deger;
                int port = 0x3f ;
                deger = inportb(port)&15;
                printf("%x adresinden okunan değer = %X\n", port, deger);
                getche();
       }


       Programda deger ve port isminde iki integer değişken tanımlanmıştır. Port
değişkenine heksadesimal olarak kartın adresi olan 3F bilgisi atanmıştır. inportb
fonksiyonu deger değişkeni ile çağırılmıştır. inportb fonksiyonu parantez içindeki adres
değerinden okuma yapar. Bizim girdiğimiz bilgiyi tam okuması için &15 konulmuştur.
Çünkü bütün data busları kullanmadık. Eğer &15 konmassa okunan bilginin başında F
ler görünecektir. printf satırı okunan bilgiyi ve bilginin hangi adresten okunduğunu
ekrana yazar. Programın çıktısı şöyle olur.


       3F adresinden okunan değer=6


       ISA Veriyoluna bilgi yazan program (yaz.cpp) :


       #include <stdio.h>
       #include <conio.h>
       int main(void)
       {
              int port = 0x3f;
              int deger;




                                                                               Sayfa 27
                         ANTRAK GAZETESİ’NDE YAYINLANMIŞTIR.



                 value = outp(port,0x8);
                 printf("%x adresine %x yazıldı \n", port, deger);
                 getche();
       }


       Program bir öncekine benzemektedir. Burada outp komutu kullanılmıştır.
Parantezin içindeki ilk değişken adresi, ikinci değişken (burada değişken değil direk
değerdir) yazılacak bilgiyi gösterir.


       3-12-Kartın Denenmesi


       Artık kartı deneyebiliriz. Önce kart PC’de boş bir ISA slota takılır. Bilgisayar
başlatılır. TC programı açılır. Yazma arabirim devresinden bir değer girilir. oku.cpp
çalıştırılır ve yazdığımız değer ile PC den okunan değerin aynı olup olmadığı kontrol
edilir. Daha sonra yaz.cpp çalıştırılır ve tutucunun çıkışlarındaki değer ile bizim
yazdığımız değerin aynı olup olmadığı kontrol edilir.




                      4-DEVREDE KULLANILAN ELEMANLAR


       Kartın yapımında ttl entegreler kullanılmıştır. Daha fazla akım kapasitesi
istenirse cmos serisi entegreler kullanılabilir. Tablo 4.1.’de kullanılan elemanların bir
listesi görünmektedir.


             Adet      İsmi                      İşlevi
             1         74244                     Buffer (8 li)
             1         7475                      Tutucu (4bit)
             1         7430                      Nand (8 girişli)
             1         7404                      Değil
             1         7400                      Nand (2 girişli)



                                                                                Sayfa 28
              ANTRAK GAZETESİ’NDE YAYINLANMIŞTIR.



    1       15 KΩ                     Direnç
    2       4,7 KΩ                    Direnç
    1       3.9 KΩ                    Direnç
    2       790 Ω                     Direnç
    1       720 Ω                     Direnç
    1       560 Ω                     Direnç
    1       220 µF                    Kondansatör
    4       1N4148                    Diyot
    3       BC 237                    Transistör
    8       1 KΩ                      Direnç
    4       Anahtar                   2 konumlu
    1       Soket veya Konnektör      Amaca uygun


                    Tablo 4.1. Kullanılan elemanlar


4-1-Entegrelerin Bacak Bağlantıları


74244 Entegresi:




               Şekil 4.1. 74244 entegresinin bacakları




                                                         Sayfa 29
                        ANTRAK GAZETESİ’NDE YAYINLANMIŞTIR.



       Şekil 4.1.’de 74244 entegresinin bacaklarının isimleri görünmektedir. Bu
bacakları kısaca açıklayacak olursak; 1A1, 1A2, 1A3, 1A4 isimli bacaklar 1. grup
bufferların girişleri, 1Y1, 1Y2, 1Y3, 1Y4 ise 1. grup bufferların çıkışlarıdır. Benzer
şekilde 2. Grup bufferların giriş ve çıkışları da 2A1,...,2A4 ve 2Y1,...,2Y4 tür. 1G ucu 1.
Grup bufferlara yol vermek için, 2G ucu ise 2. Grup bufferlara yol vermek için
kullanılır. 1G ve 2G uçlarındaki yuvarlak işaretleri, bufferların 0 bilgisi geldiğinde aktif
olacağını gösterir.


       7475 Entegresi:




                             Şekil 4.2. 7475 Entegresinin Bacakları


       Şekil 4.2.’de 7475 entegresinin bacaklarının isimleri görünmektedir. Burada 1D,
2D, 3D, 4D tutulacak girişler, 1Q, 2Q, 3Q, 4Q ise çıkışlardır. 1C,2C ve 3C,4C uçları ise
tutucunun girişleri çıkışlara yüklemesi için gereken sinyalin girileceği uçlardır. 7475
entegresinin 4 ve 13 nolu bacaklarına 1 bilgisi geldiğinde girişler çıkışa yüklenir. Diğer
durumda çıkışlar girişten bağımsızdır.




                                                                                   Sayfa 30
                        ANTRAK GAZETESİ’NDE YAYINLANMIŞTIR.



       7430 Entegresi:




                              Şekil 4.3. 7430 Entegresinin bacakları


       Şekil 4.3.’te 7430 entegresinin bacakları görünmektedir. A,B,...,G,H NAND
kapısının girişleri, Y ise çıkışıdır. NC ile ifade edilen bacaklar kullanılmamıştır.


       7404 Entegresi:




                             Şekil 4.4. 7404 Entegresinin Bacakları




                                                                                   Sayfa 31
                        ANTRAK GAZETESİ’NDE YAYINLANMIŞTIR.



       Şekil 4.4.’te 7404 entegresinin bacakları görünmektedir. 1A,2A,...,6A girişler;
1Y,2Y,...,6Y ise çıkışlardır.


       7400 Entegresi:




                                Şekil 4.5. 7400 Entegresinin Bacakları


       Şekil 4.5.’te 7400 entegresinin bacakları görülmektedir.          Burada 1A, 1B 1.
Kapının girişleri, 1Y ise birinci kapının çıkışıdır. Diğer 3 kapının giriş ve çıkışları
benzer şekilde gösterilmiştir.




                                                                                 Sayfa 32

						
Related docs
Other docs by kandela4444
Atatürk_mrkz
Views: 3  |  Downloads: 0
AİLE PSİKİYATRİSİ VE FONKSİYONELLİĞİ
Views: 1  |  Downloads: 0
NEDEN YALAN SÖSÖYLERLER
Views: 13  |  Downloads: 0
Asp De Hata Mesajları
Views: 6  |  Downloads: 0
ALTIN DESTAN MUSTAFA KEMAL ATATÜRK -1
Views: 1  |  Downloads: 0
Aray�z Set 02
Views: 3  |  Downloads: 0
Atatürk'çülük ve diğer ideolojiler
Views: 0  |  Downloads: 0