Hallo, aus der Java Ecke kenne ich die Funktion einen Namen in einem Projekt automatisch verändern zu können, egal ob Funktionsname, Variable o.ä. Gibts sowas auch für VHDL? Ich bin Anfänger auf dem Gebiet und bemerke oft erst später dass ich was anders strukturieren muß/will bzw. einfach einen Namen ungünstig gewählt habe. Noch was anderes: Ich hab nach einigen Jahren Pause mein FPGA Board wieder rausgezogen, damals mit ISE 8.1 programmiert. Gibts einen Grund nicht einfach damit weiterzumachen sondern sich ein neueres ISE auf den Rechner zu holen? Vielen Dank Randy
Randy schrieb: > aus der Java Ecke kenne ich die Funktion einen Namen in einem Projekt > automatisch verändern zu können, egal ob Funktionsname, Variable o.ä. Das ist eine Hilfestellung der IDE für dich. > Gibts sowas auch für VHDL? Ja, das heißt aber anders: "Suchen und Ersetzen".. ;-) > Noch was anderes: Ich hab nach einigen Jahren Pause mein FPGA Board > wieder rausgezogen, damals mit ISE 8.1 programmiert. Gibts einen Grund > nicht einfach damit weiterzumachen sondern sich ein neueres ISE auf den > Rechner zu holen? Solange dein FPGA unterstützt wird eigentlich nicht. Allerdings hatte die 8er Version einen eher instabilen Ruf...
Hi Randy, ich habe das Thema der Refactorings mal intensiver untersucht. Dabei ist ein Eclipse-Framework entstanden, mit dem man Refactorings generisch definiert und diese dann auf konkrete Ziel-Metamodelle abbildet. Wenn dir der Begriff "Metamodell" jetzt nichts sagt, ist das auch nicht weiter schlimm. Ich kann dir aber sagen, dass dir geholfen werden kann. Mein Framework basiert auf dem Eclipse Modeling Framework, was derzeit als Quasistandard der MDSD zu verstehen ist. D.h., wenn du nichts gegen Eclipse als Entwicklungsumgebung einzuwenden hast, sind wir der Lösung deines Problems schon sehr viel näher gekommen. Mein Framework arbeitet auf der abstrakten Syntax einer Sprache (in deinem Fall VHDL). D.h., dass ein Metamodell davon benötigt wird. Ich stehe momentan im Kontakt mit jemandem, der ein Metamodell und die textuelle Syntax für Eclipse besitzt. Damit könntest du also in Eclipse mit VHDL deine Hardware beschreiben, mit Code-Completion, Syntax-Highlighting, Code-Navigation usw., und mein Framework anbinden, mit dem dir Refactorings zur Verfügung gestellt werden könnten. Ich denke, dass Details diese Diskussion hier sprengen würden. Wenn du möchtest, kannst du mich kontaktieren unter: jan.reimann at tu-dresden.de Viele Grüße, Jan
Lothar Miller schrieb: >> Gibts sowas auch für VHDL? > Ja, das heißt aber anders: "Suchen und Ersetzen".. ;-) Ich kenne Refactoring nur von Eclipse mit Java. Dort ist damit nicht nur "Suchen und Ersetzen" innerhalb einer Datei gemeint, sondern quer durch das ganze Projekt inkl. aller zugehörigen Dateien. Aber wie Lothar schon schrieb: Das hat mit VHDL und Java nichts zu tun, sondern ist ein Feature des verwendeten Editors.
Der Unterschied zu "Suchen & Ersetzen" besteht darin, dass beim Refactoring Operationen durchgeführt werden, die das Verhalten des Systems garantiert nicht verändern.
> Aber wie Lothar schon schrieb: Das hat mit VHDL und Java nichts zu tun, > sondern ist ein Feature des verwendeten Editors. Der aber die Sprache verstehen muß. Schließlich muß der Such/Ersetz-Algo die Namespaces auseinanderhalten. Die Frage scheint aber beantwortet: Ist in keiner der üblichen VHDL-IDEs implementiert... Randy
Randy...sagt dir meine Antwort nicht zu? In der von mir beschriebenen Art und Weise kannst du dir deine VHDL-IDE selbst zusammenbauen.
Hat einer schon mal das veditor plugin verwendet? Ich selbst noch nicht, daher die Frage. http://sourceforge.net/projects/veditor/ -- Marcus
> sagt dir meine Antwort nicht zu? In der von mir beschriebenen > Art und Weise kannst du dir deine VHDL-IDE selbst zusammenbauen. Das von dir beschriebene Teil hört sich nach genau dem an nach was ich gefragt habe. Klingt nur auch ein wenig nach gefrickel. Ich bin VHDL Anfänger, da bleibe ich für das bisschen coden lieber erstmal bei der Orginal-IDE. Das mit dem Refactory war gestern auch nur eine spontane Idee weil ichs von Java/Eclips kannte. Bin gerade dabei eine Entity in ein anderes Projekt zu integrieren. Ist eine ehemaliges Top-Modul, d.h. FPGA-Anschlusspins und die ganze Logik alles in einer Entity. Da heißen die Signale nach außen Pin1, Pin2, etc... was natürlich nicht mehr passt weil es jetzt interne Signale sind. Das werd ich jetzt händisch umbenennen. Und zwischendrin oft synthetisieren damit ich nicht nach einer halben Stunde editieren einen Code habe der fies versteckt einen Fehler hat... Vielen Dank an alle für die Tipps... Randy
Hi Randy, zum Refactoring kann ich den ich den Editor von Sigasi empfehlen. Ich habe damit ein Projekt von ca. 15 Files (incl. Testbenches) "umgestülpt", was mit search and replace so mühselig gewesen wäre, dass sich vorher keiner dran getraut hatte. Die wave-Files für die Simulation haben allerdings manuelle Nachbearbeitung verlangt. http://stefan.endrullis.de/de/vhdl_editors.html ist ein guter Startpunkt für die weitere Suche.
Ich kann ich mich Mangomichl nur anschließen: Der Editor Sigasi HDT erlaubt das zuverlässige Renaming von Variablen, Funktionen etc. Er basiert auf dem Eclipse-Framework und besitzt für VHDL eine Echtzeit Syntax- und Semantikkontrolle (wie man es von Java kennt). Ich habe Sigasi HDT bis vor einem Jahr noch benutzt, denn da war er noch im Betastadium und kostenlos. Jetzt kostet eine Lizenz 300 Euro pro Jahr (glaube ich). Inwieweit er sich seitdem verbessert hat, kann ich nicht beurteilen. Für kommerzielle Produkte lohnt sich die Investition aber allemal, da man damit super produktiv arbeiten kann. Ich werde mir wahrscheinlich nächsten Monat eine Lizenz kaufen.
Oh ist doch ein bisschen teurer, nämlich 499 Euro/Jahr: http://www.sigasi.com/pricing Aber man kann sich immerhin eine Trial runterladen...
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.