Frage zum Warning Latch

Gast #1562691
Lesenswert?
• ▲
▼
Hallo

eine Frage zum Latch. Ich möchte auf einem 12 bit Ausgang entweder ein 
Signal oder das anderes Signal geben also ein Switch. Im 3 fall soll er 
auf beim letzten Wert bleiben. Dazu habe ich folgendes programmiert :
1
FLASH_ENABLE                          : in   std_logic;  
2
-----------
3
Signal BRAM_WRITE_OR_READ_ENABLE      : std_logic:='0';
4
Signal BRAM_OUT_DATA_1                : std_logic_vector  (11 downto 0);
5
Signal SWITCH                         : std_logic_vector (1 downto 0);
6

7
 begin
8
SWITCH <= (BRAM_WRITE_OR_READ_ENABLE, FLASH_ENABLE);
9

10

11
with SWITCH select  
12
  WEITERGABE_DATEN_BRAM<=  BRAM_OUT_DATA_2     when  "01",
13
                  BRAM_OUT_DATA_1              when  "11",
14
                  WEITERGABE_DATEN_BRAM        when others;

Jetzt kommt die Warnung Latch gefunden... und im Prinzip will ich ja 
auch ein Speicherzustand.

So ist das gutes Design? Oder kann ich die auch schöner umschreiben, so 
das das Signal immer hin und her Schaltet und beim 3 Fall da bleibt wo 
er zu letzt war.



Danke


Gruß Igor
Gast #1562766
Lesenswert?
• ▲
▼
Hi, naja der Switch ist kein physikalischer switch, das FLASH_ENABLE 
wird nach eine Trigger erzeugt und dauert dem entsprechend, und 
BRAM_WRITE_OR_READ_ENABLE wird in einem Zustandsautomat definiert. Also 
alles eigentlich mit Takten.


Ändert das was?
(Firma: www.collion.de) Persönliche Seite #1567600
Lesenswert?
• ▲
▼
Igor schrieb:
> Hi, naja der Switch ist kein physikalischer switch, das FLASH_ENABLE
> wird nach eine Trigger erzeugt und dauert dem entsprechend, und
> BRAM_WRITE_OR_READ_ENABLE wird in einem Zustandsautomat definiert. Also
> alles eigentlich mit Takten.

Wenn Du eh alles getaktest hast, was hindert Dich dann dein CASE in 
einem getakteten Prozess zu stecken? Damit hast Du die unterschiedlichen 
Latenzen deiner beiden Signale vom Switchvector elemeniert und XST gibt 
auch Ruhe...

Gruß

Andreas

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [vhdl]VHDL-Code[/vhdl]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.