hallo, ich habe ein Signal mit einer steigenden und fallenden Flanke, das zyklisch wiederholt wird _______|---------------|_________________|-----------|______________ Wie ist es möglich nur an der fallenden Flanke einen Puls zu erzeugen ? Das ganze soll so aussehen _______|--------------|___________________|-----------|_____________ ______________________|-|______________________________|-|__________ Ist so etwas möglich ? Wenn ja wie ?????
in etwa so: signal old_state: std_logic; process(clk) if reset = '1' then out <= '0'; old_state <= '0'; elsif rising_edge(clk) then if (old_state = '1' and in='0') then out <= '1; else out <= '0'; end if; old_state <= in; end if;
process(clk, nReset) begin if nReset='0' then ... elsif clk'event and clk='1' then s1 <= DeinSignal; s2 <= s1; end if; end process; Signal_FALL <= not s1 and s2; --das ist jetzt die fallende Flanke Signal_RISE <= s1 and not s2; -- und das ist die steigende Flanke Bitteschön, Kest
@ Kest: Macht es eigentlich einen Unterschied, ob die Signal FALL und RISE innerhalb des Prozesses stehen, oder nicht?!? Gurß Tom
Hallo geht auch mit einem NOR-Gatter und einer ungeraden Anzahl von Invertern. Signal einmal direkt ans NOR und einmal auf den ersten Inverter. Die Inverter alle in Reihe schalten und den letzten Ausgang auf das NOR-Gatter. Am Ausgang des NOR-Gatters ist dann das gewünschte Signal.
Ein Unterschied besteht darin, dass, wenn die Signale im Prozess stehen, FlipFlops entstehen. Sonst hast Du einfach einen (oder zwei) Gatter. Gruß Kest
@Karadur: hab jetzt nicht verstanden, wie es funktionieren soll (mit NOR). Wo ist die Zeitliche Abhängigkeit? Ohne FlipFlops klappt es nähmlich nicht. Kest
@Karadur: Du meinst xor, nicht nor, oder? Sonst versteh ich es nicht. Aber selbst dann bekommst du doch auch bei Steigender Flanke einen Impuls. Gruß Tom
das geht schon mit dem NOR, es gibt nur bei der fallenden Flanke einen Impuls. In "programmierbarer Logik" würde ich das aber nicht empfehlen, solche Designs können ein lustiges Eigenleben entwickeln. (Aber es steht natürlich jedem frei, seinem Chef zu erklären, warum man 2 Wochen mehr Fehlersuche gebraucht hat)
ahh, ja, stimmt. Denkfehler. (wenn "ungerade" steht sollte man auch "ungerade" denken)
@ TOM mit NOR bei der fallenden Flanke mit NAND an der steigenden Flanke mit XOR an beiden Flanken Dieses klappt mit Gattern hervorragend. Ich hatte diesen Thread über die Übersicht gesehen und nicht gesehen das er in der Gruppe "Programmierbare Logik" steht. Hier wird wahrscheinlich jede Optimierung die Anzahl der Inverter auf 1 setzen und die Laufzeiten die der Schaltung zu Grunde liegen werden in FPGAs wahrscheinlich zu kurz sein.
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.