Hallo, ich habe noch eine Frage. Würde mich freuen, wenn ihr mir da weiter helfen könntet. Ich habe mir überlegt, wenn ich mein VHDL-Programm sehr Modular aufbaue ist das super wegen simulierbarkeit und lesbarkeit... Jedoch habe ich mir auch überlegt, dass ich sehr viele Takte verschenke... Man soll ja immer synchron arbeiten - also packe ich alles in ein getakteten Prozess. Jedoch benötige ich dann mindestens zwei Takte zusätzlich oder? Ein damit meine Unter-Entity das Befehls-Flag mitbekommt und ein Takt bis das Acknowledge wieder in der Über-Entiy erkannt wird. Ist das richtig oder mache ich da was falsch? Oder sollte ich doch mehr mit Variablen oder Kombinatorik arbeiten? Danke für eure Antworten. Grüße Torsten
Das ist jetzt der dritte Thread den du oeffnest. Probiers halt mal mit einem Testdesign aus. Da keiner deine Messbox kennt, weder die Schaltung noch dein FPGA Design, kann dir auch keiner wirklich helfen. Also wenn du bei solchen Fragen nicht mehr weiterweisst und du gleichzeitig eine DDR2 Controller erweitern willst und gleichzeitig deine Messbox komplett "umstricken" willst, kommen mir wirklich die Zweifel ob du dich nicht ein wenig ueberforderst... Ralf
Torsten Müller schrieb: > Man soll ja immer synchron arbeiten - Hier liegt er schon, der Knackpunkt: du mußt ja nicht in jedem Modul "so tun", als ob es an die feindliche asynchrone Umwelt angeschlossen wäre und jedes Signal einsynchronisieren... > also packe ich alles in ein getakteten Prozess. Jedoch benötige ich dann > mindestens zwei Takte zusätzlich oder? > Ein damit meine Unter-Entity das Befehls-Flag mitbekommt und > ein Takt bis das Acknowledge wieder in der Über-Entiy erkannt wird. > Ist das richtig oder mache ich da was falsch? Ja und ja. Man muss ja wie gesagt nicht jedes Signal einsynchronisieren und nicht jede Kommunikation ist zwingend bidirektional. Es kann durchaus sein, dass es Module gibt, die eigentlich immer was entgegennehmen können (z.B. Zähler, PWM...) wozu dann warten? > Oder sollte ich doch mehr mit Variablen oder Kombinatorik arbeiten? Ja tu das. Das schadet nie, diesen Prozess nennt man Lernen... ;-)
@Ralf Ich möchte hier niemanden nerven. Ich dachte, dass diese Frage sehr allgemein ist und nicht all zu viel mit meiner Messbox zu tun hat. Ich kann hier in der Arbeit leider niemanden Fragen wegen Erfahrungswerten, da sich hier niemand mit VHDL auskennt. Und in dem Buch, was ich hier habe, sind solche Feinheiten/Erfahrungswerte nicht drin oder ich habe Sie überlesen... Ich kann mir zwar mein Teil denken, jedoch ist es auch mal gut eine Bestätigung zu bekommen, das die Gedanken nicht völlig falsch sind. @Lothar Danke für die Antwort.
Lothar Miller schrieb: > Torsten Müller schrieb: >> Man soll ja immer synchron arbeiten - > Hier liegt er schon, der Knackpunkt: du mußt ja nicht in jedem Modul "so > tun", als ob es an die feindliche asynchrone Umwelt angeschlossen wäre > und jedes Signal einsynchronisieren... Letztendlich musst du die Submodule aus deinem Toplevel-Modul einfach kombinatorisch ansteuern anstatt mit einem Ausgangsregister und schon ist dein Delay weg. Natürlich dürfen dass nur intern generierte Steuersignale sein.
Torsten Müller schrieb: > Jedoch habe ich mir auch überlegt, dass ich sehr viele Takte > verschenke... ?????????????
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.