Saya terkejut dan sedikit terkejut dengan menemukan bahwa tidak ada alat mapan yang tepat untuk merancang dan membuat prototipe sirkuit asinkron.
Saya terus mencari menggunakan google dan cara lain untuk menemukan metode yang baik untuk merancang rangkaian asinkron VLSI, tetapi sejauh ini pencarian gagal menghasilkan jawaban.
Ada beberapa alat yang ditinggalkan seperti Balsa, dll. Untuk mengotomatisasi desain VLSI, tetapi semuanya benar-benar tidak berdokumen dan sulit digunakan. Apa yang saya cari adalah sesuatu seperti FPGA yang kita miliki di dunia sinkron.
Pokoknya saya menghargai jika Anda membagikan nama alat yang dapat diandalkan, dan membuat prototipe perangkat keras yang meringankan beban desain sirkuit asinkron.
Jawaban:
Logika Theseus NCL telah disebutkan, ada juga sistem Handshake (Philips spin off) serta Fulcrum Microsystems dan Caltech. Ada prosesor ARM asinkron yang disebut Amulet juga. Dan SUN Microsystems memiliki tim desain prosesor untuk ini juga untuk SPARC tanpa clock.
Saya akan memanggil desain tanpa jarum jam ini untuk menghindari kebingungan antara desain logika seperti penghitung riak dan tipe sirkuit ini. Namun secara umum kedua istilah tersebut digunakan.
DC (Design Compiler) dari Synopsys juga Merlin dari sistem FTL juga dulu tersedia.
Namun, jika Anda memiliki pustaka sel inti yang dirancang dengan baik, abstraksi / deskripsi tingkat atas ini bisa menjadi sepele. Masalah inti adalah bahwa jika Anda telah merancang sebuah sistem yang memungkinkan setiap sel untuk menyebar maju sinyal yang mengatakan "hasil yang baik" serta merambat ke belakang "sistem yang tersedia" jam sistem dan dengan demikian dapat dengan mudah dirancang seperti perangkat lunak tanpa memperhatikan kondisi ras atau waktu untuk hal itu.
Jadi alat yang digunakan akan sesederhana SPICE untuk desain level sel (level transistor) dan C untuk mengkompilasi ke dalam kumpulan primitif yang akan ditempatkan. Untuk kehidupan saya, saya tidak dapat menemukan alat berbasis C (open source) yang digunakan.
Lihatlah orang-orang seperti Wesley Clark (Dia meninggal baru-baru ini) juga Ivan Sutherland dan Karl Fant (disebutkan di tempat lain juga).
sumber
Jika sebuah register memiliki clock sistem, itu akan dianggap sinkron. Jika register yang sama itu clock langsung dari gerbang, rangkaian logika atau umumnya apa pun selain jam sistem itu akan menjadi tidak sinkron. Register Altera dapat dihitung dari beberapa jam sistem, atau dengan logika. Anda dapat membangun jenis sirkuit gerbang apa pun yang Anda inginkan. . . Sudah pengalaman saya dengan sebagian besar jenis ASIC atau FPGA yang setiap kali dikompilasi, sesuatu dialihkan berbeda. Jadi penundaan propagasi selalu berubah.
sumber
FPGA adalah perangkat keras yang tepat. Tetapi Anda tidak akan dapat menggunakan perangkat lunak sintesis yang berfokus pada sinkron, karena itu membuat transformasi yang salah.
Sebagai contoh, sebuah FPGA sangat mampu membentuk osilator yang dibangun dengan rantai inverter. Tetapi jika Anda mendefinisikan rantai inverter dalam misalnya VHDL dan menggunakan salah satu kompiler standar, "NOT-gate pushback" akan menghilangkan inverter berpasangan dan membuat Anda hanya memiliki satu, dan perangkat tidak akan berosilasi.
Anda mungkin harus menulis beberapa perangkat lunak sintesis Anda sendiri, yang akan dimungkinkan jika Anda mendapatkan informasi yang cukup tentang bitstream. Saya akan melihat upaya penelitian lain yang beroperasi pada bitstream daripada deskripsi perilaku - hal-hal seperti deteksi kesalahan dan analisis keandalan sangat tergantung pada pemetaan yang dipilih oleh synthesizer. Mungkin beberapa pekerjaan di bidang logika toleransi kesalahan redundan telah berhasil melakukan beberapa teknik pemetaan kustom, karena penghapusan istilah produk umum adalah salah satu transformasi standar yang dilakukan oleh synthesizer tradisional, dan benar-benar menghancurkan desain yang berlebihan.
Ketika Anda mengontrol penggunaan primitif elemen logika FPGA seperti tabel pencarian dan interkoneksi lokal dan global, Anda akan dapat menggunakan penundaan yang melekat untuk mewujudkan desain asinkron Anda. Masalah optimisasi Anda jauh lebih sulit daripada menyesuaikan dengan tujuan pertemuan waktu pengaturan-dan-tahan, tetapi itulah yang membuatnya diteliti.
sumber
Tergantung pada kompleksitas sirkuit Anda .. Jika sebagian besar desain digital Anda, Anda mungkin melihat menggunakan sistem Quartus Altera. Input desain Anda dengan alat grafis dan / atau VHDL menggunakan register clock asyncronously atau menggunakan gerbang logika saja. Tambahkan dummy buffer, gerbang, pin sinyal dll. Sesuai kebutuhan untuk menunda jalur sinyal agar sesuai dengan apa pun yang Anda butuhkan. (dengan asumsi desain Anda lebih lambat daripada penundaan gerbang CPLD tercepat mereka <5 ns)
Bertahun-tahun merancang dengan chip mereka, saya tidak pernah menemukan hasil simulator yang salah. Desain yang lebih kecil dapat dilakukan dengan alat gratis mereka.
sumber