Desain prosesor Koyaaniskatsi selangkah demi selangkah

Berbeda dengan materi serupa pada desain prosesor yang menggunakan materi referensi dari buku "Code" karya Charles Petzold dan menganut beberapa aturan, di sini posisi desainer hanya akan dinyatakan dari pengalamannya sendiri. Penekanan utama akan ada pada membangun robot kendali terprogram dengan kode mesin, yang bukan kumpulan nol atau satu, tetapi dibaca dengan singkatan dari kata dua karakter dari sistem bilangan heksadesimal. Di sini kode mesin akan mengikuti paradigma pseudocode, yang cukup mudah dipahami oleh pengembang terlatih dan mudah dieksekusi di tingkat perangkat keras dengan nomenklatur TTL kecil yang diberikan oleh perangkat prosesor yang dirancang target.



Paradigma



Sangat penting untuk ditekankan di sini bahwa kode mesin harus terlihat, dalam persepsi subjektif yang relatif lancar, sebagai pseudocode di bidang tabel dump dan, sesedikit mungkin, memberikan esoteritas bidang bit apa pun.



Dekoder Perintah



Salah satu elemen terpenting dan kunci dari setiap robot adalah perangkat untuk mendekode tindakan itu dengan tepat pada titik waktu tertentu yang ada dalam pikiran pemrogram sendiri ketika dia menyusun urutan perintah ini dalam algoritme.



Pertama, perlu membuat sketsa dekoder Koda-Koyaaniskatsi di Logisim , menggunakan gerbang logika yang paling mudah diakses dari nomenklatur seri TTL yang diproduksi, untuk memastikan perakitan dekoder yang mudah pada sirkuit mikro nyata.



gambar



Di sini kami datang dengan Penunjukan Grafis Bersyarat untuk decoder, yang diperlukan untuk memastikan kekompakan dan kejelasan seluruh sirkuit mesin di masa depan, serta untuk memeriksa operasi yang benar dari decoding dari semua 256 kode instruksi.



gambar



Register Awalan Abadi



Ketika pengujian visual kinerja decoder berjalan dengan baik dan tanpa kegagalan yang terlihat, sudah waktunya untuk menghubungkan register utama untuk menyimpan indeks RON aktif, yang dipicu oleh perintah grup REG sebagai prefiks arsitektur.



gambar



Untuk memastikan penyimpanan vektor perutean data dengan instruksi ALU dan RAM, satu register lagi dan dua multiplexer tertaut ditambahkan, yang dengannya Anda dapat menautkan register arbitrary dari setiap grup sebagai operan instruksi.



gambar



Dengan sendirinya, register ini tidak dimaksudkan untuk menyimpan hasil kalkulasi dan memainkan semacam peran pointer ke register yang diperlukan untuk menyediakan interaksi terkontrol dalam program antara semua RON dan / atau memori yang tersedia.



Kondisi Arsitektur



Memastikan interaksi program normal dari semua register membutuhkan keberadaan File Register dua port, yang tidak termasuk dalam perpustakaan Logisim, memaksa kami untuk mencari solusi alternatif lain yang lebih atau lebih murah. Koyaaniskatsi klasik memiliki File Register yang agak rumit, yang tidak dianggap di sini sebagai contoh ilustratif dan memerlukan pengembangan solusi baru untuk mengatur File Register multi-siklus dengan akses lambat. Karena skema ternyata menjadi satu siklus, cukup sulit untuk mengatur File Register dalam RAM di sini dan menjadi perlu untuk membangun skema multi-siklus dengan banyak siklus khusus yang saling menggantikan dalam urutan yang ditentukan secara ketat.



Ekspresi algoritmik penghitung siklus dapat dideskripsikan sebagai "m & = m - 1" dengan pematian berurutan dari semua bit aktif dari keadaan arsitektural, di mana pada saat tertentu Siklus Mesin hanya node kunci rangkaian yang diaktifkan.



Prototipe Penghitung Siklus Mesin yang diperluas secara maksimal dapat direpresentasikan pada sketsa rangkaian serupa, yang cukup sulit untuk memahami logika operasinya.



gambar



Sketsa serupa dapat berfungsi sebagai opsi paling optimal dan universal:



gambar



Dan untuk digunakan dalam skema, Penandaan Grafis Bersyarat dapat berupa sebagai berikut:



gambar



Dengan bantuan gerbang logika 3-ATAU, sekarang dimungkinkan untuk menerjemahkan sinyal dari masing-masing perintah ke dalam topeng bit dari siklus yang diperlukan untuk pelaksanaan perintah yang benar, untuk seluruh periode eksekusi yang penghitung perintah akan ditangguhkan sementara.



gambar



Kesimpulan



Jadi, seperti yang Anda lihat, untuk setidaknya lebih atau kurang mulai memahami nuansa konstruksi independen dari mesin yang dapat diprogram, kita hanya perlu bertahan dengan pengetahuan dasar bahkan pada tingkat menggambar skema karangan bunga pohon Natal yang berkedip. Tidak ada bahan referensi yang diketahui semua orang sengaja digunakan di sini, agar proses kreatifnya lebih seru dan bebas dari trend dan trend global, tidak memperhatikan semua kemungkinan salah hitung atau kesalahan.



Pada bagian selanjutnya saya akan mencoba melanjutkan konstruksi langkah demi langkah dari "prosesor akyn",

karena draf baru hampir berfungsi untuk saya, tetapi saya memutuskan untuk menggambar ulang dari awal,

dan pada saat yang sama mendokumentasikan semua tahapan utama ...



All Articles