Dividera Med 8 ?

Elektronikrelaterade (på komponentnivå) frågor och funderingar.
Användarvisningsbild
4kTRB
Inlägg: 18578
Blev medlem: 16 augusti 2009, 19:04:48

Dividera Med 8 ?

Inlägg av 4kTRB »

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?

Bild

Sett även den här...
Bild
Användarvisningsbild
Synesthesia
Inlägg: 597
Blev medlem: 22 januari 2010, 19:14:10
Ort: Mellan Göteborg och Kungsbacka

Re: Dividera Med 8 ?

Inlägg av Synesthesia »

För 5V: 74HC, 74HCT, 74LS.
guckrum
Inlägg: 1717
Blev medlem: 19 juni 2012, 09:04:27
Ort: Lund

Re: Dividera Med 8 ?

Inlägg av guckrum »

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!
alexanderson
Inlägg: 883
Blev medlem: 18 januari 2017, 14:59:43

Re: Dividera med annat än 8

Inlägg av alexanderson »

Om frågeställaren hade velat dela med 3 eller 5 eller 7. Hur hade Er lösning sett ut ?
guckrum
Inlägg: 1717
Blev medlem: 19 juni 2012, 09:04:27
Ort: Lund

Re: Dividera Med 8 ?

Inlägg av guckrum »

Synkron tillståndsmaskin. Två alt tre vippor samt lite logik.
Användarvisningsbild
4kTRB
Inlägg: 18578
Blev medlem: 16 augusti 2009, 19:04:48

Re: Dividera Med 8 ?

Inlägg av 4kTRB »

Samma logikfamiljer hade nog blivit svaret.
Användarvisningsbild
HUGGBÄVERN
Tidigare soundbrigade
Inlägg: 33012
Blev medlem: 23 augusti 2006, 22:44:11
Ort: Lilla Paris
Kontakt:

Re: Dividera Med 8 ?

Inlägg av HUGGBÄVERN »

CD4017
Användarvisningsbild
Mickecarlsson
EF Sponsor
Inlägg: 3975
Blev medlem: 15 april 2017, 18:06:15
Ort: Malmö
Kontakt:

Re: Dividera Med 8 ?

Inlägg av Mickecarlsson »

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
Användarvisningsbild
Mickecarlsson
EF Sponsor
Inlägg: 3975
Blev medlem: 15 april 2017, 18:06:15
Ort: Malmö
Kontakt:

Re: Dividera Med 8 ?

Inlägg av Mickecarlsson »

Användarvisningsbild
Icecap
Inlägg: 26218
Blev medlem: 10 januari 2005, 14:52:15
Ort: Aabenraa, Danmark

Re: Dividera Med 8 ?

Inlägg av Icecap »

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.
Användarvisningsbild
Marta
EF Sponsor
Inlägg: 6996
Blev medlem: 30 mars 2005, 01:19:59
Ort: Landskrona
Kontakt:

Re: Dividera Med 8 ?

Inlägg av Marta »

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.
MiaM
Inlägg: 10183
Blev medlem: 6 maj 2009, 22:19:19

Re: Dividera Med 8 ?

Inlägg av MiaM »

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)
Användarvisningsbild
HUGGBÄVERN
Tidigare soundbrigade
Inlägg: 33012
Blev medlem: 23 augusti 2006, 22:44:11
Ort: Lilla Paris
Kontakt:

Re: Dividera Med 8 ?

Inlägg av HUGGBÄVERN »

Nu får man väl plocka fram läroboken i kombinatorik.
guckrum
Inlägg: 1717
Blev medlem: 19 juni 2012, 09:04:27
Ort: Lund

Re: Dividera Med 8 ?

Inlägg av guckrum »

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.
Användarvisningsbild
MadModder
Co Admin
Inlägg: 30112
Blev medlem: 6 september 2003, 13:32:07
Ort: MadLand (Enköping)
Kontakt:

Re: Dividera Med 8 ?

Inlägg av MadModder »

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. :D
Skriv svar