Агуулгын хүснэгт:

Талхны самбар дээрх 8 битийн компьютерын тойм: 3 алхам
Талхны самбар дээрх 8 битийн компьютерын тойм: 3 алхам

Видео: Талхны самбар дээрх 8 битийн компьютерын тойм: 3 алхам

Видео: Талхны самбар дээрх 8 битийн компьютерын тойм: 3 алхам
Видео: SKR 1.3 - TMC2208 UART v3.0 2024, Арваннэгдүгээр
Anonim
Талхны самбар дээрх 8 битийн компьютерын тойм
Талхны самбар дээрх 8 битийн компьютерын тойм

Энэ төслийн зорилго нь компьютерын архитектур, техник хангамжийн дизайн, угсралтын түвшний хэлний талаар илүү сайн ойлголттой болох явдал байв. Компьютерийн инженерийн чиглэлээр их сургуульд сурч байхдаа би саяхан электроникийн хичээл, лаборатори, угсрах хэл, техник хангамжийн архитектурыг танилцуулсан. Эдгээр сэдвүүдийн талаархи танилцуулгыг хүлээн авахдаа би бүх гурван курсын нарийн ширийн зүйлийн талаархи ойлголтоо нэмэгдүүлэхийг хүсч байсан бөгөөд төсөл дээр ажиллахаас илүү сайн сурах ямар арга байна вэ?

Миний анхны зорилго бол энэхүү 8 битийн компьютерийг Ben Eater-ийн youtube суваг дээр байрлуулсан лекцийн видеог ашиглан бүрэн угсрах явдал байсан бөгөөд энэ нь дизайны үйл явцыг миний хамруулсан материал, хийж амжаагүй байгаа асуудлуудын хатуу холимог болгон задлах гайхалтай ажил юм. сурах. Комбинаторик дизайн, электроникийн үндсэн логикийн талаар анхан шатны ойлголттой болсон тул дизайны ерөнхий тойм хийсний дараа компьютерийн эд ангиудыг зохион бүтээхийг оролдож, барилгын зааврыг дагаж мөрдөөгүйгээр өөрийгөө сорихыг хүссэн юм. Төслийн туршид миний зорилго бол шинэ зүйлийг бүтээхээс илүүтэйгээр суралцах, ойлголтоо дээшлүүлэх явдал байсан тул төслийн алхам бүрийн туршид бүрэлдэхүүн хэсгүүдийн архитектурын талаархи онлайн нийтлэлүүд, форумууд, тус бүрт хэрэглэгддэг үндсэн дүрмүүдээс бага зэрэг уншсан. тэднээс.

Алхам 1: Замын дагуух судалгаа

Замын дагуух судалгаа
Замын дагуух судалгаа
Замын дагуух судалгаа
Замын дагуух судалгаа

Энэ төсөл үнэхээр миний бодож байснаас илүү их зүйлийг уншихад нөлөөлсөн. Бүрэлдэхүүн хэсэг бүрт хандах миний гол хандлагын нэг бол онлайн форум эсвэл нийтлэлээс тоймыг унших, Идэгчийн видеоноос лекц үзэх, өөрийн хэсгийг бүтээх, турших, ихэнхдээ хог хаягдал гаргахаасаа өмнө дизайн хийх оролдлого хийх явдал байв. Идэгчийн сувгаас илүү чиглэсэн хандлага. Үүний нэг жишээ бол би PC -ийн ALU бүрэлдэхүүн хэсгийг бүтээж байсан үе юм. Загварын видеог үзэж байхдаа би илүү өндөр ажиллагаатай чипийн бүрэлдэхүүн хэсгүүдийн талаархи нийтлэлүүдийг уншиж, зааварчилгааны төрлийг сольж, оролтыг дотроо 2 -ийн нэмэлт болгон хөрвүүлэх боломжтой болно. Гэсэн хэдий ч эдгээр хялбар болгох чипсийг худалдаж авахаасаа өмнө би Ben Eater-ийн видеонуудад дурдсан дизайны арга барилыг авч үзээд ALU модулийн функцийг нэмэгдүүлэхийн тулд нэмэлт төхөөрөмж, XOR логик хаалгыг хольж, илүү өндөр өртөг шаардагддаггүй. Энэ нь дискрет логикийг ашиглах, компьютерийн дизайнд ашиглах чадварыг үнэлж, бүрэлдэхүүн хэсгүүдийг бий болгох өөр өөр аргуудын талаар олж мэдсэн юм. Талхны самбар дээрх доод түвшний чипсийг нэгтгэснээр би ALU дотор ашиглагддаг архитектурын зарим үндсэн шинж чанаруудын талаар олж мэдсэн бөгөөд энэ нь компьютер дээрх гүйцэтгэх бүрэлдэхүүн хэсгийн талаархи ойлголтыг нэмэгдүүлсэн юм.

Миний олж мэдсэн өөр нэг чухал бүрэлдэхүүн хэсэг бол буфер гэж нэрлэгддэг дамжуулагчийг ашиглах явдал байв. Төсөлд гүнзгий орохын өмнө би хяналтын дохиог ашиглан өөр өөр бүрэлдэхүүн хэсгүүдийг идэвхжүүлж, идэвхгүй болгоно гэж бодсон боловч Вон-Нейман маягийн энэхүү архитектурыг зөв ажиллуулахын тулд буфер ашиглах шаардлагатай байгааг нийтлэлүүдээс хурдан олж мэдэв. Компьютер нь компьютер дээрх өөр өөр модулиудын хооронд өгөгдөл дамжуулахын тулд дундын автобус ашигладаг тул мөчлөгийн синхрончлолыг цаг зааж өгдөг. Гэсэн хэдий ч автобусанд байгаа өгөгдөлд саад учруулахгүйгээр дэлгүүр, ачаалал үүсэхийг зөвшөөрч, дамжуулагч нь хаалга болж ажиллахад чухал ач холбогдолтой болохыг олж мэдсэн бөгөөд өгөгдлийг автобусанд цаг тухайд нь оруулах боломжийг олгодог идэвхжүүлэх дохиог шаарддаг. Унших чадварыг ойлгох нь тийм ч хэцүү биш байсан, учир нь утаснууд нь автобусны утгыг үргэлж хадгалдаг байсан боловч зөв утгыг ашигласнаар бүртгэлүүд шинэ утгыг хадгалах боломжтой болно.

Энэхүү төслийн туршид хийсэн судалгааны нэг эцсийн арга бол ижил төстэй чипүүдийн хоорондын ялгааг ойлгох явдал байв. Ихэнхдээ би ижил ID утгатай чипийг LS, HC гэх мэт өөр өөр тодорхойлогч үсгээр олдог байсан. Миний олж мэдсэн зүйл бол энэ нь зүгээр л шошго үйлдвэрлэхээс гадна чипүүдийн цаг, тэжээлийн үзүүлэлтүүд байсан юм. Аз болоход миний компьютер маш бага түвшний, өндөр хүлцэлтэй бүрэлдэхүүн хэсгүүдийг ашигладаг байсан тул олон үзүүлэлтүүдийг тааруулах талаар санаа зовох хэрэггүй байсан ч өндөр түвшний дизайны хувьд цагны хурд, цахилгаан татах гэх мэт зүйлс нь электроникийн амжилт, бүтэлгүйтэлд чухал үүрэг гүйцэтгэдэг болохыг олж мэдсэн. дизайн

Алхам 2: тулгарсан бэрхшээлүүд

Төсөлд маш хурдан орж би процессуудыг синхрончлох цаг, санах ойн үндсэн бүтэц гэх мэт энгийн бүрэлдэхүүн хэсгүүдийг зохион бүтээж чадсан боловч хүнд семестрийн хажуугаар эд ангиудыг захиалах шаардлагатай болсон нь төсөлд гадуур цаг хуваарилахад хэцүү болж, намайг буцааж эхлүүлэв. дуусгах хуваарь. Анхны том ухралт хийсний дараа эд ангиуд ирэхийг долоо хоног хүлээх шаардлага гарсны дараа би энэ төслийг дуусгах хэрэгтэй гэж бодож байсан бүх хэсгүүдэд захиалга өгөх замаар хойшлуулах ажлыг хойшлууллаа.. Дебаг хийх зарим үндсэн аргуудыг сурч мэдсэний дараа би алдаагаа олж мэдэхийн тулд буцаж очиж видеог дахин үзэх шаардлагатай байсан тул ихэнх самбарыг салгахад хүргэсэн. Энэ нь ямар ч товчлолгүй байсан. Аливаа электрон төхөөрөмж бүтээх явцыг шалгах үнэ цэнийг би олж мэдсэн. Замын дагуу самбар бүрийг дибаг хийснээр би тэдгээрийг илүү итгэлтэйгээр нэгтгэж, дараа нь хосолсон самбарыг дибаг хийх нь илүү хялбар болсон.

Алхам 3: Амжилт, эргэцүүлэл

Ерөнхийдөө би одоогоор цаг, код, програмын тоолуур, ALU нэгж, rs rt ба rd регистрүүд, RAM -ийг хийж дуусгасан. Энэхүү төслийг дуусгахын тулд автобус, дагалдах хэрэгслүүдийг дуусгахаас гадна би компьютерийн архитектурын талаар нэлээд их зүйлийг сурч мэдсэн бөгөөд үүнийг ахлах ангийнхаа сонгон шалгаруулах хичээлд үргэлжлүүлэн оруулахыг хүсч байна.

M5 нь миний төсөл дээр ажиллахад шаардлагатай бүх багаж хэрэгслээр хангагдсан бөгөөд эд ангиудыг хананы дагуу маш сайн байрлуулсан тул захиалга өгөх шаардлагатай хэсгүүдийг, мөн юу хуваарилах талаар эрт мэдэж байсан. Хэрэв өөр оюутан энэ төслийг авах байсан бол, хэрэв та компьютер дээр болж буй бүх зүйлийг ойлгохыг хичээж байгаа бол энэ төсөл маш их цаг хугацаа шаардагдах болно гэдгийг би баттай хэлэх болно. Энэ нь хэцүү биш боловч амжилттай ажиллахыг хүсч байвал анхаарал халамж шаарддаг. Хэрэв та өөрийн арга барилаа төлөвлөхгүй бол цагтаа хоцрохгүйн тулд ашиглах шаардлагатай бүх хэсгүүдийг олж мэдэхийн тулд Ben Eater -ийн youtube суваг дээрх видео тоглуулах жагсаалтыг үзэхийг зөвлөж байна. Би ихэнх эд ангиудыг худалдаж авсан тул үүнийг өөртөө авч явахаар төлөвлөж байгаа боловч үүнийг өөр оюутанд дуусгахын тулд үүнийг өгөх нь дээр байх болно., гэхдээ угсрах хэл дээр ихээхэн анхаарал хандуулдаг байсан бөгөөд азаар бусад хичээл дээр ажиллах боломжтой болсон

Зөвлөмж болгож буй: