Gal durch Tiny26 ersetzen?

OP #3631708
Lesenswert?

Hallo allerseits,

ich habe eine Schaltung, in der ein GAL verwendet wird. Ein tiny26 hat 
für diesen Anwendungsfall ausreichen IO, ich würde daher gerne wissen, 
ob ich den GAL durch einen nentsprechend programmierten µc ersetzen kann 
und was dabei zu beachten ist.

Grüsse

Robert
#3631729
Lesenswert?

Schau einfach mal ins Datenblatt des Z80, welche Timings einzuhalten 
sind und dann in die Datenblätter der RAMs/ROMs, welche Durchlaufzeiten 
davon abzuziehen sind.

Dann dürfen nur noch wenige ns übrig sein für den Dekoder, d.h. mit ner 
>1GHz CPU könnte es machbar sein.

GALs im DIP stellt nur noch Atmel her (ATF22V10, ATF16V8).
#3631832
Lesenswert?

@ R. Freitag (rfr)

>na gut, Bestellung bei Reichelt wird veranlasst. Zur Not könnte man das
>aber auch auf TTL-Basis machen?

Ja, aber warum glaubst du, haben die Jungs sich damals für einen GAL 
entschieden? Womöglich, weil man mit EINEM GAL ein Dutzend TTL-ICs 
ersetzen kann?
Gast #3631965
Lesenswert?

R. Freitag schrieb:

> Zur Not könnte man das
> aber auch auf TTL-Basis machen?

Vermutlich hat man genau ein GAL deswegen eingesetzt, um ein größeres 
TTL-Grab zu vermeiden.

Wenn z.B. ein 8085 bei mir im Hobby sehr langsam läuft, eine 
Retro-Bastelei mit 10 oder 100kHz, dann würde ich mich trauen, z.B. als 
Adreßdekodierer einen schnelleren µC zu nehmen, der I/O in wenigen µs 
schalten kann. Aber es wird nicht leicht, es läuft ja da auch noch ein 
Code auf dem Dekoder-µC, mit Laufzeiten, I/O werden nicht sofort 
bedient.
Gast #3632538
Lesenswert?

R. Freitag schrieb:

> ich habe eine Schaltung, in der ein GAL verwendet wird. Ein tiny26 hat
> für diesen Anwendungsfall ausreichen IO, ich würde daher gerne wissen,
> ob ich den GAL durch einen nentsprechend programmierten µc ersetzen kann
> und was dabei zu beachten ist.

Die böse Zeit. Der Tiny ist ziemlich wahrscheinlich zu langsam.

Nur mit einem zum Systemtakt synchronen, auf 24MHz versechsfachten Takt 
besteht eine realistische Chance. Und die auch nur unter folgenden 
Randbedingungen:

1) Es sind nur maximal 7 Eingänge zu verarbeiten
2) Es sind nur maximal 8 Ausgänge anzusteuern
3) Die komplette GAL-Funktion ist reine boolsche Logik
4) Ein Delay zwischen Ein- und Ausgang von von mehr als einer halben
   Periode des 4MHz-Systemtaktes ist akzeptabel.

Die Hauptschleife sieht dann so aus:

loop:
 in XL,INPORT    ;1
 ld XL,X         ;2
 out OUTPORT,XL  ;1
 rjmp loop       ;2
                 ;-
                 ;6

Vor dem Eintritt in die Hauptschleife wäre im RAM die Logiktabelle zu 
initialisieren und der Eintritt in die Hauptschleife anhand der 
Eingangssignale taktgenau zu synchronisieren.

Aber ich vermute mal, daß die Sache sowieso schon an den vier 
Randbedingungen scheitern wird...

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren