Tartalomjegyzék:

8 bites számítógép a kenyértáblán Áttekintés: 3 lépés
8 bites számítógép a kenyértáblán Áttekintés: 3 lépés

Videó: 8 bites számítógép a kenyértáblán Áttekintés: 3 lépés

Videó: 8 bites számítógép a kenyértáblán Áttekintés: 3 lépés
Videó: Difference Between 8 bit & 16 bit 2024, December
Anonim
8 bites számítógép a kenyértáblán-áttekintés
8 bites számítógép a kenyértáblán-áttekintés

A projekt célja az volt, hogy jobban megértsem a számítógép architektúráját, a hardvertervezést és az összeszerelési szintű nyelveket. Mivel az egyetemen juniorként tanultam informatikai mérnököt, nemrég végeztem el elektronika tanfolyamokat, laboratóriumokat, amelyek bevezettek az összeszerelési nyelvbe és a hardver architektúrába. E témakörök bevezetésekor szerettem volna jobban megérteni mind a három kurzus finomabb részleteit, és mi lehet a tanulás jobb módja, mint egy projekten dolgozni?

Eredeti szándékom az volt, hogy teljesen összeszereljem ezt a 8 bites számítógépet a Ben Eater youtube csatornáján található előadásvideók felhasználásával, amelyek fantasztikus munkát végeznek a tervezési folyamat lebontásában az általam lefedett anyagok és egyéb szempontok szilárd összetételére. tanul. Mivel már rendelkeztem alapvető ismeretekkel a kombinatorikus tervezésben és az alapvető elektronikai logikában, ki akartam próbálni magam azzal, hogy a tervezési áttekintések után megpróbáltam megtervezni és megépíteni a számítógép egyes részeit, de nem figyeltem az építési utasításokra. A projekt során az volt a célom, hogy többet megtanuljak és fejlesszem a megértésemet, mint hogy valami újat építsek, ezért a projekt minden lépése során olvasgattam egy kicsit az összetevők architektúrájáról és az egyes szabványokhoz használt alapvető konvenciókról szóló online cikkekből és fórumokból. tőlük.

1. lépés: Kutatás az úton

Kutatás az úton
Kutatás az úton
Kutatás az úton
Kutatás az úton

Ez a projekt valóban sokkal többet olvasott, mint amire számítottam. Az egyik fő megközelítésem az egyes komponensekhez az volt, hogy egy online fórumból vagy cikkből áttekintést olvasok, megnézem az Eater videóiból az előadásokat, és megpróbálom megtervezni a saját részemet, mielőtt elkészíteném, tesztelném, és legtöbbször le kell selejteznem. irányított megközelítés az Eater csatornájáról. Erre volt példa, amikor a PC ALU komponensét építettem. Miközben néztem a tervezési videókat, olvastam cikkeket a chipek alkatrészeiről, amelyek magasabb funkcionalitással rendelkeznek, és trigger bemeneteket tartalmaznak, amelyek lehetővé teszik az utasítás típusok és a bemenetek 2 -es kiegészítésre történő belső váltását. Mielőtt azonban megvásárolnám ezeket az egyszerűbbé váló chipeket, áttekintettem azt a tervezési megközelítést, amelyről Ben Eater beszélt videóiban, az adalékok és az XOR logikai kapuk keverésével, hogy növeljék az ALU modul funkcionalitását, anélkül, hogy magasabb költségű chipekre lenne szükség. Ez arra késztetett, hogy megbecsüljem a diszkrét logika alkalmazását és alkalmazhatóságát a számítógép tervezésében, és megtanultam az építőelemek különböző megközelítéseit. Az alacsonyabb szintű chipek kombinálásával a kenyértáblán megtanultam néhány, az ALU -ban használt kulcsfontosságú építészeti vonást is, amelyek növelték a megértésemet a PC ezen végrehajtási összetevőjével kapcsolatban.

Egy másik kulcsfontosságú összetevő, amelyet megtudtam, az adó -vevők, más néven pufferek használata. Mielőtt belemélyednék a projektbe, azt gondoltam, hogy egyszerűen aktiválom és deaktiválom a különböző összetevőket a vezérlőjelek segítségével, de gyorsan megtaláltam a cikkekben, hogy puffereket kell használni a Von-Neuman stílusú architektúra megfelelő működéséhez. Mivel a számítógép megosztott buszt használ az adatoknak a PC különböző moduljai között történő utazásához, a ciklusok szinkronizálását az óra szabta meg. Mindazonáltal, lehetővé téve a tárolást és a terhelést a buszon rendelkezésre álló adatok beavatkozása nélkül, megállapítottam, hogy az adó -vevők létfontosságúak kapuként, és engedélyező jelre van szükség ahhoz, hogy az adatok időben áramolhassanak a buszra. Az olvasási képességet nem volt olyan nehéz megérteni, mivel a vezetékek mindig megtartották a buszon lévő értékeket, de a helyes érték használata lehetővé tette a regiszterek számára, hogy megtartsák az új értéket.

A projekt végső eredménye a kutatás során a hasonló chipek közötti specifikációs különbségek megértése volt. Gyakran találtam azonos azonosítójú chipeket, de különböző leíró betűket, például LS és HC. Amit megtanultam, az volt, hogy nem egyszerűen címkék gyártása, hanem a chipek időzítése és teljesítménye is. Szerencsére, mivel a számítógépem meglehetősen alacsony szintű, nagy toleranciájú alkatrészeket használt, nem kellett aggódnom a sok specifikáció egyezése miatt, de a magasabb szintű tervezés során megtanultam, hogy az olyan dolgok, mint az órajel és az áramfelvétel kritikusak az elektronikus sikerhez vagy kudarchoz tervezés

2. lépés: Felmerült nehézségek

Meglehetősen gyorsan belekezdtem a projektbe, és egyszerű alkatrészeket tudtam tervezni, mint például a folyamatok szinkronizálásának időzítőjét és az alapvető memória -architektúrát, de az alkatrészek megrendelésének szükségessége a nehéz tanév mellett megnehezítette a külső idő kiosztását a projekthez, és így újra befejezés ütemterve. Az első nagy kudarcom után, hogy egy hetet kellett várnom az alkatrészek megérkezésére, végül megkerültem a további késéseket azzal, hogy megrendeltem az összes alkatrészt, amiről azt hittem, hogy be kell fejeznem ezt a projektet.. Miután megtanultam néhány alapvető módszert a hibakereséshez is, elkezdtem figyelmen kívül hagyni néhány összeszerelést, ami azt jelentette, hogy vissza kell mennem, és újra meg kell nézni a videókat, hogy felderítsem a hibáimat, ami általában a tábla nagy részének szétszedéséhez vezetett. Ennek nem volt parancsikonja. Megtanultam az értékét annak ellenőrzése során, hogy haladsz -e bármilyen elektronikus eszköz építésében. Az egyes táblák hibakeresésével menet közben nagyobb önbizalommal tudtam kombinálni őket, majd a kombinált táblák hibakeresése sokkal könnyebbé vált.

3. lépés: Teljesítmények és elmélkedés

Mindent összevetve, jelenleg befejeztem az órát, az opkód- és programszámlálót, az ALU egységet, az rs rt és rd regisztereket, valamint a RAM -ot. Amellett, hogy be kell fejeznem a buszt és a perifériákat, hogy befejezzem ezt a projektet, rengeteg mindent megtanultam a számítógépes architektúráról, amit remélem, hogy tovább fogok vinni a felső tagozaton, a számítógép -architektúra tanfolyamon.

Az M5 minden szükséges eszközt biztosított ahhoz, hogy dolgozhassak a projektemen, és az alkatrészeket nagyon jól elrendezték az alkatrészek falai mentén, így nagyon korán tudtam, hogy mely alkatrészeket kell megrendelni és mi az, ami nem szükséges. Ha más diák vállalná ezt a projektet, mindenképpen megjegyezném, hogy ez a projekt sok időt vesz igénybe, ha megpróbál mindent megérteni, ami a számítógépen történik. NEM Bonyolult, de gondot igényel, ha azt szeretné, hogy sikeresen működjön. Erősen ajánlom, hogy nézze át a Ben Eater youtube -csatornáján található videólejátszási listát, hogy megértse az összes olyan részt, amelyet használnia kell, hogy ne maradjon le időben, ha nem tervezi saját megközelítésének kialakítását. Mivel megvásároltam a legtöbb alkatrészt, azt tervezem, hogy a magam részéről elvinném, hogy befejezzem, de jó lenne ezt letenni, hogy egy másik diák befejezhesse, ami azt jelenti, hogy fényt kell kitenni a többi alkatrész kialakításának, de nagy hangsúlyt fektet az összeszerelési nyelvre, amin szerencsére más órákon is dolgozni tudtam

Ajánlott: