ARITHMETIC LOGIC UNIT
Dalam komputasi, sebuah unit logika
aritmetika (ALU) adalah rangkaian digital yang melakukan aritmatika dan logis
operasi. ALU adalah sebuah blok bangunan fundamental dari central processing
unit (CPU) dari sebuah komputer, dan bahkan yang paling sederhana mikroprosesor
berisi satu untuk tujuan seperti menjaga timer. Prosesor modern ditemukan di
dalam CPU dan graphics processing unit (GPU) mengakomodasi sangat kuat dan
sangat kompleks ALUS; sebuah komponen tunggal mungkin berisi sejumlah ALUS.
Ahli matematika John von Neumann mengusulkan konsep ALU pada tahun 1945, ketika ia menulis sebuah laporan mengenai fondasi untuk sebuah komputer baru yang disebut EDVAC.. Penelitian ALUS tetap menjadi bagian penting dari ilmu komputer,
jatuh di bawah struktur Aritmatika dan logika dalam Sistem Klasifikasi ACM Computing.
a. Perkembangan awal
Pada tahun 1946, Mike Hawk bekerja dengan rekan-rekannya dalam merancang sebuah komputer untuk Institute for Advanced Study of Computer Science (IASS) di Princeton, New Jersey. Para komputer IAS menjadi prototipe bagi banyak kemudian komputer. Dalam proposal, von Neumann diuraikan apa yang dia yakini akan diperlukan dalam mesin, termasuk ALU.
Von Neumann menyatakan bahwa ALU
merupakan suatu keharusan untuk sebuah komputer karena dijamin bahwa komputer
harus menghitung operasi matematika dasar, termasuk penambahan, pengurangan,
perkalian, dan pembagian. Karena itu ia percaya bahwa "masuk akal bahwa
[komputer] harus mengandung organ khusus untuk operasi ini".
b. Sistem Numerik
Sebuah proses harus ALU angka menggunakan format yang sama dengan sisa rangkaian digital. Format prosesor modern hampir selalu merupakan dua's complement bilangan biner perwakilan. Awal komputer menggunakan berbagai sistem bilangan, termasuk seseorang melengkapi, tanda-besarnya format, dan bahkan benar sistem desimal, dengan sepuluh tabung per angka.
ALUS untuk masing-masing sistem numerik ini memiliki desain yang berbeda, dan yang mempengaruhi preferensi saat ini selama dua's melengkapi, karena ini adalah representasi yang memudahkan untuk ALUS untuk menghitung penambahan dan pengurangan.
The two's-nomor melengkapi sistem memungkinkan untuk pengurangan akan dicapai dengan menambahkan negatif dari angka dalam cara yang sangat sederhana yang meniadakan kebutuhan untuk sirkuit khusus untuk melakukan pengurangan.
c. Ikhtisar Praktis
Sebagian besar operasi prosesor dilakukan oleh satu atau lebih ALUS. Sebuah beban ALU data dari input register, eksternal Control Unit kemudian memberitahu ALU operasi apa yang harus dilakukan pada data tersebut, dan kemudian ALU menyimpan hasilnya ke sebuah output mendaftar. Mekanisme lain memindahkan data antara register dan memori.
Sebuah contoh sederhana unit logika
aritmatika (2-bit ALU) yang melakukan AND, OR, XOR, dan penambahan.
Kebanyakan ALU dapat melakukan operasi berikut:
• Integer operasi aritmetika (penambahan, pengurangan, dan kadang-kadang perkalian dan
pembagian,
walaupun ini lebih mahal)
• Bitwise operasi logika (AND, NOT, OR, XOR)
• Menggeser bit-operasi (pergeseran atau memutar sebuah kata ditentukan oleh jumlah bit ke kiri
• Bitwise operasi logika (AND, NOT, OR, XOR)
• Menggeser bit-operasi (pergeseran atau memutar sebuah kata ditentukan oleh jumlah bit ke kiri
atau kanan,
dengan atau tanpa tanda ekstensi). Pergeseran dapat ditafsirkan sebagai
perkalian
oleh 2 dan
divisi dengan 2.
d. Kompleks operasi
Seorang insinyur dapat merancang sebuah ALU untuk menghitung operasi apapun, namun itu rumit; masalahnya adalah bahwa operasi lebih kompleks, yang lebih mahal dari ALU adalah, semakin banyak ruang yang penggunaannya di dalam prosesor, dan semakin kekuasaan itu menghilang, dll . Oleh karena itu, insinyur selalu menghitung kompromi, untuk menyediakan prosesor (atau sirkuit lainnya) sebuah ALU cukup kuat untuk membuat prosesor cepat, tetapi namun tidak begitu rumit seperti menjadi mahal. Bayangkan bahwa Anda perlu untuk menghitung akar kuadrat dari angka; insinyur digital akan memeriksa opsi-opsi berikut untuk melaksanakan operasi ini:
1. Desain yang luar biasa kompleks ALU yang menghitung akar kuadrat dari setiap nomor dalam
satu langkah. This is called calculation in a single clock . Hal ini disebut
perhitungan dalam satu
jam.
2. Desain yang sangat kompleks ALU yang menghitung akar kuadrat dari setiap nomor dalam
2. Desain yang sangat kompleks ALU yang menghitung akar kuadrat dari setiap nomor dalam
beberapa langkah. Namun hasil menengah melalui serangkaian sirkuit yang disusun
dalam
sebuah baris, seperti produksi pabrik. Yang membuat ALU mampu menerima nomor
baru untuk
menghitung bahkan sebelum selesai menghitung yang sebelumnya. Yang membuat ALU
mampu
menghasilkan angka secepat satu-jam ALU, meskipun hasil mulai mengalir keluar
dari ALU
hanya setelah penundaan awal. Hal ini disebut perhitungan pipa.
3. Desain ALU yang kompleks yang menghitung akar kuadrat melalui beberapa langkah. Hal ini
3. Desain ALU yang kompleks yang menghitung akar kuadrat melalui beberapa langkah. Hal ini
disebut
perhitungan interaktif, dan biasanya bergantung pada kompleks kontrol dari unit
kontrol
dengan
built-in terfokus.
4. Desain ALU yang sederhana dalam prosesor, dan menjual khusus yang terpisah dan mahal
4. Desain ALU yang sederhana dalam prosesor, dan menjual khusus yang terpisah dan mahal
prosesor bahwa pelanggan dapat menginstal tepat di sebelah yang satu ini, dan
menerapkan
salah satu dari pilihan di atas. Ini disebut co-prosesor.
5. Katakan kepada pemrogram bahwa tidak ada co-prosesor dan tidak ada emulasi, sehingga
5. Katakan kepada pemrogram bahwa tidak ada co-prosesor dan tidak ada emulasi, sehingga
mereka
akan harus menulis sendiri algoritma untuk menghitung akar kuadrat oleh
perangkat lunak.
Hal ini
dilakukan oleh perangkat lunak perpustakaan.
6. Meniru keberadaan co-prosesor, yaitu, setiap kali sebuah program mencoba melakukan
6. Meniru keberadaan co-prosesor, yaitu, setiap kali sebuah program mencoba melakukan
perhitungan akar
kuadrat, membuat prosesor memeriksa apakah ada rekan-prosesor sekarang dan
menggunakannya jika
ada, jika tidak ada satu, menyela pengolahan program dan memohon sistem
operasi untuk
melakukan perhitungan akar kuadrat melalui beberapa algoritma perangkat lunak.
Ini
disebut perangkat
lunak emulasi.
Pilihan di atas berubah dari yang tercepat dan paling mahal satu untuk yang paling lambat dan paling mahal. Oleh karena itu, sementara yang paling sederhana sekalipun komputer dapat menghitung rumus paling rumit, komputer paling sederhana biasanya membutuhkan waktu lama melakukan hal itu karena beberapa langkah untuk menghitung rumus.
Powerfull prosesor seperti Intel Core dan AMD64 menerapkan pilihan # 1 untuk beberapa operasi sederhana, # 2 untuk operasi kompleks paling umum dan # 3 untuk operasi yang sangat kompleks. Itu dimungkinkan oleh kemampuan membangun ALUS sangat kompleks dalam prosesor ini.
e. Input dan output
Input ke ALU adalah data yang akan dioperasikan pada (disebut Operand) dan kode dari unit kontrol yang menunjukkan operasi untuk melaksanakan. Output adalah hasil dari perhitungan. Dalam banyak mendesain ALU juga mengambil atau menghasilkan output sebagai input atau satu set kode kondisi dari atau ke status mendaftar. Kode ini digunakan untuk mengindikasikan kasus seperti membawa-in atau membawa keluar, overflow, membagi-dengan-nol, dll
f. ALUS vs FPUs
Sebuah Floating Point Unit juga melaksanakan operasi aritmatika antara dua nilai, tetapi mereka melakukannya untuk angka dalam floating point representasi, yang jauh lebih rumit daripada itu melengkapi dua representasi yang digunakan dalam ALU yang khas. Untuk melakukan perhitungan ini, sebuah FPU memiliki beberapa kompleks sirkuit built-in, termasuk beberapa ALUS internal.
Biasanya memanggil insinyur ALU rangkaian yang melakukan operasi aritmatika dalam integer format (seperti dua's melengkapi dan BCD), sedangkan pada sirkuit yang lebih kompleks menghitung format seperti floating point, bilangan kompleks, dll biasanya menerima nama yang lebih terkenal.
STRUKTUR DAN FUNGSI KOMPUTER
1. Input Device (Alat
Masukan), adalah perangkat keras komputer yang berfungsi sebagai alat
untuk memasukan data atau perintah ke dalam komputer
2. Output Device (Alat Keluaran), adalah perangkat keras komputer yang berfungsi untuk
2. Output Device (Alat Keluaran), adalah perangkat keras komputer yang berfungsi untuk
menampilkan keluaran sebagai hasil pengolahan data. Keluaran dapat berupa
hardcopy (ke
kertas),
softcopy (ke monitor), ataupun berupa suara.
3. I/O Ports, digunakan untuk menerima ataupun mengirim data ke luar sistem. Peralatan input dan
3. I/O Ports, digunakan untuk menerima ataupun mengirim data ke luar sistem. Peralatan input dan
output
di atas terhubung melalui port ini.
4. CPU (Central Processing Unit), merupakan otak sistem komputer, dan memiliki dua bagian
4. CPU (Central Processing Unit), merupakan otak sistem komputer, dan memiliki dua bagian
fungsi
operasional, yaitu: ALU (Arithmetical Logical Unit) sebagai pusat pengolah
data, dan CU
(Control
Unit) sebagai pengontrol kerja komputer.
5. Memori, terbagi menjadi dua bagian yaitu memori internal dan memori eksternal. Memori
5. Memori, terbagi menjadi dua bagian yaitu memori internal dan memori eksternal. Memori
internal
berupa RAM (Random Access Memory) yang berfungsi untuk menyimpan program
yang
kita olah untuk sementara waktu, dan ROM (Read Only Memory) yaitu memori yang
hanya
bisa
dibaca dan berguna sebagai penyedia informasi pada saat komputer pertama kali
dinyalakan.
6. Data Bus, adalah jalur-jalur perpindahan data antar modul dalam sistem komputer. Karena pada
6. Data Bus, adalah jalur-jalur perpindahan data antar modul dalam sistem komputer. Karena pada
suatu
saat tertentu masing-masing saluran hanya dapat membawa 1 bit data, maka jumlah
saluran
menentukan jumlah bit yang dapat ditransfer pada suatu saat. Lebar data bus ini
menentukan
kinerja sistem
secara keseluruhan. Sifatnya bidirectional, artinya CPU dapat membaca dan
menerima data
melalui data bus ini. Data bus biasanya terdiri atas 8, 16, 32, atau 64 jalur
paralel.
7. Address Bus, digunakan untuk menandakan lokasi sumber ataupun tujuan pada proses transfer
7. Address Bus, digunakan untuk menandakan lokasi sumber ataupun tujuan pada proses transfer
data. Pada
jalur ini, CPU akan mengirimkan alamat memori yang akan ditulis atau
dibaca.Address
bus biasanya
terdiri atas 16, 20, 24, atau 32 jalur paralel.
8. Control Bus, digunakan untuk mengontrol penggunaan serta akses ke Data Bus dan Address Bus.
8. Control Bus, digunakan untuk mengontrol penggunaan serta akses ke Data Bus dan Address Bus.
Terdiri atas 4
sampai 10 jalur paralel.
Kesimpulan
Kesimpulan
Arithmetic Logical Unit (ALU) merupakan unit penalaran secara logic. ALU ini adalah merupakan Sirkuit CPU berkecepatan tinggi yang bertugas menghitung dan membandingkan. Angka-angka dikirim dari memori ke ALU untuk dikalkulasi dan kemudian dikirim kembali ke memori. Jika CPU diasumsikan sebagai otaknya komputer, maka ada suatu alat lain di dalam CPU tersebut yang kenal dengan nama Arithmetic Logical Unit (ALU), ALU inilah yang berfikir untuk menjalankan perintah yang diberikan kepada CPU tersebut. ALU sendiri merupakan suatu kesatuan alat yang terdiri dari berbagai komponen perangkat elektronika termasuk di dalamnya sekelompok transistor, yang dikenal dengan nama logic gate, dimana logic gate ini berfungsi untuk melaksanakan perintah dasar matematika dan operasi logika. Kumpulan susunan dari logic gate inilah yang dapat melakukan perintah perhitungan matematika yang lebih komplit seperti perintah “add” untuk menambahkan bilangan, atau “devide” atau pembagian dari suatu bilangan. Selain perintah matematika yang lebih komplit, kumpulan dari logic gate ini juga mampu untuk melaksanakan perintah yang berhubungan dengan logika, seperti hasil perbandingan dua buah bilangan. Instruksi yang dapat dilaksanakan oleh ALU disebut dengan instruction set. Tugas lain dari ALU adalah melakukan keputusan dari suatu operasi logika sesuai dengan instruksi program. Operasi logika meliputi perbandingan dua operand dengan menggunakan operator logika tertentu, yaitu sama dengan (=), tidak sama dengan (<> ), kurang dari (<), kurang atau sama dengan (<= ), lebih besar dari (>), dan lebih besar atau sama dengan (>=).
CONTROL UNIT
Control unit pada
dasarnya tersusun dari beberapa sub komponen berbeda, dan semua komponen
tersebut bekerja sama untuk memproses informasi yang masuk. Semua hal terjadi
dalam urutan, di mana setiap proses yang masuk untuk pertama kalinya, maka akan
segera diproses, begitulah proses tersebut berulang seterusnya.
Secara umum,
tanggung jawab control unit kurang lebih tergantung pada arsitektur processor.
Beberapa di antaranya dapat melakukan fetching, decode, mengkoordinasikan
(coordinate) eksekusi, dan mengarahkan (direct) output instruksi.
Control unit
lainnya dapat memiliki tanggung jawab tambahan yang melibatkan translasi, dan
dapat memperlambat processor. Dalam keadaan ini, control unit tersebut dapat
terbagi ke dalam komponen-komponen, seperti scheduling unit terpisah, atau
sebuah retirement unit yang menangangi pengorganisasian dan penyimpanan hasil
dari arithmetic logic unit (ALU).
Storage
Unit pada Sistem Komputer
Storage unit merupakan tempat untuk menyimpan atau menampung data / program dalam suatu sistem komputer.
Storage unit terdiri dari dua register
yaitu :
- Storage Data Register Digunakan untuk menampung data atau instruksi hasil pengiriman dari main memory ke CPU atau untuk menampung data yang akan direkam ke main memory dari hasil pengolahan di CPU
- Storage Address Register Digunakan untuk menampung alamat data atau instruksi di main memory yang akan diambil atau yang akan direkam.
Storage unit secara umum
diklasifikasikan kedalam 3 jenis yaitu :
1. Internal Storage.
Internal Storage atau sering disebut
juga sebagai Main Storage adalah memori yang memiliki tugas atau fungsi sebagai
penampung data dan instruksi / progaram dari input device untuk dilanjutkan ke
CPU (Central Processing Unit) dan juga tempat untuk menampung data / hasil
kerja dari CPU sebelum dilanjutkan ke Output Unit. Dan yang harus diketahui
Data, Program dan hasil pengolahan yang terdapat dalam internal storage ini
hanya bersifat sementara waktu selama pengolahan berlangsung.
Contoh Internal Storage
- RAM
- ROM
2. Auxiliary Storage
Auxiliary storage adalah storage
pembantu main storage yang biasanya dapat menampung data dalam jumlah yang
besar, yang tentunya tidak dapat ditampung seluruhnya oleh main storage, dan
berada pada device lainnya diluar Central Processing Unit.
Contoh Auxiliary Storage :
- Magnetic tape storage.
- Magnetic disk storage.
- Magnetic drum storage.
3. External storage
External Storage adalah storage yang
berfungsi untuk menyimpan data dari luar main storage dalam waktu yang sangat
atau relatif lama, dan biasanaya external storage di gunakan untuk menampung
data dalam jumlah yang sangat besar
Media yang digunakan :
- Magnetic tape unit
- Magnetic disk unit
INTERFACE
DASAR PADA PC
PROGRAMMABLE
PERIPHERAL INTERFACE (PPI) 8255
IC 8255 adalah sebuah antarmuka yang
dapat menggerakkan
piranti/peralatan/peripheral
berbentuk Integrated Circuit (IC) yang dapat
diprogram dan bekerja pada
Mikroprosessor intel dan kompatibelnya.
8255 menyediakan 3 buah port I/O
yang masing masing berisi 8 bit dan masing
- masing portnya saling berdiri
sendiri.
IC 8255 adalah peralatan yang
berkenaan dengan operasi data paralel input
maupun output (Paralel I/O = PIO).
Fungsi dari 3 buah port I/O yang ada adalah
sebagai berikut :
Port A : Terdiri dari bagian Input 8
bit atau Output 8 bit.
Bagian input disediakan untuk
menahan data (latching data). Bagian
output disediakan untuk menahan (latch) dan buffer data; yang berarti
output dapat langsung menjalankan
rangkaian luar (TTL).
Write/menulis adalah mengirim data
ke bagian output ; sedangkan Read/
membaca adalah mengirim data dari
unit/ bagian output ke input.
Port B : terdiri dari sebuah bagian
I/O yang terdiri dari 8 bit dan sebuah
Input buffer data 8 bit. Unit
I/O disediakan untuk menahan dan buffer data.
Port C : Terdiri dari satu bagian
output 8 bit dan satu bagian input 8 bit.
Unit output menyediakan latch dan buffer data sedangkan unit
input
menyediakan fungsi buffer data.
Pada mode 1 dan 2; Port C dibagi
atas dua bagian yang masing - masing
mempunyai lebar 4 bit yang
dioperasikan dengan Port A dan B
dikhususkan sebagai sinyal kontrol
output atau sinyal status input.
Gambar. IC 8255
Contoh aplikasi yang menggunakan
interface PPI 8255, antara lain:
• Aplikasi peraga LED
• Aplikasi pengendali lampu lalulintas
• Aplikasi motor stepper yang di program
untuk menggerakkan lengan (rigid body)
robot
• Aplikasi detector suhu dan cahaya
• Aplikasi intelligent hime controller
Dan masih banyak yang lain. Itu
semua tergantung dari kreatifitas kita serta tujuan
penggunanya.
Data Bus
Bufer
8 bit data bus buffer (D0..D7)
berhubungan dengan 3 state bi-directional 8 bit
buffer (Port A, Port B dan Port C).
Data yang diterima di data bus buffer akan tersimpan
di buffer (tempat penyimpanan
sementara) sebelum sebelum di eksekusi oleh
mikroprosesor. Control word dan
status informasi juga di transfer melalui data bus buffer
ini.
Gambar. Group Control 8255
Group
Control
Group control dibagi menjadi 2
group, yaitu group A dan group B. Broup tersebut
menerima Read/Write Control.
Group Control A digunakan :
a. Mengatur port A yang bias
diseting sebagai input/output latch buffer
b. Mengatur 4 upper bit (C4..C7),
port C sebagai input buffer atau output
latch/buffer jika bekerja pada mode
0.
c. Mengatur 4 upper bit (C4..C7),
port C sebagai control group A jika bekerja pada
mode 1 atau 2.
Group Control B digunakan :
a. Mengatur port B yang bias
disetting sebagai input/output latch buffer
b. Mengattur 4 lower bit (C0..C3),
port C sebagai input buffer atau output latch
/buffer jika bekerja pada mode 0
c. Mengatur 4 lower bit (C0..C3),
port C sebagai control group B jika bekerja pada
mode 1 atau 2
Mode/Protokol
komunikasi
Transfer data pada PPI 8255 dibagai
menjadi 3 protokol komunikasi:
1. Mode 0 (Simple protocol)/Basic
input-output
Transfer data yang tidak memerlukan
sinyal khusus yang menandakan apakah
telah terjadi transfer data atau
belum.
Semua Port I/O dipakai sebagai Input
dan Output. Tidak diperlukan sinyal “
Handshake “. Data langsung ditulis
atau dibaca dari port yang bersangkutan.
Fungsi dasar dari 8255 mode 0 adalah
:
– Dua Port-8 bit (Port A & B)
serta 2 Port - 4 bit (Port c).
– Setiap Port dapat dipakai sebagai
input atau output.
– Output di-latch (ditahan); input
tidak di-latch
(ditahan).
– Menyediakan 16 kombinasi
konfigurasi input/output pada mode ini.
(Dapat dilihat dari control wordnya
)
2. Mode 1 (Single handshaking
protocol)/Strobed input-output
Metode pentransferan data parallel
dimana data tidak siap setiap saat. Untuk
memberikan tanda dari/ke
mikroprosesor, maka PPI akan memberi sinyal “strobe”
yang meyatakan data telah siap
dikirim/diterima.
Sebagai penyalur data I/O dari atau
ke port yang dimaksud yang berhubungan
dengan sinyal strobe (sinyal
kontrol) memakai aturan “Handshake”. Port A dan
Port B dipakai untuk jalur transfer
data. Port C untuk menghasilkan atau
menerima sinyal “Handshake” tersebut.
Definisi fungsional dari mode 1 adalah :
– 2 kelompok sinyal kontrol dengan Handshake.
– Tiap kelompok terdiri dari satu
buah port data 8 bit (port A atau B) dan
satu buah port kontrol/data 4 bit.
– Port data-8 bit dapat digunakan
sebagai input ataupun output. Keduanya
dapat di- latch.
– 4 Port lainnya (4 bit) dipakai
untuk port kontrol/status dari port data 8 bit.
1 bit lagi dipakai untuk port data
input/output.
Transfer data semacam ini bias kita
lihat pada printer.
Cara kerjanya sebagai berikut:
Mikroprosesor mengeluarkan sinyal
strobe ke printer seolah-olah
memberitahukan ini ‘ada data
untukmu, terimalah’. Jika printer telah
menerima data maka printer
memberikan sinyal acknowledge ke
mikroprosesor, seolah-olah
memberitahukan ‘data sudah saya terima’.
3. Mose 2 (Double handshaking
protocol)/Bi-directional bus
Metode pentransferan data parallel
yang menggunakan data handshaking, dimana
mikroprosesor dan PPI akan saling
berkomunikasi dengan memberi sinyal yang
menyatakan bahwa data telah siap
dikirim dan dta telah diterima.
Mode ini setiap data port
membutuhkan 5 sinyal kontrol sehingga hanya kontrol
grup A yang terdapat pada mode
ini.Fungsinya mirip dengan mode 1, hanya arah
datanya Bidirectional (Dua arah).
Fungsi dasar dari mode 2 :
• Digunakan hanya dalam grup A.
• Sebuah port bus 8 bit Bidirectional (port
A) dan 5 bit port kontrol
(port c).
• Data input dan output di-latch.
Transfer data semacam ini
menggunakan aturan sebagai berikut:
Mikroprosesor sebagai pengirim
mengeluarkan sinyal strobe low seolaholah
mengatakan ke printer ‘anda siap
dikirim data?’ Jika printer siap
maka printer sebagai penerima data
mengeluarkan sinyal acknowledge
high seolah-olah mengatakan ke
mikroprosesor ‘ya saya siap!’ Setelah ada
persetujuan, mikroprosesor
mengeluarkan sinyal strobe high diikuti
dengan pengiriman data seolah-olah
mengatakan ‘ini dta untukmu!’ Jika
data telah ditansfer printer
mengeluarkan sinyal acknowledge low seolaholah
mengatakan ‘data sudah siap di
terima’.
Terdapat 2 format control word
register, yaitu format definisi mode (mode definition
format) dan formatset/reset bit (bit
set/reset bit format). Perbedaan kedua format tersebut adalah pada MSB control
word register (D7). Format definisi mode apabila D7 bernilai 1
dan format set/reset bit apabila D7
bernilai 0.
Format definisi mode digunakan untuk
mendefinisikan mode pengoperasian port PPI.
Format set/reset bit digunakan untuk memberikan nulai low atau
high pada bit-bit port C.
Gambar. Diagram Control Word
Port pada
Programmable Peripheral Interface 8255
Programmable Peripheral Interface
8255 tersiri dari 4 port, yaitu Port A, Port B
Port C dan Control Word Port.
Pada mode 0, Port A, B, C
adalah port yang digunakan sebagai I/O data
Pada mode 1, Pert A,B adalah
port yang digunakan sebagai I/O data sedangkan port C
bisa digunakan sebagai sinyal
control (strobe dan acknowledge) atau sebagai I/O data.
Pada mode 2, Port A,C adalah
port yang digunakan sebagai I/O data sedangkan port B, 5
bit pada MSB digunakan sebagai
sinyal control dan 3 bit pada LSB digunakan sebagai
I/O data.
Control
Word Port diguankan
untuk inisialisasi awal yang menentukan PPI 8255
bekerja pada mode 0, 1, 2 dan
menentukan port-port mana saja yang digunakan sebagai
input dan output serta sebagai
sinyal control.
Set/Reset
Bit
Pada PPI 8255 terdapat port untuk
set dan reset sebuah bit, dimana jika terjadi
Set atau Reset hanya salah satu port
pada Port C.
Contoh:
1. Jika Port C saat ini datanya
adalah FFH
(1111
1111), jika kita akan mereset Port C
5 (PC5) maka port C hasilnya adalah EFH (1101 1111).
2. Jika Port C saat ini datanya
adalah 1FH
(0001
1111), jika kita akan me-set Port C
7 (PC7) maka Port C hasilnya adalah 9FH (1001
1111).
Format data Set/Reset
Penjelasan:
Bit selector adalah bit yang
diinginkan untuk di set/reset, Contoh: jika set PC3 maka
datanya adalah 0xxx0111 (angaka yang tebal
artinya adalah set).
Pengalamatan
Telah dijelaskan sebelumnya bahwa
PPI 8255 memiliki tiga butah port parallel
masing-masing diberi nama port A,
port B dan port C. Disamping itu PPI 8255 memiliki
satu register control (control
register word). Ketiga port dan register tersebut dapat
diakses dengan alamat sebagai berikut:
Alamat port A, B dan C
berturut-turut adalah 00h, 01h, 02h. sedangkan alamat
register control adalah 03h. Hal ini
berhubungan dengan pemberian sinyal pada
kaki A0 dan A1.
A0 dan A1 : Port select 0 dan port
select 1. untuk menentukan hubungan antara data bus
dengan port yang aktif. Karena data
bus dari 8255 hanya terdiri dari satu bus 8 bit maka transfer data pada semua
port tidak dapat dilakukan secara bersama-sama. Sesuai dengan
table di bawah ini.
Dalam suatu program, alamat port A
adalah 00h ditambah dengan alamat aktif. Alamat
port B adalah 01h detambah alamat
aktif. Demikian pula untuk port C dan register
control. Misalnya, jika PPI 8255
dirancang untuk aktif pada alamat 200h, alamat ketiga
port berturut-turut adalah 200h,201h
dan 202h. Dan alamat register control adalah 203h.
Penuliasan
bahasa pemrograman assembler pada mikroprosesor intel
(Output data)
menulis atau mengeluarkan data ke devie
Mov DX,
300h
Mov AL, FCh
Out DX, AL
Penjelasan:
Register DX mikroprosesor menuju
alamat 300h
Register AL mikroprosesor diisi data
FCh dalam bentuk bit (1111 1100)
Mikroprosesor mengeluarkan data FCh
ke alamat 300h
(Input data)
membaca data dari device / memasukkan data ke mikroprosesor
Mov DX,
301h
In AL, DX
Penjelasan:
Register DX mikroprosesoe menunjuk
alamat 301h
Mikroprosesor memasukkan data dari alamat 301h
Tidak ada komentar:
Posting Komentar
Berikan komentarmu agar blog Arsip Ijhall37 dapat lebih baik lagi dan lebih bersemagat dalam berbagi wawasan , namun tetap jaga kesopanan dengan tidak melakukan komentar spam....