Nama :Febronius seran
Nim :13110201
MIKROPROSESOR INTEL 8088
Intel 8088 adalah prosesor mikro buatan Intel berbasis pada 8086, dengan 16-bit register dan menggunakan 8-bit external data bus. intel 8088 merupakan prosesor yang digunakan pada IBM PC.
8088
ditargetkan pada sistem yang ekonomis, diikuti oleh pengunaan desain 8-bit.
Jalur bus yang lebar dalam circuit boards masih sangatlah mahal ketika ini di
luncurkan. Queue yang ungul dari 8088 adalah 4 bytes, sebagai penggunaan dalam
8086 6 bytes. 8088 termasuk keturunan dari 80188, 80288, 80186, 80286, 80386,
80486, dan 80388, microcontroller seperti yang masih digunakan sekarang. Clone
yang populer dengan menggunakan 8088 adalah Model D, dimana tombol pilihan dapat
berjalan pada clock 4.77 MHZ atau 7.16MHZ.
Spesifikasi 8088
Mikroprosesor Intel 8088 hampir serupa dengan prosesor Intel 8086, kecuali pada data eksternal bus. Lebar data eksternal bus 8088 dikurangi menjadi 8 bit, dan instruksi ukuran queue dan prefetching algoritmanya diubah. Intel 8088 menggunakan dua urutan bus siklus untuk menulis atau membaca 16 data bit sebagai ganti satu siklus untuk 8086. Ini menjadikan prosesor bergerak lebih lambat, tetapi ada nilai plus pada perangkat keras yang menjadikan CPU 8088 kompatibel dengan peripheral 8080/8085.
Spesifikasi 8088
Mikroprosesor Intel 8088 hampir serupa dengan prosesor Intel 8086, kecuali pada data eksternal bus. Lebar data eksternal bus 8088 dikurangi menjadi 8 bit, dan instruksi ukuran queue dan prefetching algoritmanya diubah. Intel 8088 menggunakan dua urutan bus siklus untuk menulis atau membaca 16 data bit sebagai ganti satu siklus untuk 8086. Ini menjadikan prosesor bergerak lebih lambat, tetapi ada nilai plus pada perangkat keras yang menjadikan CPU 8088 kompatibel dengan peripheral 8080/8085.
Pin SSO pada 8088 menggantikan BHE/S7
pada 8086, dan pin IO/M pada 8088, bukan M/IO seperti pada 8086. 8088
membutuhkan catu daya +5,0 V dengan toleransi + 10%. Mikroprosesor 8088 akan
kompatibel TTL (Transistor-Transistor Logic) jika kekebalan terhadap noise
disesuaikan menjadi 350 mV dari nilai 400 mV yang biasa. Mikroprosesor 8088
dapat menjalankan satu 74XX, lima 74LSXX, satu 74SXX, sepuluh 74ALSXX, dan
sepuluh 74HCXX beban satuan. Jika mikroprosesor 8088 direset, mikroprosesor ini
mulai mengeksekusi perangkat lunak pada lokasi meori FFFF0H (FFF:0000) dengan
pin interrupt request di-disable. Karena bus-bus 8088 dimultipleks dan
kebanyakan memori dan peralatan I/O tidak, system harus didemultipleks sebelum
pengantarmukaan dengan memori atau I/O. Demultipleks dilakukan oleh latch
delapan bit yang pulsa clocknya didapat dari sinyal ALE. Operasi minimum 8088
sama dengan mikroprosesor Intel 8085A, sementara mode maksimum adalah baru dan
khusus dirancang untuk operasi koprosesor aritmatika 8087.
REGISTER
Sebuah register adalah sebuah tempat penampungan sementara untuk data-data yng akan diolah oleh prosesor, dan dibentuk oleh 16 titik elektronis di dalam chip mikroprosesor itu sendiri. Dengan adanya tempat-tempat penampungan data sementara ini, proses pengolahan akan bisa dilakukan
Sebuah register adalah sebuah tempat penampungan sementara untuk data-data yng akan diolah oleh prosesor, dan dibentuk oleh 16 titik elektronis di dalam chip mikroprosesor itu sendiri. Dengan adanya tempat-tempat penampungan data sementara ini, proses pengolahan akan bisa dilakukan
secara jauh lebih cepat dibandingkan apabila data-data tersebut harus diambil langsung dari lokasi-lokasi memori. Register-register tersebut sebagai register internal dan terdiri dari empat belas register dan keseluruhannya dapat dibagi dalam beberapa jenis, yaitu : Register Segment, Register Data, Register pointer, Register index, Register index, dan General Purpose Register.
Semua general register
mikroprosesor 8088 dapat digunakan untuk perhitungan dan operasi logika.
Pada 8088, register data diwujudkan oleh
AX, BX, CX dan BX (sebagai general purpose register), sehubungan dengan
fungsinya yang selain menangani tugas-tugas khusus, juga bisa dimanfaatkan
untuk membantu proses-proses pengolahan data didalam internal mikroprosesor.
Mikroprosesor 8088 mempunyai kemampuan
untuk bekerja dalam mode ‘langkah tunggal’ (single-step), yaitu semua instruksi
dilaksanakan dengan cara satu demi satu. Mode ini dimungkinkan
dengan jalan membuat TF (Trap Flag) masuk ke logika ‘1’ atau ‘set’. Bagi seorang programmer, mode ini akan sangat berguna dalam pekerjaan ‘debugging’.
dengan jalan membuat TF (Trap Flag) masuk ke logika ‘1’ atau ‘set’. Bagi seorang programmer, mode ini akan sangat berguna dalam pekerjaan ‘debugging’.
Organisasi Ruang Memori Dan Register
Unsur terkecil memori adalah ‘sel memori’ (memory-cell), yaitu suatu elemen penyimpanan data yang berkapasitas sebesar 1 bit. Dengan menggabungkan sejumlah sel memori, akan bisa membentuk suatu ruang penyimpanan data dengan berbagai ukuran, misalnya 1 byte, 1 word, 1 Kilobyte, 1 Megabyte, 1 Gigabyte, 1 Terabyte, dsb.
Organisasi memori dapat dibandingkan
dengan sistem ‘locker’ (susunan laci yang mempunyai kode nomor setiap lacinya
sehingga memudahkan orang mengenal lacinya masing-masing sebelum mengambil atau
memasukkan barang titipannya).
Susunan chip prosesor Intel 8088.
• Catu Daya/VCC (pin 40) dan GND (pin 1 dan 20)
• Bus Data (AD0 – AD7)
• Bus Alamat (AD0 – AD7 dan A8 – A19)
• Bus Kendali (NMI, INTR, CLK, Reset).
• Catu Daya/VCC (pin 40) dan GND (pin 1 dan 20)
• Bus Data (AD0 – AD7)
• Bus Alamat (AD0 – AD7 dan A8 – A19)
• Bus Kendali (NMI, INTR, CLK, Reset).
Dalam mikroprosesor 8088 secara fisik,
bus alamat terdiri dari 20 bit (A0-A19), sementara register-register internal
terbentuk dari 16 bit data. Oleh sebab itu, untuk menyesuaikan perbedaan jumlah
bit antara bus alamat 8088 dengan register internal, sistem pengalamatan memori
dilaksanakan dengan format
segment:offset. Format yang membutuhkan 32 bit ini dibentuk dengan jalan
menggabungkan data dari 2 buah register sekaligus. Register pertama adalah satu
satu dari 4 register segment, sedangkan register lainnya diambil dari salah
sebuah register pointer atau register indeks.
Kenyataannya, segment-segment yang
didefinisikan pada ruang memori itu boleh dibuat saling berdampingan, terpisah
atau tumpang tindih sekalipun. Prosesor memiliki bus alamat sebanyak 20 bit,
yang berarti ia mampu mengalamati hingga 1.048.575 lokasi memori. Secara
heksadesimal, jumlah ini dinyatakan sebagai angka 00000 sampai dengan
FFFFF. Ini adalah alamat-alamat fisik (physical addresses) dari
mikroprosesor. Untuk 8088 dan 8086 yang bus alamatnya terdiri dari 20 bit,
otomatis penulisan alamat fisiknya terdiri dari 5 digit heksadesimal. Sistem
segmentasi pada IBM PC dilaksanakan agak unik. 1 segment adalah bagian dari
ruang memori yang besarnya 65536 byte atau 64 Kb. Namun, segment-segment itu
tidaklah diletakkan secara berdampingan sambung menyambung satu sama lain, akan
tetapi saling tumpang tindih sehingga jarak antara titik awal suatu segment
hanya terpaut 16 byte terhadap segment lainnya.
Peta
Memori (Memory Map)
Kapasitas memori untuk IBM PC/XT yang berbasis prosesor Intel 8088/8086 adalah 1.048.576 byte atau lebih mudah disebut 1 (satu) Megabyte. Nilai sebesar 1 MB inilah yang menjadi dasar sistem pemetaan memori dalam keluarga IBM PC Kompatibel, sehingga dalam produk-produk yang lebih mutakhir pun, peta memori tersebut tetap dipertahankan. Hal ini berhubungan dengan konsistensi yang harus dijaga pada Disk Operating System, yang dalam keadaan bagaimanapun, harus tetap bisa dijalankan mulai dari produk yang paling awal seperti PC/XT, sampai kepada yang terbaru seperti AT 486 kompatibel.
ARSITEKTUR
Arsitektur dari 8088 tetap sama degan 8086 yakni: 16-bit registers, 16-bit internal data bus dan 20-bit address bus, yang bisa menjadikan prosesor mencapai memori 1 MB. 8088 memiliki pembagian memori yang sama dengan 8086: prosesor bisa mencapai 64 KB dari memori secara langsung, dan untuk mencapai lebih dari 64 KB, salah satu dari bagian khusus register harus di update.
Program, data dan stack memori menduduki ruang memori yang sama. Total kapasitas memory yang bisa dicapai adalah 1MB KB. Sebagaimana kebanyakan instruksi prosesor yang menggunakan 16-bit pointers, prosesor dapat mengolah secara efektif jika hanya memorinya 64 KB. Untuk mengakses memori diluar 64 KB, CPU menggunakan bagian register khusus untuk menspesifikasi di mana kode, stack dan 64 KB segmen data diposisikan di dalam memori 1 MB.
Arsitektur dari 8088 tetap sama degan 8086 yakni: 16-bit registers, 16-bit internal data bus dan 20-bit address bus, yang bisa menjadikan prosesor mencapai memori 1 MB. 8088 memiliki pembagian memori yang sama dengan 8086: prosesor bisa mencapai 64 KB dari memori secara langsung, dan untuk mencapai lebih dari 64 KB, salah satu dari bagian khusus register harus di update.
Program, data dan stack memori menduduki ruang memori yang sama. Total kapasitas memory yang bisa dicapai adalah 1MB KB. Sebagaimana kebanyakan instruksi prosesor yang menggunakan 16-bit pointers, prosesor dapat mengolah secara efektif jika hanya memorinya 64 KB. Untuk mengakses memori diluar 64 KB, CPU menggunakan bagian register khusus untuk menspesifikasi di mana kode, stack dan 64 KB segmen data diposisikan di dalam memori 1 MB.
16-bit pointers dan data disimpan
sebagai:
address: low-order byte
address+1: high-order byte
address: low-order byte
address+1: high-order byte
32-bit addresses disimpan di
“segment:offset” dengan format:
address: low-order byte of segment
address+1: high-order byte of segment
address+2: low-order byte of offset
address+3: high-order byte of offset
address: low-order byte of segment
address+1: high-order byte of segment
address+2: low-order byte of offset
address+3: high-order byte of offset
Physical memory address ditunjukkan oleh
pasangan segment:offset dihitung dengan:
address = (<segment> * 16) +
<offset>
Program Memori- program dapat
ditempatkan di manapun di dalam memori. perintah jump and call dapat digunakan
untuk menyingkat lompatan di dalam segmen kode 64 KB, seperti halnya untuk
lompatan jauh di manapun di dalam memori 1 MB. Seluruh perintah lompatan yang
bersyarat dapat digunakan untuk melompat sekitar + 127 – – 127 bytes dari
instruksi yang ada.
Memori data – prosesor dapat mengakses
data di tiap orang lebih dari 4 segmen yang tersedia, yang membatasi ukuran
dari memori yang dapat diakses sampai 256 KB ( jika seluruh empat segmen
menunjuk pada 64 KB blok berbeda). Mengakses data dari Data, Code, segmen Extra
atau Stack biasanya dapat dilaksanakan dengan awalan perintah DS:, CS:, SS:
atau ES: ( beberapa register dan instruksi dengan tak hadir boleh gunakan
segmen SS atau ES sebagai ganti segmen DS).
Set
Instruksi
Set instruksi 8088 terdiri dari perintah-perintah berikut:
* Instruksi perpindahan data.
* Aritmatika – penjumlahan, pengurangan, penaikan, penurunan, mengkonversi byte/word dan pembandingan.
* Logika – DAN, OR, eksklusif OR, shift/rotate dan test.
* Manipulasi string – load, store, move, compare dan scan untuk byte/word.
* Kontrol transfer – conditional, unconditional, panggilan subroutine dan kembali dari subroutine.
* Perintah Input/Output.
* Lain-lain – setting/clearing flag bits, stack operations, software interrupts, dan lain-lain.
KESIMPULAN
8088 adalah desain hybrid 8/16-bit: 16-bit internal, dengan 8-bit I/O. ini berarti bahwa Sistem designer dapapt menggunakan chip pendukung 8-bit yang murah dan tersedia. Sehingga menurunkan harga sebuah sistem komputer. Kemampuannya tidak begitu hebat, mesin-mesin Z-80 dan 8085 kadang-kadang lebih unggul, tetapi 8088 terjual cukup banyak. Apalagi setelah divisi IBM memilihnya sebagai prosesor utama IBM PC. 8088 menjadi sejarah dan terjual jutaan unit, rekor kedua setelah Z-80.
Sayangnya Intel membuat beberapa keputusan
yang buruk dalam desain. Pertama, 8088 menggunakan arsitektur bersegmen. Kedua
untuk alasan yang tidak efisien, Intel memutuskan untuk membatasi akses
base-memory dalam suatu cara menjadi hanya 640K. Meskipun pada masa itu
keputusan ini adalah untuk jangka pendek semua user prosesor x86 hingga saat
ini merasa kesulitan dengan pembatasan 640K tersebut. Ini dapat ditemukan jika
user menerima pesan kesalahan ‘out of memory’. DOS, Windows, dan bahkan Windows
95 memiliki permasalahan base-memory yang disebabkan oleh batas 640K. Hanya
sistem operasi murni 32-bit seperti OS/2 dan Windows NT yang tidak memiliki
masalah ini. Saat itu user harus menunggu 7 tahun sebelum kemunculan 386.
[Mukhlish muchad Fuadi: 2nd Semester 2006]
[Mukhlish muchad Fuadi: 2nd Semester 2006]
MIKROPROSESOR
8086
1. Sejarah
Pada tahun 1968 Gordon Moore, Robert
Noyce, dan Andy Grove menemukan Intel Corp. untuk menjalankan bisnis
“Integrated Elektronics”. Di tahun 1969 Intel mengumumkan produk pertamanya,
RAM statis 1101, Metal Oxide Semikonduktor (MOS) pertama didunia. Hal ini
memberikan sinyal pada berakhirnya era memori magnetis. Kemudian pada tahun
1971, Intel memperkenalkan mikroprosesor pertama didunia yaitu Intel 4004 yang
didesain oleh Federico Faggin, merupakan mikroprosesor 4-bit, yaitu controller
yang dapat diprogram pada satu chip. Mikroprosesor ini hanya mengalamatkan 4096
lokasi memori 4-bit. (bit adalah digit biner yang bernilai “satu” atau “nol”.
Memori yang lebarnya 4-bit disebut nibble). Kumpulan intruksi Intel 4004 hanya
mengandung 45 instruksi. Mikroprosesor ini dibuat dengan teknologi P-channel
MOSFET (yang termasuk canggih pada waktu itu) yang membuatnya hanya dapat
mengeksekusi instruksi-instruksi tersebut pada kecepatan rendah dalam 50 KIPs.
Pada tahun 1972, Intel meluncurkan 8008
, mikroprosesor 8-bit pertama. Ini mengimplementasikan set instruksi yang
dirancang oleh Datapoint korporasi dengan Programmable CRT terminal dalam
pikiran, yang juga terbukti cukup tujuan umum. Perangkat diperlukan beberapa
tambahan IC untuk menghasilkan sebuah komputer fungsional, sebagian karena itu
yang dikemas dalam 18-pin kecil “paket memori-“, yang mengesampingkan
penggunaan bus alamat yang terpisah (Intel adalah terutama DRAM produsen di
waktu).
Dua tahun kemudian, Intel meluncurkan
8080 , mempekerjakan 40-pin baru paket DIL awalnya dikembangkan untuk
kalkulator IC untuk mengaktifkan bus alamat yang terpisah. Itu satu set
instruksi yang diperpanjang sumber – (tidak biner -) kompatibel dengan 8008 dan
juga termasuk beberapa 16-bit instruksi untuk membuat program lebih mudah.
Perangkat 8080, sering digambarkan sebagai microprocessor pertama benar-benar
berguna, akhirnya digantikan oleh beban deplesi- berbasis 8085 (1977) yang bisa
mengatasi dengan catu daya 5V tunggal bukannya tiga tegangan operasi yang
berbeda dari chip sebelumnya. Lainnya terkenal 8-bit mikroprosesor yang muncul
selama bertahun-tahun adalah Motorola 6800 (1974), General Instrument PIC16X
(1975), MOS Technology 6502 (1975), Zilog Z80 (1976), dan Motorola 6809 (1978).
Pada tahun 1972, Intel mengumumkan
prosesor 8-bit 8008. Bill Gades Muda dan Paul Allen mencoba untuk mengembangkan
bahasa pemrograman tersebut, namun saat itu masih kurang kuat.
Pada tahun 1974, Intel memperkenalkan
prosesor 8-bit 8080 dengan 4500 transistor yang memiliki kinerja 10 kali dari
pendahulunya. Kemudian di tahun 1975, chip 8080 ini menemukan aplikasi PC
pertamanya pada Altair 8800 sekaligus merevolusi PC. Ditahun ini juga Bill
Gades Muda dan Paul Allen sukses mengembangkan bahasa dasar altair, yang
kemudian menjadi Microsoft Basic untuk 8080.
Pada tahun 1978, Intel memperkenalkan
mikroprosesor 16 bit bernama 8086 yang merupakan pengembangan dari
mikroprosesor sebelumnya, yaitu 8080/8085. Lahir dan suksesnya mikroprosesor
8086 pada IBM PC menjadi batu loncatan.
Karena masih ada perangkat keras yang
hanya berukuran 8 bit serta harga PCB dengan lebar 16 bit data yang sangat
mahal, mikroprosesor ini mengalami masalah dengan lebar datanya. Oleh karena
itu pada tahun 1979, Intel meluncurkan mikroprosesor 8088 yang mampu menangani data
16 bit dan juga 8 bit. Akibatnya tahun 1981 Intel mengubah computer IBM
sehingga menggunakan mikroprosesor 8088 yang ternyata sangat sukses dipasaran
karena kompatibilitasnya.
Pada tahun 1982, IBM menandatangani
Advanced Micro Devices sebagai sumber kedua Intel untuk mikroprosesor 8086 dan
8088. Ditahun yang sama Intel memperkenalkan prosesor 16-bit 80286 dengan
134.000 transistor.
Pada tahun 1984, IBM mengembangkan PC
generasi kedua, 80286-Based PC-AT. PC-AT yang menjalankan MS-DOS, kelak menjadi
standard PC selama hampir 10 tahun.
Pada tahun 1985, Intel keluar dari
bisnis RAM dinamis untuk focus pada mikroprosesor, dan akhirnya ia mengeluarkan
prosesor 80386, sebuah chip 32-bit dengan 275.000 transistor dan kemampuan
menjalankan berbagai macam program sekaligus. Pada tahun 1989, 80486
diluncurkan dengan 1,2 juta buah transistor dan built-in math co-prosesor. Pada
tahun 1993, Transistor 3.1 juta, prosesor 66-MHz Pentium dengan teknologi
superscalar diperkenalkan.
Pada tahun 1997, Intel meluncurkan
teknologi prosesor 64-bit Epic. Ia juga memperkenalkan MMX Pentium untuk
aplikasi prosesor sinyal digital, yang juga mencakup grafik, audio, dan
pemrosesan suara. Pada tahun 1998, Intel memperkenalkan prosesor Celeron
dibulan April. Kemudian ditahun 2000 debut Pentium 4 dengan 42 juta transistor.
Pada tahun 2003, AMD memperkenalkan
versi 64-bit dari x86 instruction set dan ditahun 2004 AMD mendemonstrasikan
x86 dual-core prosesor chip. Kemudian pada tahun 2005 Intel menjual prosesor
dual-core pertamanya. Pada tahun 2006, Intel memperkenalkan prosesor core 2 duo
dibulan Juli dan tahun 2007 Intel memperkenalkan prosesor core 2 quad dibulan
Januari.
2. Definisi
Mikroprosesor adalah suatu chip (keping)
yang dapat melaksanakan operasi-operasi hitungan, operasi nalar, dan operasi
kendali secara elektronis (digital) dan merupakan otak atau pengolah utama
dalam sebuah system komputer. Chip mikroprosesor difabrikasi dengan teknologi
LSI (Large Scale Integration) maupun VLSI (Very Large Scale Integration).
Biasanya mikroprosesor dikemas dengan plastik atau keramik. Kemasannya
dilengkapi dengan pin-pin yang merupakan terminal masukan dan keluaran dari
chip. Mikroprosesor berfungsi sebagai pemroses data digital dari input
computer. Semakin tinggi kecepatan prosesor maka semakin cepat hasil komputasi
diperoleh. Mikroprosesor disebut juga CPU (Central Processing Unit).
Mikroprosesor 8086 ialah mikroprosesor
dengan lebar bus data sebesar 16 bit secara internal dan eksternal, maksudnya
seluruh register lebarnya 16 bit dan terdapat bus data selebar 16 bit untuk
mentrasfer data kedalam dan keluar CPU.
3. Desain x86
pertama
Proyek 8086 dimulai pada Mei 1976 dan
pada awalnya dimaksudkan sebagai pengganti sementara untuk ambisius dan
tertunda 432 iAPX proyek. Ini
merupakan upaya untuk menarik perhatian dari kurang tertunda 16 dan 32-bit
prosesor dari produsen lain (sepertiMotorola , Zilog ,
dan National
Semiconductor )
dan pada saat yang sama untuk melawan ancaman dari Zilog Z80 (dirancang
oleh mantan Intel karyawan), yang menjadi sangat sukses. Kedua arsitektur
dan fisik chip karena itu dikembangkan agak cepat oleh sekelompok kecil orang,
dan menggunakan dasar yang sama mikroarsitektur elemen dan
teknik pelaksanaan fisik seperti yang digunakan untuk sedikit lebih tua 8085 (dan 8086
yang juga akan berfungsi sebagai kelanjutan) .
Dipasarkan sebagai sumber kompatibel , 8086 dirancang untuk memungkinkan bahasa assembly untuk
8008,, 8080 atau 8085 secara otomatis dikonversi menjadi setara (sub-optimal)
kode sumber 8086, dengan sedikit atau tanpa tangan-editing. Model
pemrograman dan set instruksi adalah (longgar) berdasarkan pada 8080 dalam
rangka untuk membuat ini mungkin. Namun, desain 8086 ini diperluas untuk
mendukung penuh 16-bit pemrosesan, bukan 16-bit cukup kemampuan dasar dari
8080/8085.
Jenis baru instruksi yang ditambahkan
juga, dukungan penuh untuk bilangan bulat ditandatangani, dasar + offset
menangani, dan self-operasi yang berulang mirip dengan Z80 desain [6] tetapi
semua dibuat sedikit lebih umum di 8086. Instruksi langsung mendukungnested ALGOL -keluarga
bahasa seperti Pascal dan PL / M juga
ditambahkan. Menurut arsitek utama Stephen P. Morse , ini
adalah hasil dari pendekatan sentris software lebih dari dalam desain prosesor
Intel sebelumnya (para desainer telah pengalaman bekerja dengan implementasi
compiler). Perangkat tambahan lain termasuk microcoded multiply
dan instruksi membagi dan bus-struktur yang lebih baik disesuaikan dengan masa
depan co-prosesor (seperti 8087 dan 8089 ) dan
sistem multiprosesor.
Revisi pertama dari set instruksi dan
arsitektur tingkat tinggi siap setelah sekitar tiga bulan, [7] dan karena
hampir tidak ada CAD-alat yang digunakan, empat insinyur dan 12 orang tata
letak secara bersamaan bekerja pada chip. [8] The 8086
mengambil sedikit lebih dari dua tahun dari ide untuk produk bekerja, yang
dianggap lebih cepat untuk desain yang kompleks pada 1.976-1.978.
8086 disekuensing [9] menggunakan
campuran acak logika [10] dan microcode dan
dilaksanakan dengan menggunakan deplesi-beban sirkuit nMOS dengan sekitar
20.000 aktif transistor (29.000
menghitung semua ROM dan PLA situs). Ia
segera dipindahkan ke proses manufaktur nMOS baru halus yang disebut HMOS (untuk MOS
kinerja tinggi) bahwa Intel awalnya dikembangkan untuk pembuatan cepat RAM statis produk. [11] Hal ini
diikuti oleh HMOS-II, III HMOS-versi, dan, akhirnya , sepenuhnya statis CMOS versi
untuk perangkat bertenaga baterai, diproduksi menggunakan Intel CHMOS proses. [12] Chip asli
diukur 33 mm ² dan ukuran fitur minimum adalah 3,2 m.
Arsitektur didefinisikan oleh Stephen P. Morse dengan
beberapa bantuan dan bantuan oleh Bruce Ravenel (arsitek dari 8087) dalam
menyempurnakan revisi akhir. Logika desainer Jim McKevitt dan John Bayliss
adalah insinyur utama dari tim pengembangan hardware-tingkat dan William
Pohlman manajer untuk proyek tersebut. Warisan dari 8086 yang bertahan di
set instruksi dasar komputer pribadi saat ini dan server, sedangkan 8086 juga
meminjamkan terakhir dua digit untuk kemudian versi diperpanjang dari desain,
sepertiIntel 286 dan Intel 386 , yang
semuanya akhirnya menjadi dikenal sebagai x86 keluarga. (Referensi
lain adalah bahwa Penjual PCI IDuntuk perangkat
Intel adalah 8086.
4. Arsitektur
CPU 8086 terdiri dari dua prosesor
terpisah, yaitu Bus Interface Unit (BIU) dan Execution Unit (EU).
Dua prosesor terpisah tersebut akan dijelaskan sebagai berikut :
a. Bus Interface Unit (BIU)
BIU menyediakan fungsi-fungsi perangkat
keras, termasuk pembangkitan memori dan alamat I/O untuk transfer data. BIU
berfungsi mengirim kode-kode alamat keluar, mengambil instruksi dari
memori serta membaca data dari port dan memori.
Bus Interface Unit (BIU) :
Register Antrian
Pada saat EU mendekode atau melaksanakan
suatu instruksi, ia tidak perlu menggunakan bus sehingga dapat digunakan oleh
BIU untuk mengambil 6 byte instruksi sebagai instruksi berikutnya yang akan
dilaksanakan.Instruksi-instruksi tersebut dinamakan prefetched instruction dan
oleh BIU disimpan dalam register FIFO (First-In First-Out) yang juga disebut
register antrian.Ketika EU siap melaksanakan instruksi berikutnya, ia dengan
mudah membaca instruksi-instruksi dari register antrian dalam BIU. Jadi,
ketika EU sedang melaksanakan suatu instruksi, bus dapat digunakan oleh BIU
untuk menulis dan membaca memori serta mengambil instruksi
berikutnya. Teknologi yang memungkinkan pengambilan instruksi berikutnya
sambil melaksanakan instruksi yang ada dinamakan pipelining.
- Bus Interface Unit (BIU) :
Register Segmen
8086 mampu mengalamati 220 lokasi
memori, sedangkan panjang register IP yang dimilikinya hanya 16-bit. Untuk
memperoleh 20-bit sinyal alamat, 8086 menggunakan bantuan register segmen.
Gabungan antara register segmen 16-bit dan IP 16-bit akan menghasilkan 20-bit
sinyal alamat. 8086 memiliki 4 buah register segmen yakni CS (Code
Segment), SS (Stack Segment), ES (Extra Segment) dan DS (Data Segment).
Jika suatu register segmen berisi kode misalnya CS berisi 348A, maka CS dianggap memiliki alamat awal 348A0. BIU secara otomatis akan menambahkan angka 0 di belakang isi segmen. Setiap segmen menempati 64 Kbyte memori dan dapat ditempatkan di mana saja di dalam ruang alamat 1 Mbyte.
Jika suatu register segmen berisi kode misalnya CS berisi 348A, maka CS dianggap memiliki alamat awal 348A0. BIU secara otomatis akan menambahkan angka 0 di belakang isi segmen. Setiap segmen menempati 64 Kbyte memori dan dapat ditempatkan di mana saja di dalam ruang alamat 1 Mbyte.
b. Execution Unit (EU)
EU menerima kode-kode instruksi program
dan data dari BIU mengeksekusi instruksi tersebut, dan menyimpan hasil pada
register umum. Dengan melewatkan data kembali ke BIU, data dapat disimpan di
sebuah lokasi memori atau ditulis ke peralatan output. Sebagai catatan, EU
tidak mempunyai koneksi dengan bus-bus system, namun menerima dan mengeluarkan
seluruh data melalui BIU. EU mengandung rangkaian-rangkaian kontrol
yang berfungsi mengarahkan operasi-operasi internal. Dekoder pada EU
menerjemahkan instruksi-instruksi yang telah diambil dari memori ke dalam
urutan aksi. EU memiliki ALU 16-bit dan dapat melakukan penjumlahan,
pengurangan, AND, OR, XOR, increment, decrement, complement atau shift bilangan
biner.
- Execution Unit (EU) : Flag
Register
8086 memiliki register bendera dengan
panjang 16-bit. Dari 16-bit itu terdapat 9 bendera yang aktif. Dari 9
bendera yang aktif, 6 bendera di antaranya (bendera kondisi) digunakan untuk
menunjukkan kondisi-kondisi yang dihasilkan oleh pelaksanaan instruksi yakni
bendera CF (Carry Flag), PF (Parity Flag),
AF (Auxilary Carry Flag), ZF(Zero Flag), SF (Sign Flag),
OF (Overflow Flag).Sedangkan 3 bendera lainnya (bendera kontrol) digunakan
untuk mengendalikan beberapa operasi prosesor. Bendera-bendera kontrol ini berbeda
dengan 6 bendera kondisi dalam hal cara set dan reset-nya. Keenam
bendera kondisi diset dan direset oleh EU, berdasarkan hasil operasi-operasi
aritmatika atau logika, sedangkan 3 bendera kontrol diset dan direset oleh
instruksi-instruksi khusus yang ada pada program. Bendera itu adalah
TF (Trap Flag), IF (Interrupt Flag) dan DF (Direction Flag).
Bendera paritas (Parity Flag) akan diset
(PF=1), jika pelaksanaan perintah oleh ALU menghasilkan jumlah bit 1 genap dan
reset (PF=0) jika jumlah bit 1 ganjil. Bendera Zero akan diset (ZF=1),
jika operasi ALU memberikan hasil 0. Bendera Sign akan diset (SF=1), jika
pelaksanaan perintah oleh ALU menghasilkan bilangan negatif. Bendera OF
(Overflow Flag) akan diset (OF=1), jika terjadi overflow yakni jumlah bit hasil
operasi lebih besar dari lebar akumulator. Bendera TF (Trap Flag) digunakan
pada mode operasi langkah tunggal (single step atau trace). Jika bendera ini
diset, maka pelaksanaan instruksi akan dilakukan langkah demi
langkah. Bendera IF digunakan untuk mengijinkan interupsi dari
program. Bendera DF digunakan pada operasi string.
- Execution Unit (EU): Register
Serbaguna (General Purpose Registers)
8086 memiliki 8 buah register serbaguna
yakni: AH, AL, BH, BL, CH, CL, DH, DL. Khusus untuk AL dinamakan pula
AKUMULATOR. Jika register-register tersebut akan digunakan sebagai
register 16-bit, maka pasangan AH dan AL membentuk AX, BH dan BL membentuk BX,
CH dan CL membentuk CX serta DH dan DL membentuk DX.AX merupakan
akumulator, sering digunakan untuk menyimpan hasil sementara setelah operasi
aritmatika dan logika. BX sering digunakan sebagai register base untuk
menyimpan address base data yang terletak di dalam memori dan juga address base
tabel data. CXdapat digunakan sebagai register count. DX dapat
digunakan sebagai register data.
5. Karakteristik
a. Karakteristik Input
Karakteristik input
mikroprosesor-mikroprosesor ini kompatibel dengan semua komponen logika standar
yang tersedia saat ini. Berikut ini merupakan table level tegangan input dan persyaratan
arus input untuk semua pin input pada kedua mikroprosesor. Level arus input
sangat kecil karena input merupakan koneksi gerbang MOSFET dan hanya
mempresentasikan arus bocor.
Level Logika
|
Tegangan
|
Arus
|
0
|
0.8V maksimum
|
±10 μA maksimum
|
1
|
2.0V maksimum
|
±10 μA maksimum
|
Tabel 1. Karakteristik Input
Mikroprosesor 8086 dan 8088
b. Karakterisrik output
Level tegangan logika 1 pada 8086/8088
kompatibel dengan sebagian besar keluarga logika standar tetapi logika 0 tidak.
Rangkaian standar logika memiliki tegangan maksimum logika 0 sebesar 0.4V dan
8086/8088 memiliki maksimum 0.45V. dengan demikian ada perbedaan 0.05V.
Perbedaan ini memperkecil kekebalan
terhadap noise dari level standar sebesar 400mV (0.V-0.45V) menjadi 350 mV.
Kekebalan terhadap noise adalah perbedaaan antara level tegangan output logika
0 dan level tegangan output logika 1.
|
|
|
|||
Level Logika
|
|
Tegangan
|
|
Arus
|
|
0
|
|
0.45V maksimum
|
|
2.0 μA maksimum
|
|
1
|
|
2.4V mksimum
|
|
-400 μA maksimum
|
|
|
|
||||
Tabel 2. Karakteristik Output
Mikroprosesor 8086 dan 8088
6. Register dan
instruksi
The 8086 memiliki delapan (lebih atau
kurang umum) 16-bit register termasuk stack pointer ,
tetapi tidak termasuk pointer instruksi, mendaftar bendera dan register
segmen. Empat dari mereka, AX, BX, CX, DX, juga dapat diakses sebagai dua
kali lebih banyak 8-bit register (lihat gambar) sementara empat lainnya, BP,
SI, DI, SP, adalah 16-bit saja.
Karena pengkodean kompak terinspirasi
oleh 8-bit prosesor, instruksi sebagian besar satu-alamat atau dua-address
operasi yang berarti bahwa hasil itu disimpan di salah satu operan. Paling
banyak satu dari operan bisa berada di memori, tetapi ini operan memori juga
bisa menjadi tujuan, sedangkan operan lain, sumber, bisa
berupa register atau langsung. Sebuah lokasi
memori tunggal juga bisa sering digunakan baik sebagai sumberdan tujuan yang,
antara faktor-faktor lainnya, lanjut berkontribusi pada kepadatan kode sebanding
dengan (dan sering lebih baik daripada) mesin bit yang paling delapan.
Meskipun tingkat umum dari register
sebagian besar jauh lebih besar daripada di 8080 atau 8085, itu masih cukup
rendah dibandingkan dengan kontemporer khas komputer mini , dan
register juga kadang-kadang digunakan secara implisit oleh
petunjuk. Sementara sempurna masuk akal bagi programmer assembly, ini
alokasi yang rumit untuk compiler dibandingkan dengan lebih teratur 16 – dan
32-bit prosesor seperti PDP-11 , VAX , 68000 , dll, di
sisi lain, dibandingkan dengan semi-kontemporer sederhana (tapi populer dan di
mana-mana) 8-bit mikroprosesor seperti6502 , 6809 ,
atau 8085 , itu
secara signifikan lebih mudah untuk menghasilkan kode untuk desain 8086.
The 8086 juga menampilkan 64 KB dari
8-bit (atau alternatif 32 K-kata 16-bit) I / O space. A
64 KB (satu segmen) tumpukanberkembang
menuju alamat yang lebih rendah didukung dalam hardware ,
2-byte kata didorong ke stack dan bagian atas stack ditunjuk oleh SS: SP. Ada
256 potong , yang
dapat dipanggil oleh kedua hardware dan software. Menyela dapat kaskade,
menggunakan stack untuk menyimpan alamat kembali .
Prosesor memiliki beberapa instruksi
baru (tidak hadir di 8080 dan 8085) ke tumpukan dukungan yang lebih baik
berdasarkan bahasa pemrograman tingkat tinggi seperti Pascal dan PL / M , beberapa
yang lebih berguna yang mendorong mem-op, dan ukuran ret,mendukung
“pascal konvensi pemanggilan “secara
langsung. (Beberapa orang lain, seperti mendorong immed dan masukkan, akan
ditambahkan dalam 80.186 berikutnya, 80286, dan 80386 desain.) Ini juga
memiliki mekanisme tumpukan-penanda. Ada tiga bendera kontrol IF
(Interrupt Flag) TF (Trap Flag) DF (flag Arah).
7. Fungsi
Pin Out IC Mikroprosesor 8086
AD15-AD8 Jalur bus alamat/data 8086
terdiri dari bus alamat/data bagian atas 8086. Jalur-jalur ini berisi bit-bit
alamat A15-A8 jika ALE pada logika 1, dan hubungan bus data D15-D8. Pin-pin ini
memasuki impedansi tinggi jika terjadi hold acknowledge.
A19/S6-A16/S3 Bit-bit bus alamat/status
dimultipleks untuk memberikan sinyal alamat A19-A16 dan juga bit status S6-S3.
Pin-pin ini juga mempertahankan status impedansi tinggi selama hold
acknowledge. Bit status S6 selalu merupakan logika 0, bit S5 menunjukkan
kondisi bit-bit flag 1F. S4 dan S3 menunjukkan segmen mana yang diakses selama
siklus bus pada saat itu. Berikut ini fungsi status bit S3 dan S4 :
S4
|
|
S3
|
|
Fungsi
|
0
|
|
0
|
|
Segmen ekstra
|
0
|
|
1
|
|
Segmen stack
|
1
|
|
0
|
|
Kode atau tanpa segmen
|
1
|
|
1
|
|
Segmen data
|
Tabel 3.Fungsi Status Bit S3 dan S4
RD Jika sinyal baca berupa logika 0. Bus
data bisa menerima data dari memori atau alat I/O yang dihubungkan ke system.
Pin ini naik ke status impedansi tinggi selama acknowledge hold.
READY Input ini dikendalikan untuk
menyisipkan status tunggu ke timing mikroprosesor. Jika pin ready diletakkan
pada level logika 0 mikroprosesor memasuki status tunggu dan tidak bekerja.
Jika pin ready diletakkan pada level logika 1 tidak memiliki efek pada operasi
mikroprosesor.
INTR Intrrupt request digunakan untuk
meminta interrupt perangkat keras. Jika INTR dijaga tetap high ketika IF=1.
Mikroprosesor memasuki siklus interrupt acknowledge setelah instruksi pada saat
itu dijalankan sepenuhnya.
TEST Pin test merupakan input yang dites
oleh instruksi wait. Jika berlogika 0 maka instruksi wait berfungsi sebagai
NOP. Jika berlogika 1 maka instruksi wait menunggu sampai TEST berlogika 0.
NMI Input non-maskable interrupt sama
dengan INTR kecuali interrupt NMI tidak memeriksa apakah bit flah 1F merupakan
logika 1. Jika NMI diaktifkan, input interrupt ini menggunakan vector interrupt
2.
RESET Input reset menyebabkan
mikroprosesor mereset dirinya sendiri jika pin ini tetap high selama minimum
empat periode clock.
CLK Pin clock menyediakan sinyal
waktu/timming dasar ke mikroprosesor. Sinyal clock harus memiliki siklus kerja
33% untuk memberikan timing internal yang sesuai.
Vcc Input catu daya.
GND Hubungan ground merupakan jalur
kembali catu daya.
MN/MX Pin mode minimum/maksimum memilih
operasi mode minimum atau maksimum untuk mikroprosesor. Jika dipilih mode
minimum pin ini harus dihubungkan langsung ke +5.0V.
BHE/S7 Pin bus high enable digunakan
untuk enable bus data yang paling signifikan (D15-D8) selama operasi baca atau
tulis. Status S7 selalu merupakan logika 1.S2, S1, dan S0 Bit-bit status ini
menunjukkan fungsi siklus bus saat itu. Sinyal-sinyal ini biasanya didekode
oleh bus controller 8288.RO/GT1 dan Pin-pin request/grant ini meminta direct
memory access (DMA). RO/GT0 selama operasi mode maksimum. Jalur-jalur ini
bidireksional, digunakan untuk meminta dan member hak operasi DMA. LOCK Output
lock digunakan untuk mengunci peripheral dari system. Pin ini diaktifkan dengan
menggunakan awalan LOCK untuk semua instruksi.. QS1 dan QS0 Bit queue status
menunjukkan status antrian instruksi internal. Pin-pin ini disediakan untuk
akses oleh koprosesor numeric (8087). Berikut ini able status bit antrian :
QS1
|
QS0
|
Fungsi
|
|
0
|
0
|
Antrian tidak aktif
|
|
0
|
1
|
Byte pertama opcode
|
|
1
|
0
|
Antrian kosong
|
|
1
|
1
|
Byte opcode berurutan
|
|
Tabel 4. Status Bit Antrian
8.
Persamaan dan Perbedaan Mikroprosesor 8086 dengan Mikroprosesor 8088
a. Persamaan
Mikroprosesor 8086 dan 8088 sama-sama
terkemas dalam dual in-line package (DIP) 40-pin.Mikroprosesor 8086 dan 8088
sama-sama membutuhkan tegangan catu sebesar +5.0V dengan toleransi tegangan
catu ± 10%. Mikroprosesor 8086 dan 8088 beroperasi pada temperature lingkungan
antara 32o F dan sekitar 180o F.
Mikroprosesor 8086 dan 8088 mempunyai
karakteristik input dan karakteristik output yang sama.
b. Perbedaan
8086
|
8088
|
Lebar bus data 16-bit
|
Lebar bus data 8-bit
|
Panjang antrian instruksi 6-byte
|
Panjang antrian instruksi 4-byte
|
Mempunyai pin M/IŌ
|
Mempunyai pin IO/M
|
Pin 34 BHE/S7
|
Pin 34 SSO
|
Arus catu maksimum 360 mA
|
Arus catu maksimum 340 mA
|
Tabel 5. Perbedaan Antara Mikroprosesor
8086 dan 8088
8086 merupakan mikroprosesor 16-bit,
artinya bagian ALU, register internalnya, dan sebagian besar instruksi-instruksinya
dirancang untuk bekerja pada data 16-bit.
8086 memiliki bus data 16-bit, jadi ia
dapat membaca data dari atau menyimpan data ke memori dan port-port yang ada
dalam format 16-bit atau 8-bit .
8086 memiliki bus alamat 20-bit,
sehingga ia dapat mengalamati 220 atau 1.048.576 lokasi memori atau 1 MB
memori, sedangkan register PC atau IP (instruction pointer) yang dimilikinya
panjangnya 16-bit. Hal inilahyang merupakan keunggulan dari 8086.
Prosesor lain yang sejenis dengan 8086
adalah 8088. 8088 memiliki ALU, register, dan set instruksi yang sama dengan
8086. 8088 juga memiliki bus alamat 20-bit, jadi ia juga bisa mengalamati
memori 1 MB.
Perbedaan 8088 dan 8086, 8088 memiliki
bus data 8-bit, sedangkan 8086 lebar bus datanya 16-bit. 8088 hanya dapat
membaca dari atau menulisi data ke memori dan port-port dengan panjang 8-bit.
Untuk membaca word 16-bit dari dua lokasi memori, 8088 selalu mengerjakan
dengan dua operasi baca. 8088 pada awalnya digunakan sebagai CPU pada The
Original IBM Personal Computer.
Prosesor 8086 terbagi menjadi 2 bagian
fungsional yang independen, yakni BIU (bus interface unit) dan EU (execution
unit).
BIU bertugas mengirim kode-kode alamat
keluar, mengambil instruksi dari memori, dan membaca data dari port dan memori.
BIU menangani semua trnasfer data dan alamat pada bus untuk membantu EU.
EU meminta BIU untuk mengambilkan
instruksi dan data dari memori, mendekode dan melaksanakan instruksi
9.
Microcomputers menggunakan 8086
Seattle Computer Products dikirim S-100
bus berbasis sistem 8086 (SCP200B) pada awal November 1979. The Norwegian
Mycron 2000, diperkenalkan pada tahun 1980. Salah satu mikrokomputer paling
berpengaruh dari semua, PC IBM , menggunakan Intel 8088 , sebuah versi dari
8086 dengan delapan-bit data bus (seperti yang disebutkan di atas).
Yang pertama Compaq Deskpro menggunakan
sebuah berjalan pada 8086 MHz 7,14, (?) tapi mampu menjalankan add-in kartu
yang dirancang untuk 4,77 MHz IBM PC XT . Sebuah 8 MHz 8086 digunakan dalam PC
AT & T 6300 (dibangun oleh Olivetti ), sebuah desktop yang mikro IBM PC
yang kompatibel. The M24 / PC 6300 memiliki IBM PC / XT kompatibel 8-bit slot
ekspansi, namun beberapa dari mereka memiliki ekstensi proprietary menyediakan
bus 16-bit data penuh dari CPU 8086 (mirip dalam konsep ke 16-bit slot dari IBM
PC AT , tetapi berbeda dalam rincian desain, dan secara fisik tidak
kompatibel).
The IBM PS / 2 model 25 dan 30 dibangun
dengan 8 MHz 8086. The Amstrad PC1512 , PC1640, PC2086, PC3086 dan PC5086 semua
digunakan CPU 8086 pada 8 MHz.
The NEC PC-9801 .
The Tandy 1000 SL-series dan RL mesin
yang digunakan CPU 8086.
The Displaywriter IBM kata mesin
pengolah dan Komputer Wang profesional, diproduksi oleh Wang Laboratories ,
juga menggunakan 8086.
NASA menggunakan original 8086 CPU pada
peralatan untuk tanah berbasis pemeliharaan Space Shuttle Discovery sampai
akhir program pesawat ulang-alik pada tahun 2011. Keputusan ini dibuat untuk
mencegah regresi software yang mungkin timbul dari upgrade atau dari beralih ke
klon sempurna.
Tidak ada komentar:
Posting Komentar