Memahami Look-Up Table: Dari ROM hingga ALU Lanjutan
Dalam bab sebelumnya kita mengeksplorasi perangkat memori digital, menemukan bagaimana sel penyimpanan solid-state dapat dialamatkan dengan tepat menggunakan nilai biner. Dengan mendorong garis alamat ROM dengan pola biner tertentu, kita dapat mengambil data yang disimpan langsung dari sel memori.
Bayangkan ROM yang telah diprogram sebelumnya dengan tabel kebenaran untuk fungsi logika tertentu. Garis alamat kemudian bertindak sebagai input fungsi, sementara garis data mengeluarkan output yang sesuai. Dengan pengaturan ini, satu chip ROM dapat mengemulasi fungsi logika apa pun yang diinginkan—baik itu half-adder, full adder, atau rangkaian kombinasi yang sepenuhnya berbeda—tanpa perlu pemasangan kabel ulang fisik.
Di bawah adalah ROM 4 × 2-bit, dikonfigurasi untuk mengimplementasikan half-adder. Saat input A dan B diterapkan ke pin alamat, ROM mengeluarkan bit Sum (Σ) dan Carry-out (Cout) yang benar.

Tidak seperti half-adder berbasis gerbang, yang memproses input melalui jaringan gerbang logika yang tetap, ROM ini hanya “mengingat” output yang benar untuk setiap pasangan input. Dengan menulis tabel kebenaran baru ke dalam ROM lain, atau bahkan EPROM yang dapat dihapus, kita dapat segera mengonfigurasi ulang fungsi logika, memberikan fleksibilitas yang tidak tertandingi.
Pada intinya, ROM yang menghasilkan output yang ditentukan untuk setiap input yang mungkin disebut look-up table. Konsep ini mencerminkan cara kita menghafal tabel perkalian di sekolah: daripada menghitung ulang 5 × 6 setiap kali, kita ingat bahwa hasilnya 30.
Menggunakan software (data yang disimpan ROM) daripada hardware menawarkan beberapa keuntungan:
- Perubahan software jauh lebih mudah daripada modifikasi hardware.
- Software dapat diarsipkan pada disk, pita, atau media lain, memfasilitasi dokumentasi dan transfer.
- Software dapat disalin di antara perangkat, memungkinkan satu chip untuk belajar dari yang lain.
- Fungsi kompleks yang akan sulit dengan gerbang diskret dapat diimplementasikan dengan sederhana.
Kekuatan look-up table tumbuh dengan kompleksitas fungsi. Misalnya, penambahan 4-bit dapat dibangun menggunakan ROM dengan 8 garis alamat (dua operand 4-bit) dan 4 garis data untuk jumlah bertanda. Dengan 256 lokasi yang dapat dialamati, setiap kombinasi input harus diprogram dengan hati-hati.

Memrogram tabel seperti ini membutuhkan presisi, tetapi manfaat perilaku yang ditentukan oleh software melebihi risiko entri yang salah diprogram.
Look-up table juga unggul dalam menangani kasus tepi, seperti overflow dalam penambahan 2’s complement. Misalnya, menambahkan 0111 (7) dan 0110 (6) dalam bidang 4-bit menghasilkan 1001 (–7) alih-alih 13 yang benar. Dengan memprogram ROM untuk mengeluarkan nilai khusus—mungkin bilangan positif maksimum yang dapat direpresentasikan—kita dapat mengontrol respons terhadap kondisi overflow.
Di luar penambahan sederhana, memperluas ROM dengan dua garis alamat tambahan meningkatkan kapasitasnya dari 256 menjadi 1.024 entri. Ini memungkinkan ROM untuk melakukan beberapa operasi berdasarkan dua bit kontrol (A8 dan A9): penambahan, pengurangan (kedua urutan), dan pengujian kesetaraan—semua pada operand 4-bit.

Dengan lebih banyak garis alamat, ROM dapat menampung berbagai macam operasi biner, seperti pemeriksaan paritas atau XOR, secara efektif bertindak sebagai Arithmetic Logic Unit (ALU). Secara historis, komputer IBM 1401 dan 1620 menggunakan look-up table untuk penambahan, pilihan desain yang mendapat julukan “CADET” (Can’t Add, Doesn’t Even Try).
Penggunaan umum ROM-based look-up table saat ini adalah dalam sistem kontrol yang membutuhkan fungsi matematika yang tepat. Misalnya, sistem injeksi bahan bakar otomotif menyesuaikan rasio udara-bahan bakar berdasarkan beban mesin, suhu lingkungan, dan tekanan barometrik. Sensor mengukur variabel-variabel ini, output analognya di-digitalkan, dan vektor digital yang dihasilkan berfungsi sebagai alamat ROM. ROM kemudian mengeluarkan parameter injeksi optimal.
ROM juga memperbaiki sinyal yang di-digitalkan. Transmitter termokopel, misalnya, mengonversi milivoltase non-linear menjadi nilai suhu. Dengan menyimpan data koreksi dalam ROM, perangkat dapat melinierkan outputnya, meningkatkan akurasi. Aplikasi ini sering disebut sebagai digital characterizer.

Contoh klasik lainnya adalah terjemahan kode. ROM 128 × 8 dapat menterjemahkan kode ASCII 7-bit menjadi kode EBCDIC 8-bit dengan memetakan setiap input ke output yang sesuai dalam tabel ROM.
Related Worksheet: Lembar Kerja Perangkat Memori