61
KATA PENGANTAR
Modul Perancangan Sistem Digital menggunakan Simulator Xilinx Foundation
F2.1i ini ditujukan bagi peserta kursus satu minggu dengan judul yang sama yang
diselenggarakan oleh Universitas Gunadarma. Tujuan dari modul ini adalah agar
mahasiswa dapat memahami dan mampu merancang rangkaian digital.
Modul Perancangan Sistem Digital Menggunakan Simulator Xilinx terdiri dari 5
pokok bahasan. Dimulai dari pokok bahasan pertama yang membahas tentang simulator
Xilinx secara umum, kedua membahas schematic editor dan functional simulation untuk
rangkaian digital yang sederhana, dan ketiga mengenai counter, ke-empat bagaimana
menentukan suatu keputusan dengan binary counter, dan yang terakhir mengenai output-
forming logic design.
Kami selaku tim penyusun modul ini menyadari masih terdapat banyak
kekurangan dan dengan segala kerendahan hati kami menerima masukan serta kritikan
yang bersifat membangun dengan hati yang lapang.
Depok, Oktober 2004
Penyusun
62
DAFTAR ISI
Kata Pengantar ..................................................................................................................i
Daftar Isi ..........................................................................................................................ii
BAB I Pendahuluan ..................................................................................................1
1.1 Perangkat Lunak Xilinx .......................................................................................1
1.2 Proses Perancangan secara umum .......................................................................2
1.3 Tipe Peralatan : FPGA dan CPLD .......................................................................3
1.4 Xilinx Project Manager ……................................................................................4
BAB II Simulator Xilinx pada Rangkaian Digital Sederhana ..............................7
2.1 Disain Rangkaian Digital dengan Xilinx .............................................................7
2.2 Schematic Editor ………………………………………………………………..8
2.3 Functional Simulation …………………………………………………………11
2.4 Simulasi Gerbang Dasar ………………………………………………………13
2.5 Penyederhanaan Rangkaian ……………………………………………………17
BAB III COUNTER .................................................................................................25
3.1 Counter secara umum ………………………………………………………….25
3.2 Flip-flop ……………………………………………………………………….26
3.3 State Machine ………………………………………………………………….28
3.4 Perancangan Counter ………………………………………………………….32
BAB IV MENENTUKAN KEPUTUSAN DENGAN BINARY COUNTER ......51
4.1 Menentukan keputusan dengan binary counter ……………………………….51
4.2 Perancangan Rangkaian dengan State Editor …………………………………52
63
BAB V OUTPUT FORMING LOGIC .................................................................61
5.1 Output Forming Logic …………………………………………………………61
5.2 Komponen-komponen Output Forming Logic ………………………………..62
5.3 Perancangan rangkaian digital mesin jamu pilih ...............................................67
Daftar Pustaka
64
BAB I
PENDAHULUAN
OBYEKTIF :
- Memahami perangkat lunak Xilinx secara umum
- Memahami komponen-komponen simulator Xilinx
1.1 Perangkat Lunak Xilinx
Xilink ( Xilink Foundation Series) adalah suatu perangkat lunak yang berguna
untuk merancang dan mensimulasikan suatu rangkaian digital. Dengan menggunakan
Xilink proses perancangan suatu alat atau rangkaian digital melalui proses simulasi
rangkaian yang telah dirancang untuk melihat apakah rancangan yang telah dibuat sudah
benar atau masih mengandung kesalahan.
Gambar 1.1 : Xilinx Foundation Series
Sebenarnya tahapan atau proses perancangan alat atau rangkaian digital
menggunakan Xilinx sama seperti merancang suatu rangkaian logika secara manual akan
tetepi kelebihan menggunakan simulator Xilinx dapat diminimalisasi kesalahan pada
proses perancangan. Sebelum mulai merancang rangkaian pada Xilink minimal sudah
dilakukan rancangan state diagram atau tabel kebenaran (truth tables) dari spesifikasi
rangkaian atau alat yang ingin dibuat. Kalau tidak mempunyai rancangan tersebut, Xilink
tidak dapat membantu dalam merancang alat tersebut.
65
Untuk perancangan rangkaian digital, Xilink mempunyai tiga cara, yaitu dengan
menggunakan State Diagram, HDL (Hardware Description Language) dan Schematic.
Dalam perancangan bisa menggunakan salah satu cara saja atau menggabungkan ketiga
cara tersebut. Untuk HDL, Xilink dapat menggunakan dua bahasa pemrograman yaitu
ABEL dan VHDL.
1.2 Proses Perancangan Secara Umum
Proses perancangan menggunakan simulator Xilinx secara umum dapat dilihat
pada gambar 1.2 dimana proses perancangan dapat dibagi menjadi 3 bagian yaitu pertama
perancangan rangkaian, kemudian verifikasi hasil rancangan dan proses yang ketiga
implementasi rancangan[1].
Gambar 1.2 : Proses perancangan secara umum
Perancangan rangkaian pada dasarnya terdiri dari 2 mode yaitu schematic dan
Hardware Description Language (HDL). HDL merupakan bahasa pemrograman seperti
VHDL, Verilog dan ABEL. Pada Schematic flow mode dimungkinkan untuk merancang
rangkaian yang terdiri dari top-level schematic atau file top-level ABEL, yang terdiri dari
schematic diagram, state machine macro, macro HDL (ABEL, VHDL atau Verilog),
LogiBLOX, Modul generator CORE.
Implementasi rancangan pada xilinx dengan meng-compile file rancangan menjadi file
konfigurasi yang telah dioptimalisasi dari penggunaan gerbang logika dan interkoneksi
(wiring) antar komponen. Download bitstream dapat dilakukan dengan mudah dari PC ke
FPGA (menggunakan demoboard Xilinx, XS40 atau XSV) atau pada CPLD (board
66
XS95). Kedua peralatan tersebut juga dapat diprogram dalam sistem dengan
menghubungkan JTAG atau kabel Xchecker ke peralatan pin yang telah di program.
Verifikasi rancangan termasuk didalamnya functional simulation, testing
rangkaian, dan timing simulation. Functional simulation dapat dilakukan setelah
menggambar rancangan pada schematic editor untuk memverifikasi kebenaran rangkaian.
Akan tetapi functional simulation tidak menyediakan timing information seperti delay,
race condition, set-up dan hold-time violations. Informasi ini diperoleh dari static timing
simulator dan dilakukan setelah rancangan di-compile. Gambar 1.3 menunjukkan proses
yang dilakukan pada schematic flow projct.
Gambar 1.3 : Schematic flow project [2]
1.3 Tipe Peralatan : FPGA dan CPLD Tipe Programmable logic devices ada dua yaitu field programmable gate array
(FPGA) dan complex logic device (CPLD). Peralatan CPLD XC9500 berasitektur
PALdan merupakan non-volatile yang mempunyai kinerja yang baik (diatas 250 MHz)
dan sangat sesuai untuk rangkaian logika kombinasional dan logika kontrol dengan
kompleksitas medium (diatas sekitar 10.000 gerbang logika). Peralatan FPGA (contoh
67
XC4000 series) berasitektur array dan volatile (SRAM) yang digunakan untuk lookup
tables (disimpan pada memori SRAM) untuk mengimplementasikan fungsi logika. Perlu
dipahami mengenai fungsi logika yang kompleks yang terdiri dari rangkaian
kombinasional dan sekuensial, dimana kapasitasnya terbatas oleh jumlah pin input/output
dan bukan dari segi kompleksitasnya. FPGA dapat di implementasikan pada gerbang
logika diatas sekitar 1 juta gerbang dan beroperasi diatas 150 MHz. XC4000XL dan
XC9500XL adalah peralatan 3,3V dengan 3,3V Vcc tetapi mempunyai toleransi I/O
sekitar 5V.
Peralatan terbentuk dari paket yang bervariasi. Demoboard FPGA atau board
XS40 dan XS95 merupakan suatu paket dengan 84 pin PLCC dan terdiri dari :
XC4010EPC84, XC4005XLPC84 dan XC95108PC84. Untuk menentukan peralatan
mane yang akan digunakan, telitilah board yang tersedia. Informasi lebih detil dari
peralatan ini dapat dilihat pada Xilinx Programmable Logic Data book. Pin out dari
peralatan XC400 dan XC9500 84-pin dapat dilihat pada website Xilinx.
1.4 Xilinx Project Manager
Program Xilinx dapat dijalankan dengan START/PROGRAM/XILINX
FOUNDATION SERIES/XILINX FOUNDATION PROJECT MANAGER atau dengan
klik ikon seperti yang terlihat pada gambar 1.4.
Gambar 1.4 : Ikon project manager
Pada saat mulai menjalankan Xilinx, window Project Manager akan terbuka
seperti yang dapat dilihat pada gambar 1.5. Project Manager adalah aplikasi utama yang
berfungsi untuk mengatur dan mengintegrasikan semua aplikasi-aplikasi yang terdapat
dalam Xilink Foundation Series. Aplikasi - aplikasi tersebut adalah Schematic Editor,
HDL Entry, State Editor, Logic simulator dan external third-party programs.
68
Gambar 1.5 : Project manager
Project manager memberikan akses ke semua tools yang dibutuhkan pada proses
perancangan, simulasi dan implementasi projek. Dari project manager window juga
dapat membuat project baru, membuka project yang telah dibuat serta menghapus
project.
Memulai project baru (pada contoh PERC1AND), foundation tool membentuk
beberapa file, yaitu ; file konfigurasi project (PDF) yang disebut dengan Project
Description File (perc1and.pdf) dan 3 file library
Project manager window diatas dibagi menjadi tiga bagian utama :
- hierarcy browser
- project flowchart
- message window
Hierarchy Browser
Hierarchy Browser menampilkan struktur diagram pohon dari project document ( Project
document adalah file utama dari setiap project yang berisi mengenai deskripsi rancangan
yang sedang dibuat, yang dapat berupa schematic, state diagram, atau HDL editor.
69
Project Flowchart
Project Flowchart adalah representasi grafik dari proses rancangan yang berguna untuk
menunjukkan langkah-langkah yang terjadi dalam suatu operasi. Walaupun kita hanya
menjalankan salah satu aplikasi, misalnya State Editor, secara otomatis Project Manager
ikut aktif pula. Bila kita sudah
berada didalam Project Manager kita bisa mulai merancang rangkaian digital kita. Alur
kerja Project Manager adalah sebagai berikut :
1. Rancangan digital dapat menggunakan salah satu dari HDL Entry, Schematic
Editor atau State Editor atau menggunakan ketiga - tiganya.
2. Functional Simulator akan memerikasa apakah rancangan yang dibuat sudah
benar atau belum. Bila masih salah kita dapat untuk mengedit kembali
rancangan yang telah dibuat sampai kesalahan yang ada diperbaiki semuanya.
3. Setelah itu timing simulation dapat kita jalankan untuk melihat hasil
rancangan rangkaian digital kita.
4. Foundation Implementation tools akan meng-compile rancangan yang telah
dibuat menjadi bitstream yang sesuai dengan target device yang dipilih
(XC9500 atau XC4005 ).
5. Setelah itu dapat dilihat jalannya program yang telah dibuat pada pada papan
simulator XS95 atau XS40 yang dihubungkan melalui kabel pararel ke
komputer.
Untuk langkah 5 dan 6 tidak akan dibahas, karena untuk melakukan
langkah-langkah tersebut diperlukan alat tambahan ( XS95 atau XS40 ).
Message Window
Message Window menampilkan isi dari project log (semua perintah dan berita yang
dikirim dan diterima oleh project manager).
70
BAB II
SIMULATOR XILINX PADA
RANGKAIAN DIGITAL SEDERHANA
OBYEKTIF :
- Memahami perangkat lunak Xilinx
- Mampu menggambarkan gerbang digital dasar pada schematic editor
- Mampu mensimulasikan gerbang dasar digital
- Mampu menyederhanakan rangkaian digital dan mensimulasikannya
2.1 Disain Rangkaian Digital dengan Xilinx
Projek baru dapat dimulai klik File New project. Setelah itu akan muncul
window New Project. Kemudian tuliskan nama project dan direktori tempat file project
akan disimpan, tipe, chip famili dan chip part number serta device speed. Seperti yang
terlihat pada gambar 2.1 dengan nama projek baru PERC1AND dengan direktori
C:\active\projects.
Gambar 2.1 : New Project
Membuka window New Project juga dapat dilakukan dengan klik ikon new
project seperti yang terlihat pada gambar 2.1. Setelah klik OK, tampilan Project Manager
akan terlihat seperti pada gambar 2.2.
71
Gambar 2.2 : Projek PERC1AND
Pada bagian selanjutnya akan dibahas mengenai schematic editor dan simulasi.
2.2 Schematic Editor
Klik Schematic editor untuk bisa memulai menggambar rangkaian sehingga akan
terbuka window seperti gambar 2.3, atau dengan klik Tools Schematic editor.
Gambar 2.3 : Schematic editor
Pada gambar 2.3 dapat dilihat beberapa ikon disamping sebelah kiri gambar.
Untuk mulai menyusun rangkaian kita pilih Mode Symbols atau dengan klik ikon
symbol toolbox, sehingga akan muncul SC Symbols window seperti yang terlihat pada
gambar 2.4. Di dalam SC Symbol window ini kita memilih komponen yang akan kita
rangkai.
72
Gambar 2.4 : SC Symbols
Pada percobaan pertama ini gambar gerbang and dengan dua masukan ( A dan B ) dan
satu keluaran (Y) seperti yang terlihat pada gambar 2.5.
Gambar 2.5 : Gambar Schematic Editor Gerbang AND
Input dan output (A, B dan Y) digambar dengan klik hierarchy connector atau
I/O Terminal kemudian ketik terminal name dan type terminal, seperti yang terlihat pada
gambar 2.6. Setelah itu gambar wire dengan klik draw wire. Hubungkan input A dan B
serta keluaran Y dengan gerbang AND seperti yang terlihat pada gambar 2.5.
73
Gambar 2.6 : I/O terminal
Setelah selesai membuat rangkaian periksa apakah rangkaian sudah benar atau
belum, caranya dengan memilih Options Create Netlist setelah itu pilih Options
Integrity Test. Jika rangkaian masih ada yang salah maka Xilinx akan menampilkan
kesalahan tersebut, sehingga rangkaian dapat diperbaiki sampai benar.
Setelah memeriksa kebenaran rangkaian lanjutkan dengan mengirim netlist yang
sudah dibuat tadi. Maksud dari pengiriman netlist ini supaya rancangan rangkaian dapat
dibaca oleh aplikasi Xilinx yang lain (seperti Simulator). Caranya pilih Options
Export Netlist. Export Netlist window akan muncul. Pilih Edit 200 [*.EDN] pada Netlist
Format. Setelah itu tekan OK.
Dari gambar rangkaian yang telah digambar dapat diperoleh HDL Program
(hanya tersedia VHDL). Caranya adalah pilih Options Export Netlist. Kemudian
pilih Vhdl [ *.VHD ] pada Netlist Format setelah itu tekan OK. Sekarang dapat dilihat
HDL program dari Gambar rangkaian yang telah digambar. Berikut ini adalah listing
programnya (dalam VHDL) :
-- ACTIVE-CAD-2-VHDL, 2.5.4.34, Fri Nov 26 02:34:02 2004
LIBRARY IEEE;
USE IEEE.std_logic_1164.all;
library x1;
use x1.GLOBAL_SIGNALS.all;
entity X1 is port (
A : in std_logic;
B : in std_logic;
74
Y : out std_logic
); end X1;
architecture STRUCTURE of X1 is
--COMPONENTS
component AND2 port (
I0 : in std_logic;
I1 : in std_logic;
O : out std_logic
); end component;
--SIGNALS
begin
--SIGNAL ASSIGNMENTS
--COMPONENT INSTANCES
X36_I1 : AND2 port map(
I0 => B,
I1 => A,
O => Y
);
end STRUCTURE;
2.3 Functional Simulation
Setelah selesai membuat rancangan Schematic sekarang dapat dilihat simulasi
Timing Diagram yang dihasilkan oleh rangkaian yang telah dibuat. Caranya adalah
meng-klik simulator pada Project Window. Kemudian akan tampak Logic-Simulator
Foundation window dan Waveform Viewer Window yang masih kosong. Seperti yang
terlihat pada gambar 2.7.
Gambar 2.7 : Simulator
75
Yang pertama harus lakukan adalah menambahkan input dan output pada
Waveform Viewer supaya dapat melakukan simulasi. Caranya adalah pilih Signal Add
Signals. Component Selection for Waveform Viewer window akan muncul seperti yang
terlihat pada gambar 2.8. Kemudian pilihlah Input dan Output yang akan disimulasikan.
Setelah selesai pilih Close.
Gambar 2.8 : Component selection for waveform viewer
Setelah semua Input dan Output dipilih, tambahkan Stimulator supaya rangkaian
dapat disimulasikan. Caranya pilih Signal Add Stimulators. Stimulator Selection
window akan muncul seperti yang terlihat gambar 2.9.
Gambar 2.9 : Stimulator selection
Sekarang rangkaian siap untuk disimulasikan. Untuk itu pilih View Main
Toolbox untuk menampilkan Simulator window. Klik step atau long maka Timing
Digram akan muncul, seperti yang terlihat pada gambar 2.10.
76
Gambar 2.10 : Hasil simulasi gerbang And
Dari Timing Diagram terlihat hasil simulasi gerbang And yaitu 000, 100, 010, 111
dan seterusnya. Dari timing diagram dapat dilihat bahwa herbang And adalah gerbang
yang memberikan keluaran hanya bila semua masukan ada. Dengan kata lain gerbang
AND merupakan gerbang semua atau tidak ada ; keluaran hanya terjadi bila semua
masukan ada.
2.4 Simulasi Gerbang Dasar
Pada bagian ini menggambar semua gerbang logika dasar dan mensimulasikan
masing-masing gambar tersebut.
2.4.1 Gerbang OR
Gerbang OR adalah gerbang dimana salah satu atau semua masukan; keluaran
terjadi bila salah satu atau semua masukan ada. Gerbang OR memberikan keluaran 1 bila
salah satu masukan atau ke dua masukan adalah 1. Lihat gambar 2.11 dan gambar 2.12.
Gambar 2.11 : Schematic editor gerbang OR
77
Gambar 2.12 : Simulasi gerbang OR
2.4.2 Gerbang NOT
Gerbang NOT adalah gerbang logika yang memberikan keluaran tidak sama
dengan masukannya. Gerbang NOT disebut juga inverter. Gerbang ini mempunyai
sebuah masukan dan sebuah keluaran, yang dilakukannya hanyalah membalik sinyal
masukan; jika masukan tinggi, keluaran adalah rendah, dan sebaliknya. Lihat gambar
2.13 dan 2.14.
Gambar 2.13 : Schematic editor gerbang NOT
Gambar 2.14 : Simulasi gerbang NOT
2.4.3 Gerbang NAND (NOT-AND)
Gerbang NAND adalah gerbang AND yang diikuti gerbang NOT dengan simbol seperti
pada gambar 2.15 dan simulasi gerbang NAND dapat dilihat pada gambar 2.16.
78
Gambar 2.15 : Schematic editor gerbang NAND
Gambar 2.16 : Simulasi gerbang NAND
2.4.4 Gerbang NOR
Gerbang NOR adalah gerbang OR yang diikuti gerbang NOT. Lihat gambar 2.17
dan 2.18.
Gambar 2.17 : Schematic editor gerbang NOR
Gambar 2.18 : Simulasi gerbang NOR
79
2.4.5 Gerbang XOR
Gerbang ini mempunyai dua masukan dan satu keluaran. XOR adalah nama lain
dari Oreksklusif, disebut demikian karena gerbang XOR memberikan keluaran 1 bila
masukan pertama atau masukan kedua adalah 1, namun tidak kedua-duanya. Dengan
kata lain, gerbang XOR mempunyai keluaran 1 hanya bila ke dua masukannya berbeda
dan keluarannya 0 apabila ke dua masukannya sama. Lihat gambar 2.19 dan 2.20.
Gambar 2.19 : Schematic editor gerbang XOR
Gambar 2.20 : Simulasi gerbang XOR
2.4.6 Gerbang XNOR
Gambar 2.21 : Schematic editor gerbang XNOR
Gambar 2.22 : Simulasi gerbang XNOR
80
2.5 Penyederhanaan Rangkaian
Penyederhanaan rangkaian logika dapat dilakukan dengan beberapa metode
seperti metode Peta Karnaugh, metode Maksterm/Minterm, metode Aljabar Boolean dan
lain sebagainya. Pada sub bagian ini dengan menggunakan simulator Xilinx dapat di
ketahui kebenaren hasil penyederhanaan rangkaian dengan mensimulasikan rangkaian
sebelum disederhanakan dan yang setelah disederhanakan, dan kemudian
membandingkan apakah timing diagram kedua rangkaian tersebut sama atau tidak.
2.5.1 Menyederhanakan rangkaian CBACBACBACBAY +++= :
Untuk menyederhanakan rangkaian CBACBACBACBAY +++= dapat
dilakukan dengan langkah-langkah sebagai berikut :
Langkah -1 : gambar rangkaian CBACBACBACBAY +++= pada schematic editor,
seperti yang terlihat pada gambar 2.23.
Gambar 2.23 : schematic editor CBACBACBACBAY +++=
Langkah -2 : simulasikan rangkaian CBACBACBACBAY +++= , seperti yang
terlihat pada gambar 2.24.
81
Gambar 2.24 : hasil simulasi CBACBACBACBAY +++=
Langkah -3 : sederhanakan rangkaian CBACBACBACBAY +++= , pada gambar 2.25
penyederhanaan rangkaian menggunakan peta karnaugh.
AB C
00 01 11 10
0 1 0 0 1
1 1 0 0 1
Gambar 2.25 : Peta Karnaugh rangkaian CBACBACBACBAY +++=
Langkah -4 : gambar rangkaian yang telah disederhanakan, seperti yang terlihat pada
gambar 2.26.
Gambar 2.26 : Schematic editor Y = B
Langkah -5 : simulasikan rangkaian yang telah disederhanakan, seperti yang terlihat pada
gambar 2.27.
Y = B
82
Gambar 2.27 : simulasi
Langkah -6 : bandingkan hasil simulasi rangkaian sebelum disederhanakan (langkah-2)
dengan hasil simulasi rangkaian yang telah disederhanakan (langkah-5).
Dari timing diagram gambar 2.27 sama dengan timing diagram gambar 2.24
sehingga dapat disimpulkan bahwa penyederhanaan rangkaian yang dilakukan benar.
2.5.2 Simulasikan CDBABCDADCBADBCADCBADCBACDBAX ++++++=
dan sederhanakan persamaan serta buktikan hasil penyederhanaan yang dilakukan benar
dengan mensimulasikan hasil penyederhanaan persamaan yang diperoleh!
Langkah 1 :
gambar rangkaian CDBABCDADCBADBCADCBADCBACDBAX ++++++=
pada schematic editor, seperti yang terlihat pada gambar 2.28.
Langkah -2 : simulasikan rangkaian CDBABCDADCBADBCADCBADCBACDBAX ++++++= ,
seperti yang terlihat pada gambar 2.29.
Langkah -3 :
sederhanakan rangkaian CDBABCDADCBADBCADCBADCBACDBAX ++++++= , pada
gambar 2.30 penyederhanaan rangkaian menggunakan peta karnaugh.
83
Gambar 2.28 : schematic editor CDBADCBABCDADBCADCBADCBACDBAX ++++++=
Gambar 2.29 : hasil simulasi CDBABCDADCBADBCADCBADCBACDBAX ++++++=
AB CD
00 01 11 10
00 0 1 0 0 01 0 1 0 0 11 1 1 0 1 10 0 1 0 1
Gambar 2.30 : Peta Karnaugh
Langkah -4 : gambar rangkaian yang telah disederhanakan, seperti yang terlihat pada
gambar 2.31.
X= A B + A B C + A C D
84
Gambar 2.31 : Schematic editor X= A B + A B C + A C D
Langkah -5 : simulasikan rangkaian yang telah disederhanakan, seperti yang terlihat pada
gambar 2.32.
Gambar 2.32 : simulasi X= A B + A B C + A C D
Langkah -6 : bandingkan hasil simulasi rangkaian sebelum disederhanakan (langkah-2)
dengan hasil simulasi rangkaian yang telah disederhanakan (langkah-5).
Dari timing diagram gambar 2.32 sama dengan timing diagram gambar 2.29
sehingga dapat disimpulkan bahwa penyederhanaan rangkaian yang dilakukan benar.
85
2.5.3 Simulasikan persamaan berikut ini dan sederhanakanlah persamaan tersebut,
buktikanlah bahwa hasil penyederhanaan yang dilakukan benar!
ABCDDABCCDBADCBADCBABCDACDBADCBADCBADCBAY +++++++++=
Lakukan seperti pada bagian 2.51 dan 2.5.2.
Langkah 1 : buat Schematic editor rangkaian
ABCDDABCCDBADCBADCBABCDACDBADCBADCBADCBAY +++++++++= :
Gambar 2.33 : Schematic editor
Langkah 2 : simulasikan sehingga diperoleh timing diagramnya (gambar 2.34)
Gambar 2.34 : Hasil simulasi
Langkah 3 : Sederhanakan rangkaian tersebut (gambar 2.35 menggunakan peta karnaugh)
86
AB
CD 00 01 11 10
00 1 0 0 1 01 1 0 0 1 11 1 1 1 1 10 1 0 1 0
Gambar 2.35 : peta karnaugh
Langkah 4 : gambar hasil rangkaian yang telah disederhanakan (Y = ABCCBCDBA +++ )
Gambar 2.36 : peta karnaugh
Langkah 5 : simulasikan rangkaian yang telah disederhanakan sehingga diperoleh timing
diagramnya
Gambar 2.37 : Hasil simulasi
Y = ABCCBCDBA +++
87
Langkah 6 : bandingkan timing diagram sebelum disederhanakan dengan yang setelah
disederhanakan.
Dari kedua hasil simulasi rangkaian sebelum disederhanakan (gambar 2.34) dan
yang setelah disederhanakan (gambar 2.37) sama, sehingga proses penyederhanaan yang
dilakukan benar.
2.5.4 Simulasikan persamaan berikut ini dan sederhanakanlah persamaan tersebut,
buktikanlah bahwa hasil penyederhanaan yang dilakukan benar!
ABCDDABCDCABDCABDCBADCBABCDADCBADCBADCBADCBAX ++++++++++= Langkah 1 : gambar rangkaian diatas pada schematic editor!
Langkah 2 : simulasikan sehingga diperoleh timing diagramnya!
Langkah 3 : Sederhanakan rangkaian tersebut!
Langkah 4 : gambar hasil rangkaian yang telah disederhanakan !
Langkah 5 : simulasikan rangkaian yang telah disederhanakan sehingga diperoleh timing
diagramnya !
Langkah 6 : bandingkan timing diagram sebelum disederhanakan dengan yang setelah disederhanakan! 2.5.5 Simulasikan persamaan berikut ini dan sederhanakanlah persamaan tersebut,
buktikanlah bahwa hasil penyederhanaan yang dilakukan benar!
DCABDCABDCBADCBABCDADBCADCBADCBADCBADCBAY +++++++++= ABCDDABC ++
Langkah 1 : gambar rangkaian di atas pada schematic editor!
Langkah 2 : simulasikan sehingga diperoleh timing diagramnya!
Langkah 3 : Sederhanakan rangkaian tersebut !
Langkah 4 : gambar hasil rangkaian yang telah disederhanakan !
Langkah 5 : simulasikan rangkaian yang telah disederhanakan sehingga diperoleh timing
diagramnya!
Langkah 6 : bandingkan timing diagram sebelum disederhanakan dengan yang setelah
disederhanakan!
88
BAB III
COUNTER
OBYEKTIF :
- Memahami jenis-jenis counter
- Mampu merancang rangkaian suatu counter
3.1 Counter secara umum
Counter merupakan rangkaian logika pengurut, karena counter membutuhkan
karakteristik memori, dan pewaktu memegang peranan yang penting. Counter digital
mempunyai karakteristik penting yaitu sebagai berikut :
1. Jumlah hitungan maksimum (modulus N-counter)
2. Menghitung ke-atas atau ke-bawah (up atau down - counter)
3. Operasi asinkron atau sinkron
4. Bergerak bebas atau berhenti sendiri
Sebagaimana dengan rangkaian sekuensial yang lain, untuk menyusun counter digunakan
flip-flop. Counter dapat digunakan untuk menghitung banyaknya clock-pulsa dalam
waktu yang tersedia (pengukuran frekuensi), Counter dapat juga digunakan untuk
membagi frekuensi dan menyimpan data.
Ada dua macam counter, yaitu Asinkronous Counter dan Sinkronous Counter.
Asinkronous Counter disebut juga Ripple Through Counter atau Counter Serial (Serial
Counter), karena output masing-masing flip-flop yang digunakan akan berubah kondisi
dari “0” ke “1” dan sebaliknya secara berurutan, hal ini disebabkan karena flip-flop yang
paling ujung dikendalikan oleh sinyal clock, sedangkan sinyal clock untuk flip-flop
lainnya berasal dari masing-masing flip-flop sebelumnya.
Sedangkan pada counter sinkron, output flip-flop yang digunakan bergantian
secara serempak. Hal ini disebabkan karena masing-masing flip-flop tersebut
dikendalikan secara serempak oleh sinyal clock. Oleh karena itu Counter Sinkron dapat
pula disebut sebagai Counter paralel (Parallel Counter). Gambar 3.1 menunjukan
89
Counter Asinkron (Serial Counter) dan gambar 3.2 menunjukkan Counter Sinkron
(Parallel Counter).
Gambar 3.1 : Counter Asinkron
Gambar 3.2 : Counter Sinkron 3.2 Flip-flop
flip-flop (multivibrator bistabil) mempunyai keluaran tegangan rendah (0) atau
tinggi (1). Keluaran ini tetap rendah atau tinggi selama belum ada masukkan yang
merubah keadaan tersebut. Rangkaian yang bersangkutan harus di-drive (dikendalikan)
oleh satu masukkan yang disebut pemicu (trigger). Keadaan tersebut akan berubah
kembali bila ada masukkan pemicu lagi.
Pada gambar 3.3 dapat dilihat rangkaian dasar memori satu bit yang terdiri dari
dua buah gerbang NOT (gerbang NAND masukan tunggal) Nand1 dan Nand2, keluaran
dari suatu gerbang diumpan balikkan ke masukan pada gerbang yang lain. Kombinasi
umpan balik ini disebut dengan flip-flop.
J Q A
J Q B
J Q C
J Q D
QA(LSB) QB QC
J Q A
J Q B
J Q C
J Q D
QA(LSB) QB QC
90
Gambar 3.3 : flip-flop dasar
Salah satu jenis flip-flop adalah flip-flop RS. Flip-flop ini mempunyai dua
masukan dan dua keluaran, di mana salah satu keluarannya (y) berfungsi sebagai
komplemen. Sehingga flipflop ini disebut juga rangkaian dasar untuk membangkitkan
sebuah variabel beserta komplemennya. Flip-flop RS dapat dibentuk dari kombinasi dua
gerbang NAND atau kombinasi dua gerbang NOR.
PERTAMA R S = 0 0
Ini berarti tidak diterapkan pemicu. Dalam hal ini keluaran y mempertahankan nilai
terakhir yang dimilikinya.
KEDUA R S = 0 1
Ini berarti bahwa suatu pemicu diterapkan pada masukan S. Hal ini mengeset flip-flop
dan menghasilkan keluaran y bernilai 1.
KETIGA R S = 1 0
Ini menyatakan bahwa suatu pemicu diterapkan pada masukan R. Hal ini mereset flip-
flop dan menghasilkan keluaran y bernilai 0.
KEEMPAT R S = 1 1
merupakan kondisi masukan terlarang. Kondisi ini berarti menerapkan suatu pemicu ada
ke dua masukan S dan R pada saat yang sama. Hal ini merupakan suatu pertentangan
karena mengandung pengertian bahwa kita berupaya untuk memperoleh keluaran y yang
secara serentak sama dengan 1 dan sama dengan 0. Hal ini tidak masuk akal dan oleh
sebab itu masukan ini dinyatakan terlarang.
Flip-flop RS dapat dimodifikasi menjadi flip-flop yang dapat dapat diatur 'irama' nya oleh
91
clock sperti terlihat pada gambar 3.4.
Gambar 3.4 : Diagram logika : (a) flip-flop RS (b) flip-flop RS ber 'clock'
Bila clock rendah (0), ke dua gerbang AND tertutup (disabled). Hal ini menjamin bahwa:
R S = 0 0
yang berarti keluaran y tetap pada keadaan terakhir yang dimilikinya. Tetapi bila clock
menjadi tinggi (1), ke dua gerbang AND terbuka (enabled). Hal ini memungkinkan
sinyal-sinyal S dan R mencapai flip-flop RS. Dengan cara ini, flip-flop akan set atau
reset, bergantung pada nilai RS.
Oleh sebab itu, flip-flop RS ber-'clock' tidak dapat berubah keadaan sampai
berlangsungnya sinyal clock.
Penerapan clock pada sebuah flip-flop seperti di atas sangat penting dalam sistem
digital berskala besar dengan beratus-ratus flip-flop yang dihubungkan satu sama lain.
Clock diterapkan pada semua flip-flop secara serentak; hal ini menjamin bahwa semua
flip-flop berubah keadaan pada saat yang sama. Penyerempakan ini sangat penting dalam
berbagai sistem digital.
3.3 State Machine
State machine merupakan konstruksi logika yang digunakan untuk
mendefinisikan sifat sistem yang sederhana. State machine menggunakan kombinasi
latch dan gerbang logika untuk sistem yang mempunyai memori. State machine di
gambarkan dengan state diagram yang didefinisikan dari state transition table. Contoh
state machine yang sederhana dapat dilihat pada gambar 3.5.
92
Gambar 3.5 : state machine
State machine dapat diklasifikasikan menjadi 2 tipe :
a. output nya tergantung pada present state yang dikenal dengan Moore machine
seperti yang terlihat pada gambar 3.6.
b. output yang merupakan kombinasi present state dan input yang lebih dikenal
dengan Mealy machine, seperti yang terlihat dari 3.7.
Gambar 3.6 : Moore machine
Gambar 3.7 : Mealy machine
Present state di definisikan pada output memori. Beberapa contoh aplikasi state
machine dapat dilihat pada embedded computing system, dimana komputer dirancang
untuk menunjukkan beberapa tugas tertentu, seperti lampu merah atau elevator yang bisa
dirancang dengan menggunakan pendekatan state machine.
Perancangan suatu rangkaian digital akan terasa lebih mudah menggunakan state
machine yang dimulai dari mendefinisikan permasalahan yang seharusnya telah diketahui
bagaimana cara pemecahannya, contohnya adalah seperti counter sebagai sequential
machine. Sebagaimana diketahui jika dihubungkan beberapa flip-flop dengan beberapa
cara sehingga membentuk berbagai macam counter, ring counter, Johnson counter dan
lain sebagainya.
93
Untuk lebih jelasnya lihat contoh berikut display bilangan prima atau
penjumlahan naik atau turun. Pertama yang perlu diperhatikan adalah memahami definisi
state. Diagram dibawah menunjukkan counter mod-6, yang berguna untuk mengitung
detik dan menit.
Gambar 3.8 : timing diagram counter mod-6
Misalkan A, B dan C adalah output dari suatu mesin, kemudian masing-masing
transisi dari ”clock” di representasikan oleh garis putus-putus yang merupakan transisi
dari satu state ke state berikutnya. Contoh diatas merupakan sequential finite state
machine yang mempunyai 6 state : (000, 001, 010, 011, 100, 101) dan diulang kembali
dari keadaan yang pertama yaitu 000. Langkah pertama yang dilakukan adalah
mendefisinikan state dan transisis yang diinginkan seperti pada gambar 3.9.
Gambar 3.9 : State diagram
Dari gambar 3.9 dan contoh soal yang merupakan sederetan angka (atau biner
000, 001, 010, 011, 100, 101) yang terdiri dari 6 transisi, sehingga gambar 3.9 dirubah
menjadi seperti gambar 3.10.
Gambar 3.10 : state diagram 000, 001, 010, 011, 100, 101
State diagram mempunyai 4 komponen yaitu : state, input, output dan transisi.
Representasi state diagram dapat dilakukan dengan beberapa cara akan tetapi komponen
diagram dapat dilihat seperti pada gambar 3.11.
94
Gambar 3.11 : komponen diagram
Transisi diagram di representasikan dengan garis panah dari satu state ke state
berikutnya. Langkah selanjutnya menentukan state table untuk state diagram seperti
yang terlihat pada tabel 3.1.
Tabel 3.1 : state table
Langkah selanjutnya menentukan implementasi atau rancangan dimana keputusan
ini tergantung dari masing-masing individu, dan juga terantung pada biaya atau
komponen yang tersedia. Pada contoh perancangan ini menggunakan JK flip-flop
sehingga sebelumnya dilihat terlebih dahulu tabel kebenaran JK flip-flop seperti yang
terlihat pada tabel 3.2.
Tabel 3.2 : tabel kebenaran JK FF
Langkah selanjutnya kembali pada state table atau tabel 3.1 untuk menentukan input
forming logic seperti yang terlihat pada tabel 3.3.
95
Tabel 3.3 : tabel kebenaran
Langkah selanjutnya dari tabel kebenaran diatas diperoleh semua komponen dan untut
next step pada proses perancangan untuk menentukan input forming logic untuk masing-
masing flip flop. Langkah selanjutnya dalam proses perancangan menentukan persamaan
rangkaian digital dengan bantuan Peta-K, seperti yang terlihat pada gambar 3.12.
Gambar 3.12 : Peta-K
Dari peta-K dapat diperoleh persamaan rangkaian digital sehingga dapat digambar
schematic editor dan diperoleh simulasi dari rangkaian yang telah dirancang untuk
dianalisa apakah hasil rangkaian seperti yang diharapkan. Untuk lebih jelasnya akan
dibahas lebih detil pada bagian 3.4.
3.4 Perancangan Counter
Pada bagian ini akan dibahas langkah-langkah perancangan counter yang
mengulang sederetan angka.
1. Rancang counter yang mengulang sekuens :
0, 4, 12, 13, 6, 7, 2, 0, 4, 12, 13, 6, 7, 2, 0 . . . . . .
Menggunakan :
96
a. D Flip-flop
Langkah 1 : Membuat state diagram :
.............. .............. .............. .............. .............. .............. ..............
Gambar 3.13 : State diagram
Langkah 2 : menentukan tabel kebenaran berdasarkan state diagram diatas
Present next DA DB DC DD
0 0 0 0 0 0 0 1 0 0 1 0 0 0 1 1 0 1 0 0 0 1 0 1 0 1 1 0 0 1 1 1 1 0 0 0 1 0 0 1 1 0 1 0 1 0 1 1 1 1 0 0 1 1 0 1 1 1 1 0 1 1 1 1
Langkah 3 : memetakan tabel kebenaran ke dalam peta karnaugh
DA :
AB CD
97
DB :
AB CD
DC :
AB CD
DD :
AB CD
Langkah 4 : menentukan persamaan rangkaian digital
DA = ........................................
DB = ........................................
DC = ........................................
DD = ........................................
Langkah 5 : menggambarkan persamaan rangkaian digital pada schematic editor
98
Gambar 3.14 : Contoh Schematic editor counter dengan D-FF
Langkah 6 : simulasi hasil rangkaian
Gambar 3.15 : hasil simulasi counter dengan D-FF
Langkah 7 : analisa hasil rangkaian
Dari gambar 3.15 dapat dilihat bahwa counter yang telah dirancang
dengan benar karena outputnya berupa sekuens :
0, 4, 12, 13, 6, 7, 2, 0, 4, 12, 13, 6, 7, 2, 0
b. JK Flip-flop
Langkah 1 : Membuat state diagram.
.............. .............. .............. .............. .............. .............. ..............
Gambar 3.16 : State diagram
Langkah 2 : menentukan tabel kebenaran berdasarkan state diagram diatas
99
Present next JA KB JB KB JC KC JD KD
0 0 0 0 0 0 0 1 0 0 1 0 0 0 1 1 0 1 0 0 0 1 0 1 0 1 1 0 0 1 1 1 1 0 0 0 1 0 0 1 1 0 1 0 1 0 1 1 1 1 0 0 1 1 0 1 1 1 1 0 1 1 1 1
Langkah 3 : memetakan tabel kebenaran ke dalam peta karnaugh
JA :
AB CD
KA :
AB CD
100
JB :
AB CD
KB :
AB CD
JC :
AB CD
KC :
AB CD
101
JD :
AB CD
KD :
AB CD
Langkah 4 : menentukan persamaan rangkaian digital
JA = ..............................................
KA = ..............................................
JB = ..............................................
KB = ..............................................
JC = ..............................................
KC = ..............................................
JD = ..............................................
KD = ..............................................
Langkah 5 : gambar persamaan rangkaian digital pada schematic editor
Gambar 3.17 : Contoh Schematic editor counter dengan JK-FF
102
Langkah 6 : simulasi hasil rangkaian
Gambar 3.18 : hasil simulasi counter dengan JK-FF
Langkah 7 : analisa hasil rangkaian
Dari gambar 3.18 dapat dilihat bahwa counter yang telah dirancang
dengan benar karena outputnya berupa sekuens :
0, 4, 12, 13, 6, 7, 2, 0, 4, 12, 13, 6, 7, 2, 0
2. Rancang counter yang mengulang sekuens :
0, 1, 2, 3, 7, 4, 0, 1, 2, 3, 7, 4, 0 . . . . . .
dengan menggunakan :
a. D-flip-flop
Langkah 1 : Membuat state diagram :
.............. .............. .............. .............. .............. ..............
Gambar 3.19 : State diagram
Langkah 2 : menentukan tabel kebenaran berdasarkan state diagram diatas
103
Present next DA DB DC
0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1
Langkah 3 : memetakan tabel kebenaran ke dalam peta karnaugh
DA :
AB CD
DB :
AB CD
DC :
AB CD
104
Langkah 4 : menentukan persamaan rangkaian digital
DA = ........................................
DB = ........................................
DC = ........................................
Langkah 5 : menggambarkan persamaan rangkaian digital pada schematic editor
Gambar 3.20 : Contoh Schematic editor counter dengan D-FF
Langkah 6 : simulasi hasil rangkaian
Gambar 3.21 : hasil simulasi counter dengan D-FF
Langkah 7 : analisa hasil rangkaian
Dari gambar 3.21 dapat dilihat bahwa counter yang telah dirancang
dengan benar karena outputnya berupa sekuens :
0, 1, 2, 3, 7, 4, 0, 1, 2, 3, 7, 4
b. JK-flip-flop
Langkah 1 : Membuat state diagram.
.............. .............. .............. .............. .............. ..............
Gambar 3.22 : State diagram
105
Langkah 2 : menentukan tabel kebenaran berdasarkan state diagram diatas
Present next JA KB JB KB JC KC
0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1
Langkah 3 : memetakan tabel kebenaran ke dalam peta karnaugh
JA :
AB CD
KA :
AB CD
JB :
AB CD
106
KB :
AB CD
JC :
AB CD
KC :
AB CD
Langkah 4 : menentukan persamaan rangkaian digital
JA = ..............................................
KA = ..............................................
JB = ..............................................
KB = ..............................................
JC = ..............................................
KC = ..............................................
Langkah 5 : gambar persamaan rangkaian digital pada schematic editor
107
Gambar 3.23 : Contoh Schematic editor counter dengan JK-FF
Langkah 6 : simulasi hasil rangkaian
Gambar 3.24 : hasil simulasi counter dengan JK-FF
Langkah 7 : analisa hasil rangkaian
Dari gambar 3.24 dapat dilihat bahwa counter yang telah dirancang
dengan benar karena outputnya berupa sekuens :
0, 1, 2, 3, 7, 4, 0, 1, 2, 3, 7, 4
3. Rancang counter yang mengulang sekuens :
0, 2, 3, 5, 7, 11, 13, 0, 2, 3, 5, 7, 11, 13 . . . . . .
dengan menggunakan :
a. D-flip-flop
b. JK-flip-flop
Ikuti langkah-langkah yang telah dijelaskan pada contoh 1 dan 2 diatas!
108
a. D Flip-flop
Langkah 1 : Membuat state diagram :
.............. .............. .............. .............. .............. .............. ..............
Langkah 2 : menentukan tabel kebenaran berdasarkan state diagram diatas
Present next DA DB DC DD
Langkah 3 : memetakan tabel kebenaran ke dalam peta karnaugh
DA :
AB CD
109
DB :
AB CD
DC :
AB CD
DD :
AB CD
Langkah 4 : menentukan persamaan rangkaian digital
DA = ........................................
DB = ........................................
DC = ........................................
DD = ........................................
Langkah 5 : menggambarkan persamaan rangkaian digital pada schematic editor
Langkah 6 : simulasi hasil rangkaian
Langkah 7 : analisa hasil rangkaian
110
b. JK Flip-flop
Langkah 1 : Membuat state diagram.
.............. .............. .............. .............. .............. .............. ..............
Langkah 2 : menentukan tabel kebenaran berdasarkan state diagram diatas
Present next JA KB JB KB JC KC JD KD
Langkah 3 : memetakan tabel kebenaran ke dalam peta karnaugh
JA :
AB CD
111
KA :
AB CD
JB :
AB CD
KB :
AB CD
JC :
AB CD
112
KC :
AB CD
JD :
AB CD
KD :
AB CD
Langkah 4 : menentukan persamaan rangkaian digital
JA = ..............................................
KA = ..............................................
JB = ..............................................
KB = ..............................................
JC = ..............................................
KC = ..............................................
JD = ..............................................
KD = ..............................................
113
Langkah 5 : gambar persamaan rangkaian digital pada schematic editor
Langkah 6 : simulasi hasil rangkaian
Langkah 7 : analisa hasil rangkaian
114
BAB IV
MENENTUKAN KEPUTUSAN
DENGAN BINARY COUNTER
OBYEKTIF :
- memahami bagaimana menentukan keputusan dengan binary counter
- mampu menggunakan state diagram untuk merancang rangkaian yang lebih kompleks
4.1 Menentukan keputusan dengan binary counter
Menentukan keputusan dengan Binary counter (Decision Making with Binary
Counters) merupakan komponen state machine yang menggambarkan sifat finite state
machine. Tidak semua state machine (state editor) diikuti oleh jalur (path) yang sama
dari satu state ke state berikutnya seperti yang telah dibahas pada Bab IV. Keadaan state
memungkinkan untuk berinteraksi dengan mesin seperti vending machine yang
mempunyai output yang berbeda-beda atau mempunyai dua kemungkinan berdasarkan
tipe koin yang dimasukkan atau lampu merah yang mempunyai kemungkinan keadaan
yang lebih dari satu ketika walk button ditekan/dijalankan.
Sebagai contoh dapat dilihat gambar 4.1 menggunakan counter mod 6 tetapi
dengan fitur tambahan dengan satu input.
Gambar 4.1 : state editor
115
Gambar 4.1 menunjukkan suatu mesin yang digambarkan dengan flowchart simbol state
machine dan beberapa variabel, sehingga akan lebih mempermudah perancang untuk
mendefinisikan pemecahan permasalahannya dan menuangkannya pada state table. 4.2 Perancangan Rangkaian dengan State Editor
Pada bagian ini akan membahas perancangan rangkaian digital dengan state editor
dengan merancang 2 rangkaian yang memenuhi state diagram.
1. Merancang rangkaian digital yang memenuhi state diagram gambar 4.2, dimana
rangkaian pertama menggunakan D flip-flop dan rangkaian kedua menggunakan JK
flip-flop.
A000
B001
C010
P
D011
Gambar 4.2 : state diagram
a. perancangan menggunakan D flip-flop
langkah 1 : menentukan state table
Present P Next DA DB DC 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1
langkah 2 : memetakan state table pada karnaugh map
116
DA :
AB CD
DB :
AB CD
DC :
AB CD
langkah 3 : menentukan persamaan rangkaian digital berdasarkan K-map
DA = ........................................
DB = ........................................
DC = ........................................
langkah 4 : gambar rangkaian digital pada schematic editor
langkah 5 : simulasi rangkaian
langkah 6 : analisa hasil rangkaian
117
b. perancangan menggunakan JK flip-flop
langkah 1 : menentukan state table
Present P next JA KB JB KB JC KC
0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1
langkah 2 : memetakan state table pada karnaugh map
JA :
AB CD
KA :
AB CD
118
JB :
AB CD
KB :
AB CD
JC :
AB CD
KC :
AB CD
langkah 3 : menentukan persamaan rangkaian digital berdasarkan K-map
119
JA = ..............................................
KA = ..............................................
JB = ..............................................
KB = ..............................................
JC = ..............................................
KC = ..............................................
langkah 4 : gambar rangkaian digital pada schematic editor
langkah 5 : simulasi rangkaian
langkah 6 : analisa hasil rangkaian
2. Merancang rangkaian digital yang memenuhi state diagram gambar 4.3, dimana
rangkaian pertama menggunakan D flip-flop dan rangkaian kedua menggunakan JK
flip-flop.
a000
b001
c010
RS
a100
ST
T
001110
10
000111
10
Gambar 4.3 : state diagram
c. perancangan menggunakan D flip-flop
langkah 1 : menentukan state table
120
Present R S T Next DA DB DC 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1
langkah 2 : memetakan state table pada karnaugh map
DA :
AB CD
DB :
AB CD
DC :
AB CD
121
langkah 3 : menentukan persamaan rangkaian digital berdasarkan K-map
DA = ........................................
DB = ........................................
DC = ........................................
langkah 4 : gambar rangkaian digital pada schematic editor
langkah 5 : simulasi rangkaian
langkah 6 : analisa hasil rangkaian
d. perancangan menggunakan JK flip-flop
langkah 1 : menentukan state table
Present R S T next JA KB JB KB JC KC
0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1
langkah 2 : memetakan state table pada karnaugh map
JA :
AB CD
KA :
AB CD
122
JB :
AB CD
KB :
AB CD
JC :
AB CD
KC :
AB CD
123
langkah 3 : menentukan persamaan rangkaian digital berdasarkan K-map
JA = ..............................................
KA = ..............................................
JB = ..............................................
KB = ..............................................
JC = ..............................................
KC = ..............................................
langkah 4 : gambar rangkaian digital pada schematic editor
langkah 5 : simulasi rangkaian
langkah 6 : analisa hasil rangkaian
124
BAB V
OUTPUT FORMING LOGIC
OBYEKTIF :
- memahami fungsi output forming logic
- mampu menggunakan fungsi output forming logic untuk merancang rangkaian digital
yang lebih kompleks
5.1 Output Forming Logic
Output forming logic hampir sama dengan translasi pada counter akan tetapi
Output forming logic mempunyai fungsi lebih untuk perancangan yang glitch-free dan di
gunakan untuk masukan yang lebih kompleks ke suatu dekoder yang merupakan basis
rangkaian digital berdasarkan output.
Sebagai contoh penggunaan 3 bit sebagai kombinasi output dimana 3 bit membangkitkan
(generate) single output atau multiple output. Counter mod 6 glitch free dengan keluaran
sederetan angka 0, 1, 2, 3, 4 dan 5 dapat dibuat dengan menentukan output forming logic
dengan menggunakan karnaugh map. Akan tetapi sebelumnya tentukan terlebih dahulu
tabel translasi seperti yang terlihat pada tabel 5.1.
Tabel 5.1 : tabel kebenaran
Langkah selanjutnya baru membuat karnaugh map untuk X, Y dan Z seperti yang terlihat
pada gambar 5.1.
125
Gambar 5.1 : peta karnaugh
5.2 Komponen-komponen Output Forming Logic
Pada bagian ini akan dijelaskan beberapa rangkaian-rangkaian pembangkit pulsa
pada output forming logic.
Perhatikan gambar 5.2 dan gambar 5.3.
a00
b01
c11
d10
X SB SC
Y SB SC Gambar 5.2 : state diagram
Clock
A
B
COUNT
X
Y
1101 10 00 01 11 10 00 01 11 10 00
Gambar 5.3 : timing diagram
126
Beberapa rangkaian untuk membangkitkan pulsa untuk output forming logic dapat dilihat
pada gambar 5.4.
127
Gambar 5.4 : Rangkaian pembangkit pulsa output forming logic
128
Definisi-definisi transisi state :
SB : State beginning
SE : State End
DSB : Delayed State Beginning
DSE : Delayd State End
DDSE : Double Delayed State End
Sebagai contoh dapat dilihat perancangan state diagram pada gambar 5.5 yang kemudian
di translasi ke state translasi.
c001
d010
e101
b100
X DSB SE
W SB SC
Z DSB SE
Y DSB DSE
a000
R10
Gambar 5.5 : state diagram
Tabel 5.2 : State Translasi
Present R Next DA DB DC W X Y Z
0 0 0
0 0 1
0 1 0
0 1 1
1 0 0
1 0 1
1 1 0
1 1 1
129
Dari tabel translasi dibuat K-map untuk menentukan persamaan rangkaian
logikanya.
AB CD
DA = ..........................................................
AB CD
DB = ..........................................................
AB CD
DC = ..........................................................
Persamaan-persamaan yang diperoleh dari K-map digambar pada Schematic editor
dan disimulasikan sehingga dapat diketahui kebenaran perancangan rangkaian digital
yang telah dilakukan.
130
D
C Q
Q D
C Q
Q D
C Q
Q
Clock
R
W
Gambar 5.6 : Rangkaian digital
5.3 Perancangan Rangkaian Digital mesin jamu pilih
Pada bagian ini akan dibahas suatu projek kecil yaitu membuat rangkaian digital
suatu mesin jamu pilih, dengan permasalahan sebagai berikut :
Perancangan mesin jamu pilih atau mesin penjual jamu, dimana pembeli dapat memilih 4
jenis jamu, yaitu jamu ”gadis remaja”, ”srikaton”. ”awet ayu”, dan ”galian rapet” yang
merupakan jamu-jamu perusahaan Nyonya Meneer. Jamu-jamu ini masing-masing
berharga Rp. 1.000,- dan mesin ini dapat menerima uang logam Rp. 500,- ataupun uang
logam Rp. 1.000,-. Dan jika pembeli ingin membatalkan transaksi meskipun telah
memasukkan uang logamnya masih dapat dilakukan dan pembeli mendapatkan uang
logamnya kembali.
Dari permasalahan diatas ada beberapa tahap atau proses perancangan yang harus
dilakukan, pertama-tama dilakukan pengidentidikasian masalah. Dimana ditentukan input
dan output dari rangkaian. Kemudian dilakukan pengidentifikasian state atau keadaan
dilanjutkan dengan penggambaran state diagram. Dari state diagram dapat ditentukan
tabel kebenaran. Dengan bantuan K-map dapatlah dibentuk persamaan aljabar Boolean
tersederhana untuk sebagai masukan pada D-flip-flop atau disebut sebagai Input forming
Logic (IFL), setelah menentukan jenis gelombang outputnya dapat ditentukan output
131
forming logic (OFL). Proses selanjutnya menggambarkan hasil persamaan rangkaian
digital yang diperoleh dan mensimulasikan rangkaian tersebut. Hasil simulasi dianalisa
apakah rangkaian yang telah dibuat sesuai dengan yang diharapkan.
5.3.1 Identifikasi masalah
Permasalahan pada mesin jamu pilih dapat di nyatakan sebagai berikut:
Sebagai input dinyatakan dengan :
- tidak ada kegiatan TA
- untuk pengembalian D
- memasukkan uang logam Rp. 500,- E
- memasukkan uang logam Rp. 1.000,- F
- memilih jamu gadis remaja G
- memilih jamu srikaton H
- memilih jamu awet ayu I
- memilih jamu galian rapet J
Sebagai output dinyatakan dengan :
- mengeluarkan uang kembali V
- mengeluarkan jamu gadis remaja W
- mengeluarkan jamu srikaton X
- mengeluarkan jamu awet ayu Y
- mengeluarkan jamu galian rapet Z
5.3.2 Identifikasi State
Keadaan-keadaan dengan kemungkinan-kemungkian :
State a : 1. tidak ada kegiatan, menuju kembali ke state a
2. memasukkan uang Rp. 500,- menuju ke state b
3. memasukkan uang Rp. 1.000,- menuju ke state c
State b : 1. tidak ada kegiatan, menuju kembali ke state a
2. menekan tomobol input uang kembali, menuju ke state d
3. memasukkan uang Rp. 500,-menuju ke state c
132
State c : 1. tidak ada kegiatan, menuju kembali ke state c
2. menekan tombol input uang kembali, menuju ke state b
3.menekan tombol pilihan bahan I, mesin mengeluarkan bahan I, kemudian
kembali ke state a
4.menekan tombol pilihan bahan II, mesin mengeluarkan bahan II,
kemudian kembali ke state a
5.menekan tombol pilihan bahan III, mesin mengeluarkan bahan III,
kemudian kembali ke state a
6.menekan tombol pilihan bahan IV, mesin mengeluarkan bahan IV,
kemudian kembali ke state a
State d : 1. uang keluar, dan kembali ke state a
5.3.3 State diagram
Dari keadaan ini, maka dapat digambarkan state diagram di bawah ini :
55
5.3.4 tabel kebenaran
Dan tabel kebenarannya adalah sebagai berikut :
PRESENT INPUT NEXT A B C DA DB DC V W X Y Z
70
56
5.3.5 Pembentukan Input Forming Logic (Ifl)
DA
AB C
00
01
11
10
0
1
DB
AB C
00
01
11
10
0
1
DC
AB C
00
01
11
10
0
1
Dengan melakukan penyederhanaan yang dilakukan dengan mempergunakan K-map
akan diperoleh persamaan Input Forming Logic,yaitu input pada D-flip-flop. Selain D-
flip-flop. Selain D-flip-flop dapat juga dipergunakan JK-flip-flop.
Sehingga di peroleh :
DA = ............................................
DB = ............................................
DC = ............................................
5.3.6 Output Forming Logic
Sebagai Output Forming logic (OFL) dipilih gelombang ↑DSB ↓ SE karena
rangkaian untuk menghasilkan gelombang output forming logic ini sederhana, yaitu
hanya mempergunakan gerbang AND.
71
57
Langkah selanjutnya menentukan persamaan rangkaian dari output forming logic.
5.3.7 Schematic Editor mesin jamu pilih
Persamaan yang diperoleh dari output forming logic di gambar pada schematic
editor.
5.3.8 Simulasi rangkaian mesin jamu pilih
Gambar schematic editor di simulasikan.
5.3.9 Analisa hasil rangkaian
Analisa hasil simulasi apakah telah sesuai dengan permasalahan yang telah
ditentukan.
72
58
DAFTAR PUSTAKA
Anonim, Xilinx Programmable Logic Data book, Xilinx, Inc, San Jose, CA.
Anonim, Foundation Series 2.1i User Guide, http://toolbox.xilinx.com/docsan/2_1i/ 25
January 2004.
Brian Warneke, The CUPL Environment,
http://www.rexfisher.com/Downloads/CUPL%20Tutorial.htm , 9 Januari 2004.
D. Van den Bout, "The Practical Xilinx Designers Lab Book 1.5", Prentice Hall, Upper
Saddle River, 1999.
John W. Carter, “Digital Designing with Programmable Logic Devices”, Prentice Hall,
1997