CPU
Sebuah mikroprosesor -atau juga dikenal sebagai CPU- adalah sebuah mesin komputasi lengkap, yang dibuat dalam satu chip. Mikroprosesor yang pertama dibuat adalah Intel 4004, yang diperkrnalkan pada tahun 1971.
4004 tidaklah begitu handal:
hanya dapat melakukan operasi penambahan dan pengurangan hanya dapat melakukannya setiap 4 bit
Akan tetapi sangat luar biasa bahwa semua komponennya dimuat dalam sebuah chip. Sebelum seri 4004, para insinyur membangun computer dari sekumpulan chip atau dari komponen yang berbeda.
Mikroprosesor pertama yang dipasarkan ke rumah adalah Intel 8008, computer 8-bit di dalam sebuah chip, yang diperkenalkan pada tahun 1974. Mikroprosesor pertama yang sukses di pasaran adalah Intel 8088, yang diperkenalkan pada tahun 1979 dan menjadi salah satu komponen IBM PC (yang muncul pertama kali pada sekitar tahun 1982).
Pergerakan Generasi Prosesor dari seri Intel 8088: 80286 80386 80486 Pentium Pentium II Pentium III Pentium 4. ...
Name Date Transistors Microns Clock speed Data width MIPS 8080 1974 6,000 6 2 MHz 8 bits 0.64 8088 1979 29,000 3 5 MHz 16 bits 8-bit bus 0.33 80286 1982 134,000 1.5 6 MHz 16 bits 1 80386 1985 275,000 1.5 16 MHz 32 bits 5 80486 1989 1,200,000 1 25 MHz 32 bits 20 Pentium 1993 3,100,000 0.8 60 MHz 32 bits 64-bit bus 100 Pentium II 1997 7,500,000 0.35 233 MHz 32 bits 64-bit bus ~300 Pentium III 1999 9,500,000 0.25 450 MHz 32 bits 64-bit bus ~510 Pentium 4 2000 42,000,000 0.18 1.5 GHz 32 bits 64-bit bus ~1,700 Pentium 4 "Prescott" 2004 125,000,000 0.09 3.6 GHz 32 bits 64-bit bus ~7,000
Date adalah tahun pertama diperkenalkan
Banyak prosesor yang diperkenalkan kembali pada clock yang lebih tinggi bertahun-tahun setelah tanggal keluaran (release date).
Transistors adalah jumlah transistor pada chip
Perhatikan bahwa jumlah transistor pada chip tunggal mengalami kenaikan. Microns adalah ukuran lebar, di dalam satuan micron.
Sebagai perbandingan, sebuah rambut manusia adalah setebal 100 micron. Clock speed adalah siklus per sekon (cycle per second), satuannya adalah Hz. Data Width adalah lebar data dari ALU.
Sebuah ALU bit dapat melakukan penambahan/pengurangan/perkalian/dll dua bilangan 8-bit, sementara ALU 32-bit dapat memanipulasi angka 32-bit. sebuah ALU 8-bit harus
melakukan 4 instruksi untuk menambahkan dua buah angka 32 bit, sedangkan ALU 32-bit melakukannya dengan satu kali instruksi.
MIPS adalah "millions of instructions per second" dan adalah perkiraan kasar dari kinerja CPU.
Sebuah mikroprosesor menjalankan sekumpulan instruksi mesin yang memberitahukan kepada prosesor apa yang harus dilakukan. Berdasarkan instruksi tersebut, sebuah mikroprosesor melakukan 3 hal dasar:
Menggunakan ALU, dapat menjalankan operasi matematika Dapat memindahkan data dari suatu lokasi memori ke lainnya
Dapat membuat keputusan dan lompat menuju sekumpulan instruksi berdasarkan keputusan tersebut
Mikroprosesor ini memiliki:
Satu Address Bus (lebar 8, 16, 32) yang mengirimkan sebuah alamat ke memori Satu Data Bus (lebar 8, 16, 32) yang dapat:
mengirimkan data ke memori, atau menerima data dari memori
Satu RD (read) dan WR(write) line, yang memberitahukan memori apakah membutuhkan set atau get address
Satu Clock Line yang mengijinkan sebuah clock pulse melakukan sequence terhadap processor Satu Reset Line yang melakukan reset terhadap Program Counter ke nol atau nilai lain dan
memulai kembali ekseskusi.
Komponen Mikroprosesor:
Register A, B, dan C adalah latch
Address latch serupa dengan Register A, B, dan C
Program Counter adalah sebuah latch, dengan kemampuan khusus Penambahan 1 jika diberikan perintah penambahan, dan Reset.
ALU dapat berupa Adder 8-bit. Dengan kemampuan: Penambahan, Pengurangan, Perkalian, dan Pembagian
Test Register adalah:
sebuah latch khusus yang dapat menyimpan nilai dari perbandingan, yang dijalankan di dalam ALU. Sebuah ALU normal membandingkan dua angka dan menentukan apakah keduanya: sama dengan, lebih besar, dll.
Dapat menyimpan sebuah carry bit dari tahap terakhir Adder.
Terdapat enam kotak bertanda "3-State" dalam diagram. Mereka adalah tr-state-buffers, yang dapat menyalurkan sebuah 1, sebuah 0, atau melakukan disconnect terhadap outputnya. Sebuah
Although they are not shown in this diagram, there would be control lines from the instruction decoder that would:
Tell the A register to latch the value currently on the data bus Tell the B register to latch the value currently on the data bus Tell the C register to latch the value currently output by the ALU
Tell the program counter register to latch the value currently on the data bus Tell the address register to latch the value currently on the data bus
Tell the instruction register to latch the value currently on the data bus Tell the program counter to increment
Tell the program counter to reset to zero
Activate any of the six tri-state buffers (six separate lines) Tell the ALU what operation to perform
Tell the test register to latch the ALU's test bits Activate the RD line
Activate the WR line
Microprocessor Memory
Di dalam contoh mikroprosesor, kita memiliki sebuah Address Bus dengan lebar 8-bit sebuah Data Bus dengan lebar 8-bit
Itu berarti mikroprosesor dapat melakukan pengalamatan sebanyak 256(28) Byte dari memory, dan dapat membaca atau menulis sebanyak 8-bit memory setiap waktu.
Asumsi yang digunakan adalah mikroprosesor yang kita gunakan memiliki 128-Byte ROM mulai dari alamat 0, dan 128-Byte RAM mulai dari alamat 128.
ROM
adalah singkatan dari Read-Only Memory. Sebuah Chip ROM diprogram dengan sekumpulan Byte yang telah ditentukan (pre-set Bytes). Address Bus memberitahukan ROM-chip Byte mana yang akan diambil dan ditempatkan di dalam Data Bus. Ketika RD line berubah nilai, maka ROM-chip meletakkan Byte yang dipilih ke Data Bus. Pada PC, ROM juga disebut sebagai BIOS. Pada saat mikroprosesor mulai dijalankan, mikroprosesor mulai melakukan eksekusi instruksi yang ditemukan di dalam BIOS.Instruksi BIOS melakukan: Menguji hardware
Mengambil boot sector, kemudian menyimpannya di RAM
Kemudian, mikroprosesor mulai melakukan eksekusi terhadap instruksi boot sector dari RAM. Boot sector akan memberitahukan mikroprosesor untuk mengambil sesuatu dari hard disk ke dalam RAM yang akan dieksekusi oleh mikroprosesor, dan seterusnya...
RAM
adalah singkatan Random-Access Memory. RAM berisi Byte informasi, dan mikroprossor dapat membaca atau menulis pada Byte tersebut bergantung pada manakah RD line atau WR line mendapat sinyal. Permasalahannya adalah jika daya listrik tidak ada, maka RAM tidak bisa mengingat. Untuk itulah diperlukan ROM.a=1; f=1; while (a <= 5) { f = f * a; a = a + 1; }
LOADA mem - Load register A from memory address LOADB mem - Load register B from memory address CONB con - Load a constant value into register B SAVEB mem - Save register B to memory address SAVEC mem - Save register C to memory address ADD - Add A and B and store the result in C SUB - Subtract A and B and store the result in C MUL - Multiply A and B and store the result in C DIV - Divide A and B and store the result in C COM - Compare A and B and store the result in test JUMP addr - Jump to an address
JEQ addr - Jump, if equal, to address JNEQ addr - Jump, if not equal, to address JG addr - Jump, if greater than, to address
JGE addr - Jump, if greater than or equal, to address JL addr - Jump, if less than, to address
JLE addr - Jump, if less than or equal, to address STOP - Stop execution
// Assume a is at address 128 // Assume F is at address 129 0 CONB 1 // a=1; 1 SAVEB 128 2 CONB 1 // f=1; 3 SAVEB 129
4 LOADA 128 // if a > 5 the jump to 17 5 CONB 5 6 COM 7 JG 17 8 LOADA 129 // f=f*a; 9 LOADB 128 10 MUL 11 SAVEC 129 12 LOADA 128 // a=a+1; 13 CONB 1 14 ADD 15 SAVEC 128
16 JUMP 4 // loop back to if 17 STOP
ROM
Each of these assembly language instructions must be represented by a binary number.
For the sake of simplicity, let's assume each assembly language instruction is given a unique number, like this: LOADA - 1 LOADB - 2 CONB - 3 SAVEB - 4 SAVEC mem - 5 ADD - 6 SUB - 7 MUL - 8 DIV - 9 COM - 10 JUMP addr - 11 JEQ addr - 12 JNEQ addr - 13 JG addr - 14 JGE addr - 15 JL addr - 16 JLE addr - 17 STOP - 18
The numbers are known as opcodes. In ROM, our little program would look like this: // Assume a is at address 128 // Assume F is at address 129 Addr opcode/value 0 3 // CONB 1 1 1 2 4 // SAVEB 128 3 128 4 3 // CONB 1 5 1 6 4 // SAVEB 129 7 129 8 1 // LOADA 128 9 128 10 3 // CONB 5 11 5 12 10 // COM 13 14 // JG 17 14 31 15 1 // LOADA 129 16 129 17 2 // LOADB 128 18 128 19 8 // MUL 20 5 // SAVEC 129 21 129 22 1 // LOADA 128 23 128 24 3 // CONB 1 25 1 26 6 // ADD 27 5 // SAVEC 128 28 128 29 11 // JUMP 4 30 8 31 18 // STOP
Elektron:
Partikel sub-atomik yang membawa muatan listrik negatif. Termasuk ke dalam golongan partikel dasar, harena tidak mempunyai substruktur atau komponen.
Positron:
Partikel sub-atomik yang membawa muatan listrik positif. Termasuk ke dalam golongan partikel dasar, harena tidak mempunyai substruktur atau komponen. Jika bertabrakan dengan dengan sebuah elektron, maka keduanya akan musnah, akan menghasilkan sebuah atau beberapa pasang photon sinar gamma (gamma ray photons).
Semikonduktor:
Sebuah bahan yang dapat bertindak sebagai konduktor dan insulator Konduktor: bahan yang memungkinkan arus elektron
Insulator: bahan yang menghalangi arus elektron
Transistor:
sebuah alat semikonduktor yang umum digunakan untuk memperkuat sinyal atau sebagai saklar sinyal elektronik. Banyak terdapat di dalam IC (Integrated Circuit)
Latch:
ALU
(Arithmetic Logic Unit) Sirkuit kecepatan tinggi yang dimiliki oleh CPU yang bertugas
melakukan perhitungan dan perbandingan. Angka diteruskan dari Memory ke dalam ALU
untuk perhitungan, dan hasilnya dikirimkan kembali ke Memory. Data alfanumerik
dikirimkan dari memori ke dalam ALU untuk perbandingan. Hasilnya akan diuji oleh
sejumlah GOTO:
IF ITEMA EQUALS ITEMB GOTO UPDATE ROUTINE.
Beberapa chip memiliki sejumlah ALU yang memungkinkan perhitungan secara
bersamaan. Sebagai contoh, , Chromatic Research's Mpact media processor chip memiliki
450 ALU. memungkinkan audio, video dan proses multimedia dijalankan secara
bersamaan.
This was an arithmetic logic unit you sit back and admire. It was part of Honeywell's Datamatic 1000 computer
30 tahun kemudian
The ALU embedded within this 386 chip would fit on the end of a pencil eraser with room to spare