TSEA22 Digitalteknik 2019!

Relevanta dokument
Konstruktionsmetodik för sekvenskretsar. Föreläsning 7 Digitalteknik Mattias Krysander Institutionen för systemteknik

TSEA22 Digitalteknik 2019!

Konstruktionsmetodik för sekvenskretsar

Konstruktionsmetodik för sekvenskretsar. Föreläsning 7 Digitalteknik, TSEA22 Mattias Krysander Institutionen för systemteknik

IE1205 Digital Design: F9: Synkrona tillståndsautomater

Digitalteknik 7.5 hp distans: 5.1 Generella sekvenskretsar 5.1.1

Laboration i digitalteknik Introduktion till digitalteknik

Försättsblad till skriftlig tentamen vid Linköpings universitet

Programmerbar logik och VHDL. Föreläsning 4

Sekvensnät vippor, register och bussar

Tentamen. TSEA22 Digitalteknik 5 juni, 2015, kl

Digitalteknik F12. Några speciella automater: register räknare Synkronisering av insignaler. Digitalteknik F12 bild 1

Digitalteknik F9. Automater Minneselement. Digitalteknik F9 bild 1

Sekvensnät. William Sandqvist

Minneselement,. Styrteknik grundkurs. Digitala kursmoment. SR-latch med logiska grindar. Funktionstabell för SR-latchen R S Q Q ?

LABORATIONER I DIGITALTEKNIK. för kurserna. TSEA22, lab 1-4 TSEA51, lab 1-3 TDDC75, lab 1,2

Digital- och datorteknik

Tenta i Digitalteknik

SEKVENSKRETSAR. Innehåll

Exempel på LAX-uppgifter

IE1205 Digital Design: F8: Minneselement: Latchar och Vippor. Räknare

Tenta i Digitalteknik

DIGITALTEKNIK I. Laboration DE2. Sekvensnät och sekvenskretsar

Tentamen i IE1204/5 Digital Design onsdagen den 5/

Digital- och datorteknik

Tentamen i IE1204/5 Digital Design onsdagen den 5/

Styrteknik distans: Minneselement, register, räknare, AD-omv D4:1

Minnet. Minne. Minns Man Minnet? Aktivera Kursens mål: LV3 Fo7. RAM-minnen: ROM PROM FLASH RWM. Primärminnen Sekundärminne Blockminne. Ext 15.

Repetition delay-element

Omtentamen med lösningar i IE1204/5 Digital Design Fredag 10/

Repetition TSIU05 Digitalteknik Di/EL. Michael Josefsson

DESIGN AV SEKVENTIELL LOGIK

Tentamen i Digitalteknik, TSEA22

Digital Design IE1204

Ett minneselements egenskaper. F10: Minneselement. Latch. SR-latch. Innehåll:

Digital elektronik CL0090

Tentamen i Digitalteknik, EITF65

IE1205 Digital Design: F8: Minneselement: Latchar och Vippor. Räknare

Design av mindre digitala system. Föreläsning Digitalteknik, TSEA52 Mattias Krysander Institutionen för systemteknik

Asynkrona sekvensmaskiner

Tentamen med lösningar i IE1204/5 Digital Design Måndag 27/

Programmerbara kretsar och VHDL. Föreläsning 9 Digitalteknik Mattias Krysander Institutionen för systemteknik

Tentamen i Digitalteknik TSEA22

TSEA22 Digitalteknik 2019!

Digital Design IE1204

Laboration D159. Sekvensnät beskrivna med VHDL och realiserade med PLD. Namn: Datum: Epostadr: Kurs:

Låskretsar och Vippor

IE1204 Digital Design

IE1205 Digital Design: F10: Synkrona tillståndsautomater del 2

Tentamen i Grundläggande ellära och digitalteknik ETA 013 för D

Digitala system EDI610 Elektro- och informationsteknik

Sekvensnät i VHDL del 2

Digital Design IE1204

Programmerbara kretsar och VHDL. Föreläsning 9 Digitalteknik Mattias Krysander Institutionen för systemteknik

Repetition och sammanfattning av syntes och analys av sekvensnät

Digital Design IE1204

Sekvensnät Som Du kommer ihåg

L15 Introduktion modern digital design

Försättsblad till skriftlig tentamen vid Linköpings Universitet

Digital Design IE1204

Tärning med ABEL-macro

Digital Design IE1204

Tentamen IE Digital Design Måndag 23/

Tentamen IE Digital Design Fredag 15/

Tentamen i Grundläggande ellära och digitalteknik ETA 013 för D

D2 och E3. EDA321 Digitalteknik-syntes. Fredag den 13 januari 2012, fm i M-salarna

Tentamen i IE Digital Design Fredag 21/

Laboration i digitalteknik Speciella sekvenskretsar

Tenta i Digitalteknik

IE1205 Digital Design: F13: Asynkrona Sekvensnät (Del 2)

VHDL 1. Programmerbara kretsar

Tentamen i Digitalteknik, EIT020

LABORATIONER I DIGITALTEKNIK. Laboration 3 Speciella sekvenskretsar

Tentamen med lösningar för IE1204/5 Digital Design Torsdag 15/

Programmerbara kretsar och VHDL. Föreläsning 10 Digitalteknik, TSEA22 Mattias Krysander Institutionen för systemteknik

Konstruktion av digitala system - VHDL

Tentamen i IE1204/5 Digital Design Torsdag 29/

LEJON LABORATION3. Laborationens syfte

F5 Introduktion till digitalteknik

LV6 LV7. Aktivera Kursens mål:

Uppgift 12: Konstruera en elektronisk tärning. Resultatet av ett tärningskast ska visas på en 7- segmentindikator.

Laboration i digitalteknik

Tentamen med lösningar IE Digital Design Måndag 23/

TSIU05 Digitalteknik. LAB1 Kombinatorik LAB2 Sekvensnät LAB3 System

Digital Design IE1204

Laboration D151. Kombinatoriska kretsar, HCMOS. Namn: Datum: Epostadr: Kurs:

Omtentamen IE Digital Design Måndag 14/

Tentamen IE Digital Design Fredag 13/

Digital Design IE1204

Lösningförslag till Exempel på tentamensfrågor Digitalteknik I.

Programmerbar logik (PLD) Programmeringsspråket VHDL Kombinatoriska funktioner i VHDL för PLD Sekvensfunktioner i VHDL för PLD

ALU:n ska anslutas hur då?

DIGITALTEKNIK. Laboration D172

Digital Design IE1204

Laborationshandledning

VHDL och laborationer i digitalteknik

Laboration D184. ELEKTRONIK Digitalteknik. Sekvensnät beskrivna med VHDL och realiserade med PLD

Tentamen med lösningar i IE Digital Design Fredag 15/

Tentamen IE1204 Digital Design Måndag 15/

LABORATIONSINSTRUKTION

Transkript:

1(43) 2019 Mattias Krysander Ingemar Ragnemalm 1(43)

Föreläsning 7. Sekv3. enna föreläsning: Lösningar närmare verkligheten Synkronisering Enpulsare Problem till design 2(43)2(43)

Förra föreläsningen: Konstruktion av sekvensnät Tillståndskodning Kodning med: - Mealy - Mealy med NOR - Mealy med PROM - Moore 3(43)3(43)

Konstruktion av sekvenskretsar 1. Specifikation 2. Tillståndsdiagram 3. Tillståndskodning 4. Tillståndstabell 5. Booleska uttryck för utsignal och nästa tillstånd 6. Kretsschema 4(43)4(43)

Exempel på kodningsmodeller: Olika kodningar ger olika komplexitet. One-hot ger fler vippor men ofta enklare nät. Svårt att veta på förhand vad som blir enklast. 5(43)5(43)

Kaskadkoppling av sekvenskretsar Mealy ger större grinddjup (rött) tidsfördröjning lägr klockfrekvens Moore tillåter snabbare klocka vid kaskadkoppling. Kaskadkopplade Mealy-kretsar Kaskadkopplade Moore-kretsar 6(43)6(43)

Verkligheten är alltid annorlunda Hur kopplar vi oss till verkligheten? Avstudsning Synkronisering Enpulsare esign av lösningar till verkliga problem 7(43)7(43)

Avstudsning har vi sett förut Enkel latch för stabilisera. SR-latch (aktiv låg) Nät för eliminering av kontaktstudsar 8(43)8(43)

Brytare i labbet: Ej avstudsade: Avstudsade: Använd dessa som insignaler till sekvenskretsar 9(43)9(43)

Synkronisering av asynkrona insignaler Inför en synkroniseringsvippa på ingången asynkron insignal Synkront system Systemklocksignal Systemklocksignal asynkron insignal synkroniserad insignal 10(43)10(43

Enpulsare Antag att vi har en avstudsad och synkron signal. Tänk er "räkna ettor"-exemplet. Men... hur många ettor ger ett tryck? 11(43)11(43

Enpulsare (Mealy) x q+ q q' u 12(43)12(43

Enpulsare (Mealy) med avstudsning och synkronisering q+ q q' u Avstudsning Synkronisering Enpulsare Allt detta på 3-ettor-detektorn så börjar det likna ett verkligt system 13(43)13(43

Lejonburen Säkerhetssystem för djurskötare Hägn Bur Port 2 lejon x0 x1 2 lejon. Lampa vid grinden skall lysa om båda lejonen är i buren. u 14(43)14(43

Några villkor om Lejonburen: x0 och x1 fotoceller. Ger 1 om fotocellen är skymd. Lampan: u = 0: Släckt, u=1: Tänd Start med båda lejonen i buren. Max ett lejon i porten. Lejon vänder eller backar aldrig. Lejonen är längre än avståndet x0 till x1. Lejonen rör sig långsamt relativt klockan. 15(43)15(43

Tillståndsdiagram för lejonburen 00, 10, 11 01, 00 10 11, 01, 00 2 inne 01 1 inne 10 i porten 11 11 00 10 0 inne Alternativ lösning: 00, 10 11, 01 00, 10 11, 01, 00 2 inne 11 i porten 00 1 inne 11 10 01 10 0 inne 16(43)16(43

Asynkrona insignaler Kan ge problem med i övrigt synkrona system. Asynkrona insignaler: Brytare Sensorer System med annan klocka inkl processorer asynkron insignal Synkront system Systemklocksignal Systemklocksignal asynkron insignal 17(43)17(43

Problemet med asynkrona insignaler Analoga beteenden under grindomslag kan påverka beteendet. Vi befinner oss oftare i otillåtna nivåer. Hasard kan lättare påverka systemet. Synkront system: Alla insignaler är stabila innan klockpuls. Sedan ändras de men är stabila innan nästa klockpuls. Klockpuls Signaler ändras mellan klockpulserna Lite hasard spelar oftast ingen roll 18(43)18(43

Asynkrona insignaler en asynkrona signalen kan läsas av när den har ett osäkert värde. et osäkra värdet påverkar efterföljande logik på ett odefinierat sätt. Klockpuls Signaler ändras mitt i klockpulserna Signaler i det odefinierade området blir vanligare och kan vara längre 19(43)19(43

Metastabila tillstånd Omslagstiden gör att ett grindnät kan ha signaler i det förbjudna området, som inte garanterat tolkas som 1 eller 0. Asynkrona insignaler kan öka denna tid, vilket skapar oförutsägbara beteenden. max, t.ex. 5V 1 Odefinierat, förbjudet område Medan omslag pågår......och nätet måste göra om jobbet innan vi har en stabil signal. min, 0V 0..så kommer en ändrad insignal... 20(43)20(43

Synkronisering av asynkrona insignaler Inför en synkroniseringsvippa på ingången asynkron insignal Synkront system Systemklocksignal Systemklocksignal asynkron insignal synkroniserad insignal 21(43)21(43

Varianter på synkronisering av asynkrona insignaler ubbla synkroniseringsvippor. Tillåt bara att en asynkron insignal påverkar tillståndsövergång. Tillåt bara tillståndsövergångar som ändrar en bit. Svårare design eller fler vippor med mer fördröjning. 22(43)22(43

Lite mer om asynkrona system och klockning Vippor, asynkrona latchar och klockade latchar Vippor = klockade Latchar = inte klockade? Men det finns också klockade latchar 23(43)23(43

SR-latchen Fantatiskt enkel: Två vippor och jag hade en minnesfunktion Helt asynkron. et finns ingen klocka. R 1 R' ' S 1 ' S' SR-latch Används bl.a. i statiska datorminnen med miljontals latchar 24(43)24(43

Klockad SR-latch Skillnad mot vippa? R 1 S 1 R S 1 ' -latch baserad på klockad SR-latch. Inte samma sak som -vippa Slår inte om vid flank utan när som helst medan klockan är hög en är nivåtriggad. Enklare, känsligare. Fungerar dåligt i sekvenskretsar. Ändrat tillstånd slår igenom till nästa. Systemet är transparent. 25(43)25(43

Nivåtriggning ger transparens genom sekvenskretsar Master-slave-koppling med tvåfasklocka Kombinationskrets för nästa tillstånd Master Slave Kombinationskrets för utsignal Slutsats: Flanktriggning kanske är en bra lösning? 26(43)26(43

Nollställning Många sekvenskretsar måste kunna nollställas, startas i känt läge. Två sätt: Synkron Asynkron Grundregel: Blanda inte asynkrona och synkrona signaler -vippa med asynkron preset och clear. Synkron Asynkron PR ' CLR 27(43)27(43

Exempel: Autonom (ej styrbar) 2- bitsräknare =1 q0+ = d0 q1+ = d1 q0 q1 q1 0 0 1 1 q0 0 1 0 1 q1+ q1+ 0 1 1 0 1 1 0 0 Exempel: 2-bitarsräknare 28(43)28(43

Tillståndsdiagram för räknaren 00 01 11 10 29(43)29(43

Asynkron reset reset-negativ-asynkron = resetna q0+ = d0 CLR q0 resetna =1 q1+ = d1 q1 CLR Nollställs asynkront med resetna = 0 30(43)30(43

Synkron reset reset-negativ = resetn resetn q0+ = resetn d0 q0 =1 q1+ = resetn d1 q1 31(43)31(43

Synkron nollställning Hanteras som en del av sekvenkretsen som vilken insignal som helst resetn = 0 resetn = 1 00 01 - resetn = 0 resetn = 0 resetn = 1 11 10 resetn = 1 32(43)32(43

Kopplingsregler Synkron funktion Insignaler måste synkas Påverkar bara synkrona signaler Klocka Kopplas direkt till alla klockingångar Grinda aldrig Asynkron reset: Nollställer alla register/vippor Kopplas till asynkrona ingångar Och så lämnar vi inga ingångar oanslutna CLR Blanda aldrig signaltyperna 33(43)33(43

Snabbintroduktion till speciella sekvenskretsar och programmerbara kretsar Räknare Register Skiftregiter PL FPGA Mikrocontrollers 34(43)34(43

Räknare Binärräknare ekadräknare Styrning, count enable, carry, load, clear Upp/ner-räknare Kakadkoppling av räknare Tillståndsdiagram för räknaren 00 01 11 10 35(43)35(43

Skiftregister Lagrar ett antal bitar som skiftas ett steg per klockpuls. Exempel: Skiftregister med -vippor, seriellt in, parallellt ut: dut7 dut6 dut5 dut4 dut3 dut2 dut1 dut0 36(43)36(43

Register Minne för lagring av ett ord. Vi såg dessa i datorskissen tidigare. Kan utföras med -vippor. din7 din6 din5 din4 din3 din2 din1 din0 din dut7 dut6 dut5 dut4 dut3 dut2 dut1 dut0 37(43)37(43

Programmerbara kretsar ROM PL FPGA Stora kombinations- och sekvenskretsar med programmerbara (öppningsbara/stängningsbara) punkter 38(43)38(43

+ 5V + 5V Simplified programmable logic device Source: Wikipedia 39(43)39(43

Mikrocontrollers Små CPUer med tillgängliga portar (kontakter) för enkel inkoppling av annan logik. PIC Atmega Attiny Enkelt tillgängliga på färdiga kort: Arduino, NodeMCU, igispark Mellanting: Raspberry Pie, mer lik en vanlig dator men med generella kontakter. 40(43)40(43

Mikrocontrollers + logik Många små lösningar för inbyggnad kan göras med en mikrocontroller plus externa kretsar. Typfall: En mikrocontroller + skiftregister. Skiftregistret ökar antalet tillgängliga utgångar genom seriell utmatning av data Exempel: Arduino + skiftregister + display. Exempel 2: Sensorer + lysdioder + inverterare + skiftregister + display + Arduino 41(43)41(43

42(43)42(43

NÄSTA FÖRELÄSNING Mattias tur Speciella sekvenskretsar. Räknare och register. 43(43)43(43