Apakah ada nama untuk "chip dari mana orang dapat membangun CPU"?

9

Beberapa orang senang membangun "homebrew" CPU dari IC yang lebih sederhana.

Apakah ada nama untuk "chip dari mana seseorang dapat membangun CPU, jika Anda memiliki cukup banyak"? Apakah ada nama untuk chip yang lain, "chip yang tidak dapat dibangun oleh CPU, tidak peduli berapa banyak dari mereka yang Anda miliki"?

Seseorang dapat membangun CPU dari chip mux 4: 1 dalam jumlah cukup besar ( multiplexer adalah taktik taktis dari Desain Logika ). Seseorang dapat membangun CPU dari (2 lebih besar) jumlah gerbang NAND 2-in. Atau dari gerbang NOR 2-in. Atau dari beberapa (mungkin satu) CPLD atau FPGA.

Namun,

Seseorang tidak dapat membangun CPU hanya dari gerbang XOR 2-in saja. Seseorang tidak dapat membangun CPU sepenuhnya dari logika dioda-resistor saja. Seseorang tidak dapat membangun CPU sepenuhnya dari sandal jepit tipe-D saja.

Apakah ada beberapa istilah atau frasa untuk membedakan kedua kategori chip yang kurang canggung daripada "chip yang dapat digunakan untuk membuat CPU"?

davidcary
sumber
6
Masalah yang saya miliki dengan pertanyaan ini (yang berarti mungkin Anda dapat memperbaikinya, atau saya kehilangan sesuatu) adalah bahwa Anda tidak jelas tentang bagaimana Anda mengevaluasi kemampuan untuk "membangun CPU" . Apakah ini pertanyaan desain (logika), atau pertanyaan keluarga IC? Apakah Anda meminta untuk menentukan persyaratan logika untuk merancang komputer lengkap Turing?
mctylr
1
@ mctylr: Ya - Apa yang Anda sebut jenis chip, seperti mux 4: 1, yang memungkinkan seseorang untuk mendesain komputer Turing-complete sepenuhnya dari chip itu? Saya menduga bahwa setiap keluarga IC memiliki IC yang darinya (dalam jumlah yang cukup) seseorang dapat membangun komputer Turing-lengkap; dan memiliki beberapa IC lain yang, sendirian, tidak memadai untuk membangun komputer Turing-complete. Terminologi apa yang dapat saya gunakan untuk membedakan jenis chip pertama dari jenis chip kedua?
davidcary
@reemrevnivek: Saya pikir "diode" ada hubungannya dengan "diode-resistor logic".
davidcary

Jawaban:

16

Anda harus dapat melakukan TIDAK dan salah satu dari AND dan OR. Menggunakan hukum Demorgan, salah satu dari fungsi ini dapat ditransformasikan menjadi yang lain, dan dari situ menjadi semua fungsi logis lainnya.

Ini dikenal sebagai kelengkapan fungsional atau kecukupan ekspresif. Komponen atau fungsi yang menciptakan sistem seperti itu dikenal sebagai fungsi Sheffer (setelah Henry Sheffer, yang menerbitkan bukti pada topik) atau operator tunggal yang memadai.

Yang juga menarik adalah fakta bahwa Anda dapat menggabungkan kuartet gerbang NAND untuk membuat flip flop tipe-D, dan dari sana sel memori, yang juga diperlukan untuk membuat kelengkapan Turing.

Artikel ProofWiki tentang topik ini adalah bacaan yang bagus.

Kevin Vermeer
sumber
Satu orang di halaman diskusi kelengkapan fungsional Wikipedia mengklaim bahwa gerbang Fredkin tidak lengkap secara fungsional (karena jika Anda menerapkan semua 0 input ke satu atau lebih gerbang Fredkin yang terhubung dalam pengaturan yang memungkinkan, Anda tidak akan pernah mendapatkan 1 pada output apa pun), namun yang lain mengklaim Anda dapat membangun CPU sepenuhnya dari gerbang Fredkin. Jadi apakah gerbang Fredkin sebenarnya "fungsional lengkap", atau apakah saya mencari beberapa kategori yang lebih luas yang mencakup "lengkap fungsional" dan juga gerbang Fredkin?
davidcary
@ David - Ini adalah topik kecil, tetapi jika Anda membaca artikel di gerbang Fredkin, Anda akan menemukan bahwa gerbang Fredkin memiliki properti menukar dua bit terakhir jika bit pertama adalah 1, dan juga dapat dibalik. Jika Anda mengizinkan 1 dan 0 menjadi hard-coded, mudah untuk mendapatkan fungsi logika lainnya dengan beberapa gerbang Fredkin. Namun, jika Anda mengizinkan hard-coding, itu tidak lagi reversibel, dan karenanya bukan gerbang Fredkin yang tepat (menurut beberapa orang). Reversibilitas adalah kategori yang independen dari kelengkapan fungsional, dan saya pikir kelengkapan fungsional sudah cukup untuk masalah Anda.
Kevin Vermeer
Jika Anda menerapkan semua 0 input ke satu atau lebih muxes 4: 1 yang dikabel dalam pengaturan apa pun yang mungkin, Anda tidak akan pernah bisa mendapatkan 1 pada output apa pun. Jadi apakah chip mux sebenarnya "berfungsi lengkap", meskipun tidak pernah disebutkan pada halaman ProofWiki yang sangat baik, atau saya mencari beberapa kategori yang lebih luas yang mencakup "lengkap secara fungsional" dan juga chip mux 4: 1?
davidcary
@ David - The 4: 1 mux adalah perangkat khusus yang ditemukan dalam elektronik. Di bidang elektronik, kita jarang, jika pernah, tertarik untuk merakit komputer sepenuhnya dari satu jenis IC, dan di bidang ilmu komputer teoretis (domain ProofWiki dan istilah "kelengkapan fungsional"), muxes dan IC khusus lainnya dirakit dari gerbang logika standar. Di negara tak bertuan ini, saya pikir Anda harus mendefinisikan istilah Anda sendiri.
Kevin Vermeer
@reemrevnivek: Ketika membuat suatu produk, sering kali menghemat waktu, uang, dan ruang penyimpanan untuk menggunakan beberapa jenis komponen generik yang dapat saya beli secara massal dari beberapa produsen, daripada secara terpisah "mengoptimalkan" setiap bagian dan menggunakan komponen super-khusus yang hanya berguna di satu tempat dalam satu produk dan yang produsennya mungkin akan menyatakannya "tidak lagi direkomendasikan untuk desain baru" dalam beberapa tahun. ps: pernah mendengar tentang Cray-1 atau Apollo Guidance Module? Semuanya kecuali memori seluruhnya dari satu jenis IC.
davidcary
5

Himpunan "chip tempat Anda dapat membuat komputer" dapat dirakit menjadi mesin lengkap Turing . Sisanya tidak bisa.

Semua gerbang logika dapat dirakit dari set hanya NAND atau hanya gerbang NOR. Jika IC Anda yang dipermasalahkan dapat bertindak sebagai salah satu dari ini, IC tersebut dapat dibuat menjadi mesin Turing.

Saya tidak tahu istilah tertentu untuk menggambarkan set seperti itu.

Pertanyaan-pertanyaan ini juga dapat membantu:

/programming/4908893/what-logic-gates-are-required-for-turing-completeness

/programming/7284/what-is-turing-complete

Toby Jaffey
sumber
1
Luar biasa. Jadi satu jenis chip adalah "chip yang dapat bertindak seperti gerbang NAND, atau bertindak seperti gerbang NOR, atau keduanya", dan jenis chip lainnya adalah "chip yang tidak dapat bertindak seperti gerbang NAND, tidak juga bisa bertindak seperti gerbang NOR ". Secara konseptual jauh lebih sederhana. Itu mungkin cukup, tetapi saya berharap untuk frasa yang meluncur dari lidah saya sedikit lebih mudah.
davidcary
2

Saya setuju dengan pandangan bahwa multiplexer 4: 1 itu bagus. Beberapa tahun yang lalu, saya mengimplementasikan pengendali memori 8K bank-switched untuk Atari 2600 menggunakan 74xx153 / 74xx253 tunggal dan sirkuit RC de-glitching. Pengontrol harus memberikan output yang merupakan kebalikan dari input A12, dan harus mengunci A6 ketika A11 tinggi dan A12 rendah. "Kembali pada hari" (awal 1980-an), kartrij pengalihan bank akan menggunakan silikon khusus atau tiga chip TTL; menggunakan 74xx153 off-the-shelf, namun (yang tersedia saat itu) pekerjaan dapat dilakukan dalam satu chip.

supercat
sumber