8255 İle Kart Tasarımı

Genel kültür kategorisine 12 Temmuz, 2007 tarihinde eklendi, 21 defa okundu

8255 İLE KART TASARIMI

Bu entegre en basit manada saklayıcılardan (register) oluşan bir arabirimdir. Dış dünya ile haberleşmesi, her biri 8-bit olan A,B,C portları yoluyla yapılır. Mikroişlemci ile haberleşmesi D0 – D7 hatları ile olmaktadır. 8255 in içinde bu üç portun programlanması için kullanılan kontrol saklayıcısı adı verilen özel bir saklayıcı vardır. Bu kontrol saklayıcısı ile beraber 8255 toplam 4 saklayıcıya sahiptir.Bir 8255 üzerinde bir işlem yapılabilmesi için önce 8255 in CS girişine lojik 0 uygulanarak bu entegrenin seçilmesi gerekir. İçindeki 4 saklayıcıdan birinin seçimi ise A0 – A1 adres girişleri ile belirlenir. Entegrenin seçilip içindeki saklayıcının da belirlenmesinden sonra, seçili saklayıcı üzerinde yapılacak işlemi RD veya WR girişlerinden birine uygulanan sinyal belirler. 8255 geniş bir kullanım alanı olan, çoğu mikroişlemcili sistemlerde kullanılabilen programlanabilir, genel amaçlı ve önemli bir paralel I/O birimidir. Basit I/O dan kesmeli I/O ya kadar değişik durumlarda veri transferi için programlanabilir. Esnek ve çok yönlü olup birden fazla I/O portu gerektiğinde ekonomiktir.8255 24 I/O ucuna sahiptir. Bunlar temel olarak iki tane 8-bit paralel port A ve port B ve port C dir. Port C nin 8-biti bütün olarak veya 4-bitlik iki port olarak da kullanılabilir. Bu portların işlevi 8255 in dördüncü saklayıcısı olan kontrol saklayıcısına kontrol kelimesinin yazılmasıyla belirlenir.Bir 8255 dış dünya ile haberleşmede kullanılan iki tane 8-bit porta ve iki tanede 4-bit porta, mikroişlemci ile haberleşmesini sağlayan 8-bit veri yoluna D0 – D7 ve entegrenin seçimi, okuma/yazma,port seçimi ve resetleme kontrolüne ait uçlara sahiptir yukarıdaki tabloda bu uçlar ve görevleri verilmiştir.

Bir 8255 i kontrol etmek için 6 giriş bulunur. Bunların görevleri şu şekildedir.

RD: Bu kontrol sinyali okuma içindir. Bu sinyal düşük (lojik 0) olduğunda mikroişlemci 8255 in seçilmiş bir I/O potundan veriyi okur.

WR: Bu Kontrol sinyali yazma içindir. Bu sinyal düşük (lojik 0) olduğunda mikroişlemci 8255 in seçilmiş I/O portuna veya kontrol saklayıcısına yazar.

RESET: Bu aktif yüksek (lojik 1) bir sinyaldir. Kontrol saklayıcısını temizler ve giriş modunda bütün portları 1’ler.

CS, A0 – A1: Bunlar entegre ve port seçim sinyalleridir. CS kodu çözülmüş bir adrese (bir kod çözücünün çıkışına) ve A0 ve A1 ise genellikle mikroişlemcinin A0 ve A1 adres hatlarına bağlanır. CS sinyali ana entegre seçin sinyalidir ve A0 ve A1 I/O portlarından birini veya kontrol saklayıcısını aşağıda gösterildiği gibi belirler.

CS

A1

A0

Seçilen

Port A

Port B

Port C

Kontrol Saklayıcısı

8255 seçilmez….

Aşağıdaki şekilde 8255 in kontrol saklayıcısına yazılan kontrol kelimesindeki D7 bitine göre belirlenen BSR veya I/O modunda ki bir 8255 in bütün çalışma durumlarını gösterir.

Buradaki şekilde de 8255 in tüm fonksiyonları gözükmektedir. Bu fonksiyonlar iki moda göre sınıflandırılmıştır: Bit Set/Reset (BSR) modu ve I/O modu. BSR modu C portundaki bitleri 1’lemek veya 0’lamak için kullanılır. I/O modu ise Mod 0, Mod 1 ve Mod 2 olarak üçe ayrılır.

Mod 0 da bütün portlar basit I/O portları olarak kullanılır. Mod 1 el sıkışmalı (Handshake) I/O modudur. Bu mod da Port A ve Port B, Port C’ nin bitlerini karşılıklı haberleşme sinyalleri olarak kullanır. Handshake I/O modunda iki çeşit veri transferi gerçekleştirilebilir: durum kontrolü ve kesmeli. Mod 2 de Port A, Port C den karşılıklı haberleşme sinyalleri kullanarak iki yönlü veri transferi yapacak şekilde ve Port B de Mod 0 veya Mod 1 de çalışmaya programlanabilir.

Aşağıda ise 8255 in kontrol saklayıcısı görülmektedir. Bu saklayıcının içeriği kontrol kelimesi (control word) olarak adlandırılır ve her port için bir I/O fonksiyonu belirler. CS hattı lojik 0 olup 8255 seçildikten sonra A0 ve A1 lojik 1 iken bir kontrol kelimesi yazmak için bu saklayıcı erişilebilir. Bu saklayıcı okuma işlemi için erişilemez.

Kontrol saklayıcısının D7 biti hem I/O hem de BSR fonksiyonlarını belirler. D7=1 ise D6–D0 bitleri çeşitli modlardaki I/O işlemlerini belirler. D7=0 ise Port C BSR modunda çalışır. Bir BSR kontrol kelimesi Port A ve Port B yi etkilemez.

Bir mikroişlemcinin 8255 üzerinden harici birimlerle haberleşmesinde aşağıdaki üç adım uygulanır.

Entegre seçme lojiği ve A0—A1 adres hatlarına göre A,B,C portlarının ve kontrol saklayıcısının adresleri belirlenir.

Kontrol saklayıcısına bir kontrol kelimesi yazılır.

A,B,C portları üzerinden çevre birimlerle haberleşme için I/O komutları yazılır.

Sonuç olarak burada devrede kullanılan programlanabilir bir çevre birimi olan 8255 hakkında gerekli bilgiler sunulmuştur. Bu bilgiler ışığında herhangi bir port çoğullama ihtiyacını 8255 aracılığı ile rahatlıkla gerçekleştirebiliriz.

Aşağıdaki blok diyagramında görüldüğü gibi 8255 ile port oluşturmak için 8255 ile ISA yuvası arasında çeşitli arabirim kullanmak gerekir.

adet

Malzemenin ismi

8255

74LS154

74LS244

74LS688

74LS04

74LS08

74LS32

74LS245

74LS154 (4×16 DECODER/DEMULTPLEXER ):

74LS154 entegresi G1 ve G2 uçları lojik 0 olduğunda aktif olur. Ayrıca bu entegrenin çıkışları invörslüdür. Çıkışlar invörslü olduğu için girişe uygulanan her binary sayı değerine karşılık çıkışta sadece bir tane uç lojik0 diğerleri lojik1 durumunu alır. Çıkıştaki bacakların her biri tek bir giriş değerinde lojik0 olurlar.

74LS244 ( TREE STATE BUFFER):

8 adet giriş ve 8 adet çıkış bacakları vardır. G1 ve G2 olmak üzere iki adet enble bacakları vardır. G1 ve G2 lojik0 olduğunda entegre aktif durumdadır. Bu entegrede bilgi akış yönü sadece bir yönde olur. Diğer yönde entegre yüksek empedans gösterir.

74LS245( ÇİFT YÖNLÜ BUFFER ):

Bu entegrede çift yönlü bilgi akışı olabilir. Bilginin akış yönünün belirlenmesi DIR ucuna uygulanan lojik seviyeye bağlı olarak ayarlana bilir. 8 adet giriş ve 8adet çıkış uçları vardır.

74LS688 ( 8 BIT MAGNITUDE COMPARATOR ):

Bu entegere 8 bitlik iki sayıyı karşılaştırmaya yarar.

P=Q ise çıkış LOW

P

P>Q ise çıkış HİGH

74LS04 (İNVERTER);

Grişine uygulanan lojik seviyenin tersini çıkışta gösterir yani giriş sinyalini terslendirir.

74LS08 (İKİ GİRİŞLİ AND);

Bu entegrenin içinde 4 adet iki girişli and kapısı bulunmaktadır. And kapılarında çıkış, giriş uçları sadece lojik1 olduğunda lojik1 olur. Diğer durumlarda lojik 0 olur.

74LS32 (İKİ GİRİŞLİ OR)

Bu entegrenin içinde 4 adet iki girişli OR kapısı bulunmaktadır. OR kapılarında çıkış, giriş uçları sadece lojik0 olduğunda lojik0 olur. Diğer durumlarda lojik1 olur.

8255 İLE YAPACAĞIMIZ KARTIN DEVRESİ:

ISA SLOTUNUN YAPISI:

A1

/I/O CH CK

I/O channel check; active low=parity error

A2

D7

Data bit 7

A3

D6

Data bit 6

A4

D5

Data bit 5

A5

D4

Data bit 4

A6

D3

Data bit 3

A7

D2

Data bit 2

A8

D1

Data bit 1

A9

D0

Data bit 0

A10

I/O CH RDY

I/O Channel ready, pulled low to lengthen memory cycles

A11

AEN

Address enable; active high when DMA controls bus

A12

A19

Address bit 19

A13

A18

Address bit 18

A14

A17

Address bit 17

A15

A16

Address bit 16

A16

A15

Address bit 15

A17

A14

Address bit 14

A18

A13

Address bit 13

A19

A12

Address bit 12

A20

A11

Address bit 11

A21

A10

Address bit 10

A22

A9

Address bit 9

A23

A8

Address bit 8

A24

A7

Address bit 7

A25

A6

Address bit 6

A26

A5

Address bit 5

A27

A4

Address bit 4

A28

A3

Address bit 3

A29

A2

Address bit 2

A30

A1

Address bit 1

A31

A0

Address bit 0

B1

GND

Ground

B2

RESET

Active high to reset or initialize system logic

B3

+5V

+5 VDC

B4

IRQ2

Interrupt Request 2

B5

-5VDC

-5 VDC

B6

DRQ2

DMA Request 2

B7

-12VDC

-12 VDC

B8

/NOWS

No WaitState

B9

+12VDC

+12 VDC

B10

GND

Ground

B11

/SMEMW

System Memory Write

B12

/SMEMR

System Memory Read

B13

/IOW

I/O Write

B14

/IOR

I/O Read

B15

/DACK3

DMA Acknowledge 3

B16

DRQ3

DMA Request 3

B17

/DACK1

DMA Acknowledge 1

B18

DRQ1

DMA Request 1

B19

/REFRESH

Refresh

B20

CLOCK

System Clock (67 ns, 8-8.33 MHz, 50% duty cycle)

B21

IRQ7

Interrupt Request 7

B22

IRQ6

Interrupt Request 6

B23

IRQ5

Interrupt Request 5

B24

IRQ4

Interrupt Request 4

B25

IRQ3

Interrupt Request 3

B26

/DACK2

DMA Acknowledge 2

B27

T/C

Terminal count; pulses high when DMA term. count reached

B28

ALE

Address Latch Enable

B29

+5V

+5 VDC

B30

OSC

High-speed Clock (70 ns, 14.31818 MHz, 50% duty cycle)

B31

GND

Ground

C1

SBHE

System bus high enable (data available on SD8-15)

C2

LA23

Address bit 23

C3

LA22

Address bit 22

C4

LA21

Address bit 21

C5

LA20

Address bit 20

C6

LA18

Address bit 19

C7

LA17

Address bit 18

C8

LA16

Address bit 17

C9

/MEMR

Memory Read (Active on all memory read cycles)

C10

/MEMW

Memory Write (Active on all memory write cycles)

C11

SD08

Data bit 8

C12

SD09

Data bit 9

C13

SD10

Data bit 10

C14

SD11

Data bit 11

C15

SD12

Data bit 12

C16

SD13

Data bit 13

C17

SD14

Data bit 14

C18

SD15

Data bit 15

D1

/MEMCS16

Memory 16-bit chip select (1 wait, 16-bit memory cycle)

D2

/IOCS16

I/O 16-bit chip select (1 wait, 16-bit I/O cycle)

D3

IRQ10

Interrupt Request 10

D4

IRQ11

Interrupt Request 11

D5

IRQ12

Interrupt Request 12

D6

IRQ15

Interrupt Request 15

D7

IRQ14

Interrupt Request 14

D8

/DACK0

DMA Acknowledge 0

D9

DRQ0

DMA Request 0

D10

/DACK5

DMA Acknowledge 5

D11

DRQ5

DMA Request 5

D12

/DACK6

DMA Acknowledge 6

D13

DRQ6

DMA Request 6

D14

/DACK7

DMA Acknowledge 7

D15

DRQ7

DMA Request 7

D16

+5 V

D17

/MASTER

Used with DRQ to gain control of system

D18

GND

Ground

BİLGİSAYARDAKİ I/O PORT ADRESLERİ:

Port (hex)

Port Assignments

000-00F

DMA Controller

010-01F

DMA Controller (PS/2)

020-02F

Master Programmable Interrupt Controller (PIC)

030-03F

Slave PIC

040-05F

Programmable Interval Timer (PIT)

060-06F

Keyboard Controller

070-071

Real Time Clock

080-083

DMA Page Register

090-097

Programmable Option Select (PS/2)

0A0-0AF

PIC #2

0C0-0CF

DMAC #2

0E0-0EF

Reserved

0F0-0FF

Math coprocessor, PCJr Disk Controller

100-10F

Programmable Option Select (PS/2)

110-16F

AVAILABLE

170-17F

Hard Drive 1 (AT)

180-1EF

AVAILABLE

1F0-1FF

Hard Drive 0 (AT)

200-20F

Game Adapter

210-217

Expansion Card Ports

220-26F

AVAILABLE

278-27F

Parallel Port 3

280-2A1

AVAILABLE

2A2-2A3

Clock

2B0-2DF

EGA/Video

2E2-2E3

Data Acquisition Adapter (AT)

2E8-2EF

Serial Port COM4

2F0-2F7

Reserved

2F8-2FF

Serial Port COM2

300-31F

Prototype Adapter, Periscope Hardware Debugger

320-32F

AVAILABLE

330-33F

Reserved for XT/370

340-35F

AVAILABLE

360-36F

Network

370-377

Floppy Disk Controller

378-37F

Parallel Port 2

380-38F

SDLC Adapter

390-39F

Cluster Adapter

3A0-3AF

Reserved

3B0-3BF

Monochrome Adapter

3BC-3BF

Parallel Port 1

3C0-3CF

EGA/VGA

3D0-3DF

Color Graphics Adapter

3E0-3EF

Serial Port COM3

3F0-3F7

Floppy Disk Controller

3F8-3FF

Serial Port COM1

Yorum Yaz

Yorum Yazabilmek İçin Lütfen Giriş Yapın.