Hallo Leute, ich bin neu hier. Wie bei sovielen führt mein Einstieg in den Entwurf digitaler Schaltungen über die DCF Funkuhr. Meine Frage: ich habe jetzt zwei architectures für einen DCF Empfänger entworfen, die eine erkennt Fehler im Signal, die andere nicht. Ist der Code, den ich geschrieben habe synthetisierbar, oder nicht? Über Kritik und Verbesserungsvorschläge bin ich sehr dankbar! Zerpflückt mich! Danke schon mal!
Hancock schrieb: > Über Kritik und Verbesserungsvorschläge bin ich sehr dankbar! > Zerpflückt mich! Sieh dir mal die Lösung deines Kollegen an: Beitrag "VHDL, DFC77, riesen Problem!" Die Postulate gelten auch für dich... ;-)
1 | dff1 : PROCESS(clk_1ms, reset) -- Erstes D-FF zum synchronisieren von dcfsig |
2 | BEGIN
|
3 | IF(reset = '0') THEN |
4 | temp1 <= '0'; |
5 | ELSIF rising_edge(clk_1ms) THEN |
6 | temp1 <= dcfsig; |
7 | END IF; |
8 | END PROCESS; |
9 | |
10 | dff2 : PROCESS(clk_1ms, reset) -- Zweites D-FF zum synchronisieren von dcfsig |
11 | BEGIN
|
12 | IF(reset = '0') THEN |
13 | temp2 <= '0'; |
14 | ELSIF rising_edge(clk_1ms) THEN |
15 | temp2 <= temp1; |
16 | END IF; |
17 | END PROCESS; |
18 | |
19 | dff3 : PROCESS(clk_1ms, reset) -- Drittes D-FF zum synchronisieren von dcfsig |
20 | BEGIN
|
21 | IF(reset = '0') THEN |
22 | temp3 <= '0'; |
23 | ELSIF rising_edge(clk_1ms) THEN |
24 | temp3 <= temp2; |
25 | END IF; |
26 | END PROCESS; |
Das geht kürzer: Beitrag "Einsynchronsieren mit 2 FFs" BTW: Du brauchst nicht die ganzen Resets. Glaub mir... Beitrag "(asynchronen) Reset vermeiden. oder nicht?"
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.