Cuprins:

Prezentare generală a computerului pe 8 biți pe o placă de calcul: 3 pași
Prezentare generală a computerului pe 8 biți pe o placă de calcul: 3 pași

Video: Prezentare generală a computerului pe 8 biți pe o placă de calcul: 3 pași

Video: Prezentare generală a computerului pe 8 biți pe o placă de calcul: 3 pași
Video: Setari pentru un Windows 8 mai rapid 2024, Iulie
Anonim
Prezentare generală a computerului pe 8 biți pe o placă de calcul
Prezentare generală a computerului pe 8 biți pe o placă de calcul

Scopul meu pentru acest proiect a fost să construiesc o mai bună înțelegere a arhitecturii computerelor, a proiectării hardware și a limbajelor la nivel de asamblare. Fiind un junior în universitatea care studiază ingineria computerelor, am absolvit recent cursuri de electronică, laboratoare care mi-au prezentat limbajul de asamblare și arhitectura hardware. Primind o introducere la aceste subiecte, am vrut să mă înțeleg mai bine despre detaliile mai fine din toate cele trei cursuri și ce modalitate mai bună de a învăța decât să lucrez la un proiect?

Intenția mea inițială a fost de a asambla pe deplin acest computer de 8 biți folosind videoclipurile prelegerii furnizate pe canalul de YouTube al lui Ben Eater, care fac o treabă fantastică de a descompune procesul de proiectare într-un amestec solid de material pe care l-am acoperit și aspecte pe care încă nu le-am făcut. învăța. Având în vedere că aveam deja o înțelegere de bază a designului combinatoric și a logicii electronice de bază, am vrut să mă provoc prin încercarea de a proiecta și construi părți ale computerului după prezentarea generală a proiectelor, dar fără a urmări instrucțiunile de construcție. De-a lungul proiectului, scopul meu a fost să învăț și să-mi îmbunătățesc înțelegerea mai mult decât să construiesc ceva nou, așa că, de-a lungul fiecărui pas al proiectului, am făcut o mică lectură din articole și forumuri online despre arhitectura componentelor și convențiile de bază utilizate pentru fiecare dintre ei.

Pasul 1: Cercetare pe parcurs

Cercetare pe parcurs
Cercetare pe parcurs
Cercetare pe parcurs
Cercetare pe parcurs

Acest proiect m-a determinat să citesc mult mai mult decât mă așteptam. Una dintre principalele mele abordări ale fiecărei componente a fost să citesc o prezentare generală dintr-un forum sau articol online, să urmăresc prelegerile din videoclipurile lui Eater și să încerc să-mi proiectez propria parte înainte de a construi, testa și, de cele mai multe ori, să o abandonez pentru un abordare mai ghidată de la canalul Eater. Un exemplu în acest sens a fost când construiam componenta ALU a computerului. În timp ce vizionam videoclipurile de proiectare, am citit articole despre componentele cipului care aveau o funcționalitate mai mare și declanșau intrări care ar permite comutarea tipurilor de instrucțiuni și inversarea intrărilor în complementul 2 al internului. Cu toate acestea, înainte de a cumpăra aceste cipuri ușor de făcut, am analizat abordarea de design despre care a vorbit Ben Eater în videoclipurile sale, cu amestecul de adăugătoare și porți logice XOR pentru a crește funcționalitatea în modulul ALU fără a avea nevoie de cipuri cu costuri mai mari. Acest lucru m-a făcut să apreciez utilizarea logicii discrete și aplicabilitatea acesteia la proiectarea computerelor și să aflu diferite abordări ale componentelor clădirii. Prin combinarea cipurilor de nivel inferior pe panoul de testare, am aflat și despre câteva trăsături arhitecturale cheie utilizate în interiorul ALU, care mi-au sporit înțelegerea asupra acestei componente de execuție pe PC.

O altă componentă cheie despre care am aflat a fost utilizarea transceiverelor, cunoscute și sub numele de tampoane. Înainte de a intra mai adânc în proiect, m-am gândit că voi activa și dezactiva pur și simplu diferite componente folosind semnale de control, dar am descoperit rapid în toate articolele că trebuie să fie utilizate tampoane pentru a funcționa corect această arhitectură în stil Von-Neuman. Deoarece computerul folosește o magistrală partajată pentru ca datele să circule între diferitele module de pe computer, sincronizarea ciclurilor a fost dictată de ceas. Cu toate acestea, permițând stocarea și încărcările să apară fără să interfereze cu datele disponibile pe autobuz, am constatat că emițătoarele sunt vitale pentru a acționa ca porți, necesitând un semnal de activare pentru a permite fluxului de date pe autobuz în timp util. capacitatea de citire nu a fost la fel de greu de înțeles, deoarece firele ar păstra întotdeauna valorile pe autobuz, dar utilizarea valorii corecte însemna să permită registrelor să dețină noua valoare.

O ultimă preluare din cercetarea de-a lungul acestui proiect a fost înțelegerea diferențelor de specificație între jetoanele care erau similare. De multe ori am găsit cipuri cu aceleași valori ID, dar litere descriptoare diferite, cum ar fi LS și HC. Ceea ce am aflat a fost că nu era vorba doar de fabricarea etichetelor, ci și de specificațiile de sincronizare și putere referitoare la cipuri. Din fericire, deoarece computerul meu a folosit componente destul de scăzute, cu toleranță ridicată, nu a trebuit să-mi fac griji în legătură cu potrivirea multor specificații, dar în ceea ce privește designul de nivel superior, am aflat că lucruri precum viteza ceasului și consumul de energie sunt esențiale pentru succesul sau eșecul sistemului electronic proiecta

Pasul 2: Dificultăți întâmpinate

Destul de repede în proiect, am reușit să proiectez componente simple, cum ar fi ceasul de sincronizare pentru sincronizarea proceselor și arhitectura de bază a memoriei, dar nevoia de a comanda piese alături de un semestru de curs greu a făcut dificilă alocarea timpului exterior proiectului, punându-mă din nou pe program de finalizare. După primul mare eșec de la nevoia de a aștepta o săptămână până la sosirea pieselor, am sfârșit evitând alte întârzieri, comandând toate părțile pe care credeam că le va trebui să finalizez acest proiect, care s-a dovedit util deoarece nu am mai întâmpinat întârzieri până la publicarea acestui. După ce am învățat și câteva abordări de bază pentru depanare, am început să trec cu vederea unele asamblări care însemnau nevoia să mă întorc și să vizionez din nou videoclipuri pentru a prinde erorile mele, ceea ce a dus, de obicei, la dezmembrarea majorității unui forum. Aceasta nu a avut nicio scurtătură. Am aflat valoarea verificării progresului dvs. în construirea oricărui dispozitiv electronic. Depanând fiecare placă de-a lungul drumului, am reușit să trec la combinarea lor cu mai multă încredere, apoi depanarea plăcilor combinate a devenit mult mai ușoară.

Pasul 3: Realizări și reflecție

Una peste alta, am finalizat în prezent ceasul, opcode-ul și contorul de programe, unitatea ALU, registrele rs rt și rd și memoria RAM. În afară de necesitatea de a finaliza autobuzul și perifericele pentru a finaliza acest proiect, am învățat o cantitate substanțială despre arhitectura computerelor, pe care sper să o duc la cursurile elective din ultimul an, urmând cursul de arhitectură computerizată.

M5 mi-a furnizat toate instrumentele necesare pentru a lucra la proiectul meu, iar componentele erau foarte bine așezate de-a lungul pereților pieselor, așa că am știut foarte devreme despre piesele care aveau nevoie de comandă și ce era de dispensat. Dacă un alt student ar trebui să preia acest proiect, aș nota cu siguranță că acest proiect durează mult dacă încercați să înțelegeți tot ce se întâmplă pe computer. NU ESTE DIFICIL, dar necesită îngrijire dacă doriți să funcționeze cu succes. Vă recomand cu tărie să parcurgeți lista de redare video de pe canalul de YouTube Ben Eater pentru a cunoaște toate părțile pe care trebuie să le folosiți, astfel încât să nu rămâneți în urmă la timp dacă nu intenționați să vă proiectați propria abordare. Întrucât am achiziționat majoritatea pieselor, intenționez să iau acest lucru cu mine pentru a-l finaliza singur, dar ar fi bine să dau acest lucru pentru a permite unui alt student să îl finalizeze, ceea ce ar însemna o expunere ușoară la designul pieselor rămase., dar un accent mare pe limbajul asamblării, pe care, din fericire, am ajuns să lucrez în timpul altor cursuri

Recomandat: