Signaalinkäsittelytekniikan laboratorio
Digitaalitekniikan perusteet

Luennot
Sivukartta
Sanasto
Laskuharjoitukset

Tilakaavio (state diagram) ja sen käyttö

Synkronisella piirillä on joukko eri tiloja. Nämä tilat muodostavat takaisinkytkentöjä ja sijoittuvat piiri-/lohkokaaviossa seuraavasti: 'uusi tila' on se tilasignaalien joukko, joka menee tilarekisterin kiikkuihin sisään. 'Nykytila' on se tilasignaalien joukko, joka saadaan kiikuista ulos. Synkroniset sekvenssipiirithän koostuivat tilarekisteristä (= joukko kiikkuja) sekä kombinaatiopiiriosasta. Synkroninen sekvenssipiiri on siis tilakone.

Tila kuvaa aikariippuvuutta ja sillä on erilaisia ominaisuuksia joita ovat mm. tilakoodi sekä tilaan liittyvät annot. Tilakoodi vastaa suoraan niitä nollia ja ykkösiä, joita saadaan kiikuista piiriin, kun ollaan kyseisessä tilassa. (Esim. 4 kiikkua, tilakoodi 0110. Kyseisessä tilassa kiikkujen annot ovat 0, 1, 1, ja 0.) Jos tilaan liittyy anto, joka on riippuvainen vain tilasta (ei lainkaan ottosignaaleista, esim. Mooren koneessa on vain tilaan liittyviä antoja), kirjoitetaan anto kauttaviivan toiselle puolelle muodossa: tilakoodi / tilaan suoraan liittyvä anto. (Ks. myös graafinen esimerkki alempaa)

Tilasta voidaan liikkua toiseen tilaan tai pysyä samassa tilassa. Tilasta toiseen liiikkuminen tapahtuu tiettyjen tilaehtojen avulla. Käytännössä uusi tila saavutetaan aina seuraavan kellojakson alussa. (Synkronisen sekvenssipiirin ominaisuuksiinhan kuuluu, että piiri vaihtaa tilaansa vain kellopulssin tahdissa.) Tilasiirtymä kuvataan tilakaaviossa nuolella. Nuolen yläpuolelle kirjoitetaan sen ottosignaalin kyseinen arvo, joka mahdollistaa siirtymän tilasta toiseen. Jos lähtötilaan liittyy ottosignaalista riippuvia antoja, ilmoitetaan annot kauttaviivan toisella puolella muodossa: ottosignaali / signaalista riippuva anto.

... ja sama graafisin esimerkein

Tilakaaviossa jokaista piirin tilaa kuvaa soikio. Soikion sisällä on kyseisen tilan tilakoodi (Esim. tässä tapauksessa piiri on tilassa 00)

Jos tilaan liittyy anto, joka riippuu vain tilasta, ilmaistaan se tilan yhteydessä kauttaviivan toisella puolella seuraavasti: (esim. tässä tapauksessa kun piiri on tilassa 00, on piirin antosignaali 1)

Tilasiirtymät tilasta toiseen tilaan esitetään nuolilla. Nuolen yläpuolelle merkitään sen ottosignaalin kyseinen arvo, joka mahdollistaa tilasiirtymän (esim. tässä tapauksessa ottosignaalin tulee olla 0):

Jos lähtötilassa on ottosignaalista riippuva anto, merkataan kyseinen anto ottosignaalin seuraksi tilasiirtymään kauttaviivan toiselle puolelle (esim. tässä tapauksessa mikäli ottosignaali saa arvon 0 ja suoritetaan tilasiirtymä, antaa piiri antosignaalin arvoksi 1:n)

Yksinkertainen tilakaavio voisi näyttää vaikka tältä: (Esimerkki olisi tosielämässä hyvin kömpelö. Siihen on lähinnä pyritty mahdutettamaan kaikki pääasiat tilakaaviosta.)

Tätä ylläolevaa tilakaaviota voidaan tulkita seuraavalla tavalla:

  • Kun piiri on tilassa 00 (tilakoodi=00) ei näytä tapahtuvan mitään.
  • Kun tilassa 00, ottosignaali on 1. Tällöin piirin "ulosanti" eli antosignaali saa arvon 0.
  • Kun tilassa 00, ottosignaali onkin 0, antaa piiri antosignaalina 1:en ja siirtyy samalla tilaan 01
  • Tilassa 01 antosignaali on koko ajan 1
  • Kun tilassa 01 ottosignaali on 0, piiri vain pysyy samassa tilassa kuin ennenkin (siis tilassa 01)
  • Kun taas tilassa 01 ottosignaali onkin 1, vaihtaa piiri tilaansa takaisin tilaan 00 ja samalla antosignaalin arvoksi tulee 0.

Luento 9

Lisätietoja:


Tämän sivun sisällöstä vastaa aura@wooster.hut.fi
URL: http://signal.hut.fi/digis/luento9/tila.html
Sivua on viimeksi päivitetty 15.08.2003.