Dividera Med 8 ?
Dividera Med 8 ?
Såg den här enkla kretslösningen för att dela med 8.
Infrekvensen ska vara 14MHz men vilken logikfamilj klarar detta eller mer relevant - vilken logikfamilj är lämpligast?
Sett även den här...
Infrekvensen ska vara 14MHz men vilken logikfamilj klarar detta eller mer relevant - vilken logikfamilj är lämpligast?
Sett även den här...
- Synesthesia
- Inlägg: 597
- Blev medlem: 22 januari 2010, 19:14:10
- Ort: Mellan Göteborg och Kungsbacka
Re: Dividera Med 8 ?
Den första kretsen förutsätter väl någon form av reset om den skall dela med åtta?
Den första kretsen är synkron, dvs alla klockade element är kopplade till samma klocka. Den andra är asynkron, där "datasignaler" kopplas in på klockorna. I 99.99% av alla designer vill man jobba synkront, dvs enligt övre bilden. I de fall man inte vill det så har man en bra anledning som man kan argumentera för. Asynkrona designer kan fungera bra när det är enkla, som i bilden, men de är mycket svåra att felsöka och bygga vidare på, eftersom olika element klockas vid olika tidpunkter. Usch!
Den första kretsen är synkron, dvs alla klockade element är kopplade till samma klocka. Den andra är asynkron, där "datasignaler" kopplas in på klockorna. I 99.99% av alla designer vill man jobba synkront, dvs enligt övre bilden. I de fall man inte vill det så har man en bra anledning som man kan argumentera för. Asynkrona designer kan fungera bra när det är enkla, som i bilden, men de är mycket svåra att felsöka och bygga vidare på, eftersom olika element klockas vid olika tidpunkter. Usch!
-
- Inlägg: 883
- Blev medlem: 18 januari 2017, 14:59:43
Re: Dividera med annat än 8
Om frågeställaren hade velat dela med 3 eller 5 eller 7. Hur hade Er lösning sett ut ?
- HUGGBÄVERN
- Tidigare soundbrigade
- Inlägg: 33014
- Blev medlem: 23 augusti 2006, 22:44:11
- Ort: Lilla Paris
- Kontakt:
- Mickecarlsson
- EF Sponsor
- Inlägg: 3975
- Blev medlem: 15 april 2017, 18:06:15
- Ort: Malmö
- Kontakt:
Re: Dividera Med 8 ?
Jupp, 4017 med utgång 9 till reset.
EDIT: för första exemplet,
För de andra, utgång 4, 6 eller 8 till reset
EDIT: för första exemplet,
För de andra, utgång 4, 6 eller 8 till reset
- Mickecarlsson
- EF Sponsor
- Inlägg: 3975
- Blev medlem: 15 april 2017, 18:06:15
- Ort: Malmö
- Kontakt:
Re: Dividera Med 8 ?
Här finns det exempel: https://www.circuits-diy.com/frequency- ... th-cd4017/
Re: Dividera Med 8 ?
Första schema kräver att det utförs en reset i samband med power-on.
En 4017 är ju asynkron och om den fungerar beror på timingskrav.
Faktisk är timingkraven det avgörande för att välja lösning.
En 4017 är ju asynkron och om den fungerar beror på timingskrav.
Faktisk är timingkraven det avgörande för att välja lösning.
Re: Dividera Med 8 ?
Lösningar med att återkoppla en asynkron reset är inget bra. En synkron räknare med synkron reset eller vippor och grindar som ger rätt delning är det stabilaste. Johnsonräknaren i första exemplet är bra om något skall avkodas glitchfritt. Där ändras endast en vippa för varje klockpuls.
Det finns räknare som kan sättas synkront. Med en sådan och en grind som känner av när den står på noll och då ger signal så nästa klocka sätter räknaren är nog det enklaste när det behövs udda delningstal.
Det finns räknare som kan sättas synkront. Med en sådan och en grind som känner av när den står på noll och då ger signal så nästa klocka sätter räknaren är nog det enklaste när det behövs udda delningstal.
Re: Dividera Med 8 ?
Med t.ex. 4017 eller liknande så kan man få utgången synkron genom att köra signalen genom t.ex. en halv 74xx74 som klockas med ingångsklockan. (Förutsatter att vald 74xx74 är snabb i förhållande till 4017, eller enklare att 74xx74 klockas på omvänd flank jämfört med 4017)
- HUGGBÄVERN
- Tidigare soundbrigade
- Inlägg: 33014
- Blev medlem: 23 augusti 2006, 22:44:11
- Ort: Lilla Paris
- Kontakt:
Re: Dividera Med 8 ?
Det kan fungera, men det brister i modern designmetodik och inget som man bör lära ut till någon på 2020-talet. Det fanns en tid när man inte hade så många transistorer på kiselbrickan för en rimig peng, och då var man tvungen att vara ingenjörsmässigt kreativ/finurlig/listig och lösa sitt problem med de bitar/kretsar som fanns.
Att designa asynkront är dålig metodik för att det krävs "specialare" för att det skall fungera, typ "7474 måste vara snabb jämfört med 4017" (det syns ju inte i schemat om ingen präntat dit det i klartext) eller att en av alla kretsar i konstruktionen klockas på omvänd flank osv. Kan fungera för one-offs (och det kan mycket väl vara helt okej i specifika fall), men det är inget som skalar säkert över storlek, logikfamilj, temperatur etc. (Se tex schemat på kaskadkopplingen i databladet för 4017. Varje ny 4017 i kaskaden får en fördröjd output jämfört med föregående, och utsignalerna kommer att överlappa med glitchar och skit som följd om man bygger någon avkodare baserad på dem. Urk.)
Synkron design, å andra sidan, innebär att alla klockade element går på precis samma klocka och samma flank. Då minimerar man alla möjliga synkroniseringsproblem till det enda problemet att distribuera klockan till alla enheter samtidigt. Det kan vara svårt nog, men det är bara ETT problem att lösa, istället för okänt antal asynkrona temperaturberoende hickups, glitchar, violeringar av setup och holdtider, metastabilitet osv. All modern digital elektronik (med mycket få specialundantag) är baserade på denna metodik.
74x163 är helt synkron, använd gärna den. Det är en fyrabitarsräknare, så den kräver antagligen några extra grindar för att avkoda en nollställningssignal om man vill räkna modulo N, men designen kommer att vara vattentät.
Att designa asynkront är dålig metodik för att det krävs "specialare" för att det skall fungera, typ "7474 måste vara snabb jämfört med 4017" (det syns ju inte i schemat om ingen präntat dit det i klartext) eller att en av alla kretsar i konstruktionen klockas på omvänd flank osv. Kan fungera för one-offs (och det kan mycket väl vara helt okej i specifika fall), men det är inget som skalar säkert över storlek, logikfamilj, temperatur etc. (Se tex schemat på kaskadkopplingen i databladet för 4017. Varje ny 4017 i kaskaden får en fördröjd output jämfört med föregående, och utsignalerna kommer att överlappa med glitchar och skit som följd om man bygger någon avkodare baserad på dem. Urk.)
Synkron design, å andra sidan, innebär att alla klockade element går på precis samma klocka och samma flank. Då minimerar man alla möjliga synkroniseringsproblem till det enda problemet att distribuera klockan till alla enheter samtidigt. Det kan vara svårt nog, men det är bara ETT problem att lösa, istället för okänt antal asynkrona temperaturberoende hickups, glitchar, violeringar av setup och holdtider, metastabilitet osv. All modern digital elektronik (med mycket få specialundantag) är baserade på denna metodik.
74x163 är helt synkron, använd gärna den. Det är en fyrabitarsräknare, så den kräver antagligen några extra grindar för att avkoda en nollställningssignal om man vill räkna modulo N, men designen kommer att vara vattentät.
- MadModder
- Co Admin
- Inlägg: 30112
- Blev medlem: 6 september 2003, 13:32:07
- Ort: MadLand (Enköping)
- Kontakt:
Re: Dividera Med 8 ?
74163 säger du… såna har jag nog.
När jag läste ’violering’ tänkte jag att nu har väl svengelskan nått sin topp, men violera har ju faktiskt funnits i ordboken sen åtminstone 1500-talet. Tänka sig.
När jag läste ’violering’ tänkte jag att nu har väl svengelskan nått sin topp, men violera har ju faktiskt funnits i ordboken sen åtminstone 1500-talet. Tänka sig.