Kamis, 25 Oktober 2007

ENIAC


ENIAC, singkatan dari Electronic Numerical Integrator And Computer, adalah komputer elektronik penuh pertama yang didesain agar Turing-complete, yang mampu diprogram ulang dengan cara mengatur ulang kabelnya agar dapat menyelesaikan segala jenis masalah perhitungan.

Ia didahului oleh Z3 karya Konrad Zuse, yang dapat diprogram dengan kaset secara penuh namun masih mekanikal dan oleh komputer Colossus buatan Inggris yang meski elektronik sepenuhnya namun bukan untuk tujuan umum. Keperluan untuk mengatur ulang kabel ENIAC dihapuskan pada 1948.

ENIAC dikembangkan dan dibangun oleh Angkatan Darat AS untuk Laboratorium Penelitian Persenjataan mereka dengan tujuan untuk menghitung tabel tembakan senjata. Ide tentang ENIAC dipikirkan dan didesain oleh J. Presper Eckert dan John William Mauchly dari Universitas Pennsylvania. Komputer tersebut mulai dibangun pada 17 Mei 1943 sebagai Proyek PX dan dibangun di Moore School of Electrical Engineering sejak pertengahan 1944, dan dioperasikan secara resmi sejak Februari 1946 setelah menelan biaya sebesar $500.000. Ia kemudian dimatikan pada 9 November 1946 untuk diperbaharui dan ditingkatkan memorinya. ENIAC diperlihatkan kepada umum pada 14 Februari 1946 di Universitas Pennsylvania dan dipindahkan ke Aberdeen Proving Grounds, Maryland pada 1947. Pada 29 Juli tahun yang sama, ENIAC dinyalakan dan akan terus beroperasi hingga pukul 23:45 pada 2 Oktober 1955.

Sebuah tim yang terdiri dari delapan wanita memprogram ENIAC dengan memanipulasi ribuan kabel dan saklarnya.

ENIAC mendapatkan pemberitaan yang luas karena ukurannya yang besar. Ia memiliki 17.468 tabung vakum, 7.200 dioda kristal, 1.500 pemancar, 70.000 resistor, 10.0000 kapasitor dan sekitar 5 juta sambungan yang disolder dengan tangan. Beratnya 27 ton dan ukurannya 2,4 m x 0,9 m x 30 m. ENIAC mengambil luas sekitar 167 m² dan mengkonsumsi energi sebesar 160 kW.

Namun ENIAC sebenarnya bukanlah komputer yang canggih di eranya. Tidak seperti Z3 buatan Konrad Zuse, dan MARK buatan Howard Aiken, ENIAC harus diatur ulang kabelnya untuk menjalankan program baru (Z3 dan MARKI menjalankan programnya dari kaset). Lebih lanjut lagi, tidak seperti Z3 dan komputer modern lainya, ENIAC melakukan penghitungan dalam desimal daripada biner.


Cara kerja ENIAC

ENIAC. (U. S. Army Photo)



ENIAC menggunakan sebuah penghitung berbentuk cincin yang mempunyai sepuluh posisi. Perhitungan dilakukan dengan "menghitung" pulsa dengan penghitung cincin dan membuat pulsa pembawa baru apabila counternya sudah beputar kembali ke posisi semula; ide dasarnya adalah untuk meniru roda digit dalam mesin penghitung mekanis.

ENIAC mempunyai dua puluh slot akumulator yang masing-masing nya sepuluh digit dan setiap detiknya dapat melakukan 5000 proses penambahan dan pengurangan sederhana di antara keduapuluh angka-angka tersebut. Empat slot akumulator digunakan dengan sebuah unit "pengali" dan setiap detiknya dapat dilakukan 385 proses perkalian. 5 slot akumulator yang dikendalikan dengan unit "pembagi pengakar pangkat dua" setiap detiknya dapat menjalankan 40 operasi pembagian dan 3 operasi pengakar-dua-an. Sembilan unit lainnya adalah "Unit Pemulai" (memulai dan memberhentikan mesin), "Cycling Unit" (mensinkronkan unit unit yang lain), master programer (mengendalikan sekuens loop), unit pembaca (dikendalikan dengan pembaca punch card IBM), constant transmitter, dan tiga tabel fungsi.

ENIAC menggunakan tabung radio berbasis oktal yang sering digunakan pada masanya, akumulator decimalnya di buat dati flip-flop 6SN7, sedangkan 6L7, 6SJ7, 6SA7 dan 6AC7 digunakan untuk fungsi logika. Sejumlah banyak 6L6 dan 6V6 digunakan sebagai ‘’line driver’’ untuk mengendalikan pulsa diantata kabel diantara rak pengatur.

Gagal-tabung
Beberapa ahli elektronik memperkirakan bahwa gagal-tabung akan sangat sering terjadi sehingga ENIAC takkan pernah berguna. Perkiraan ini ternyata hanya setengah benar: beberapa tabung memang terbakar hampir setiap harinya sehingga ENIAC tidak berfungsi sekitar setengah hari. Karena tabung-tabung khusus dengan reliabilitas-tinggi tidak tersedia hingga tahun 1948, Eckert dan Mauchly harus menggunakan tabung jenis biasa. Namun kebanyakan daripada kegagalan tersebut ternyata terjadi pada saat pemanasan dan pendinginan, saat pemanas-pemanas tabung dan katoda berada di bawah tekanan pansa yang terbesar.

Hal ini berhasil dikurangi setelah para insinyur ENIAC memutuskan untuk tidak mematikan ENIAC sama sekali: kegagalan dikurangi menjadi satu tabung setiap dua hari. Pada 1954, masa pengoperasian terlama tanpa kegagalan adalah 116 jam (hampir lima hari). Jika kita melihat ketersediaan teknologi pada masa itu, angka kegagalan ini bisa dibilang sangat rendah, dan membuktikan konstruksi ENIAC yang sangat baik dan tepat.


Masa-masa akhir ENIAC
Eckert dan Mauchly menggunakan pengalaman yang mereka peroleh dan mendirikan Eckert-Mauchly Computer Corporation, yang memproduksi komputer pertama mereka, BINAC pada 1949 sebelum akhirnya diambil alih Remington Rand pada 1950 dan dinamakan ulang sebagai divisi Univac mereka.

Dua wanita sedang menjalankan ENIAC (U. S. Army Photo)

ENIAC beroperasi hingga 2 Oktober 1955. Desainnya tidak akan pernah diulang lagi dan akibatnya kekurangannya tidak pernah diperbaiki, khususnya ketidak mampuannya menyimpan program. Namun ide-ide ynag berasal dari karya tersebut dan pengaruhnya pada orang-orang seperti John von Neumann sangat besar dalam pengembangan komputer-komputer generasi selanjutnya, awalnya EDVAC, EDSAC dan SEAC. Sejumlah perbaikan juga dilakukan kepada ENIAC sejak 1948, termasuk mekanisme pemrogram tersimpan read-only [1] yang menggunakan Tabel Fungsi sebagai ROM program, sebuah ide yang ditawarkan John von Neumann. Perubahan ini mengurangi kecepatan ENIAC dengan faktor hingga 6 kali, namun juga mengurangi masa pemrograman hingga tinggal berjam-jam (dari sebelumnya yang mencapai berhari-hari), sehingga kekurangan kecepatan tersebut dianggap pantas.

Hingga 2004, sebuah chip silikon berukuran 0,5 mm persegi mempunyai kapasitas yang sama dengan ENIAC, yang mengambil satu ruangan.

Tidak ada komentar: