Rangkaian Logika secara garis besar dibagi menjadi dua, yaitu rangkaian logika Kombinasional dan rangkaian logika Sequensial. Rangkaian logika Kombinasional adalah rangkaian yang kondisi keluarannya (output) dipengaruhi oleh kondisi masukan (input).
Struktur rangkaian kombinasional secara fisik adalah seperti gambar berikut:

Gambar 3.1
Sedangkan rangkaian logika Sequensial adalah rangkaian yang kondisi keluarannya dipengaruhi oleh kondisi masukan dan keadaan keluaran sebelumnya atau dapat juga dikatakan rangkaian yang bekerja berdasarkan urutan waktu. Ciri rangkaian logika sequensial yang utama adalah adanya jalur umpan balik (feed back) di dalam rangkaiannya.
1. Rangkaian Logika Kombinasional
Rangkaian logika kombinasional yang akan dibahas adalah Enkoder, Dekoder, Multiplexer, dan Demultiplexer.
1.1. Enkoder
Enkoder adalah rangkaian logika kombinasional yang berfungsi untuk mengubah atau mengkodekan suatu sinyal masukan diskrit menjadi keluaran kode biner.
Enkoder disusun dari gerbanggerbang logika yang menghasilkan keluaran biner sebagai hasil tanggapan adanya dua atau lebih variabel masukan. Hasil keluarannya dinyatakan dengan aljabar boole, tergantung dari kombinasikombinasi gerbang yang digunakan. Sebuah Enkoder harus memenuhi syarat perancangan m < 2n. Variabel m adalah kombinasi masukan dan n adalah jumlah bit keluaran sebuah enkoder. Satu kombinasi masukan hanya dapat mewakili satu kombinasi keluaran. Perhatikan contoh tabel fungsi keluaran Enkoder berikut:

Tabel 3.1. Fungsi keluaran enkoder 8ke3
Dari tabel diatas, dapat dibuat fungsi keluaran sebagai berikut:
Y0 = I1 + I3 + I5 + I7
Y1 = I2 + I3 + I6 + I7
Y2 = I4 + I5 + I6 + I7
Dari tabel diatas, dapat dibuat fungsi keluaran sebagai berikut:
Dari persamaan tersebut, maka rangkaian gerbangnya dapat dibuat seperti pada gambar berikut:

Gambar 3.2

Gambar 3.3
1.2. Dekoder
Rangkaian Dekoder mempunyai sifat yang berkebalikan dengan Enkoder yaitu merubah kode biner menjadi sinyal diskrit. Sebuah dekoder harus memenuhi syarat perancangan m < 2n. Variabel m adalah kombinasi keluaran dan n adalah jumlah bit masukan. Satu kombinasi masukan hanya dapat mewakili satu kombinasi keluaran. Perhatikan contoh tabel fungsi keluaran dekoder berikut:

Tabel 3.2. Fungsi keluaran dekoder 2ke4
Dari tabel diatas, dapat dibuat fungsi keluaran sebagai berikut:

Dari persamaan tersebut, maka rangkaian gerbangnya dapat dibuat seperti pada gambar berikut:

Gambar 3.4
Membuat suatu Enkoder dan dekoder dapat dilakukan dengan dua cara yaitu pertama, menggunakan gerbanggerbang dasar yang disusun membentuk fungsi Enkoder atau dekoder, kedua, menggunakan IC Enkoder atau dekoder yang banyak terdapat dipasaran. IC dekoder diaplikasikan pada seven segment, pengalamatan memori, dan sebagainya.
2. Rangkaian Logika Sequensial
Flip-flop adalah rangkaian utama dalam logika sequensial. Counter, Register, Memory, serta rangkaian sequensial lainnya disusun dengan menggunakan flip-flop sebagai komponen utama. Flip-flop adalah rangkaian yang mempunyai fungsi pengingat (memory). Artinya rangkaian ini mampu melakukan penyimpanan data sesuai dengan kombinasi masukan yang diberikan kepadanya. Ada beberapa macam flip-flop yang akan dibahas yaitu RS flip-flop, JK flip-flop, D flip-flop, dan T flip-flop. Ciri utama dari flip-flop adalah keluaran Q dan Q^
adalah selalu berlawanan / stabil (jika Q = 0 maka Q = 1, Jika = 1 maka Q =0). Karena kondisi dua keadaan stabil ini rangkaian flip-flop dinamakan juga dengan rangkaian bistabil.
2.1. RS flip-flop
Flip-flop ini terdiri dari dua masukan, yaitu S (set) dan R (reset). Serta dua keluarannya yaitu Q dan Q . Kondisi Set adalah kondisi ketika Q berlogika 1. Sedangkan kondisi Reset adalah kondisi ketika Q berlogika 0. Perhatikan gambar berikut:

Gambar 3.5
Untuk menganalisanya, asumsikan atau ambil permisalan keluaran sebelumnya.


Tabel 3.3
Perkembangan selanjutnya, flipflop harus dipasang secara sinkron dengan unit lain dan sesuai dengan clocknya. Perhatikan gambar flipflop RS dengan clock.

Gambar 3.6
2.2. JK Flip-flop
Flip-flop JK merupakan penyempurnaan dari flipflop RS terutama untuk mengatasi kondisi terlarang seperti yang telah dijelaskan diatas. Pada kondisi masukan J = 1 dan K = 1 akan membuat kondisi keluaran berlawanan dengan kondisi keluaran sebelumnya. Sementara untuk keluaran berdasarkan kondisikondisi masukan yang lain semua sama dengan Flipflop RS.

Gambar 3.7

Tabel 3.4
2.3. D Flip-Flop
Flip-flop D merupakan Flip-flop RS yang memaksa untuk memiliki satu masukan dengan R selalu berlawanan dengan S, sehingga kondisi masukan SR sama tidak akan pernah terjadi. Perhatikan gambar flipflop D berikut.

Gambar 3.8

Tabel 3.5
2.4. T Flip-flop
Flipflop T atau flipflop toggle adalah flipflop JK yang kedua masukannya (J dan K) digabungkan menjadi satu sehingga hanya ada satu jalan masuk. Karakteristik dari flipflop ini adalah kondisi keluaran akan selalu toggle atau berlawanan dengan kondisi sebelumnya apabila diberikan masukan logika 1. Sementara itu kondisi keluaran akan tetap atau sama dengan kondisi keluaran sebelumnya bila diberi masukan logika 0.

Gambar 3.9

Tabel 3.6
2.5. Register
Register adalah rangkaian logika yang digunakan untuk menyimpan data. Dengan kata lain, register adalah rangkaian yang tersusun dari satu atau beberapa flipflop yang digabungkan menjadi satu. Flipflop disebut juga sebagai register 1 bit. Jadi untuk menyimpan 4 bit data, register harus terdiri dari 4 buah flipflop. Untuk menyimpan data pada register, dapat dilakukan dengan dua cara:
1. Disimpan secara sejajar (Parallel In):
Pada cara ini semua bagian register atau masingmasing flipflop diisi (dipicu) pada saat yang bersamaan.
2. Disimpan secara seri (Serial In):
Pada cara ini, data dimasukkan bit demi bit mulai dari flipflop yang paling ujung (dapat dari kiri atau dari kanan), dan digeser sampai semuanya terisi. Bila data digeser dari kanan kekiri disebut "Register geser kiri" (Shift Left Register), sebaliknya bila data digeser dari kiri kekanan disebut "Register geser kanan" (Shift Right Register). Register selain digunakan sebagai penyimpan data, juga sering digunakan sebagai Counter (lihat modul 2.2.6) dan operasi bilangan / ALU (lihat modul 3).
Seperti pada penyimpanan data, untuk mengeluarkan data juga dapat dilakukan dengan dua cara:
- Dikeluarkan secara sejajar (Parallel Out)
- Dikeluarkan secara seri (Serial Out) Parallel InParallel Out (PIPO).
Perhatikan gambar berikut:

Gambar 3.10
A, B, C, dan D adalah sinyal masukan. Saat clock (pemicu) diaktifkan (Logika 1), maka data yang ada akan dikeluarkan secara bersamasama ke Q3, Q2, Q1, dan Q0. Saat clock kembali tidak dipicu (Logika 0), maka apapun masukannya, keluaran Q akan tetap.
Serial InSerial Out (SISO) Perhatikan Gambar berikut:

Gambar 3.11
Saat sinyal clock diberikan pertama kali, data dari Si masuk ke flipflop A, pada saat clock kedua, data dari flipflop A masuk ke flipflop B, demikian seterusnya, sampai keluar ke So. Jadi pada register SISO untuk membaca data pertama kali dibutuhkan jumlah clock yang sama banyak dengan jumlah flipflop yang ada pada register (dalam hal ini adalah empat).
Parallel In -- Serial Out (PISO)

Gambar 3.12
Serial InParallel Out (SIPO)

Gambar 3.13