Jumat, 03 Juli 2015

Rangkaian Kombinasional dan Sequential



Rangkaian Logika pada dasarnya dibagi menjadi 2 jenis yaitu rangkaian kombinasional dan rangkaian sequential.
1. Rangkaian Kombinasional
            Rangkaian logika ini merupakan rangakain yang mempunyai keluaran sesuai dengan masukkan saat itu juga. Contoh dari rangkaian kombinasional adalah encoder, decoder, adder, subtractor, multiplexer, dan magnitude comparator.
Encoder
Encoder atau penyandi merupakan suatu sarana/piranti elektronika yang dapat mengubah/menterjemahkan bahasa yang dimengerti manusia (tampilan,dll) menjadi bahasa yang dimengerti oleh mesin (biner).
Encoder mempunyai n input dan m output, dimana satu input saja yang pada satu saat aktif, outputnya berupa kombinasi beberapa bit. Sebagai contoh penerapan encoder sederhana terdapat pada bagian input/tombol kalkulator. Bentuk umum encoder:
 
Decoder
Decoder atau pemecah sandi merupakan suatu sarana/piranti elektronika (rangkaian kombinasional) yang dapat mengubah bahasa mesin ke dalam bahasa yang dimengerti oleh manusia, atau menampilkan kode-kode biner menjadi tanda-tanda yang dapat ditanggapi secara visual. Decoder mempunyai 2n output.


rangakaian disamping adalah suatu rangkaian decoder 3-ke-8 (3 input, 23 = 8 output), dimana rangkaian tersebut menggunakan aplikasi dari gerbang AND.
Prinsip kerjanya adalah sebagai berikut, apabila:
·         Input bernilai 000, maka Y0akan “1”
·         Input bernilai 001, maka Y1akan “1”
·         Input bernilai 010, maka Y2akan “1”
·         Input bernilai 011, maka Y3akan “1”
·         Input bernilai 100, maka Y4akan “1”
·         Input bernilai 101, maka Y5akan “1”
·         Input bernilai 110, maka Y6akan “1”
·         Input bernilai 111, maka Y7akan “1”

Adder

Komputer-komputer digital banyak memperagakan tugas-tugas pemrosesan informasi. Dari sekian fungsi dasar, diantaranya adalah operasi-operasi aritmatika. Yang paling dasar dari operasi aritmatika adalah penmbahan (addition) dari dua digit biner.

Penambahan sederhana ini terdiri dari empat kemungkinan operasi dasar, yaitu 0 + 0 = 0, 0 + 1 = 1, 1 + 0 = 1, dan 1 + 1 = 1 0. Tiga operasi pertama menghasilkan suatu jumlah (sum) yang variabelnya adalah satu digit, tetapi augend (bit yang ditambahkan) dan addend (bit yang menambahkan) sama dengan 1 maka biner sum terdiri dari dua digit, dimana higher significant bit nya disebut carry (bawaan). Apabila bilangan augend dan addend memiliki significant digit lebih, maka carry dari hasil penambahan dua bit awal ditambahkan ke pasangan significant bit selanjutnya.

Adder dibagi menjadi dua yaitu, menambahkan dari dua bit yang disebut half adder  dan penambahan dari tiga bit yang disebut full adder.

Half Adder ( penambah-setengah)
Variabel-variabel input half adder dinyatakan dengan bit augend dan addend; outputnya menghasilkan sum and carry. Jika dinyatakan dengan x dan y sebagai input, sum
and carry sebagai ouput, maka dapat di identifikasikan fungsi dari Half-Adder, dengan tabel kebenarannya adalah:
X
y
Carry (bawaan)
Sum (jumlah)
0
0
0
0
0
1
0
1
1
0
0
1
1
1
1
0


Berdasarkan tabel diatas maka:
Sum     = x’y + xy’
Carry   = xy
Dan rangkaian Half-Adder nya:
 

Full Adder
Full-Adder merupakan rangkaian kombinasional yang melakukan aritmatika penjumlahan (sum) dari tiga input bit. Terdiri dari tiga input dan dua output, dua dari variabel input dinotasikan dengan A dan B, yang merepresentasikan dari dua bit yang akan ditambah, dan input ketiga Cin, me-representasikan carry dari lower significant sebelumnya.
Rangkaian Full-Addernya adalah:
 

Subctractor

Suatu pengurangan (substraction) dari dua bilangan biner dapat diselesaikan dengan menggunakan komplemen satu subtrahend (bit yang mengurangi) dan menambahkannya pada minuend (bit yang dikurangi). Dengan cara ini, operasi pengurangan akan menjadi suatu operasi penambahan yang memerlukan full-adder pada implementasi rangkaiannya. Substractor dibagi menjadi Half-Substractor dan Full-Subtractor.

Half-Subtractor
Merupakan suatu rangkaian kombinasional yang mengurangkan dua bit dan akan menghasilkan selisih dua bit tersebut. dinotasikan misalnya A sebagai minuend dan B sebagai subtrahend bit.
Untuk dapat menunjukan A-B, harus diperiksa besaran relatif dari A dan B. Jka A > B, terdapat tiga kemungkinan: 0-0 = 0, 1-0 = 1, dan 1-1 = 0, hasilnya disebut Difference Bit (bit selisih).
Jika A < B atau A = B, terdapat 0-1 yang perlu meminjam (Borrow) 1 digit dari tingkat yang lebih tinggi berikutnya. Pinjaman 1 tersebut menambahkan 2 kepada minuend nya (seperti dalam desimal menambahkan 10 kepada minuend). Dengan minuend bernilai 2 (dalam biner 10), maka selisihnya menjadi 2-1 = 1.
Jika dinyatakan D sebagai selisih dan Bor sebagai pinjaman, maka truth tabelnya adalah:
A
B
Bor (pinjaman)
D (selisih)
0
0
0
0
0
1
1
1
1
0
0
1
1
1
0
0
 


Dan rangkaian Half-Substractor nya adalah:
 

Full-Substractor
Merupakan suatu rangkaian kombinasional yang melakukan suatu pengurangan antara tiga bit (dua bit dikurangkan dan satu bit adalah borrow dari tingkat sebelumnya).
Full-Substractor dapat diimplementasikan dengan 2 Half-Substractor dan 1 OR, dimana D adalah output dari HS kedua yaitu hasil EX-OR antara input Bor-in dangan output HS pertama, dan input Bor-in adalah pinjaman dari HS sebelumnya.

Rangkaian Full-Substractor:
 

Multiplexer

Multiplexer digital merupakan suatu rangkaian kombinasional yang menyeleksi satu informasi biner dari banyak saluran input dan mengeluarkan informasi biner tersebut pada satu saluran output.
Penyeleksian suatu saluran input dikendalikan oleh saluran seleksi, oleh karena itu multiplexer disebut juga dengan selector data. Secara sederhana, pada multiplexer terdapat 2n saluran input dan n saluran selektor, dimana kombinasi-kombinasi bitnya menunjukkan input mana yang dipilih.
Dengan menggunakan gerbang NOT, AND, dan OR, dapat dibuat rangkaian multplexer, seperti berikut:
 
 

         Prinsip kerjanya adalah apabila: 

  • Selektor = 0 0 maka data input yang diseleksi = d0, sehingga F=d0
  • Selektor = 0 1 maka data input yang diseleksi = d1, sehingga F=d1
  • Selektor = 1 0 maka data input yang diseleksi = d2, sehingga F=d2
  • Selektor = 1 1 maka data input yang diseleksi = d3, sehingga F=d3 
Magnitude Comparator
Magnitude comparator merupakan rangkaian kombinasional yang membandingkan dua buah bilangan biner, A dan B, dan menentukan besaran-besaran relatifnya, dimana output dari perbandingannya dispesifikasikan dengan tiga variabel yang menunjukan apakah A > B, A = B, atau A < B.

2. Rangkaian Sequential
Rangkaian ini memberi output yang akan memperhitungkan/ mempertimbangkan ouput sebelumnya. Contoh dari rangkaian ini adalah flip-flop yang merupakan dasar dari rangkaian yang lain misalnya counter dan register.
Flip-flop
Flip-flop merupakan piranti elektronika yang memiliki dua keadaan output yang stabil, dimana suatu rangkaian flip-flop dapat memperthankan satu keadaan biner dari dua keadaan (selama catu terpasang) sampai adanya sinyal input pemicu yang membuatnya berganti keadaan. Rangkaian dasar suatu flip-flpo dapat dikonstruksikan dengan dua gerbang NOR atau dua gerbang NAND dimana masing-masingnya memiliki dua output, Q dan Q’, dan dua input, Set dan Reset.
NOR Latch
Dua buah NOR gate yang saling disilangkan dikenal sebagai NOR gate latch, dengan duabuah output Q dan Q’ yang saling berlawanan serta dua buah input SET dan RESET,
seperti ditunjukkan pada gambar 7.4. Jika logika 1 diberikan pada input S, maka kondisi
ini menyebabkan FF di set ke 1 (Q=1). Jika logika 1 diberikan ke input R, maka kondisi
ini menyebabkan FF di reset ke 0 (Q=0).
 

Tabel kebenaran:
Set
reset
Output
0
0
No Change
0
1
Q=0; Q’=1
1
0
Q=1; Q’=0
1
1
Indeterminate
 

Rangkaian logika NOR latch:
 

NAND Latch
Apabila disusun dari NAND gate, disebut dengan NAND gate latch atau secara sederhanadisebut latch, Dua buah NAND gate disilangkan antara output NAND gate-1 dihubungkan dengan salah satu input NAND gate-2, dansebaliknya. Output gate (output latch) diberi nama Q dan Q’. Pada kondisi normal keduaoutput tersebut saling berlawanan. Input latch diberi nama SET dan RESET.

Tabel kebenaran:
 

Set
reset
Output
0
0
Indeterminate
0
1
Q=1; Q’=0
1
0
Q=0; Q’=1
1
1
No Change

Rangkaian logika NAND latch:
 

RS Flip-Flop

RS flip-flop terdiri dari suatu flip-flop dasar dan dua tambahan NAND gate. Input pulsa berlaku sebagai suatu enable signal bagi kedua input. Output-output gerbang 3 dan 4 akan tetap pada logika 1 selama input CP berada di 0. Jika input CP berganti 1 informasi dari input set dan reset akan dilewati untuk mencapai output.
            Kondisi set tercapai dengan set=1, reset=0, dan CP=1, dimana output gerbag 3 menuju 0, output gerbang 4 tetap 1, dan output Q akan 1. Untu berganti ke kondisi reset, input-inputnya harus set=0, reset=1, dan CP=1. Hal lainnya, jika CP berganti ke 0, rangkaian bertahan pada kondisi sebelumnya (tidak berubah), dan jika CP=1 dan kedua input set dan reset = 0, kondisi rangkaian juga tidak berubah.
            Kondisi indeterminate muncul ketika CP=1 dan kedua input set dan reset=1. Kondisi ini membuat output gerbang 3 dan 4 akan 0, dan output Q dan Q’ akan 1. Jika CP kembali ke 0, (set dan reset bertahan di 1) adalah tidak mungkin intuk mengidentifikasi keadaan yang akan datang (next state), dimana hal tersebut tergantung pada output gerbang 3 atau 4 yang akan mencapai logika 1 terlebih dahulu.
 
 

D Flip-Flop

            Untuk mengeliminasi kondisi yang tidak diinginkan dari keadaan indeterminate RS flip-flop, terdapat cara yaitu dengan memastikan input set dan reset selamanya tidak sama dengan 1 pada saat yang sama, dan ini adalah dengan D flip-flop.
            D flip-flop hanya memiliki dua input, D dan CP. Input D langsung dihubungkan pada R. Selama CP=0, output gerbang 3 dan 4 bernilai 1 dan rangkaian tidak dapat berubah keadaan.
            Ketika CP=1, input D diambil ; jika D=1, ouptu Q akan 1, dan rangkaian akan set; jika D=0, output akan 0, dan rangkaian akan reset (clear).
Q(t)
T
Q(t + 1)
0
0
0
0
1
1
1
0
0
1
1
1

 
 

JK Filp-Flop

            JK flip-flop merupakan perbaikan dari RS flip-flop, dimana keadaan indeterminate RS flip flop dapat diidentifikasikan  pada JK flip-flop. Input J dan K berlaku seperti S dan R. Ketika kedua input J dan K sama dengan 1, flip-flop berganti ke keadaan komplemennya, yaitu Q=1, berganti ke Q=0, dan sebaliknya, jika Q=0 berganti ke Q=1.
            JK flip-flop dikonstruksikan dengan dua cross-coupled NAND gate dan dua NAND gate. Output Q di NAND-kan dengan K dan CP, sehingga flip-flop reset selama satu clock pulsa, hanya jika keadaan Q sebelumnya 1.
            Dan juga halnya, output Q’ di NAND-kan dengan J dan CP, sehingga flip-flop set selama satu clock pulsa, hanya jika keadaan Q’ sebelumnya 1.
            Ketika J dan K = 1, input pulsa ditranmisikan melalui hanya satu NAND gate : yaitu yang inputnya dihubungkan pada output flip-flop yang keadaan telah 1. Dan jika Q=1, output NAND bawah menjadi 0, dan flip-flop menjadi reset; jika Q’=1, output NAND atas menjadi 0, dan flip-flop menjadi set. Dalam kondisi tersebut, kondisi ouput flip-flop dikomplemenkan.
 

T Flip-Flop

            T flip-flop adalah versi satu input dari JK FF, dimana input J dan K disatukan sebagai input T. Notasi T berasal dari kemampuan FF untuk men-“Toggle” atau mengkomplemen keadaan. Tabel karakteristik:
Q(t)
T
Q(t + 1)
0
0
0
0
1
1
1
0
1
1
1
0

 
 
Counters
Rangkaian counter adalah rangkaian elektronika yang befungsi untuk melakukan penghitungan angka secara berurutan baik itu perhitungan maju ataupun perhitungan mundur. Yang dimaksud dengan perhitungan maju adalah di mana rangkaian akan menghitung mulai dari angka yang kecil menuju angka yang lebih besar. Sedangkan perhitungan mundur adalah sebaliknya. Perhitungan bisa mencapai jumlah yang tidak terbatas tergantung perancangan rangkaian ataupun tuntutan kebutuhan. Untuk contoh diatas hanya menggunakan satu buah IC decade counter dan satu buah seven segment sehingga hanya bisa mewakili fungsi akan satu digit atau angka satuan. Untuk membuat fungsi yang lebih banyak anda tinggal menambah IC dan 7-segmentnya sesuai dengan fungsi yang diinginkan.
            Banyak sekali kegunaan dari rangkaian counter ini didunia elektronika digital. Bahkan menurut saya bisa dikatakan elektronika digital tidak terpisahkan dengan rangkaian counter. Hampir semua rangkaian digital memerlukan rangkaian counter. Hal itu dikarenakan untuk menerapkan fungsi penghitungan angka atau operasi matematika harus menggunakan fungsi dari rangkaian counter.Counter merupakan salah satu rangkaian elektronika digital yang menggunakan urutan logika digital dan dipicu oleh pulsa atau clock (rangkaian sekuensial). Counter biasanya mencacah atau menghitung dalam biner dan dapat dibuat untuk berhenti atau berulang ke hitungan awal setiap saat. Pada counter yang berulang, jumlah kondisi biner yang berbeda menunjukkan modulus (MOD) counter. Sebagai contoh, counter yang mencacah dari 0-1-2-3-4-5-6-7 secara berulang disebut juga modulus 8 atau MOD-8. Rangkaian dasar counter adalah beberapa flip-flop yang jumlahnya bergantung pada modulus yang diperlukan. Secara  umum, counter terbagi menjadi 2 jenis, yaitu asynchronous counter (ripple counter) dan synchronous counter.

            Asynchronous counter (ripple counter) merupakan counter yang masukan clock pemicunya tidak terhubung ke setiap flip-flop secara langsung. Clock pemicunya harus merambat melalui setiap flip-flop untuk mencapai masukan flip-flop yang berikutnya.

            IC 74LS90 merupakan ripple counter 4-bit yang terdiri atas bagian pembagi-2 dan bagian pembagi-5. Dua bagian ini dapat dikaskade untuk membentuk pembagi-10(decade/BCD counter) dengan menghubungkan Q0 ke CLK1 secara eksternal. Counter ini mempunyai 2 masukan reset yaitu MR1 dan MR2 dan 2 masukan set yaitu MS1 dan MS2, serta 4 kaki luaran yaitu Q0, Q1, Q2, dan Q3. Kaki 10 dihubungkan ke GND dan kaki 5 dihubungkan ke +5V. Susunan kaki IC 74LS90 dapat dilihat dalam Gambar 6.1.
 
 
            Synchronous counter merupakan counter yang masukan clock pemicunya dihubungkan ke setiap flip-flop, sehingga setiap flip-flop akan beroperasi dengan masukan transisi clock yang sama. Pada synchronous counter harus dipastikan bahwa setiap flip-flop menahan transisi luarannya sampai tiba gilirannya.
            IC 74LS190 adalah synchronous BCD counter (0 sampai 9). IC ini mempunyai 4 masukan P0, P1, P2, dan P3 yang digunakan untuk mengeset mulainya hitungan dengan operasi Parallel Load ( PL ). Counter ini juga menghitung up/down dengan menentukan masukan U / D. Kaki Count Enable (CE ) adalah masukan aktif-LOW yang digunakan untuk meng-enable/inhibit counter. Kaki luaran yang ada pada IC 74LS190 adalah Q0, Q1, Q2, dan Q3 serta TC (Terminal Count) dan RC (Ripple Clock). TC maupun RC dapat digunakan
sebagai masukan clock untuk counter yang lebih tinggi. Kaki 8 dihubungkan ke GND dan kaki 16 dihubungkan ke +5V. Susunan kaki IC 74LS190 dapat dilihat dalam Gambar 6.2.

 



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).

Seperti pada penyimpanan data, untuk mengeluarkan data juga dapat dilakukan dengan dua cara :
1.Dikeluarkan secara sejajar (Parallel Out)
2.Dikeluarkan secara seri (Serial Out)
Ada tiga jenis register yaitu:
1.    Register penyangga data (register buffer)
2.    Register buffer terkendal
3.    Register geser

Sinyal kendali LOAD adalah input kendali yang menentukan operasi rangkaian.Ketika LOAD = 0, semua input data tidak diizinkan masuk, artinya flip-flop mengisolasi input data atau menahan semua data yang ada di dalamnya. Dengan kata lain, register tidak berubah selama LOAD = 0. Ketika LOAD = 1, semua input data akan diterima oleh register. Ketika LOAD kembali = 0, maka input data yang diterima register tadi akan tersimpan dengan aman tanpa gangguan perubahan input.

Register Shift Terkendali adalah register geser yang ditambah dengan beberapa gerbang logika dasar AND, OR, dan NOT. Register geser terkendali memiliki input-input kendali yang mengatur operasi rangkaian pada pulsa-pulsa pendetak berikutnya. Gambar rangkaian memperlihatkan bagaimana operasi penggeseran ke kiri dapat dikendalikan.
SHL adalah sinyal kendali. Jika SHL = 0, setiap output flip-flop masuk kembali ke input datanya sehingga data tetap tersimpan pada setiap flip-flop pada waktu pulsa-pulsa pendetak tiba. Dengan begitu, semua data dapat disimpan selama waktu yang diinginkan. Jika SHL = 1, maka input data (D in) akan masuk ke flip-flop yang paling kanan dan output pada flip-flop paling kanan (Q0) akan masuk menjadi input ke flip-flop kedua di sebelah kirinya. Kemudian outputnya (Q1) akan masuk juga menjadi input ke flip-flop selanjutnya yang di sebelah kiri. Begitu berulang-ulang seterusnya. Dengan kata lain data yang tersimpan pada register akan berubah karna setiap data bergeser satu posisi ke kiri. Contoh : 0001 kemudian diinputkan 0 maka akan menjadi 0010.