Digitale Systeem Engineering 1

Vergelijkbare documenten
Opgaven. en uitwerkingen bij het boek Digitale Techniek. Jesse op den Brouw

Digitale Systeem Engineering 2

Digitale Systeem Engineering 2

Inleiding Digitale Techniek

Sequentiële schakelingen

Sequentiële Logica. Processoren 24 november 2014

Combinatorisch tegenover sequentieel

Studiewijzer Digitale Systeemengineering 1 (E-DIGSE1-13) 3 studiepunten

Digitale Systeem Engineering 1. Week 4 Toepassing: Pulse Width Modulation Jesse op den Brouw DIGSE1/

Digitale Techniek. Jesse op den Brouw. Een inleiding in het ontwerpen van digitale systemen. Deel 3

Digitale Systeem Engineering 1

Toestandentabel van een SR-FF. S R Qn Qn onbep onbep SET SET RESET RESET

digitale meettechniek J.P.GOEMAERE

EE1410: Digitale Systemen BSc. EE, 1e jaar, , vragencollege 1

Project Digitale Systemen

Tellers en Delers Sequentiële schakeling die het aantal ingangspulsen telt Gebaseerd op geheugenelementen (flipflops)

Digitale Systemen (ET1 410)

EE1410: Digitale Systemen BSc. EE, 1e jaar, , 8e hoorcollege

Antwoorden vragen en opgaven Basismodule

b) Geef het schema van een minimale realisatie met uitsluitend NANDs en inverters voor uitgang D.

HOOFDSTUK 6: Logische Schakelingen

EE1410: Digitale Systemen BSc. EE, 1e jaar, , 4e college

EE1410: Digitale Systemen BSc. EE, 1e jaar, , vragencollege 2

Digitale Systeem Engineering 2

Een flipflop is een digitale schakeling die in staat is een logische "1" of een logische "0" op te slaan en te bewaren in de tijd.

Appendix symbolen Symbolen voor logische schakelingen III Symbolen voor flip-flop geheugenelementen A.18 A.19 A.20 A.21 A.22 A.23

Digitale technieken Deeltoets II

Oefenopgaven nr. 1 Opgave 1.1

Fig. 5.1: Blokschema van de 555

EE1410: Digitale Systemen BSc. EE, 1e jaar, , 6e hoorcollege

Microcontrollers Week 1 Introductie microcontroller Jesse op den Brouw INLMIC/

Combinatorische schakelingen

Tentamen Digitale Systemen (EE1410) 6 juli 2012, uur

Inleiding Digitale Techniek. Week 7 Schuifregisters Jesse op den Brouw INLDIG/

Opleiding: ESE, HAN Opl.variant: vt Groep/Klas: ES2 Digitaal Signaal Ontwerpen 26 januari 2012 Tijd: 13:30 15:00

EE1410: Digitale Systemen BSc. EE, 1e jaar, , 2e werkcollege

Practica bij het vak. Inleiding tot de Elektrotechniek: Practicum 2 Analoge versus digitale signalen en hun overdracht

Antwoorden zijn afgedrukt!!!!!!!

DDS chips. DDS = Direct Digital (frequency) Synthesis. Output = sinusvormig signaal. Maximum frequentie = ½ klokfrequentie

Faculteit Elektrotechniek - Leerstoel ES Tentamen Schakeltechniek. Vakcode 5A050, 19 januari 2005, 14:00u-17:00u

Faculteit Elektrotechniek - Capaciteitsgroep ICS Tentamen Schakeltechniek. Vakcodes 5A010/5A050, 26 november 2003, 14:00u-17:00u

Digitaal Ontwerp Mogelijke Examenvragen

Fig. 6.1 voorstelling van de werking van een schuifregister

Faculteit Elektrotechniek - Leerstoel ES Tentamen Schakeltechniek. Vakcode 5A050, 19 januari 2005, 14:00u-17:00u

Tentamen Elektronische Schakelingen (ET1205-D2)

Studiewijzer Inleiding Digitale Techniek, versie 1.6, , J.E.J. op den Brouw

Hoofdstuk 4. Digitale techniek

Digitale Systeem Engineering 1

Toets Digitale Systemen 01/06/2006, uur

clk_32768 mins_up secs_up countdown clear time_zero

REGISTERS. parallel in - parallel uit bufferregister. De klok bepaalt het moment waarop de data geladen worden. Mogelijke bijkomende ingangen:

Slimme schakelingen (2)

Inleiding Digitale Techniek

AP21 SSI Display. Display voor positie en snelheid Nokkencontroller Signaalomvormer Display voor niet lineaire bewegingen. 96 mm

Eindtentamen Digitale Systemen (ET1405) 18 juni 2008, uur

Lab6: Implementatie video timing generator

EXAMENONDERDEEL ELEKTRONISCHE INSTRUMENTATIE (5GG80) gehouden op woensdag 27 juni 2007, van tot uur.

VOORBLAD SCHRIFTELIJKE TOETSEN

Hfdst. 2: COMBINATORISCHE LOGICA

Faculteit Elektrotechniek - Leerstoel ES Tentamen Schakeltechniek. Vakcode 5A050, 17 november 2004, 9:00u-12:00u

Alles op de kop. Dobbelsteen D02i werkt precies andersom! Johan Smilde

Technology, Innovation & Society Delft

Studentnummer:... Opleiding:...

communicatie is onderhevig aan fouten

Inleiding Digitale Techniek

Hfdst. 2: COMBINATORISCH PROGRAMMEREN

Inleiding Digitale Techniek

De CB channel controller TMS1022NL/NLL en TMS1023NL/NLL. ( Dit is een maskrom-programmed version van de Texas Instruments TMS1000 family)

GSM500 PROGRAMMATIE HANDLEIDING

Faculteit Elektrotechniek - Capaciteitsgroep ICS Tentamen Schakeltechniek. Vakcodes 5A010/5A050, 19 januari 2004, 9:00u-12:00u

Labo digitale technieken

Scan-pad technieken. Zet elk register om in een scan-pad register (twee opeenvolgende D-latches: master-slave):

Inductiemeter via de parallelle poort

Van Poort tot Pipeline. Ben Bruidegom & Wouter Koolen-Wijkstra AMSTEL Instituut Universiteit van Amsterdam

OPDRACHTEN PRACTICUM DIGSE1. J.E.J op den Brouw De Haagse Hogeschool Opleiding Elektrotechniek 19 maart 2016

Ben Bruidegom. Reconstruction: NLT-module Digitale techniek Context: Disco

Opgaven elektrische machines ACE 2013

ES1 Project 1: Microcontrollers

Air-showers, events en coïncidenties. Werkbladen. HiSPARC. 1 Inleiding. 2 Events. 2.1 De nauwkeurigheid van het meten van events. N.G.

Hoe werkt een rekenmachine?

Digitale technieken Combinatorische en sequentiële logica

Delmation Products BV Tel: +31 (0)

DATALOGGERS. Technolog - Cello 8-kanaals CELLO 8 KANAALS SMS/GPRS DATALOGGER

EXAMENONDERDEEL ELEKTRONISCHE INSTRUMENTATIE (5GG80) gehouden op maandag 2 mei 2005, van 9.00 tot uur.

Een intelligent DMX netwerk

Bestnr en 16-kanaals USB-logic-analyzer Ant8, Ant16

von-neumann-architectuur Opbouw van een CPU Processoren 1 december 2014

Digitale Systeem Engineering 1

Een enkele detector op de grond geeft een signaal, dit wordt een single genoemd.

Samenvatting Computer Architectuur

Hoofdstuk5. 1 Hoofdstuk5: Praktische realisatie van logische schakelingen. Peter Slaets () Digitale en analoge technieken October 6, / 19

Jan Genoe KHLim. PCI Signalen en timing

Ruis in amateur ontvangers PA0EHG

Inhoudsopgave LED dobbelsteen

Eindtentamen Digitale Systemen 07/07/2006, uur

De Arduino-microcontroller in de motorvoertuigentechniek (4)

Theory DutchBE (Belgium) Niet-lineaire dynamica in elektrische schakelingen (10 punten)

VHDL overzicht. Digitale Systemen (ET1 410) VHDL? VHDL? Sequentieel vs. Concurrent 2/15/2011

IDAgeChecker BDX118T11xx Manual V02.00

Proces VWI synchronisatie

Transcriptie:

Digitale Systeem Engineering 1 Week 6 metastabiliteit, synchronisatie Jesse op den Brouw DIGSE1/2016-2017

Synchronisatie Een complex digitaal systeem bestaat uit combinatorische en sequentiele logica (poorten en flipflops). Binnen het systeem worden alle acties uitgevoerd op de klokflank. Het systeem heet dan kloksynchroon. Het digitale systeem heeft ingangen en uitgangen die gekoppeld zijn aan andere systemen. 2

Synchronisatie De ingangen zijn echter asynchroon van aard; veranderingen op de ingangen zijn niet synchroon met de klokflank. Deze signalen zijn eenvoudig kloksynchroon te maken d.m.v. een synchronizer. asynchrone data synchrone data synchroon systeem [syn] synchronizer 3

Synchronisatie De asynchrone signalen veranderen niet synchroon met de klokflank. Dat houdt in dat een verandering op een ingang binnen het setup- en holdtijdgebied kan vallen. De synchronizer kan dan niet betrouwbaar data overnemen (inklokken). 4

Synchronisatie De uitgang van de synchronizer kan drie kanten op: De oude waarde blijft behouden. De uitgangswaarde ligt tussen logisch 0 en 1, dus een ongeldige logische waarde. Na een tijd zal de uitgang één van de twee logische waarden aannemen. De uitgang wordt dan tijdelijk metastabiel. De uitgang gaat oscilleren. 5

Synchronisatie Trace 1 = uitgang hoog Trace 2 = uitgang laag Meerdere runs Signaalverandering willekeurig aangeboden. 6

Synchronisatie De oude waarde blijft behouden. T D instabiel t su (syn) t h (syn) Q t P (syn) 7

Synchronisatie De uitgang wordt tijdelijk metastabiel. T D instabiel t su (syn) t h (syn) Q t P (syn) metastabiel t r (syn) t r = resolution time 8

Synchronisatie De uitgang gaat oscilleren. T D instabiel t su (syn) t h (syn) Q t P (syn) 9

MTBF Metastabiliteit wordt gekarakteriseerd door de Mean Time Between Failures (MTBF). MTBF is een statistische meting van betrouwbaarheid. Het geeft de gemiddelde tijd tussen twee fouten aan. Het kan zijn dat er direct een fout optreedt of dat twee fouten elkaar direct opvolgen. 10

MTBF De formule voor de MTBF: MTBF(t r ) f 1 f data T 0 e t r Waarin: f = frequentie systeemklok f data = frequentie signaal data-ingang t r = resolution time τ,t 0 = specifieke waarden van een geheugenelement 11

MTBF Voorbeeld 74LS74 f = 20 MHz (T = 50 ns) f data = 100 khz t r = 30 ns τ,t 0 = 1,35 10-9, 4,8 10-3 (gegevens TI/1997) 30 10-9 τ 1,35 10 e e MTBF(tr ) 6 5 3 f f T 20 10 1 10 4,8 10 t r data 0-9 0,47s Conclusie: voor deze frequenties een slechte synchronizer. 12

Synchronisatie De maximale t r hangt af van de systeemfrequentie en setuptijd. T D instabiel t su (syn) t h (syn) Q t P (syn) metastabiel t r(max) (syn) t su (systeem) t r = resolution time 13

Opgave Gegeven een synchroon systeem met een frequentie van 20 MHz. Data komt asynchroon binnen met 100 khz. Van de synchronizer 74F50729 is gegeven (5,0 V / +25 C): τ = 0,135 ns T 0 = 9,8 10 6 s De setuptijd van het achterliggende systeem is 20 ns. Bereken de MTBF van dit systeem. 14

Dubbele synchronisatie Dubbele synchronisatie zorgt ervoor dat de kans dat een uitgang/signaal metastabiel wordt verkleind. async sync [syn1] [syn2] Nadeel is wel dat het asynchroon binnenkomend signaal twee klokcyclussen wordt vertraagd. 15

Synchronisatie Synchronisatie heeft nog een ander doel. Denk aan een systeem met voorzetlogica. async logic 1 X [FF1] traag logic 2 snel Y [FF2] 16

Synchronisatie Logica 1 en 2 hebben verschillende vertragingstijden. Het kost enige tijd voordat de logicablokken de juiste uitgangswaarden hebben aangenomen. Als logica 1 nu ná de klokflank en logica 2 vóór de klokflank de juiste waarde afgeven, klokken de flipflops als geheel dus niet de bedoelde waarden in. Oplossing: synchronizer. 17

Synchronisatie Hieronder de timing zonder synchronizer. async oude waarde nieuwe waarde X oude waarde nieuwe waarde Y oude waarde t P (logic 2 ) nieuwe waarde t P (logic 1 ) 18

Synchronisatie Synchroniseren van asynchrone data. async [syn] sync logic 1 [FF1] logic 2 [FF2] T min t P(max) (syn) t P(max) (logic 1 ) t su (FF1) 19

Opgave Gegeven het systeem van de vorige slide. Van flipflops FF1 en FF2 is gegeven t su /t h /t P(min) /t P(max) =5/2/4/10 ns Van de synchronizer is gegeven t su /t h /t P(min) /t P(max) =2/0/3/5 ns, τ = 0,135 ns, T 0 = 9,8 10 6 s Van logica 1 is gegeven t P(min) /t P(max) =10/20 ns Van logica 2 is gegeven t P(min) /t P(max) =5/12 ns De systeemfrequentie is 25 MHz. De frequentie van de asynchroon binnenkomende data bedraagt 2 khz. Bepaal de MTBF van dit systeem. 20

Synchronisatie De uitgangen van een synchroon systeem veranderen na de klokflank en zijn synchroon met de klok. De uitgangslogica kan echter wel multi transition zijn, wat inhoudt dat er meerdere signaalwisselingen volgen voordat de definitieve waarde wordt aangenomen. Dit levert problemen op voor het achterliggende systeem. D Q logic X [FF] X 21

Synchronisatie Dit kan eenvoudig worden opgelost door een uitgangsflipflop te gebruiken (registered output). D Q logic X [FF] [FF] Voorwaarde: flipflop is single transition. Nadeel: uitgang één klokpuls later beschikbaar. 22

Synchronisatie In grote systemen zijn soms meerdere kloksignalen aanwezig (clock domains) die geen relatie met elkaar hebben. De kloksignalen zijn asynchroon t.o.v. van elkaar. Synchronisatie is dan noodzakelijk. synchronizer chain synchroon systeem [FF1] [syn1] [syn2] 1 clock domain 1 clock domain 2 2 23

Reset Een reset is een noodzakelijke faciliteit van elk digitaal systeem met geheugenwerking. Het zorgt ervoor dat de flipflops in een bepaalde (toe-)stand worden gedwongen. Bij het starten van een systeem (opkomen van de voedingsspanning) is namelijk niet bekend wat de toestanden van de flipflops zijn. 24

Reset Er zijn twee soorten resets: Asynchroon: Het reset-signaal komt direct op de flipflops binnen als een apart stuursignaal. Deze vorm werkt buiten de klok om. Synchroon: Het reset-signaal komt binnen als een gewoon datasignaal en kan verwerkt worden in Next State Logic. Deze vorm is synchroon met de klok. Beide vormen worden in de praktijk gebruikt. 25

Reset data [FF] q data sreset & [FF] q areset flipflop met actief laag asynchrone reset flipflop met actief laag synchrone reset 26

Reset Het ligt voor de hand om een asynchrone reset te gebruiken. De flipflops worden bij activatie direct in een bekende beginstand gezet (het kost natuurlijk wel enige tijd voordat de flipflop de activatie ziet ). Als het resetsignaal gedeactiveerd wordt tijdens de klokflank, kunnen er problemen ontstaan. De flipflop kan tijdelijk metastabiel worden. Het recept is dus eenvoudig: Asynchrone activatie en synchrone deactivatie. 27

Eerste poging Een eerste poging: Bij activatie wordt de flipflop asynchroon gereset, de stand is 0. Bij deactivatie wordt de flipflop op de klokflank geladen met een 1. 1 [FF] areset_sync areset Nadeel: de flipflop kan metastabiel worden als de reset gedeactiveerd wordt binnen het gebied t su -t h. 28

Reset synchronizer Direct na activatie worden beide flipflops asynchroon geladen met 0. Bij deactivatie wordt de eerste flipflop op de klokflank geladen met 1, de tweede met een 0. De eerste flipflop kan metastabiel worden, de tweede niet, want zowel de ingang als de uitgang van de tweede flipflop zijn 0. 1 areset_sync [FF1] [FF2] areset 29

Reset synchronizer Na nog een klokflank is ook de tweede flipflop geladen met een 1. Helaas kan de tweede flipflop metastabiel worden als gevolg van metastabiliteit van de eerste flipflop. De kans daarop is echter verwaarloosbaar klein. 1 areset_sync [FF1] [FF2] areset 30

Referenties http://www.ee.ic.ac.uk/pcheung/teaching/ee3_dsd/9-metastability.pdf http://www.interfacebus.com/design_metastable.html http://eprint.iacr.org/2011/637.pdf http://www.silasvalley.com/pdf_content/fpga%201%20-%20the%20clock%20v1_0.pdf http://www.asic-world.com/tidbits/metastablity.html http://www.sunburst-design.com/papers/cummingssnug2003boston_resets.pdf (lees hoofdstuk 7, i.h.b. Paragraaf 7.1) http://www.develeast.ch/downloads/tn005_reset_synchronization_v00.pdf (lees paragraaf 4.2) Discussie over het implementeren van een reset: http://www.alteraforum.com/forum/showthread.php?t=45135 31

De Haagse Hogeschool, Delft +31-15-2606311 J.E.J.opdenBrouw@hhs.nl www.dehaagsehogeschool.nl