Hallo zusammen, ich beschäftige mich nun seit etwa 1 1/2 Jahren mit Entwicklungen auf Basis von FPGAs und VHDL. Leider habe ich immer noch keine wirklich durchdachte herangehensweise an derartige Projekte. In herkömmlichen Programmiersprachen (ja, ich hab mich von diesem Programmierstil noch nicht vollständig getrennt) habe ich zunächst immer zumindest in Skizzenform Ablaufdiagramme und / oder Nassi-Schneidermann-Diagramme skizziert um mir selbst vor der eigentlichen Programmierung den Logikablauf des Programms zu verdeutlichen. Habe damit bisher immer recht effektiv (glaub ich zumindest) arbeiten können. Für VHDL Konfigurationen empfinde ich diese Werkzeuge jedoch irgendwie als unzureichend, da ich beispielsweise noch keinen Weg gefunden habe Flankenereignisse oder verschiedene Nebenläufige Prozesse entsprechend darzustellen ... Meine Frage für diesen Thread ist nun einfach: Wie gehen erfahrenere Entwickler (also IHR! ;-) ) an neue FPGA Projekte heran? Wie strukturiert man eine solche Entwicklung aus mehreren Einzelmodulen und behält dabei sowohl funktionell als auch organisatorisch den Überblick? Gruß, Stefan
Ich würde sagen, mit genau dem gleichen Ansatz wie bei Software: Teile und (Be-)Herrsche. Die Unterteilung in Entities (VHDL) reicht meines Erachtens schon aus. Für jede Entity wird festgelegt, wie sie sich zu verhalten hat, darauf aufbauend eine Testbench geschrieben, und dann implementiert. Üblicherweise sind komplexere Module über einen Bus verbunden - die Bus-Interfaces sind klar definiert und sind nach ein bis zwei Ansätzen auch im Griff. Auf diesem Level ist dann natürlich auch ein Schematic sehr wichtig. Einzelne Entities bestehen entweder aus recht einfacher Logik, Statemachines oder Pipelines (viel anderes hab ich bislang nicht erlebt). Staemachines kann man mit herkömmlichen Werkzeugen sehr gut designen, implementieren und analysieren. Einfache Logik ist mit Modelsim eigentlich gut beherrschbar. Das größte Problem stellen aus meiner Sicht Pipelines dar, die oft von diversen Hazards heimgesucht werden. Da werden die "Großen" auch diverse Tools haben, ich muss mein Gehirn allerdings noch eigenhändig um das Problem wickeln.
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.