Gast
#2221307
Hallo, Ich versuche grad ein Design-Beispiel für ein Spartan 3E Starter-Kit nachzuvollziehen. Es handelt sich dabei um ein Beispiel für die Benutzung des Rotary-Push-Buttons. Hier das Dokument zum Beispiel: http://www.xilinx.com/products/boards/s3estarter/files/s3esk_rotary_encoder_interface.pdf Ich habe nun das Problem nachzuvollziehen wie der folgende Prozess im Zusammenhang mit dem Signal delay_rotary_q1 funktioniert. Hier der Code:
1 | |
2 | |
3 | |
4 | |
5 | |
6 | |
7 | |
8 | |
9 | |
10 | |
11 | |
12 | |
13 | |
14 | |
15 | |
16 | |
17 | |
18 | |
19 | |
20 | |
21 | |
22 | |
23 | |
24 | |
25 | |
Hier der Gesamtcode: http://www.xilinx.com/products/boards/s3estarter/files/s3esk_rotary_encoder_interface.zip Mir ist nicht ganz klar wie das ganze funktioniert. Der Name des Signals "delay_rotary_q1" impliziert, dass dort eine Verzögerung erzeugt wird. Diese Verzögerung müßte nun genau eine Clock-Periode sein. Das aber nur unter den Voraussetzungen, dass der Zustand des Signals im nächsten Aufruf des Prozesses erhalten bleibt und die Signale erst am Ende des Prozesses aktualisiert werden. Da die zweite Voraussetzung zutrifft, bleibt noch die Signalerhaltung. Passiert das in dem Beispiel, wenn ja wieso? Kann mir jemand helfen das zu verstehen? Vielen Dank. MfG, Michael