Seni bina komputer

Dalam bidang sains komputer, **seni bina** ialah reka bentuk konsep dan struktur pengendalian asas sesebuah sistem komputer. Seni bina ini merupakan rangka tindakan dan perihal fungsi keperluan dan pelaksanaan reka bentuk untuk setiap bahagian komputer, terutamanya cara unit pemprosesan pusat (CPU) berfungsi secara dalaman dan mencapai alamat dalam ingatan.

Seni bina komputer juga ditakrifkan sebagai sains dan kesenian pemilihan dan penyambungan komponen-komponen perkakas untuk menghasilkan komputer yang fungsinya memadai, prestasinya memuaskan dan kosnya berpatutan.

Seni bina komputer merangkumi sekurang-kurangnya tiga subkategori utama: 

* *[[Set suruhan|Seni bina set suruhan]]* ialah imej abstrak sesebuah sistem pengkomputeran yang dilihat oleh pengaturcara bahasa mesin (atau bahasa himpunan), termasuk set arahan, saiz kata, mod alamat ingatan, daftar pemproses, dan format-format alamat dan data.

* *[[Seni bina mikro]]*, juga dikenali sebagai *organisasi komputer*, ialah perihal sistem tahap rendah yang lebih konkrit dan terperinci, yang melibatkan cara setiap bahagian saling berhubung dalam sistem serta saling beroperasi untuk melaksanakan seni bina set suruhan. Misalnya, saiz cache sesebuah komputer ialah isu organisasi yang biasanya tiada kena-mengena dengan seni bina set suruhan.  

* *Reka bentuk sistem* yang merangkumi segala komponen perkakas yang lain dalam sistem pengkomputeran seperti:
# saling sambung sistem seperti bas dan suis
# pengawal ingatan dan hierarki
# mekanisme mematikan litar CPU seperti capaian ingatan terus
# isu-isu seperti multipemprosesan.  

Selepas menentukan seni bina set suruhan dan mikro, peranti sebenar harus direka bentuk menjadi perkakas. Proses reka bentuk ini dipanggil *pelaksanaan*. Pelaksanaan ini biasanya tidak dianggap sebagai perihal seni bina, sebaliknya lebih kepada reka bentuk kejuruteraan perkakas. 

Pelaksanaan ini dipecahkan lagi kepada tiga pertimbangan: 
* Pelaksanaan logik: reka bentuk blok yang ditentukan dalam seni bina mikro (terutamanya) di perinkat pindahan daftar dan get.
* Pelaksanaan litar: reka bentuk peringkat transistor bagi unsur-unsur asas (get, pemultipleks, selak dsb.) di samping beberapa blok lebih besar (ALU, cache dsb.) yang boleh dilaksanakan di peringkat ini, ataupun (separanya) di peringkat fizikal, atas sebab prestasi. 
* Pelaksanaan fizikal: litar fizikal dilakarkan, kemudian komponen-komponen litar diletakkan dalam pelan cip atau papan, akhirnya dirancangkan dawai-dawai yang menyambungkan komponen-komponen tersebut.

Bagi CPU, seluruh proses pelaksanaan selalunya dipanggil rekaan CPU.

## Rujukan

## Pautan luar
* ISCA: Proceedings of the International Symposium on Computer Architecture
* Micro: IEEE/ACM International Symposium on Microarchitecture
* HPCA: International Symposium on High Performance Computer Architecture 
* ASPLOS: International Conference on Architectural Support for Programming Languages and Operating Systems
* ACM Transactions on Computer Systems
* IEEE Computer Society
* http://www.cs.wisc.edu/~arch/www
* http://www.cs.wisc.edu/arch/www/people.html
* http://www.codeproject.com/useritems/System_Design.asp - This approach allows beginners to easily break and design complex software systems.
*Technical University of Catalonia, Department of Computer Architecture
*The von Neumann Architecture of Computer Systems