Gal durch Tiny26 ersetzen?

OP #3631708
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
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).
@ 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
Ahhhhhaaaa,

Du hast keinen Schaltplan, willst aber ein GAL durch nen Attiny 
ersetzen?

Neben der Tatsache das der zu langsam sein wird, glaube ich das Du auch 
so keinen Plan hast.
Lass es sein.
Gast
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
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

Eine eigene Frage? Dieser Thread ist über 12 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.