mikrocontroller.net

Forum: FPGA, VHDL & Co. Z80-Design


Autor: Thorsten (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

habe vor Jahren einen kleinen Z80-EPC in klassischem Design mit 4 PIOs,
1 CTC, 8-Bit ADU, LCD-Ansteuerung, je 32 KB RAM/EPROM/EEPROM und vor
allem jeder Menge Assembler-Software entwickelt. Es ist über die Jahre
eine sehr ausgereifte Lösung für meine Haussteuerung geworden. Nun ist
die Hardware nicht mehr zeitgemäss und ich würde das Ganze gern in ein
FPGA packen, um die Software weiter verwnden zu können. An die Kenner
der Materie: Ist das mit vertretbarem Aufwand möglich? Leider betrete
ich mit FPGAs Neuland.
Danke. Thorsten

Autor: FPGA-User (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ich würde Dir empfehlen, auf einen modernen Controller
umzusteigen, ein FPGA ist eher für sehr schnelle Signalverarbeitung
geeignet, eine Haussteuerung würde ich nicht als Anwendung dafür
sehen.
Zwangsläufig müsstest Du einen Soft-Prozessor (Pico-Blaze, NIOS...)
im FPGA verwenden, keine Ahnung ob es da einen Z80-kompatiblen
Core gibt, aber die Einarbeitung wäre vermutlich auch extrem
zeitaufwändig, wenn Du noch gar keine Erfahrung mit FPGAs hast.

Autor: TobiFlex (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wenn es nur um die Haussteuerung geht hat @FPGA-User sicher Recht. Wenn
es Dir aber um die Liebe zum Z80 geht und Du gleichzeitig was mit FPGAs
machen möchtest kann ich Dir
http://www.opencores.org/projects.cgi/web/t80/overview
empfehlen. Er hat nur geringfügige Timingabweichungen ist aber voll
Softwarecompatibel inclusive der illegalen OPCodes. Nur OUTI, OTIR,
INI, INIR, OUTD, OTDR, IND, INDR, sind fehlerhaft. Ich habe schonmal
eine Korrektur an den Autor geschickt, der hat aber nicht reagiert.
Also wenn da Bedarf besteht - melden!
Ein anderes Problem sind die Waitsates. Beim T80 wird immer in T2 Wait
ausgewertet. Im orginal Z80 wird aber bei IO-Befehlen in T3 Wait
ausgewertet. Bei nicht exakten Timinganforderungen ist das aber kein
Problem.

 Der T80-Core braucht ca 2500LCs im Altera ACEX und ich habe ihn dort
mit 16MHz laufen.

Viele Grüße
TobiFlex

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [vhdl]VHDL-Code[/vhdl]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.