logičko projektovanje - es.elfak.ni.ac.rses.elfak.ni.ac.rs/ams/materijal/2_...

99
Logi Logi č č ko projektovanje ko projektovanje Bulova algebra Digitalna logi čka kola Minimizacija Bulovih funkcija Tehnološko mapiranje

Upload: others

Post on 03-Jan-2020

17 views

Category:

Documents


0 download

TRANSCRIPT

LogiLogiččko projektovanjeko projektovanje

Bulova algebraDigitalna logička kola

Minimizacija Bulovih funkcijaTehnološko mapiranje

Arhitektura mikrosistema

Bulova algebra

Algebarska struktura: (B={0,1}, +, ·), + - logičko ILI (OR), · - logičko I (AND)• Aksioma 1 (Zatvorenosti) • Aksioma 2 (Jedinični element)

x+0=0+x=xx·1=1·x=x

• Aksioma 3 (Komutativnost)x+y=y+xx·y=y·x

• Aksioma 4 (Distributivnosti)x·(y+z)=x·y+x·zx+y·z=(x+y) ·(x+z)

• Aksioma 5 (Komplementarni element) x+x’=1x·x'=0

• Aksioma 6 (Kardinalnost)

Arhitektura mikrosistema

Operatori Bulove algebre

111111

101001

01110010

10000000

x'xx+yyxx·yyx

NOTORAND

Bulova algebra: (B={0,1}, AND, OR, NOT) – praktična definicija

Arhitektura mikrosistema

Teoreme Bulove algebre

x’y’=(x+y)(x+y’)(a)Teorema 7(Zakon sažimanja) x=xy + xy’(b)

x’ + y’=(xy)’(b)

x’y’=(x+y)’(a)Teorema 6(De Morganovo pravilo)

(xy)z=x(yz)(b)

x+(y+z)=(x+y)+z(a)Teorema 5(asocijativnost)

x=(x’)’Teorema 4(involucija)

x=(y+x)x(b)

x=yx + x (a)Teorema 3(absorpcija)

0=x·0(b)

1=x+1(a)Teorema 2

x=x·x(b)

x =x+x (a)Teorema 1(idenpotencija)

Arhitektura mikrosistema

• U logičkoj sumi ili proizvodu proizvoljnog broja promenljivih redosled promenljivih i raspored zagrada nije od značaja

Asocijativnost + komutativnost

Arhitektura mikrosistema

Apsorpcija + sažimanje

• Osnova za pojednostavljenje (minimizaciju) prekidačih funkcija

• Apsorpcija smanjuje broj literala za 2– yx + x = x– (y+x)x = x

• Sažimanje smanjuje broj literala za 3– x · y + x · y’ = x– (x + y) · (x + y’) = x

Arhitektura mikrosistema

DeMorganova teorema

– (x + y)’ = x’ · y’– (x · y)’ = x’ + y’

Arhitektura mikrosistema

Pozitivna i negativna logika

Pozitivna logika:

LOW → 0

HIGH → 1

Negativna logika:

LOW → 1

HIGH → 0

Arhitektura mikrosistema

Princip dualnosti

(x · y) + x = x

(y + x) · x = x

x · 1 = x

x + 0 = x

Neka je E(x1,x2…xn) Bulov izraz, a Ed(x1,x2…xn)njegov dualni izraz. Tada važi:E’(x1,x2…xn) = Ed(x1’,x2’…xn’)

Generalizovana De Morganova pravila:(x1+x2+…+xn)’=x1’x2’…xn’(x1x2…xn)= x1’+x2’+…+xn’

Arhitektura mikrosistema

Bulove funkcije

• Bulova funkcija: algebarski izraz sačinen od binarnih promenljivih, Bulovih operatora AND, OR i NOT, zagrada i znaka jednakosti

• Tabela istinitosti:AND članovi

F1 = xy+xy’z+x’yz

OR član literali

011117

010116

011015

100014

011103

100102

101001

100000

F1’F1zyx

Vrednosti funkcija

Vrednosti promenljivihRedni broj

vrste

Komplement funkcije:

- Primenom De Morganovih pravila:F1’ = (xy+xy’z+x’yz)’

= (xy)’(xy’z)’(x’yz)’= (x’+y’)(x’+y+z’)(x+y’+z’)

- Primenom principa dualnosti:F1’ = (xy+xy’z+x’yz)’

= (x’+y’)(x’+y+z’)(x+y’+z’)

Arhitektura mikrosistema

Algebarske manipulacije

Rešenje:xy+xy’z+x’yz = xy+xyz+xy’z+x’yz apsorbcija

= xy+x(y+y’)z+x’yz distributivnost= xy+x1z+x’yz komplement= xy+xz+x’yz identitet= xy+xyz+xz+x’yz apsorpcija= xy+xz+(x+x’)yz distributivnost= xy+xz+1yz komplement= xy+xz+yz identitet

Problem: Pokazati da su sledeća dva izraza ekvivalentna:F1 = xy+xy’z+x’yz (8 literala)F1 = xy+xz+yz (6 literala)

Broj AND i OR operatora jednak je broju literala umanjenom za 1.

Manji broj literala => Manji broj AND i OR operatora => Manja hardverska složenost (cena)

Arhitektura mikrosistema

Kanonske forme- mintermi i makstermi -

• minterm – Bulova funkcija koja ima vrednost 1 samo za jednu kombinaciju vrednosti promenljivih, a vrednost 0 za sve ostale kombinacije

• Za funkciju od n promenljivih postoji 2n

minterma, mi, i =0,...,2n-1.• Svaki minterm se može predstaviti u

obliku AND člana od n literala• Mintermi od tri promenljive:

m7xyz111

m6xyz’011

m5xy’z101

m4xy’z’001

m3x’yz110

m2x’yz’010

m1x’y’z100

m0x’y’z’000

OznačavanjeMintermzyx

• maksterm – Bulova funkcija koja ima vrednost 0 samo za jednu kombinaciju vrednosti promenljivih, a vrednost 0 za sve ostale kombinacije

• Za funkciju od n promenljivih postoji 2n

maksterma, Mi, i =0,...,2n-1.• Svaki maksterm se može predstaviti u

obliku OR člana od n literala• Makstermi od tri promenljive:

M7x’+y’+z’111

M6x’+y’+z011

M5x’+y+z’101

M4x’+y+z001

M3x+y’+z’110

M2x+y’+z010

M1x+y+z’100

M0x+y+z000

OznačavanjeMakstermzyx

Arhitektura mikrosistema

Kanonske forme

011117

010116

011015

100014

011103

100102

101001

100000

F1’F1zyx

Vrednosti funkcijaVrednosti promenljivihRedni broj vrste

F = m3+m5+m6+m7 = x’yz+xy’z+xyz’+xyz = ∑(3,5,6,7) - suma 1-minterma

F = M0M1M2M4 = (x+y+z)(x+y+z’)(x+y’+z)(x’+y+z) = ∏(0,1,2,4) - proizvod 0-maksterma

∑∑

F’ = m0+m1+m2+m4 = x’y’z’+x’y’z+x’yz’+xy’z’ = ∑(0,1,2,4) - suma 0-minterma

F’ = M3M5M6M7 = (x+y’+z’)(x’+y+z’)(x’+y’+z)(x’+y’+z’) = ∏(3,5,6,7) - proizvod 1-maksterma

Arhitektura mikrosistema

Transformisati izraz F=x+yz (3 literala) u oblik:

Kanonske forme- proširenje -

suma minterma

x+yz = x(y+y’)(z+z’) + (x+x’)yz

= xyz+xyz’+xy’z+xy’z’+xyz+x’yz

= xyz+xyz’+xy’z+xy’z’+x’yz

= ∑(3,4,5,6,7) – 15 literala

proizvod maksterma

x+yz = (x+y)(x+z)

= (x+y+zz’)(x+yy’+z)

= (x+y+z)(x+y+z’)(x+y+z)(x+y’+z)

= (x+y+z)(x+y+z’)(x+y’+z)

= ∏(0,1,2) - 9 literala

∑(3,4,5,6,7) = ∏(0,1,2)

• Svaki Bulov izraz se može proširiti na oblik suma minterma ili proizvod maksterma

• Kanonske forme su jedinstvene i lako se izvode, ali, obično, sadrže veći broj literala u odnosu na izraze nekog drugog oblika

Arhitektura mikrosistema

Standardne forme

Suma-proizvoda:F1=xy+x’yz+xy’z

implikant – AND član od jednog ili više literala

Proizvod-suma:F1’=(x’+y’)(x+y’+z’)(x’+y+z’)

implikat – OR član od jednog ili više literala

• Standardne forme nisu jedinstvene

• Kanonaska forma -> standardna forma:

1. xyz+xyz’ = xy(z+z’) = xy

2. xyz+xyz’+xy’z+x’yz = (xyz+xyz’)+(xyz+xy’z)+(xyz+x’yz)= xy(z+z’) + x(y+y’)z + (x+x’)yz

1-mintermi = xy+xz+yz

primarni implikanti (dalja redukcija nije moguća)

• Svaki primarni implikant obuhvata jedan ili više 1-minterma• Svaki 1-minterm je uključen u jedan ili više primarnih implikanata• Ako je 1-minterm sadržan samo u jednom primarnom implikantu, takav

implikant se zove esencijalni primarni implikant

Arhitektura mikrosistema

Nestandardne forme

• Bulovi izrazi koji sadrže zagrade• Dobijaju se faktorizacijom kanonskih i standardnih formi

xy+xy’z+xy’z = x(y+y’z+y’w)= x(y+y’(z+w)) – 5 literala

• Omogućavaju dalju redukciju broja literala• Nisu jedinstvene

F1 = xy+xz+yz= xy+(x+y)z varijanta 1= x(y+z)+yz varijanta 2= xz+y(x+y) varijanta 3

• Veće kašnjenje (duže vreme izračunavanja): prvo se izračuna izraz u zagradi, a onda...

Arhitektura mikrosistema

Logičke operacije

Binarna konstanta 1F15=11111One

NOT-ANDF14=(xy)’0111x yNAND

Ako x, tada yF13=x’+y1011x yImplikacija

NOT xF12=x’0011x’Komplement

Ako y, tada xF11=x+y’1101x yImplikacija

NOT yF10=y’0101y’Komplement

x jednako yF9=xy+x’y’1001x yEkvivalencija

NOT-ORF8=(x+y)’0001x yNOR

x ili yF7=x+y1110x+yOR

x ili y ali ne obaF6=xy’+x’y0110x yXOR

yF5=y1010Transfer

y, ali ne xF4=x’y0010y/xInhibicija

xF3=x1100Transfer

x, ali ne yF2=xy’0100x/yInhibicija

x i yF1=xy1000x·yAND

Binarna konstanta 0F0=00000Zero

11100100KomentarAlgebarski

izrazVrednosti funkcije za x,z=Simbol

operatoraIme operacije

Arhitektura mikrosistema

Digitalna logička kola

• Logičko kolo ili gejt - digitalno kolo koje obavlja jednu ili više standardnih Bulovih operacija.

• Biblioteka gejtova - kolekcija logičkih kola koje koristimo za konstrukciju kombinacionih mreža.

• Standardni gejtovi - gejtovi koji pripadaju biblioteci.• Bibiloteke gejtova sadrže manji broj gejtova koji se biraju u skladu sa

sledećim kriterijumima:– Frekvencija korišćenja u tipičnom dizajnu, definisana kao sposobnost gejta da u

kombinaciji sa drugim gejtovima iz biblioteke realizuje raznorodne Bulove funkcije.

– Proširljivost operatora na više od dve promenljive. Preduslov za proširljivost operatora je posedovanje osobine komutativnosti i asocijativnosti.

– Jednostavnost konstrukcije, koja se definiše brojem tranzistora potrebih za realizaciju gejta kao i vreme potrebno da se promena na ulazu gejta prenese na izlaz gejta.

Arhitektura mikrosistema

Osnovna logička biblioteka

⊗ 3.212F= x yNXOR

4.214F = x yXOR

1.44F = (x + y)'NOR

1.44F = (xy)'NAND

2.46F = x + yOR

2.46F = xyAND

24F = xDrajver

12F = x’Invertor

Kašnjenje (ns)

Cena (broj tranzistora)FunkcijaGrafički

simbolIme

Arhitektura mikrosistema

Primer:Sinteza potpunog sabirača

11111

01011

01101

10001

01110

10010

10100

00000

sici+1ciyixi

si = xi’yici+xi’yici+xiyi’ci’+xiyici= (xi’yi+xiyi’)ci’+(xiyi)ci= (xiyi)ci’+(xiyi)’ci= (xi yi)ci

Varijanta 1:

ci+1 = (xiyi)+ci(xi+yi)

Varijanta 2:ci+1 = xiyici'+xiyici+xi'yici+xiyi'ci

= xiyi(ci'+ci)+ci(xi'yi+xiyi')= xiyi+ci(xi yi)

Arhitektura mikrosistema

Primer:Sinteza potpunog sabirača

(realizacija pomoću NAND gejtova)

ci+1 = xiyi+ci(xi+yi)= ((xiyi)’(ci(xi+yi))’)’

si = (xi yi)ci’+(xi yi)ci= (xi yi)'ci'+(xi yi)ci= (xi yi) ci

gde je:

xi yi = xiyi+xi’yi’= ((xiyi)'(xi'yi')')'= ((xiyi)'(xi+yi))’

⊗⊕

⊗ ⊗

⊗ ⊗

2.4

2.4

1.4

1.4

1.4

1.41.4

1.4

xi yi

ci

ci+1

si

Putanja Kašnjenjeulaz-izlaz (ns)

ci -> ci+12.8ci -> si 3.8xi,yi -> ci+1 5.2xi,yi -> si 7.2

Cena = 36 tran.

Arhitektura mikrosistema

Gejtovi sa više ulaza

2.210F = (x+y+z+w)'4-ulazni NOR

1.88F = (x+y+z)'3-ulazni NOR

2.210F = (xyzw)'4-ulazni NAND

1.88F = (xyz)'3-ulazni NAND

3.210F = x+y+z+w4-ulazni OR

2.88F = x+ y+z3-ulazni OR

3.210F = xyzw4-ulazni AND

2.88F = xyz3-ulazni AND

Kašnjenje (ns)

Cena (broj tranzistora)FunkcijaGrafički simbolIme gejta

Arhitektura mikrosistema

Primer:Realizacija potpunog sabirača pomoću više-ulaznih gejtova

ci+1 = xiyi+cixi+ciyi

= ((xiyi)’(cixi)’(ciyi)’)’si = xi’yici+xi’yici+xiyi’ci’+xiyici

= ((xi'yi'ci)'(xi'yici')'(xiyi'ci')'(xiyici)')'

Arhitektura mikrosistema

Više-operatorski gejtovi(kompleksni gejtovi)

2.412F = ((u+v+w)(x+y+z))'

dvostruki 3-ulazni OAI

2.212F = ((u+v)(w+x)(y+z))'

trostruki 2-ulazni OAI

2.08F = ((w+x)(y+z)')'dvostruki 3-ulazni OAI

2.212F = (uvw+xyz)’dvostruki 3-ulazni AOI

2.412F = (uv+wz+yz)'trostruki 2-ulazni AOI

2.08F = (wx+yz)’dvostruki 2-ulazni AOI

Kašnjenje (ns)

Cena (broj tranzistora)FunkcijaGrafički simbolIme gejta

Arhitektura mikrosistema

Primer:Realizacija potpunog sabirača pomoću više-operatorskih gejtova

si = xi’yici+xi’yici+xiyi’ci’+xiyici

= ((xi'yi'ci+xi'yici)(xiyi'ci'+xiyici)')'

ci+1 = xiyi+cixi+ciyi= ((xiyi)’(cixi)’(ciyi)’)’= ((xi’+yi’)(ci’+xi’)(ci’+yi’))’= ((xi’yi’+ci’xi’+ci’yi’)’

xi

yi

zi

si

ci+1

Putanja Kašnjenjeulaz-izlaz (ns)

ci -> ci+13.4ci -> si 4.4xi,yi -> ci+1 3.4xi,yi -> si 4.4

(b)(a)

2.42.0 2.0

1.4

Cena = 46 tran.

Arhitektura mikrosistema

Minimizacija Bulovih funkcija

• Cilj: optimizacija cene i kašnjenja logičkih mreža.• Osobine logičke mreže direktno zavise od osobina algebarskog

izraza (broj i tipovi operatora) na osnovu koga je mreža konstruisana =>

• Neophodne su sistematske tehnike za transformaciju Bulovih izraza obilka standardne i nestandardne forme u oblik koji će garantovati optimalnu realizaciju.

• Ne postoji univerezalna metoda za minimizaciju Bulovih funkcija, jer kriterijumi optimalnosti zavise od sastava raspoložive bibiloteke gejtova i osobina implementacione tehnologije.

Arhitektura mikrosistema

Bulove kocke

mintermi

2-kub

1-podkubyizi

xizixiyi

Primarni implikant (PI) - podkub koji nije sadržan ni u jednom drugom podkubu

Esencijalni primarni implikant (EPI) je podkub koji sadrži 1-minterm koji nije sadržan ni u jednom drugom podkubu.

Arhitektura mikrosistema

Karnoove mape

• Dvodimenzionalna forma Bulove kocke (n-kuba)

• Ukazuju na susedstvo binarnih kombinacija što olakšava identifikaciju podkubova

Arhitektura mikrosistema

Karnoova mapa za dve promenljive

Arhitektura mikrosistema

Karnoova mapa za tri promenljive

Arhitektura mikrosistema

Karnoova mapa za četiri promenljive

Arhitektura mikrosistema

Karnoova mapa za pet promenljivih

Arhitektura mikrosistema

Minimizacija Bulovih funkcija pomoću Karnoovih mapa(procedura)

Korak Kreiranje minimalnog pokrivanja nije egzaktan.

Greedy algoritam: u listi primarnih implikanata pronalaze se implikanti koji pokrivaju najveći broj nepokrivenih 1-miterma i prebacuju u listu pokrivanja. Ako dva ili više implikanata pokrivaju isti broj nepokrivenih 1-minterma, na slučajan način, bira se jedan. Ova procedura se ponavlja sve dok svi mintermi ne postanu pokriveni.

Arhitektura mikrosistema

Minimizacija Bulovih funkcija pomoću Karnoovih mapa(primer)

• Korišćenjem Karnoove mape pojednostaviti Bulovu funkciju:F=w’y’z’+wz+xyz+w’y

Oba rešenja sadrže isti broj operatora

Arhitektura mikrosistema

Minimizacija Bulovih funkcija pomoću Karnoovih mapa(primer neoptimalnosti procedure)

Minimizovati Bulovu funkciju: F=w’x’yz’+w’xy+wxz+wx’y’+w’x’y’z’

Primarni implikanti imaju istu veličinu => sadržaj liste pokrivanja zavisi od slučajnog redosleda izbora primarnih implikanata

Arhitektura mikrosistema

Minimizacija nepotpuno definisanih funkcija(primer)

Problem: Izvesti Bulov izraz za funkciju koja određuje komplement najveće cifre BCD cifre.

0000010019

1000100018

0100211107

1100301106

0010410105

1010500104

0110611003

1110701002

0001810001

1001900000

y0y1y2y3x0x1x2x3

BCD

Decimalno

BCD

Decimalno

Komplement najveće cifreDekadne Cifre

Funkcije y3, y2, y1 i y0 nisu definisane za sve kombinacije ulaznih promenljivih x3, x2, x1 i x0 koje nisu navedene u tabeli istinitosti.

Arhitektura mikrosistema

Minimizacija nepotpuno definisanih funkcija(rešenje)

Arhitektura mikrosistema

VLSI tehnologija• Nivoi integracije:

– Nizak nivo integracije (SSI – Small Scale Integration) - do 10 nezavisnih gejtova

– Srednji nivo integracije (MSI - Medium-Scale Integration) 10 do 100 gejtova: registri, brojači i sabirači.

– Visoki nivo integracije (LSI - Large-Scale Integration) između 100 i nekoliko stotina gejtova: kontroleri, memorijski čipovi manjeg kapaciteta i programabilne logičke komponente.

– Veoma visok nivo integracije (VLSI – Very-large-scale Integration) više stotina hiljada gejtova: memorije velikog kapaciteta, mikroprocesori, mikroračunari na čipu i različiti hardverski akceleratori.

• Custom - kola potpuno po narudžbi• Semi-custom – kola po narudžbi• Programabilna kola

Arhitektura mikrosistema

Standardna digitalna integrisanakola

• IC fiksne funkcije koja se proizvode u masovnimserijama za nepoznatog kupca

• Standardizovana funkcija i pakovanje– komponente sa istom oznakom, proizvedene od

strane različitih proizvođača poseduju identično pakovanje, raspored pinova, logičku funkciju i približne električne karakteristike.

• Serije i familije:– Serija 7400. Familije: 74LS (TTL), 74HC (CMOS),

74HCT (BiCMOS), ... – Serija 4000 (CMOS)

Arhitektura mikrosistema

Standardna digitalna IC (serija7400)

7404 - Raspored pinovaDIP pakovanje

o IC niskog i srednjeg nivoa integracije (do 100 logičkih kola u jednom čipu)o Više od 100 tipova kola: osnovna logička kola, digitalna kola složenije funkcije (npr. 4-bitni brojač, dekoder 3-u-8, 4-bitni komparator, 8-bitni sabirač)

Arhitektura mikrosistema

Standardna digitalna IC (realizacija složenijih funkcija)

o f = x1x2 + x2`x3

Arhitektura mikrosistema

Klasifikacija IC prema nivou integracije

• Klasična podela– SSI (Small-Scale Integration), IC niskog nivoa

integracije. Do 10 logičkih kola.– MSI (Medium-Scale Integration), IC srednjeg nivoa

integracije. Od 10 do 100 logičkih kola.– LSI (Large-Scale Integration), IC velikog nivoa

integracije. 100 - 1000 logičkih kola.– VLSI (Very Large Scale Integration), IC veoma

velikog nivoa integracije. Više od 100.000 logičkih kola.

Arhitektura mikrosistema

Savremena digitalna IC

• Savremena IC su VLSI. Stariji tipovi čipova koriste se retko ili samo kao rezervni delovi za starije uređaje.

• Koncept ˝sistem na ploči˝ zamenjen je konceptom ˝sistem na čipu˝.

Arhitektura mikrosistema

Programabilne logičkekomponente

• PLD (Programmable Logic Device)• Digitalna IC ˝opšte namene˝.• Sadrže mnoštvo nepovezanih logičkih kola, metalnih veza i

prekidača. • Programiranjem prekidača ostvaruje se željeno povezivanje

logičkih kola i tako realizuje data funkcija.• Reprogramiranje – jednom programirano PLD kolo se može

programirati novom funkcijom.

Arhitektura mikrosistema

PLA• Bolova algebra: Svaka

logička funkcija se može predstaviti u vidu zbira logičkih proizvoda. Npr.f1 = x1’x2x3’ + x2x4’ + x1x4

• PLA: dve programabilne mreže: – AND – realizuje logičke proizvode– OR – sumira logičke proizvode

Arhitektura mikrosistema

PLA (unutrašnja struktura)

• f1= x1x2 + x1x3` + x1`x2`x3. • f2 = x1x2 + x1`x2`x3 + x1x3

Simbolički prikaz

Arhitektura mikrosistema

PAL

• AND mreža programabilna, OR mreža fiksna

f1 = x1x2x3` + x1`x2x3 f2 = x1`x2` + x1x2x3

Arhitektura mikrosistema

PAL 16L8 (kombinacioni izlazi)

Arhitektura mikrosistema

PAL 16R8 (registarski izlazi)

Arhitektura mikrosistema

ROM• AND mreža fiksna, OR mreža

programabilna• AND matrica ima funkciju

binaranog dekodera n/2n

(generator minterma)• Mogućnost realizacije

proizvoljen funkcije npromenljvih

Arhitektura mikrosistema

Programiranje SPLD kola

Arhitektura mikrosistema

CPLD• Sadrži više logičkih

blokova (PAL ili PLA strukture) međusobno povezanih programabilnom prekidačkom matricom.

• U/I blokovi za spregu sa pinovima kola.

U/I

blok ...

U/I

blok ...

U/I

blok...

U/I

blok...

Arhitektura mikrosistema

CPLD (strukturni detalji)

D Q

...

D Q

D Q

...

Programabilni logički blok(PLB)

PLB(detalji nisu prikazani)

Arhitektura mikrosistema

Programiranje CPLD kola

• ISP (In-System-Programming) -mogućnost programiranja čipa ˝u sistemu˝.

Arhitektura mikrosistema

CPLD (Altera Max 7000 -arhitektura)

Arhitektura mikrosistema

Logički kapacitet• Mera složenosti (veličine) digitalnog sistema.• Izražava se brojem ekvivalentnih gejtova

– procenjeni broj jednostavnih logičkih kola (najčešće dvoulaznih NI kola) potrebnih za realizaciju funkcije sistema.

• Tipično SPLD kolo = 160 ekvivalentnih gejtova.• Veće CPLD komponete (1000 makroćelija) =

oko 20.000 ekvivalentnih gejtova.• Sistemi složenosti 20.000 gejtova smatraju se

srednje složenim sistemima.

Arhitektura mikrosistema

FPGA

• PLD kola najvećeg logičkog kapaciteta (od 10K do 1M ekvivalentnih gejtva)

• Zasnovani na logičkim blokovima (a ne na prekidačkim mrežama)

• Dodatno sadrže ugrađenu RAM memoriju i specijalizovane module, kao što su množači, komunikacioni kontroleri i sl.

• Omogućavaju realizaciju sistema na čipu (zasnovanih na mikroprocesoru)

U/I

blok

U/I

blok

Arhitektura mikrosistema

FPGA (logički blok)

• Logički blok:– LUT - univerzalni logički

blok sa malim brojem ulaza (n = 4-6) i jednim izlazom.

– Realizuje se kao RAM 2nx1. Sadržaj RAM-a definiše logičku funkciju.

0/1

0/1

0/1

0/1

x1

x2

f

Dvoulazni LUT – može da realizuje proizvoljnu

funkciju dve promenljive

Arhitektura mikrosistema

FPGA (LUT – realizacija funkcije)

111

001

010

100

f1x2x1

1

0

0

1

x1

x2

f

Arhitektura mikrosistema

FPGA (logički blok)

• Logički blok = LUT + flip-flop

Arhitektura mikrosistema

FPGA (realizacija složenijih funkcija)

f = f1 + f2 = x1x2 + x2’x3.

Arhitektura mikrosistema

FPGA (tehnolgija programiranja)

• SRAM tehnologija:– LUT – Statički RAM

(SRAM) blok– Prekidač - kombinacija pass

tranzistora i SRAM memorijske ćelije

• Sve SRAM ćelije sadržane u FPGA su redno povezane u pomerački registar.

• Programiranje - serijski upis (bit-po-bit) niza konfiguracionih bita u niz SRAM ćelija

• Isključenje napajanja => gubitak konfiguracije. – Neophodnost konfigurisanja nakon uključenja napajanja– Mogućnost dinamičke rekonfiguracije.

Arhitektura mikrosistema

FPGA (logički blok Xilinx XC 4000)

Arhitektura mikrosistema

Klasifikacija IC prema stilu projektovanja

IC projektovana za datu primenu

Arhitektura mikrosistema

IC “po narudžbi”

PLD stil projektovanja

IC ˝po narudžbi˝

Arhitektura mikrosistema

IC “po narudžbi” (klasifikacija)

• Metodologije projektovanja IC ˝po narudžbi˝:– IC ˝potpuno po narudžbi˝– Standardne ćelije– Gejtovska polja

Arhitektura mikrosistema

IC ˝potpuno po narudžbi˝• Eng. full-custom• IC se projektuje ˝iz početka˝ za konkretnu promenu• Projektant bira veličinu čipa, broj i raspored tranzistora i metalnih veza• Rezultat projektovanja: layout – definiše tačne pozicije tranzistora i metalnih

veza na čipu• Prednosti:

– Mogućnost optimizacije površine i performansi– Niska cena po komadu fabrikovanih IC

• Nedostaci:– Veliki utrošak projektantskog vremena– Visoki jednokratni troškovi pripreme proizvodnje

• Primena:– IC visokih performansi– IC za masovnu proizvodnju (amortizacija troškova pripreme proizvodnje)– Mikroprocesori i memorijska IC

Arhitektura mikrosistema

Standardne ćelije (1/5)• Unapred projektovani (full-

custom) moduli, jednostavne fukcije (AND, OR, flip-flop, ...), koji se koriste za konstrukciju složenijih struktura na čipu.

• Dostupne projektantu u vidu biblioteke standardnih ćelija

• Sve standardne ćelije iz iste biblioteke imaju istu visinu, a razlikuju se po širini.

Arhitektura mikrosistema

Standardne ćelije (2/5)

• Standardne ćelije se pakuju u horizontalne redove, a povezuju vezama koje se smeštaju u kanale između redova.

• Horizontalne i vertikalne metalne veze se izvode na dva ili više nivoa koji su postavljeni iznad standardnih ćelija.

Arhitektura mikrosistema

Standardne ćelije (3/5)

• Realizacija potputnog sabirača (tri reda sa po četiri standardne ćelije)

Arhitektura mikrosistema

Standardne ćelije (4/5)• Osim biblioteke bazičnih

standardnih ćelija na raspolaganju su i ćelije složenije funkcije (sabirači, komparatori, registari, ...) realizovane pomoću bazičnih ćelija:– Makro-ćelije (hard-makroi).

Layout ćelije je fiksiran.– Makro-funkcije. Layout nije

fiksiran.

Standardne celije

Makro-celije

.

.

Arhitektura mikrosistema

Standardne ćelije (5/5)

• Prednosti:– Skraćeno vreme projektovanja (projektovanje na

nivou logičkih kola, a ne na nivou tranzistora)– Projektant ne projektuje layout ćelija, već definiše

raspored ćelija i metalnih veza. (automatizovana procedura)

• Nedostaci:– Niži nivo korisnog iskorišćenja površine čipa u odnosu

na full-custom.– Neophodno kreiranje svih maski kao i kod full-custom

Arhitektura mikrosistema

Gejtovska polja (1/3)• Polu-fabrikovana IC:

– Veliki broj identičnih, nepovezanih gejtova (tipično NI ili NILI kola) raspoređenih na silicijumskoj pločici u vidu regularne dvodimenzione matrice

• Naknadnom doradom, kreiranje metalnih veza, gejtovi se povezuju na način koji diktira konkretna primena

Arhitektura mikrosistema

Gejtovska polja (2/3)• Logičke funkcije se moraju

transformisati oblik prilagođen realizaciji pomoću raspoloživog tipa logičkog kola. Npr.

ci+1 = xiyi+yici+xici= ((xiyi)’(yici)’(xici)’)’

Realizacija potpunog sabriača u gejtovskom polju

Arhitektura mikrosistema

Gejtovska polja (3/3)• Prednosti:

– Niži troškovi pripreme proizvodnje. Kreiraju se samo maske za povezivanje.

– Niža cena gotovih IC. (amortizovana masovnom proizvodnjom polufabrikovanih, identičnih pločica gejtovskih polja).

• Nedostaci:– Nizak nivo iskorišćenja površine silicijuma (broj

korisnih gejtova 4-10 puta manji u odnosu na full-custom).

– Zbog ograničenja u povezivanju nije uvek moguće iskoristiti sve raspoložive gejtove iz polja (iskorišćenje 70-90%).

Arhitektura mikrosistema

Realizacija potpunog sabirača u tehnologiji gejtovskih polja

Tehnološko mapiranje:

ci+1 = xiyi+yici+xici= ((xiyi)’(yici)’(xici)’)’

si = xi’yici+xi’yici+xiyi’ci’+xiyici=(xi’yici+xi’yici+xiyi’ci’)+xiyici=((xi’yici+xi’yici+xiyi’ci’)’(xiyici)’)’=((((xi’yici)’(xi’yici)’(xiyi’ci’)’)’)’(xiyici)’)’

Arhitektura mikrosistema

Tehnološko mapiranje za gejtovska polja

• Projektovanje na bazi gejtovskih polja zahteva transformaciju izraza ili logičkih šema koje sadrže AND, OR i NOT gejtove u oblik koji sadrži isključivo m-ulazne (najčešće 3-ulazne) NAND (NOR) gejtove.

• Pravila za konverziju:– Pravilo 1: xy = ((xy)’)’– Pravilo 2: x+y = ((x+y)’)’ = (x’y’)’– Pravilo 3: xy = ((xy)’)’ = (x’+y’)’– Pravilo 4: x+y = ((x+y)’)’

pravilo za optimizaciju

Primenom pravila 1 i 2 (3 i 4) svako AND i OR kolo zameniti NAND (NOR) kolom, a zatim, svuda gde je to moguće, eliminisati duple invertore.

Arhitektura mikrosistema

Konverzija formi tipa "suma proizvoda" i "proizvod suma" u NAND i NOR mreže

proizvod suma

suma proizvoda

NOR realizacijaNAND realizacijaStandardne realizacija formeTip forme

Arhitektura mikrosistema

Primer konverzije u NAND (NOR) mrežu

• Projektovati NAND i NOR logičke mreže za funkciju carry (ci+1) potpunog sabirača.

1. Karnoova mapa:

2. Analitički izrazi u obliku sume proizvoda (proizvod suma):

3(a). AND-OR mreža: 3(b). OR-AND mreža:

4(a). Konverzija u NAND mrežu (pravila 1 i 2):

4(a). Konverzija u NOR mrežu (pravila 3 i 4):

Arhitektura mikrosistema

Dekompozicija AND (OR) članova

• Transformacija n-ulaznog AND (OR) kola u stablo m-ulaznih AND (OR) gejtova, gde je m<n:– Stablo ima nivoa sa ukupno m-ulaznih gejtova.– Prvi nivo sadrži gejta– Izlazi gejtova sa prvog nivoa zajedno sa preostalih

ulaza čine ulaze u drugi nivo.– Prethodna procedura se ponavlja za svaki nivo.

nmlog )1/()1( −− mn

mn / mn / )/( mnn −

Arhitektura mikrosistema

Dekompozicija AND člana(primer)

• Razložiti AND član od 10 promenljivih na stablo tro-ulaznih AND gejtova

3

2

101

Broj gejtovaBroj ulazaNivo

33/10 =

4))3/10(310(3 =−+ 13/4 =

2))3/4(34(1 =−+ 13/2 =

Rešenje 1: Rešenje 2:Rešenja 1 i 2 imaju istu cenu, ali se razlikuju po progacionom kašnjenju od nekih ulaza do izlaza.

Arhitektura mikrosistema

Tehnološko mapiranje za gejtovska polja(primer)

• Realizovati funkciju sum (si) potpunog sabirača pomoću tro-ulaznih NAND gejtova.

1. Karnoova mapa: 2. Izraz suma proizvoda:

si = xi’yici+xi’yici+xiyi’ci’+xiyici

3. AND-OR mreža:4. Dekompozicija OR gejta:

Problem!

Arhitektura mikrosistema

Tehnološko mapiranje za gejtovska polja(primer - nastavak)

5. Konverzija: 6. Optimizacija:

Kao posledica dekompozicije većih AND i OR gejtova, u NAND (NOR) mreži se javljaju stabla gejtova, zbog čega različite putanje kroz mrežu mogu imati različita kašnjenja.

Arhitektura mikrosistema

Retiming

• Retiming - optimizacija performansi (kašnjenja) logičke mreže.• Obavlja se nakon dekompozicije, konverzije i eliminacije invertora, onda

kada se precizno mogu izračunati različita kašnjenja kroz logičku mrežu.• Koristi osobinu stabla gejtova da različite putanje kroz stablo imaju različita

kašnjenja:– Putanjama kroz stablo koje imaju najkraće kašnjenje dodeljuju se signali

koji imaju najveće kašenjenje kroz celokupnu logičku mrežu• Nakon retiming-a, često je potrebno jednom ili više puta, ponoviti konverziju

i eliminaciju duplih gejtova.

Arhitektura mikrosistema

Retiming(primer)

Polazna AND-OR mreža:

Dekompozicija: Konverzija:

Kritična putanja – 8.2ns

Arhitektura mikrosistema

Retiming(primer - nastavak)

Retiming:Konverzija:

Polazna dekompozicija:

OR stablo

2 D

1 D0 D

1 D

2 D

OR stablo

4 D

1 D

2 D

0 D

1 D

2 D

3 D

Kritična putanja – 6.4ns

Arhitektura mikrosistema

Tehnološko mapiranje za gejtovska polja(opšta procedura)

Arhitektura mikrosistema

Tehnološko mapiranje za custom biblioteke(primer)

• Problem: Transformisati izraz w’z’+z(w+y) u logičku mrežu, korišćenjem gejtova iz biblioteke definisane tabelama 2.10 i 2.11 (slajdovi 18 i 20).

Arhitektura mikrosistema

Tehnološko mapiranje za custom biblioteke(opšta procedura)

Na raspolaganju je veći broj različitih gejtova, kako osnovnih tako i kompleksnih => Složen kombinatorni problem

Kompromis cena-performanse: najpre se minimizuje cena (konverzija u NAND mrežu), a zatim se minimizuje kašnjenje, pokrivanjem gejtova sa kritične putanje preostalim standardnim i kompleksnim gejtovima.

Arhitektura mikrosistema

Pitanja i zadaci

Arhitektura mikrosistema

Pitanja i zadaci

Arhitektura mikrosistema

Pitanja i zadaci

Arhitektura mikrosistema

Pitanja i zadaci

Arhitektura mikrosistema

Zadatak

2. Za logičku funkciju:

f = wx’y’ + y(w’z’ + x(z + w)) a. nacrtati AND-OR mrežu

b. konvertovati AND-OR mrežu u homogenu mrežu 2-ulaznih NAND kola

c. ispitati mogućnost smanjenja kašenjena kroz NAND mrežu zamenom pojedinih delova mreže odgovarajućim kompleksnim gejtovima.

Arhitektura mikrosistema

Rešenje

Arhitektura mikrosistema

Konverzija u NAND mrežu

Arhitektura mikrosistema

Eliminacija invertora

Arhitektura mikrosistema

Uvođenje kompleksnih gejtova

Arhitektura mikrosistema

Uvođenje kompleksnih gejtova