Lataa esitys
Esittely latautuu. Ole hyvä ja odota
1
Digitaalitekniikka osa 2 Sekvenssilogiikka
T686SA 2008 syksy Kurssi pohjautuu kirjaan Digitaalitekniikka, Haltsonen et al. Edita 2004
2
Sekvenssilogiikka Sekvenssilogiikka on piiri, jossa ulostulo riippuu myös edellisestä ulostulosta, ei vain sisäänmenoista Sekvenssilogiikka voi olla asynkroonista tai synkroonista Asynkrooninen toimii kuten kombinaatiologiikka-kin, eli kun sisäänmeno muuttuu, ulostulo muuttuu huomioiden edellisen ulostulon Synkroonin toiminta tarkoittaa, että kaikki piirin toiminta ajoitetaan yhtäaikaiseksi ulkoisella kello-signaalilla. Kello voi olla mikä tahansa pulssi.
3
Sekvenssilogiikan yleinen muoto
Ulkoiset tulot Ulkoiset lähdöt A Z Kombinaatiologiikka y Takaisinkytkentä Y Muisti Sisäiset tulot (Nykytilan muuttujat) Sisäiset lähdöt (Seuraavan tilan muuttujat) Kello
4
Yksinkertaiset sekvenssilogiik-kapiirit ja takaisinkytkentä
Yksinkertaisessa piirissä muisti voi olla pelkkä johdin (muista piirin viive) Nyt tulee tarkastella sekä sisäänmenoja että ulostuloja, kuinka ne vaikuttavat kombinaatioon Input race eli sisäänmenon kilpailu tapahtuu Analysoinnissa KATKAISE takaisinkytkentä ja käytä sisäisiä tuloja kuten ulkoisiakin Tee kaksi K-karttaa: tilataulu ja lähtötaulu Vain ne tilat, jossa langan molemmat päät ovat samassa tilassa ovat vakaita tiloja (stable state)
5
Yksinkertaiset sekvenssilogiik-kapiirit ja takaisinkytkentä
Z Y y Katkaise takaisinkytkentä Vakaa JOS Y == y Tämä piiri on vakaa, jos A == 0, jos A vaihdetaan tilaan 1, sisäinen ja ulkoinen lähtö y ja Y ovat aina eri, jolloin piiri ei ole vakaa, vaan se oskilloi kunnes A on palautettu nollaan.
6
Siirtymät tilojen välillä
Perustoimintamuoto: Vain yksi sisäänmeno vaihtaa kerralla tilaansa! Ulkoiset muuttujat ylös Katkaise takaisinkytkentä Sisäiset muuttujat pystyyn Nyt havaitaan, jos A tai B =1, on systeemi vakaa ja ulostulo Z =Y=y=1. Takaisinkykennällä ei ole vaikutusta. MUTTA jos molemmat A ja B ovat nollia, meillä on kaksi vakaata tilaa. Nyt Z:n tila riippuu edellisestä tilasta, tilasta ennenkuin molemmat A ja B asetettiin nollaksi.
7
Analyysimenetelmä Katkaise takaisinkytkentäsilmukka
Laadi tilataulu seuraavan tilan muuttujille ja lähtötaulu ulostulomuuttujille. (transition table, K-map) Ulkoiset muuttujat yläriville ja sisäiset muuttujat pystysarakkeeseen Määrittele vakaat tilat (Y=y) Piirrä virtauskaavio ja tilakaavio
8
Esimerkki y Transition table Tilataulu Karnaugh map Lähtötaulu
Flow table Virtaus-, tilanvaihtokaavio
9
Kuinka piiri toimii Jos A = B = 1 ja y = 0 niin Y = 0 ja systeemi on vakaa, tilassa numero 3 Jos B muutetaan tästä 0:ksi, piiri siirtyy vaakasuoraan oikealle tilaan AB’y’ Tämä on epävakaa tila ja piiri siirtyy pystysuo-raan tilaan AB’y, vakaaseen tilaan numero 5 Jos B muutetaan takaisin ykköseksi, piiri siirtyy vaakasuoraan vasempaan tilaan ABy, tila 4, ei takaisin tilaan 3 Ulostulon K- kartasta näemme, että ulostulo on myös eri (tila 3 = 0 ja tila 4 = 1)
10
Tilakaavio eli State diagram
Z = 0 0 1 4 2 Z = 1 1 0 1 1 0 0 0 1 1 1 0 0 1 AB = 1 1 5 3 0 0 10
11
Kiikut ja salvat eli Flip-Flops and Latches
Analysoi kuinka S-R salpa toimii! Miksi SR= 11 on Not used eli kielletty? Q’ Alkuperäinen piiri Uudelleen piirretty, vain yksi takaisinkytkentä
12
S-R-salpa Ulostulo Q(t+1) tarkoittaa kellopulssin jälkeistä tilaa tai yleisesti vain seuraavaa tilaa. Q(t) on hetkeä aikaisempi tila. S-R –salpaa käytetään kytkinvärähtelyiden eliminointiin S R Q 1 Q(t +1) Q(t ) X
13
D-salpa ja D-kiikku Ulostulon hallinta tapahtuu C –tulon avulla.
Kun C = 1 sisäänmeno siirtyy ulostuloon (C=control) D-kiikussa kello tulee C:n paikalle (C = clock) --> tarkoittaa kellopulssin nousevalla reunalla tapahtuvaa muutosta, D tulee sanasta Delay (tai data). C 1 D X 1 Q(t +1) Q(t ) 1 1D D C Q C1 1D D CLK Q C1 D 1 Q(t +1)
14
Kiikkupiirit D-, T- ja JK -kiikut esitellään
Useat toiminnot voidaan toteuttaa sekä D että JK –kiikuilla, (T-kiikkua ei voi ostaa) Kellosignaalin nousevalla tai laskevalla reunalla tapahtuvat muutokset ulostuloissa Nousevalla reunalla Laskevalla reunalla
15
T-Kiikku T kuten Toggle, eli jokaisella kellopulsilla ulostulo vaihtaa tilaa. Käytetään laskureissa 1T T CLK Q C1 T 1 Q(t +1) Q(t) T CLK Q
16
JK-Kiikku Monipuolisin kiikkupiiri, myös D ja T-toiminta K 1 Q(t +1)
1 Q(t +1) Q(t) J 1J J CLK Q C1 1K K 1J C1 1K T K CLK Q J 1J C1 1K 1 D CLK
17
JK-Kiikku JK –kiikun täydellinen totuustaulu S 1 R 1 CLK X J X 1 K X
1 R 1 CLK X J X 1 K X 1 Q(t +1) X 1 Q(t) 1J J CLK Q C1 1K K S R Asynkroninen = välitön Synkroninen = kellon tahdistama
18
D-Kiikku eri kiikuista
D–kiikun täydellinen totuustaulu D-kiikun saa myös SR- tai JK -kiikusta J K
19
J K ja D–kiikun Toggle moodi
CLK C1 1J CLK C1 Q 1 1K 1T CLK C1 Q 1
20
Laskurit Voivat olla asynkroonisia tai synkroonisia
Tarvitsemme yhtä monta kiikkua kuin laskuriin halutaan bittejä Sekä JK- että D -kiikkuja voidaan käyttää Asynkroonisissa laskureissa JK- tai D- kiikun Toggle moodia käytetään Kombinaatiologiikkaa käytetään säätämään laskurin toimintaa
21
Kellosignaalin generaattori
Diodin D1 lisäyksellä saadaan ulostulon pulssisuhde säädettyä alle 50%, valitsemalla R1 < R2.
22
Perusbinäärilaskurit (4 ja 8)
23
Perusbinäärilaskurit (16)
Toteutus nyt D-kiikuilla 1D CLK C1 Q0 Q1 Q2 Q3
24
Viiveet asynkroonisessa laskurissa
25
Asynkrooninen kymmenlaskuri
Lisätään ulkonen NAND portti, joka nollaa laskurin kun luku 10 on laskettu. Vastaavasti voidaan laatia myös muita laskusekvenssejä, esim. 2…6
26
Synkrooninen 16-laskuri
Huomaa kellosignaalin reitti! Kaikille piireille kello samanaikaisesti. JK’t ovat nyt joko Toggling tai HOLD tilassa Ajoituskaaviosta nähdään AND porttien paikat.
27
Synkrooninen kymmenlaskuri
28
Ylös/alas -laskuri Sekvenssi on 0,1,2,3,4,5,6,7,6,5,4,3,2,1,0….
Miten nämä piirit saadaan suunniteltua?
29
Yleinen sekvenssilogiigan suunnittelu, laskurit
Laadi tilataulukko piirin kaikista mahdolli-sista tiloista, ulostuloista Rakenna siirtotaulu Käytä valmistelutulojen totuustauluja, transistion tables (D tai JK) Rakenna K-kartat kullekin valmistelutulolle Kerää loogiset termit kunkin kiikun sisään-menoille Piirrä laskurikytkentä
30
Kiikkujen valmistelutulot, FlipFlops Transition Tables
Katso kiikun toimintakaaviosta ja muuta ne muotoon, jossa ulostulo on kellopulssia edeltävä sisäänmeno. Katso toimintataulusta, milloin tämä toteutuu.
31
Esimerkki, Gray koodi -laskuri
Tämä esimerkki toteutetaan JK -kiikuilla. Tee itse sama D-kiikuilla!! Tilakaavio
32
Gray koodi -laskuri, vaiheet 2, 3 ja 4
33
Karnaugh kartat eri kiikkujen sisäänmenoille
34
UP/Down Gray code counter
35
UP/Down Gray code counter
36
UP/Down Gray code counter
37
Piirissä esiintymättömät tilat
Jos piirin tilojen kuvaamiseen tarvitaan kolmea bittiä, mutta vain viisi tilaa esiintyy normaalissa toiminnassa. Muut tilat ovat ns. Don’t care tiloja ja ne tulee ohjata johonkin haluttuun tilaan 001 000 010 011 100 111 101 110 001 000 010 011 100 111 101 110
38
Piirissä esiintymättömät tilat
X 1 A B JA C JB JC KA KB KC 001 000 010 011 100 111 101 110 001 000 010 011 100 111 101 110
39
Piirissä esiintymättömät tilat
X 1 A B JA C JB JC KA KB KC 001 000 010 011 100 111 101 110 001 000 010 011 100 111 101 110
40
Riippuvuusmerkintä Yleinen kontrollilohko
74HC163 4-bit synkrooninen laskuri Mode Dependency M AND Dependency G Control Dependency C Control Dependency (C), yleensä sallii tai estää data tulot. C tarkoittaa kellotuloa ja numero sen perässä on nimi. Nyt 5CT=0 clr tulossa tarkoittaa, että nollaus on synkrooninen toiminta. Mode Dependency kertoo, että on kaksi toimintamoodia. M1 ja 1,5 D kertovat, että kun Load on alhaalla D tulot ladataan kiikuihin. Kun Load on ylhäällä laskuri laskee eteenpäin (M2 ja C5/2,3,4+). And Dependency (G) mikä tahansa tulon ja vastaavalla numerolla merkityn pinnin välillä on AND riippuvuus. Nyt G3 ja 3CT = 15 RCO ovat liittetty yhteen. Eli toiminta on: ENT pitää olla ylhäällä ja count = 15 ennenkuin RCO antaa signaalin.
41
Saatavilla olevat komponentit
Piirit, jotka tässä esitellään ovat toiminnaltaan ja pinnijärjestykseltään samoja kuin saman toiminnan piirit eri TTL ja CMOS IC perheissä.
42
Laskureiden ketjuttaminen
Jaa 100:lla laskuri käyttämällä kahta 74LS160 kymmenlaskuria.
43
Laskuri ja dekooderi Tuntien ja kymmenien tuntien näytöt
44
Siirtorekisterit Bittejä tarvitaan siirtää digitaalisissa järjestelmissä joko rinnakkain tai peräkkäin Bittien ajoitus on yleensä tärkeä PIPO PISO SIPO SISO ja rengaslaskuri Johnson -laskuri
45
Siirtorekisterit PIPO
Hieman eri aikaan saapuvat bitit saadaan kerättyä D kiikkuihin ja kellopulssin jälkeen ne siirtyvät samanaikaisesti eteenpäin 1D D0 CLK Q0 C1 D1 Q1 Dn Qn . Q2 D2 Q3 D3 1C2 2D EN R G1
46
Siirtorekisterit SIPO
Peräkkäin sarjaväylältä saapuvat bitit saadaan rinnakkaismuodossa eteenpäin 1D SI CLK PO0 C1 . . . PO1 POn CLK PO0 SI C1/ 1D PO1 PO2 PO3(SO) R SRG4
47
Siirtorekisterit PIPO Yhden bitin osalta näytetty rinnakkaislataus
SHIFT MUX PIi G1 G1 Di POi-1 1 Di-1 1D 1D POi 1 CLK C1 C1 SHIFT = 0 lataus SHIFT = 1 siirto
48
Siirtorekisterit SISO
Johdetaan viimeinen ulostulo ensimmäiseen sisään menoon Bittikuvio toistuu, esim. laiteohjauksessa käytetään 1D CLK PO0 C1 R S PO1 PO2 PO3 CLK PO0 PO1 PO2 PO3
49
Johnson-laskuri Johdetaan viimeisen JK -kiikun Q -ulostulo ensimmäi-sen kiikun K -sisäänmenoon ja Q’ J-sisäänmenoon Rengaslaskurin variaatio Kun laskuri on täynnä nollia, se alkaa vasemmalta lukien täyttyä ykkösillä ja vuorostaan nollilla kun täynnä ykkösiä Korjauspiirillä saadaan alkuperäinen bittijakso toistumaan CLK Q0 Q1 1J C1 1K Q2 Q3 & CLK Q0 Q1 1J C1 1K Q2 Q3
50
Muistipiirit Muistit ovat joko vaihto- tai kiintomuisteja
RAM, ROM Staattisia tai dynaamisia Suora- tai peräkkäishakutoiminto RAM, FIFO, LIFO Koko kilotavuissa, megatavuissa Siirtorekisterit ovat alkeellisia muisteja
51
Staattinen muisti Kahden invertterin muodostama piiri
Kytkin transistorit johtamattomassa tilassa Tieto säilyy, niin kauan kuin piirissä on käyttösähköt Johtavassa tilassa Inverttereiden tilat näkyvät sarakelinjoilla Tallennuksessa toinen sarakelinja maahan ja toinen käyttöjännitteeseen Nopeita, cache sarakelinja 1 rivivalintalinja T1 T2
52
Dynaaminen muisti Bitin arvo talletetaan kondensaattorin varaukseen
Kun transistori johtaa, voidaan lukea tai tallettaa Vaatii säännöllisen virkistyksen, eli datan uudelleen kirjoittamisen PC:n päämuisti T rivivalintalinja sarakelinja C
53
Kiintomuisti Haihtumattomia muisteja
19 A G1 CS RAM 1MX8 1EN2[READ] 1C3[WRITE] RD A0 A1 A19 A,3D/2 WR . Haihtumattomia muisteja Tieto säilyy vaikka virta katkaistaan ROM, PROM,OTPROM, EPROM, EEPROM, FLASH Tehtaalla ohjelmoitu, kertaalleen käyttäjän ohjelmoitavissa, tyhjennettävissä (UV, sähkö) D0 D1 D2 D3 D4 D5 D6 D7
54
Ohjelmoitava logiikka
Erilaisia polkuja suunnitella ASIC piirejä (application specific integrated circuits) Mask programmable ASIC Computer aided design tools Voidaan käyttää vain yhteen tarkoitukseen Field programmable components ROM, PAL, PLA, PEEL, GAL, EPLD, FPGA Yleisiä komponentteja, voidaan käyttää moneen tarkoitukseen
55
Programmable logic PLD programmable logic devices (ohjelmoitavat laitteet) PAL programmable AND-fixed OR PLA programmable AND-programmable OR GAL re-programmable AND-fixed OR with programmable output logic macrocell PEEL programmable electrically erasable GAL GAL ja PEEL voidaan käyttää joko Combinational tai Registered moodeissa
56
Programmable logic
57
Programmable logic Combinational output S1S0 =10 or 11
Registered output S1S0 =00 or 01
58
Design example
59
Porttipiirien sisäinen rakenne
Voidaan luokitella eri piiriperheisiin Logic type TTL, CMOS, ECL Electrical specifications Operating voltage (CMOS can be higher than 5 V, low voltage versions 3.3 V) Noise immunity/margin Power dissipation Propagation delay Fan-out/current sourcing/current sinking Totem-pole/open collector output
60
Logic gate’s noise margin
Häiriönsietomarginaali on jännite-ero nolla- ja ykköstilan välillä. CMOS operating voltage levels TTLoperating voltage levels
61
Logic gate’s noise immunity
Noise on high level Häiriönsieto jännitteiden ylitykselle tai alitukselle. Noise on low level
62
Logic gate’s power dissipation
TTL transistorit vievät tehoa kaiken aikaa. CMOS on pieni staattisen tilan tehonkulutus, mutta dynaamisessa tapauksessa se voi ylittää TTL Tehonkulutuksen.
63
Logic gate’s propagation delay
64
Logic gate’s Fan-out Se kuinka montaa saman piiriperheen komponentin sisäänmenoa piirin ulostulo pystyy ohjaamaan kutsutaan fan-outiksi. Tyypillisesti 10…20 kpl.
65
Logic gate MOSFET
66
Logic gate CMOS inverter
If input is high, Q1 is on and Q2 is off and output is low. If input is low, Q1 is off and Q2 is on and output is high.
67
Logic gate CMOS NAND, NOR
CMOS komponentit ovat erittäin herkkiä staattiselle sähkölle. Älä koske pinneihin! Työkalut tulee maadottaa. Kaikki käyttämättömät inputit pitää maadottaa tai kytkeä käyttöjännitteeseen. Open drain output and pull up resistor (vastus)
68
Logic gate TTL circuits
> 0,7 V
69
Logic gate TTL Inverter
70
Open collector or Totem-pole
Jos joku tai kaikki ulostulot ovat ON, ulostulo on LOW. Jos kaikki ovat OFF, ulostulo on HIGH pull up vastuksen ansiosta. Älä koskaan kytke kahta totem-pole ulostuloa yhteen! Jos kaksi (tai enemmän) totem-pole OUTPUT on kytkettynä yhteen, silloin isot virrat kulkevat transistorien Q1 ja Q2 läpi ja voivat polttaa ne.
71
Jatko Pienryhmät suunnittelevat ja toteuttavat jonkin pienen digitaalisen piirin Digitaalinoppa, erikoinen laskuri, ym. Prosessoritekniikan kurssissa jatketaan muistipiireistä ja rekistereistä sekä prosessoreiden yhteistoiminnasta FPGA ja VHDL –kursseilla syvennytään ohjelmoitaviin logiikoihin ja tietokoneella tapahtuvaan piirisynteesiin
Samankaltaiset esitykset
© 2024 SlidePlayer.fi Inc.
All rights reserved.