Frage

Derzeit teste ich einig RTL, ich bin mit ncverilog, und es ist sehr ... sehr langsam. Ich habe gehört, dass, wenn wir eine Art von FPGA-Boards verwenden, dann werden die Dinge schneller sein. Ist es wirklich?

War es hilfreich?

Lösung

Sie sprechen über zwei verschiedene Dinge.

ncverilog ist ein Simulationswerkzeug, während eine FPGA-Board echte Hardware. So wird es Unterschiede geben. Reale Hardware wird in der Regel schneller, aber mit einem Simulator, können Sie alle Arten von Spaß Debuggen haben. ein spezifisches Signal zu sondieren versucht, ist nur eine Frage der eine Linie zu dem Prüfstand hinzufügen. Außerdem können Sie leicht Änderungen vornehmen, um das simulierte Modell anstatt das FPGA-Board neu zu gestalten.

Wenn Sie Simulation auf eine ausreichend leistungsfähige Maschine ausführen, können Sie manchmal ungefähre reale Leistung (unter der Annahme, dass das FPGA ein langsamer ist).

Alles in allem sollten Sie beides tun. Verwenden Sie einen Simulator Ihre grundlegende Entwicklung und Evaluation zu tun. Bewegen Sie sich auf Ihre FPGA-Hardware, sobald Ihr Design ausreichend gut definiert ist.

Andere Tipps

Wir haben die gleichen Probleme mit Simulationsgeschwindigkeit zu haben. Allerdings bleiben wir mit Simulationen für die meisten unserer Überprüfung. Jede SIM-Kontrollen eine bestimmte Funktion und sind viel schneller als auf Systemebene sims. Wir haben auch sie Selbstprüfung und sind nützlich für die Regressionen Tests (Unit-Tests).

gemacht

Für lange Systemtests auf realen Signalen, die zu viel Zeit in Anspruch nehmen zu simulieren, bewegen wir diese an die FPGA, wenn wir können. Wir müssen manuell neu prüfen alle diese Testfälle wieder nach Änderungen am Code, so kann es auf seine eigene Weise langsam sein.

Manchmal aber, ein Design FPGAing ist einfach nicht machbar. Manchmal sind voll Designs zu groß, um in ein FPGA zu passen, oder die Taktrate ist zu hoch. Aber denken Sie daran, dass Sie nicht unbedingt das gesamte Design FPGA müssen, kann es ausreichen, um den wichtigen Block bekommen Sie interessiert sind und diese vollständig zu überprüfen.

Sie können Aktivität verfolgen auf Signale in einem laufenden FPGA-Design „eingebettete Logikanalysator“ Software-Tools wie Altera SignalTap oder Xilinx Chipscope verwenden. Vor der Synthese / Abbildung Ihrer RTL auf das Gerät, würden Sie diese Tools verwenden, um weiche Sonden auf die Signale befestigen Sie sehen möchten. Sie können Trigger so eingestellt, dass die Werte eine Signal nur unter bestimmten Bedingungen protokolliert werden. Dann erzeugen Sie die Bitfile und programmieren Sie das Gerät mit JTAG. Der Logikanalysator kommuniziert mit dem PC über JTAG und meldet Aktivität auf Sonden, die Sie dann analysieren können.

Es ist ein bisschen zu kompliziert aufgebaut, da diese Werkzeuge sind nicht besonders einfach zu bedienen, aber Sie werden die Ergebnisse viel schneller als mit RTL-Simulation erhalten.

Welche Art von RTL testen Sie? Wenn Sie FPGA-Boards verwenden, dann können Sie kompilieren Ihr Code versehen Sie das richtige Werkzeug für den richtigen FPGA haben. Da FPGA reprograammable sind, dann natürlich können Sie Ihren Code auf dem Board testen, und haben das Ziel (FPGA) ausführen Code (RTL)

Aber es ist nicht mehr eine Simulation ist es ein Test, mit einer bestimmten Hardware, bei einer bestimmten Taktfrequenz. Und Sie nicht schönes Ergebnis auf dem Bildschirm erhalten, müssen Sie die physische Sonde und Umfang nutzen. Außerdem bekommt man nicht, um zu sehen, wie die internen Ihren Codes funktioniert.

Verilog oder VHDL-Simulation ist so etwas wie Code ausgeführt wird mit einem Debugger. FPGA-Test ist eher wie bei printf debuggen. Der große Unterschied ist, dass bei der Simulation, die CPU das Verhalten all jener Logik-Gatter zu simulieren hat, die von Code führt. Auf dem FPGA, gibt es keine Simulation, die Sie gerade ‚run‘ der Code, so dass es viel schneller, aber Sie haben weniger Informationen.

Sie sollten verwenden Simulation für sehr kleine Komponenten, und dann testen Sie Ihr ganzes Programm auf einem FPGA.

Sie fragen wahrscheinlich über Hardware-Simulation Beschleuniger. Hier ist einer von ihnen: GateRocket

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top