Isi kandungan:

Tinjauan Komputer 8-Bit di Breadboard: 3 Langkah
Tinjauan Komputer 8-Bit di Breadboard: 3 Langkah

Video: Tinjauan Komputer 8-Bit di Breadboard: 3 Langkah

Video: Tinjauan Komputer 8-Bit di Breadboard: 3 Langkah
Video: Stepping through a program on the 8-bit breadboard computer 2024, November
Anonim
Komputer 8-Bit pada Gambaran Keseluruhan Papan Roti
Komputer 8-Bit pada Gambaran Keseluruhan Papan Roti

Tujuan saya untuk projek ini adalah untuk membina pemahaman yang lebih baik mengenai seni bina komputer, reka bentuk perkakasan, dan bahasa peringkat pemasangan. Menjadi Junior di universiti yang mempelajari kejuruteraan komputer, saya baru-baru ini menyelesaikan kursus elektronik, makmal yang memperkenalkan saya kepada bahasa pemasangan, dan seni bina perkakasan. Semasa menerima pengenalan mengenai topik-topik ini, saya ingin meningkatkan pemahaman saya mengenai perincian yang lebih baik dalam ketiga-tiga kursus, dan cara apa yang lebih baik untuk belajar daripada mengerjakan projek?

Tujuan asal saya adalah untuk mengumpulkan komputer 8-Bit ini sepenuhnya menggunakan video kuliah yang disediakan di saluran youtube Ben Eater, yang berfungsi dengan baik untuk memecah proses reka bentuk menjadi gabungan bahan yang telah saya bahas dan aspek-aspek yang belum saya lalui belajar. Memandangkan saya sudah mempunyai pemahaman asas mengenai reka bentuk kombinatorik dan logik elektronik asas, saya ingin mencabar diri saya dengan mencuba merancang dan membina bahagian komputer selepas tinjauan reka bentuk, tetapi tanpa memerhatikan arahan bangunan. Sepanjang projek ini, tujuan saya adalah untuk belajar dan meningkatkan pemahaman saya lebih daripada sekadar membina sesuatu yang baru, jadi sepanjang setiap langkah projek, saya membaca sedikit artikel dan forum dalam talian mengenai seni bina komponen, dan konvensyen asas yang digunakan untuk setiap daripada mereka.

Langkah 1: Selidik Sepanjang Jalan

Selidik Sepanjang Jalan
Selidik Sepanjang Jalan
Selidik Sepanjang Jalan
Selidik Sepanjang Jalan

Projek ini benar-benar membuat saya membaca lebih banyak daripada yang saya jangkakan. Salah satu pendekatan utama saya untuk setiap komponen adalah membaca gambaran keseluruhan dari forum atau artikel dalam talian, menonton ceramah dari video Eater, dan berusaha merancang bahagian saya sendiri sebelum membina, menguji, dan kebanyakan masa perlu membatalkannya untuk pendekatan yang lebih berpandu dari saluran Eater. Contohnya ialah ketika saya membina komponen PC ALU. Semasa saya menonton video reka bentuk, saya membaca artikel mengenai komponen cip yang mempunyai fungsi yang lebih tinggi dan mencetuskan input yang memungkinkan untuk menukar jenis arahan dan menukar input menjadi pelengkap 2 secara dalaman. Walau bagaimanapun, sebelum membeli cip yang lebih mudah ini, saya mengkaji pendekatan reka bentuk yang dibincangkan oleh Ben Eater dalam videonya, dengan penyatuan penambahan dan pintu masuk logik XOR untuk meningkatkan fungsi dalam modul ALU tanpa memerlukan cip kos yang lebih tinggi. Ini membuat saya menghargai penggunaan logik diskrit dan kebolehgunaannya untuk reka bentuk komputer, dan mempelajari pelbagai pendekatan untuk membina komponen. Dengan menggabungkan cip tahap rendah di papan roti, saya juga mengetahui beberapa ciri seni bina utama yang digunakan di dalam ALU, yang meningkatkan pemahaman saya mengenai komponen pelaksanaan ini pada PC.

Komponen utama lain yang saya pelajari adalah penggunaan transceiver, juga dikenali sebagai penyangga. Sebelum masuk ke dalam projek ini dengan lebih mendalam, saya berfikir bahawa saya hanya akan mengaktifkan dan menyahaktifkan komponen yang berbeza menggunakan isyarat kawalan, tetapi dengan cepat mendapati di seluruh artikel bahawa penyangga perlu digunakan agar fungsi seni bina gaya Von-Neuman ini dapat digunakan dengan betul. Kerana komputer menggunakan bas bersama untuk data bergerak antara modul yang berbeza pada PC, penyegerakan kitaran ditentukan oleh jam. Walau bagaimanapun, membiarkan stor dan muatan berlaku tanpa mengganggu data yang terdapat di dalam bas, saya dapati bahawa transceiver sangat penting untuk bertindak sebagai gerbang, memerlukan isyarat pengaktifan untuk membolehkan data mengalir ke bas tepat pada masanya. kemampuan membaca tidak begitu sukar untuk dimengerti, kerana kabel selalu menyimpan nilai-nilai di dalam bas, tetapi menggunakan nilai yang betul bermaksud membolehkan para pendaftar memegang nilai baru.

Satu hasil akhir dari penyelidikan sepanjang projek ini adalah memahami perbezaan spesifikasi antara cip yang serupa. Selalunya saya menjumpai kerepek dengan nilai ID yang sama tetapi huruf deskriptor berbeza seperti LS dan HC. Yang saya pelajari adalah bahawa ia bukan sekadar pembuatan label, tetapi juga spesifikasi masa dan kuasa mengenai kerepek tersebut. Syukurlah kerana komputer saya menggunakan komponen tahap rendah, toleransi tinggi, saya tidak perlu bimbang untuk mencocokkan banyak spesifikasi, tetapi pada reka bentuk tahap yang lebih tinggi, saya mengetahui bahawa perkara seperti kelajuan jam dan tarikan kuasa sangat penting untuk kejayaan atau kegagalan elektronik reka bentuk

Langkah 2: Kesukaran yang dihadapi

Dengan cepat ke dalam projek, saya dapat merancang komponen mudah seperti jam masa untuk proses penyegerakan, dan seni bina memori asas, tetapi perlu memesan bahagian di samping semester kursus yang berat menjadikan sukar untuk memperuntukkan masa di luar untuk projek, menjadikan saya kembali jadual untuk disiapkan. Setelah kemunduran besar pertama saya kerana tidak perlu menunggu seminggu untuk mendapatkan bahagian, saya akhirnya menangguhkan kelewatan lebih jauh dengan memesan semua bahagian yang saya fikir saya perlu selesaikan projek ini, yang ternyata berguna kerana saya tidak lagi menghadapi kelewatan sehingga menerbitkan ini. Setelah mempelajari beberapa pendekatan asas untuk melakukan debug juga, saya mula mengabaikan beberapa pemasangan yang bermaksud perlu kembali dan menonton semula video untuk menangkap kesilapan saya, yang biasanya menyebabkan sebahagian besar papan. Ini tidak mempunyai jalan pintas. Saya belajar nilainya dalam memeriksa kemajuan anda dalam membina sebarang alat elektronik. Dengan menyahpepijat setiap papan, saya dapat menggabungkannya dengan lebih yakin, kemudian menyahpepijat papan gabungan menjadi lebih mudah.

Langkah 3: Pencapaian dan Refleksi

Secara keseluruhan, saya telah melengkapkan jam, opcode dan kaunter program, unit ALU, rs rt dan rd register, dan RAM. Selain perlu melengkapkan bas dan periferal untuk menyelesaikan projek ini, saya telah mempelajari sejumlah besar mengenai seni bina komputer, yang saya harap dapat diteruskan ke pilihan raya senior saya, mengikuti kursus seni bina komputer.

M5 menyediakan semua alat yang diperlukan untuk saya mengerjakan projek saya, dan komponennya disusun dengan sangat baik di sepanjang dinding bahagian, jadi saya sangat awal mengetahui bahagian-bahagian yang memerlukan pesanan dan apa yang boleh digunakan. Sekiranya pelajar lain mengambil projek ini, saya pasti akan memperhatikan bahawa projek ini memerlukan banyak masa jika anda cuba memahami semua yang berlaku di komputer. TIDAK BERBEZA, tetapi ia memerlukan perhatian sekiranya anda mahu ia berfungsi dengan baik. Saya sangat mengesyorkan membaca senarai main video di saluran youtube Ben Eater untuk memahami semua bahagian yang perlu anda gunakan supaya anda tidak ketinggalan tepat pada waktunya jika anda tidak merancang merancang pendekatan anda sendiri. Oleh kerana saya membeli sebahagian besar bahagian, saya merancang untuk mengambilnya bersama saya untuk disiapkan pada masa saya sendiri, tetapi akan menyenangkan untuk menyerahkannya kepada pelajar lain untuk menyelesaikannya, yang bermaksud pendedahan cahaya kepada reka bentuk bahagian yang tinggal, tetapi tumpuan besar pada bahasa perhimpunan, yang saya dapat bekerja semasa kelas lain

Disyorkan: