Full Adder: Membangun Penjumblah Biner Multi-Bit yang Efisien
Ketika Anda menambahkan lebih dari dua digit biner, satu half-adder sudah tidak cukup. Pendekatan tradisional—membuat tabel kebenaran untuk setiap lebar baru—akurat tetapi lambat. Full adder mengatasi ini dengan menangani input ketiga, carry-in, yang memungkinkan desain untuk berskala dengan cepat dan andal.
Pertimbangkan penjumlahan dua bit:
11 + 11 ------- 110
Kolom tengah membutuhkan tiga input:
a,
b, dan carry-in
Cin. Dengan menggunakan penjumblah dua input sebagai blok konstruksi, kita dapat membangun penjumblah tiga input yang menghasilkan satu bit jumlah dan carry-out.
Secara matematis, jika Σ = a + b + Cin dan Σ1 = a + b, maka Σ = Σ1 + Cin. Gambar di bawah ini mengilustrasikan diagram logika untuk konfigurasi ini.


Mari kita periksa tabel kebenaran untuk jumlah tiga input:
Cin + a + b = ? 0 + 0 + 0 = 0 0 + 0 + 1 = 1 0 + 1 + 0 = 1 0 + 1 + 1 = 10 1 + 0 + 0 = 1 1 + 0 + 1 = 10 1 + 1 + 0 = 10 1 + 1 + 1 = 11
Bit urutan rendah dihasilkan dengan benar oleh XOR dari tiga input. Carry urutan tinggi muncul ketika
a + b menghasilkan carry (
C1) atau ketika
a + b menghasilkan bit jumlah dan carry-in adalah satu. Oleh karena itu, logika carry-out adalah
Cout = C1 OR (Σ1 AND Cin).


Dalam beberapa aplikasi, mengganti gerbang OR terakhir dengan gerbang XOR menghilangkan satu gerbang tanpa mengubah fungsionalitas, mengurangi penundaan propagasi.
Dengan merangkai dua full adder, kita dapat menambahkan bilangan dua bit secara efisien. Diagram di bawah ini menunjukkan pemasangan dua full adder untuk penjumblah 2-bit:


Di sini, A0 dan A1 adalah bit rendah dan urutan tinggi dari operand A; demikian pula untuk B. Output Σ0 dan Σ1 membentuk jumlah 2-bit, dan Cout menyebar ke tahap berikutnya.
Sementara penjumblah 2-bit dapat dibangun langsung dari gerbang logika, menggunakan full adder untuk kedua posisi bit menyederhanakan desain yang lebih besar dan memfasilitasi pengantaran. Pendekatan ini berskala secara alami: penjumblah 4-bit adalah dua penjumblah 2-bit yang dihubungkan oleh carry; penjumblah 8-bit adalah dua penjumblah 4-bit, dan seterusnya.
Di bawah ini adalah contoh penjumblah 8-bit yang dibangun dari full adder:

Setiap blok “2+” mewakili penjumblah 2-bit, setiap blok “4+” mewakili penjumblah 4-bit, dan penjumblah 8-bit yang digabungkan mencapai hasil yang sama dengan desain 8-bit monolitik. Komprominya adalah bahwa desain hierarkis mengalami penundaan propagasi tambahan melalui rantai carry, sedangkan implementasi jumlah-produk tunggal mungkin menawarkan timing yang lebih cepat dengan biaya kompleksitas desain.
Untuk rangkaian kombinatorial besar, desainer biasanya memilih antara konstruksi modular—lebih mudah dirancang tetapi mungkin lebih lambat—dan desain monolitik—propagasi lebih cepat tetapi sintesis yang lebih kompleks. Pendekatan full-adder mengilustrasikan modularitas, memungkinkan verifikasi dan penggunaan kembali bertahap.
Lembar Kerja Terkait:
- Lembar Kerja Rangkaian Matematika Biner