Étape 6: Mettre tous ensemble
Tous les petits morceaux de l’additionneur 4 bits ont été créés. Les pièces que nous avons laissé sont à ajouter les composants dans les taches nécessaires et puis connectez-les ensemble (partie déroutante).
Jusqu'à présent, nous avons la clock_generator et la state_machine dans notre 4BitAdder. (clock_generator devrait se situer à gauche de notre machine à États).
1) ajoutez 8 16 entrées MUX (161MUX).
a) élargir les autres dossier sous notre bibliothèque par défaut.
b) développez maxplus2.
c) ajouter la multiplexeur 16 entrées.
2) organiser les 8 MUXs en deux rangées, long de quatre. Ils devraient être à droite de la state_machine (et, par conséquent, les clock_generator ainsi). Il est plus facile s’ils sont légèrement au-dessous de la state_machine.
un) les MUXs doivent être tournés afin qu’une sortie de l’est vers le bas.
b) laisser 1 bloc d’espace entre chaque MUX horizontalement et 3-4 blocs verticalement entre les deux rangées.
Chaque ensemble de 4 MUXs prendre en entrées. Le signal que nous envoyons aux entrées de sélection décide quel signal apparaîtra à la sortie.
3) étiqueter l’ensemble haut de MUXs RegA3-RegA0, de gauche à droite, indiquant le bit 0 3 bits pour le numéro A.
4) label le jeu de fond de MUXs RegB3-RegB0.
Voir photo
5) Ajouter tongs 8D.
a) tongs one devraient descendre en dessous de chaque MUX.
Le D tongs contribuera à mettre le MUX sur l’horloge. Quel que soit le signal est choisi par le MUX serait envoyé sur son chemin, mais en ajoutant le flip flop, il ne sera envoyée quand vient le signal d’horloge.
6) ajouter 4 7_segment_display.
a) tous les quatre seront à droite du MUX, avec environ 3 pâtés de maisons de l’espace entre eux et le MUX.
b) deux des quatre sera au-dessus des MUXs, mais en restant à droite d'entre eux.
c) l’un de le 7_segment_displays ira entre les deux ensembles de MUXs.
d) le dernier d'entre eux iront sous le jeu de fond de MUXs.
Le 7_segment_displays va nous aider à voir ce qui se passe dans notre circuit. On nous permet de voir quels numéros nous mettrons dans le circuit. Un autre nous dit où est la machine d’État, avec seulement 3 D flip flop, l’aller choix entre 0 et 7. Les deux derniers affichages de ce groupe sont juste pour s’assurer que le circuit fonctionne correctement. Le MUXs et D flip flops Loi comme leviers ; avec le bon signal, le signal d’un MUX sera envoyé à celui à sa droite. Cela déplace également le bit plus à droite dans l’additionneur par la suite. Le 7_segment_displays nous dira ce qui sort de chaque groupe de MUXs ; Cela permet de dépanner des problèmes.
e) qualifier le haut de la page 7_segment_display de nombre.
f) qualifier l’affichage 2ème StateMachine.
g) qualifier l’affichage 3ème RegA.
h) qualifier dont l’affichage 4e.
Voir photo
7) ajouter deux MUXs de 16 entrées plus, un sur l’autre, avec la sortie du haut vers le bas et la sortie du bas vers le haut.
un) ces MUXs devraient être à droite et à peu près in-between l’autre jeu de MUXs. (Ces MUX définit également les vers la droite de l’écran de 7_segment pour la partie supérieure du MUXs.
b) marquer le haut de la page AddBitA MUX.
c) étiquette bas MUX AddBitB.
8) ajouter le full_adder à droite de la deux AddBit MUXs, entre eux verticalement.
9) ajouter un flip D flop à droite de la full_adder, placez-la près de la moitié d’un bloc inférieur.
10) ajouter que 4 MUXs de 16 entrées plus vers la droite du flip T flop. Laissez 1 bloc d’espace entre chaque composant.
une) étiquette le MUXs RegC3-RegC0, de gauche à droite.
11) ajoutez tongs 4D sous chaque MUX.
12) ajoutez un 7_segment_display à la droite du flip flop plus à droite.
Voir les 2 photos
Reliez 13) sortie Q1 de la state_machine de SEL1 de chaque MUX.
Reliez 14) sortie Q1 de la state_machine à entrée Z de la 7_segment_display étiqueté StateMachine.
Reliez 15) sortie Q2 de la state_machine de SEL2 de chaque MUX.
Reliez 16) sortie Q2 de la state_machine à l’entrée Y de la 7_segment_display étiqueté StateMachine.
Reliez 17) sortie Q3 de la state_machine de SEL3 de chaque MUX.
Reliez 18) sortie Q3 de la state_machine à l’entrée X de la 7_segment_display étiqueté StateMachine.
19) Connectez la sortie de chaque MUX à l’entrée D du flip flop en dessous D.
20) les MUXs marqué AddBitA et AddBitB devraient avoir leurs sorties connectés à X et Y de la full_adder (une sortie à l’entrée).
21) Effectuez la sortie Q du flip flop ci-dessous RegA3 MUX D entrées IN0, IN2-IN5, IN14 et 15 de la RegA3 MUX.
22) également connecter cette même sortie Q aux entrées IN6-IN13 du MUX RegA2.
23) Répétez les étapes 16 et 17 pour le flip D flop ci-dessous chaque RegA2-RegA0.
a) la sortie Q du flip flop pour RegA2-RegA0 D se connecte toujours les mêmes entrées du Registre au-dessus et à droite de celui-ci, à l’instar de RegA3.
b) pour l’étape 17 du flip D flop ci-dessous RegA0, Q se connecte aux entrées IN6-IN13 de RegA3.
Voir photo
24) connecter la sortie Q de la bascule D flop ci-dessous RegA3 entrer 7_segment_decoder W de la RegA.
25) connecter la sortie Q de la bascule D flop ci-dessous RegA2 à l’entrée de X de la RegA.
26) connecter la sortie Q de la bascule D flop ci-dessous RegA1 à l’entrée Y de la RegA.
27) connecter la sortie Q de la bascule D flop ci-dessous RegA0 à l’entrée de Z de la RegA.
28) Effectuez la sortie Q du flip flop ci-dessous RegB3 MUX D entrées IN0-IN2, IN4, IN5, IN14 et 15 de la RegB3 MUX.
29) Reliez la sortie même Q aux entrées IN6-IN13 de RegB2 MUX.
30) Répétez les étapes 23 et 24 pour D flip flop ci-dessous RegB2-RegB0.
a) la sortie Q du flip flop pour RegB2-RegB0 D se connecte toujours les mêmes entrées du Registre au-dessus et à droite de celui-ci, à l’instar de RegB3.
b) pour l’étape 24 du flip D flop ci-dessous RegB0, Q se connecte aux entrées IN6-IN13 de RegB3.
Voir photo
Reliez 31) sortie Q du flip flop ci-dessous RegB3 à l’entrée W de dont 7_segment_decoder D.
Reliez 32) sortie Q du flip flop ci-dessous RegB2 à l’entrée de X de dont D.
Reliez 33) sortie Q du flip flop ci-dessous RegB1 à l’entrée Y de dont D.
Reliez 34) sortie Q du flip flop ci-dessous RegB0 à l’entrée de Z de dont D.
35) Effectuez la sortie Q du flip flop ci-dessous RegC3 MUX D entrées IN0-IN4, IN14 et 15 de RegC3 MUX.
36) Reliez la même sortie Q de la bascule D flop aux entrées IN6-IN13 de RegC2.
37) Répétez les étapes 30 et 31 pour chaque chiquenaude D flop ci-dessous RegC2-RegC0.
a) la sortie Q du flip flop pour RegC2-RegC0 D se connecte toujours les mêmes entrées du Registre au-dessus et à droite de celui-ci, à l’instar de RegC3.
b) la sortie Q du flip flop pour RegC0 D ne se connecte pas à n’importe quelles entrées de RegC3.
Voir photo
Reliez 38) sortie Q du flip flop ci-dessous RegC3 entrer 7_segment_Decoder W de RegC D.
Reliez 39) sortie Q du flip flop ci-dessous RegC2 à l’entrée de X de RegC D.
Reliez 40) sortie Q du flip flop ci-dessous RegC1 à l’entrée Y de RegC D.
Reliez 41) sortie Q du flip flop ci-dessous RegC0 à l’entrée de Z de RegC D.
42) Connect sortie Q de la D flip flop ci-dessous RegA0 à IN6-15 d’entrée de AddBitA MUX.
43) Connect sortie Q de la D flip flop ci-dessous RegB0 à IN6-15 d’entrée de AddBitB MUX.
Remarque : Le reste de ces entrées et SEL0 pour les deux de ces MUXs sera laissé sans lien. Cela peut causer des problèmes dans certains circuits, mais ne pas pour celui-ci. Sachez que si elle cause un problème, reliant les entrées à VCC ou GND souvent le problème sera résolu. SCR est comme 1, GND est comme 0.
Voir photo
44) Branchez la sortie somme des full_adder aux entrées IN6-IN13 de RegC3 MUX.
Reliez 45) sortie Co de full_adder à l’entrée D du flip D flop à sa droite.
46) connecter la sortie Q de la bascule D flop à l’entrée de Ci de la full_adder.
Voir photo
47) ajouter 3 broches d’entrée à gauche de tous vos composants, l’un à gauche de clock_generator et les deux autres à gauche de la state_machine.
48) étiquette l’entrée à gauche de l’horloge de clock_generator.
49) Connectez-le à l’entrée de clock_generator.
50) Connectez la sortie de clock_generator à l’entrée d’horloge de chaque flop flip D.
51) Connectez la même sortie à l’entrée d’horloge de la state_machine.
52) étiquette une broche d’entrée à gauche de la state_machine contrôle.
53) connecter le contrôle au contrôle label d’entrée de le state_machine.
54) étiquette la troisième broche d’entrée Clear.
55) connect Clear à l’entrée claire de la state_machine.
56) connecter la broche d’entrée claire même à CLRN de chaque flop flip D.
57) ajouter 6 broches d’entrées ci-dessus le MUX RegA3.
58) étiquette de l’axe d’entrée première LoadA.
59) Connectez LoadA à SEL0 de RegA3-RegA0.
60) la deuxième entrée pin Bit3 label.
61) Connect Bit3 IN1 de RegA3, IN3 de RegB3, IN5 de RegC3 et d’entrée W de la 7_segment_display étiqueté numéro.
62) étiquette la troisième broche d’entrée Bit2.
63) Connectez Bit2 IN1 de RegA2, IN3 de RegB2, IN5 de RegC2 et X de la 7_segment_display étiqueté numéro d’entrée.
64) la quatrième entrée pin Bit1 label.
65) Connectez le Bit 1 à IN1 de RegA1, IN3 de RegB1, IN5 de RegC1 et l’entrée Y de la 7_segment_display étiqueté numéro.
66) la cinquième entrée pin Bit0 label.
67) Connectez Bit0 IN1 de RegA0, IN3 de RegB0, IN5 de RegC0 et Z de la 7_segment_display étiqueté numéro d’entrée.
68) étiquette la sixième entrée pin GN.
69) Connectez le Gn à l’entrée de GN de chaque MUX.
70) ajouter une broche d’entrée à gauche du MUX RegB3.
71) étiquetez-la LoadB.
72) connecter LoadB à SEL0 de RegB3-RegB0.
73) ajouter une broche d’entrée à gauche du MUX RegC3.
74) étiquette de l’axe LoadC.
75) connecter LoadC à SEL0 de RegC3-RegC0.
76) ajouter 7 broches de sortie vers la droite de 7_segment_display étiqueté numéro.
77) étiqueter les produits InputA-InputG.
78) Branchez la sortie broches de sortie de A à G du nombre de leurs correspondants.
79) ajouter 7 broches de sortie vers la droite de 7_segment_display StateMachine.
80) étiqueter les produits StateMachineA-StateMachineG.
Épingles de sortie 81) sorties de Connect A-G de la StateMachine à leurs correspondants.
Voir photo
82) ajouter 7 broches de sortie vers la droite de 7_segment_display RegA.
83) étiqueter les produits RegAA-RegAG.
84) Reliez les sorties A à G du RegA à leurs broches de sortie correspondant.
85) ajouter 7 broches de sortie vers la droite de 7_segment_display dont.
86) étiqueter les sorties RegBA-Hervé.
87) Reliez les sorties A à G du dont à leurs broches de sortie correspondant.
88) ajouter 7 broches de sortie vers la droite de 7_segment_display RegC.
89) étiqueter les sorties SumA-SumG.
90) Reliez les sorties A-G de RegC à leurs broches de sortie correspondant.
Voir photo
91) enregistrez le fichier.
92) cliquez sur traitement.
93) descendre à commencer de Compilation (cela prendra quelques minutes).
Le programme peut venir avec quelques mises en garde, mais notre circuit devrait encore se charger pour le FPGA correctement.
Voir photo