Sadržaj:

4-bitni binarni kalkulator: 11 koraka (sa slikama)
4-bitni binarni kalkulator: 11 koraka (sa slikama)

Video: 4-bitni binarni kalkulator: 11 koraka (sa slikama)

Video: 4-bitni binarni kalkulator: 11 koraka (sa slikama)
Video: 3 РЕЦЕПТА из КУРИНОЙ ПЕЧЕНИ/ ПАШТЕТ!! ГОСТИ БУДУТ В ШОКЕ!! 2024, Prosinac
Anonim
4-bitni binarni kalkulator
4-bitni binarni kalkulator
4-bitni binarni kalkulator
4-bitni binarni kalkulator
4-bitni binarni kalkulator
4-bitni binarni kalkulator
4-bitni binarni kalkulator
4-bitni binarni kalkulator

Razvio sam interes za način rada računala na temeljnoj razini. Htio sam razumjeti uporabu diskretnih komponenti i sklopova potrebnih za ostvarivanje složenijih zadataka. Jedna važna temeljna komponenta u CPU -u je aritmetička logička jedinica ili ALU koja izvodi operacije nad cijelim brojevima. Kako bi ispunili ovaj zadatak, računala koriste binarne brojeve i logička vrata. Jedna od najjednostavnijih izvedenih operacija je zbrajanje dva broja zajedno, u zbrojnom krugu. Ovaj video broj numberphile odlično radi objašnjavajući ovaj koncept putem Domino Addition. Matt Parker proširuje ovaj osnovni koncept i gradi Domino računalo pomoću 10 000 domina. Izgraditi cijelo osobno računalo od domina je apsurdno, ali ipak sam htio razumjeti uporabu diskretnih komponenti za postizanje ovog zadatka dodavanja. U video zapisima logička vrata stvorena su od domina, ali se mogu napraviti i od osnovnih komponenti, naime tranzistora i otpornika. Svrha ovog projekta bila je iskoristiti ove diskretne komponente za učenje i stvaranje vlastitog 4-bitnog zbrajača.

Moji ciljevi za ovaj projekt uključivali su: 1) Naučiti kako stvoriti i izraditi prilagođeni PCB2) Pojednostaviti dizajn osmisliti dodavanjem binarnih brojeva3) Pokazati razliku u razmjeru između diskretnih komponenti i integriranog kruga koji izvršava isti zadatak

Većina inspiracije i razumijevanja ovog projekta došla je od Simon Inns -a.

Pribor

Koristio sam Fritzing za izradu shema, izradu i izradu PCB -a

Korak 1: Teorija

Teorija
Teorija
Teorija
Teorija
Teorija
Teorija
Teorija
Teorija

Brojanje u bazi 10 je jednostavno jer postoji različit cijeli broj koji predstavlja zbroj dva cijela broja. Najjednostavniji primjer:

1 + 1 = 2

Brojanje u bazi 2 ili binarno koristi samo 1 i 0. Kombinacija brojeva 1 i 0 koristi se za predstavljanje različitih cijelih brojeva i njihovih zbrojeva. Primjer brojanja u bazi 2:

1+1 = 0 i nosite 1 u sljedeći bit

Dodavanjem dva bita (A i B) zajedno, moguća su 4 različita rezultata s izlazima Sum i Carry (Cout). To je ono što je prikazano u tablici.

Logička vrata uzimaju ulaze i generiraju izlaz. Neki od najosnovnijih logičkih vrata sastoje se od vrata NOT, AND i OR koji se koriste u ovom projektu. Sastoje se od različitih kombinacija i ožičenja tranzistora i otpornika. Dostavljene su sheme svake kapije.

Vraćajući se na tablicu, Kombinacija ovih vrata može se koristiti za dobivanje rezultata zbroja u tablici. Ova kombinacija logike poznata je i kao ekskluzivna vrata OR (XOR). Ulaz mora biti točno 1 da bi rezultat bio 1. Ako su oba ulaza 1, rezultirajući izlaz je 0. Rezultati bitova za prijenos mogu se predstaviti jednostavnim vratima AND. Dakle, korištenje XOR -a s vratima AND može predstavljati cijelu tablicu. Ovo je poznato kao Half Ader, a shema je prikazana gore.

Kako bi se dodali veći binarni brojevi, bit za prijenos mora biti ugrađen kao ulaz. To se postiže kombiniranjem 2 kruga polubranila za stvaranje punog zbrajalnika. Potpuni zbrajatelji tada se mogu kaskadno spojiti kako bi se dodali veći binarni brojevi. U svom projektu kaskadirao sam 4 puna zbrajalnika što mi je omogućilo da imam 4 bitne ulaze. Shema potpunog zbrajanja je gore.

Simon Inns ima veliko i detaljnije pisanje o teoriji. Tu je i nekoliko PDF -ova koji su mi bili od pomoći.

Korak 2: Testiranje kruga

Testiranje kruga
Testiranje kruga
Testiranje kruga
Testiranje kruga

Prvi korak nakon razumijevanja rada logičkih vrata i teorije punog zbrajanja je izgradnja sklopa. Počeo sam prikupljanjem svih komponenti koje su mi bile potrebne: 10K i 1K otpornici, NPN tranzistori, Breadboard, Jumperwires. Slijedio sam zajedno s ispisom punog zbroja. Proces je bio naporan, ali uspio sam nabaviti radni krug za potpuni zbrajalac. Ja bih vezao ulaze visoko ili nisko i koristio bih multimetar za testiranje izlaza. Sada sam bio spreman prevesti matičnu ploču i shemu na PCB.

Korak 3: Dizajniranje PCB -a punog zbrajanja

Dizajniranje PCB -a punog zbrajanja
Dizajniranje PCB -a punog zbrajanja
Dizajniranje PCB -a punog zbrajanja
Dizajniranje PCB -a punog zbrajanja
Dizajniranje PCB -a punog zbrajanja
Dizajniranje PCB -a punog zbrajanja

Za dizajn PCB -a koristio sam isključivo Fritzing. Ovo mi je bio prvi put da dizajniram PCB i ovaj se program činio najprikladnijim za korisnike i intuitivnim s najmanjom krivuljom učenja. Dostupni su i drugi izvrsni programi poput EasyEDA i Eagle koji će vam pomoći u dizajniranju PCB -a. S Fritzingom možete započeti projektiranje na virtualnoj ploči ili shemi, a zatim prijeći na PCB. Za ovaj sam projekt upotrijebio obje ove metode. Kad ste spremni za izradu PCB -a, jednostavno je pritiskom na gumb izvesti vaše datoteke i učitati ih izravno u Aisler, partnera za proizvodnju Fritzinga.

Nacrtajte shemu Započeo sam sa karticom sheme za početak procesa. Prvo sam pronašao i umetnuo sve komponente u radni prostor. Zatim sam nacrtao sve tragove između komponenti. Pobrinuo sam se da dodam 5V ulaz i masu na odgovarajuća mjesta.

Dizajnirajte PCBI klikom na karticu PCB. Kada pređete izravno sa sheme, dobivate nered sa svim komponentama spojenim patsnest linijama na temelju tragova koje ste napravili u shemi. Prvo što sam učinio je promijenio veličinu sive ploče na željenu veličinu i dodao rupe za montažu. Također sam dodao 16 pinova za ulaze i izlaze. Zatim sam počeo slagati komponente na logičan način. Pokušao sam grupirati komponente s bliskim vezama kako bih minimizirao udaljenost traga. Napravio sam dodatni korak i grupirao komponente zajedno prema logičkim vratima. Jedan od mojih ciljeva bio je moći vizualizirati kako krug funkcionira i moći pratiti "bit" kroz krug. Nakon toga sam upotrijebio funkciju automatskog usmjeravanja koja automatski prolazi i iscrtava optimizirane tragove između komponenti. Bio sam skeptičan da je ovaj proces dovršio sva prava praćenja pa sam prošao dvostruku provjeru i ponovno iscrtavanje tragova tamo gdje su trebali biti. Srećom, značajka automatskog usmjeravanja odradila je prilično dobar posao i morao sam popraviti samo nekoliko tragova. Autorouter je također napravio neke čudne kutove sa tragovima što nije "najbolja praksa", ali to mi je bilo u redu i sve je i dalje radilo u redu. Posljednje što sam učinio bilo je dodavanje teksta koji će se ispisati kao sitotisak. Uvjerio sam se da su sve komponente označene. Također sam uvezao prilagođene slike logičkih vrata kako bih naglasio grupisanje komponenti. Posljednja gornja slika prikazuje sitotisak.

Izradite PCBI klikom na gumb za izradu pri dnu zaslona. Izravno me preusmjerio na web stranicu Aisler gdje sam mogao napraviti račun i učitati sve svoje datoteke Fritzing. Napustio sam sve zadane postavke i izvršio narudžbu.

Korak 4: Projektiranje ostalih PCB -a

Projektiranje ostalih PCB -a
Projektiranje ostalih PCB -a
Projektiranje ostalih PCB -a
Projektiranje ostalih PCB -a
Projektiranje ostalih PCB -a
Projektiranje ostalih PCB -a

Preostale tiskane ploče koje su mi trebale bile su ulazno/izlazna ploča sučelja i ploča za IC. Slijedio sam postupak kao korak 3 za ove ploče. PDF sheme su objavljene u nastavku. Za IC, sve sam veze napravio pomoću značajke virtualne ploče. Uključio sam shemu radi potpunosti, ali uspio sam izravno prijeći s ploče na karticu PCB -a, što je bilo super. Također sam dodao bazu 10 u bazu 2 grafikona pretvorbe na sitotisku na I/O ploči sučelja prije prijenosa i naručivanja u Aisleru.

Korak 5: Spajanje komponenti na PCB

Komponente za lemljenje na PCB
Komponente za lemljenje na PCB
Komponente za lemljenje na PCB
Komponente za lemljenje na PCB
Komponente za lemljenje na PCB
Komponente za lemljenje na PCB
Komponente za lemljenje na PCB
Komponente za lemljenje na PCB

Stigle su sve tiskane ploče i zaista sam bio impresioniran kvalitetom. Nisam imao iskustva s drugim proizvođačima, ali ne bih oklijevao ponovno upotrijebiti Aisler.

Sljedeći zadatak bio je lemljenje svih komponenti, što je bio mukotrpan proces, ali moje sposobnosti lemljenja su se uvelike poboljšale. Počeo sam s punim zbrojnim pločama i lemio komponente počevši od tranzistora, zatim 1K otpornika, pa 10K otpornika. Slijedio sam sličnu metodu za lemljenje ostatka komponenti na U/I i IC ploču. Nakon što je svaka ploča Full Adder dovršena, testirao sam ih istom metodom kao i matična ploča Full Adder. Iznenađujuće, sve su ploče radile ispravno bez problema. To je značilo da su ploče ispravno usmjerene i da su pravilno lemljene. Na sljedeći korak!

Korak 6: Dovršavanje PCB -a za slaganje

Dovršavanje PCB -a za slaganje
Dovršavanje PCB -a za slaganje
Dovršavanje PCB -a za slaganje
Dovršavanje PCB -a za slaganje
Dovršavanje PCB -a za slaganje
Dovršavanje PCB -a za slaganje

Sljedeći je zadatak bio lemljenje svih igala zaglavlja na svaku ploču. Također sam trebao dodati kratkospojnike između ispravnog zaglavlja i ulaza/izlaza ploča Full Adder (A, B, Cin, V+, GND, Sum, Cout). Ovaj bi se korak mogao izbjeći ako ste dizajnirali različite tiskane ploče za svaku razinu zbrojnog kruga, ali htio sam minimizirati dizajn i troškove stvaranjem samo jednog PCB -a punog zbrajanja. Kao rezultat toga, za povezivanje s tim ulazima/izlazima potrebne su kratkospojne žice. Priložena shema prikazuje kako sam postigao ovaj zadatak i koje su igle korištene za svaku razinu ploča Full Adder. Slike pokazuju kako sam lemio kratkospojnike za svaku ploču. Počeo sam lemljenjem besplatnih žica na ispravne igle na zaglavlju. Zatim sam zalemio zaglavlje na PCB. Nakon što sam zalijepio igle zaglavlja s žicama kratkospojnika, lemio sam slobodne krajeve žica kratkospojnika na ispravne vodiče na PCB -u. Gornja slika prikazuje izbliza zaglavlja zaglavlja sa spojenim žicama na njih.

Korak 7: Napajanje strujnih krugova

Napajanje strujnih krugova
Napajanje strujnih krugova
Napajanje strujnih krugova
Napajanje strujnih krugova
Napajanje strujnih krugova
Napajanje strujnih krugova

Planirao sam za ovaj projekt koristiti 12V DC DC bačvasto napajanje pa sam dizajnirao I/O ploču sučelja da ima DC bačvastu utičnicu/konektor za ulaznu energiju. Budući da sam koristio istu I/O ploču i želio sam koristiti jedino napajanje potrebno mi je za regulaciju napona na 5V jer je to maksimalni ulaz za SN7483A IC. Da bih to postigao, trebao sam regulator od 5 V i prekidač koji je mogao prebacivati između 12V i 5V. Gornja shema prikazuje kako sam spojio strujni krug.

Korak 8: 3D ispis baze

3D ispis baze
3D ispis baze
3D ispis baze
3D ispis baze
3D ispis baze
3D ispis baze

Sad kad su ožičenje i lemljenje završeni, morao sam shvatiti kako će se sve to držati zajedno. Odlučio sam se za CADing i 3D ispis koji će prilagoditi i prikazati sve dijelove ovog projekta.

Razmišljanja o dizajnu Trebala su mi mjesta za montažu PCB -a s vijcima i nosačima. Naslagani zbrajatelji vizualno su najprivlačniji i htio sam ih prikazati kada se ne koriste pa sam htio mjesto za pohranu IC PCB -a. Morao sam prilagoditi strujni krug s izrezima za prekidač i istosmjernom utičnicom/priključkom. Na kraju, htio sam nekakvu vitrinu kućišta kako bih spriječio skupljanje prašine u otvorenim PCB -ovima pa mi je trebalo mjesto za sjedenje kućišta.

3D modeliranje Koristio sam Fusion360 za projektiranje baze. Počeo sam s dimenzijama PCB -a i razmakom rupa za montažu. Nakon toga sam upotrijebio niz skica i istiskivanja za postavljanje visine i veličine baze s točkama za ugradnju na PCB. Zatim sam napravio izreze za kućište i strujni krug. Zatim sam napravio prostor za pohranu IC PCB -a kada se ne koristi. Na kraju sam dodao neke završne detalje i poslao ih u Cura, svoj softver za rezanje.

TisakIzabrao sam crnu PLA nit. Tisak je trajao nešto više od 6 sati i odlično je ispao. Iznenađujuće, sve su dimenzije bile točne i sve je izgledalo kao da se dobro uklapa. Na gornjoj slici prikazan je ispis nakon što sam dodala stalak u rupe za montažu. Savršeno su pristajali!

Korak 9: Montaža

Skupština
Skupština
Skupština
Skupština
Skupština
Skupština

Umetnite odstupanja. Stavio sam sve zastoje u montažne rupe na bazi.

Postavite strujni krug u bazu. Sve sam spojio i izvukao sve komponente kroz otvor za prekidač. Zatim sam umetnuo utičnicu/adapter u stražnju stranu baze. Gurnuo sam regulator od 5 V u njegov utor i konačno se prekidač mogao postaviti pritiskom na mjesto.

Montirajte I/O PCB. Stavio sam IC tiskanu ploču u prostor za pohranu i postavio PCI ulazno/izlaznog sučelja na vrh. Zašrafio sam PCB pomoću 4x M3 vijka i šesterokutnog pogona. Konačno sam priključio priključak DC cijevi u PCB.

Složite Adder PCB -ove. Složio sam prvi Adder na mjesto. Zašrafio sam stražnju stranu PCB -a u stražnje montažne rupe s 2 odstupanja. Ponavljao sam ovaj postupak sve dok zadnji Adder nije bio na mjestu i učvrstio ga s još 2 vijka M3.

Napravite kućište. Koristio sam 1/4 akril za kućište. Izmjerio sam konačnu visinu projekta i, dimenzijama CAD -a, izrezao 5 komada za stranice i vrh kako bih napravio jednostavnu kutiju s otvorenim dnom. Za ljepilo sam upotrijebio epoksid Na kraju sam izbrusio mali izrez u obliku polukruga s desne strane kako bih prilagodio prekidač.

Spremni za izračun

Korak 10: Izračun i usporedba

Image
Image
Izračunavanje i usporedba
Izračunavanje i usporedba
Izračunavanje i usporedba
Izračunavanje i usporedba

Uključite svoj novi kalkulator i počnite dodavati! Grafikon od baze 10 do baze 2 može se koristiti za brzo pretvaranje između binarnih i cijelih brojeva. Više volim postaviti ulaze, a zatim pritisnuti "jednako" okretanjem prekidača za napajanje i promatranjem binarnog izlaza sa LED dioda.

Usporedba diskretnih komponenti s integriranim krugom. Sada možete raspakirati sve zbrajatelje i priključiti IC SN7483A na I/O ploču. (Ne zaboravite okrenuti prekidač u suprotnom smjeru za napajanje IC -a sa 5V umjesto 12V). Možete izvesti iste izračune i dobit ćete iste rezultate. Prilično je impresivno misliti da i diskretna komponenta Ader i IC funkcioniraju na isti način samo na vrlo različitoj ljestvici veličina. Slike prikazuju iste ulaze i izlaze za krugove.

Korak 11: Zaključak

Nadam se da ste uživali u ovom projektu i naučili isto koliko i ja. Prilično je zadovoljstvo naučiti nešto novo i pretvoriti ga u jedinstveni projekt koji također zahtijeva učenje novih vještina poput dizajna/izrade PCB -a. Sve sheme navedene su u nastavku. Za sve zainteresirane mogu povezati i svoje PCB Gerber datoteke kako biste mogli izraditi vlastiti 4-bitni binarni kalkulator. Sretno u izradi!

Preporučeni: