aufgabe 7.2

xAx
Endlosschleifenbastler
Endlosschleifenbastler
Beiträge: 157
Registriert: 6. Mär 2008 17:20

aufgabe 7.2

Beitrag von xAx »

Hallo und danke für euer Interesse. ich habe eine frage bezüglich der übergangstabelle und des daraus abgeleiteten zustandsgraphen: ist man in zustand 2 und erhält "X" als eingabe, so wird immer in Zustand 3 gegangen und "~X" ausgegeben. wenn man jedoch in zustand 1 startet und als eingabe eine "0" erhält, so geht man in zustand 3 und gibt laut tabelle eine 0 aus. nach graph muss man jedoch "~0" = "1" ausgeben => scheinbarer widerspruch. meine vermutung wäre also, dass bei diesem mikroprogrammsteuerwerk die ausgabe nicht nur vom zustand und der eingabe (mealy) sondern auch noch vom vorgängerzustand abhängt. danke für jedwede hilfe, denn irgendwie bin ich grad voll verwirrt.
Nichts ist wie es scheint!
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
Zuletzt geändert von xAx am 14. Mär 2009 16:17, insgesamt 99-mal geändert.

Steven
Kernelcompilierer
Kernelcompilierer
Beiträge: 425
Registriert: 2. Sep 2008 10:00
Wohnort: Frankfurt am Main

Re: aufgabe 7.2

Beitrag von Steven »

*Edit* Mein erster Post war sinnlos :)

Du kannst mit x1 = 0 niemals in Zustand 1 oder 2 kommen, also gibt es keinen Widerspruch! Mit x1 = 0 gibt es real nur die Transitionen (0, 0), (1, 3) und (3, 0), mit x1 = 1 nur (0, 1), (1, 2), (2, 3) und (3, 1).

xAx
Endlosschleifenbastler
Endlosschleifenbastler
Beiträge: 157
Registriert: 6. Mär 2008 17:20

Re: aufgabe 7.2

Beitrag von xAx »

was ist dann mit der transition (2,3) für x1=0? laut graph der mulö ist diese existent. man kann ja mit x1=1 aus zustand 1 in zustand 2 wechseln. vor der nächsten taktflanke kann x1 jedoch stabil auf 0 gewechselt haben.
Nichts ist wie es scheint!
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
Zuletzt geändert von xAx am 14. Mär 2009 16:17, insgesamt 99-mal geändert.

Steven
Kernelcompilierer
Kernelcompilierer
Beiträge: 425
Registriert: 2. Sep 2008 10:00
Wohnort: Frankfurt am Main

Re: aufgabe 7.2

Beitrag von Steven »

Es ist sowieso schwierig ~x1 als Ausgabe an einen Zustand zu schreiben. Ich würde jetzt die Transition (2, 3) in zwei Transitionen aufteilen und die Ausgaben allgemein den Transitionen zuordnen, damit hast du dann die allgemeine Form eines Mealy-Automaten (siehe z.B. Folien TGDI 1 oder auch Wikipedia). Ein solcher Automat ist es sowieso, da die Ausgabe in jedem Fall vom aktuellen x1 abhängt, also asynchron ist.

Meines Erachtens dient diese Darstellung in der MuLö nur dazu, die Übersicht zu erhalten, da es für die Aufgabe egal ist, welcher Automatentyp vorliegt. Um zu verstehen, was das Ding tut, ist es so eher besser.

patriquito
BASIC-Programmierer
BASIC-Programmierer
Beiträge: 102
Registriert: 29. Apr 2005 23:09

Re: aufgabe 7.2

Beitrag von patriquito »

Hallo xAx,
wenn man jedoch in zustand 1 startet und als eingabe eine "0" erhält, so geht man in zustand 3 und gibt laut tabelle eine 0 aus
Die Tabelle muss man anders verstehen:
1. Wenn man sich im Zustand s befindet und am Eingang x1 anliegt, wird y1 ausgegeben.
2. Wenn man sich im Zustand s befindet und am Eingang x1 anliegt wird bei positiver Taktflanke von clk in Zustand s' übergegangen.
Es handelt sich also um einen Mealy Automaten. Die Ausgabe hängt ab vom aktuellen Zustand und vom Eingangswert x1 ab.

Für deine konkrete Frage bedeutet das:
Man befindet sich in Zustand s=1 und x1=0 --> y1=0.
Man befindet sich in Zustand s=1 und x1=0 und positive Taktflanke von clk --> neuer Zustand s=3. Nun befindet man sich in Zustand s=3 (mit weiterhin x1=0) --> die Ausgabe ist nun y1=1.
Oder anders ausgedrückt. Wenn du den Zustand wechselst, musst du zum Nachschauen der Ausgabe auch die Zeile in der Tabelle wechseln.

(1,2) mit x1=1 und (2,3) mit x1=0:
1. s=1 und x1=1 --> y1=0
2. clk positiv --> s=2, y1=1
3. x1=0 --> y1=0
4. clk positiv --> s=3, y1=1


@Steven: du hast recht, man kann die Ausgabe an die Transitionen schreiben. Aber dadurch, dass in der MuLö die Ausgabe y1 in Abhängigkeit von x1 angegeben ist, ist ja implizit für jede mögliche Transition schon eine Ausgabe angegeben. Das kann zugegebenermaßen zu Verwirrung führen, wenn man das anders gelernt hat.

Gruß,
Patrick

Antworten

Zurück zu „Archiv“