A. Prosesor Mikro
Sebuah Mikroprosesor atau prosesor mikro (sering
dituliskan: µP atau uP) adalah sebuah central processing unit
(CPU) elektronik komputer yang terbuat dari transistor mini dan sirkuit lainnya
di atas sebuah sirkuit terintegrasi semikonduktor.
Sebelum berkembangnya mikroprosesor, CPU elektronik
terbuat dari sirkuit terintegrasi TTL terpisah; sebelumnya, transistor
individual; sebelumnya lagi, dari tabung vakum. Bahkan telah ada desain untuk
mesin komputer sederhana atas dasar bagian mekanik seperti gear, shaft,
lever, Tinkertoy, dll.
Evolusi dari mikroprosesor telah diketahui mengikuti Hukum
Moore yang merupakan peningkatan performa dari tahun ke tahun. Teori ini
merumuskan bahwa daya penghitungan akan berlipat ganda setiap 18 bulan, sebuah
proses yang benar terjadi sejak awal 1970-an; sebuah kejutan bagi orang-orang
yang berhubungan. Dari awal sebagai driver dalam kalkulator, perkembangan
kekuatan telah menuju ke dominasi mikroprosesor di berbagai jenis komputer;
setiap sistem dari mainframe terbesar sampai ke komputer pegang terkecil
sekarang menggunakan mikroprosesor sebagai pusatnya.
Berikut adalah karakteristik penting dari
mikroprosesor :
- Ukuran bus data internal (internal data bus size): Jumlah saluran yang terdapat dalam mikroprosesor yang menyatakan jumlah bit yang dapat ditransfer antar komponen di dalam mikroprosesor.
- Ukuran bus data eksternal (external data bus size): Jumlah saluran yang digunakan untuk transfer data antar komponen antara mikroprosesor dan komponen-komponen di luar mikroprosesor.
- Ukuran alamat memori (memory address size): Jumlah alamat memori yang dapat dialamati oleh mikroprosesor secara langsung.
- Kecepatan clock (clock speed): Rate atau kecepatan clock untuk menuntun kerja mikroprosesor.
- Fitur-fitur spesial (special features): Fitur khusus untuk mendukung aplikasi tertentu seperti fasilitas pemrosesan floating point, multimedia dan sebagainya.
B. Arsitektur Komputer
Arsitektur Komputer adalah
konsep perencanaan dan struktur pengoperasian dasar dari suatu sistem komputer.
Arsitektur komputer ini merupakan rencana cetak-biru dan deskripsi fungsional
dari kebutuhan bagian perangkat keras yang didesain (kecepatan proses dan
sistem interkoneksinya). Dalam hal ini, implementasi perencanaan dari
masing–masing bagian akan lebih difokuskan terutama, mengenai bagaimana CPU
akan bekerja, dan mengenai cara pengaksesan data dan alamat dari dan ke memori cache,
RAM, ROM, cakram keras, dll). Beberapa contoh dari arsitektur komputer ini
adalah arsitektur von Neumann, CISC, RISC, blue Gene, dll.
Arsitektur komputer juga dapat
didefinisikan dan dikategorikan sebagai ilmu dan sekaligus seni mengenai cara
interkoneksi komponen-komponen perangkat keras untuk dapat menciptakan sebuah
komputer yang memenuhi kebutuhan fungsional, kinerja, dan target biayanya.
Arsitektur komputer ini paling
tidak mengandung 3 sub-kategori:
- Set instruksi (ISA)
- Arsitektur mikro dari ISA, dan
- Sistem desain dari seluruh komponen dalam perangkat keras komputer ini.
C. Desain CPU
Central
Processing Unit (CPU) yaitu perangkat keras komputer
yang memahami dan melaksanakan perintah dan data dari perangkat lunak. Istilah
lain, pemroses/prosesor (processor), sering digunakan untuk menyebut
CPU. Adapun mikroprosesor adalah CPU yang diproduksi dalam sirkuit terpadu,
seringkali dalam sebuah paket sirkuit terpadu-tunggal. Sejak pertengahan tahun 1970-an,
mikroprosesor sirkuit terpadu-tunggal ini telah umum digunakan dan menjadi
aspek penting dalam penerapan CPU.
CPU
berfungsi seperti kalkulator, hanya saja CPU jauh lebih kuat daya
pemrosesannya. Fungsi utama dari CPU adalah melakukan operasi aritmatika dan logika
terhadap data yang diambil dari memori atau dari informasi yang dimasukkan
melalui beberapa perangkat keras, seperti keyboard, pemindai, tuas kontrol,
maupun mouse. CPU dikontrol menggunakan sekumpulan instruksi perangkat lunak komputer.
Perangkat lunak tersebut dapat dijalankan oleh CPU dengan membacanya dari media
penyimpan, seperti hard disk, disket, cakram padat, maupun pita perekam.
Instruksi-instruksi tersebut kemudian disimpan terlebih dahulu pada memori
fisik (MAA), yang mana setiap instruksi akan diberi alamat unik yang disebut alamat
memori. Selanjutnya, CPU dapat mengakses data-data pada MAA dengan
menentukan alamat data yang dikehendaki.
Komponen CPU terbagi menjadi beberapa macam, yaitu
sebagai berikut.
- Unit kontrol yang mampu mengatur jalannya program. Komponen ini sudah pasti terdapat dalam semua CPU. CPU bertugas mengontrol komputer sehingga terjadi sinkronisasi kerja antarkomponen dalam menjalankan fungsi-fungsi operasinya. Tugas dari unit kendali ini adalah:
- Mengatur dan mengendalikan alat-alat masukan (input) dan keluaran (output).
- Mengambil instruksi-instruksi dari memori utama.
- Mengambil data dari memori utama (jika diperlukan) untuk diproses.
- Mengirim instruksi ke ALU bila ada perhitungan aritmatika atau perbandingan logika serta mengawasi kerja dari ALU.
- Menyimpan hasil proses ke memori utama.
- Register merupakan alat penyimpanan kecil yang mempunyai kecepatan akses cukup tinggi, yang digunakan untuk menyimpan data dan/atau instruksi yang sedang diproses. Memori ini bersifat sementara, biasanya digunakan untuk menyimpan data saat di olah ataupun data untuk pengolahan selanjutnya.
- ALU unit yang bertugas untuk melakukan operasi aritmetika dan operasi logika berdasar instruksi yang ditentukan. ALU sering di sebut mesin bahasa karena bagian ini ALU terdiri dari dua bagian, yaitu unit arithmetika dan unit logika boolean yang masing-masing memiliki spesifikasi tugas tersendiri. Tugas utama dari ALU adalah melakukan semua perhitungan aritmatika yang terjadi sesuai dengan instruksi program. ALU melakukan semua operasi aritmatika dengan dasar penjumlahan sehingga sirkuit elektronik yang digunakan disebut adder.
- CPU Interconnections adalah sistem koneksi dan bus yang menghubungkan komponen internal CPU, yaitu ALU, unit kontrol dan register-register dan juga dengan bus-bus eksternal CPU yang menghubungkan dengan sistem lainnya, seperti memori utama, piranti masukan /keluaran.
Langkah-langkah yang dilakukan dalam suatu proses desain CPU:
- Mendeskripsikan RTN
Pada tahap ini setiap instruction
set didefinisikan secara jelas dengan menggunakan register transfer
notation.
- Menentukan Data Path
Data path adalah
koleksi/kumpulan register tambahan dan register penghubung yang diperlukan
dalam proses pengeksekusian suatu instruksi, yang termasuk dalam instruction
set, secara keseluruhan. Pada tahap menentukan data path ini, penggunaan RTN
akan sangat diperlukan untuk menjelaskan langkah-langkah yang terjadi dalam
proses pengeksekusian masing-masing instruksi. Pada tahap ini kita juga harus
membuat asumsi tentang bagaimana komponen-komponen hardware bekerja. Kumpulan
asumsi-asumsi yang dibuat akan dijadikan spesifikasi bagi disain logika dari
perangkat keras data path.
- Mendesain perangkat
keras, sesuai dengan spesifikasi data path
Untuk melaksanakan tahap ini, desainer harus memikirkan sinyal-sinyal kontrol yang harus di-generate agar suatu langkah dalam urutan proses pengeksekusian suatu instruksi dapat berlangsung, seperti "strobe" untuk me-load register ke bus, dsb.
- Membuat Control Unit
Membuat
Control Unit yang akan menghasilkan dan mengatur sinyal-sinyal kontrol dalam
urutan yang tepat sehingga langkah-langkah dalam urutan proses pengeksekusian
instruksi dapat berlangsung dengan benar.
Hal yang harus dipahami dan diingat dengan baik dalam keseluruhan proses desain CPU adalah bahwa setiap langkah menghasilkan spesifikasi-spesifikasi yang harus dipenuhi pada langkah selanjutnya.
Konsep awal yang sangat penting adalah perbedaan
antara abstract RTN dan concreate RTN:
- Abstarct RTN menjelaskan perubahan pada programmer-visible registers yang disebabkan oleh pengeksekusian suatu instruksi.
- Concreate RTN menjelaskan secara detail langkah-langkah register transfer yang terjadi pada data path sehingga menghasilkan perubahan pada programmer-visible registers secara keseluruhan.
Unit kerja dari suatu abstract RTN adalah
eksekusi instruksi, sementara langkah-langkah pada concreate RTN
berhubungan dengan pulsa clock prosesor.
Sumber
: