Selasa, 30 September 2014

MIKROPROSESOR INTEL 8088



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

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’.
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).
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.
16-bit pointers dan data disimpan sebagai:
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
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]















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