Apakah hanya menggunakan gerbang NAND / NOR meningkatkan penundaan sirkuit?

12

Saya ingat belajar di sekolah yang satu dapat membangun sirkuit logis dari semata-mata NANDatau NORgerbang.

Pertama-tama, saya bertanya-tanya apakah ini benar-benar dilakukan: yaitu ketika Intel membuat CPU, apakah mereka membangun semua register, dll. Menggunakan NAND/ NORgerbang, atau apakah mereka memiliki cara lain yang lebih menarik dalam melakukan sesuatu?

Kedua, saya bertanya-tanya apakah membangun semuanya dengan cara ini meningkatkan penundaan propagasi dibandingkan dengan sirkuit yang dibuat menggunakan AND/ OR/ NOTgerbang juga.

Saya tahu bahwa ketika menggunakan PMOS/ NMOSkonfigurasi untuk membangun gerbang, sebuah ANDatau sebuah ORmuncul sebagai 2 tahap sebagai lawan dari NANDatau NORyang keduanya hanya 1. Karena saya tahu Anda dapat membuat ANDdari 2 kaskade NANDdan ORdari 2 kaskade NOR, itu Sepertinya penundaan propagasi tidak akan meningkat selama pabrikan menggunakan NANDs dan NORs.

Apakah ada yang punya wawasan tentang semua ini, terutama tentang apa yang sebenarnya dilakukan pada IC yang diproduksi?

llakais
sumber

Jawaban:

10

Pertama-tama, saya bertanya-tanya apakah ini benar-benar dilakukan: yaitu ketika Intel membuat CPU, apakah mereka membangun semua register, dll. Menggunakan NAND/ NORgerbang, atau apakah mereka memiliki cara lain yang lebih menarik dalam melakukan sesuatu?

Register tidak terbuat dari gerbang, paling sering merupakan sirkuit khusus. Mereka dapat dilihat sebagai dibuat dengan inverter ( NOT), tetapi hanya sampai batas tertentu.

Dalam teknologi CMOS, rangkaian everlogic didasarkan pada inverter: NOR dan NANDgerbang hanyalah inverter dengan banyak input yang diatur dengan cara yang cerdas, pada dasarnya. Jadi gerbang pembalik lebih cepat dari yang bukan pembalik, yang hanya pembalik gerbang dengan NOToutput.

Juga dalam logika dinamis, lebih mudah untuk membuat dua blok pembalik daripada menempatkan NOTgerbang di mana-mana.

Pertimbangkan bahwa dalam beberapa kasus sirkuit dapat dibuat dari blok yang terpisah, sehingga mungkin ada kasus di mana output dihubungkan melalui satu atau lebih inverter untuk buffering.

Dan ada keuntungan lain dalam hal itu: integrasi . Memiliki sejumlah kecil gerbang yang berbeda membantu dalam menyusun sirkuit, dan menyamakan kinerja. Seringkali pustaka menyertakan blok logika pada berbagai tingkat kerumitan: transistor, gerbang, operator, atau lebih tinggi.

Jadi, secara singkat, ya, prosesor cepat sebagian besar menggunakan gerbang pembalik.

clabacchio
sumber
Oke, saya pikir ini masuk akal bagi saya. Sebagai cek - katakanlah saya ingin membuat penambah dasar (misalnya 4-bit) menggunakan logika kombinasional (yaitu tidak dengan menghubungkan setengah-adders). Akankah saya mendekati masalah ini dengan mencoba hanya menggunakan NANDdan NORgerbang, dan sesedikit mungkin dari ini? Apakah ini hampir selalu menghasilkan desain yang lebih baik (dalam hal keterlambatan / jumlah gerbang) daripada jika saya mendekati masalah menggunakan repertoar penuh gerbang dan kemudian diganti AND/ OR/ NOTgerbang dengan NAND/ NORsetara mereka?
llakais
@ Loakais dalam hampir semua kasus, ya. Dan setidaknya itu akan sama. Tetapi, misalnya, saya telah merancang adder untuk program universitas, dan saya telah melakukan dua hal: pertama, saya telah menggunakan 4: 2 blok adder dengan full-adders (blok menang!), Dan kedua, saya Saya sudah menerapkan full-adder dengan melewati gerbang transistor XOR, jadi terkadang ada solusi yang berbeda.
clabacchio
Saya akan menyebutkan bahwa untuk adders, memiliki sel penambah penuh biasanya yang tercepat, bukan kombinasi gerbang.
W5VO
@ W5VO juga penambah penuh pada dasarnya adalah kombinasi dari XOR dan gerbang AND ... tetapi memang XOR dapat dibuat dengan cara yang cerdas tanpa menggunakan gerbang dasar
clabacchio
3

Kecenderungan saya dengan CMOS adalah menganggap blok bangunan dasar sebagai inverter yang didahului oleh kombinasi arbitrer independen "dan" dan "atau" gerbang tanpa interkoneksi di antara mereka; semua fungsi berikut:

not (X and (Y or Z))
not (X or (Y and Z))
not (X and Y and Z)
not (X or Y or Z)

pada dasarnya memiliki biaya yang sama dalam silikon, meskipun hanya dua yang terakhir memiliki nama. Mencoba untuk menyusun dua fungsi sebelumnya menggunakan beberapa kombinasi gerbang NAND atau NOR akan menghasilkan sesuatu yang jauh lebih besar dan lebih lambat daripada realisasi langsung.

supercat
sumber