Gibt es eine Möglichkeit aus einem Prozess heraus eine Variable in einem anderen Prozess zu modifizieren? (Xilinx EDE) Beim Versuch eine shared variable zu verwenden kommt bei mir der Fehler: "SHARED variables are not supported for synthesis." Ich möchte einen Frequenzzähler bauen. In einem Prozess der jede Sekunde duchlaufen wird soll der Counterwert aus einem anderen Prozess ausgewertet und zurückgesetzt werden. Verwende ich in einem Prozess zwei *'event für den Sekundentakt und für den zu zählenden Impuls bekomme ich ein Bad Synchroneous Design.
> In einem Prozess der jede >Sekunde duchlaufen wird soll der Counterwert aus einem anderen Prozess >ausgewertet und zurückgesetzt werden. Nimm halt ein Signal.
du schau mal hier da hat einer das was du willst schon fertig programmiert in einen 9572 in vhdl. code gibt es da auch. ist bis 200mhz wie da steht. http://www.dl1dsn.de/projects/counter/counter.htm mfg
Hab ich gemacht. In der Simulation funtzt das nicht. Hab den Code mal angehängt. Unter anderem kommt die Meldung: Analyzing Entity <indexer3> (Architecture <behavioral>). INFO:Xst:1304 - Contents of register <count_inp> in unit <indexer3> never changes during circuit operation. The register is replaced by logic. Entity <indexer3> analyzed. Unit <indexer3> generated.
Danke für die Tips! Setze zufällig einen 9572 ein :-) In dem Beispiel wird nur währens des '1' Signals eines heruntergeteilten Basistaktes gemessen. Ich hätte aber gerne sofort den Counterwert der letzten Sekunde. (Wenige Signale mit stark schwankender Pulspause). Gruß Andre
Du kannst froh sein, dass Dein Code überhaupt synthetisiert wird. Du weist "count_inp" innerhalb zweier Prozesse Werte zu. Das ist eigentlich nicht erlaubt. Im letzten Prozesse setzt Du "count_inp" getaktet auf "00000000". Das passiert genau einmal während der Laufzeit (wenn clk_scaler(19) '1' wird). Der Synthesizer hat sich offenbar gedacht, dass er dann "count_inp" auch gleich permanent auf "00000000" setzen kann. Wenn Du die Optimierung für "count_inp" abschaltest, dann geht's gar nicht mehr zu synthetisieren ("Multi-Source"-Fehler).
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.