Ontwerpen van een 4-bits Adder in Quartus II (6 / 7 stap)

Stap 6: Instellen van het allemaal samen



Alle kleinere stukken van de adder 4 bit zijn gemaakt. De onderdelen die we hebben verlaten zijn toe te voegen de componenten in de nodige plekken en sluit ze samen (het verwarrende deel).
Tot nu toe hebben we de clock_generator en de state_machine in onze 4BitAdder. (clock_generator moeten ergens aan de linkerkant van onze toestandsmachine.)
1) toevoegen 8 16-input MUX (161MUX).
a) Vouw de andere map onder onze standaardbibliotheek.
b) vouw maxplus2.
c) toevoegen de 16-input multiplexer.
2) regelen de 8 MUXs in twee rijen, vier lange. Zij moeten het recht van de state_machine (en dus ook de clock_generator). Het is makkelijker als ze iets onder de state_machine liggen.
a) de MUXs moeten worden gedraaid zodat het een uitgang naar beneden wordt geconfronteerd.
b) laat 1 blok van de ruimte tussen elk MUX horizontaal, en 3-4 blokken verticaal tussen de twee rijen.
Elke set van 4 MUXs nemen in ingangen. Het signaal dat we aan selectie ingangen afgeven beslist welke signaal zal verschijnen aan de uitgang.
3) label de bovenste set van MUXs RegA3-RegA0, van links naar rechts, met vermelding van de bits 3-bit 0 voor nummer A.
4) etiket de onderste set van MUXs RegB3-RegB0.
Zie foto
5) 8 D flip-flops toevoegen.
a) één flip-flops moeten gaan onder elke MUX.
De D-flip flops help om de MUX op de klok. Welk signaal wordt gekozen door de MUX zou worden gestuurd op weg, maar door toevoeging van de flip flop, het zal alleen worden verzonden als het kloksignaal gaat.
6) toevoegen 4 7_segment_display.
a) alle vier zal worden rechts van de MUX, met ongeveer 3 blokken van ruimte tussen hen en de MUX.
b) twee van de vier zullen boven de MUXs, maar nog steeds aan de rechterkant van hen.
c) een van de 7_segment_displays zal gaan tussen de twee sets van MUXs.
d) de laatstgenoemde zal gaan onder de onderste set van MUXs.
De 7_segment_displays kunnen we zien wat er gebeurt in onze schakeling. Een laat ons zien welke nummers we zullen het ophangen in het circuit. Een ander vertelt ons waar de toestandsmachine is, met slechts 3 D flip flop, keuze onderweg tussen 0 en 7.  De laatste twee displays van deze groep zijn alleen maar om ervoor te zorgen dat het circuit correct werkt. De MUXs en D flip flops handeling als shifters; met het juiste signaal, het signaal van één MUX toegestuurd degene aan de rechterkant. Dit verschuift ook de meest rechtse bit in de adder later. De 7_segment_displays zal ons vertellen wat is coming out van elke groep van MUXs; Dit kan worden gebruikt om trouble-shoot problemen.
e) label de hoogste 7_segment_display als getal.
f) label de 2de wilt gebruiken als StateMachine.
g) label het 3de display als RegA.
h) label de 4e wilt gebruiken als RegB.
Zie foto
7) Voeg twee meer 16-input MUXs, een boven het ander, met boven de uitgang naar beneden, en de bodem de uitgang naar boven.
a) deze MUXs moet naar rechts en ongeveer tussen de andere reeks van MUXs. (Deze MUX zijn ook aan de rechterkant van het scherm van de 7_segment voor de top set van MUXs.
b) label de bovenste MUX-AddBitA.
c) label onder MUX AddBitB.
8) toevoegen de full_adder aan de rechterkant van de twee AddBit-MUXs, tussen hen verticaal.
9) een D-flip flop aan het recht van de full_adder toevoegen, plaatst u het ongeveer de helft van een blok lager.
10) toevoegen dat 4 meer 16-input MUXs rechts van de T-flip flop. Laat 1 blok van de ruimte tussen elk onderdeel.
een) Label de MUXs RegC3-RegC0, van links naar rechts.
11) toevoegen 4 D flip-flops onder elke MUX.
12) het toevoegen van een 7_segment_display aan de rechterkant van de meest rechtse flip flop.
Bekijk 2 foto 's

13) verbinden uitgang Q1 van de state_machine om SEL1 van elke MUX.
14) verbinden uitgang Q1 van de state_machine ingang Z op de 7_segment_display met het label StateMachine.
15) verbinden uitgang W2 van de state_machine om SEL2 van elke MUX.
16) verbinden uitgang Q2 van de state_machine ingang Y op de 7_segment_display met het label StateMachine.
17) verbinden uitgang Q3 van de state_machine om SEL3 van elke MUX.
18) verbinden uitgang Q3 van de state_machine op X-ingang van de 7_segment_display met het label StateMachine.
19) verbinden met de uitvoer van elke MUX de D-ingang van de D-flip flop eronder.
20) de MUXs met het label AddBitA en AddBitB hun uitgangen aangesloten moeten op X en Y van de full_adder (een uitgang aan op een ingang).
21) verbinden met de Q-output van de D-flip flop hieronder RegA3 MUX ingangen IN0, IN2-IN5, IN14 en IN15 van de RegA3 MUX.
22) ook verbinden met deze dezelfde output van de Q-ingangen IN6-IN13 van de RegA2 MUX.
23) Herhaal stap 16 en 17 voor de D-flip flop onder elke RegA2-RegA0.
a) de Q-output van de D-flip flop voor RegA2-RegA0 verbindt altijd aan op de dezelfde ingangen van het register erboven en het recht van het, net als RegA3.
b) voor stap 17 van de D-flip flop hieronder RegA0 verbindt Q met ingangen IN6-IN13 van RegA3.
Zie foto
24) Sluit de Q-uitgang van de D-flip flop hieronder RegA3 W van RegA 7_segment_decoder invoeren.
25) Sluit de Q-uitgang van de D-flip flop onder RegA2 X van RegA invoeren.
26) Sluit de Q-uitgang van de D-flip flop hieronder RegA1 Y van RegA invoeren.
27) Sluit de Q-uitgang van de D-flip flop hieronder RegA0 Z van RegA invoeren.
28) verbinden met de Q-output van de D-flip flop hieronder RegB3 MUX ingangen IN0-IN2 IN4, IN5, IN14 en IN15 van de RegB3 MUX.
29) verbinden met dezelfde output Q ingangen IN6-IN13 van RegB2 MUX.
30) Herhaal stap 23 en 24 voor D flip flop onder RegB2-RegB0.
a) de Q-output van de D-flip flop voor RegB2-RegB0 verbindt altijd aan op de dezelfde ingangen van het register erboven en het recht van het, net als RegB3.
b) voor stap 24 van de D-flip flop hieronder RegB0 verbindt Q met ingangen IN6-IN13 van RegB3.
Zie foto
31) verbinden uitgang Q van de D-flip flop hieronder RegB3 W RegB 7_segment_decoder invoeren.
32) verbinden uitgang Q van de D-flip flop onder RegB2 om input X van RegB.
33) verbinden uitgang Q van de D-flip flop hieronder RegB1 Y van RegB invoeren.
34) verbinden uitgang Q van de D-flip flop onder RegB0 om input Z van RegB.
35) verbinden met de Q-output van de D-flip flop hieronder RegC3 MUX ingangen IN0-IN4, IN14 en IN15 van RegC3 MUX.
36) verbinden met de dezelfde Q-output van de D-flip flop ingangen IN6-IN13 van RegC2.
37) Herhaal stap 30 en 31 voor elk D-flip flop onder RegC2-RegC0.
a) de Q-output van de D-flip flop voor RegC2-RegC0 verbindt altijd aan op de dezelfde ingangen van het register erboven en het recht van het, net als RegC3.
b) de Q-output van de D-flip flop voor RegC0 maakt geen verbinding met alle ingangen van de RegC3.
Zie foto
38) verbinden uitgang Q van de D-flip flop hieronder RegC3 W RegC 7_segment_Decoder invoeren.
39) verbinden uitgang Q van de D-flip flop onder RegC2 om input X van RegC.
40) verbinden uitgang Q van de D-flip flop hieronder RegC1 Y van RegC invoeren.
41) verbinden uitgang Q van de D-flip flop onder RegC0 om input Z van RegC.
42) verbinden output Q van de D flip flop onder RegA0 naar input IN6-IN15 van AddBitA MUX.
43) verbinden output Q van de D flip flop onder RegB0 naar input IN6-IN15 van AddBitB MUX.
Opmerking: De rest van deze ingangen en SEL0 voor beide van deze MUXs zullen los zitten. Dit kan problemen veroorzaken in sommige circuits, maar doet niet voor deze. Wees ervan bewust dat als het veroorzaakt een probleem, de ingangen tot de VCC of GND met zal vaak het probleem bevestigen. VCC is als 1, GND is als 0.
Zie foto
44) Sluit de uitgang som van full_adder voor ingangen IN6-IN13 van RegC3 MUX.
45) verbinden uitgang Co van full_adder naar de D-ingang van de D-flip flop tot zijn recht.
46) Sluit de Q-uitgang van de D-flip flop aan op de ingang Ci van de full_adder.
Zie foto
47) 3 input pinnen aan de links van alle componenten, een aan de linkerkant van de clock_generator, en de andere twee links van de state_machine toevoegen.
48) label de ingang links van de clock_generator klok.
49) Sluit het aan op de ingang van clock_generator.
50) Sluit de output van clock_generator aan de ingang van de klok van elke D flip flop.
51) dezelfde output sluit aan op de ingang van de klok van de state_machine.
52) label één invoer pin aan de linkerkant van de state_machine controle.
53) besturingselement koppelen aan het besturingselement input label van de state_machine.
54) label de derde invoer pin Clear.
55) sluit duidelijk aan de duidelijke inbreng van de state_machine.
56) verbinden met dezelfde pincode van duidelijk input CLRN van elke D flip flop.
57) toevoegen 6 ingangen pinnen boven de RegA3 MUX.
58) label de eerste invoer pin LoadA.
59) verbinden met LoadA SEL0 van RegA3-RegA0.
60) label de tweede invoer pin Bit3.
61) verbinden Bit3 IN1 van RegA3, 3 van RegB3, IN5 van RegC3 en W van de invoer van het 7_segment_display label nummer.
62) label de derde invoer pin Bit2.
63) verbinden Bit2 IN1 van RegA2, 3 van RegB2, IN5 van RegC2, en input van X van de label nummer 7_segment_display.
64) label de vierde invoer pin Bit1.
65) sluit Bit 1 IN1 van RegA1, 3 van RegB1, IN5 van RegC1 en ingang Y van het 7_segment_display label nummer.
66) label de vijfde invoer pin Bit0.
67) verbinden Bit0 IN1 van RegA0, 3 van RegB0, IN5 van RegC0, en Z van het 7_segment_display label nummer input.
68) label de zesde invoer pin Gnaius
69) Gn sluit aan op de ingang GN van elke MUX.
70) toevoegen een invoer pin aan de linkerkant van RegB3 MUX.
71) het label LoadB.
72) verbinden met LoadB SEL0 van RegB3-RegB0.
73) toevoegen een invoer pin aan de linkerkant van RegC3 MUX.
74) label de pin LoadC.
75) verbinden met LoadC SEL0 van RegC3-RegC0.
76) 7 output pinnen aan het recht van 7_segment_display label nummer toevoegen.
77) label de uitgangen InputA-InputG.
78) Sluit de uitgang A-G van getal naar hun corresponderende output pinnen.
79) toevoegen 7 output pinnen aan de rechterkant van 7_segment_display StateMachine.
80) label de uitgangen StateMachineA-StateMachineG.
81) verbinden uitgangen A-G van StateMachine met hun overeenkomstige uitgang pinnen.
Zie foto
82) 7 output pinnen aan het recht van 7_segment_display RegA toevoegen.
83) label de uitgangen RegAA-RegAG.
84) Sluit de uitgangen A-G van RegA aan hun overeenkomstige output pinnen.
85) toevoegen 7 output pinnen aan de rechterkant van 7_segment_display RegB.
86) label de uitgangen RegBA-RegBG.
87) Sluit de uitgangen A-G van RegB naar hun overeenkomstige output pinnen.
88) toevoegen 7 output pinnen aan de rechterkant van 7_segment_display RegC.
89) label de uitgangen SumA-SumG.
90) Sluit de uitgangen A-G van RegC naar hun overeenkomstige output pinnen.
Zie foto
91) Sla het bestand.
92) Klik op verwerking.
93) afdalen naar Start compilatie (dit duurt een paar minuten).
Het programma kan komen met een paar waarschuwingen, maar onze schakeling moet nog steeds correct worden geladen aan de FPGA.
Zie foto

Gerelateerde Artikelen

Hoe het bouwen van een 8-bits Computer

Hoe het bouwen van een 8-bits Computer

bouwen van een 8-bits TTL Computergeluiden graag een ontmoedigend en ingewikkelde taak, of ten minste het deed voor mij toen ik begon op mijn reis naar het begrijpen van de architectuur van een fundamentele CPU. Wanneer het neer over het komt, is een
Ontwerpen van een romantische PCB met behulp van een gratis PCB design tool - EasyEDA

Ontwerpen van een romantische PCB met behulp van een gratis PCB design tool - EasyEDA

Heb je ooit geprobeerd om het ontwerpen van een PCB voor uw minnaar, kinderen of vrienden op een speciale dag? Waarom niet?PCB ook zou een geweldig cadeau dat openbaart dat uw creativiteit zal ook uw PCB-vaardigheden. Hier wil ik delen een romantisch
Ontwerpen van een mozaïek

Ontwerpen van een mozaïek

het doel van dit instructable moet u tonen hoe te ontwerpen en lay-out een mozaïek van lijntekeningen. Dit is vooral nuttig voor iedereen creëren van grotere mozaïeken. En wie een mozaïek instructie klasse leidt kan volgen de stappen voor het maken v
Ontwerpen van een elektrische uitrusting kamer

Ontwerpen van een elektrische uitrusting kamer

IntroductieDit is een instructie voor het ontwerpen van een kamer van elektrische apparatuur. Dit zijn de kamers die men vindt in grote gebouwen, dat is het centrum van alle elektrische systemen. Dit zal gaan door de fase van dit soort kamer, zoals b
Ontwerpen van een uitbreiding PCB (Intel® IoT)

Ontwerpen van een uitbreiding PCB (Intel® IoT)

Dit Instructable is geschreven als een uitgangspunt voor degenen die graag gebruik van de Intel® Edison aan haar volle potentieel, door het op te nemen in een volledig ontwikkelde ingesloten project. Om dit te doen, u zult waarschijnlijk moeten maken
Ontwerpen van een chocolade mal

Ontwerpen van een chocolade mal

u hebben allemaal gehoord van chocolade konijntjes, en je hebt waarschijnlijk al gegeten peanut butter cups - maar heb je ooit geprobeerd om uw eigen chocolade? Als u geïnteresseerd bent in goochelen professioneel uitziende bonbons, moet u een mal -
Ontwerpen van een draagbare schommel

Ontwerpen van een draagbare schommel

Hallo, mijn naam is Thibo Castelein en ik studeer Product Engineering aan Howest. Een van onze opdrachten is het ontwerpen van een schommel. De schommel is om te worden draagbaar, zodat u het om de parc, op vakantie, enz nemen kunt. In dit instructab
Ontwerpen van een functioneel 3d-printbaar AR-15 magazine model

Ontwerpen van een functioneel 3d-printbaar AR-15 magazine model

DISCLAIMER: Ik neem geen verantwoordelijkheid voor het gebruik van een item dat is gemaakt met behulp van deze instructies. Dit is een nieuwsgierigheid, en niet een beproefde, bewezen ontwerp in de echte wereld. Individuen met behulp van dit werk moe
Ontwerpen van een raket neus kegel (met Software)

Ontwerpen van een raket neus kegel (met Software)

Als u ontwerpt een amateur raket of een grote raket te plaatsen van een satelliet in een baan, is een van de meest belangrijke onderdeel van een raket de neus kegel. De neus van een raket bepaalt de hoeveelheid slepen dat de lucht gaat om in uw lance
Ontwerpen van een USB-Pen met behulp van Autodesk Inventor

Ontwerpen van een USB-Pen met behulp van Autodesk Inventor

In deze tutorial zullen we lopen door het ontwerpen van een aangepaste USB pen drive geschikt voor afdrukken in 3D.Als je een leraar, leerlingen ontwerpen te stimuleren objecten met echte applicatie is een geweldige manier om te gaan van hun creativi
Ontwerpen van een Step-Up DC-naar-DC Boost Converter

Ontwerpen van een Step-Up DC-naar-DC Boost Converter

Een Step-Up converter is geschikt voor het stimuleren van een lage ingangsspanning, zeggen 1,5 V tot een veel hogere spanning zoals, 5 V. Aangezien macht moet worden behouden, terwijl het opvoeren van de spanning, is de uitgangsstroom verlaagd. Nemen
Ontwerpen van een oude Afrikaanse masker met behulp van Autodesk 123D Design

Ontwerpen van een oude Afrikaanse masker met behulp van Autodesk 123D Design

als u een leraar bent, het ontwerpen van unieke en zinvolle artefacten is een geweldige manier deelnemen aan studenten geschiedenis en kunst, terwijl zetten meer kwantitatieve design vaardigheden te werken. Leraren kunnen hun leerlingen denken en han
Ontwerpen van een PC behuizing vanaf nul

Ontwerpen van een PC behuizing vanaf nul

Ongeveer een jaar geleden besloten heb ik dat ik wilde de kleinste productie-kwaliteit PC behuizing die het huis van de meest krachtige onderdelen kunt ontwerpen. Dit betekent water koeling, full-sized grafische kaart overklokken, de hele keet. Maar
Charley Chair - het ontwerpen van een laser gesneden stoel

Charley Chair - het ontwerpen van een laser gesneden stoel

Ok dus ik maak geen beenderen ik dit speciaal ontworpen voor de orkaan laser competitie (technisch bracht ik naar voren in de lange lijst van dingen die ik wil maken met inbegrip van een boot, een instrument bankje/winkel en een warmer voor time-laps