Informatiker Board (http://www.informatikerboard.de/board/index.php)
- Themengebiete (http://www.informatikerboard.de/board/board.php?boardid=1)
-- Technische Informatik (http://www.informatikerboard.de/board/board.php?boardid=7)
--- 4-Bit Zähler in Gray und BCD (http://www.informatikerboard.de/board/thread.php?threadid=1368)


Geschrieben von PeterPanter am 18.01.2013 um 14:31:

  4-Bit Zähler in Gray und BCD

Hi,

ich soll einen Zähler designen, welcher in abhängigkeit von einer Moduseingabe in BCD oder Gray modulo 10 zählt. Den Zähler für BCD habe ich, die Gleichungen für den Gray Zähler auch.
Aber wie kriege ich nun eine Schaltung hin, welche in Abhängigkeit von einer Eingabe wahlweise das eine oder das andere tut?



Geschrieben von Karlito am 18.01.2013 um 15:12:

 

Hallo,

wenn ich dich richtig verstanden habe, soll gewählt werden können, ob der Zahler BCD oder Gray zählt. Naiv würde ich dazu eine neue Zustandsübergangstabelle anfertigen, welche eine neue Leitung für die Auswahl einbezieht. Und dann musst Du einfach die Gleichungen neu aufstellen und minimieren...

Edit: Wahrscheinlich kannst du auch die vorhandenen Gleichungen nehmen und nur mittels einer neuen Variable zu den neuen Gleichungen zusammenfassen...

VG,

Karlito



Geschrieben von PeterPanter am 18.01.2013 um 15:57:

 

Also einfach jeweils bei den BCD Tetraden eine 0 und bei den GRAY tetraden eine 1 davor klatschen? Dann sind sie doch fiktiv, oder nicht? Bin gerade ein bisschen zu blöd um die Tabelle aufzustellen....



Geschrieben von Karlito am 18.01.2013 um 16:10:

 

Hallo,

wieso fiktiv? Dein Folgezustand hängt dann eben nicht mehr nur vom aktuellen Zustand ab, sondern vom aktuellen Zustand und der Auswahl. Das ist völlig legitim... Du hättest also als Eingang [latex]Q_0 \cdots Q_4[/latex] für die aktuelle Tetrade und [latex]X[/latex] für die Auswahl. Und aus diesen Kombinationen ergeben sich [latex]Q_0' \cdots Q_4'[/latex] als Folgetetrade...
Zusätzlich noch, je nach Anforderung weitere Ein- oder Ausgänge wie z.B. Reset oder ein Ausgang für den Überlauf des Zählers...

Besteht dein Problem bei der Erstellung des Zählers immernoch?

VG,

Karlito



Geschrieben von PeterPanter am 18.01.2013 um 16:23:

 

Wo ich momentan noch nicht hintergestiegen bin, ist wie ich die Übergangstabelle aufschreiben soll. Hatte jetzt 2 gemacht, eine für x=0 und eine für x=1. Innerhalb einer Tabelle ändern sich die Werte also nicht und sind überflüssig.



Geschrieben von Karlito am 18.01.2013 um 16:41:

 

Die neue Tabelle ist einfach die Vereinigung der beiden alten Tabellen, nur, dass halt eine weitere Spalte für den eingang für die Wahl zwischen BCD und Grey hinzukommt. Also insofern hast du schon recht, da wird einfach 0 oder 1 "davorgeklatscht"...

Also im Prinzip kannst du auch bei den beiden Tabellen bleiben, du musst nur deine Gleichungen anpassen. Die Glichungen werden länger, da nun mehr Klauseln dazu führen, dass ein Zustand erreicht wird und eine neue Variable hinzukommt...

VG,

Karlito.



Geschrieben von PeterPanter am 18.01.2013 um 16:52:

 

Ok, bedeutet Vereinigung, dass ich nun jede Tetrade 2 mal aufschreibe, wahlweise mit 1 oder 0 als MSB und dann in die Rechte Spalte den entsprechenden Nachfolger? Das kam mir komisch vor, weil dann die Spaltennamen present und next state nur noch für jede zweite Zeile stimmen.

Vielen Dank schon mal smile



Geschrieben von Karlito am 18.01.2013 um 17:05:

 

Hallo,

nur damit wir uns richtig verstehen, nicht das MSB der Tetrade wird angepasst. Es kommt wie gesagt eine neue Stelle hinzu. Ansonsten ja.

VG,

Karlito



Geschrieben von PeterPanter am 18.01.2013 um 17:07:

 

So meinte ich es auch. Für den Reset eingang setze ich für alle den Folgezustand auf 0 und rechne das dann aus?



Geschrieben von Karlito am 18.01.2013 um 17:25:

 

Jo



Geschrieben von eulerscheZahl am 18.01.2013 um 19:00:

 

Noch ein Alternativvorschlag: Multiplexer



Geschrieben von PeterPanter am 19.01.2013 um 19:30:

 

So habe ich es mir auch zuerst vorgestellt, mir scheint die Lösung mittels der Übergangstabelle allerdings eleganter.
Danke auf jeden fall smile


Forensoftware: Burning Board, entwickelt von WoltLab GmbH