Dari pemahaman saya, sebagian besar CPU konsumen modern didasarkan pada logika sinkron. Beberapa aplikasi kecepatan tinggi (pemrosesan sinyal, dll.) Menggunakan logika ansync untuk kecepatan yang lebih tinggi.
Namun, di pasar saat ini, kecepatan dalam produk konsumen adalah salah satu nilai jual utama (lihat AMD vs Intel.) Apakah pengembangan litografi yang lebih rumit lebih cepat daripada penerapan logika yang sepenuhnya tidak sinkron? Atau apakah logika ansync terlalu rumit / tidak praktis untuk aplikasi VLSI?
digital-logic
vlsi
synchronous
Corsair64
sumber
sumber
Jawaban:
Saya menghabiskan beberapa tahun di sebuah startup yang mengkomersilkan teknologi desain async, jadi saya akrab dengan alasan:
async tidak secara intrinsik lebih cepat. Penundaan jalur terburuk tetap sama. Hanya saja kadang-kadang Anda bisa memanfaatkan jalur eksekusi yang lebih cepat.
async juga memiliki overhead deteksi selesai.
Alat desain. Ini adalah yang sangat besar: sebenarnya tidak ada "aliran" async penuh dari alat yang tersedia dengan kualitas yang sama dengan desain sinkron.
Latihan. Anda harus melatih ulang semua desainer Anda dengan paradigma dan alat baru.
Risiko dan konservativisme. Begitu banyak dari industri ini "menghasilkan sesuatu yang mirip dengan yang terakhir, tetapi sedikit berbeda". Ini memiliki peluang kerja yang sangat tinggi. Perusahaan jauh lebih enggan untuk membangun sesuatu yang sama sekali berbeda karena memiliki lebih banyak peluang menjadi total penghapusbukuan dengan biaya puluhan juta dolar.
sumber
Sangat menggoda untuk merancang sirkuit terpadu asinkron. Jawaban lain sudah mencakup banyak alasan untuk berpikir dua kali sebelum melakukannya. Ini satu lagi:
Pengembangan IC belum selesai dengan desain. Verifikasi dan tes sama pentingnya. Tidak hanya alat desain yang sangat canggih untuk sirkuit sinkron, tetapi juga sama dengan alat simulasi dan alat uji.
Verifikasi
Tidaklah cukup untuk membuat sirkuit bekerja pada kondisi lab. Mereka harus kuat sehubungan dengan rentang tegangan operasi (V), kisaran suhu operasi (T), dan variasi karena proses pembuatan (P). Untuk logika sinkron ini dapat dijamin dengan bantuan analisis waktu statis. Sirkuit dipecah ke semua jalur waktu, dari flip-flop ke flip-flop. Waktu pengaturan dan penahanan diperiksa untuk setiap jalur pengaturan waktu tunggal, dan untuk kombinasi P, T, dan V. berbagai kombinasi PTV inilah yang disebut sebagai sudut simulasi.
Verifikasi serupa dapat dilakukan untuk sirkuit asinkron, tetapi jauh lebih sulit dan jauh lebih sedikit didukung oleh alat desain. Ini juga membatasi perancang untuk konstruksi asinkron yang sebenarnya dapat diverifikasi. Tidak ada verifikasi yang dapat diandalkan untuk sirkuit asinkron yang arbitrer.
Uji
Kesulitan serupa ada ketika datang untuk menguji perangkat keras. Pengujian logika sinkron sepenuhnya didukung oleh pengujian standar dan peralatan. Menguji sirkuit asinkron tidak hanya lebih rumit, tetapi karena kurangnya abstraksi waktu, bahkan tidak cukup untuk membuktikan bahwa rangkaian akan bekerja untuk semua sudut PTV. Sirkuit bisa gagal karena kondisi balapan di beberapa kombinasi PTV, yang tidak tercakup oleh sudut.
Ringkasan
Perancang IC belum melepaskan paradigma asinkron, tetapi logika asinkron hadir dengan kerugian besar selama verifikasi dan validasi. Dalam konteks industri, desain IC asinkron perlu dibatasi untuk konstruksi yang dapat terbukti bekerja pada seluruh ruang parameter variasi proses, serta rentang operasi untuk suhu dan tegangan.
Apa yang disebut "Lokal sinkron secara global asinkron" adalah salah satu cara untuk mendapatkan lebih banyak manfaat dan lebih sedikit kerugian dari kedua paradigma waktu.
sumber
Penghitung biner Async lebih sederhana karena mereka hanya menggunakan 1 sel memori atau T flip flop per bagi dengan dua. Karenanya CD lama dan 74HC4020 dan 4040 menawarkan banyak tahap biner dengan harga murah. Penundaan prop di setiap tahap berarti tidak dapat digunakan tanpa kondisi balapan atau gangguan dengan decoding gerbang alamat biner kecuali jika penundaan prop kurang dari 1/2 siklus input jam menggunakan tepi trailing untuk mengunci hasilnya. Latensi keluaran kemudian dikalikan dengan tahapan N.
Penghitung biner sinkron menggunakan sel memori tambahan ke D FF untuk menunda tetapi meminimalkan nilai penundaan hingga 1 untuk setiap penghitung panjang sehingga menghabiskan lebih banyak area.
Oleh karena itu semua CPU menggunakan jam pelengkap untuk mengoptimalkan latensi yang diharapkan dalam alamat dan memori baca / tulis untuk memaksimalkan thruput tetapi tidak melebihi penundaan prop, pengaturan, dan waktu penahanan.
Memori sekarang menggunakan banyak fase seperti DDR, 3DR, 4DR, 5DR terutama untuk memori grafis tetapi dengan jam CPU berjalan jauh lebih cepat daripada kecepatan RAM siklus tunggal sehingga penundaan alamat baca dan tulis dapat dihitung berdasarkan satu atau beberapa atau setengah jumlah hitungan. superclock (mis. 100MHz xN) yang ditentukan oleh T pecahan atau bilangan bulat dihitung untuk setiap parameter. Penundaan prop ini meningkat seiring temp. Untuk CMOS dan mengurangi dengan tegangan Vram yang lebih tinggi yang jika didinginkan dengan benar dapat mengurangi latensi atau lainnya meningkatkan Pd dan suhu naik dan membuatnya lebih buruk (lebih lambat). Jadi pendinginan, V, f, T semuanya sangat penting untuk latensi optimal, apakah itu digunakan untuk operasi Async atau Sync.
sumber
Desain logika awal tidak sinkron. Sering kali mereka dicampur dengan sirkuit analog juga. Namun, seiring berjalannya waktu desain menjadi lebih rumit, sehingga menuntut lebih banyak insinyur untuk mengerjakan satu desain. Diagram waktu async. Logika bisa menjadi rumit ketika ada banyak negara. Sekarang tambahkan tim insinyur yang mencoba untuk menghubungkan blok logika yang berbeda bersama-sama tetapi timing di antara mereka tidak selaras dengan sangat baik. Desain menjadi rapuh terhadap perubahan dengan cara yang tidak terduga.
Masukkan desain logika sinkron. Sekarang semua aliran negara disejajarkan dengan sinyal jam yang memungkinkan antarmuka untuk didefinisikan dengan sangat baik, dan lebih kuat terhadap perubahan desain. Ya, itu mungkin menggunakan lebih banyak gerbang, tetapi (biasanya) stabil dengan desain; sebagai lawan stabil selama tidak ada yang menyentuhnya!
sumber