1 Bit Speicher in CPLD ohne Takt

Gast #4384522
Lesenswert?

Hallo zusammen,

in einem ungetaktetem CPLD (Coolrunner) möchte ich ein externes HW 
Fehlersignal (Err_HW) speichern, so dass dieses Fehlersignal intern 
(Err_int) weiterverarbeitet werden kann.
Der Status von Err_int soll beibehalten werden, auch wenn der HW Fehler 
wieder zurück geht. Ein Reset soll den gespeicherten Wert wieder 
verwerfen.

Welches VHDL Konstrukt ist hierfür das Richtige?

Err_HW:  0 Fehler; 1 kein Fehler
Err_int: 0 Fehler; 1 kein Fehler
RST:     Reset bei steigender Flanke

Err_HW -> "Speicher" -> Err_int
              ^
       RST  --^


Vielen Dank für eure Hilfe,
Ben
Moderator (Firma: Titel) Persönliche Seite #4384713
Lesenswert?

Ben schrieb:
> RST:     Reset bei steigender Flanke
Ein flankengesteuerter Reset? Das ist mal eine seltsame Forderung.
Denn damit ist dann eigentlich der Reset ein Takteingang und gegenüber 
Err_HW nachrangig.

Wie auch immmer...
> Welches VHDL Konstrukt ist hierfür das Richtige?
1
signal err_int : std_logic;
2
:
3
:
4
    process (err_hw, rst) begin
5
       if (err_hw='1') then
6
           err_int<='1';
7
       elsif rising_edge(rst) then
8
           err_int<='0';
9
       end if;
10
    end process;
Durch diese extrem asynchrone Geschichte hast du natürlich irgendwelchen 
seltsamen Effekten Tür und Tor geöffnet.
Siehe dort: 
http://www.lothar-miller.de/s9y/categories/35-Einsynchronisieren
Du musst also mindestens noch das err_int einsynchronisieren.

Was du eigentlich willst ist sowas:
http://www.lothar-miller.de/s9y/archives/19-Kurzer-Spike-in-Puls-umgewandelt.html
Gast #4385374
Lesenswert?

Danke für eure Antworten soweit.

1) Welche bessere Lösung gäbe es, wenn ich kein flankengesteuertes Reset 
verwenden würde?

2) Im betroffenen CPLD gibt es keinen Takt, sondern nur rein 
kombinatorische Logik.
Damit fällt dann diese Lösung doch weg, oder? Diese kannte ich schon von 
deiner Seite und habe ich in einem FPGA erfolgreich eingesetzt.
http://www.lothar-miller.de/s9y/archives/19-Kurzer-Spike-in-Puls-umgewandelt.html

Gruß,
Ben

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