Gebaseerd op geheugen elementen Worden opgedeeld in synchrone systemen» scheiding tussen wat er wordt opgeslagen (data) wanneer het wordt opgeslagen (klok) asynchrone systemen» Puls om geheugen op te zetten (et) geheugen op te zetten (eset)» onafhankelijk van een klok in het systeem
Eenvoudig circuit met feedback Geheugen elementen worden bekomen aan de hand van poorten waarvan de uitgangen terug verbonden worden aan de ingang een even aantal inversies nodig in de lus Eenvoudigste poort: de inverter een lus met 2 invertoren is het basiselement van commerciële static AM (AM) Lussen van NO poorten en NAN poorten worden ook gebruikt "" "" Lus van inverters: tatische geheugen Cel L A \L L \L Z electieve onderbreking van de lus om nieuwe data in het geheugen te kunnen schrijven L is de klok A is de data
Lus met NO poorten: latch lus voorstelling Werkt als een lus van inverters als zowel de reset() als de set() zijn. = Als de eset () is wordt de uitgang () gedwongen Als de set () is wordt de inversie van de uitgang (\) gedwongen «Normaal wordt de uitgang dan Er is een probleem als en gelijktijdig zijn \ Normale FF voorstelling
Gedrag van de latch e volgende toestand van het geheugen (+) wordt: e huidige toestand als = en = als = als = + onstabiel + = + als =
ymbool van de latch Amerikaans symbool \ Europees ymbool \
Gedrag van de latch geheugen onstabiel Waarheidstabel van het - Latch gedrag
Theoretisch latch toestandsdiagram =, =, = = = = = = = = = =, =
Waargenomen latch gedrag =, =, = = = = = = = = = Het is zeer moeilijk om de - Latch in de - state te brengen Keert in de praktijk terug naar state - of - it noemt men de "race conditie"
Lus met NAN poorten lus voorstelling Werkt als een lus van inverters als zowel de reset(\) als de set(\) zijn. Als de eset () is wordt de inversie van de uitgang (\) gedwongen «Normaal wordt de uitgang dan Als de set () is wordt de uitgang () gedwongen \ Er is een probleem als en gelijktijdig zijn Normale FF voorstelling
Gedrag negatieve input latch e volgende toestand van het geheugen (+) wordt: e huidige toestand als = en = als = als = + onstabiel + = + als + =
ymbool negatieve input latch Amerikaans symbool \ Europees ymbool \
Toepassing: ontdenderen van schakelaars +5V a W & W a sluit b opent a opent b sluit t GN b & t t t
Geklokte latch klok klok symbool C \ \ Normaal verandert de latch van zodra er een set () of een reset () toekomt Hier moet er een et () komen en een klokpuls of een eset () en een klokpuls e veranderingen gebeuren dus synchroon met de klok
latch klok \ e ingang is de et () de inverse van de ingang is de eset () et en eset nooit gelijktijdig hoog
JK latch Hoe kunnen we de verboden toestand elimineren? Oplossing: maak gebruik van de uitgang om ervoor te zorgen dat en nooit gelijktijdig zijn Indien J, K beide gelijktijdig zijn zal de flip-flop van toestand veranderen K J - latch \ \ J Karakteristieke vergelijking: + = K + J K \
Geklokte JK Flip-Flop J en K signalen worden maar actief van zodra de klok hoog wordt klok K J - latch \ \ klok J C K \
efinitie setup en hold tijd Input T su T h Clock Er Er is is een een tijds tijds venster venster rond rond de de klok klok event event waarin waarin de de inputs inputs stabiel stabiel en en onveranderd moeten moeten blijven blijven om om juist juist herkend te te kunnen kunnen worden worden etup Tijd (T su ) Minimum tijd voor de klok event gedurende dewelke de inputs stabiel moeten blijven Hold Tijd (T h ) Minimum tijd na de klok event gedurende dewelke de inputs stabiel moeten blijven
Verschil tussen flank getriggerde FF en latches 7474 Flank getriggerde FF bemonsteren het signaal op de flank van de klok Clk Positive edge-triggered flip-flop 7476 C Clk Level-sensitive latch latches bemonsteren het signaal zolang de klok hoog is Timing iagram: Clk 7474 7476 Gedrag is hetzelfde tenzij de input verandert terwijl de klok hoog is
Timing specificaties: FF 74L74 Positieve flank getriggerde Flipflop etuptijd Hold tijd Minimum klok breedte Propagatie vertraging (low to high, high to low, maximum en typisch) Clk T su 2 ns T h 5 ns T w 25 ns T plh 25 ns 3 ns T su 2 ns T h 5 ns T phl 4 ns 25 ns Alle metingen van tijden worden opgegeven ten opzichte van de klok event dit is de stijgende flank van de klok
Timing specificaties: Latches 74L76 Transparent Latch etuptijd Hold tijd Minimum klok breedte Propagatie vertraging: high to low, low to high, maximum, typisch data to output clock to output Clk T su 2 ns T w 2 ns T plh C» 27 ns 5 ns T h 5 ns T su 2 ns T phl C» 25 ns 4 ns T h 5 ns T plh» 27 ns 5 ns T phl» 6 ns 7 ns
Flank getriggerde Flip Flop Houd vast wanneer de klok daalt Negatieve flank getriggerde flipflop Clk= 4-5 poort vertragingen setup en hold tijden steeds noodzakelijk om juist de input op te slaan Houd vast wanneer de klok daalt Negatieve flank getriggerde flipflop wanneer de klok hoog is Karakteristieke vergelijking: + =
Flank getriggerde Flip Flop tap voor stap analyse 4 3 Clk= Clk= 6 5 2 ' Negatieve flank getriggerde flipflop wanneer de klok gaat van hoog naar laag: data wordt opgeslagen Negatieve flank getriggerde flipflop wanneer de klok is laag: data wordt behouden
Positieve tegenover negatieve flank getriggerde FF Clk pos \ pos neg \ neg Positieve flank getriggerde FF Inputs worden gesampled op de stijgende flank Outputs veranderen na de stijgende flank Positieve flank getriggerde FF Negatieve flank getriggerde FF Negatieve flank getriggerde FF Inputs worden gesampled op de dalende flank Outputs veranderen na de dalende flank
Master slave JK FF Meester trap laaf trap K J - Latch \ \P P - Latch \ \ Clk ample inputs wanneer de klok hoog is ample inputs wanneer de klok laag is Gebruikt de de tijd tijd om om een een mogelijke lus lus van van de de outputs naar naar de de inputs inputste te breken! J K Clk 's et eset Catch T oggle P \ P \ Master outputs lave outputs
Latches tegenover Flip-flops Input/Output gedrag van latches en Flipflops Type Wanneer gebeurt de sampeling Wanneer zijn Outputs Valid ongeklokte altijd propagatie vertraging latch na de input verandering level klok hoog propagatie vertraging sensitive na de input verandering latch positieve flank klok laag naar hoog propagatie vertraging getriggerde FF transitie stijgende flank van de klok negatieve flank klok hoog naar laag propagatie vertraging getriggerde FF transitie dalende flank van de klok master/slave klok hoog naar laag propagatie vertraging flipflop transitie dalende flank van de klok
Keuze van de Flipflop geklokte Latch: gebruikt als opslagelement in systemen met nauwe klokken Het gebruik is niet aan te raden! Het is een fundamentele bouwblok van andere FF J-K Flipflop: flexibel bouw blok kan gebruikt worden om and T FFs te realiseren vraagt vaak het minst logica om een next state functie te realiseren heeft 2 ingangen wat het verbindingsnetwerk complexer maakt Flipflop: minimaliseert het aantal draden wordt verkozen µ in VLI technologie meest eenvoudige ontwerp techniek beste keuze voor opslag elementen T Flipflops: komen niet vaak voor, meestal gemaakt van J-K FFs de beste keuze op tellers te maken Preset en Clear inputs zijn in de meeste gevallen best aanwezig!!
Overgaan naar een ander type FF Karakteristieke vergelijkingen -: + = + : + = J-K: + = J + K T: + = T + T Afkomstig van de Karnaugh kaarten voor de volgende toestand + = ƒ(inputs, ) b.v., J=K=, then + = J=, K=, then + = J=, K=, then + = J=, K=, then + = Implementatie van een FF aan de hand van een andere FF J C K K J C geïmplementeerd met J-K FF J-K geïmplementeerd met -FF
Flank-getriggerde FF met prioriteitsingangen Elke geklokte FF kan ook uitgevoerd worden met een Asynchrone reset Asynchrone preset eset Clk= C Preset
JK latch met asynchrone preset en clear P J & & CLK K & & _ J C K