Zu Aufgabe 10 - PIA

Kalle
Erstie
Erstie
Beiträge: 16
Registriert: 20. Okt 2004 09:49
Kontaktdaten:

Zu Aufgabe 10 - PIA

Beitrag von Kalle » 1. Feb 2007 18:36

Hi!

Eine kleine Frage: in 10.3a) wird das oberste Bit (Flanke=steigend) gesetzt, obwohl wir die Interrupts nicht benutzen. Hier müßte ein Don't Care hin, oder bezieht sich die Flanke auf mehr als IRQ (und vielleicht DMA)?

Und zu Aufgabe 10.4b): Könnte man die InterruptRoutine IN für den Empfang auch analog zu OUT machen - in Bezug auf das Flußdiagramm in L10.pdf Folie 15: Wenn der Puffer Leer ist, dann gibt man S-IR frei, und schreibt dann das Datum in den Puffer, anstatt zu schauen, ob S-IR frei ist, und falls noch gesperrt, eigenmächtig was Senden (Das ist doch OUT's Job!)

Gruss Kalle

bitNoob
Neuling
Neuling
Beiträge: 2
Registriert: 31. Jan 2007 17:48

Beitrag von bitNoob » 2. Feb 2007 07:29

hallo!

zu 10.3a:
ich habe das so verstanden. Dieses oberste Bit des CR legt fest, auf welche Flanke das C1 reagieren soll. Das C1 wiederum beeinflusst ja dann das oberste Bit vom SR... und mehr auch nicht... glaube ich :?:
Die Auswertung von dem SR7 kann ja dann entweder per Busy-Waiting (CR6=0) oder IR (CR6=1) erfolgen.

bye bye
bitNoob

Herrzattacke
BASIC-Programmierer
BASIC-Programmierer
Beiträge: 143
Registriert: 20. Nov 2004 16:04

Beitrag von Herrzattacke » 2. Feb 2007 10:38

Denke auch, dass bei der 10.4b es etwas komisch ist, das die E-IR Routine gleich die Daten ausgibt.

Eigentlich sollte es ja so sein.

Code: Alles auswählen

IN:
if(noch platz im Buffer)
    speichere Datum und lösche CR-Statusbit
    if(S-IR gesperrt) // der Buffer war vorher leer
        gib S-IR frei
else
    sperre E-IR

OUT:
if (irgendwas im Buffer)
    gib Datum aus und lösche CR-Statusbit
    if(E-IR gesperrt) // der Buffer war Voll
        gib E-IR frei
else
    sperre S-IR
so hattest du das auch gemeint oder?

Kalle
Erstie
Erstie
Beiträge: 16
Registriert: 20. Okt 2004 09:49
Kontaktdaten:

Beitrag von Kalle » 2. Feb 2007 10:57

zu 10.3: Ja, das macht Sinn. Auch ohne Interrupt müssen wir wissen, wann wir das SR-Bit setzen sollen...

zu 10.4 Ja, im Prinzip habe ich das so gemeint - ich habe nur die Überprüfungen weggedacht ob das jeweilige Bit gesperrt ist, bevor es entsperrt wird (sparrt einen bedingten Sprung...).
So wie du es geschrieben hast, ist es auf jeden Fall symmetrischer, als in der Lösung - und mir ist halt kein Grund für die Asymmetrie bewußt...

Gruss Kalle

Herrzattacke
BASIC-Programmierer
BASIC-Programmierer
Beiträge: 143
Registriert: 20. Nov 2004 16:04

Beitrag von Herrzattacke » 2. Feb 2007 11:05

Stimmt, das 2-te if könnte man sich jeweils noch sparen.

Aber ich will ja beim schreiben der Klausur auch kein MuLö verfassen ;)
Alle sagten: "Das geht nicht!" Dann kam einer, der wusste das nicht und hat´s gemacht.

Antworten

Zurück zu „Archiv“