Bonjour,
Je prépare une séance d'initiation au FPGA dans un club d'electro. Je n'ai pas une grande expérience mais j'aime bien, et j'aime surtout comprendre ce que je fait.
J'ai trouvé une source sur le net d'un petit projet sympa qui pourrait servir de base à ma séance.
Par contre, certain choix d’écriture me laisse perplexe.
Dans l'extrait :
1) Pourquoi utiliser un STD_LOGIC_VECTOR (0 downto 0) en lieu et place d'un STD_LOGIC ? (surtout qu'a la fin, il est obligé de "caster" pour revenir en STD_LOGIC).
2) L'utilisation du signal "cpt est bizarre pour moi. (cpt +1) donc j'en déduit qu'il additionne 1 sur un seul bit, et comme il n'y a pas de retenue possible, on passe alors de 0 à 1 à 0 etc..
Pourquoi ne pas avoir fait un NOT ? C'est a cause de cette addition qu'il utilise un Vector ?
Merci pour votre aide,
amicalement.
DTR
voici l'extrait en question :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 ENTITY OneClock IS PORT (clock_f : IN STD_LOGIC; clock_f_out : OUT STD_LOGIC); END OneClock; ARCHITECTURE Archi OF OneClock IS SIGNAL cpt : STD_LOGIC_VECTOR(0 DOWNTO 0); BEGIN PROCESS (clock_f) BEGIN IF clock_f = '0' AND clock_f'event THEN cpt <= cpt + 1; END IF; END PROCESS; clock_f_out <= cpt(0); END Archi;
Partager