Mikroprosesor GH PDF
Mikroprosesor GH PDF
Mikroprosesor:
Program :
Pengertian/definisi konseptual:
*Deretan instruksi yang harus dilaksanakan
secara berurutan.
*Suatu alat digital, yang menerima masukan
masukan dalam bentuk digital, memproses
*Instruksi-instruksi tersebut sudah ada/su-
data masukan tersebut dengan cara-cara
dah tersimpan dalam memory (diluar mi-
digital, serta menghasilkan keluaran dalam
kroprosesor), pada lokasi dengan alamat
bentuk digital.
yang berurutan.
Busalamat Clock
alamat
AR PC Gen.
I/O
device
kontrol data
Bus data
CU
DR ID
ACC
alamat data
Memory
kontrol ALU
Bus kontrol
Penjelasan/fungsi setiap blok
PC = Program Counter (pencacah program). ID = Instruction Decoder.
Suatu counter (pencacah), yang berfungsi mencacah/ Berfungsi men-dekode/meng-artikan kode instruksi
menghitung langkah-langkah eksekusi program. (yang diterima dari DR), untuk keperluan CU, atas
Keluaran PC adalah bit-bit alamat (kata alamat), yang pengaturan (timing) dari CU.
akan “menunjuk” alamat lokasi memory, dimana ko-
de instruksi disimpan, secara berurutan. Keluaran PC ACC =Accumulator.
dilewatkan AR, menuju bus alamat, atas pengaturan Suatu register yang berfungsi menahan/mnyimpan
(timing) dari CU. sementara data , baik dari DR yang akan diteruskan
ke ALU untuk diproses, maupun dari ALU, hasil pro-
AR = Address Register (Register alamat). sesing, yang akan diteruskan ke DR , sesuai penga-
Suatu register, yang berfungsi menahan/menyimpan turan dari CU.
sementara, kata alamat yang diterima sebagai masuk
an. Kata alamat tersebut selanjutnya akan diteruskan ALU = Arithmatic and Logic Unit.
ke bus alamat, sesuai pengaturan (timing) dari CU. Bagian (unit) dari mikroprosesor yang berfungsi me-
lakukan pengolahan data, baik dalam operasi aritma
DR = Data Register (Register data). tika ,maupun dalam operasi logika, terhadap data
Suatu register, yang berfungsi menahan/menyimpan masukan yang diterima. Jenis operasi aritmatika ma-
sementara, katadata yang diterima sebagai masukan. upun jenis operasi logika adalah sesuai pengaturan
Kemana kata data ini akan diteruskan, adalah sesuai serta timing dari CU.
pengaturan (timing) dari CU.
Siklus pelaksanaan instruksi program:
Penjelasan/fungsi setiap blok : a).PC di set pada alamat awal program (berarti alamat, di-
mana kode instruksi pertama dari program yang akan di-
eksekusi tersimpan). Kata alamat keluaran PC akan ditahan
CU = Cuntrol Unit. sementara di AR, kemudian menuju memory lewat bus ala-
Bagian (unit) dari mikroprosesor yang mat, sesuai pengaturan dari CU.
berfungsi memproduksi sinyal-sinyal
b).Kode instruksi yang tersimpan pada lokasi memory tsb.
kontrol yang diperlukan oleh setiap akan muncul di terminal data memory, lewat bus data me-
bagian, baik didalam maupun diluar nuju DR, dan sesuai pengaturan dari CU akan diteruskan
mikroprosesor, berdasarkan hasil de- ke ID.
coding kode instruksi. Dengan sinyal
kontrol yang tepat, baik arti maupun c).Oleh ID kode instruksi didekode untuk keperluan CU, se-
timingnya, setiap bagian akan bekerja hingga CU dapat “mengganti” sinyal-sinyal kontrol ke se-
tiap bagian yang sesuai untuk eksekusi instruksi tsb.
sesuai fungsinya masing-masin g, se-
hingga instruksi yang didekode terse- d).Kalau instruksi tsb. dalam pelaksanaannya memerlukan
but dapat dieksekusi dengan benar. data lain dari memory, maka apa yang tertera pada alamat
berikutnya (operand address), akan menunjukkan alamat,
dimana data lain tsb (operand data) tersimpan.
Clock Generator.
Berfungsi untuk memberikan referensi e).Setelah selesai 1 instruksi, pengaturan CU, PC melangkah
ke hitungan selanjutnya, dan siklus berulang dari a). Untuk
waktu kepada CU, yang diperllukan un-
instruksi berikutnya.
tuk ketepatan timing sinyal-sinyal kon-
trol yang dihasilkan.
Dari diagram blok bentuk minimal
tersebut terlihat bahwa mikropro-
sesor adalah suatu processing
unit, yang membutuhkan perang-
kat lain untuk membentuk suatu
sistem.
*Mikroprosesor membutuhkan
perangkat masukan untuk me-
nerima data/informasi dari luar,
sekaligus mengkonversi data
tersebut dalam bentuk digital,
sesuai yang dibutuhkan mikro-
prosesor. Demikian juga kebu-
tuhan perangkat keluaran, un-
tuk mengkonversi bentuk digi-
tal hasil processing , menjadi
bentuk informasi yang lebih mu-
dah dimengerti.
Bus alamat : # adalah jalur satu arah (unidirectional), tersusun atas sejumlah saluran, yang secara ber-
sama membawa satu kesatuan “kata alamat”.
Bus data : # adalah jalur dua arah (bidirectional), tersusun atas sejumlah saluran, yang secara bersa-
ma membawa satu kesatuan “kata data”.
# digunakan untuk membawa kata data, baik “masuk” ataupun “keluar” ke/dari
mikroprosesor.
Bus kontrol : # tersusun atas sejumlah saluran, dimana setiap saluran digunakan untuk membawa satu
sinyal kontrol untuk mengatur/mengendalikan kegiatan operasional device diluar mikro-
prosesor.
# sinyal sinyal kontrol pada setiap saluran independen satu sama lain.
Contoh eksekusi program (segmen program) sederhana :
Penjumlahan dua buah bilangan, yaitu X dan Y, yang masing-masing sudah tersimpan
di memory, kemudian menyimpan hasil penjumlahan, yaitu Z, kedalam memory.
Eksekusi instruksi pertama (mengacu siklus eksekusi)
OPERASI PERTAMA yang diperlukan mikroprosesor # PC diset pada 01 Hex.(alamat awal) Kata alamat 01 Hex dari PC le-
adalah “mengambil” bilangan X dari memory, dan me- wat AR ke bus alamat, bersamaan 01 Hex ada di bus alamat,CU me-
ngeluarkan sinyal kontrol ke memory untuk operasi BACA.Isi memo
nempatkannya dalam ACCUMULATOR.
ry pada alamat 01 Hex, yaitu kode operasi LOAD, akan muncul di -
Instruksi lengkap untuk operasi ini terdiri atas 2 terminal data dan masuk ke bus data.
(dua) bagian, yaitu: = Kode operasi, dan 01 Hex LOAD Bersamaan LOAD ada di bus data, CU
= Alamat operand berturut-turut mengeluarkan sinyal-si
alamat data nyal kontrol ke DR dan ID, sehingga ko
(operand address)
Misal instruksi lengkap : LOAD A de operasi LOAD lewat DR menuju ID.
kontrol
Oleh ID didekode untuk keperluan CU,
dimana LOAD adalah kode operasi, dan A
BACA! sehingga CU dapat memproduksi si-
adalah alamat operand, yaitu ala- nyal sinyal kontrol ke semua bagian, untuk pelaksanaan LOAD.
mat dimana bilangan X tersimpan. Karena pelaksanaan LOAD tersebut memerlukan data lain dari me-
Instruksi lengkap untuk operasi pertama ini ha- mory, maka PC melangkah ke 02 Hex. Kata alamat 02 Hex menuju
rus sudah tersimpan dalam memory, dalam for- bus alamat lewat AR. Bersamaan dengan 02 Hex adadi bus alamat,
mat biner/kodebiner, pada alamat awal (perta- CU mengeluarkan sinyal kontrol ke memory untuk operasi BACA.
Isi memory pada alamat 02 Hex yaitu AA Hex akan muncul diter-
ma, atau pertama dan kedua untuk mikroprose-
minal data dan masuk ke bus data. Bersamaan dengan AAHex ada
sor dengan word size yang lebih kecil). di bus data, CU mengeluarkan sinyal kontrol ke AR, sehingga AA
Misal : Hex lewat AR ke bus alamat. Bersamaan AA Hex ada di bus alamat,
Kode operasi LOAD tersimpan pada alamat 01 Hex. CU mengeluarkan sinyal kontrol ke memory untuk operasi BACA.
dan operand address A pada alamat 02 Hex, dan Isi memory pada alamat AA Hex, yaItu bilangan X, masuk bus data,
misal digunakan A = AA Hex. dan selanjutnya lewat DR masuk ke ACC.
Bil. X sudah ada di ACCUMULATOR !!!
Eksekusi instruksi kedua(mengacu siklus eksekusi)
# PC melangkah ke 03 Hex. Kata alamat 03 Hex dari PC lewat AR
OPERASI KEDUA yang diperlukan mikroprosesor ke bus alamat. Bersamaan 03 Hex ada di bus alamat, CU me-
ngeluarkan sinyal kontrol ke memory untuk operasi BACA.
adalah “menambah” isi Accumulator dengan bila-
Isi memory pada alamat 03 Hex, yaitu kode operasi ADD,
ngan Y dari memory.
akan muncul diterminal data dan
Instruksi lengkap untuk operasi ini terdiri atas 2 03 Hex ADD masuk ke bus data. Bersamaan dg
(dua) bagian, yaitu: = Kode operasi, dan ADD ada di bus data, CU berturut-
= Alamat operand alamat data turut mengeluarkan sinyal-sinyal
(operand address) kontrol ke DR, dan ID, sehingga
kontrol
kode operasi ADD lewat DR menu-
Misal instruksi lengkap : ADD B
BACA! ju ID. Oleh ID didekode untuk ke-
dimana ADD adalah kode operasi, dan B
perLuan CU, sehingga CU dapat memproduksi sinyal sinyal kontrol
adalah alamat operand, yaitu ala- ke semua bagian, untuk pelaksanaan ADD. Karena pelaksanaan
mat dimana bilangan Y tersimpan. ADD tersebut memerlukan data lain dari memory, maka PC me-
Instruksi lengkap untuk operasi kedua ini juga langkah ke 04 Hex. Kata alamat 04 Hex menuju bus alamat lewat
sudah tersimpan dalam memory, dalam for- AR.Bersamaan dengan 04 Hex ada di bus alamat,CU mengeluar-
kan sinyal kontrol ke memory untuk operasi BACA. Isi memory
mat biner/kodebiner, pada alamat setelah ins
pada alamat 04 Hex yaitu AB Hex akan muncul diterminal data
truksi pertama.
dan masuk ke bus data. Bersamaan dengan AB Hex ada di bus da-
Dengan demikian maka: ta, CU mengeluarkan sinyal kontrol ke AR, sehingga AB Hex lewat
Kode operasi ADD tersimpan pada alamat AR ke bus alamat.Bersamaan AB Hex ada di bus alamat, CU menge-
03 Hex, dan operand address B pada ala- luarkan sinyal kontrol ke memory untuk operasi BACA. Isi memory
mat 04 Hex, dan misal digunakan untuk pada alamat AB Hex, yaItu bilangan Y, masuk bus data. Bersamaan
bil. Y ada di busdata, CU berturut-turut mengeluarkan sinyal-sinyal
B = AB Hex.
kontrol DR, ACC dan ALU, sehingga bil.X masuk ke ALU, bil. Y lewat
DR, ACC, ke ALU. Terjadi penjumlahan di ALU, dan hasil penjumah-
an, yaitu : bil. Z masuk ACCUMULATOR !!!
Eksekusi instruksi ketiga (mengacu siklus eksekusi)
# PC melangkah ke 05 Hex. Kata alamat 05 Hex dari PC lewat AR
OPERASI KETIGA yang diperlukan mikroprosesor ke bus alamat. Bersamaan 05 Hex ada di bus alamat, CU me-
ngeluarkan sinyal kontrol ke memory untuk operasi BACA.
adalah “menyimpan” isi Accumulator kedalam me-
Isi memory pada alamat 05 Hex, yaitu kode operasi STORE,
mory, pada salah satu lokasi (alamat tertentu).
akan muncul di terminal data dan
Instruksi lengkap untuk operasi ini terdiri atas 2 05 Hex STORE masuk ke bus data. Bersamaan dg
(dua) bagian, yaitu: = Kode operasi, dan STORE ada di bus data, CU berturut
= Alamat operand alamat data turut mengeluarkan sinyal-sinyal
(operand address) kontrol ke DR, dan ID, sehingga
kontrol
kode operasi STORE lewat DR menu
Misal instruksi lengkap : STORE C
BACA! ju ID. Oleh ID didekode untuk keper
dimana STORE adalah kode operasi, dan C
luan CU, sehingga CU dapat memproduksi sinyal sinyal kontrol
adalah alamat operand, yaitu ala- ke semua bagian, untuk pelaksanaan STORE. Karena pelaksanaan
mat dimana bil Z akan disimpan. STORE tersebut memerlukan data lain dari memory, maka PC me-
Instruksi lengkap untuk operasi kedua ini juga langkah ke 06 Hex. Kata alamat 06 Hex menuju bus alamat lewat
sudah tersimpan dalam memory, dalam for- AR.Bersamaan dengan 06 Hex ada di bus alamat,CU mengeluar-
kan sinyal kontrol ke memory untuk operasi BACA. Isi memory
mat biner/kodebiner, pada alamat setelah ins
pada alamat 06 Hex yaitu AC Hex akan muncul diterminal data
truksi pertama.
dan masuk ke bus data. Bersamaan dengan AC Hex ada di bus da-
Dengan demikian maka: ta, CU mengeluarkan sinyal kontrol ke AR, sehingga AC Hex lewat
Kode operasi STORE tersimpan pada alamat AR ke bus alamat.Bersamaan AC Hex ada AC Hex Z
05 Hex, dan operand address C pada alamat di bus alamat, CU bertuRut-turut menge-
luarkan sinysl-sinyal kontrol ke ACC,DR, alamat data
06 Hex, dan misal digunakan untuk
dan memory untuk operasi TULIS, sehing kontrol
C = AC Hex.
ga : Dari ACC bil Z lewat DR masuk bus da-
TULIS!
ta. Opersi TULIS ke memory akan beraki=
bat : bil Z tersimpan di memory pada alamat AC Hex.
Arithmatic and Logic Unit
Operasi aritmatika pada ALU
Dengan 2 (dua) sinyal kontrol s1 dan s0, Sinyal sinyal kontrol s1, s0, serta bit Cin, akan menen-
dapat diperoleh 4 (empat) jenis konver tukan jenis operasi aritmatika, sbb.:
“0”
“0” “0”
dengan n bit X = n bit A
n bit Y = n bit B dengan n bit X = n bit A
n bit A ditambah n bit B dan Cin = 0,maka n bit Y = n bit B
n bit A dita dambah K’1
n bit F = n bit A ditambah n bit B N bi data B dan Cin = 0 , maka
Operasi: PENJUMLAHAN
n bit F = n bit A ditambah K’1 n bit data B
Operasi: PENJUMLAHAN dengan K’1
4). Untuk s1 s0 = 0 1, serta dengan bit Cin = 1
6). Untuk s1 s0 = 1 0, serta dengan bit Cin = 1
n bit A n bit B
n bit A n bit B
“1”
dengan n bit X = n bit A “0” “1”
dengan n bit X = n bit A
n bit Y = n bit B
n bit Y = n bit B
n bit A ditambah n bit B dan Cin = 1, maka
ditambah satu dan Cin = 1 , maka
n bit A dikurang n bit data B
n bit F = n bit A ditambah n bit B ditambah satu.
n bit F = n bit A dikurang n bit data B
Operasi: PENJUMLAHAN
dengan CARRY Operasi: PENGURANGAN
Arithmatic and Logic Unit
Operasi aritmatika pada ALU
Operasi Pengurangan.
Karena rangkaian utama adalah rangkaian penjumlah biner ( PA= Paralel
Adder ), maka operasi pengurangan dilakukan sebagai operasi aritmatika
bilangan bertanda (penjumlahan bil. bertanda).
REVIEW:
Bilangan negatip direpresentasikan dalam Kompl. Dua-dua (Two’s Comple-
ment) sbb.:
a). Besaran (magnitude) nya dituliskan
dalam biner sebagai bilangan positip (dg. MSB = 0).
b). Hasil a) dikomplemenkan satu satu.
c). Kemudian ditambah satu .
Dengan demikian rangkaian ALU untuk operasi aritmatika Digambarkan dalam simbol logic block:
sesuai contoh diatas dapat disusun sbb.:
(misal untuk n = 4)
Besaran n, me-
nunjukkan uku-
ran panjang ka-
ta data mikro-
prosesor
(word size)
Dengan n = 4
n bit n bit
data A data B
s1 sinyal kontrol
ALU s0
Co (rangkaian aritmatika) seleksi
Cin
n bit
data F
Arithmatic and Logic Unit
Operasi aritmatika pada ALU
Selanjutnya dapat disusun Persamaan Boolean masukan-masukan rangkaian Arit
Tabel Fungsi operasi Aritmatika matika 1 tahap (tahap ke-i) adalah sbb.:
0 1 0 Ai 0 A Transfer data A
0 1 1 Ai Bi A kurang B Pengurangan
1 0 1 Ai 1 A Transfer data A
1 1 0 Ai Bi A tambah B Penjumlahan
Yi = s0Bi + s1Bi
Cii= Coi-1
Xi = Ai ( s2+ s1 ) + s2s1s0 Bi
Yi = s1 + ( s0 Bi )
Cii = s2 Coi-1
Susunlah tabel fungsi operasi aritmatika.
*******SELAMAT MENGERJAKAN*******
Arithmatic and Logic Unit
Operasi Logika pada ALU
Untuk suatu mikroprosesor dengan word size n, Hal ini berarti setiap FULL ADDER harus melakukan ope-
maka ALU (n bit) melakukan operasi logika terha- rasi logika terhadap 1 bit data A dengan 1 bit data B (ke-
dap setiap bit masukan data A, dengan setiap bit cuali untuk operasi NOT, hanya terhadap 1 bit ).
masukan data B yang bersesuaian, dengan jenis Dengan demikian, rangkaian ALU 1 tahap (tahap ke-i),
operasi logika yang sama.Ada 4 (empat) jenis ope yang tersusun atas 1 buah FULL ADDER harus dikontrol :
rasi logika yang dapat dilakukan ALU mikroprose-
sor, yaitu : * Pada saat melakukan operasi aritmatika:
# operasi AND Harus terhubung dengan tahap sebelum dan
# operasi OR Khusus untuk operasi sesudahnya, dalam hubungan CASCADE.
# operasi NOT NOT, hanya dilakukan
* Pada saat melakukan operasi logika:
terhadap n bit data A saja.
# operasi XOR Harus independent dengan tahap yang lain, yang
berarti tidak meli-
Karena rangkaian utama untuk pelaksanaan ope- batkan masukan Ci.
rasi pada ALU, baik operasi aritmatika maupun atau (Cii = 0)
operasi logika adalah Paralel Adder, maka PA ini
harus dapat dikontrol untuk melakukan operasi
Logika, selain operasi aritmatika.
PA n bit tersusun atas n buah FULL ADDER, yang Pada sinyal kontrol seleksi ditambahkan sinyal kontrol s2,
terrangkai secara CASCADE. untuk kontrol pilihan jenis operasi.
Arithmatic and Logic Unit
Operasi Aritmatika & Logika pada ALU
Perhatikan analisa untuk contoh suatu hasil ran-
cangan rangkaian ALU 1 tahap (tahap ke-i) sbb.:
Persamaan Boolean masukan-masukan rangkai- * Untuk s2 = 1 diperoleh :
an ALU 1 tahap adalah :
0 0 0 0 Ai 0 A Transfer data A
0 0 0 1 Ai 0 A tambah 1 Increment data A
0 0 1 0 Ai Bi A tambah B Penjumlahan
0 0 1 1 Ai Bi A tamb. B tamb. 1 Penjumlahan dengan Carry
0 1 0 0 Ai Bi A tamb. K’1 B Penjumlahan dengan K’1
0 1 0 1 Ai Bi A kurang B Pengurangan
0 1 1 0 Ai 1 A kurang 1 Decrement data A
0 1 1 1 Ai 1 A Transfer data A
1 0 0 x Ai + Bi 0 A + B Op.logika : OR
1 0 1 x Ai Bi A + B Op.logika : XOR
1 1 0 x Ai + Bi Bi A B Op.logika : AND
1 1 1 x Ai 1 A Op.logika : NOT
2. ALU suatu mikroprosesor 8 bit , dengan Tabel fungsi operasi ALU sesuai Tabel fungsi pada
soal no 1 diatas memperoleh masukan masukan :
8 bit data A = 0 1 1 1 1 0 0 0 dan
8 bit data B = 1 1 1 0 1 1 0 0
Tentukan keluaran ALU, yaitu 8 bit data F, serta bit bit status C, S, Z, dan V , untuk setiap
jenis operasi ALU.
Membangun sistem berbasis Mikroprosesor
. .
o
CATU DAYA.
T
1N4001
.. .
Vout = -xx volts
.
o
Berikut ini contoh catu daya dengan tiga keluaran RANGKAIAN PEWAKTU.
yang cocok digunakan untuk mikroproesor 8080. Sinyal-sinyal pewaktu dalam sistem berbasis
mikroprosesor dipergunakan untuk menyerem
7812 pakkan operasi seluruh sistem. Bebeapa mikro
prosesor sudah dilengkapi osilator, sehingga un-
o
tuk membangkitkan sinyal pewaktu, cukup di
Vin > + 15 Vdc o +12 V
o . tambahkan komponen pewaktu diluar.
Mikroprosesor tanpa osilator internal, memerlu
7805
kan rangkaian osilator eksternal untuk membang
o
kitkan sinyal pewaktunya. +V cc
Vin > + 8 Vdc o +5 V
o . o
7905
. .
. Rangk. Ini
adl.contoh
.. . .
Clock input
o -5V mikroprossesor
o pembangkit
Vin < - 8 Vdc pewwaktu fasa tunggal,
o . o cocok untuk Z 80 dan beberapa mikroprosesor lain.
Frekueensi keeluaran ditentukan oleh kristal.
Intel 8080 adalah contoh mikroprosesor yang GERBANG LOGIKA
memerlukan dua sinyal pewaktu yang dibang Lazim digunakan untuk men-decode sinyal si-
kitkan diluar. Sinyal sinyal pewaktu ini, 1 dan nyal kontrol dan sinyal sinyal alamat (dari bus
2
, memp. amplituda 12 volt, dan tidak ber- kontrol dan bus alamat), untuk membentuk
Impitan.
Bus kontrol a
Bus alamat
1
2 Gerbang
logika
Sudah ada chip IC yang dirancang khusus un-
tuk menghasilkan sinyal sinyal pewaktu unt.
8080, yaitu chip IC 8224 sbb.: Sinyal
18 MHz kendali
Memory Interface.
Telah dibahas yll., sistem berbasis mikroprose-
(menghubungkan memory dalam sistem bus).
sor membutuhkan adanya Memory serta pe-
rangkat Masukan/Keluaran, yang harus terhu Mengenal Memory :
# Read Only Memory (ROM)
bung satu sama lain dalam sistem bus.
# Read/Write Memory/Random Acces Memory (RAM)
Typicall Chip/logic block :
A0 D0 A0 D0
A1 A1
D1 D1
Mikro I/O
.. A2 . .. A2 .
Device ROM . RAM .
prose Memory . . . Dm-1 .
sor An-1 Dm-1 An-1
CE CE R/W
ROM RAM
Operasi-operasi baca/ tulis memory, maupun kapasitas 2n x m bit kapasitas 2n x m bit
transfer data dari/ ke perangkat Masukan/Ke- Jumlah terminal alamat menentukan jumlah lokasi me-
luaran, harus terkendali program (program con- mory untuk menyimpan data ( 2n ).
trolled). Jumlah terminal data menunjukkan ukuran panjang ka
ta data yang dapat disimpan ( word size = m bit ).
PIN out dari Eprom 2716, 2k x 8
Timing Diagram dan Karakteristik AC dari EPROM 2716
Decoder
alamat
Membangun sistem berbasis Mikroprosesor
Terminal terminal alamat/data harus terhubung de- Dekoder alamat berfungsi men-dekode kata alamat
ngan saluran-saluran bus alamat/data secara ber- yang ada pada bus alamat.
sesuaian, sedangkan untuk terminal terminal kon= Misal daerah alamatnya 8800 Hex. s/d 8BFF Hex.
trol pada umumnya terhubung dengan keluaran atau A15s/dA0= 1 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0
suatu rangkaian antarmuka (interface). s/d 1000 1011 1111 1111
ROM Interface. Terlihat daerah alamat dapat di-identifikasi dari bit-
Agar pembacan data (hanya pembacaan) dari chip bit A15 s/d A10 = 1 0 0 0 1 0. Artinya, kalau kata ala-
ROM dapat dikendalikan program, pada umumnya mat pada bus alamat diawali dengan :
diperlukan perancangan suatu rangkaian Interface. A15 s/d A10 = 1 0 0 0 1 0 ,dekoder alamat harus meng
Dekoder Alamat hasilkan keluaran yang menunjukkan bahwa kata ala
Karena jumlah terminal (pin) alamat pada chip ROM mat tsb. adalah VALID untuk chip ROM tsb.
tidak sebanyak jumlah saluran pada bus alamat, ma Pada gambar disam-
A15
ka perlu ditentukan lebih dulu Address Range (Dae- ping ini keluaran de- A14
A13 Dekoder
rah Alamat) untuk chip ROM. koder alamat adalah A12 alamat
misal : Chip ROM 1 kbyte (kapasitas, = 210 x 8 bit) pa VA (aktif rendah). A 11 VA
A10
da sistem berbasis Mikroprosesor 8 bit de-
dengan bus alamat 16 saluran. Kalau A15 s/d A10 = 1 0 0 0 1 0, maka VA = 0
A10 (VALID)
Berarti dengan data word size = 8 bit (=1 byte), jum A11
A12 VA Rangkaian Dekoder
lah saluran bus data 8, D0 s/d D7, dan address word A13
= 16 bit, jumlah saluran bus alamat = 16, A0 s/d A15. A14 Alamat
A15
Membangun sistem berbasis Mikroprosesor
Pada saat mikroprosesor meng-eksekusi instruksi Dengan demikian, terminal terminal (pin) pada chip
pembacaan data dari memory, maka mikroprose- ROM dengan kapasitas 1kbyte (atau 1024 byte, atau
sor akan mengeluarkan/mengaktifkan : 210x 8 bit), dapat dihubungkan sbb.:
# Kata alamat yang menunjukkan alamat loka- a).
si memory dimana data ydm tersimpan. A0
terhubung A1 D0
# Sinyal-sinyal kontrol yang menunjukkan bah- terhubung
D1
wa mikroprosesor sedang dalam mode mem
dengan .. ROM .. dengan
Bus alamat
. D7
. Bus data
baca data dari memory. A0 s/d A9 D0 s/d D7
(bersesuaian) A9
(bersesuaian)
Misal sinyal kontrol pada mikroprosesor CE
Dekoder 2 ke 4 baris
74139
b). Untuk men-dekode daerah alamat untuk b). Untuk men-dekode daerah alamat untuk
8 chip memory (ROM, RAM, atau kombinasi), 4 Chip memory, masing-masing dengan
masing-masing dengan kapasitas 2 kbyte, kapasitas 1 kbyte,
(alamat berurutan, dg.alamat awal C4000 Hex.) (alamat berurutan, dg.alamat awal A000 Hex.)
Menghubungkan perangkat masukan/keluaran
pada sistem bus mikroprosesor.
Sistem berbasis mikroprosesor yang paling seder- Dengan cara memory mapped, tidak dibutuhkan si-
hanapun lazim menggunakan lebih dari satu buah nyal-sinyal kontrol yang menunjukkan mikroprose-
perangkat masukan/keluaran. Hal ini berarti bah- sor sedang dalam mode berhubungan dengan pe-
wa mikroprosesor harus dapat memilih salah satu rangkat masukan/keluaran. Setiap mikroprosesor
perangkat masukan ataupun salah satu perangkat dapat menggunakan cara ini. Namun, jelas bahwa
keluaran dengan mana mikroprosesor dapat mela cara ini berrisiko mengurangi jumlah lokasi memo-
kukan transfer data. Jadi, baik perangkat masukan ry yang diperlukan untuk pemrograman (apalagi
maupun perangkat keluaran haruslah memiliki ala setiap satu perangkat masukan ataupaun satu pe-
mat (address) tertentu sebagai identifikasi. rangkat keluaran membutuhkan dua lokasi memo-
Ada 2 (dua) cara bagaimana agar perangkat masuk ry, dimana salah satu lokasi berisi alamat register
an/keluaran dapat terhubung dengan sistem bus pembangkit kata status/status word generator,
mikroprosesor (addressing mode) : yang menunjukkan kesiapan perangkat).
Memory mapped
I/O-mapped.
I/O-mapped Cara ini dapat digunakan pada mikroprosesor yang
Memory mapped. memiliki set sinyal kontrol yang menunjukkan mi-
Apabila cara ini dipakai, maka operasi transfer da- kroprosesor sedang dalam mode berhubungan de
ta dilakukan sebagaimana transfer data mikropro- ngan perangkat masukan/keluaran. Sinyal kontrol
sesor dengan memory BACA/TULIS. Dengan demi- ini mampu menunjukkan apakah mikroprosesor
kian perangkat masukan/keluaran harus dialamati sedang dalam operasi transfer data dengan memo
sebagai alamat lokasi memory. ry atau dengan perangkat masukan/keluaran.
Menghubungkan perangkat masukan/keluaran
pada sistem bus mikroprosesor.
Pada saat mikroprosesor meng-eksekusi instruksi 07 Hex. dengan menggunakan chip IC Decoder
transfer data dengan memory, maka tidak dimung 74139.
A0
kinkan (disabled) terjadi transfer dengan perang- A1
A
0 VALID untuk I/O : 00 Hex.
A2 B
kat masukan/keluaran. Demikian juga sebaliknya. 1 VALID untuk I/O : 01 Hex.
A3 74139 2 VALID untuk I/O : 02 Hex.
A4
Dengan demikian kata alamat pada bus alamat da A5 E 3 VALID untuk I/O : 03 Hex.
A6
pat digunakan secara independent untuk menga- A7
contoh
data masukan
(alat
keluaran)
K = 0 menunjukkan
mikroprosesor da-
lam mode mengelu-
arkan data ke perang-
K = 0 menunjukkan
kat keluaran.
mikroprosesor da-
lam mode menerima
data dari perangkat Chip IC 74LS244 berisi 8 buah three state buffer, dan
masukan
Chip IC 74LS374 berisi 8 buah D Latch (Flip flop).
Chip IC 74LS244 berisi 8 buah gerbang Three State Chip IC 74LS374 berisi 8 buah D latch, dengan PGT
Buffer, Non Inverting Output, sbb : (Positive Going Transition) clock, sbb:
Ai Yi
O
Serta dengan Tabel ke-
G benaran :
Dengan Tabel kebenaran :
. .
.
o Vcc
LOAD
.
PRESET
.
.
.
setting addr.
Initial addr
LOAD
.
cuurent addr.
clock
addr.Ao-A15
..
PRESET
..
PRESET
74LS244
74LS244
..
.. ..
o Vcc
..
.. o Vcc
cuurent addr.
addr.Ao-A15
setting addr.
Initial addr
cuurent addr.
addr.Ao-A15
setting addr.
Initial addr
o o .. .
o o
.
.. LOAD
LOAD LOAD clock
LOAD clock
16 bit alamat di-set dan didisplaykan sebagai Initial address, dan sebagai masukan pada 2 chip IC 74LS244 (Three state buffer).
# Kalau tombol LOAD ditekan (Noarmally Open), maka bit-bit alamat pada initial addr. akan diteruskan ke 16 bit Presettable Binary
Up Counter (4chip IC 74193) sebagai bit-bit PRESET, sehingga keluaran Counter PRESET pada initial addr, dan diteruskan oleh 2chip
IC 74LS244, sehingga terdisplaykan pada Current address, dan muncul pada pin=pin alamat, A15 – A0 pada slot artifficial. (Penekanan
tombol LOAD dapat diulang apabila diperlukan).
# Kemudian, setelah display current addr.sesuai dengan initial addr, maka setiap SATU KALI penekanan tombol CLOCK akan berakibat
display current address naik satu hitungan(stepped up) , demikian juga kata alamat A 15- A0 pada pin-pin alamat slot artficial.
Kata alamat A15- A0 pada pin-pin alamat slot artificial ini adalah analogi dari kata alamat 16 bit pada bus alamat.
o
o
.
74LS244
. .
.
o Vcc
LOAD
.
PRESET
.
.
.
setting addr.
Initial addr
LOAD
.
cuurent addr.
clock
addr.Ao-A15
initial addr.
20 bit
Vcc
LED
o
...
..
..
.
P R E S E T
.. 3 chip
..
.. 74LS244
..
..
..
..
.
. .
oo
. .
curent addr.
Addr. A19 - A0
setting addr.
Initial addr.
initial addr.
20 bit
Slot alamat 20 bit, A0 – A19
Vcc
LED
o
...
..
..
.
P R E S E T
.. 3 chip
..
.. 74LS244
..
..
..
..
.
. .
oo
. .
curent addr.
Addr. A19 - A0
setting addr.
Initial addr.
.
Slot data 8 bit, D0 – D7
PRESET
.
74LS244
.
. .
o Vcc
.
.
cuurent addr.
addr.Ao-A15
setting addr.
Initial addr
o o . .
. LOAD
LOAD clock
Menghubungkan perangkat masukan/keluaran
pada sistem bus mikroprosesor.
n
Masukan data
+Vcc
o
K
. .
A7
A6
A5
A4
.. . .
Clock input
A3 mikroprossesor
A2
A1
A0
VCC
.
setting
alamat 10 k
alamat
awal
LED LED
.. ..
.. AI
.. ..
.. .. 74LS244
.
AII
. 1G
2G
LOAD AIII
AIV
setting
Dout LED Data
Data D0 – D7
74LS244
o
o
.
.
o
o o
. ..
LOAD
Dout
Vcc
o . Din
Dout
setting
Dout LED
Data
Data
D0 – D7
.
.
..
74LS244
o
o
.
LOAD
Dout
o . . Din
Vcc
. o
o . Dout
Din
KI “SIAP”
A7
A6 .
A5
A4
A3
A2
“0” .. Bus data
A1
A0 .. 74LS244
A7
A6
1G
A7
A5
A4
A3
. 2G
A6 A2
A5 A1
A4
A0
A3
A2 K
A1
A0
74ALS344
D0 Q0 Start
D1 Q1 Polling routine
dari ke
D2 Q2
bus data D3 Q3 printer
D4 Q4
KO D5 Q5 Baca
D6 Q6 SWG01
A7 D7 Q7
A6
A5 o clock
A4
A3
=80
Y Baca
A2
A1 ? Data dari 02
A0
T
A7 Baca
A6
A5 SWG03
A4
A3
A2
A1 =C0
Y Tulis
A0 ? Data ke 04
A10 A
A11 B 0 VALID untuk : A000 - A3FF Hex.
A15 1 VALID untuk : A400 - A7FF Hex.
A14 74139 2 VALID untuk : A800 - ABFF Hex.
E 3 VALID untuk : AC00 - AFFF Hex.
A13
A12
A13 A VALID untuk : E0000 – E1FFF Hex.
A11
A14 0
B VALID untuk : E2000 – E3FFF Hex. A12
A15 1
C VALID untuk : E4000 – E5FFF Hex. A13
2
VALID untuk : E6000 – E7FFF Hex.
74138 3 VALID untuk : C4000 – C47FF
VALID untuk : E8000 – E9FFF Hex. A 0
A16 G2A
4 VALID untuk : C4800 – E4FFF
VALID untuk : EA000 – EBFFF Hex. B 1
G2B 5 VALID untuk : C5000 – C57FF
VALID untuk : EC000 – EDFFF Hex. C 2
A17 G1 6 A14 VALID untuk : C5800 – E5FFF
7 VALID untuk : EE000 – EFFFF Hex. 74138 3
A18 VALID untuk : C6000 – C67FF
A15 4
A19 G2A VALID untuk : C6800 – C6FFF
A16 5
G2B VALID untuk : C7000 – C77FF
G1 6
A11 A17 VALID untuk : C7800 – C7FFF
A VALID untuk : 4000 – 47FF Hex 7
A12 0
B VALID untuk : 4800 – 4FFF Hex
1
A13 74139 2 VALID untuk : 5000 – 57FF Hex
A18 A 0
A14 seleksi
E 3 VALID untuk : 5800 – 5FFF Hex A19 B 1
A15 keluaran
C 2
74138 3 keluaran
G2A
4 (aktif rendah)
A0 A 0 VALID untuk I/O: F0 Hex. enable 5
G2B
A1 B 1 VALID untuk I/O: F1 Hex. G1 6
A2 C 2 VALID untuk I/O: F2 Hex. 7
74138 3 VALID untuk I/O: F3 Hex.
A7
A6
A0 A5
A A4
A1 0 VALID untuk I/O : 00 Hex. VALID untuk I/O : 01 Hex.
A2 B A3
1 VALID untuk I/O : 01 Hex.
A3 74139 2 VALID untuk I/O : 02 Hex.
A2
A1
A4
A5 E 3 VALID untuk I/O : 03 Hex. A0
A6
A7
A0
MREQ
D0
VA
RD
A1
WR
VA VA D1
CE
VA
CE CE .. A2 .
MREQ IO/M RAM .
RD MEMR RD
. Dm-1 .
An-1
CE R/W
A0
terhubung A1 D0
terhubung
D1
dengan .. ROM .. dengan
Bus alamat
. D7
. Bus data A B
A0 s/d A9 D0 s/d D7
(bersesuaian) A9
(bersesuaian)
CE
s2
Co ALU 8 bit s1
dari CE s0
Cin
R/W
A0 A0
CE
Bus alamat A1 A1 D0 D0
A2 D1
.. ROM
D1
..
. . F
chip RAM
D7
terminal
D7
kontrol
A10 A9 A9
A11 CE
A12 VA
A13
A14 Bus data
A15
MREQ CE
Xi = AiBi + s2s1s0 Ai + s2s1s0Bi
RD
A7
.. ..
A6
A5
.. .. Bus data
A4
A3 .. ..
A2
A1
. .. 74LS244
A0
. 1G
2G
Tabel Fungsi operasi Aritmatika
0 1 1 Ai Bi A kurang B Pengurangan
1 0 1 Ai 1 A Transfer data A
1 1 0 Ai Bi A tambah B Penjumlahan
1 X X X X X 1 1 1 1 1 1 1 1
X 1 X X X X 1 1 1 1 1 1 1 1
X X 0 X X X 1 1 1 1 1 1 1 1
0 0 1 0 0 0 0 1 1 1 1 1 1 1
0 0 1 0 0 1 1 0 1 1 1 1 1 1
0 0 1 0 1 0 1 1 0 1 1 1 1 1
0 0 1 0 1 1 1 1 1 0 1 1 1 1
0 0 1 1 0 0 1 1 1 1 0 1 1 1
0 0 1 1 0 1 1 1 1 1 1 0 1 1
0 0 1 1 1 0 1 1 1 1 1 1 0 1
0 0 1 1 1 1 1 1 1 1 1 1 1 0
masukan Keluaran
E A B 0 1 2 3
0 0 0 0 1 1 1
0 0 1 1 0 1 1
0 1 0 1 1 0 1
0 1 1 1 1 1 0
1 X X 1 1 1 1
Tabel Fungsi operasi ALU
Siny.kont. masukan tahap
seleksi ke-i Keluaran ALU Jenis operasi
s2s1s0Cin Xi Yi F=
0 0 0 0 Ai 0 A Transfer data A
0 0 0 1 Ai 0 A tambah 1 Increment data A
0 0 1 0 Ai Bi A tambah B Penjumlahan
0 0 1 1 Ai Bi A tamb. B tamb. 1 Penjumlahan dengan Carry
0 1 0 0 Ai Bi A tamb. K’1 B Penjumlahan dengan K’1
0 1 0 1 Ai Bi A kurang B Pengurangan
0 1 1 0 Ai 1 A kurang 1 Decrement data A
0 1 1 1 Ai 1 A Transfer data A
1 0 0 x A i + Bi 0 A + B Op.logika : OR
1 0 1 x Ai Bi A + B Op.logika : XOR
1 1 0 x A i + Bi Bi A B Op.logika : AND
1 1 1 x Ai 1 A Op.logika : NOT
Siny.kont. masukan tahap
seleksi ke-i Keluaran ALU Jenis operasi
s2s1s0Cin Xi Yi F=
0 0 0 0 Ai Bi A tambah B Penjumlahan
0 0 0 1 Ai Bi A tamb. B tamb. 1 Penjumlahan dengan Carry
0 0 1 0 Ai 0 A Transfer data A
0 0 1 1 Ai 0 A tamb. 1 Increment data A
0 1 0 0 Ai 1 A kurang 1 Decrement data A
0 1 0 1 Ai 1 A Transfer data A
0 1 1 0 Ai Bi A tamb. K’1 B Penjumlahan dengan K’1
0 1 1 1 Ai Bi A kurang B Pengurangan
1 0 0 x Ai Bi A+B XOR
1 0 1 x A i + Bi 0 A+B OR
1 1 0 x Ai 1 A NOT
1 1 1 x Ai + B i Bi AB AND
asli . Ci
. X
A0 F0
FA F
B0 . . .
Y Co
.
..
. Ci
. X
A1 F1
FA F
B1
. . .
Y Co
.
..
n bit n bit
data A data B
Xi = Ai + s2s1s0Bi + s2s1s0Bi
s2 Yi = s0Bi + s1Bi
Co ALU s1 sinyal kontrol
Cii = s2Coi-1
s0 seleksi
Cin
n bit
data F
.
.
F0
A0
B0
.
.
A1 F1
B1
ke tahap berikutnya
n bit n bit
data A data B
s1 sinyal kontrol
ALU s0
Co (rangkaian aritmatika) seleksi
Cin
s2
n bit s1 sinyal kontrol
data F s0 seleksi
Cin
10 1 0 1 0 Ai Bi A tambah B Penjumlahan
s1
rangk. s1 Operasi: PENJUMLAHAN
konversi s0 dengan CARRY
AC Hex Z
X Y
alamat data
Co Co Paralel Adder Ci Cin s1 s0 Yi
kontrol
F 00 0
TULIS!
0 1 Bi
1 0 Bi
n bit 11 1
data F
n bit A n bit B n bit data F = n bit data X ditambah
n bit data Y ditambah
1 bit Cin.
“0” “0”
n bit A n bit B
Cout
Bi
Yi
s1
s0
Contoh-contoh sistem mikroprosesor minimal
8212
Input
Bufer port
masukan
DS2 DS1
01 02
8212 8212
-12 +5 -5
o o o
Output Output
Status
latch port
latch
8224 01
DS2 DS1 DS2 DS1
2. Suatu rangkaian aritmatika n bit dirancang dengan susunan
rangkaian seperti gambar disamping ini. Terlihat bahwa n bit
data A dan n bit data B dilewatkan rangkaian konversi, dan
ada tambahan sinyal kontrol seleksi . Apabila pers. Boolean
utk. masukan-masukan rangkaian aritmatika tahap ke-I sbb.:
Xi = Ai ( s2+ s1 ) + s2s1s0 Bi
Yi = s1 + ( s0 Bi )
Cii = s2 Coi-1
Susunlah tabel fungsi operaasi aritmatika.
*******SELAMAT MENGERJAKAN*******
Cin
s1 Cin
s0
A0 x0
A1 x1
x2 F0
A2 PA
A3 x3
4bit F1
7483 F2
B0 y0
B1 y1 F3
B2 7487 y2
B3 y3
Cout
Bi
Yi
s1
s0
Cin
s1 Cin
s0
A0 x0
A1 x1
x2 F0
A2 PA
A3 x3
4bit F1
7483 F2
B0 y0
B1 y1 F3
B2 7487 y2
B3 y3
Cout
Bi
Yi
s1
s0
2. Mmmmmmmmmmmmmmmmmmmmmmmmmmmmmm
Nnnnnnnnnnnnnnnnnnnnnnnnnn nnnnn.nnnnnnnnnnnn
Oooooooooooooooooooooooooooooooooooooooooooo
………………………………………………………………………..
*******Selamat Mengerjakan*******
S1 S0 Cin
Cii
A0 X
Ci
B0 . . FA F F0 Fi
X
y
Co
.
A1 Ci
X
B1 . .
FA F F1
Ai
F
y Co
. Ci
A2 X
B2 . . FA F F2 AI
y
Y
. Co
A3 Ci
X
B3 . FA F F3
y
Co
Cout
Ai
Yi
Bi
Xi = Ai
Yi = s0 Bi + s1 Bi
Cii = Coi-1
n bit n bit
data A data B
s1 sinyal kontrol
ALU s0
Co (rangkaian aritmatika) seleksi
Cin
n bit
data F
Nama gerbang Simbol Tabel
logika Logic block Pers.Boolean
Kebenaran
A X A X
X=A
Gerbang NOT 0 1
1 0
A B X
A
Gerbang AND X X=AB
0 0 0
2 masukan B 0 1 0
1 0 0
1 1 1
A B X
A X=A+B 0 0 0
X
Gerbang OR
2 masukan
B 0 1 1
1 0 1
1 1 1
Nama gerbang Simbol Tabel
logika Logic block Pers.Boolean
Kebenaran
A B X
A
X X=AB
0 0 1
Gerbang NAND B 0 1 1
2 masukan 1 0 1
1 1 0
A B X
A 0 0 1
X
X=A+B
Gerbang NOR 0 1 0
2 masukan B 1 0 0
1 1 0
A B X
A 0 0 0
X
Gerbang XOR
2 masukan B X=A +B 0 1 1
1 0 1
1 1 0
A B X
A
Gerbang XNOR X 0 0 1
2 masukan B X=A +B 0 1 0
1 0 0
1 1 1