Verilog / Altera De2 Parameter an Task übergeben

Gast #3743887
Lesenswert?

Hiho, ich muss Euch mal wieder um etwas Hilfe bitten.

Die letzten zwei Tage habe ich leider vergeblich versucht an meinen Task 
Parameter weiter zu geben. Ich hoffe ihr könnt mir sagen, warum das 
nicht funktioniert.

Hier mal ein Beispiel wie ich mir das gedacht habe:

reg [30:0] Wert1;
reg [30:0] Wert2;


Innerhalb einer if-else Anweisung wird nun ein Wert zugewiesen, bsp.:

Wert1 = 5;          // Wertzuweisung
Wert2 = 6;
task1(Wert1, Wert2); // Task Aufrug


task1;              // Der Task, an den Parameter übergeben werden 
sollen

input Wert1;
input Wert2;
reg [30:0] Wert1;
reg [30:0] Wert2;

Leider kommen diese Werte nie in meinem Task an, was mache ich falsch?

Vielen Dank für Eure Hilfe!
Moderator (Firma: Titel) Persönliche Seite #3744136
Lesenswert?

Christian Becker schrieb:
> Ich benötige die Tasks dringend.
Glaube ich dir nicht.

> Ich hab innerhalb der Task led lampen am FPGA angesteuert, die bei
> bestimmten Werten Leuchten oder eben nicht.
Das geht mit Sicherheit auch ohne Tasks.

Ich hatte schon gefragt: wie hast du es festgestellt, dass die Werte 
nicht "übergeben" werden? Hast du eine Simulation/Testbench? Du könntest 
natürlich auch einfach erst mal deinen geheimen Code, der Probleme 
macht, hier anhängen.

Zur Erinnerung: ein Task macht etwas ganz anderes als du denkst und dir 
wünschst. Das ist einfach so...
Gast #3744177
Lesenswert?

Das war die Antwort auf deine Frage!

Ich stelle es fest, indem ich innerhalb der Task LEDs zum leuchten 
bringe. So weiß ich ob die Werte in der Task angekommen sind.

Und ich benötige tasks, da dieser Code Abschnitt sehr häufig aufgerufen 
wird und es meines Wissens her nach keine sinnvolle Alternative zu Tasks 
gibt.

Der Code kann ich schlecht hier veröffentlichen, da es große Teile 
meiner BA sind...

Habe das Problem aber inzwischen selbst gelöst, der obenstehende Aufbau 
ist korrekt und es gab bei mir nur eine doppelt Belegung des LEDs, die 
ich als Testindikator verwendet habe.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren