Hardware > Hardware (Classic 16-/32-Bit)
GAL Programmierung der einstieg
m0n0:
Also, wie wäre es mit:
DTACK wird gesetzt wenn
Wenn AS aktiv (low), RW Aktiv (high) ist, und die Adresse im Bereich 0x0Exxxxx liegt,
oder
wenn die Adresse im Bereich 0x0Fxxxxx liegt wird DTACK ungeachtet von AS und RW gesetzt. ( Oder ist es so das alle nicht angebenen pins inaktiv sein müssen damit die Bedingung erfüllt ist? D.h. nicht angabe von Pins besagt das diese Inaktiv sein müssen? ...aber dann könnte man sich ja auch das / vor dem Pin sparen, weil man den Pin in der Gleichung auch einfach weg lassen könnte )
... oder handelt es sich bei dem + um eine Boolsche Verknüpfung? So das die Ergebnisse der einzelnen Angaben mit Boolschem Oder Verknüpft werden, und je nach dem was bei dieser Boolschen Operation heraus kommt, wird DTACK gesetzt? Wenn das NICHT der fall sein sollte, dann könnte man Die Gleichung auch so in GAL asm definieren:
--- Code: ---DTACK = /AS*A23*A22*A21*/A20*/A19*/A18*RW;
DTACK = A23*A22*A21*A20*/A19*/A18*/A17*/A16*/A15*/A14;
--- Ende Code ---
Ups, ich merke, ich bin noch weit weg von der Lösung ;) Ich habe die Negierten Pins in meiner Lösung garnicht beachtet. Aber ich muss jetzt Drachen steigen lassen - meine Fragen sind trotzdem noch offen :)
tuxie:
Deine erste aussage ist richtig!! Habs jetzt nicht nachgerechnet aber sollte stimmen.
Das DTACK Signal ist das Signal was der CPU mitteilt das sie mit der Arbeit beginnen kann also alles richtig gesetzt ist.
In dem vorher gennanten PDF ist auf Seite V4-4 bzw. PDF Seite 4 der Lesezyklus der CPU abgebildet (68k).
Die CPU erwartet nach setzen von /AS das /DTACK Signal von der entsprechend Adressierten Baugruppe.
Auf deutsch die Baugruppe sagt !! Ich bin soweit kannst loslegen.
Das Listing aus dem Ich das Entnommen habe ist das IDE TOS2.06 Listing
Der eine teil ist für das lesen vom IDE zuständig und der andere für die Eproms.
Das + ist eine Logische ODER Verknüpfung !
m0n0:
--- Zitat ---Das + ist eine Logische ODER Verknüpfung !
--- Ende Zitat ---
Das wirft natürlich ein ganz anderes Licht auf die Sache!
...wobei das ergebnis einer Logischen Verknüpfung und meinem Gehirn wirrwarr wohl das selbe ist ;) ... ich hatte aus irgend einem Grund eher sowas wie ein Grammatisches oder / und im kopf... aber da ist ein und ja fast das gleich wie ein auch...
DTACK ist Eingeschalltet wenn x = soundsoist und auch wenn y = soundso ist. Das wäre dann aber eigentlich ein Logisches Oder ;)
Ich lese nochmal von vorne...
Darf man Pins denn nur mit einer einzigen Zuweisung "versehen" - oder darf man auch mehrmals zuweisen??
also z.b. so:
DTACK = X * Y
DTACK = X * A
DTACK = X * Z
tuxie:
Hi,
ich denke das kommt wohl auf den Assembler an, aber eigentlich gibt es nur eine zuweisung pro ausgang.
FrankR:
Hi,
auch wenn dieser thread schon uralt ist, finde ich ihn gut und wüsste gerne wie man in einem GAL 16V8 eine oc Schaltung implementiert.
Beste Grüße
Frank
Navigation
[0] Themen-Index
[#] Nächste Seite
[*] Vorherige Sete
Zur normalen Ansicht wechseln