Rabu, 15 Februari 2012

ARITHMETIC LOGIC UNIT

 

Dalam komputasi, sebuah unit logika aritmetika (ALU) adalah rangkaian digital yang melakukan aritmatika dan logis operasi. ALU adalah sebuah blok bangunan fundamental dari central processing unit (CPU) dari sebuah komputer, dan bahkan yang paling sederhana mikroprosesor berisi satu untuk tujuan seperti menjaga timer. Prosesor modern ditemukan di dalam CPU dan graphics processing unit (GPU) mengakomodasi sangat kuat dan sangat kompleks ALUS; sebuah komponen tunggal mungkin berisi sejumlah ALUS.
Ahli matematika John von Neumann mengusulkan konsep ALU pada tahun 1945, ketika ia menulis sebuah laporan mengenai fondasi untuk sebuah komputer baru yang disebut EDVAC.. Penelitian ALUS tetap menjadi bagian penting dari ilmu komputer, jatuh di bawah struktur Aritmatika dan logika dalam Sistem Klasifikasi ACM Computing.
a.    Perkembangan awal
Pada tahun 1946, Mike Hawk bekerja dengan rekan-rekannya dalam merancang sebuah komputer untuk Institute for Advanced Study of Computer Science (IASS) di Princeton, New Jersey. Para komputer IAS menjadi prototipe bagi banyak kemudian komputer. Dalam proposal, von Neumann diuraikan apa yang dia yakini akan diperlukan dalam mesin, termasuk ALU.
Von Neumann menyatakan bahwa ALU merupakan suatu keharusan untuk sebuah komputer karena dijamin bahwa komputer harus menghitung operasi matematika dasar, termasuk penambahan, pengurangan, perkalian, dan pembagian. Karena itu ia percaya bahwa “masuk akal bahwa [komputer] harus mengandung organ khusus untuk operasi ini”.
b.    Sistem Numerik
Sebuah proses harus ALU angka menggunakan format yang sama dengan sisa rangkaian digital. Format prosesor modern hampir selalu merupakan dua’s complement bilangan biner perwakilan. Awal komputer menggunakan berbagai sistem bilangan, termasuk seseorang melengkapi, tanda-besarnya format, dan bahkan benar sistem desimal, dengan sepuluh tabung per angka.
ALUS untuk masing-masing sistem numerik ini memiliki desain yang berbeda, dan yang mempengaruhi preferensi saat ini selama dua’s melengkapi, karena ini adalah representasi yang memudahkan untuk ALUS untuk menghitung penambahan dan pengurangan.
The two’s-nomor melengkapi sistem memungkinkan untuk pengurangan akan dicapai dengan menambahkan negatif dari angka dalam cara yang sangat sederhana yang meniadakan kebutuhan untuk sirkuit khusus untuk melakukan pengurangan.
c.    Ikhtisar Praktis
Sebagian besar operasi prosesor dilakukan oleh satu atau lebih ALUS. Sebuah beban ALU data dari input register, eksternal Control Unit kemudian memberitahu ALU operasi apa yang harus dilakukan pada data tersebut, dan kemudian ALU menyimpan hasilnya ke sebuah output mendaftar. Mekanisme lain memindahkan data antara register dan memori.
Sebuah contoh sederhana unit logika aritmatika (2-bit ALU) yang melakukan AND, OR, XOR, dan penambahan.
Kebanyakan ALU dapat melakukan operasi berikut:
•    Integer operasi aritmetika (penambahan, pengurangan, dan kadang-kadang perkalian dan
     pembagian, walaupun ini lebih mahal)
•    Bitwise operasi logika (AND, NOT, OR, XOR)
•    Menggeser bit-operasi (pergeseran atau memutar sebuah kata ditentukan oleh jumlah bit ke kiri
     atau kanan, dengan atau tanpa tanda ekstensi).  Pergeseran dapat ditafsirkan sebagai perkalian
     oleh 2 dan divisi dengan 2.
d.     Kompleks operasi
Seorang insinyur dapat merancang sebuah ALU untuk menghitung operasi apapun, namun itu rumit; masalahnya adalah bahwa operasi lebih kompleks, yang lebih mahal dari ALU adalah, semakin banyak ruang yang penggunaannya di dalam prosesor, dan semakin kekuasaan itu menghilang, dll . Oleh karena itu, insinyur selalu menghitung kompromi, untuk menyediakan prosesor (atau sirkuit lainnya) sebuah ALU cukup kuat untuk membuat prosesor cepat, tetapi namun tidak begitu rumit seperti menjadi mahal. Bayangkan bahwa Anda perlu untuk menghitung akar kuadrat dari angka; insinyur digital akan memeriksa opsi-opsi berikut untuk melaksanakan operasi ini:
1.    Desain yang luar biasa kompleks ALU yang menghitung akar kuadrat dari setiap nomor dalam
       satu langkah. This is called calculation in a single clock . Hal ini disebut perhitungan dalam satu
       jam.
2.    Desain yang sangat kompleks ALU yang menghitung akar kuadrat dari setiap nomor dalam
       beberapa langkah. Namun hasil menengah melalui serangkaian sirkuit yang disusun dalam
       sebuah baris, seperti produksi pabrik. Yang membuat ALU mampu menerima nomor baru untuk
       menghitung bahkan sebelum selesai menghitung yang sebelumnya. Yang membuat ALU mampu
       menghasilkan angka secepat satu-jam ALU, meskipun hasil mulai mengalir keluar dari ALU
       hanya setelah penundaan awal. Hal ini disebut perhitungan pipa.
3.    Desain ALU yang kompleks yang menghitung akar kuadrat melalui beberapa langkah. Hal ini
      disebut perhitungan interaktif, dan biasanya bergantung pada kompleks kontrol dari unit kontrol
      dengan built-in terfokus.
4.    Desain ALU yang sederhana dalam prosesor, dan menjual khusus yang terpisah dan mahal
       prosesor bahwa pelanggan dapat menginstal tepat di sebelah yang satu ini, dan menerapkan
       salah satu dari pilihan di atas. Ini disebut co-prosesor.
5.    Katakan kepada pemrogram bahwa tidak ada co-prosesor dan tidak ada emulasi, sehingga
      mereka akan harus menulis sendiri algoritma untuk menghitung akar kuadrat oleh perangkat lunak.
      Hal ini dilakukan oleh perangkat lunak perpustakaan.
6.  Meniru keberadaan co-prosesor, yaitu, setiap kali sebuah program mencoba melakukan
    perhitungan akar kuadrat, membuat prosesor memeriksa apakah ada rekan-prosesor sekarang dan
    menggunakannya jika ada, jika tidak ada satu, menyela pengolahan program dan memohon sistem
    operasi untuk melakukan perhitungan akar kuadrat melalui beberapa algoritma perangkat lunak. Ini
    disebut perangkat lunak emulasi.
Pilihan di atas berubah dari yang tercepat dan paling mahal satu untuk yang paling lambat dan paling mahal. Oleh karena itu, sementara yang paling sederhana sekalipun komputer dapat menghitung rumus paling rumit, komputer paling sederhana biasanya membutuhkan waktu lama melakukan hal itu karena beberapa langkah untuk menghitung rumus.
Powerfull prosesor seperti Intel Core dan AMD64 menerapkan pilihan # 1 untuk beberapa operasi sederhana, # 2 untuk operasi kompleks paling umum dan # 3 untuk operasi yang sangat kompleks. Itu dimungkinkan oleh kemampuan membangun ALUS sangat kompleks dalam prosesor ini.

Tidak ada komentar:

Posting Komentar