mikrocontroller.net

Forum: FPGA, VHDL & Co. CPU im FPGA Pins toggeln mit voller Geschwindigkeit?


Autor: Christopher Bock (chris_muc)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
mit Microcontrollern gibts ja immer wieder das Problem, dass sie ihre IO 
Pins nicht mit voller Frequenz toggeln können. Wie sieht das bei CPUs in 
PLDs aus? Können dieses mit voller Frequenz toggeln? Müssten sie ja 
eigentlich, weil das ist es doch gerade für was sie gemacht sind. Oder 
stelle ich mir das gerade viel zu einfach vor?
Gruß
Chris

Autor: FPGA Spezialist (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ja, aber mit Systemtakt arbeiten, heisst immer mit hoher relativer 
Verzögerung. Je nach Realistation kriegst Du clk-Probleme beim Routen 
oder "analoge" Taktprobleme beim Betrieb durch den belasteten clock!

Die Lösung heisst DDR-Zellen: Ein dual data rate Zelle mit Belegung 0 
und 1, welche die 1 bei steigender Flanke und die 0 bei fallender Flanke 
ausgibt. Dann kriegst Du deinen Systemtakt mit geringer Verzögerung nach 
draussen.

Autor: Matthias (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das kommt auf die CPU drauf an und wie die IOs daran angebunden sind.
Bei einem Microblaze System sind die IOs z.B. über den OPB Bus 
angebunde. Der  läuft zwar theortisch mit voller CPU Frequenz, 
allerdings gibts ein Delay von so einigen Taktzyklen bis die 
Bustransaktion komplett ist. Also auch nix mit voller Geschwindigkeit.

Am ehesten dürfte sowas noch bei den simpelsten Prozessoren (z.B. 
Picoblaze) gehen, die kein Businterface verwenden.

Autor: Christopher Bock (chris_muc)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich dachte bisher eher an einen der Z80 Cores von opencores.org. Mit 
Picoblaze und konsorten habe ich mich noch nicht auseinander gesetzt. 
Werd ich mal nachhernen bisschen googln :) Danke schonmal für die Infos 
ihr beiden :)

Autor: Falk Brunner (falk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@ Christopher Bock (chris_muc)

>mit Microcontrollern gibts ja immer wieder das Problem, dass sie ihre IO
>Pins nicht mit voller Frequenz toggeln können. Wie sieht das bei CPUs in
>PLDs aus? Können dieses mit voller Frequenz toggeln? Müssten sie ja

Was heisst volle Freqeunz? Die, mit der die CPU läuft oder die, die das 
FPGA physikalisch schafft?

>eigentlich, weil das ist es doch gerade für was sie gemacht sind. Oder
>stelle ich mir das gerade viel zu einfach vor?

Wie bereits von den anderen Postern geschrieben, dauern die Zugriffe auf 
IO über die Busse doch einige Takte. Die Busse sind halt auf hohen 
Durchsatz getrimmt, nicht auf niedrige Latenz. Aber in einem FPGA wird 
man sinnvollerweise NICHT irgendwelche Soft-UART/SPI/Whatever Sachen 
machen. Dafür gibts ja schliesslich das FPGA! Das kann wunderbar mit 
kleinen Modulen die diversen Schnittstellen mit höchsten Taktraten 
bedienen. Das Bitgeklimper macht dann das Modul und meldet nach 
erfolgreicher Übertragung sich per Interrupt bei der CPU, die dann 
fertige Datenbytes bzw. Blöcke vom Modul transferiert.

MFG
Falk

Autor: Heinz (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Die Lösung heisst DDR-Zellen: Ein dual data rate Zelle mit Belegung
>0 und 1, welche die 1 bei steigender Flanke und die 0 bei fallender
>Flanke ausgibt.

>Dann kriegst Du deinen Systemtakt mit geringer Verzögerung nach
>draussen.

Macht das soviel aus? Man muss ja auch den Weg von den DDR-Zellen zum 
IOB berücksichtigen, oder nicht ?

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.