Transcript
Page 1: Algoritamske mašine stanja ili ASM dijagramies.elfak.ni.ac.rs/ams/Materijal/5_ASM.pdf · Arhitektura mikrosistema Algoritamske mašine stanja ili ASM dijagrami • Standardna grafička

Arhitektura mikrosistema

Algoritamske mašine stanjaili

ASM dijagrami

• Standardna grafička notacija, u formi dijagrama toka, koja se koristi za opis ponašanja (funkcionisanja) digitalnih sistema.

• Koristi se prilikom projektovanja digitalnog hardvera koji realizuje neki konkretan algoritam.

• Opis rad digitalnog sistema na apstraktnom nivou, nezavisno od konkretne hardverske realizacije.

• ASM dijagram govori šta sistem radi (tj. definiše tok elementarnih operacija u vremenu), a ne kako je sistem realizovan (tj. koja konkretna digitalna kola se koriste i kako su povezana).

Page 2: Algoritamske mašine stanja ili ASM dijagramies.elfak.ni.ac.rs/ams/Materijal/5_ASM.pdf · Arhitektura mikrosistema Algoritamske mašine stanja ili ASM dijagrami • Standardna grafička

Arhitektura mikrosistema

ASM v.s. softverski dijagram toka

• Slični po izgledu• Oba tipa dijagrama služe za opis algoritama.• Softverske dijagrame toka koriste programeri, u

procesu razvoja programa koji će se izvršavati na računskoj mašini.

• ASM dijagrame koriste projektanti digitalnog hardvera, kao početni korak u procesu realizacije konkretnog algoritma direktno u hardveru.

Page 3: Algoritamske mašine stanja ili ASM dijagramies.elfak.ni.ac.rs/ams/Materijal/5_ASM.pdf · Arhitektura mikrosistema Algoritamske mašine stanja ili ASM dijagrami • Standardna grafička

Arhitektura mikrosistema

ASM v.s. softverski dijagram toka

• Računar– Sekvencijalni rad: Izvršava program instrukciju-po-instrukciju; – U svakom ciklusu se obavlja jedna instrukcija– Instrukcijski ciklusi mogu imati različito trajanje. – Softverski dijagram ne navodi tačan iznos vremena koji je

potreban da bi se izvršio jedan algoritamski korak, već samo jednoznačno određuje tok (sekvencu) algoritamskih koraka.

• Digitalni hardver– Paralelizam - u toku jednog taktnog ciklusa može da obavi jednu

ili više elementarnih operacija– ASM dijagram - svaki algoritamski korak traje isto, fiksno vreme

(jednako taktnom periodu), a sve operacije obuhvaćene jednim algoritamskim korakom se izvršavaju istovremeno (u paraleli).

Page 4: Algoritamske mašine stanja ili ASM dijagramies.elfak.ni.ac.rs/ams/Materijal/5_ASM.pdf · Arhitektura mikrosistema Algoritamske mašine stanja ili ASM dijagrami • Standardna grafička

Arhitektura mikrosistema

Algoritamske mašine stanja

• Koristi tri grafička simbola:

Blok stanja Blok grananja Blok uslovnog izlaza

Page 5: Algoritamske mašine stanja ili ASM dijagramies.elfak.ni.ac.rs/ams/Materijal/5_ASM.pdf · Arhitektura mikrosistema Algoritamske mašine stanja ili ASM dijagrami • Standardna grafička

Arhitektura mikrosistema

Stanja• Predstavlja se pravougaonikom• Svako stanje traje jedan taktni

ciklus• Tekuće stanje odnosi se na

pravougaonik ASM dijagrama koji je aktivan u toku konkretnog taktnog ciklusa.

• Sledeće stanje odnosi se na pravougaonik ASM dijagrama koji će postati aktivan u toku narednog taktnog ciklusa

• ASM dijagram mora sadržati barem jednu petlju.

Stanje

Ime stanja

Petlja

Page 6: Algoritamske mašine stanja ili ASM dijagramies.elfak.ni.ac.rs/ams/Materijal/5_ASM.pdf · Arhitektura mikrosistema Algoritamske mašine stanja ili ASM dijagrami • Standardna grafička

Arhitektura mikrosistema

Stanje - taktni ciklus

………

ZELENOCRVENO2.5

CRVENOŽUTO2.0

ŽUTOZELENO1.5

ZELENOCRVENO1.0

CRVENOŽUTO0.5

ŽUTOZELENO0.0

Sledeće stanjeTekuće stanjeVreme

Page 7: Algoritamske mašine stanja ili ASM dijagramies.elfak.ni.ac.rs/ams/Materijal/5_ASM.pdf · Arhitektura mikrosistema Algoritamske mašine stanja ili ASM dijagrami • Standardna grafička

Arhitektura mikrosistema

Postavljanje izlaznih signala• Signal - jedan bit, ili grupa više bitova, koji prenose

binarnu informaciju između digitalnih kola ili sklopova

• Ime signala unutar pravougaonika znači da je taj signal postavljen za sve vreme dok je ASM dijagram u tom u stanju. U pravougaonicima, gde se ime signala ne javlja, signal ima podrazumevanu vrednost.

ZELENO

ZUTO

CRVENO

STOP

STOP

………

STOP=1ZELENOCRVENO2.5

STOP=1CRVENOŽUTO2.0

STOP=0ŽUTOZELENO1.5

STOP=1ZELENOCRVENO1.0

STOP=1CRVENOŽUTO0.5

STOP=0ŽUTOZELENO0.0

SignaliSledeće stanjeTekuće stanjeVreme

Page 8: Algoritamske mašine stanja ili ASM dijagramies.elfak.ni.ac.rs/ams/Materijal/5_ASM.pdf · Arhitektura mikrosistema Algoritamske mašine stanja ili ASM dijagrami • Standardna grafička

Arhitektura mikrosistema

Registarski prenos

• Registri se koriste kao memorijski elementi za čuvanje vrednosti promenljivih koje su definisane algoritmom.

• Operacija upisa u registar se označava naredbom registarskog prenosa– A ← A + 1– ukazuje na vrednost koja se upisuje (prenosi) u

registar u trenutku početka sledećeg taktnog ciklusa– ← ukazuje na odloženu ili zakasnelu dodelu

Page 9: Algoritamske mašine stanja ili ASM dijagramies.elfak.ni.ac.rs/ams/Materijal/5_ASM.pdf · Arhitektura mikrosistema Algoritamske mašine stanja ili ASM dijagrami • Standardna grafička

Arhitektura mikrosistema

Registarski prenosBRZINA=3

ZELENO

ZUTO

CRVENO

STOPBRZINA=1

BROJAC<-BROJAC+1

STOPBROJAC<-BROJAC+2

…………

STOP=1 BRZINA=00 BROJAČ=100ZELENOCRVENO2.5

STOP=1 BRZINA=01 BROJAČ=011CRVENOŽUTO2.0

STOP=0 BRZINA=11 BROJAČ=011ŽUTOZELENO1.5

STOP=1 BRZINA=00 BROJAČ=001ZELENOCRVENO1.0

STOP=1 BRZINA=01 BROJAČ=000CRVENOŽUTO0.5

STOP=0 BRZINA=11 BROJAČ=000ŽUTOZELENO0.0

Signali i promenljiveSledeće stanjeTekuće stanjeVreme

STOP - jednobitni signal

BRZINA - višebitni signal

BROJAC - registar (inicijalno 0)

Page 10: Algoritamske mašine stanja ili ASM dijagramies.elfak.ni.ac.rs/ams/Materijal/5_ASM.pdf · Arhitektura mikrosistema Algoritamske mašine stanja ili ASM dijagrami • Standardna grafička

Arhitektura mikrosistema

Grananja

BRZINA=3ZELENO

ZUTO

CRVENO

STOPBRZINA=1

BROJAC<-BROJAC+1

STOPBROJAC<-BROJAC+2

BROJAC != 0

0

1

…………

STOP=1 BRZINA=00 BROJAČ=001ZELENOCRVENO5.0

STOP=1 BRZINA=01 BROJAČ=000CRVENOŽUTO4.5

STOP=1 BRZINA=01 BROJAČ=111ŽUTOŽUTO4,0

STOP=1 BRZINA=01 BROJAČ=110ŽUTOŽUTO3.5

STOP=1 BRZINA=01 BROJAČ=101ŽUTOŽUTO3.0

STOP=1 BRZINA=01 BROJAČ=100ŽUTOŽUTO2.5

STOP=1 BRZINA=01 BROJAČ=011ŽUTOŽUTO2.0

STOP=0 BRZINA=11 BROJAČ=011ŽUTOZELENO1.5

STOP=1 BRZINA=00 BROJAČ=001ZELENOCRVENO1.0

STOP=1 BRZINA=01 BROJAČ=000CRVENOŽUTO0.5

STOP=0 BRZINA=11 BROJAČ=000ŽUTOZELENO0.0

Signali i promenljiveSledeće stanjeTekuće stanjeVreme

tačnonetačno

Page 11: Algoritamske mašine stanja ili ASM dijagramies.elfak.ni.ac.rs/ams/Materijal/5_ASM.pdf · Arhitektura mikrosistema Algoritamske mašine stanja ili ASM dijagrami • Standardna grafička

Arhitektura mikrosistema

Grananja

• PREKIDAC - ulazni signal• BROJAČ - registar

BRZINA=3ZELENO

ZUTO

CRVENO

STOPBRZINA=1

BROJAC <- BROJAC+1

STOPBROJAC <- BROJAC+2

BROJAC != 0

0

1

PREKIDAC

1

0

Page 12: Algoritamske mašine stanja ili ASM dijagramies.elfak.ni.ac.rs/ams/Materijal/5_ASM.pdf · Arhitektura mikrosistema Algoritamske mašine stanja ili ASM dijagrami • Standardna grafička

Arhitektura mikrosistema

Pristupi projektovanju

• Dva pristupa rešavanju problema:– ¨odozdo-naviše¨ (bottom-up)– ¨odozgo-naniže¨ (top-down)

Page 13: Algoritamske mašine stanja ili ASM dijagramies.elfak.ni.ac.rs/ams/Materijal/5_ASM.pdf · Arhitektura mikrosistema Algoritamske mašine stanja ili ASM dijagrami • Standardna grafička

Arhitektura mikrosistema

Projektovanje ¨odozdo-naviše¨

• ¨Odozdo-naviše¨ (bottom-up)– Projektant rešava izdvojene

detalje celokunog problema koje potom ugrađuje u konačno rešenje

– Rešeni detalji se obično međusobo ne uklapaju idealno

– Najveći deo ukupnog projektantskog vremena troši na uklapanje nezavisnih detalja, što često uključuje i prepravku većrešenih delova opšteg problema

– Nije pogodno za projektovanje složenih digitalnih sistem

Interfejs

Komponenta

Page 14: Algoritamske mašine stanja ili ASM dijagramies.elfak.ni.ac.rs/ams/Materijal/5_ASM.pdf · Arhitektura mikrosistema Algoritamske mašine stanja ili ASM dijagrami • Standardna grafička

Arhitektura mikrosistema

Projektovanje ¨odozgo-naniže¨• Projektant započinje rad na problemu

razradom globalnog plana– sveobuhvatno sagledavanje problema, – razrada strategije rešavanja problema, – dekompozicija problema na potprobleme manjeg

obima– definisanje odnosa (interfejsa) između

potproblema– projektant ne rešava odmah uočene

potprobleme, već ih tretira kao apstraktne sklopove (crne kutije) koje međusobno uklapa i povezuje

• U nastavku– Projektant razrađuje i rešava potprobleme– Problem uklapanja ne postoji (interfejsi su

definisani u prvoj fazi)

Page 15: Algoritamske mašine stanja ili ASM dijagramies.elfak.ni.ac.rs/ams/Materijal/5_ASM.pdf · Arhitektura mikrosistema Algoritamske mašine stanja ili ASM dijagrami • Standardna grafička

Arhitektura mikrosistema

Projektovanje ¨odozgo-naniže¨ -faze projektovanja

• Faze– Opis ponašanja (sistem koja se projektuje

opisuje se na algoritamskom nivou, npr. u vidu ASM dijagrama )

– Razrada (podeli sistema na dva upravljačku jedinicu i staza podataka )

– Realizacija (realizacija hardvera sistema)

Page 16: Algoritamske mašine stanja ili ASM dijagramies.elfak.ni.ac.rs/ams/Materijal/5_ASM.pdf · Arhitektura mikrosistema Algoritamske mašine stanja ili ASM dijagrami • Standardna grafička

Arhitektura mikrosistema

Opis ponašanja

• Najvažnija faza celokupnog procesa projektovanja

• Sistem koja se projektuje opisuje se na algoritamskom nivou, npr. u vidu ASM dijagrama

• Sistem se tretira kao crna kutija sa naznačenim ulazima i izlazima koja se ponaša na način koji je opisan algoritmom

Page 17: Algoritamske mašine stanja ili ASM dijagramies.elfak.ni.ac.rs/ams/Materijal/5_ASM.pdf · Arhitektura mikrosistema Algoritamske mašine stanja ili ASM dijagrami • Standardna grafička

Arhitektura mikrosistema

Opis ponašanja - Interfes• Interfejs (značenje reči) - mesto na kome se dva

nezavisna sistema susreću ili spajaju (ili sredstvo koje koriste) radi zajedničkog dejstva ili međusobne komunikacije.

• Digitalni sistem u toku rad ineraguje sa svojim okruženjem (drugi digitalni sistemi, ne-digitalni uređaji, pa čak i čovek koji posredstvom odgovarajućih ulazno-izlaznih uređaja komunicira sa sistemom)

• Za definisanje interfesa potrebno je znati koje informacije se razmenjuju između sistema i okruženja i na koji način sistem komunicira sa okruženjem

• Specifikacija interfejsa digitalnog sistema uključuje specifikaciju ulaza i izlaza (tj. portova) proširenu pravilima za korišćenje sistema od strane korisnika

Page 18: Algoritamske mašine stanja ili ASM dijagramies.elfak.ni.ac.rs/ams/Materijal/5_ASM.pdf · Arhitektura mikrosistema Algoritamske mašine stanja ili ASM dijagrami • Standardna grafička

Arhitektura mikrosistema

Opis ponašanja - Interfes• Dva tipa ulaznih i izlaznih informacija:

– Upravljački i statusni signali (najčešće jednobitni signali)

• Upravljački ulazi - iniciraju naku aktivnost sistema• Statusni ulazi - sistem dobija informaciju o trenutnom stanju

okruženja• Upravljački izlazi - sistem inicira neku aktivnost u okruženju• Statusni izlazi - obaveštava okruženje o svom trenutnom

stanju• Signali takta i resetovanja prisutnih kod svih sistema

– Podaci• Ulazni podaci - informacija koju

sistem treba da obradi• Izlazni podaci - rezultat obrade

Page 19: Algoritamske mašine stanja ili ASM dijagramies.elfak.ni.ac.rs/ams/Materijal/5_ASM.pdf · Arhitektura mikrosistema Algoritamske mašine stanja ili ASM dijagrami • Standardna grafička

Arhitektura mikrosistema

Interfes - Primer (Sekvencijalni delitelj)

• Pre aktiviranja upravljačkog ulaza start(start=1) korisnik, treba da postavlja deljenik i delilac na ulazima podatak x i y. Korisnik ne sme da menja x i y za vreme dok traje izračunavanje (dok je rdy=0).

• Trajanje signala start mora biti tačno jedan taktni period.

• Korisnik je u obavezi da pre sledećeg aktiviranja signala start čeka barem dva taktna ciklusa nakon što je sistem završio prethodno izračunavanje

Ulazi podataka

Upravljački ulaz

Izlaz podataka

Statusni izlaz

Spada u specifiakciju

interfejsa

Page 20: Algoritamske mašine stanja ili ASM dijagramies.elfak.ni.ac.rs/ams/Materijal/5_ASM.pdf · Arhitektura mikrosistema Algoritamske mašine stanja ili ASM dijagrami • Standardna grafička

Arhitektura mikrosistema

Konverzija algoritma u ASM dijagram

B = 0;while(A≠0) do

if(A0 = 1) then B = B + 1;

end if;A = A >> 1;

end while;

B <- 0A <- a

S0

start

A <- A >> 1

A=0

A(0)

B <- B + 1

Kraj

S1 S2

0

1

0

1

da

ne

Osnova za softverskorešenje datog problema

Osnova za hardversko

rešenje

?

Sekvencijalno izvršenje algoritamskih koraka

Ne sadrži informaciju o trajanju operacija

Dozvoljava paralelizam (sve operacije obuhvaćene jednim stanjem izvršavaju se istovremeno)

Nameće diskretizaciju vremena (jedno stanje, jedan taktni ciklus)

Page 21: Algoritamske mašine stanja ili ASM dijagramies.elfak.ni.ac.rs/ams/Materijal/5_ASM.pdf · Arhitektura mikrosistema Algoritamske mašine stanja ili ASM dijagrami • Standardna grafička

Arhitektura mikrosistema

Konverzija algoritma u ASM dijagram• Algoritam je teže predstaviti u obliku ASM

dijagrama nego u obliku softverskog pseudo koda.

– => Opis ponašanja digitalnog sistema tipično počinje kreiranjem softverskog algoritma, koji se potom konvertuje u ekvivalentni ASM dijagram

• Pravila konverzije:– Svaka naredba dodele softverskog algoritma se

prevodi u naredbu registarskog prenosa koja se smešta u zaseban blok stanja ASM dijagrama iza koga ne sledi blok grananja.

– Svaka if ili while naredba softverskog algoritma se transformiše u prazan blok stanja nakon koga sledi blok grananja sa upisanom relacijom iz softverske naredbe.

Page 22: Algoritamske mašine stanja ili ASM dijagramies.elfak.ni.ac.rs/ams/Materijal/5_ASM.pdf · Arhitektura mikrosistema Algoritamske mašine stanja ili ASM dijagrami • Standardna grafička

Arhitektura mikrosistema

Primer direktne konverzija algoritma u ASM dijagram -

sekvencijalni delitelj

r1 = x;r2 = 0;while (r1 >= y){ r2 = r2 + 1;

r1 = r1 – y;}

Izlaz iz r2

Bez TEST, ispitivanje

r1>=y koristilobi staru

vrednost r1 !!!

Page 23: Algoritamske mašine stanja ili ASM dijagramies.elfak.ni.ac.rs/ams/Materijal/5_ASM.pdf · Arhitektura mikrosistema Algoritamske mašine stanja ili ASM dijagrami • Standardna grafička

Arhitektura mikrosistema

ASM dijagram sekvencijalnogdelitelja

Optimizacija (eliminacija stanja TEST)3+2*količnik3+3*količnik

Page 24: Algoritamske mašine stanja ili ASM dijagramies.elfak.ni.ac.rs/ams/Materijal/5_ASM.pdf · Arhitektura mikrosistema Algoritamske mašine stanja ili ASM dijagrami • Standardna grafička

Arhitektura mikrosistema

ASM dijagram sekvencijalnogdelitelja

Optimizacija (eliminacija stanja INIT)

Algoritmaski ispravno.

Problem u korisničkom interfejsu: rezultat (u r2) je dostupan za očitavanje samo 1 taktni ciklus

Page 25: Algoritamske mašine stanja ili ASM dijagramies.elfak.ni.ac.rs/ams/Materijal/5_ASM.pdf · Arhitektura mikrosistema Algoritamske mašine stanja ili ASM dijagrami • Standardna grafička

Arhitektura mikrosistema

ASM dijagram sekvencijalnogdelitelja

Optimizacija (eliminacija stanja INIT)Uvodi se još jedan registar (r3) koji čuva rezultat

Šta ako je količnik 0 ?

Page 26: Algoritamske mašine stanja ili ASM dijagramies.elfak.ni.ac.rs/ams/Materijal/5_ASM.pdf · Arhitektura mikrosistema Algoritamske mašine stanja ili ASM dijagrami • Standardna grafička

Arhitektura mikrosistema

ASM dijagram sekvencijalnogdelitelja

Optimizacija (Paralelizacija petlje)Neuspešni pokušaji

Preuranjen upis u r3

Page 27: Algoritamske mašine stanja ili ASM dijagramies.elfak.ni.ac.rs/ams/Materijal/5_ASM.pdf · Arhitektura mikrosistema Algoritamske mašine stanja ili ASM dijagrami • Standardna grafička

Arhitektura mikrosistema

ASM dijagram sekvencijalnogdelitelja

Optimizacija (Paralelizacija petlje)

PASIVNOr1 <- xr2 <- 0

rdy

start10

r1 >= y1

0 r1 <- r1 – yr2 <- r2 + 1

r3 <- r2

C123

r1 >= y

r3 <- 0

0 1

N3

Stanje C123 se izvršava jedanput više, ali se zato u

r3 upisuje jadnput manje

Page 28: Algoritamske mašine stanja ili ASM dijagramies.elfak.ni.ac.rs/ams/Materijal/5_ASM.pdf · Arhitektura mikrosistema Algoritamske mašine stanja ili ASM dijagrami • Standardna grafička

Arhitektura mikrosistema

ASM dijagram sekvencijalnogdelitelja

Optimizacija (Eliminacija stanja N3)

PASIVNOr1 <- xr2 <- 0

rdy

start10

r1 >= y1

0 r1 <- r1 – yr2 <- r2 + 1

r3 <- r2

C123

r1 >= y

r3 <- 0

0 1

N3

PASIVNOr1 <- xr2 <- 0

rdy

start10

start | r1 >= y1

0 r1 <- r1 – yr2 <- r2 + 1

r3 <- r2

C123

2+količnik

Page 29: Algoritamske mašine stanja ili ASM dijagramies.elfak.ni.ac.rs/ams/Materijal/5_ASM.pdf · Arhitektura mikrosistema Algoritamske mašine stanja ili ASM dijagrami • Standardna grafička

Arhitektura mikrosistema

ASM dijagrami Milijevog tipa

BRZINA=3

ZELENO

ZUTO

CRVENO

STOPBRZINA=1

BROJAC<-BROJAC+1

STOPBROJAC<-BROJAC+2

BROJAC /= 0

0

1

NAPUSTI

OSTANI

………

STOP=1 BRZINA=1 BROJAČ=011 OSTANI = 1 NAPUSTI = 0ŽUTO6.0

STOP=0 BRZINA=3 BROJAČ=011 OSTANI = 0 NAPUSTI = 0ZELENO5.5

STOP=1 BRZINA=0 BROJAČ=001 OSTANI = 0 NAPUSTI = 0CRVENO5.0

STOP=1 BRZINA=1 BROJAČ=000 OSTANI = 0 NAPUSTI = 1ŽUTO4.5

STOP=1 BRZINA=1 BROJAČ=111 OSTANI = 1 NAPUSTI = 0ŽUTO4.0

STOP=1 BRZINA=1 BROJAČ=110 OSTANI = 1 NAPUSTI = 0ŽUTO3.5

STOP=1 BRZINA=1 BROJAČ=101 OSTANI = 1 NAPUSTI = 0ŽUTO3.0

STOP=1 BRZINA=1 BROJAČ=100 OSTANI = 1 NAPUSTI = 0ŽUTO2.5

STOP=1 BRZINA=1 BROJAČ=011 OSTANI = 1 NAPUSTI = 0ŽUTO2.0

STOP=0 BRZINA=3 BROJAČ=011 OSTANI = 0 NAPUSTI = 0ZELENO1.5

STOP=1 BRZINA=0 BROJAČ=001 OSTANI = 0 NAPUSTI = 0CRVENO1.0

STOP=1 BRZINA=1 BROJAČ=000 OSTANI = 0 NAPUSTI = 1ŽUTO0.5

STOP=0 BRZINA=3 BROJAČ=000 OSTANI = 0 NAPUSTI = 0ZELENO0.0

Signali i promenljiveStanjeVre

Uslovne operacije

Page 30: Algoritamske mašine stanja ili ASM dijagramies.elfak.ni.ac.rs/ams/Materijal/5_ASM.pdf · Arhitektura mikrosistema Algoritamske mašine stanja ili ASM dijagrami • Standardna grafička

Arhitektura mikrosistema

ASM dijagram sekvencijalnog deliteljaMilijeva verzija (Eliminacija stanja INIT)

r2 se resetuje u stanju PASIVO,

pod uslovom ako je start=1Umesto da uvedemo r3

Page 31: Algoritamske mašine stanja ili ASM dijagramies.elfak.ni.ac.rs/ams/Materijal/5_ASM.pdf · Arhitektura mikrosistema Algoritamske mašine stanja ili ASM dijagrami • Standardna grafička

Arhitektura mikrosistema

ASM dijagram sekvencijalnog deliteljaMilijeva verzija (Spajanje stanja C1 i C2)

PASIVNOr1 <- x

rdy

start10

r1 >= y1

0 r1 <- r1 – yr2 <- r2 + 1

C12

r2 <- 0

r2 se inkrementira jedanput više

Page 32: Algoritamske mašine stanja ili ASM dijagramies.elfak.ni.ac.rs/ams/Materijal/5_ASM.pdf · Arhitektura mikrosistema Algoritamske mašine stanja ili ASM dijagrami • Standardna grafička

Arhitektura mikrosistema

ASM dijagram sekvencijalnog deliteljaMilijeva verzija (Spajanje stanja C1 i C2)

PASIVNOr1 <- x

rdy

start10

r1 >= y1

0 r1 <- r1 – yr2 <- r2 + 1

C12

r2 <- 0

Page 33: Algoritamske mašine stanja ili ASM dijagramies.elfak.ni.ac.rs/ams/Materijal/5_ASM.pdf · Arhitektura mikrosistema Algoritamske mašine stanja ili ASM dijagrami • Standardna grafička

Arhitektura mikrosistema

ASM dijagram sekvencijalnog deliteljaMilijeva verzija (Ranije postavljanje signala rdy)

2+količnik takta i

2 registra

Page 34: Algoritamske mašine stanja ili ASM dijagramies.elfak.ni.ac.rs/ams/Materijal/5_ASM.pdf · Arhitektura mikrosistema Algoritamske mašine stanja ili ASM dijagrami • Standardna grafička

Arhitektura mikrosistema

Razrada• Cilj da polazni problem, prethodno precizno opisan ASM

dijagramom, podeliti na dva dela: • staza podataka

– registri za čuvanje vrednosti promenljivih; – kombinaciona logika za obavljanje izračunavanja iz naredbi

registarskog prenosa i relacija.• upravljačku jedinicu - sprovodi algoritam

Page 35: Algoritamske mašine stanja ili ASM dijagramies.elfak.ni.ac.rs/ams/Materijal/5_ASM.pdf · Arhitektura mikrosistema Algoritamske mašine stanja ili ASM dijagrami • Standardna grafička

Arhitektura mikrosistema

Projektovanje staze podataka

r1 ← x

r1 ← r1-y

r2 ← 0

r2 ← r2 + 1

r3 ← r2

r1 >= y

registar + oduzimač

brojač

registar

komparator

Page 36: Algoritamske mašine stanja ili ASM dijagramies.elfak.ni.ac.rs/ams/Materijal/5_ASM.pdf · Arhitektura mikrosistema Algoritamske mašine stanja ili ASM dijagrami • Standardna grafička

Arhitektura mikrosistema

Projektovanje staze podataka(metodička staza podataka)

r1n

(-)n

≥n

nld

r2 r3n

inc clr ld

n

y x

q

Upravljacka jedinica

muxctrlldr1r1geyldr3clrr2incr2 Staza

podataka

start

rdy

clk

rst

rst

n n

r1 ← x

r1 ← r1-y

r2 ← 0

r2 ← r2 + 1

r3 ← r2

r1 >= y

registar + oduzimač

brojač

registar

komparator

r1 ← x (muxctrl=0, ldr1=1)

r1 ← r1-y (muxctrl=1, ldr1=1)

r2 ← 0 (clrr2=0)

r2 ← r2 + 1 (incr2=1)

r3 ← r2 (ldrr3=1)

r1 >= y (r1gey)

Page 37: Algoritamske mašine stanja ili ASM dijagramies.elfak.ni.ac.rs/ams/Materijal/5_ASM.pdf · Arhitektura mikrosistema Algoritamske mašine stanja ili ASM dijagrami • Standardna grafička

Arhitektura mikrosistema

Projektovanje upravljačke jedinice

r1 ← x (muxctrl=0, ldr1=1)

r1 ← r1-y (muxctrl=1, ldr1=1)

r2 ← 0 (clrr2=1)

r2 ← r2 + 1 (incr2=1)

r3 ← r2 (ldrr3=1)

r1 >= y (r1gey)

Page 38: Algoritamske mašine stanja ili ASM dijagramies.elfak.ni.ac.rs/ams/Materijal/5_ASM.pdf · Arhitektura mikrosistema Algoritamske mašine stanja ili ASM dijagrami • Standardna grafička

Arhitektura mikrosistema

Staza podataka zasnovana na ALU

r1

ldr1

r2

ldr2

01

muxctrl

2

x

x/y

ALUy

aluctrl

cout

a

b

12

12

1212

12

12

2

4

PASIVNO

ldr1aluctrl = 'PROPUŠTANJEmuxctrl = 0SPREMAN

start10

ldr2aluctrl = 'NULA

aluctrl = 'ODUZIMANJEmuxctrl = 1

ldr1aluctrl = 'ODUZIMANJEmuxctrl = 1

INIT

TEST

ldr2aluctrl = `INKREMENTauxctrl = 2

C1r1gey

1

0

C2

r1 ← x r1 ← r1-y

r2 ← 0 r2 ← r2 + 1

r3 ← r2 r1 >= y

Page 39: Algoritamske mašine stanja ili ASM dijagramies.elfak.ni.ac.rs/ams/Materijal/5_ASM.pdf · Arhitektura mikrosistema Algoritamske mašine stanja ili ASM dijagrami • Standardna grafička

Arhitektura mikrosistema

Realizacija upravljačke jedinice ˝one-hot˝ metodom

• Upravljačka jedinica tipa ¨one-hot¨ koristi tačno onoliko flip-flopova koliko ima stanja u odgovarajućem ASM dijagramu.

• Uvek je setovan tačno jedan flip-flop (onaj koji odgovara tekućem stanju)

• Prelaz sledeće stanje znači resetovanje flip-flopa tekućeg i setovanje flip-flopa sledećeg stanja.

Page 40: Algoritamske mašine stanja ili ASM dijagramies.elfak.ni.ac.rs/ams/Materijal/5_ASM.pdf · Arhitektura mikrosistema Algoritamske mašine stanja ili ASM dijagrami • Standardna grafička

Arhitektura mikrosistema

Realizacija upravljačke jedinice ˝one-hot˝ metodom

- pravila konverzije -

Page 41: Algoritamske mašine stanja ili ASM dijagramies.elfak.ni.ac.rs/ams/Materijal/5_ASM.pdf · Arhitektura mikrosistema Algoritamske mašine stanja ili ASM dijagrami • Standardna grafička

Arhitektura mikrosistema

Realizacija upravljačke jedinice ˝one-hot˝ metodom

- primer -Kolo za detekciju

ukljucenja napona napajanja

DR Q

reset

10TS

PASIVNO

10

r1gey

TS

DR Q

reset

IZRACUNAVANJE

ldr1aluctrl[3]

aluctrl[2]

incr2ldr3muxctrlaluctrl[4]aluctrl[0]

clrr2aluctrl[5]aluctrl[1]SPREMAN

"1"

"0"

IZRACUNAVANJE

PASIVNO

PASIVNO

start10

start | r1gey1

0 ldr1incr2ldr3muxctrl

C123

ldr1clrr2rdy

Page 42: Algoritamske mašine stanja ili ASM dijagramies.elfak.ni.ac.rs/ams/Materijal/5_ASM.pdf · Arhitektura mikrosistema Algoritamske mašine stanja ili ASM dijagrami • Standardna grafička

Arhitektura mikrosistema

Realizacija

• Kreiranje VHDL opisa• Simulacija• Sinteza

Page 43: Algoritamske mašine stanja ili ASM dijagramies.elfak.ni.ac.rs/ams/Materijal/5_ASM.pdf · Arhitektura mikrosistema Algoritamske mašine stanja ili ASM dijagrami • Standardna grafička

Arhitektura mikrosistema

Sekvencijalni brojač jedinica

• Brojač jedinica (bit_counter) je kolo koje određuje broj 1-ca u ulaznom binarnom vektoru

Page 44: Algoritamske mašine stanja ili ASM dijagramies.elfak.ni.ac.rs/ams/Materijal/5_ASM.pdf · Arhitektura mikrosistema Algoritamske mašine stanja ili ASM dijagrami • Standardna grafička

Arhitektura mikrosistema

Sekvencijalni brojač jedinicaAlgoritam

• B = 0;• while(A≠0) do• if(A0 = 1) then • B = B + 1;• end if;• A = A >> 1;• end while;

A, B => regA, regB

bit_counter

a b

clk

rst

start

rdy

n log2nregBregA

Page 45: Algoritamske mašine stanja ili ASM dijagramies.elfak.ni.ac.rs/ams/Materijal/5_ASM.pdf · Arhitektura mikrosistema Algoritamske mašine stanja ili ASM dijagrami • Standardna grafička

Arhitektura mikrosistema

Sekvencijalni brojač jedinicaInterfejs

regA ← ardy

IDLE

start 0

regB ← 0

1

Izracunavanje

clk

a

start

b

rdy

A

B

IzracunaranjeRezultat dostupna

za ocitavanjeRezultat dostupna

za ocitavanje

0 1 . . .

Page 46: Algoritamske mašine stanja ili ASM dijagramies.elfak.ni.ac.rs/ams/Materijal/5_ASM.pdf · Arhitektura mikrosistema Algoritamske mašine stanja ili ASM dijagrami • Standardna grafička

Arhitektura mikrosistema

Sekvencijalni brojač jedinicaKonverzija algoritma u ASM

• B = 0;• while(A≠0) do• if(A0 = 1) then • B = B + 1;• end if;• A = A >> 1;• end while;

regA ← ardy

IDLE

start 0

regB ← 0

1

regA ≠ 0

TEST

regA(0)

regB ← regB + 1

INCR

regA ← regA >>1

1

0

SHIFT

NE

DA

Page 47: Algoritamske mašine stanja ili ASM dijagramies.elfak.ni.ac.rs/ams/Materijal/5_ASM.pdf · Arhitektura mikrosistema Algoritamske mašine stanja ili ASM dijagrami • Standardna grafička

Arhitektura mikrosistema

Sekvencijalni brojač jedinicaAnaliza ASM

regA ← ardy

IDLE

start 0

regB ← 0

1

regA ≠ 0

TEST

regA(0)

regB ← regB + 1

INCR

regA ← regA >>1

1

0

SHIFT

NE

DA

1IDLE10xxxxIDLE0111IDLE100000IDLE0100IDLE100000TEST090TEST100001SHIFT080SHIFT010001INCR070INCR010001TEST060TEST010010SHIFT050SHIFT010010TEST040TEST010101SHIFT030SHIFT000101INCR020INCR000101TEST011TESTxxxxxxIDLE10

rdySledecestanje

regBregATekucestanje

STARTCLK

Za a = 0101

Page 48: Algoritamske mašine stanja ili ASM dijagramies.elfak.ni.ac.rs/ams/Materijal/5_ASM.pdf · Arhitektura mikrosistema Algoritamske mašine stanja ili ASM dijagrami • Standardna grafička

Arhitektura mikrosistema

Sekvencijalni brojač jedinicaOptimizacja: stanje INCR pripojeno stanju

TEST

1IDLE10xxxxIDLE09

1IDLE100000IDLE08

0IDLE100000TEST07

0TEST100001SHIFT06

0SHIFT010001TEST05

0TEST010010SHIFT04

0SHIFT010010TEST03

0TEST010101SHIFT02

0SHIFT000101TEST01

1TESTxxxxxxIDLE10

rdySledecestanje

regBregATekuce stanje

STARTCLK

Page 49: Algoritamske mašine stanja ili ASM dijagramies.elfak.ni.ac.rs/ams/Materijal/5_ASM.pdf · Arhitektura mikrosistema Algoritamske mašine stanja ili ASM dijagrami • Standardna grafička

Arhitektura mikrosistema

Sekvencijalni brojač jedinicaOptimizacja: spajanje stanja TEST i SHIFT

regA ← ardy

IDLE

start 0

regB ← 0

1

regA ← regA >>1

regA ≠ 0

regA(0)

regB ← regB + 1

1

0

SHIFT

NE

DA

Page 50: Algoritamske mašine stanja ili ASM dijagramies.elfak.ni.ac.rs/ams/Materijal/5_ASM.pdf · Arhitektura mikrosistema Algoritamske mašine stanja ili ASM dijagrami • Standardna grafička

Arhitektura mikrosistema

Sekvencijalni brojač jedinicaOptimizacja: spajanje stanja TEST i SHIFT

1IDLE10xxxxIDLE061IDLE100000IDLE050IDLE100000SHIFT040SHIFT010001SHIFT030SHIFT010010SHIFT020SHIFT000101SHIFT011TESTxxxxxxIDLE10

rdySledecestanje

regBregATekuce stanje

STARTCLK

Page 51: Algoritamske mašine stanja ili ASM dijagramies.elfak.ni.ac.rs/ams/Materijal/5_ASM.pdf · Arhitektura mikrosistema Algoritamske mašine stanja ili ASM dijagrami • Standardna grafička

Arhitektura mikrosistema

Sekvencijalni brojač jedinicaOptimizacja: ranije postavljanje signala rdy

regA ← ardy

IDLE

start 0

regB ← 0

1

regA ← regA >>1

regA ≠ 0

regA(0)

regB ← regB + 1

1

0

SHIFT

NE

DA

rdy

1IDLE100000IDLE05

1IDLE100000SHIFT04

0SHIFT010001SHIFT03

0SHIFT010010SHIFT02

0SHIFT000101SHIFT01

1TESTxxxxxxIDLE10

rdySledecestanje

regBregATekuce stanje

STARTCLK

Page 52: Algoritamske mašine stanja ili ASM dijagramies.elfak.ni.ac.rs/ams/Materijal/5_ASM.pdf · Arhitektura mikrosistema Algoritamske mašine stanja ili ASM dijagrami • Standardna grafička

Arhitektura mikrosistema

Sekvencijalni brojač jedinicaRazrada

regA ← ardy

IDLE

start 0

regB ← 0

1

regA ← regA >>1

regA ≠ 0

regA(0)

regB ← regB + 1

1

0

SHIFT

NE

DA

rdy

regA ← a

regA ← regA >> 1

regA ≠ 0

regB ← 0

regB ← regB +1

Pomerački registar sa paralelnim upisom

n-ulazno ILI kolo

Brojač sa sinhronim resetom

Page 53: Algoritamske mašine stanja ili ASM dijagramies.elfak.ni.ac.rs/ams/Materijal/5_ASM.pdf · Arhitektura mikrosistema Algoritamske mašine stanja ili ASM dijagrami • Standardna grafička

Arhitektura mikrosistema

Sekvencijalni brojač jedinicaRazrada - staza podataka

regA ← a (la=1,ea=1)

regA ← regA >> 1 (la=0, ea=1)

regA ≠ 0 (signal z)

regB ← 0 (lb=eb=1)

regB ← regB +1 (lb=0, eb=1)

Page 54: Algoritamske mašine stanja ili ASM dijagramies.elfak.ni.ac.rs/ams/Materijal/5_ASM.pdf · Arhitektura mikrosistema Algoritamske mašine stanja ili ASM dijagrami • Standardna grafička

Arhitektura mikrosistema

Sekvencijalni brojač jedinicaRazrada - ASM dijagram upravljačke

jediniceregA ← ardy

IDLE

start 0

regB ← 0

1

regA ← regA >>1

regA ≠ 0

regA(0)

regB ← regB + 1

1

0

SHIFT

NE

DA

rdy

regA ← a (la=1,ea=1)

regA ← regA >> 1 (la=0, ea=1)

regA ≠ 0 (signal z)

regB ← 0 (lb=eb=1)

regB ← regB +1 (lb=0, eb=1)

Page 55: Algoritamske mašine stanja ili ASM dijagramies.elfak.ni.ac.rs/ams/Materijal/5_ASM.pdf · Arhitektura mikrosistema Algoritamske mašine stanja ili ASM dijagrami • Standardna grafička

Arhitektura mikrosistema

Sekvencijalni brojač jedinicaRealizacija - VHDL opis staze podataka

procesi

ENTITY datapath ISPORT(a : IN STD_LOGIC_VECTOR(7 DOWNTO 0);

b : OUT STD_LOGIC_VECTOR(3 DOWNTO 0);la,ea,lb,eb : IN STD_LOGIC;a0,z : OUT STD_LOGIC;clk : IN STD_LOGIC;rst : IN STD_LOGIC);

END datapath;

Microsoft Word Document

Page 56: Algoritamske mašine stanja ili ASM dijagramies.elfak.ni.ac.rs/ams/Materijal/5_ASM.pdf · Arhitektura mikrosistema Algoritamske mašine stanja ili ASM dijagrami • Standardna grafička

Arhitektura mikrosistema

Sekvencijalni brojač jedinicaRealizacija - VHDL opis upravljačke jedinice

ENTITY control ISPORT(start: IN STD_LOGIC;

rdy : OUT STD_LOGIC;z, a0 : IN STD_LOGIC;la,ea,lb,eb : OUT STD_LOGIC;clk : IN STD_LOGIC;rst : IN STD_LOGIC);

END control;

Microsoft Word Document

Page 57: Algoritamske mašine stanja ili ASM dijagramies.elfak.ni.ac.rs/ams/Materijal/5_ASM.pdf · Arhitektura mikrosistema Algoritamske mašine stanja ili ASM dijagrami • Standardna grafička

Arhitektura mikrosistema

Sekvencijalni brojač jedinicaRealizacija - VHDL opis sek. brojača

jedinica

ENTITY bit_counter ISPORT(a : IN STD_LOGIC_VECTOR(7 DOWNTO 0);

b : OUT STD_LOGIC_VECTOR(3 DOWNTO 0);start : IN STD_LOGIC;rdy : OUT STD_LOGIC;clk : IN STD_LOGIC;rst : IN STD_LOGIC);

END bit_counter;

Microsoft Word Document

Page 58: Algoritamske mašine stanja ili ASM dijagramies.elfak.ni.ac.rs/ams/Materijal/5_ASM.pdf · Arhitektura mikrosistema Algoritamske mašine stanja ili ASM dijagrami • Standardna grafička

Arhitektura mikrosistema

Sekvencijalni brojač jedinicaSimulacija

Page 59: Algoritamske mašine stanja ili ASM dijagramies.elfak.ni.ac.rs/ams/Materijal/5_ASM.pdf · Arhitektura mikrosistema Algoritamske mašine stanja ili ASM dijagrami • Standardna grafička

Arhitektura mikrosistema

Ispitni zadatak 1Za ASM dijagram sa slike, nacrtati vremenski dijagram koji

prikazuje taktni signal, clk, stanja (S0, S1 i S2), ulaze (X1, X2 i X3) i izlaze. Ulazna sekvenca je X1 X2 X3 = 011, 101, 111, 010, 110, 101, 001. Usvojiti da se promena stanja dešava na rastuću a promene ulaza na opadajuću ivicu takta. Pretpostaviti da je početno stanje S0.

Page 60: Algoritamske mašine stanja ili ASM dijagramies.elfak.ni.ac.rs/ams/Materijal/5_ASM.pdf · Arhitektura mikrosistema Algoritamske mašine stanja ili ASM dijagrami • Standardna grafička

Arhitektura mikrosistema

Ispitni zadatak 2ASM dijagram sa slike (a) opisuje

ponašanje digitalnog sistema čiji je blok dijagram prikazan na slici (b). Interfejs sistema čine: jednobitni ulazni signal Cin, 4-bitni ulazni signal n i jednobitni izlazni signal Cout. Interno, sistem sadrži registar R. Izvršiti analizu rada sistema pod pretpostavkom da je na ulazu n prisutna vrednost n=3, da je u početnom trenutku sistem u stanju S0 i da se vrednost signal Cin menja na način kao u koloni Cin tabele sa slike (c):

Popuniti tabelu sa slike (c).Vremenski dijagram sa slike (d) dopuniti

talasnim oblikom izlaznog signala Cout.

Svojim rečima objasniti funkciju sistema.

Page 61: Algoritamske mašine stanja ili ASM dijagramies.elfak.ni.ac.rs/ams/Materijal/5_ASM.pdf · Arhitektura mikrosistema Algoritamske mašine stanja ili ASM dijagrami • Standardna grafička

Arhitektura mikrosistema

Ispitni zadatak 2

Page 62: Algoritamske mašine stanja ili ASM dijagramies.elfak.ni.ac.rs/ams/Materijal/5_ASM.pdf · Arhitektura mikrosistema Algoritamske mašine stanja ili ASM dijagrami • Standardna grafička

Arhitektura mikrosistema

Ispitni zadatak 2

• Sistem generiše izlazni signal u trajanju od 1 takta, pomeren u odnosu na signal Cin za n+1 taktova.

Page 63: Algoritamske mašine stanja ili ASM dijagramies.elfak.ni.ac.rs/ams/Materijal/5_ASM.pdf · Arhitektura mikrosistema Algoritamske mašine stanja ili ASM dijagrami • Standardna grafička

Arhitektura mikrosistema

Ispitni zadatak 3• Softverski algoritam predstavljen programskom

sekvencom sa slike konvertovati u funkcionalni ASM dijagram. Pretpostaviti da je niz X[i] smešten u RAM-u.

• max = 0;• for(i=0;i<N;++i) {• if(X[i] > max) {• max = X[i];• }• }

Page 64: Algoritamske mašine stanja ili ASM dijagramies.elfak.ni.ac.rs/ams/Materijal/5_ASM.pdf · Arhitektura mikrosistema Algoritamske mašine stanja ili ASM dijagrami • Standardna grafička

Arhitektura mikrosistema

Ispitni zadatak 3

Microsoft Word Document

Page 65: Algoritamske mašine stanja ili ASM dijagramies.elfak.ni.ac.rs/ams/Materijal/5_ASM.pdf · Arhitektura mikrosistema Algoritamske mašine stanja ili ASM dijagrami • Standardna grafička

Arhitektura mikrosistema

Ispitni zadatak 4• Projektovati stazu podataka i

odgovarajući razrađeni ASM koji će realizovati algoritam definisan funkcionalnim ASM dijagramom sa slike. Na raspolaganju su sledeći funkcionali elementi: jedan 8-bitni brojački registar, jedan 8-bitni registra sa dozvolom, jedna 8-bitna ALU, i potreban broj multipleksera proizvoljnog tipa. Dati sistemski dijagram koji pokazuje spregu upravljačke jedinice i staze podataka.

Page 66: Algoritamske mašine stanja ili ASM dijagramies.elfak.ni.ac.rs/ams/Materijal/5_ASM.pdf · Arhitektura mikrosistema Algoritamske mašine stanja ili ASM dijagrami • Standardna grafička

Arhitektura mikrosistema

Ispitni zadatak 4

Page 67: Algoritamske mašine stanja ili ASM dijagramies.elfak.ni.ac.rs/ams/Materijal/5_ASM.pdf · Arhitektura mikrosistema Algoritamske mašine stanja ili ASM dijagrami • Standardna grafička

Arhitektura mikrosistema

Ispitni zadatak 4

Page 68: Algoritamske mašine stanja ili ASM dijagramies.elfak.ni.ac.rs/ams/Materijal/5_ASM.pdf · Arhitektura mikrosistema Algoritamske mašine stanja ili ASM dijagrami • Standardna grafička

Arhitektura mikrosistema

Ispitni zadatak 5• Za ASM dijagram sa

slike projektovati stazu podataka i razrađeni ASM dijagram. Na raspolaganju su sledeći

• funkcionalni elementi:• jedno 8-bitno kolo za

inkrementiranje,• tri 8-bitna registra sa

dozvolom,• jedan 8-bitni sabirač• potreban broj

multipleksera.

Page 69: Algoritamske mašine stanja ili ASM dijagramies.elfak.ni.ac.rs/ams/Materijal/5_ASM.pdf · Arhitektura mikrosistema Algoritamske mašine stanja ili ASM dijagrami • Standardna grafička

Arhitektura mikrosistema

Ispitni zadatak 5

•8-bitni inkrementer•3 8-bitna registra sa dozvolom,•8-bitni sabirač•potreban broj multipleksera

Page 70: Algoritamske mašine stanja ili ASM dijagramies.elfak.ni.ac.rs/ams/Materijal/5_ASM.pdf · Arhitektura mikrosistema Algoritamske mašine stanja ili ASM dijagrami • Standardna grafička

Arhitektura mikrosistema

Ispitni zadatak 5

Page 71: Algoritamske mašine stanja ili ASM dijagramies.elfak.ni.ac.rs/ams/Materijal/5_ASM.pdf · Arhitektura mikrosistema Algoritamske mašine stanja ili ASM dijagrami • Standardna grafička

Arhitektura mikrosistema

Ispitni zadatak 6

• Projektovati “one-hot” upravljačku jedinicu za ASM dijagram sa slike. in0 i in1 su ulaznistatusni signali, a out0, out1, out2 i out3 izlazni upravljački signali.

Page 72: Algoritamske mašine stanja ili ASM dijagramies.elfak.ni.ac.rs/ams/Materijal/5_ASM.pdf · Arhitektura mikrosistema Algoritamske mašine stanja ili ASM dijagrami • Standardna grafička

Arhitektura mikrosistema

Ispitni zadatak 6

Page 73: Algoritamske mašine stanja ili ASM dijagramies.elfak.ni.ac.rs/ams/Materijal/5_ASM.pdf · Arhitektura mikrosistema Algoritamske mašine stanja ili ASM dijagrami • Standardna grafička

Arhitektura mikrosistema

Ispitni zadatak 7Na slici su prikazani blok

dijagram i razrađeni ASM dijagram upravljačke jedinice koja je deo nekog složenogsistema. Upravljačka jedinica interaguje sa okruženjem putem statusnih ulaza start i mode i statusnog izlaza rdy,dok se za spregu upravljačke jedinice i staze podataka koriste: jednobitni upravljački signali ld_1, ld_2, inc, 3-bitni upravljački signal ctrl i jednobitni statusni signal stat. Realizovati upravljačku jedinicu korišćenjem «onehot» tehnike.

Page 74: Algoritamske mašine stanja ili ASM dijagramies.elfak.ni.ac.rs/ams/Materijal/5_ASM.pdf · Arhitektura mikrosistema Algoritamske mašine stanja ili ASM dijagrami • Standardna grafička

Arhitektura mikrosistema

Ispitni zadatak 7

Page 75: Algoritamske mašine stanja ili ASM dijagramies.elfak.ni.ac.rs/ams/Materijal/5_ASM.pdf · Arhitektura mikrosistema Algoritamske mašine stanja ili ASM dijagrami • Standardna grafička

Arhitektura mikrosistema

Ispitni zadatak 8• Ubaciti dodatne multipleksere i povezati komponente sa slike (a)

tako da se dobije dijagram digitalnog sistema koji je u stanju da obavlja algoritam predstavljen funkcionalnim ASM dijagramom sa slike (b). Slike prikazuje (i) brojač sa paralelnim upisom (ce -dozvola brojanja; ld - dozvola paralelnog upisa), (ii) prihvatni registar sa dozvolom upisa (en - dozvola upisa), (iii) binarni sabirač, (iv) višeulazno I kolo i (v) upravljačku jedinicu (UJ).

Page 76: Algoritamske mašine stanja ili ASM dijagramies.elfak.ni.ac.rs/ams/Materijal/5_ASM.pdf · Arhitektura mikrosistema Algoritamske mašine stanja ili ASM dijagrami • Standardna grafička

Arhitektura mikrosistema

Ispitni zadatak 8

Page 77: Algoritamske mašine stanja ili ASM dijagramies.elfak.ni.ac.rs/ams/Materijal/5_ASM.pdf · Arhitektura mikrosistema Algoritamske mašine stanja ili ASM dijagrami • Standardna grafička

Arhitektura mikrosistema

Ispitni zadatak 9

Page 78: Algoritamske mašine stanja ili ASM dijagramies.elfak.ni.ac.rs/ams/Materijal/5_ASM.pdf · Arhitektura mikrosistema Algoritamske mašine stanja ili ASM dijagrami • Standardna grafička

Arhitektura mikrosistema

Ispitni zadatak 9

0 &

X(n-

2 D

OW

NTO

1)


Top Related