Lothar M. schrieb:
>> wie lange mein Programm braucht
> Du hast die komplett falsche Denkweise!
> VHDL ist keine Programmiersprache
Das ist erstens nicht uneingeschränkt richtig und zweitens nicht die
Begründung gegen die Ansichten des TE.
Ich probiere es mal so:
Dein VHDL-Programm läuft zunächst nicht im FPGA sondern in der
Synthesesofware. Diese bestimmt in der Simulation, wie lange das real
dauert. Wie schnell da virtuell was toogelt, hängt von der eingestellten
Verzögerung ab.
"wie lange in VHDL" etwas "braucht" hängt davon ab, wie es gebaut wird
und das ist eine Sache des Tools und der Hardware und Sinn macht diese
Betrachtung nur bei ungetakteten Schaltungen.
Die schnellste programmierbare Einheit in einem FPGA ist eine
rückgekoppelte LUT. In einen Spartan 3E kann die mit gemessennen 900 MHz
schwingen. Man darf sie aber nicht wesentlich belasten, sondern muss die
mit Faktor 3 runterteilen und dann auf einen Buffer geben. Damit kann
man einen Schwingkreis von etwa 300 MHz herstellen. Mit dem kann man
aber nicht viel treiben, weil in einem Spartan die Elemente insgesamt zu
langsam sind, als dass grössere Kombinatorik so rasch laufen könnte.
Ansonsten toggelt dann ein Signal intern so schnell, wie eben der Takt
vorgibt.
Mit einem reinen Takt bekommt man in einem S3E mindestens (Erfahrung)
200MHz DDR2 hin - also 400 MHz. Aber auch die nur, wenn sie fast nichts
treiben müssen, ausser kurzen Leitungen.
Es gibt also nochmal einen Unterschied zwischen innen und aussen, und
dem, was Takt sein kann und darf.