Gibt es hier Personen, die die Möglichkeiten der VHDL-Simulatoren ( esgibt ja einige freie) für mathematische Berechungen nutzen? Draufgekommen bin ich druch eine Diskussion mit einem Leica-Mathematiker, der schon seit Jahren MOodelSIM verstärkt einsetzt, um (in REAL) seine Vorberechungen zu vollziehen, bevor sie in die DSPs und FPGAs kommen. Grund: MATLAB ist zu langsam! Wäre das ein tauglicher Ansatz? Ich spreche da nicht nur von REAL-Modellen, mit deren Hilfe man die reinen FPGA Rechungen in VHDL überprüfen kann, sondern auch von bitgenauen Modellen, mit denen spätere Integerberechungen in C simuliert werden können. Die Idee dabei ist, die Fähigkeit der Simulatoren zu hardwre-Co-Simulation zu benutzen. Der Simulator ISIM verfügt bekanntlich über die Möglichkeit, fertige VHDL-Hardware in die Berechung einzuschleifen. Ich habe das bei Kollegen im Umfeld purer MATLAB-Simulationen gesehen, welche unfassbar schnell ablaufen und zwar erheblich schneller, als die MATLAB-Modelle, hinter denen sich ja eine Art von C++ verbergen wird. Ich will damit sagen, dass die bisherige Theorie ja die ist: Ich simuliere erstmal mit MATLAB weil's schneller ist und setze dann in C oder HDL um. Wie ist das einzuschätzen?
Matlab und Simulieren weil es schneller ist? Schwachsinn! Wenn dann in Matlab Simulieren, weil es für gewisse Aufgaben einfacher ist. Den Ansatz über Modelsim halt ich auch nur für sinnvoll, wenn man anschließend das ganze in einen FPGA oder ASIC gießt, da man bei korrekter Verwendung von Bibliotheken für das FPGA/ASIC genaue Ergebnis bekommt. Will man aber wirklich den PC schnell und effizient rechnen lassen, dann wird man um Sprachen wie C/C++ nicht rumkommen. Es ist wirklich die Frage was man haben will: 1) Will man ganz schnell (in Form von schnell was hinschreiben) was rechnen lassen, dann könnte Matlab die richtige Wahl sein. 2) Will man den PC schnell rechnen lassen, dann würde ich C/C++ verwenden. 3) Will ich sehen, ob mein FPGA mit allen Randbedingungen klarkommt, dann würde ich das ganz klar in Modelsim simulieren.
Hi Michael, ich habe letztens mal eine DSP-Verarbeitungskette mit dem freien GDHL-Simulator co-simuliert, ist allerdings kein Ausbund an Geschwindigkeit, da alles zyklengenau simuliert wird. Gibt hier auch wo nen Thread zur Co-Simulation und GHDL, einfach mal suchen. Unter Umständen brauchst Du dabei keine Zyklengenauigkeit. Insofern kannst Du die Kernroutinen auch durch C-Funktionsmodelle ersetzen, die schneller ablaufen. Auf der embedded 2012 habe ich auch noch einige interessante Lösungen der "grossen Jungs" gesehen, die mit System C zur funktionalen Beschreibung arbeiten. Insbesondere kann man damit eine komplette Zynq-Plattform (ARM basiert) auf dem Linuxrechner inklusiv beliebig zugebastelter Hardware emulieren. Denke aber mal, dass diese Tools eine schöne Stange Geld kosten. Matlab ist gut, um die Idee mal zu prototypen, aber um die Arithmetik nachher sauber (und meist noch in Fixkomma) zu realisieren, kommt das ganze nochmal in den Simulator, wenn nicht nebenbei gleich auf die finale Hardware. Meistens geht das bei mir parallel, da ich natürlich verstehen und drauf reagieren muss, wann bzw. wenn ein Overflow auftritt, etc. Grüsse, - Strubi
Martin S. schrieb: > GDHL-Simulator co-simuliert Womit? Also mit welcher HW? Oder war das anders gemeint?
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.