postupci analize i sinteze sekvencijalnih logiČkih skopova

57
SVEUČILIŠTE U ZAGREBU FAKULTET PROMETNIH ZNANOSTI Marko Leljak POSTUPCI ANALIZE I SINTEZE SEKVENCIJALNIH LOGIČKIH SKLOPOVA ZAVRŠNI RAD

Upload: marko-leljak

Post on 24-May-2015

2.211 views

Category:

Documents


9 download

DESCRIPTION

ZAVRŠNI RAD

TRANSCRIPT

Page 1: POSTUPCI ANALIZE I SINTEZE SEKVENCIJALNIH LOGIČKIH SKOPOVA

SVEUČILIŠTE U ZAGREBU

FAKULTET PROMETNIH ZNANOSTI

Marko Leljak

POSTUPCI ANALIZE I SINTEZE SEKVENCIJALNIH LOGIČKIH SKLOPOVA

ZAVRŠNI RAD

Zagreb, 2012

Page 2: POSTUPCI ANALIZE I SINTEZE SEKVENCIJALNIH LOGIČKIH SKOPOVA

Sveučilište u Zagrebu

Fakultet prometnih znanosti

ZAVRŠNI RAD

POSTUPCI ANALIZE I SINTEZE SEKVENCIJALNIH LOGIČKIH SKLOPOVA

Mentor: prof. dr. sc. Šarić Slavko

Student: Marko Leljak 0135206352

Zagreb, 2012

Page 3: POSTUPCI ANALIZE I SINTEZE SEKVENCIJALNIH LOGIČKIH SKOPOVA

Sadržaj

1. Uvod.................................................................................................................................................1

2. Logički sklopovi...............................................................................................................................2

2.1. Obrada digitalnih podataka............................................................................................................3

2.2. Logika sudova................................................................................................................................5

2.3. Osnovni logički sklopovi...............................................................................................................5

2.4. Tehnike realizacije logičkih sklopova...........................................................................................7

3. Sekvencijalni sklopovi......................................................................................................................8

3.1 Sinkroni sekvencijalni sklopovi................................................................................................8

3.2 Asinkroni sekvencijalni sklopovi............................................................................................9

3.3 Bistabili...................................................................................................................................10

3.4 Tipovi bistabila.......................................................................................................................11

3.4.1. SR – bistabil..........................................................................................................................11

3.4.2. JK – bistabil..........................................................................................................................11

3.4.3. T – bistabil............................................................................................................................12

3.4.4. D – bistabil............................................................................................................................13

3.4.5. Master slave bistabil.............................................................................................................14

4. Metode analize sekvencijalnih logičkih sklopova..........................................................................15

4.1. Metode analize sinkronih sekvencijalnih sklopova.....................................................................15

4.1.1. Sklop s T-bistabilima............................................................................................................16

4.1.2. Sklop s JK – bistabilima.......................................................................................................19

4.1.3. Sklop s D-bistabilima...........................................................................................................22

4.2. Metode analize sekvencijalnih asinkronih sklopova...................................................................25

5. Metode sinteze sekvencijalnih logičkih sklopova..........................................................................26

5.1. Unos modela konačnog automata................................................................................................27

5.2. Reduciranje broja stanja..............................................................................................................27

5.3. Kodiranje stanja...........................................................................................................................29

5.4. Izbor memorijskih elemenata......................................................................................................30

5.5. Optimizacija i tajming.................................................................................................................31

Zaključak................................................................................................................................................32

Kratice i strane riječi...............................................................................................................................33

Popis slika............................................................................................................................................34

Page 4: POSTUPCI ANALIZE I SINTEZE SEKVENCIJALNIH LOGIČKIH SKOPOVA

Popis tablica.........................................................................................................................................35

Literatura..............................................................................................................................................36

Page 5: POSTUPCI ANALIZE I SINTEZE SEKVENCIJALNIH LOGIČKIH SKOPOVA

1. Uvod

Prijenos različitih informacija (govorni signal, audio signal, video signal...) digitalnim

signalom danas je, više nego ikada, realnost. Iako je digitalni način prijenosa diskretnih

signala vremenski stariji od analognog, ipak se on tek od šezdesetih godina znatnije koristi za

prijenos prije spomenutih vrsti signala te tako digitalni signali postaju obilježje sadašnjice.

Logički sklopovi povezani u raznolike funkcionalne cjeline sastavni su dio računala i

njegovih dodatnih uređaja. Razvoj logičkih sklopova i projektiranje logičkih cjelina u uskoj je

vezi s razvojem tehnologije. U sekvencijalnoj logici signali moraju slijediti u određenom redu

da bi se na izlazu dobio željeni signal. To znači da sekvencijalni logički sklopovi moraju imati

i neki oblik memorije, radi "pamćenja" dijela signala koji su već stigli na ulaz. Ovaj

memorijski efekt postiže se korištenjem određene povratne veze. Sekvencijalni sklopovi

sastoje se od međusobno povezanih bistabila i obično još od kombinacijskih sklopova.

U završnome radu govoriti će se o metodama analize i sinteze sekvencijalnih logičkih sklopova.

U prvome dijelu govori se o logičkim sklopovima općenito, o obradi digitalnih podataka, logici

sudova, definirati će se osnovni logički sklopovi i tehnike realizacije osnovnih logičkih sklopova.

Drugi dio sažima logičke sklopove i izdvaja sekvencijalne logičke sklopove te ih dijeli na sinkrone i

asinkrone, te govori o bistabilima koji su zapravo sekvencijalni sklopovi digitalne elektronike koji

mogu zapamtiti podatak veličine jedan bit, te i o tipovima bistabila.

Treći dio govori o metodama analize sekvencijalnih logičkih sklopova, te razlučuje metode na analizu

sinkronih i analizu asinkronih sekvencijskih sklopova.

Četvrti dio govori o metodama sinteze sekvencijalnih logičkih sklopova.

Zaključak donosi rezime rada i saznanja proizašla iz istraživanja.

1

Page 6: POSTUPCI ANALIZE I SINTEZE SEKVENCIJALNIH LOGIČKIH SKOPOVA

2. Logički sklopovi

Prikupljanje, obrada i komunikacija podataka predstavljaju bitnu svakodnevnu i neprekidnu

aktivnost ljudi kao pojedinca i ljudskog roda u cjelini te se smatra da je upravo sposobnost

obrade podataka i razmjene tako stvorenih informacija bila ključni korak u razvoju

čovječanstva. Obrada podataka je proces kojim se skup podataka pretvara u informaciju;

jedan ili više senzora prikupljaju podatke o nekoj dinamičkoj sceni i pojavama koje se ondje

događaju. Informacija je rezultat takve obrade podataka koja skupu prikupljenih činjenica

daje smisao i pri tome je bitno da je formirana tako da je njen sadržaj shvatljiv drugim

ljudima. Prijenos informacija obavlja se porukama.

Najpoznatiji sustav digitalne elektronike predstavlja digitalno elektroničko računalo -

kompjutor. Matematika predstavlja temeljni jezik za modeliranje odnosa i zakonitosti među

veličinama u mnogim poslovnim, proizvodnim i znanstvenim disciplinama. Izražavajući

odnose i zakonitosti u obliku algoritama, tj. pravila postupka rješavanja postavljenog zadatka

koji u konačnom broju koraka dovode do rješenja, digitalno elektroničko računalo rješava

postavljeni zadatak vrlo brzo i točno. Postoji čitav niz uređaja koji su sastavljeni od digitalnih

sklopova u vidu digitalnih elemenata ili kompjutorskih sustava, kao npr. procesorski

upravljane prespojne središnjice, digitalni voltmetri, mjerači brzine, ABS sustavi, brojila

frekvencije i mnogi drugi.1

Za prikazivanje digitalnih podataka može se upotrijebiti bilo kakav brojevni sustav a da bi se

on uspješno realizirao u nekom tehničkom sustavu potrebno je na prikladan način prikazati

znamenke. Svaka se znamenka mora realizirati nekim posebnim fizičkim stanjem. Za pouzdan

rad ta stanja se moraju moći jasno prepoznavati i dovoljno međusobno razlikovati.2

Rad računala može se prikazati kombinacijom dvaju stanja binarnog brojevnog sustava. Broj

tipova elemenata od kojih se gradi računalo relativno je malen, ali broj istovrsnih elemenata je

vrlo velik. Osnovni elementi pomoću kojih se gradi računalo napravljeni su prema zakonima

elektrotehnike i tehnologije, a mogu se promatrati s elektrotehničkog ili logičkog stajališta.

Osnovne jedinice od kojih se tvore računala su logički sklopovi. Njihova izvedba zavisna je o

tehnologiji vremena u kojim su izrađene te mogu biti: mehanička, elektromehanička,

1 Internet: http://www.fpz.unizg.hr/hgold/ES/DE/uvod1.htm (pristupljeno 20.08.2012.)2 Peruško, U., Glavinić, V.: Digitalni sustavi, Školska knjiga, Zagreb, 2005., str. 16.

2

Page 7: POSTUPCI ANALIZE I SINTEZE SEKVENCIJALNIH LOGIČKIH SKOPOVA

elektronička, optička, kvantna, biološka, kemijska itd. Logički sklopovi imaju osnovu u

matematičkoj logici, a tvore se oko osnovnih logičkih operacija: I (engl. AND), ILI (engl.

OR), NE (engl. NOT).

Napredak tehnologije omogućio je izradu mikroprocesora koji sadrži do nekoliko milijuna

tranzistora ukomponiranih na silicijskoj pločici upakiranoj u plastično kućište. Sklopovlje

jednog mikroprocesora se bazira na manjim elementima koje nazivamo logički sklopovi ili

logička vrata (gate) koja su jednostavni sklopovi sastavljeni od manjeg broja tranzistora i

pasivnih komponenti. Elektroničke sklopove možemo klasificirati ovisno o broju standardnih

logičkih vrata koja sadrže, tj. klasificiramo ih ovisno o njihovu stupnju integracije.

U skupinu digitalnih sklopova spadaju logički sklopovi, koji mogu imati jedan ili više ulaza i

isto tako izlaza. Signali na ulazima i izlazima mogu imati vrijednosti unutar područja koja

odgovaraju binarnim znamenkama 0 ili1. Kod logičkih sklopova između stanja na ulazima i

stanja izlaza postoji određena logička veza, pa ti sklopovi obavljaju logičke operacije odnosno

funkcije. Postoji mnogo načina na koji se osnovni logički sklopovi mogu kombinirati radi

izvođenja raznih korisnih logičkih operacija. Digitalni logički sklopovi mogu se podijeliti na

kombinacijske i sekvencijalne sklopove. Sekvencijalni se sklopovi mogu podijeliti na

asinkrone i sinkrone. Kombinacijski logički sklopovi su oni sklopovi kod kojih stanje izlaza

ovisi o trenutnom stanju ulaza. Sekvencijalni logički sklopovi su sklopovi kod kojih stanje

izlaza ovisi o stanju ulaza i o prethodnom stanju na izlazu.

2.1. Obrada digitalnih podataka

Podaci se mogu podijeliti na brojeve, znakove i upravljačke znakove. Ako ti podaci

predstavljaju brojeve, njihova obrada sastoji se u primjeni odabranih računarskih operacija. U

slučaju znakova, obrada se svodi na organizaciju zapisa, sortiranje, pretraživanje i slično, dok

se u slučaju upravljačkih (kontrolnih) podataka obrada svodi dominantno na dekodiranje tj.

Prepoznavanje značenja i izvršavanje predviđenih akcija.

3

Page 8: POSTUPCI ANALIZE I SINTEZE SEKVENCIJALNIH LOGIČKIH SKOPOVA

Kada se radi o brojevima, jedna od elementarnih operacija svakako je zbrajanje. Zbrajanje će

se provoditi u skladu sa pravilima prikazanim u tabeli 1.

Tabela 1: Zbrajanje dvaju binarnih znamenaka

2⁰ 2¹Ai Bi Si Ci0 0 0 00 1 1 01 0 1 01 1 0 1

Izvor: Peruško, U., Glavinić, V.: Digitalni sustavi, Školska knjiga, Zagreb, 2005., str. 42.

U slučaju da treba zbrojiti 1 i 0; koristeći se navedenom tablicom, zbrajanje će, primjerice za

slučaj opisan trećim retkom tablice, slijediti proceduru:

Ako je (A=1 i B=0) onda je A+B=1

Navedeni algoritam predstavlja omjer logičkog zaključivanja uz upotrebu nekih unaprijed

poznatih činjenica, kao što je tablica zbrajanja.3

U svakodnevnome životu neprestano se donose odluke temeljene na logičkom zaključivanju,

a logički procesi izraženi govornim jezikom obično sadržavaju riječi kao što su: „ako“,

„onda“, „i“, „ili“, „ne“. Svi ti primjeri pokazuju da za obradu podataka treba imati uređaje, tj.

Sklopove koji će moći obavljati logičke operacije.

3 Peruško, U., Glavinić, V.: Digitalni sustavi, Školska knjiga, Zagreb, 2005., str. 79.

4

Page 9: POSTUPCI ANALIZE I SINTEZE SEKVENCIJALNIH LOGIČKIH SKOPOVA

2.2. Logika sudova

Matematičku analizu logike sudova prvi je proveo engleski matematičar George Boole 1847.

godine pa se i algebra za analizu logike tzv. logička algebra zove po njemu Booleova algebra.

Opći interes za tu granu matematike pojavio se 1938. kada je C. E. Shannon pokazao da se

ona može efikasno primijeniti za analizu relejnih elektromehaničkih sklopova koji su se u to

doba upotrebljavali za izradu računskih strojeva i telefonskih centrala. Jednostavni, odnosno

elementarni sud jest neka tvrdnja ili izjava izražena izjavnom ili afirmativnom rečenicom, kao

npr.: "Sklopka je uključena." Takva tvrdnja može biti bilo točna odnosno istinita ili ispravna,

ili pak netočna, odnosno neistinita. Logika sudova razmatra logičke veze između jednostavnih

sudova i tvorbu na taj način složenih sudova. U logici se sudova ne razmatra konkretan

sadržaj pojedine tvrdnje, već se promatra je li ta tvrdnja točna ili netočna.4

2.3. Osnovni logički sklopovi

Logički sklopovi povezani u raznolike funkcionalne cjeline sastavni su dio računala i

njegovih dodatnih uređaja. Razvoj logičkih sklopova i projektiranje logičkih cjelina je u uskoj

vezi s razvojem tehnologije kojoj je opći cilj da se u što manjem volumenu smjesti što više

logičkih sklopova i da im je brzina rada što veća. Takav skup sklopova, smješten u

zajedničkom kućištu s izvodima za spajanje s okolišem, popularno se naziva integrirani sklop

- čip i nerijetko sadrži tisuće logičkih sklopova koji izvršavaju razne instrukcije date

računalu.5

Logičke funkcije mogu se realizirati s pomoću digitalnih elektroničkih sklopova. Sklopke

mogu biti obične, upravljane rukom ili električki upravljani kontakti. Mehanički kontakti

imaju međutim niz nedostataka od kojih je najveći njihova mehanička tromost koja ne

dopušta brz rad. Elektronički sklop koji obavlja istu funkciju može se dobiti jednostavnom

4 Ibid, str. 80.5 Internet: http://www.informatika.buzdo.com/s080.htm (pristupljeno 25.08.2012.)

5

Page 10: POSTUPCI ANALIZE I SINTEZE SEKVENCIJALNIH LOGIČKIH SKOPOVA

zamjenom mehaničkih sklopova elektroničkim. Logičko svojstvo sklopa tj. njegova

sposobnost obavljanja određene logičke funkcije biti će vidljivo kad se razmotri izlaz kao

posljedica određenih vrijednosti ulaznog signala.6

Slika 1: Osnovni logički sklopovi

Izvor: http://www.informatika.buzdo.com/s080.htm (pristupljeno 20.08.2012.)

6 Ibid, str. 85.

6

Page 11: POSTUPCI ANALIZE I SINTEZE SEKVENCIJALNIH LOGIČKIH SKOPOVA

2.4. Tehnike realizacije logičkih sklopova

Postoji više tehnika realizacija logičkih sklopova tzv. logičkih familija. Svaka od ovih tehnika

ima prednosti i nedostatke tako da ne postoji idealna tehnika koja bi ispunila sve zahtjeve:

neke rade na velikim brzinama, druge imaju mali utrošak snage a treće su vrlo otporne na

šum. Logičke familije integriranih sklopova mogu se podijeliti u dvije osnovne grupe:

sklopove koji se temelje na radu bipolarnih tranzistora i one koji koriste MOSFET tranzistore.

Tehnike koje su se tokom godina pokazale najuspješnijima jesu:7

Otpornik – tranzistor logika (RTL)

Diodna logika (DL)

Diodno-tranzistorska logika (DTL)

Tranzistor – tranzistor logika (TTL)

Logika zajedničkog emitera (ECL)

MOSFET (MOS)

Komplementarni MOSFET (CMOS)8

Od navedenih tehnika, diodna logika se ne koristi u integriranim sklopovima dok se RTL i

DTL tehnike više ne primjenjuju. Logički sklopovi mogu biti realizirani u pozitivnoj i

negativnoj logici. Pozitivna logika je ona kod koje je nivo „1“ pozitivniji od nivoa „0“ tj.

U(1)>U(0), a negativna logika je ona kod koje je nivo „1“ negativniji od nivoa „0“ tj.

U(1)<U(0).

7 Papić, V.: Osnove elektronike, Sveučilište u Splitu, Split, 2005., str. 148. 8 Tehnologija za izradu digitalnih i analognih mikroelektroničkih sklopova

7

Page 12: POSTUPCI ANALIZE I SINTEZE SEKVENCIJALNIH LOGIČKIH SKOPOVA

3. Sekvencijalni sklopovi

U sekvencijalnoj logici signali moraju slijediti u određenom redu da bi se na izlazu dobio

željeni signal. To znači da sekvencijalni logički sklopovi moraju imati i neki oblik memorije,

radi "pamćenja" dijela signala koji su već stigli na ulaz. Ovaj memorijski efekt postiže se

korištenjem određene povratne veze. Sekvencijalni sklopovi sastoje se od međusobno

povezanih bistabila i obično još od kombinacijskih sklopova. Prema tome ponašanje sklopa

ovisi o ulazima i stanju bistabila, dok je izlaz također u pravilu funkcija stanja bistabila i

ulaza. Sekvencijalni logički sklopovi općenito se dijele na:9

1. Sinkroni sklopovi ili sustavi - u njima se sve promjene događaju istovremeno u

trenutku određenom nekim upravljačkim signalom zajedničkim za sve ulazne signale.

2. Asinkroni sklopovi ili sustavi - nemaju upravljačkog signala, a promjene u jednom

dijelu sklopa izazivaju promjenu u drugom dijelu; promjena se širi brzinom koju

određuje rad pojedinog dijela sustava.

Sekvencijski sklop koji se sastoji od n-bistabila može imati do 2ᴺ mogućih različitih stanja, te

se stoga oni i zovu strojevi stanja. Slijed operacija u sekvencijskom sklopu temelji se na

„ugrađenom“ algoritmu pa se i upotrebljava naziv algoritamski stroj stanja. Sekvencijski

sklop je digitalni automat, razumijevajući pod pojmom automata stroj koji obavlja predviđene

radnje bez čovjekove pomoći.10

3.1 Sinkroni sekvencijalni sklopovi

Moguće su tri varijante opće strukture sinkronog sekvencijskog sklopa, odnosno stroja stanja

no razlike među njima nisu velike. Svaki se sklop u osnovi sastoji od tri dijela: ulaznog

9 Internet: http://ebookbrowse.com/pr-9c-sekvencijalni-sklopovi-pdf-d222355081 (pristupljeno 26.08.2012.)10 Peruško, U., Glavinić, V.: Digitalni sustavi..., op.cit. str. 336.

8

Page 13: POSTUPCI ANALIZE I SINTEZE SEKVENCIJALNIH LOGIČKIH SKOPOVA

kombinacijskog sklopa, registra i izlaznog kombinacijskog sklopa. Registar registrira i sastoji

se od bistabila. Na izlazu iz registra su ulazne vrijednosti svih bistabila koje se vode na ulazni

kombinacijski sklop na čijim su ulazima u pravilu i nezavisne ulazne varijable. Izlazi

kombinacijskog sklopa određuju sljedeće stanje sklopa. Oni se vode na ulaze bistabila i čine

uzbudu za sljedeće stanje bistabila. Pod utjecajem te uzbude bistabil će prijeći u sljedeće

stanje nakon aktivnog brida impulsa takta. Struktura sekvencijskog sklopa kod kojeg su jasno

razlučivi registar i kombinacijski sklopovi za generiranje sljedećeg stanja i izlaza naziva se

kanonski oblik sekvencijskog sklopa. Tri moguće varijante razlikuju se u načinu kako se

formiraju izlazne varijable.11

Asinkroni se sekvencijski sklopovi upotrebljavaju u slučajevima kad sklop mora odmah

reagirati na ulaznu promjenu, za razliku od sinkronih sklopova koji reagiraju tek kada naiđe

impuls takta. Vrlo mali digitalni sustavi mogu se katkad ekonomičnije izvesti asinkrono, jer

nije potrebno osigurati izvor taktnog impulsa. Konačno, i dijelovi sinkronih sekvencijskih

sklopova izvode se asinkrono. Primjerice, osnovni bistabili, koji su osnovica sinkronih

bistabila, asinkroni su sklopovi.12

3.2 Asinkroni sekvencijalni sklopovi

Asinkroni sekvencijski sklopovi u svom radu nisu upravljani impulsima takta. Promjena iz

jednog stanja u drugo zbiva se neposredno pod utjecajem promjene ulazne varijable; dok se

kod sinkronih sekvencijskih sklopova stanja sklopa pamte u registru što ga čine sinkroni

bistabili, asinkroni sekvencijski sklopovi za pamćenje koriste vremensko kašnjenje ili

asinkrone bistabile. Asinkroni su sekvencijski sklopovi kombinacijski sklopovi s povratnom

vezom. Element za vremensko kašnjenje predstavlja privremenu memoriju koja pamti

postojanje impulsne promjene za vrijeme dok ta promjena polazi od njegova početka do kraja.

U realnim sklopovima nije potrebno ugrađivati posebne elemente za kašnjenje, jer je

kašnjenje logičkih sklopova dovoljno. Analiza i projektiranje takvih sklopova složeniji su od

analize i projektiranja sinkronih sekvencijskih sklopova, jer promjena nastupa odmah s

11 Ibid12 Ibid

9

Page 14: POSTUPCI ANALIZE I SINTEZE SEKVENCIJALNIH LOGIČKIH SKOPOVA

promjenom ulaza te su moguće situacije u kojima novo stanje nije stabilno. Osiguranje

stabilnog rada stoga je osnovna zadaća pri projektiranju.13

3.3 Bistabili

Da bi logički sklop imao memoriju, tj. da bi bio u stanju upamtiti vrijednost ulazne varijable,

mora biti tako građen da ima logičku povratnu vezu. Najjednostavniji sklop koji ima dva

stabilna stanja zove se bistabil, na njemu većina sekvencijalnih logičkih sklopova zasniva svoj

rad. Bistabil je tzv. regenerativni sklop, koji u osnovi čine dvije međusobno povezane

sklopke, pri čemu je u svakom trenutku jedna zatvorena, a druga otvorena. Promjena njihovog

stanja može se postići sama (nakon određenog vremena) ili pomoću vanjskog impulsa. U

digitalnim sustavima bistabili se grade od univerzalnih logičkih funkcija.

Slika 2: Princip bistabila

Izvor: Internet: http://ebookbrowse.com/pr-9c-sekvencijalni-sklopovi-pdf-d222355081 (pristupljeno 26.08.2012.)

13 Ibid, str. 387.

10

Page 15: POSTUPCI ANALIZE I SINTEZE SEKVENCIJALNIH LOGIČKIH SKOPOVA

3.4 Tipovi bistabila

3.4.1. SR – bistabil

Najjednostavniji asinkroni sekvencijalni sklop u integriranoj izvedbi je SR-bistabil. On se

može ostvariti na više načina, a najčešće je to s NI logičkim sklopovima. SR-bistabil spada u

grupu tzv. asinkronih bistabila, tj. sklopova koji mogu mijenjati stanje u bilo kojem trenutku,

tj. čim se pojavi ulazni signal. Ako je pak potrebno kontrolirano upravljati promjenu izlaznog

stanja, (a naročito ako je to potrebno izvršiti istovremeno s velikim brojem istih sklopova),

uvodi se dodatni ulaz za taktne (clock) impulse. U takvim tzv. sinkronim bistabilima se uvjeti

za promjenu izlaznih stanja ispunjavaju ranije, ali do same promjene dolazi tek u trenutku

pojave taktnog impulsa. Korištenjem istog taktnog impulsa za veći broj istovrsnih bistabila,

osigurava se njihovo sinkrono (istovremeno) djelovanje.14

Slika 3: SR-bistabil

Izvor: Pean, M.: Digitalni komunikacijski sustavi, Centar odgoja i usmjerenog obrazovanja za elektroniku, preciznu mehaniku i optiku, Zagreb, 1985., str. 63.

3.4.2. JK – bistabil

JK bistabil je najkompliciraniji, ali vjerojatno i najvažniji od svih bistabila. On se može

koristiti kao i prethodni SR bistabil, ali J = K = 1 slučaj (jednak slučaju S = R = 1) ne samo da

nije neodređen, već se i koristi kao prednost. Neodređenost u radu SR bistabila se javlja kad

su oba ulaza S i R u stanju logičke jedinice, a CLK ulaz pada s logičke jedinice na logičku

nulu. To se može izbjeći tako da se spriječi utjecaj ulaza S i R na master sklop, ali

14 Pean, M.: Digitalni komunikacijski sustavi, Centar odgoja i usmjerenog obrazovanja za elektroniku, preciznu mehaniku i optiku, Zagreb, 1985., str. 63.

11

Page 16: POSTUPCI ANALIZE I SINTEZE SEKVENCIJALNIH LOGIČKIH SKOPOVA

istovremeno se mora dozvoliti da se izlazno stanje promijeni pri promjeni CLK signala (ako

su se promijenili ulazi).15

Slika 4: JK-bistabil

Izvor: Pean, M.: Digitalni komunikacijski sustavi, Centar odgoja i usmjerenog obrazovanja za elektroniku, preciznu mehaniku i optiku, Zagreb, 1985., str. 65.

3.4.3. T – bistabil

T-bistabil za razliku od prethodna dva ima samo jedan ulaz, označen s T. Dobije se iz JK –

bistabila tako da se ulazi J i K spoje međusobno. Na osnovu tablice stanja JK - bistabila lako

je derivirati sažetu tablicu stanja T-bistabila. Ako je ulaz T u stanju 0, CP-impuls neće

izazvati promjenu i stanje će biti kao i u prethodnom koraku. Ako je T=1, sinkronizacijski

impuls će izazvati promjenu, odnosno komplementiranje informacije prisutne iz prethodnog

intervala. Opisani bistabil radi sinkrono.16

15 Ibid, str. 65.16 Internet: http://ebookbrowse.com/pr-9c-sekvencijalni-sklopovi-pdf-d222355081 (pristupljeno 26.08.2012.)

12

Page 17: POSTUPCI ANALIZE I SINTEZE SEKVENCIJALNIH LOGIČKIH SKOPOVA

Slika 5: T-bistabil

Izvor: http://www.fpz.unizg.hr/hgold/ES/DE/b.o.bistabili.htm (pristupljeno 20.08.2012.)

3.4.4. D – bistabil

Vrlo korisna verzija SR-bistabila je D-bistabil. On se dobiva tako da se kao R ulaz koristi

invertirani S ulaz. Sklop prema tome ima samo jedan ulaz, koji se označava s D. Ulazna

varijabla dolazi direktno na ulaz S, a invertirana na ulaz R. Kada je na ulazu 0,na S je 0, a na

R je 1. Nakon CP impulsa bit će u bistabil upisana 0. Ako je na ulazu 1, onda je i na ulazu S,

dok je na ulazu R tada 0.Upisanao će prema tome biti 1. Bistabil jednostavno upisuje podatak

koji mu je dan na ulazu. Može se reći da je to zapravo elementarna ćelija za memoriranje

jednog bita. Isto tako D-bistabil se može koristiti kao element za kašnjenje koji informaciju s

ulaza produžava za jedan vremenski interval.17

Slika 6: D-bistabil

Izvor: Pean, M.: Digitalni komunikacijski sustavi, Centar odgoja i usmjerenog obrazovanja za elektroniku, preciznu mehaniku i optiku, Zagreb, 1985., str. 64.

17 Ibid, str. 64.

13

Page 18: POSTUPCI ANALIZE I SINTEZE SEKVENCIJALNIH LOGIČKIH SKOPOVA

3.4.5. Master slave bistabil

Ovaj sklop osigurava da se izlazi mijenjaju samo u danom trenutku taktnog impulsa, i to pri

njegovoj nagloj promjeni (edge triggered). Sastoji se od dva ista taktna SR-bistabila (prvi tzv.

master, a drugi tzv. slave). Inverter između dva CLK ulaza osigurava da su svaki od bistabila

aktivni tijekom suprotnih dijelova taktnog impulsa, što je bitna karakteristika rada, te se tako

može precizno kontrolirati trenutak kad bistabil mijenja svoje stanje. Naime, ako je ulazni

CLK impuls na nivou logičke nule, to znači da je CLK za slave na nivou logičke jedinice (i

obratno). To pak znači da je master blokiran, tj. da je u njemu spremljeno ono što je bilo na

njegovim ulazima kad je CLK bio logička jedinica.18

Slika 7: Master slave bistabil

Izvor: http://ebookbrowse.com/pr-9c-sekvencijalni-sklopovi-pdf-d222355081 (pristupljeno 26.08.2012.)

18 Internet: http://ebookbrowse.com/pr-9c-sekvencijalni-sklopovi-pdf-d222355081 (pristupljeno 26.08.2012.)

14

Page 19: POSTUPCI ANALIZE I SINTEZE SEKVENCIJALNIH LOGIČKIH SKOPOVA

4. Metode analize sekvencijalnih logičkih sklopova

U analizi i simulaciji sekvencijalnih logičkih sklopova a posebno asinkronih logičkih

sklopova, automatska lokacija povratnih petlji u mreži često predstavlja ozbiljne probleme.

Metode analize kombinatornih sklopova relativno su jednostavne, a mogu se riješiti pomoću

konvencionalnih simulacijskih tehnika ili praćenja staze između ulaza i izlaza. Pri analizi

sekvencijalnih logičkih sklopova, međutim, prisutnost povratne petlje u mreži znači da se ove

tehnike više ne primjenjuju. Metoda postupanja u tim slučajevima implicira izoliranje

povratne petlje na neki način (često intuitivno), a zatim primijeniti standardne kombinatorske

tehnike. U slučaju metastabilnosti uzastopnih mreža ili prijenosnih sklopova problem je

trivijalan, jer se povratne petlje jasno razlikuju. Glavni problem leži u asinkronim mrežama

čiji sklopovi sadrže međusobno NAND ili NOR vrata.

4.1. Metode analize sinkronih sekvencijalnih sklopova

Analizu je najprikladnije početi određivanjem tablice stanja sekvencijalnog sklopa. Općeniti

postupak dobivanja tablice ima dva koraka:19

1. Za sve moguće vrijednosti ulaznih varijabli i sva moguća stanja sklopa odrediti

vrijednost upravljačkih varijabli za sve bistabile.

2. Iz tako određenih vrijednosti i tablice stanja bistabila odrediti sljedeće stanje u koje će

bistabili prijeći nakon djelovanja impulsa takta.

Iz dobivene tablice stanja mogu se prikazati ponašanja sklopa i na druge načine.

19 Peruško, U., Glavinić, V.: Digitalni sustavi..., op.cit. str. 341.

15

Page 20: POSTUPCI ANALIZE I SINTEZE SEKVENCIJALNIH LOGIČKIH SKOPOVA

4.1.1. Sklop s T-bistabilima

Sklop se sastoji od dva bistabila i može imati četiri stanja. Ponašanje sklopa jednoznačno je

određeno tablicom stanja. Tablica stanja prikazuje sljedeće stanje i izlaz kao funkciju

postojećeg, odnosno sadašnjeg stanja i ulaza. Iako se takva tablica može prikazati kao kod

kombinacijskih sklopova, gdje su kombinacije varijabli koje prikazuju sadašnje stanje i ulaz

navedene na jednoj strani, a one koje prikazuju sljedeće stanje na drugoj, obično je

preglednije to učiniti kao u tabeli 2.20

Slika 8: Primjer sekvencijskog sklopa s T-bistabilima (dvobitno binarno brojilo)

Izvor: Peruško, U., Glavinić, V.: Digitalni sustavi, Školska knjiga, Zagreb, 2005., str. 342.

Tabela 2: Tablice stanja sklopa

Postojeće

stanje

Sljedeće stanje Izlaz

E=0 E=1 E=0 E=1

B1 B0 B1 B0 B1 B0 Z Z

0 0 0 0 0 1 0 1

0 1 0 1 1 0 0 0

1 0 1 0 1 1 0 0

1 1 1 1 0 0 0 0

Izvor: Peruško, U., Glavinić, V.: Digitalni sustavi, Školska knjiga, Zagreb, 2005., str. 342.

20 Ibid, str. 342.

16

Page 21: POSTUPCI ANALIZE I SINTEZE SEKVENCIJALNIH LOGIČKIH SKOPOVA

Određivanje tablice stanja počinje nekim pretpostavljenim početnim stanjem, obično stanjem

u kojem su svi bistabili u stanju 0. Sljedeće se stanje određuje za sve moguće kombinacije

ulaznih varijabli. U razmatranom primjeru samo je jedna ulazna varijabla pa se promatra

promjena za E=0 i E=1. Kada je E=0, bistabili B1 i B0 imaju na ulazima 0 pa je sklop

blokiran i ne može doći ni do kakve promjene. Izlaz je u ovome primjeru funkcija stanja

bistabila i ulaza, pa će za E=0 uvijek biti jednak 0. Ako je ulaz E = 1, ulaz T bistabila B0 ima

vrijednost 1, dok su oba bistabila u 0 i izlaz Z = 1. Kada naiđe CP-impuls, bistabil B 0 će

prijeći u stanje 1. Pritom bistabil B1 neće promijeniti stanje, jer na njega u tom trenutku, tj. za

vrijeme pozitivnog brida CP-impulsa, još djeluje izlaz B0 iz prvog bistabila koji je u stanju 0,

pa je i izlaz iz I sklopa I1= 0. Izlaz iz I2 je 0. Ulazni signal može prijeći u 0 nakon što sklop

zauzme bilo koje od mogućih stanja pa će to stanje ostati zapamćeno i promjene će početi od

njega nakon što sklop bude ponovno deblokiran. Ulaz E očito obavlja funkciju ulaza za

omogućavanje (enable), pa je zato tako i označen. Opisani sklop prelazi redom binarna stanja

od 00 do 11, pa, zapravo, predstavlja brojilo. Ako se četiri postojeća stanja označe dekadski

od 0 do 3, onda sklop, zapravo, broji CP-impulse. Četvrti impuls postavlja sklop ponovno u

stanje 0, pa sklop broji u modulu 4. Tom prilikom se generira i logička 1 na izlazu Z, što se

može upotrijebiti kao signal da je ciklus završen.21

Svako stanje sekvencijskog sklopa određeno je stanjima bistabila, ali ta je stanja uvijek

moguće označiti posebnim znakovima, u pravilu slovima. Tako se dobiva preglednija tablica

stanja. Katkad se rabe kratice koje asociraju na neko značenje koje to stanje eventualno

predstavlja. U primjeru koji se razmatra mogu se primjerice stanja kodirati na sljedeći način:

00 = a, 01 = b, 10 = c, 11 = d. Ako se to primijeni na razmatranu tablicu stanja, dobivaju se

sljedeće tablice.22

Tabela 3: Znakovna tablica stanja

Sadašnje stanje Sljedeće stanje ulaz E0 1

a a bb b cc c dd d a

Izvor: Peruško, U., Glavinić, V.: Digitalni sustavi, Školska knjiga, Zagreb, 2005., str. 343.

21 Ibid, str. 343.22 Ibid

17

Page 22: POSTUPCI ANALIZE I SINTEZE SEKVENCIJALNIH LOGIČKIH SKOPOVA

Tabela 4: tablica izlaza

Sadašnje stanje Izlaz z ulaz E0 1

a 0 1b 0 0c 0 0d 0 0

Izvor: Peruško, U., Glavinić, V.: Digitalni sustavi, Školska knjiga, Zagreb, 2005., str. 343.

Tablica 3. se, za razliku od tablice gdje su stanja prikazana binarno, zove znakovna tablica

stanja. U njoj nisu prikazane izlazne vrijednosti. Izlaz je prikazan odvojeno u tabeli 4 (tablica

izlaza). Oba su načina prikaza izlaza u upotrebi. Ako su tablice manje, obično se rabi prikaz

vrijednosti izlaza Z u jednoj tablici, kao što je to učinjeno u tabeli 2. Vrijednosti izlaza kao i

vrijednosti sljedećeg stanja ovise naravno o pripadnim vrijednostima sadašnjih stanja.23

Drugi je način grafičkog prikaza ponašanja sklopa je dijagram stanja, koji se izvodi direktno

iz tablice stanja. Svakom od četiri moguća stanja pridijeljen je jedan čvor dijagrama prikazan

krugom u kojem je to stanje upisano. Strelicama su prikazane promjene koje nastupaju za

određenu vrijednost ulazne varijable nakon pojave CP-impulsa. Vrijednost ulazne varijable i

vrijednost izlaza označene su za stanje 00 sa 1/1 i napisane pokraj strelice koja označava

promjenu. Prva znamenka znači stanje ulaza (E = 1), a druga izlaza (Z = 1). I vrijednost ulazne

i vrijednost izlazne varijable vremenski se odnose na isti period u kojem je stanje sklopa 00 tj.

iz kojega izlazi strelica, a to znači na postojeće stanje. Ako se strelica vraća u isto stanje

nakon što opiše luk, to znači da nije došlo do promjene. Dijagram stanja u mnogim je

slučajevima koristan za razumijevanje rada sklopa, i često je također prikladnije binarno

kodirana stanja obilježiti znakovima.24

23 Ibid24 Ibid, str. 344.

18

Page 23: POSTUPCI ANALIZE I SINTEZE SEKVENCIJALNIH LOGIČKIH SKOPOVA

Slika 9: dijagram stanja za sklop iz slike 8.

Izvor: Peruško, U., Glavinić, V.: Digitalni sustavi, Školska knjiga, Zagreb, 2005., str. 344.

Jednadžbe stanja logičke su jednadžbe koje određuju uvjete za promjenu stanja bistabilia. U

biti se ne razlikuju od jednadžbe stanja bistabila, osim što sadržavaju i druge logičke

varijable, kao što su ulazne varijable i izlazi iz drugih bistabila. Jednadžbe stanja za svaki

bistabil izvode se direktno iz tablica stanja. Lijeva strana jednadžbe stanja za pojedini bistabil

označava sljedeće stanje, a desna strana predstavlja Booleovu funkciju koja, kad je u stanju

jednaka 1, uzrokuje da sljedeće stanje nakon CP-impulsa bude također 1. Jednadžba stanja

može se simplificirati kao i kombinacijske logičke jednadžbe s pomoću Karnaughovih

tablica.25

4.1.2. Sklop s JK – bistabilima

Opći postupak analize isti je kao i kod sklopa sa T - bistabilima. Ako je početno sadašnje

stanje jednako 00 i ulaz x = 0, tad će na ulazu J0 bistabila B0 biti vrijednost 0, a na ulazu K0

vrijednost 0. U skladu sa sažetom tablicom stanja JK-bistabila sljedeće stanje bistabila bit će

također 0. Situacija na odgovarajućim ulazima drugog bistabila je J1=0, a K1= 1, pa će i 25 Ibid, str. 345.

19

Page 24: POSTUPCI ANALIZE I SINTEZE SEKVENCIJALNIH LOGIČKIH SKOPOVA

njegovo sljedeće stanje biti 0. Isto je takva situacija kod oba bistabila sve dok je vrijednost

ulaza 0, pa će, bez obzira na početno stanje, sljedeće stanje obaju bistabila biti 0. Situacija se

mijenja ako je ulaz jednak 1. U početnom stanju 00 bistabil B0 imat će na oba ulaza logičku

vrijednost 1, pa će sljedeće stanje biti komplement prijašnjeg stanja, dakle 1.26

Slika 10: Sekvencijski sklop s JK-bistabilima

Izvor: Peruško, U., Glavinić, V.: Digitalni sustavi, Školska knjiga, Zagreb, 2005., str. 348.

Na ulazu J bistabila B1 i dalje je 0, pa on ostaje u stanju 0. Na isti se način, korak po korak,

određuju sljedeća stanja i za ostala sadašnja stanja. Izlaz z kod ovog sklopa zavisan je samo

od sadašnjih stanja bistabila, pa je jednak 1 samo kada su oba bistabila u stanju 1.27

Rezultati izložene analize prikazani su u tablici stanja (tabela 5). Ako se binarnim stanjima

sklopa pridruže slova na isti način kao u prethodnom primjeru, dobiva se znakovna tablica

stanja (tabela 6). Iz ove posljednje tablice slijedi dijagram stanja prikazan na slici 11.

Tabela 5: Tablica stanja sklopa sa slike 10 – binarna stanja

26 Ibid, str. 348.27 Ibid, str. 349.

20

Page 25: POSTUPCI ANALIZE I SINTEZE SEKVENCIJALNIH LOGIČKIH SKOPOVA

Sadašnje stanje Izlaz

Sljedeće stanje

X=0 X=1

B1 B0 z B1 B0 B1 B0

a 0 0 0 0 0 0 1

b 0 1 0 0 0 1 0

c 1 0 0 0 0 1 1

d 1 1 1 0 0 1 1

Izvor: Peruško, U., Glavinić, V.: Digitalni sustavi, Školska knjiga, Zagreb, 2005., str. 348.

Tabela 6: Znakovna tablica stanja sklopa sa slike 10

Sadašnje

stanje Izlaz

Sljedeće stanje

x

z 0 1

a 0 a b

b 0 a c

c 0 a d

d 1 a d

Izvor: Peruško, U., Glavinić, V.: Digitalni sustavi, Školska knjiga, Zagreb, 2005., str. 348.

Slika 11: Dijagram stanja sklopa sa slike 10

Izvor: Peruško, U., Glavinić, V.: Digitalni sustavi, Školska knjiga, Zagreb, 2005., str. 349.

21

Page 26: POSTUPCI ANALIZE I SINTEZE SEKVENCIJALNIH LOGIČKIH SKOPOVA

Za razliku od dijagrama stanja sklopa iz prethodnog primjera, ovdje su stanja označena

odabranim slovima. Razlika je i u označavanju izlaza. Kako je u ovom slučaju izlaz samo

funkcija stanja sklopa, a ne i vrijednosti ulaza (Mooreov stroj), njegova je vrijednost označena

u čvoru (krugu) koji predstavlja konkretno stanje. Tako primjerice oznaka a/0 znači da je izlaz

jednak 0 dok je sklop u tom stanju. Budući da su vrijednosti izlaza na taj način označene uz

stanje, nije ih više potrebno označavati, kao u prethodnom primjeru, iza kose crte uz strelicu

koja pokazuje smjer promjene. Binarna znamenka uz svaku strelicu na dijagramu označava

vrijednost ulaza x koji je potreban da dođe do označene promjene.28

Pri konstruiranju vremenskog dijagrama bilo kojeg sekvencijskog sklopa treba prvo odrediti

početno stanje. Moguće su različite situacije. Može se početi sa stanjem koje će sklop zauzeti

prilikom uključivanja napajanja. Sklop može biti konstruiran tako da se prilikom uključivanja

svi bistabili posebnim impulsom (obično na asinkronom ulazu) postave u početno stanje.

Vremenski dijagram se također može crtati i uz pretpostavku da sklop radi već neko

nepoznato vrijeme, pa je početno stanje također nepoznato.29

4.1.3. Sklop s D-bistabilima

Sklop sa D-bistabilima ima dva ulaza i dva izlaza. Izlaz z1 ovisi samo o stanjima sklopa, dok

izlaz z2 ovisi i o ulazu. Sljedeće stanje sklopa s D-bistabilima bit će jednako logičkoj

vrijednosti na odgovarajućem ulazu D.

Slika 12: Sklop s D-bistabilima

28 Ibid, str. 349.29 Ibid, str. 351.

22

Page 27: POSTUPCI ANALIZE I SINTEZE SEKVENCIJALNIH LOGIČKIH SKOPOVA

Izvor: Peruško, U., Glavinić, V.: Digitalni sustavi, Školska knjiga, Zagreb, 2005., str. 352.

Tablica stanja može se konstruirati na temelju jednadžbi stanja, uvrštavanjem svih

kombinacija zavisnih varijabli, ili sličnim postupkom iz logičke sheme. Kod jednostavnijih

sklopova taj se postupak može obično provesti napamet. Kod većih sklopova treba postupak

provesti pažljivije, bilježeći međurezultate. Tako je potrebno postupiti i u razmatranom

primjeru.

23

Z2

Z1

Page 28: POSTUPCI ANALIZE I SINTEZE SEKVENCIJALNIH LOGIČKIH SKOPOVA

Tabela 7: Tablica stanja sklopa sa slike 12

Sadašnje stanje Sljedeće stanje x y Izlazix y

0 0 0 1 1 0 1 1 0 0 0 1 1 0 1 1B t B0 Bt B0 z1 z0

a 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0b 0 1 0 1 1 1 0 1 1 0 0 0 0 1 0 0 0 1c 1 0 1 0 0 1 0 1 1 1 0 0 0 0 0 0 0 0d 1 1 1 1 1 0 0 1 0 1 1 0 1 0 1 0 1 0

Izvor: Peruško, U., Glavinić, V.: Digitalni sustavi, Školska knjiga, Zagreb, 2005., str. 352.

Sljedeća stanja grupirana su u stupce koji odgovaraju kombinacijama ulaznih varijabli xy.

Važno je još jedanput uočiti i u tablici da je izlaz z1 uvijek isti u svim stupcima, pa je dakle

nezavisan o ulazima (Mooreov izlaz). Izlaz z2 ovisan je o ulaznim varijablama i o stanju

sklopa (Mealyjev izlaz). Vrijednosti ulaza, kao što je već rečeno, odnose se na sadašnje stanje

sklopa. Budući da sklop ima dvije vrste izlaza radi se o mješovitom stroju stanja. Sklop ima

jedno neupotrijebljeno stanje (stanje a) u koje, u normalnim okolnostima nikada prijeći. Ako

se to ipak dogodi, bilo sklopovskom pogreškom ili u trenutku uključenja, on više iz njega ne

može izaći, pa je sklop blokiran. Stoga bi u praktičnoj izvedbi sklopu svakako trebalo dodati

mehanizam postavljanja u početno stanje pri uključivanju.30

Slika 13: Dijagram stanja sklopa sa slike 12

Izvor: Peruško, U., Glavinić, V.: Digitalni sustavi, Školska knjiga, Zagreb, 2005., str. 354.

30 Ibid, str. 354.

24

Page 29: POSTUPCI ANALIZE I SINTEZE SEKVENCIJALNIH LOGIČKIH SKOPOVA

4.2. Metode analize sekvencijalnih asinkronih sklopova

Za analizu i projektiranje sekvencijskih asinkronih sklopova upotrebljavaju se slične,

složenije metode kao i za sinkrone sklopove. U nastavku se ove metode razlažu na primjeru

prikazanom na slici 14.

Slika 14: Primjer asinkronoga sekvencijskog sklopa s povratnom vezom

Izvor: Peruško, U., Glavinić, V.: Digitalni sustavi, Školska knjiga, Zagreb, 2005., str. 391.

Rad sklopa analizira se u nastavku s pomoću tablice prijelaza. Tablica prijelaza (engl.

transition table) odgovara tablici stanja kod sinkronih sklopova, ali se obično prikazuje nešto

drugačije. Tablica se može izvesti iz jednadžbi uzbude ili neposredno na sklopu primjenom

svih mogućih kombinacija ulazne i sekundarnih varijabli te određivanjem uzbudnih varijabli.

Tablica se obično crta na sličan način kao K-tablice, i to tako da su na lijevoj strani vrijednosti

sekundarnih varijabli y, koje predstavljaju sadašnje stanje, a na vrhu su vrijednosti ulaza x. U

odgovarajuća polja upisuju se pripadne vrijednosti Y1Y2 uzbudnih varijabli, koje predstavljaju

sljedeće stanje. Nakon što se nacrta tablica prijelaza, određuju se stabilna stanja. Da bi sklop

bio stabilan, mora biti y1y2= Y1Y2. U asinkronim sekvencijskim sklopovima katkad je

prikladno kombinirati vrijednost ulaza i stanja u vrijednost koje se zove ukupno stanje (engl.

total state). 31

31 Ibid, str. 392.

25

Page 30: POSTUPCI ANALIZE I SINTEZE SEKVENCIJALNIH LOGIČKIH SKOPOVA

5. Metode sinteze sekvencijalnih logičkih sklopova

Metoda za sintezu sekvencijalnih logičkih sklopova prikazana je na slici 9. Metoda započinje

opisom u prirodnom jeziku, koji je eventualno dopunjen jednim ili više vremenskim

dijagramima ili ponekad, formalnim opisom u jeziku kao što je VHDL ili Verilog.32 Prvi

korak u procesu sinteze sastoji se od razvoja dijagrama stanja i konvertiranja dijagrama stanja

u tabelu sljedećeg stanja i tabelu izlaza. Zatim slijedi optimizacija broja stanja, koja se sastoji

u izbacivanju redundantnih stanja i spajanju ekvivalentnih stanja. Redukcija broja stanja je

neophodna obzirom da manji broj stanja zahtijeva manji broj bistabila. S obzirom da svako

stanje mora biti predstavljeno n-tom vrijednosti bistabila, neophodno je svim stanjima

dodijeliti različite binarne n-te vrijednosti. Ovaj postupak zove se kodiranje stanja i

predstavlja bitan korak sinteze, zato što pravilno kodiranje može značajno pojednostavniti

ulaznu i izlaznu logiku. Nakon kodiranja stanja, izvode se binarne forme Booleovih

jednakosti sljedećeg stanja i izlaza.33

Slika 15: procedura sinteze sekvencijalnih logičkih sklopova

Imajući u vidu da će različiti tipovi bistabila zahtijevati različitu količinu logike za realizaciju

funkcija sljedećeg stanja, sljedeći zadatak sinteze sastoji se u izboru tipa bistabila. Nakon

izbora tipa bistabila, dolazi do izvođenja jednakosti za pobudu ulaza bistabila što obuhvaća i

optimizaciju logičke realizacije pobudnih i izlaznih Booleovih jednakosti, što će omogućiti da

se nacrta logička shemu, koja će poslužiti kao osnova za generiranje vremenskih dijagrama.

Posljednji korak u postupku sinteze sekvencijalnih logičkih sklopova je simulacija logičke

32 VHDL i Verilog su danas dva najšire korišćena HDL-a (Hardware Descriiption Language).33 Pranav, A., Srinivas, D., Newton, R.,A.: Sequential Logic Synthesis, Kluwer Academic Publishers, Unites States of America, 1992., str. 5.

26

Razvoj

dijagrama stan

ja

Generiranje tabele sljede

ćeg stanja

i tabele izlaza

Minimalizacija stanja

Kodiranje ulaza

, stanj

a i izlaz

a

Izbor me

morijskih elemenat

a

Izvođenje jednakost

i pobu

de

Optimizacija

logičke

implementacije

Kreiranje

logičke

sheme i

vremenskih dijagrama

Simulaci

ja logič

ke sheme

Verifikacija funkcionalnosti

i tajminga

Page 31: POSTUPCI ANALIZE I SINTEZE SEKVENCIJALNIH LOGIČKIH SKOPOVA

sheme i komparacija izlaza sa izvedenim vremenskim dijagramima kao bi se utvrdilo da li

logička shema realizira željeno ponašanje.

5.1. Unos modela konačnog automata

Projektiranja sekvencijalnih logičkih sklopova počinje generiranjem dijagrama stanja i/ili

tabela sljedećeg stanja i izlaza. Inicijalno, ove tabele moraju biti izvedene na osnovu opisa

ponašanja sekvencijalnog sklopa danog u prirodnom jeziku. Nažalost opisi u prirodnom

jeziku često mogu biti dvosmisleni, nepotpuni i obično su fokusirani samo na glavnu funkciju,

bez nabrajanja svih mogućih slučajeva ponašanja konačnog automata. Iz tog razloga, opis u

prirodnom jeziku se ponekada dopunjuje vremenskim dijagramima. No međutim, i vremenski

dijagrami mogu biti nepotpuni, zato što oni ne pokazuju odziv sklopa za sve moguće ulazne

sekvence, već samo na one najvažnije. Stoga je u većini slučajeva optimalno, umjesto opisa u

prirodnom jeziku koristiti jezik za opis hardvera, kao što je VHDL ili Verilog, ili neku

grafičku formu kao što je dijagram toka ili ASM dijagram. Bez obzira na to koji se od

navedenih načina koristi za modeliranje konačnog automata, konstrukcija modela konačnog

automata predstavlja kreativni dio procesa projektiranja.34

5.2. Reduciranje broja stanja

Cilj reduciranja broja stanja je smanjenje broja stanja sekvencijalnog sklopa. Sekvencijalni

sklop sa manjim brojem stanja zahtijeva manji broj bistabila, a time je i cijena realizacije

sklopa niža. Treba napomenuti da smanjenje broja stanja ne mora obavezno da smanji broj

potrebnih bistabila, osim ako se broj stanja ne smanji ispod tekućeg nivoa stupnja dvojke. Na

primjer, sekvencijalni sklop sa m stanja zahtijeva [logm] bistabila. S obzirom da će

smanjenje broja stanja za Δ zahtijevati [logm- Δ)] stanja, Δ mora biti takav broj da je

[logm] – [logm- Δ)] ≥ 1.35

34 Ibid, str. 11.35 Peruško, U., Glavinić, V.: Digitalni sustavi..., op.cit. str. 364.

27

Page 32: POSTUPCI ANALIZE I SINTEZE SEKVENCIJALNIH LOGIČKIH SKOPOVA

Međutim, čak iako smanjenje broja stanja ne dovodi do smanjenja broja bistabila, sklop sa

manjim brojem stanja imati će jednostavnije funkcije sljedećeg stanja i izlaza, u smislu da će

broj gateova (vratiju) potrebnih za realizaciju ovih funkcija biti manji i/ili će broj potrebnih

ulaza u gateove biti manji. Prednost korištenja gateova sa manjim brojem ulaza je u tome što

su takvi gateovi brži, što ujedno reducira kašnjenje sekvencijalnog sklopa i omogućava

povećanje taktne frekvencije i ukupnih performansi sklopa.

U općem slučaju, reduciranje broja stanja je zasnovano na konceptu ekvivalentnog ponašanja

konačnih automata. Dva konačna automata su ekvivalentna ako za svaku sekvencu ulaznih

simbola generiraju istu sekvencu izlaznih simbola. U nekim slučajevima, ekvivalentni

konačni automati mogu imati različiti broj stanja i mogu prolaziti kroz različita stanja za istu

ulaznu sekvencu, ali, bez obzira na to, sve dok generiraju istu izlaznu sekvencu oni se

smatraju ekvivalentnima. Dakle, možemo se zaključiti da u konačnom automatu sa većim

brojem stanja postoje stanja koja su ekvivalentna i mogu se spojiti u jedno stanje.

Ekvivalentnost stanja može se definirati na osnovi vrijednosti izlaza i sljedećeg stanja koje se

važe u stanjima čija se ekvivalentnost ispituje. Formalno, dva stanja s j i sk su ekvivalentna, sj =

sk ako su ispunjena sljedeća dva uvjeta:36

Oba stanja, sj i sk, generiraju iste izlazne simbole za svaki ulazni simbol i, tj. h(sj,i) =

h(sk,i).

Oba stanja imaju ekvivalentna sljedeća stanja za svaki ulazni simbol i, tj. f(sj,i) =

f(sk,i).

Na osnovu definicije ekvivalentnosti stanja, možemo formulirati jednostavnu proceduru za

reduciranje stanja konačnog automata. Shodno ovoj proceduri, najprije se stanja konačnog

automata grupiraju u razrede ekvivalencije, a zatim se konstruira novi konačni automat, sa

minimalnim brojem stanja, čije svako stanje reprezentira jedan razred ekvivalencije polaznog

automata. U praksi, ova procedura se obavlja u dva koraka. U prvom koraku, usporede se

izlazni simboli za svako stanje i svaki ulazni simbol. Cilj ove komparacije je grupiranje stanja

na takav način da sva stanja iz iste grupe generiraju isti izlazni simbol za svaki ulazni simbol.

36 Pranav, A., Srinivas, D., Newton, R.,A.: Sequential Logic Synthesis, Kluwer Academic Publishers, Unites States of America, 1992., str. 6.

28

Page 33: POSTUPCI ANALIZE I SINTEZE SEKVENCIJALNIH LOGIČKIH SKOPOVA

U drugom koraku, grupe se dijele na podgrupe na takav način da za isti ulazni simbol,

sljedeća stanja svih stanja iz iste podgrupe pripadaju istoj grupi. U nekim slučajevima, nakon

podjele, sljedeća stanja svih stanja iz iste podgrupe u istoj grupi neće pripadati istoj podgrupi.

U takvim slučajevima, drugi korak procedure mora biti ponovljen i to, ako je potrebno, više

puta, sve dok je daljnja podjela moguća. Svaka podgrupa predstavlja razred ekvivalencije

kojem odgovara jedno stanje u minimalnom konačnom automatu.37

5.3. Kodiranje stanja

Nakon što se utvrdi broj stanja sustava, treba odrediti broj bistabila koji je potreban za

realizaciju tih stanja. Za realizaciju S stanja treba minimalno n bistabila, tako da vrijedi:

S≤ 2n

Broj bistabila može biti i veći. Stanjima sustava treba zatim pridijeliti neke od mogućih stanja

bistabila, a to je postupak kodiranja stanja. Stanja sustava predstavljaju abecedu koda.

Tabela 8: Moguće kodiranje stanja

Ime stanja

Kod

Prirodni binarni

S minimalnom promjenom jednojedinični skoro jedinični

a 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0

b 0 0 1 0 0 1 0 0 0 1 0 0 0 0 1

c 0 1 0 0 1 1 0 0 1 0 0 0 0 1 0

d 0 1 1 0 1 0 0 1 0 0 0 0 1 0 0

e 1 0 0 1 1 0 1 0 0 0 0 1 0 0 0

Izvor: Peruško, U., Glavinić, V.: Digitalni sustavi, Školska knjiga, Zagreb, 2005., str. 369.

37 Ibid, str. 7.

29

Page 34: POSTUPCI ANALIZE I SINTEZE SEKVENCIJALNIH LOGIČKIH SKOPOVA

Najjednostavniji način kodiranja jest pridruživanje cijelih binarnih brojeva stanjima onim

redom kojim su unesena u tablicu. Takav se kod često naziva prirodni binarni kod. Takvo

kodiranje ne zahtijeva nikakav uvid u svojstva sustava, jednostavno je, ali obično nije

najbolje. Iznimka su sklopovi brojila. U drugom je stupcu prikazan kod s minimalnom

promjenom. Kod takvih se kodova od jedne do druge kodne riječi mijenja samo jedan bit. Taj

princip pokazuje najbolje rezultate u sklopovima brojila, U općem slučaju treba ga primijeniti

za onu grupu stanja koja najčešće prelaze jedno u drugo. U trećem je stupcu prikazan

jednojedinični kod u kojem svaka kodna riječ ima samo jedan bit u stanju 1. To nije kod s

minimalnim stanjem bita, ali je često prikladan za upravljačke sklopove gdje se izlazi uzimaju

neposredno s izlaza bistabila. Posljednji stupac prikazuje gotovo jedinični kod, koji se od

jediničnog koda razlikuje samo u prvom stanju, gdje su svi bitovi jednaki 0.38

Neki opći iskustveni principi za kodiranje stanja mogu se iskazati ovako:39

Odabrati takvo početno stanje sklopa u koje se sklop može jednostavno postaviti; to je

obično stanje u kojem su svi bistabili u stanju 0 ili u stanju 1.

Kodne riječi za pojedina stanja odabrati tako da minimalni broj bistabila mijenja stanje

pri prijelazu sekvencijskog sklopa iz jednog stanja u drugo.

Uočiti skupine stanja između kojih se događa najveći broj prijelaza i tako ih kodirati

da što manji broj bistabila mijenja stanja pri prijelazima.

Razmotriti prikladnost odabira većeg od onog minimalno potrebnog broja bistabila

Izabrati način postupanja s neupotrijebljenim stanjima

5.4. Izbor memorijskih elemenata

Nakon obavljenog reduciranja i kodiranja stanja, sljedeći korak u procesu sinteze konačnog

automata je izbor tipa bistabila. U općem slučaju, T bistabil predstavlja dobar izbor kod

sekvencijalnih sklopova tipa brojača, gdje bistabili često mijenjaju stanje. D bistabili se

obično koriste u aplikacijama gdje se ulazna informacija pamti na neko vrijeme, a koristi

kasnije. Praktično, D bistabil se koristi kao memorija za privremeno čuvanje informacija. SR

38 Peruško, U., Glavinić, V.: Digitalni sustavi..., op.cit. str. 369.39 Ibid, str. 370.

30

Page 35: POSTUPCI ANALIZE I SINTEZE SEKVENCIJALNIH LOGIČKIH SKOPOVA

bistabil se koristi u slučajevima kada različiti signali resetiraju bistabile. Bistabil JK koji je

ujedno i najsloženiji tip bistabila, koristan je kada je potrebno kombinirati ponašanje T i SR

bistabila. Na osnovu toga, može se zaključiti da su za sintezu konačnih automata najkorisniji

SR i JK bistabili, iako oni zahtijevaju dvostruko više veza u odnosu na T i D bistabile. U

općem slučaju, T i D bistabili su pogodniji za VLSI implementacije konačnih automata, s

obzirom da zahtijevaju manji broj veza.40

5.5. Optimizacija i tajming

Pretposljednji korak procedure sinteze sekvencijalnih logičkih sklopova sastoji se u mapiranju

ulazne i izlazne logike na komponente iz raspoloživih gateova. Nakon tehnološkog mapiranja,

crta se logička shema koja će na vizualni način predstaviti sve gateove i veze brojača. U

posljednjem koraku procedure za sintezu sekvencijalnih logičkih sklopova, a na osnovu

logičke sheme i poznatih kašnjenja signala kroz gateove i bistabile, kreira se vremenski

dijagram.

40 Pranav, A., Srinivas, D., Newton, R.,A.: Sequential Logic Synthesis, Kluwer Academic Publishers, Unites States of America, 1992., str. 8.

31

Page 36: POSTUPCI ANALIZE I SINTEZE SEKVENCIJALNIH LOGIČKIH SKOPOVA

Zaključak

Prilikom analize ili sinteze digitalnih sklopova, algebarski izrazi se često koriste za

karakterizaciju ponašanja postojećih sklopova ili željenog ponašanja sklopova koji se

projektiraju. Logički sudovi i teoremi nam omogućavaju da manipuliramo algebarskim

izrazima, što nam tada uvelike olakšava analizu i povećava efikasnost sinteze odgovarajućih

sklopova.

Sinteza se primjenjuje uvijek kada treba konvertirati bihevioralni u strukturalni opis koji

sadrži raspoložive komponente. Na primjer, alati za logičku sintezu omogućavaju konverziju

logičkih jednakosti u mreže vrata (gateova), minimalizujući pri tome broj vrata, propagirano

kašnjenje, potrošnju ili neki drugi unaprijed postavljeni cilj. Alati za logičku sintezu koriste se

za projektiranje kombinacijskih sklopova kao što su aritmetički sklopovi, komparatori, koderi,

dekoderi i upravljačka logika.

32

Page 37: POSTUPCI ANALIZE I SINTEZE SEKVENCIJALNIH LOGIČKIH SKOPOVA

Kratice i strane riječi

Kratica Naziv na engleskom jeziku Naziv na hrvatskom jeziku

A

ASM Algoritmic State Machine Algoritamska mašina stanja

C

CP Control processor Centralni procesor

D

DL

Diode logic Diodna logika

DTL Diode–Transistor Logic Diodno-tranzistorska logika

E

ECL Emitter-Coupled Logic Logika zajedničkog emitera

M

MOSFETmetal–oxide–semiconductor field-effect transistor

Unipolarni tranzistor sa metal-oksid vodičem

R

RTL Register-transfer level Razina registra i prijenosa

T

TTL

V

VLSI

Transistor–transistor logic

Very-Large-Scale Integration

Tranzistor-tranzistor logika

Integrirani krugovi visoke gustoće

33

Page 38: POSTUPCI ANALIZE I SINTEZE SEKVENCIJALNIH LOGIČKIH SKOPOVA

34

Page 39: POSTUPCI ANALIZE I SINTEZE SEKVENCIJALNIH LOGIČKIH SKOPOVA

Popis slika

Slika 1: Osnovni logički sklopovi...........................................................................................................6Slika 2: Princip bistabila.......................................................................................................................10Slika 3: SR-bistabil...............................................................................................................................11Slika 4: JK-bistabil..............................................................................................................................12Slika 5: T-bistabil.................................................................................................................................13Slika 6: D-bistabil.................................................................................................................................13Slika 7: Master slave bistabil................................................................................................................14Slika 8: Primjer sekvencijskog sklopa s T-bistabilima (dvobitno binarno brojilo)...............................16Slika 9: dijagram stanja za sklop iz slike 8...........................................................................................19Slika 10: Sekvencijski sklop s JK-bistabilima......................................................................................20Slika 11: Dijagram stanja sklopa sa slike 10........................................................................................21Slika 12: Sklop s D-bistabilima............................................................................................................23Slika 13: Dijagram stanja sklopa sa slike 12........................................................................................24Slika 14: Primjer asinkronoga sekvencijskog sklopa s povratnom vezom............................................25Slika 15: procedura sinteze sekvencijalnih logičkih sklopova..............................................................26

35

Page 40: POSTUPCI ANALIZE I SINTEZE SEKVENCIJALNIH LOGIČKIH SKOPOVA

Popis tablica

Tabela 1: Zbrajanje dvaju binarnih znamenaka......................................................................................4Tabela 2: Tablice stanja sklopa............................................................................................................16Tabela 3: Znakovna tablica stanja........................................................................................................17Tabela 4: tablica izlaza.........................................................................................................................18Tabela 5: Tablica stanja sklopa sa slike 10 – binarna stanja.................................................................21Tabela 6: Znakovna tablica stanja sklopa sa slike 10............................................................................21Tabela 7: Tablica stanja sklopa sa slike 12...........................................................................................24Tabela 8: Moguće kodiranje stanja.......................................................................................................29

36

Page 41: POSTUPCI ANALIZE I SINTEZE SEKVENCIJALNIH LOGIČKIH SKOPOVA

Literatura

KNJIGE:

1. Papić, V.: Osnove elektronike, Sveučilište u Splitu, Split, 2005.

2. Peruško, U., Glavinić, V.: Digitalni sustavi, Školska knjiga, Zagreb, 2005.

3. Paunović, S.: Digitalna elektronika,  Školska knjiga, Zagreb, 2005.

4. Pean, M.: Digitalni komunikacijski sustavi, Zagreb : Centar odgoja i usmjerenog

obrazovanja za elektroniku, preciznu mehaniku i optiku Ruđer Bošković, 1985.

5. Pranav, A., Srinivas, D., Newton, R.,A.: Sequential Logic Synthesis, Kluwer

Academic Publishers, Unites States of America, 1992.

6. Tocci, J.,R., Widmer, N.,S.: Digital Systems Principles & Applications, Prentice Hall,

Upper Saddle River, New Jersey, 2001.    

INTERNET:

7. http://www.oup.com/uk/orc/bin/9780199273133/clements_ch03.pdf

8. http://ebookbrowse.com/pr-9c-sekvencijalni-sklopovi-pdf-d222355081

9. http://www.informatika.buzdo.com/s080.htm

10. http://www.fpz.unizg.hr/hgold/ES/DE/uvod1.htm

37

Page 42: POSTUPCI ANALIZE I SINTEZE SEKVENCIJALNIH LOGIČKIH SKOPOVA

38