BBM 231 – Bellek ve Programlanabilir Mantık (memory and ...aykut/classes/fall2012/bbm231/... ·...

51
BBM 231 – Bellek ve Programlanabilir Mantık (memory and programmable logic) Hacettepe Üniversitesi Bilgisayar Müh. Bölümü

Transcript of BBM 231 – Bellek ve Programlanabilir Mantık (memory and ...aykut/classes/fall2012/bbm231/... ·...

Page 1: BBM 231 – Bellek ve Programlanabilir Mantık (memory and ...aykut/classes/fall2012/bbm231/... · BBM 231 – Bellek ve ... ©2007 by Prentice Hall, Inc. A Pearson Company Figure

BBM 231 – Bellek ve Programlanabilir Mantık

(memory and programmable logic)"

Hacettepe Üniversitesi Bilgisayar Müh. Bölümü

Page 2: BBM 231 – Bellek ve Programlanabilir Mantık (memory and ...aykut/classes/fall2012/bbm231/... · BBM 231 – Bellek ve ... ©2007 by Prentice Hall, Inc. A Pearson Company Figure

Bu derste"•  Rastgele erişimli bellek

(random-access memory (RAM))

•  Salt okunur bellek (read-only memory (ROM))

•  Programlanabilir mantık aygıtları (programmable logic devices)

•  Dizisel programlanabilir aygıtlar

2  

Page 3: BBM 231 – Bellek ve Programlanabilir Mantık (memory and ...aykut/classes/fall2012/bbm231/... · BBM 231 – Bellek ve ... ©2007 by Prentice Hall, Inc. A Pearson Company Figure

Bellek"•  Bellek, bir grup bilgi saklama hücresi ile bu hücrelerden

bilgi aktarmak veya onlara bilgi yüklemek amacıyla tasarlanmış olan devrelerden oluşur.

•  2 türü vardır: –  Rastgele erişimli bellek (RAM)

•  Bellekten okuma •  Belleğe yazma

–  Salt okunur bellek (ROM) •  Bellekten okuma

•  Dizisel mantık gösterimi

3  (a) Conventional symbol (b) Array logic symbol

©2007 by Prentice Hall, Inc.A Pearson Company

Figure Number: 07 01 ab Mano/CilettiDigital Design, 4e

AACFLRX0

(a) Conventional symbol (b) Array logic symbol

©2007 by Prentice Hall, Inc.A Pearson Company

Figure Number: 07 01 ab Mano/CilettiDigital Design, 4e

AACFLRX0

Page 4: BBM 231 – Bellek ve Programlanabilir Mantık (memory and ...aykut/classes/fall2012/bbm231/... · BBM 231 – Bellek ve ... ©2007 by Prentice Hall, Inc. A Pearson Company Figure

Rastgele erişimli bellek (RAM)"•  Bir RAM bellekte herhangi bir konumdaki bilgiye

erişim her zaman aynı sürede gerçekleşir. •  Kelime (word): Bir grup bit’in biraraya gelerek

oluşan veri topluluğu –  1 bayt = 8 bit’lik kelime

Bir bellek ünitesinin kapasitesi saklayabileceği toplam bilginin kaç bayt olduğu ile ölçülür.

4  

Page 5: BBM 231 – Bellek ve Programlanabilir Mantık (memory and ...aykut/classes/fall2012/bbm231/... · BBM 231 – Bellek ve ... ©2007 by Prentice Hall, Inc. A Pearson Company Figure

2k×n bit’lik bellek"

•  Her biri n bit’lik bilgi saklayan toplam 2k farklı hücreye sahiptir.

•  Her hücre 0’dan 2k-1 arasında bir adres ile adreslenir. 5  

Memory unit2k words

n bit per word

k address lines

Read

Write

n data input lines

n data output lines

©2007 by Prentice Hall, Inc.A Pearson Company

Figure Number: 07 02 Mano/CilettiDigital Design, 4e

AACFLRY0

Page 6: BBM 231 – Bellek ve Programlanabilir Mantık (memory and ...aykut/classes/fall2012/bbm231/... · BBM 231 – Bellek ve ... ©2007 by Prentice Hall, Inc. A Pearson Company Figure

1024×16 bit’lik bellek"

6  

Memory content

10110101010111010000000000

10101011100010010000000001

00001101010001100000000010

0

1

2

1111111101

1111111110

1111111111

Memory address

Binary Decimal

1021

1022

1023

1001110100010100

0000110100011110

1101111000100101

••••

••••

©2007 by Prentice Hall, Inc.A Pearson Company

Figure Number: 07 03 Mano/CilettiDigital Design, 4e

AACFLRZ0

Page 7: BBM 231 – Bellek ve Programlanabilir Mantık (memory and ...aykut/classes/fall2012/bbm231/... · BBM 231 – Bellek ve ... ©2007 by Prentice Hall, Inc. A Pearson Company Figure

Yazma ve Okuma İşlemleri"

•  Bellekten okuma: Belli bir adreste bulunan ikili bilginin aktarılması işlemidir. –  Adres alanına (address lines) ilgili adresi yaz, –  Okuma (read) girişini aktive et.

•  Belleğe yazma: Belli bir adrese verilen ikili bilginin saklanması işlemidir. –  Adres alanına (address lines) ilgili adresi yaz, –  Veri girişi alanına (data input lines) ilgili veriyi yaz, –  Yazma (write) girişini aktive et.

7  

©2007 by Prentice Hall, Inc.A Pearson Company

Figure Number: Table07 01 Mano/CilettiDigital Design, 4ePage Number:

TB0701

Page 8: BBM 231 – Bellek ve Programlanabilir Mantık (memory and ...aykut/classes/fall2012/bbm231/... · BBM 231 – Bellek ve ... ©2007 by Prentice Hall, Inc. A Pearson Company Figure

Bellek zamanlama çizeneği – Bellekten okuma"

8  

20 nsec

T1 T1T2 T3

Address valid

Data valid

(a) Write cycle

Clock

Memoryaddress

Memoryenable

Read/Write

Datainput

50 nsec

T1 T1T2 T3

Address valid

Data valid

(b) Read cycle

Clock

Memoryaddress

Memoryenable

Read/Write

Dataoutput

Initiate writing

Initiate read

Latched

©2007 by Prentice Hall, Inc.A Pearson Company

Figure Number: 07 04 ab Mano/CilettiDigital Design, 4e

AACFLSA0 CPU saat çevrimi = 20 nsec.

Page 9: BBM 231 – Bellek ve Programlanabilir Mantık (memory and ...aykut/classes/fall2012/bbm231/... · BBM 231 – Bellek ve ... ©2007 by Prentice Hall, Inc. A Pearson Company Figure

Bellek zamanlama çizeneği – Belleğe yazma "

9  

20 nsec

T1 T1T2 T3

Address valid

Data valid

(a) Write cycle

Clock

Memoryaddress

Memoryenable

Read/Write

Datainput

50 nsec

T1 T1T2 T3

Address valid

Data valid

(b) Read cycle

Clock

Memoryaddress

Memoryenable

Read/Write

Dataoutput

Initiate writing

Initiate read

Latched

©2007 by Prentice Hall, Inc.A Pearson Company

Figure Number: 07 04 ab Mano/CilettiDigital Design, 4e

AACFLSA0

CPU saat çevrimi = 20 nsec.

Page 10: BBM 231 – Bellek ve Programlanabilir Mantık (memory and ...aykut/classes/fall2012/bbm231/... · BBM 231 – Bellek ve ... ©2007 by Prentice Hall, Inc. A Pearson Company Figure

RAM türleri"•  Statik rastgele erişimli bellek (SRAM) •  Dinamik rastgele erişimli bellek (DRAM)

10  

Trans. Access Needs Needs per bit time refresh? EDC? Cost Applications

SRAM 4 or 6 1X No Maybe 100x Cache memories DRAM 1 10X Yes Yes 1X Main memories,

frame buffers

Page 11: BBM 231 – Bellek ve Programlanabilir Mantık (memory and ...aykut/classes/fall2012/bbm231/... · BBM 231 – Bellek ve ... ©2007 by Prentice Hall, Inc. A Pearson Company Figure

RAM’ın mantıksal yapısı"•  SR türü bir mandal ile bir ikili hücrenin

oluşturulması

11  

BC

Select

OutputInput

Read/Write

Read/Write

S

R

Select

InputOutput

(a) Logic diagram (b) Block diagram

©2007 by Prentice Hall, Inc.A Pearson Company

Figure Number: 07 05 Mano/CilettiDigital Design, 4e

AACFLSB0

BC

Select

OutputInput

Read/Write

Read/Write

S

R

Select

InputOutput

(a) Logic diagram (b) Block diagram

©2007 by Prentice Hall, Inc.A Pearson Company

Figure Number: 07 05 Mano/CilettiDigital Design, 4e

AACFLSB0

Page 12: BBM 231 – Bellek ve Programlanabilir Mantık (memory and ...aykut/classes/fall2012/bbm231/... · BBM 231 – Bellek ve ... ©2007 by Prentice Hall, Inc. A Pearson Company Figure

4x4 RAM"

12  

BC BC BC BC

BC BC BC BC

BC BC BC BC

BC BC BC BC

Output data

Input data

Addressinputs

Memoryenable

Read/Write

Word 0

Word 1

Word 2

Word 3

2 ! 4decoder

EN

©2007 by Prentice Hall, Inc.A Pearson Company

Figure Number: 07 06 Mano/CilettiDigital Design, 4e

AACFLSC0

BC

Select

OutputInput

Read/Write

Read/Write

S

R

Select

InputOutput

(a) Logic diagram (b) Block diagram

©2007 by Prentice Hall, Inc.A Pearson Company

Figure Number: 07 05 Mano/CilettiDigital Design, 4e

AACFLSB0

Page 13: BBM 231 – Bellek ve Programlanabilir Mantık (memory and ...aykut/classes/fall2012/bbm231/... · BBM 231 – Bellek ve ... ©2007 by Prentice Hall, Inc. A Pearson Company Figure

Çakışmalı kodlama "•  2 tane 5×32 kodlayıcı – Biri satır seçimi gerçekleştirirken, diğeri sütun seçimi

gerçekleştirir.

13  

5 ! 32 decoder

5 ! 32 decoderX

Y

0 1 2 20 31. . . . . . .

binary address01100 10100

X Y

0

1

2

12

31

.

.

.

.

.

.

©2007 by Prentice Hall, Inc.A Pearson Company

Figure Number: 07 07 Mano/CilettiDigital Design, 4e

AACFLSD0

10 ×1024 kodlayıcıya göre daha avantajlıdır. Neden?

Page 14: BBM 231 – Bellek ve Programlanabilir Mantık (memory and ...aykut/classes/fall2012/bbm231/... · BBM 231 – Bellek ve ... ©2007 by Prentice Hall, Inc. A Pearson Company Figure

Dinamik bellekler ve adres çoklama"

•  DRAM türü bellekler, SRAM’lara oranla daha büyük kapasitelere ulaşabilir. 4 kat daha yoğundur. 14  

Datain

Dataout

8-bit columnregister

8-bit row

register

8 ! 256decoder

8 ! 256decoder Read/Write

256 ! 256memorycell array

CAS

RAS

8-bitaddress

©2007 by Prentice Hall, Inc.A Pearson Company

Figure Number: 07 08 Mano/CilettiDigital Design, 4e

AACFLSE0

Page 15: BBM 231 – Bellek ve Programlanabilir Mantık (memory and ...aykut/classes/fall2012/bbm231/... · BBM 231 – Bellek ve ... ©2007 by Prentice Hall, Inc. A Pearson Company Figure

Yanlış bulma ve düzeltme"

•  Sayısal sistemler içinde veya sayısal sistemler arası iletişimde, düşük olasılıkla da olsa veri bozulabilir.

•  Güvenilirliği arttırmak amacıyla yanlış bulan/yanlış düzelten kodlar kullanılır.

•  Yanlış bulma: Oluşabilecek bir hatanın sadece saptanması amaçlanır.

•  Yanlış düzeltme: Oluşabilecek bir hatanın hem saptanıp hem de düzeltilmesi amaçlanır. –  Fazladan eşlik (parity) bit’leri eklenir. – Hata oluştuğunda kontrol bit’lerinin oluşturduğu vektör

(sendrom vektörü) hatanın konumunu gösterir. 15  

Page 16: BBM 231 – Bellek ve Programlanabilir Mantık (memory and ...aykut/classes/fall2012/bbm231/... · BBM 231 – Bellek ve ... ©2007 by Prentice Hall, Inc. A Pearson Company Figure

Hamming kodu (1)"•  Richard W. Hamming tarafından tasarlanmıştır. •  1 bit’lik bir yanlışı hem saptar hem de düzeltir. •  n bit’lik veriye p eşlik bit’i eklenir – n+p uzunluğunda bir sözcük elde edilir – 2p ≥ n + p + 1

16  

©2007 by Prentice Hall, Inc.A Pearson Company

Figure Number: Table07 02 Mano/CilettiDigital Design, 4e

TB0702

Page 17: BBM 231 – Bellek ve Programlanabilir Mantık (memory and ...aykut/classes/fall2012/bbm231/... · BBM 231 – Bellek ve ... ©2007 by Prentice Hall, Inc. A Pearson Company Figure

Hamming kodu (2)"•  Örnek: 11000100

17  

Konum 1 2 3 4 5 6 7 8 9 10 11 12 P1 P2 1 P4 1 0 0 P8 0 1 0 0

P1 = XOR bitler(3,5,7,9,11) = 1 ⊕ 1 ⊕ 0 ⊕ 0 ⊕ 0 = 0 P2 = XOR bitler(3,6,7,10,11) = 1 ⊕ 0 ⊕ 0 ⊕ 1 ⊕ 0 = 0 P4 = XOR bitler(5,6,7,12) = 1 ⊕ 0 ⊕ 0 ⊕ 0 = 1 P8 = XOR bitler(9,10,11,12) = 0 ⊕ 1 ⊕ 0 ⊕ 0 = 1

Konum 1 2 3 4 5 6 7 8 9 10 11 12 0 0 1 1 1 0 0 1 0 1 0 0

Page 18: BBM 231 – Bellek ve Programlanabilir Mantık (memory and ...aykut/classes/fall2012/bbm231/... · BBM 231 – Bellek ve ... ©2007 by Prentice Hall, Inc. A Pearson Company Figure

Hamming kodu (3)"•  Örnek: 11000100

•  C8C4C2C1 = 0000 ise bir yanlış yoktur.

18  

C1 = XOR bitler(1,3,5,7,9,11) C2 = XOR bitler(2,3,6,7,10,11) C4 = XOR bitler(4,5,6,7,12) C8 = XOR bitler(8,9,10,11,12)

Konum 1 2 3 4 5 6 7 8 9 10 11 12 0 0 1 1 1 0 0 1 0 1 0 0 Yanlış yok 1 0 1 1 1 0 0 1 0 1 0 0 1. bit yanlış 0 0 1 1 0 0 0 1 0 1 0 0 5. bit yanlış

0 0 0 0 0 0 0 1 0 1 0 1 C8 C4 C2 C1

Page 19: BBM 231 – Bellek ve Programlanabilir Mantık (memory and ...aykut/classes/fall2012/bbm231/... · BBM 231 – Bellek ve ... ©2007 by Prentice Hall, Inc. A Pearson Company Figure

Hamming kodu (4)"•  1 bit’lik yanlışı düzelten, 2 bit’lik yanlışları bulan

Hamming kodu – Ek bir eşlik bit’i eklenir.

•  Örnek: 001110010100P13 P13: XOR(1,…,12) P13 = 1

19  

C = 0 ve P = 0 yanlış yok C ≠ 0 ve P = 1 1 bit’lik yanlış saptandı (düzeltilebilir) C ≠ 0 ve P = 0 2 bit’lik yanlış saptandı (düzeltilemez) C = 0 ve P = 1 eşlik biti hatalı

Page 20: BBM 231 – Bellek ve Programlanabilir Mantık (memory and ...aykut/classes/fall2012/bbm231/... · BBM 231 – Bellek ve ... ©2007 by Prentice Hall, Inc. A Pearson Company Figure

Salt okunur bellek (ROM)"•  Belli bir bilginin daimi olarak saklandığı bellek

yapılarıdır. – k girişi n çıkışı olan birleşimsel bir devredir.

20  

2k ! nROM

k inputs (address) n outputs (data)

©2007 by Prentice Hall, Inc.A Pearson Company

Figure Number: 07 09 Mano/CilettiDigital Design, 4e

AACFLSF0

Page 21: BBM 231 – Bellek ve Programlanabilir Mantık (memory and ...aykut/classes/fall2012/bbm231/... · BBM 231 – Bellek ve ... ©2007 by Prentice Hall, Inc. A Pearson Company Figure

32x8 ROM’un mantıksal yapısı"

•  Devresi içinde tüm minterm’ler (toplam 256 adet) üretilir ve programlamada kullanılabilir. 21  

5 ! 32decoder

A7

I0

I1

I2

I3

I4

A6 A5 A4 A3 A2 A1 A0

0

1

2

3

28

29

30

31

.

.

.

©2007 by Prentice Hall, Inc.A Pearson Company

Figure Number: 07 10 Mano/CilettiDigital Design, 4e

AACFLSG0

Page 22: BBM 231 – Bellek ve Programlanabilir Mantık (memory and ...aykut/classes/fall2012/bbm231/... · BBM 231 – Bellek ve ... ©2007 by Prentice Hall, Inc. A Pearson Company Figure

ROM Programlama (1)"

22  

©2007 by Prentice Hall, Inc.A Pearson Company

Figure Number: Table07 03 Mano/CilettiDigital Design, 4e

TB0703

Page 23: BBM 231 – Bellek ve Programlanabilir Mantık (memory and ...aykut/classes/fall2012/bbm231/... · BBM 231 – Bellek ve ... ©2007 by Prentice Hall, Inc. A Pearson Company Figure

ROM Programlama (2)"

23  

5 ! 32decoder

A7

I0

I1

I2

I3

I4

A6 A5 A4 A3 A2 A1 A0

0

1

2

3

28

29

30

31

.

.

.

©2007 by Prentice Hall, Inc.A Pearson Company

Figure Number: 07 11 Mano/CilettiDigital Design, 4e

AACFLSH0

Page 24: BBM 231 – Bellek ve Programlanabilir Mantık (memory and ...aykut/classes/fall2012/bbm231/... · BBM 231 – Bellek ve ... ©2007 by Prentice Hall, Inc. A Pearson Company Figure

Örnek: Kare Alma (1)"•  3 bit’lik sayıların karesini alan bir birleşimsel

devrenin ROM kullanarak tasarımı.

24  

©2007 by Prentice Hall, Inc.A Pearson Company

Figure Number: Table07 04 Mano/CilettiDigital Design, 4e

TB0704

Page 25: BBM 231 – Bellek ve Programlanabilir Mantık (memory and ...aykut/classes/fall2012/bbm231/... · BBM 231 – Bellek ve ... ©2007 by Prentice Hall, Inc. A Pearson Company Figure

Örnek: Kare Alma (2)"•  3 bit’lik sayıların karesini alan bir birleşimsel

devrenin ROM kullanarak tasarımı.

25  

A0

B0

B1

B2

B3

B4

B5

A1

A2

(a) Block diagram (b) ROM truth table

0

8 ! 4 ROM

A2 A1 A0 B5 B4 B3 B2

00

000

1

01

00

0

0

0

1

0

1

00

1

0

0

0

1

1

00

1

0

1

0

1

1

00

0

0

1

0

1

0

00

0

1

1

1

1

0

01

0

0

0

1

1

1

©2007 by Prentice Hall, Inc.A Pearson Company

Figure Number: 07 12 ab Mano/CilettiDigital Design, 4e

AACFLSI0

A0

B0

B1

B2

B3

B4

B5

A1

A2

(a) Block diagram (b) ROM truth table

0

8 ! 4 ROM

A2 A1 A0 B5 B4 B3 B2

00

000

1

01

00

0

0

0

1

0

1

00

1

0

0

0

1

1

00

1

0

1

0

1

1

00

0

0

1

0

1

0

00

0

1

1

1

1

0

01

0

0

0

1

1

1

©2007 by Prentice Hall, Inc.A Pearson Company

Figure Number: 07 12 ab Mano/CilettiDigital Design, 4e

AACFLSI0

Page 26: BBM 231 – Bellek ve Programlanabilir Mantık (memory and ...aykut/classes/fall2012/bbm231/... · BBM 231 – Bellek ve ... ©2007 by Prentice Hall, Inc. A Pearson Company Figure

ROM türleri"•  Maske programlama (mask programming). Yapımcı firma

tarafından programlanır ve içeriği değiştirilemez.

•  PROM (Programmable ROM). Kullanıcı tarafından PROM Programlayıcı kullanılarak programlanan, ancak bir kez programlandıktan sonra içeriği değiştirilemeyen ROM.

•  EPROM (Erasable Programmable ROM). Kullanıcı tarafından programlanan ve istendiğinde içeriği silinerek yeniden programlanabilen ROM.

•  EEPROM (Electrically Erasable Programmable ROM). Kullanıcı tarafından programlanan ve istendiğinde içeriği elektriksel olarak silinerek yeniden programlanabilen ROM.

26  

Page 27: BBM 231 – Bellek ve Programlanabilir Mantık (memory and ...aykut/classes/fall2012/bbm231/... · BBM 231 – Bellek ve ... ©2007 by Prentice Hall, Inc. A Pearson Company Figure

Birleşimsel programlanabilir mantık aygıtları"

•  PROM Programmable ROM •  PLA Programlanabilir mantık dizisi (programmable logic

array) •  PAL Programlanabilir dizi mantığı (programmable array

logic)

27  

Inputs OutputsFixed

AND array(decoder)

programmableOR array

(a) Programmable read-only memory (PROM)

Inputs OutputsprogrammableAND array

FixedOR array

(b) Programmable array logic (PAL)

Inputs OutputsprogrammableOR array

programmableAND array

(c) Programmable logic array (PLA)

©2007 by Prentice Hall, Inc.A Pearson Company

Figure Number: 07 13 a-c Mano/CilettiDigital Design, 4e

AACFLSJ0

Inputs OutputsFixed

AND array(decoder)

programmableOR array

(a) Programmable read-only memory (PROM)

Inputs OutputsprogrammableAND array

FixedOR array

(b) Programmable array logic (PAL)

Inputs OutputsprogrammableOR array

programmableAND array

(c) Programmable logic array (PLA)

©2007 by Prentice Hall, Inc.A Pearson Company

Figure Number: 07 13 a-c Mano/CilettiDigital Design, 4e

AACFLSJ0

Inputs OutputsFixed

AND array(decoder)

programmableOR array

(a) Programmable read-only memory (PROM)

Inputs OutputsprogrammableAND array

FixedOR array

(b) Programmable array logic (PAL)

Inputs OutputsprogrammableOR array

programmableAND array

(c) Programmable logic array (PLA)

©2007 by Prentice Hall, Inc.A Pearson Company

Figure Number: 07 13 a-c Mano/CilettiDigital Design, 4e

AACFLSJ0

Page 28: BBM 231 – Bellek ve Programlanabilir Mantık (memory and ...aykut/classes/fall2012/bbm231/... · BBM 231 – Bellek ve ... ©2007 by Prentice Hall, Inc. A Pearson Company Figure

Programlanabilir mantık dizisi (PLA)"•  ROM’dan en önemli farkı, devre içinde tüm

minterm’lerin üretilmemesidir. – Programlanabilir AND ve OR geçit dizileri sahiptir.

•  Örnek:

28  

1

2

3

4

C C!

C

B

B

B! A

A

A!

AB!

AC

BC

A!BC!

0

1

F1

F2

©2007 by Prentice Hall, Inc.A Pearson Company

Figure Number: 07 14 Mano/CilettiDigital Design, 4e

AACFLSK0

Page 29: BBM 231 – Bellek ve Programlanabilir Mantık (memory and ...aykut/classes/fall2012/bbm231/... · BBM 231 – Bellek ve ... ©2007 by Prentice Hall, Inc. A Pearson Company Figure

Programlanabilir mantık dizisi (PLA)"

29  

©2007 by Prentice Hall, Inc.A Pearson Company

Figure Number: Table07 05 Mano/CilettiDigital Design, 4e

TB0705

Page 30: BBM 231 – Bellek ve Programlanabilir Mantık (memory and ...aykut/classes/fall2012/bbm231/... · BBM 231 – Bellek ve ... ©2007 by Prentice Hall, Inc. A Pearson Company Figure

Boole işlevlerinin PLA kullanarak gerçekleştirimi"

•  Örnek: F1(A,B,C) = Σ(0,1,2,4) F2(A,B,C) = Σ(0,5,6,7)

F1 = (AB+AC+BC)’ F2 = AB+AC+A’B’C’

30  

B

C

0

1

00 01 11 10ABC

A

1m0 m1 m3 m2

m6m7m5m4

1 0 1

1 0 0 0

B

A

m0 m1 m3 m2

m6m7m5m4

0

1

00 01 11 10ABC

1 0 0 0

0 1 1 1

C

PLA programming table

Product term

Inputs

A B C

Outputs(C) (T)

F1 F2

AB 1 11 1 – 1AC 2 11 – 1 1BC 3 1– 1 1 –A!B!C! 4 –0 0 0 1

©2007 by Prentice Hall, Inc.A Pearson Company

Figure Number: 07 15 Mano/CilettiDigital Design, 4e

AAHFUYJ0

B

C

0

1

00 01 11 10ABC

A

1m0 m1 m3 m2

m6m7m5m4

1 0 1

1 0 0 0

B

A

m0 m1 m3 m2

m6m7m5m4

0

1

00 01 11 10ABC

1 0 0 0

0 1 1 1

C

PLA programming table

Product term

Inputs

A B C

Outputs(C) (T)

F1 F2

AB 1 11 1 – 1AC 2 11 – 1 1BC 3 1– 1 1 –A!B!C! 4 –0 0 0 1

©2007 by Prentice Hall, Inc.A Pearson Company

Figure Number: 07 15 Mano/CilettiDigital Design, 4e

AAHFUYJ0

B

C

0

1

00 01 11 10ABC

A

1m0 m1 m3 m2

m6m7m5m4

1 0 1

1 0 0 0

B

A

m0 m1 m3 m2

m6m7m5m4

0

1

00 01 11 10ABC

1 0 0 0

0 1 1 1

C

PLA programming table

Product term

Inputs

A B C

Outputs(C) (T)

F1 F2

AB 1 11 1 – 1AC 2 11 – 1 1BC 3 1– 1 1 –A!B!C! 4 –0 0 0 1

©2007 by Prentice Hall, Inc.A Pearson Company

Figure Number: 07 15 Mano/CilettiDigital Design, 4e

AAHFUYJ0

Page 31: BBM 231 – Bellek ve Programlanabilir Mantık (memory and ...aykut/classes/fall2012/bbm231/... · BBM 231 – Bellek ve ... ©2007 by Prentice Hall, Inc. A Pearson Company Figure

Programlanabilir dizi mantığı (PAL)"•  Programlanabilir

AND geçit dizisi

31  

F3

F4

1 2 3 4 5 6 7 8 9 10

AND gates inputs

8

9

10

11

12

F1

F2

1 2 3 4 5 6 7 8 9 10

1

2

3

4

5

6

7

Productterm

I1

I2

I3

I4

©2007 by Prentice Hall, Inc.A Pearson Company

Figure Number: 07 16 Mano/CilettiDigital Design, 4e

AACFLSM0

Page 32: BBM 231 – Bellek ve Programlanabilir Mantık (memory and ...aykut/classes/fall2012/bbm231/... · BBM 231 – Bellek ve ... ©2007 by Prentice Hall, Inc. A Pearson Company Figure

Boole işlevlerinin PAL kullanarak gerçekleştirimi (1)"

•  Örnek: w(A,B,C,D) = Σ(2,12,13) x(A,B,C,D) = Σ(7,8,9,10,11,12,13,14,15) y(A,B,C,D) = Σ(0,2,3,4,5,6,7,8,10,11,15) z(A,B,C,D) = Σ(1,2,8,12,13)

Yalınlaştırma sonrası: w(A,B,C,D) = ABC’+A’B’CD’ x(A,B,C,D) = A+BCD y(A,B,C,D)=A’B+CD+B’D’ z(A,B,C,D) = ABC’+A’B’CD’+AC’D’+A’B’C’D = w+AC’D’+A’B’C’D

32  

Page 33: BBM 231 – Bellek ve Programlanabilir Mantık (memory and ...aykut/classes/fall2012/bbm231/... · BBM 231 – Bellek ve ... ©2007 by Prentice Hall, Inc. A Pearson Company Figure

Boole işlevlerinin PAL kullanarak gerçekleştirimi (2)"

33  

©2007 by Prentice Hall, Inc.A Pearson Company

Figure Number: Table07 06 Mano/CilettiDigital Design, 4ePage Number:

TB0706

Page 34: BBM 231 – Bellek ve Programlanabilir Mantık (memory and ...aykut/classes/fall2012/bbm231/... · BBM 231 – Bellek ve ... ©2007 by Prentice Hall, Inc. A Pearson Company Figure

Boole işlevlerinin PAL kullanarak gerçekleştirimi (3)"

34  

w

x

y

z

A A! B B! C C! D D! w w!

AND gates inputs

1

2

3

4

5

6

7

8

9

10

11

12

Productterm

A

B

C

D

A A! B! B! C C! D D! w w!

Fuse intact

Fuse blown

All fuses intact(always " 0)

#

©2007 by Prentice Hall, Inc.A Pearson Company

Figure Number: 07 17 Mano/CilettiDigital Design, 4e

AACFLSN0

Page 35: BBM 231 – Bellek ve Programlanabilir Mantık (memory and ...aykut/classes/fall2012/bbm231/... · BBM 231 – Bellek ve ... ©2007 by Prentice Hall, Inc. A Pearson Company Figure

Dizisel programlanabilir aygıtlar"•  Simple Programmable Device (SPLD) •  Complex Programmable Device (CPLD) •  Field Programmable Gate Array (FPGA)

35  

Page 36: BBM 231 – Bellek ve Programlanabilir Mantık (memory and ...aykut/classes/fall2012/bbm231/... · BBM 231 – Bellek ve ... ©2007 by Prentice Hall, Inc. A Pearson Company Figure

Simple Programmable Device (SPLD) (1)"

36  

AND–OR array(PAL or PLA)

Flip-flops

Inputs

Outputs

©2007 by Prentice Hall, Inc.A Pearson Company

Figure Number: 07 18 Mano/CilettiDigital Design, 4e

AACFLSO0

Page 37: BBM 231 – Bellek ve Programlanabilir Mantık (memory and ...aykut/classes/fall2012/bbm231/... · BBM 231 – Bellek ve ... ©2007 by Prentice Hall, Inc. A Pearson Company Figure

Simple Programmable Device (SPLD) (2)"

•  SPLD’nin her bir bölümüne macrocell adı verilir ve bu devreler çarpımların toplamı ile ifade edilen birleşimsel bir fonksiyon ile opsiyonel bir 2 durumludan oluşurlar.

•  Tipik bir SPLD entegresinde 8 ile 10 macrocell vardır. 37  

CLK OE

D

CLK

©2007 by Prentice Hall, Inc.A Pearson Company

Figure Number: 07 19 Mano/CilettiDigital Design, 4e

AACFLSP0

Page 38: BBM 231 – Bellek ve Programlanabilir Mantık (memory and ...aykut/classes/fall2012/bbm231/... · BBM 231 – Bellek ve ... ©2007 by Prentice Hall, Inc. A Pearson Company Figure

Complex Programmable Device (CPLD) "

38  

PLD

PLD

PLD

PLD

PLD

PLD

PLD

PLD

Programmable switch matrix

I/O

block

I/O

block

©2007 by Prentice Hall, Inc.A Pearson Company

Figure Number: 07 20 Mano/CilettiDigital Design, 4e

AACFLSQ0

Page 39: BBM 231 – Bellek ve Programlanabilir Mantık (memory and ...aykut/classes/fall2012/bbm231/... · BBM 231 – Bellek ve ... ©2007 by Prentice Hall, Inc. A Pearson Company Figure

Xilinx Field Programmable Gate Array (FPGA)"

39  

SwitchMatrix

CLB

IOB

IOB

IOB

IOB

IOB

IOB

IOB

IOB

IOB

IOB

IOB IOB IOB

IOB IOB IOB

Verticallong line

Horizontallong line

CLB

SwitchMatrix

CLBCLB

SwitchMatrix

SwitchMatrix

SwitchMatrix

SwitchMatrix

SwitchMatrix

SwitchMatrix

SwitchMatrixIOB

IOB

IOB

IOB

©2007 by Prentice Hall, Inc.A Pearson Company

Figure Number: 07 21 Mano/CilettiDigital Design, 4e

AAHFUYK0

Page 40: BBM 231 – Bellek ve Programlanabilir Mantık (memory and ...aykut/classes/fall2012/bbm231/... · BBM 231 – Bellek ve ... ©2007 by Prentice Hall, Inc. A Pearson Company Figure

Xilinx FPGA – Configurable Logic Block (CLB)"

40  (Clock)

K

G!

H!

LogicFunctionofG1 ... G4

G!

LogicFunctionof F!, G!,and H1

H!

LogicFunctionofF1 ... F4

F!

F!

G!

H!

DIN

RDEC

DQ

SD

F!

G!

H!

DIN

S/Rcontrol

S/Rcontrol

1

1

H!

F!

F1F2F3F4

G1G2G3G4

Y

YQ

X

XQ

C1...C4

SR/H0DIN/H2 ECH1

Note: Muxes without a select lineare configured by the program memory.

RDEC

D QSD

©2007 by Prentice H

all, Inc.A

Pearson Company

Figure Number: 07 22 M

ano/CilettiDigital Design, 4e

AAHFUYL0

Page 41: BBM 231 – Bellek ve Programlanabilir Mantık (memory and ...aykut/classes/fall2012/bbm231/... · BBM 231 – Bellek ve ... ©2007 by Prentice Hall, Inc. A Pearson Company Figure

Xilinx FPGA – I/O Blocks (IOB)"

41  

Slew rate control

VCC

Output buffer

QD

Delay

I/O PAD

Passive pull-up

pull-down

Q D

Input buffer

I1

OE

O

I2

Input clock

Output clock

©2007 by Prentice Hall, Inc.A Pearson Company

Figure Number: 07 25 Mano/CilettiDigital Design, 4e

AAHFUYO0

Page 42: BBM 231 – Bellek ve Programlanabilir Mantık (memory and ...aykut/classes/fall2012/bbm231/... · BBM 231 – Bellek ve ... ©2007 by Prentice Hall, Inc. A Pearson Company Figure

Xilinx FPGA – RAM Cell"

42  

16 ! 232 ! 1

Ram array

Rea

d ro

w

sele

ct

Wri

te r

ow

sele

ctWrite

controlRead out

Inpu

t reg

iste

r

SPO

WCLK

D0 or D1

WE

nA[n"1:0]

n

©2007 by Prentice Hall, Inc.A Pearson Company

Figure Number: 07 26 Mano/CilettiDigital Design, 4e

AAHFUYP0

Page 43: BBM 231 – Bellek ve Programlanabilir Mantık (memory and ...aykut/classes/fall2012/bbm231/... · BBM 231 – Bellek ve ... ©2007 by Prentice Hall, Inc. A Pearson Company Figure

Spartan dual-port RAM"

43  

16 ! 1 RAM array

16 ! 1 RAM array

Rea

d ro

w

sele

ct

Wri

te r

ow

sele

ct

Write control

Write control

Read out

Read out

Inpu

t reg

iste

rSPO

4

WCLK

D

WE

A[3:0]

4

Rea

d ro

w

sele

ct

Wri

te r

ow

sele

ct

DPRA[3:0]

SPO

4

©2007 by Prentice Hall, Inc.A Pearson Company

Figure Number: 07 27 Mano/CilettiDigital Design, 4e

AAHFUYQ0

Page 44: BBM 231 – Bellek ve Programlanabilir Mantık (memory and ...aykut/classes/fall2012/bbm231/... · BBM 231 – Bellek ve ... ©2007 by Prentice Hall, Inc. A Pearson Company Figure

44  ©2007 by Prentice Hall, Inc.A Pearson Company

Figure Number: Table07 07 Mano/CilettiDigital Design, 4e

TB0707

Page 45: BBM 231 – Bellek ve Programlanabilir Mantık (memory and ...aykut/classes/fall2012/bbm231/... · BBM 231 – Bellek ve ... ©2007 by Prentice Hall, Inc. A Pearson Company Figure

45  ©2007 by Prentice Hall, Inc.A Pearson Company

Figure Number: Table07 08 Mano/CilettiDigital Design, 4e

TB0708

Page 46: BBM 231 – Bellek ve Programlanabilir Mantık (memory and ...aykut/classes/fall2012/bbm231/... · BBM 231 – Bellek ve ... ©2007 by Prentice Hall, Inc. A Pearson Company Figure

46  ©2007 by Prentice Hall, Inc.A Pearson Company

Figure Number: Table07 09 Mano/CilettiDigital Design, 4e

TB0709

Page 47: BBM 231 – Bellek ve Programlanabilir Mantık (memory and ...aykut/classes/fall2012/bbm231/... · BBM 231 – Bellek ve ... ©2007 by Prentice Hall, Inc. A Pearson Company Figure

Spartan II mimarisi"

47  

Blo

ck S

elec

t RA

MB

lock

Sel

ect R

AM

I/O I/O I/O I/O I/O I/O

Blo

ck S

elec

t RA

MB

lock

Sel

ect R

AM

DLL

DLL DLL

DLL

CLBsCLBs

CLBs CLBs

©2007 by Prentice Hall, Inc.A Pearson Company

Figure Number: 07 28 Mano/CilettiDigital Design, 4e

AAHFUYR0

Page 48: BBM 231 – Bellek ve Programlanabilir Mantık (memory and ...aykut/classes/fall2012/bbm231/... · BBM 231 – Bellek ve ... ©2007 by Prentice Hall, Inc. A Pearson Company Figure

Spartan II CLB"

48  

EC

CK

D QS

R

EC

CK

D QS

R

Carry and

ControlLogic

Carry and

Control Logic

I1

I2

I3

I4

F1

F2

F3

F4

I1

I2

I3

I4

G1

G2

G3

G4

O

Lookup Table

O

Lookup Table

BXCIN

CLKCE

F5IN

BY

SR

XB

X

XQ

COUT

YB

Y

YQ

Logic Cell

©2007 by Prentice Hall, Inc.A Pearson Company

Figure Number: 07 29 Mano/CilettiDigital Design, 4e

AAHFUYS0

Page 49: BBM 231 – Bellek ve Programlanabilir Mantık (memory and ...aykut/classes/fall2012/bbm231/... · BBM 231 – Bellek ve ... ©2007 by Prentice Hall, Inc. A Pearson Company Figure

Spartan II IOB"

49  

EC

CK

D QSR

EC

CK

D QSR

EC

CK

D QSR

TFF

OFF

IFF

Programmable Bias &

ESD Network

Programmable output buffer

Programmable Delay

Programmable input buffer

Internal Reference

Package PinI/O

Package Pin

VCCO

VCCOE

Package PinI/O

To NextI/O

To Other External

VREF Inputs of

Banks

ICE

I

OCE

O

T

CLK

TCE

SR

IQ

©2007 by Prentice Hall, Inc.A Pearson Company

Figure Number: 07 30 Mano/CilettiDigital Design, 4e

AAHFUYT0

Page 50: BBM 231 – Bellek ve Programlanabilir Mantık (memory and ...aykut/classes/fall2012/bbm231/... · BBM 231 – Bellek ve ... ©2007 by Prentice Hall, Inc. A Pearson Company Figure

Virtex II mimarisi"

50  

DCMDCM

Blo

ck S

elec

t RA

M

Blo

ck S

elec

t RA

M

Mul

tiplie

rM

ultip

lier

Blo

ck S

elec

t RA

M

Blo

ck S

elec

t RA

M

IOB

Mul

tiplie

rM

ultip

lier

Global Clock Mux

DCM: Clock Manager

CLBs CLBsCLBs

©2007 by Prentice Hall, Inc.A Pearson Company

Figure Number: 07 31 Mano/CilettiDigital Design, 4e

AAHFUYU0

Page 51: BBM 231 – Bellek ve Programlanabilir Mantık (memory and ...aykut/classes/fall2012/bbm231/... · BBM 231 – Bellek ve ... ©2007 by Prentice Hall, Inc. A Pearson Company Figure

Virtex IOB bloğu"

51  

Reg

OCK1

Reg

OCK2

DDR mux

3-State

Reg

OCK2

DDR mux

3-State

PAD

Reg

OCK1

Reg

ICK1

Reg

ICK2

Input

IOB

©2007 by Prentice Hall, Inc.A Pearson Company

Figure Number: 07 32 Mano/CilettiDigital Design, 4e

AAHFUYV0