Dalam ilmu komputer dan teknik, arsitektur komputer adalah seni yang menentukan hubungan dan bagian dari sebuah sistem komputer. [1] Dalam arsitektur bangunan, seni ini biasanya visual, tetapi arsitektur komputer adalah logis, mendefinisikan sistem untuk melayani tujuan tertentu. Dalam kedua kasus (bangunan dan komputer), desain lengkap memiliki banyak detail, dan beberapa rincian yang tersirat oleh praktek umum.
Sebagai contoh, pada tingkat tinggi, arsitektur komputer berkaitan dengan bagaimana central processing unit (CPU) bertindak dan bagaimana menggunakan memori komputer. Beberapa modis (2011) arsitektur komputer termasuk cluster komputasi dan Non-Uniform Memory Access.
Arsitek komputer menggunakan komputer untuk merancang komputer baru. Emulation software dapat menjalankan program yang ditulis dalam set instruksi yang diusulkan. Sedangkan desain ini sangat mudah untuk mengubah pada tahap ini, desainer compiler sering berkolaborasi dengan arsitek, menunjukkan perbaikan dalam set instruksi. Emulator modern mungkin mengukur waktu dalam siklus clock: konsumsi energi perkiraan dalam joule, dan memberikan perkiraan realistis ukuran kode dalam bytes. Ini mempengaruhi kenyamanan pengguna, masa pakai baterai, dan ukuran dan biaya terbesar komputer bagian fisik: memorinya. Artinya, mereka membantu untuk memperkirakan nilai dari sebuah desain komputer.
---
Definisi
Instruction set architecture
An instruction set architecture (ISA) adalah antarmuka antara perangkat lunak komputer dan perangkat keras. Komputer tidak mengerti bahasa tingkat tinggi yang memiliki sedikit, jika ada, unsur-unsur bahasa yang menerjemahkan langsung ke opcodes asli sebuah mesin. Sebuah prosesor hanya memahami instruksi dikodekan dalam beberapa mode numerik, biasanya sebagai bilangan biner. Perangkat lunak, seperti compiler, menerjemahkan bahasa tingkat tinggi, seperti C ke dalam instruksi.
Selain instruksi, ISA mendefinisikan item dalam komputer yang tersedia untuk program-misalnya tipe data, register, mode pengalamatan, dan memori. Instruksi menemukan operan dengan indeks Register (atau nama) dan memori mode pengalamatan.
ISA komputer biasanya digambarkan dalam sebuah buku atau pamflet kecil, yang menjelaskan bagaimana instruksi yang dikodekan. Juga, mungkin define (samar-samar) nama mnenonic pendek untuk petunjuk. Nama-nama dapat diakui oleh alat pengembangan perangkat lunak yang disebut assembler. Assembler adalah program komputer yang menerjemahkan bentuk manusia-dibaca ISA menjadi bentuk dibaca komputer. Disassemblers juga banyak tersedia, biasanya dalam debugger, program perangkat lunak untuk mengisolasi dan memperbaiki kerusakan pada program komputer biner.
ISA bervariasi dalam kualitas dan kelengkapan. Sebuah kompromi yang baik antara ISA programmer kenyamanan (lebih banyak operasi bisa lebih baik), biaya komputer untuk menafsirkan instruksi (lebih murah lebih baik), kecepatan komputer (lebih cepat lebih baik), dan ukuran dari kode (lebih kecil lebih baik). Misalnya, satu-instruksi ISA adalah mungkin, murah, dan cepat, (misalnya, mengurangi dan melompat jika nol. Itu benar-benar digunakan dalam SSEM), tapi itu tidak nyaman atau membantu membuat program kecil. Organisasi memori mendefinisikan bagaimana instruksi berinteraksi dengan memori.
---
Computer organization
Computer organization membantu mengoptimalkan produk berbasis kinerja. Misalnya, insinyur perangkat lunak perlu mengetahui kemampuan pengolahan prosesor. Mereka mungkin perlu untuk mengoptimalkan perangkat lunak untuk mendapatkan kinerja yang paling dengan mengorbankan setidaknya. Hal ini dapat memerlukan analisa yang cukup rinci dari organisasi komputer. Misalnya, dalam sebuah decoder multimedia, para desainer mungkin perlu untuk mengatur sebagian besar data yang akan diproses di jalur data tercepat dan berbagai komponen diasumsikan berada di tempat dan tugas adalah untuk menyelidiki struktur organisasi untuk memverifikasi bagian komputer beroperasi.
Organisasi komputer juga membantu merencanakan pemilihan prosesor untuk suatu proyek tertentu. Proyek multimedia mungkin membutuhkan akses data yang sangat cepat, sedangkan perangkat lunak pengawasan mungkin perlu menyela cepat. Kadang-kadang tugas-tugas tertentu memerlukan komponen tambahan juga. Sebagai contoh, sebuah komputer yang mampu virtualisasi membutuhkan hardware memori virtual sehingga memori komputer simulasi yang berbeda dapat disimpan dipisahkan. Organisasi dan fitur komputer juga mempengaruhi konsumsi daya dan biaya prosesor. Implementasi
Setelah set instruksi dan mikroarsitektur dijelaskan, mesin praktis harus dirancang. Proses desain ini disebut pelaksanaannya. Implementasi biasanya tidak dianggap definisi arsitektur, tapi rekayasa desain yang agak keras. Implementasi dapat lebih dipecah menjadi beberapa (tidak sepenuhnya berbeda) langkah-langkah:
Tujuan desain
Bentuk yang tepat dari sebuah sistem komputer tergantung pada kendala dan tujuan. Arsitektur komputer biasanya trade off standar, biaya, kapasitas memori, latency (latency adalah jumlah waktu yang dibutuhkan untuk informasi dari satu node untuk melakukan perjalanan ke sumber) dan throughput. Kadang-kadang pertimbangan lainnya, seperti fitur, ukuran, berat, keandalan, upgrade dan konsumsi daya merupakan faktor.
Skema yang paling umum hati-hati memilih hambatan yang paling mengurangi kecepatan komputer. Idealnya, biaya dialokasikan secara proporsional untuk memastikan bahwa data rate hampir sama untuk semua bagian komputer, dengan bagian yang paling mahal menjadi lambat. Ini adalah bagaimana integrator komersial terampil mengoptimalkan komputer pribadi seperti ponsel pintar. Prestasi
Kinerja komputer modern sering dijelaskan dalam MIPS per MHz (jutaan instruksi per jutaan siklus clock speed). Ini mengukur efisiensi arsitektur pada setiap clock speed. Karena clock yang lebih cepat dapat membuat komputer yang lebih cepat, ini adalah berguna, pengukuran diterapkan secara luas. Komputer bersejarah memiliki MIPS / MHz serendah 0,1 (Lihat instruksi per detik). Prosesor modern sederhana mudah mencapai mendekati 1. Prosesor superscalar dapat mencapai tiga sampai lima dengan mengeksekusi beberapa instruksi per clock cycle. Multicore dan pengolahan vektor CPU dapat mengalikan ini lebih lanjut dengan bertindak pada banyak data per instruksi, yang memiliki beberapa CPU mengeksekusi secara paralel.
Menghitung instruksi bahasa mesin akan menyesatkan karena mereka dapat melakukan berbagai jumlah pekerjaan di ISA yang berbeda. The "instruksi" dalam pengukuran standar tidak hitungan sebenarnya instruksi bahasa mesin ISA, tetapi unit sejarah pengukuran, biasanya didasarkan pada kecepatan arsitektur komputer VAX.
Secara historis, banyak orang mengukur kecepatan komputer dengan clock rate (biasanya dalam MHz atau GHz). Hal ini mengacu pada siklus per detik dari jam utama CPU. Namun, metrik ini agak menyesatkan, sebagai mesin dengan tingkat clock yang lebih tinggi belum tentu memiliki kinerja lebih tinggi. Akibatnya produsen telah pindah dari clock speed sebagai ukuran kinerja.
Faktor-faktor lain mempengaruhi kecepatan, seperti campuran unit-unit fungsional, kecepatan bus, memori yang tersedia, dan jenis dan urutan instruksi dalam program yang dijalankan.
Dalam sebuah komputer rumah khas,, cara paling sederhana yang paling dapat diandalkan untuk mempercepat kinerja biasanya untuk menambahkan random access memory (RAM). RAM lebih meningkatkan kemungkinan bahwa data yang diperlukan atau program dalam RAM-sehingga sistem ini cenderung perlu memindahkan data memori dari disk. Disk sering sepuluh ribu kali lebih lambat dari RAM karena memiliki bagian mekanik yang harus bergerak untuk mengakses data.
Ada dua jenis utama kecepatan, latency dan throughput. Latency adalah waktu antara awal proses dan selesai. Throughput adalah jumlah kerja yang dilakukan per satuan waktu. Latency Interrupt adalah dijamin waktu respon maksimal sistem untuk acara elektronik (misalnya saat hard disk selesai memindahkan beberapa data).
Kinerja dipengaruhi oleh rentang yang sangat luas pilihan desain - misalnya, pipelining prosesor biasanya membuat latency buruk (lambat) tetapi membuat throughput yang lebih baik. Komputer yang mesin kontrol biasanya perlu latency interrupt rendah. Komputer-komputer ini beroperasi dalam lingkungan real-time dan gagal jika operasi tidak selesai dalam jumlah waktu tertentu. Misalnya, dikendalikan komputer anti-lock brakes harus dimulai pengereman dalam diprediksi, waktu yang singkat setelah pedal rem dirasakan.
Kinerja komputer dapat diukur dengan menggunakan metrik lainnya, tergantung pada domain aplikasi. Sebuah sistem mungkin CPU terikat (seperti dalam perhitungan numerik), I / O terikat (seperti dalam aplikasi webserving) atau memori terikat (seperti dalam video editing). Konsumsi daya telah menjadi penting dalam server dan perangkat portabel seperti laptop.
Benchmarking mencoba untuk mengambil semua faktor ini ke rekening dengan mengukur waktu komputer yang diperlukan untuk menjalankan melalui serangkaian program uji. Meskipun benchmarking menunjukkan kekuatan, mungkin tidak membantu seseorang untuk memilih komputer. Seringkali mesin diukur dibagi pada ukuran yang berbeda. Misalnya, satu sistem bisa menangani aplikasi ilmiah dengan cepat, sementara yang lain mungkin memainkan video game populer lebih lancar. Selanjutnya, desainer dapat menambahkan fitur khusus untuk produk mereka, dalam perangkat keras atau perangkat lunak, yang memungkinkan patokan khusus untuk mengeksekusi cepat tetapi tidak menawarkan keuntungan yang sama dengan tugas umum.
---- Power consumption
Power consumption adalah pengukuran lain yang penting dalam komputer modern. Efisiensi daya sering dapat diperdagangkan untuk kecepatan atau biaya yang lebih rendah. Khas pengukuran dalam hal ini adalah
MIPS / W (jutaan instruksi per detik per watt).
Sirkuit modern memiliki kekuatan lebih per transistor sebagai jumlah transistor per chip tumbuh. Oleh karena itu, efisiensi daya telah menjadi semakin penting. Desain prosesor baru seperti Intel Core 2 lebih menekankan pada peningkatan efisiensi daya. Juga, dalam dunia komputasi embedded, efisiensi daya telah lama dan tetap menjadi tujuan penting berikutnya untuk throughput dan latency.
Sebagai contoh, pada tingkat tinggi, arsitektur komputer berkaitan dengan bagaimana central processing unit (CPU) bertindak dan bagaimana menggunakan memori komputer. Beberapa modis (2011) arsitektur komputer termasuk cluster komputasi dan Non-Uniform Memory Access.
Arsitek komputer menggunakan komputer untuk merancang komputer baru. Emulation software dapat menjalankan program yang ditulis dalam set instruksi yang diusulkan. Sedangkan desain ini sangat mudah untuk mengubah pada tahap ini, desainer compiler sering berkolaborasi dengan arsitek, menunjukkan perbaikan dalam set instruksi. Emulator modern mungkin mengukur waktu dalam siklus clock: konsumsi energi perkiraan dalam joule, dan memberikan perkiraan realistis ukuran kode dalam bytes. Ini mempengaruhi kenyamanan pengguna, masa pakai baterai, dan ukuran dan biaya terbesar komputer bagian fisik: memorinya. Artinya, mereka membantu untuk memperkirakan nilai dari sebuah desain komputer.
---
Definisi
Instruction set architecture
An instruction set architecture (ISA) adalah antarmuka antara perangkat lunak komputer dan perangkat keras. Komputer tidak mengerti bahasa tingkat tinggi yang memiliki sedikit, jika ada, unsur-unsur bahasa yang menerjemahkan langsung ke opcodes asli sebuah mesin. Sebuah prosesor hanya memahami instruksi dikodekan dalam beberapa mode numerik, biasanya sebagai bilangan biner. Perangkat lunak, seperti compiler, menerjemahkan bahasa tingkat tinggi, seperti C ke dalam instruksi.
Selain instruksi, ISA mendefinisikan item dalam komputer yang tersedia untuk program-misalnya tipe data, register, mode pengalamatan, dan memori. Instruksi menemukan operan dengan indeks Register (atau nama) dan memori mode pengalamatan.
ISA komputer biasanya digambarkan dalam sebuah buku atau pamflet kecil, yang menjelaskan bagaimana instruksi yang dikodekan. Juga, mungkin define (samar-samar) nama mnenonic pendek untuk petunjuk. Nama-nama dapat diakui oleh alat pengembangan perangkat lunak yang disebut assembler. Assembler adalah program komputer yang menerjemahkan bentuk manusia-dibaca ISA menjadi bentuk dibaca komputer. Disassemblers juga banyak tersedia, biasanya dalam debugger, program perangkat lunak untuk mengisolasi dan memperbaiki kerusakan pada program komputer biner.
ISA bervariasi dalam kualitas dan kelengkapan. Sebuah kompromi yang baik antara ISA programmer kenyamanan (lebih banyak operasi bisa lebih baik), biaya komputer untuk menafsirkan instruksi (lebih murah lebih baik), kecepatan komputer (lebih cepat lebih baik), dan ukuran dari kode (lebih kecil lebih baik). Misalnya, satu-instruksi ISA adalah mungkin, murah, dan cepat, (misalnya, mengurangi dan melompat jika nol. Itu benar-benar digunakan dalam SSEM), tapi itu tidak nyaman atau membantu membuat program kecil. Organisasi memori mendefinisikan bagaimana instruksi berinteraksi dengan memori.
---
Computer organization
Computer organization membantu mengoptimalkan produk berbasis kinerja. Misalnya, insinyur perangkat lunak perlu mengetahui kemampuan pengolahan prosesor. Mereka mungkin perlu untuk mengoptimalkan perangkat lunak untuk mendapatkan kinerja yang paling dengan mengorbankan setidaknya. Hal ini dapat memerlukan analisa yang cukup rinci dari organisasi komputer. Misalnya, dalam sebuah decoder multimedia, para desainer mungkin perlu untuk mengatur sebagian besar data yang akan diproses di jalur data tercepat dan berbagai komponen diasumsikan berada di tempat dan tugas adalah untuk menyelidiki struktur organisasi untuk memverifikasi bagian komputer beroperasi.
Organisasi komputer juga membantu merencanakan pemilihan prosesor untuk suatu proyek tertentu. Proyek multimedia mungkin membutuhkan akses data yang sangat cepat, sedangkan perangkat lunak pengawasan mungkin perlu menyela cepat. Kadang-kadang tugas-tugas tertentu memerlukan komponen tambahan juga. Sebagai contoh, sebuah komputer yang mampu virtualisasi membutuhkan hardware memori virtual sehingga memori komputer simulasi yang berbeda dapat disimpan dipisahkan. Organisasi dan fitur komputer juga mempengaruhi konsumsi daya dan biaya prosesor. Implementasi
Setelah set instruksi dan mikroarsitektur dijelaskan, mesin praktis harus dirancang. Proses desain ini disebut pelaksanaannya. Implementasi biasanya tidak dianggap definisi arsitektur, tapi rekayasa desain yang agak keras. Implementasi dapat lebih dipecah menjadi beberapa (tidak sepenuhnya berbeda) langkah-langkah:
- Implementasi logika desain blok didefinisikan dalam mikroarsitektur di (terutama) tingkat mendaftar transfer dan tingkat gerbang logika.
- Pelaksanaan Circuit melakukan desain transistor-tingkat elemen dasar (gerbang, multiplexer, kait dll) serta beberapa blok yang lebih besar (ALUs, cache dll) yang dapat diimplementasikan pada tingkat ini, atau bahkan (sebagian) pada tingkat fisik , karena alasan kinerja.
- Pelaksanaan fisik menarik sirkuit fisik. Komponen sirkuit yang berbeda ditempatkan dalam floorplan Chip atau pada papan dan kabel yang menghubungkan mereka yang diarahkan.
- Desain Validasi tes komputer secara keseluruhan untuk melihat apakah ia bekerja dalam segala situasi dan semua timing. Setelah pelaksanaan dimulai, validasi desain pertama adalah simulasi menggunakan emulator logika. Namun, hal ini biasanya terlalu lambat untuk menjalankan program yang realistis. Jadi, setelah melakukan koreksi, prototipe yang dibangun menggunakan Bidang-Programmable Array Gerbang-(FPGA).
Tujuan desain
Bentuk yang tepat dari sebuah sistem komputer tergantung pada kendala dan tujuan. Arsitektur komputer biasanya trade off standar, biaya, kapasitas memori, latency (latency adalah jumlah waktu yang dibutuhkan untuk informasi dari satu node untuk melakukan perjalanan ke sumber) dan throughput. Kadang-kadang pertimbangan lainnya, seperti fitur, ukuran, berat, keandalan, upgrade dan konsumsi daya merupakan faktor.
Skema yang paling umum hati-hati memilih hambatan yang paling mengurangi kecepatan komputer. Idealnya, biaya dialokasikan secara proporsional untuk memastikan bahwa data rate hampir sama untuk semua bagian komputer, dengan bagian yang paling mahal menjadi lambat. Ini adalah bagaimana integrator komersial terampil mengoptimalkan komputer pribadi seperti ponsel pintar. Prestasi
Kinerja komputer modern sering dijelaskan dalam MIPS per MHz (jutaan instruksi per jutaan siklus clock speed). Ini mengukur efisiensi arsitektur pada setiap clock speed. Karena clock yang lebih cepat dapat membuat komputer yang lebih cepat, ini adalah berguna, pengukuran diterapkan secara luas. Komputer bersejarah memiliki MIPS / MHz serendah 0,1 (Lihat instruksi per detik). Prosesor modern sederhana mudah mencapai mendekati 1. Prosesor superscalar dapat mencapai tiga sampai lima dengan mengeksekusi beberapa instruksi per clock cycle. Multicore dan pengolahan vektor CPU dapat mengalikan ini lebih lanjut dengan bertindak pada banyak data per instruksi, yang memiliki beberapa CPU mengeksekusi secara paralel.
Menghitung instruksi bahasa mesin akan menyesatkan karena mereka dapat melakukan berbagai jumlah pekerjaan di ISA yang berbeda. The "instruksi" dalam pengukuran standar tidak hitungan sebenarnya instruksi bahasa mesin ISA, tetapi unit sejarah pengukuran, biasanya didasarkan pada kecepatan arsitektur komputer VAX.
Secara historis, banyak orang mengukur kecepatan komputer dengan clock rate (biasanya dalam MHz atau GHz). Hal ini mengacu pada siklus per detik dari jam utama CPU. Namun, metrik ini agak menyesatkan, sebagai mesin dengan tingkat clock yang lebih tinggi belum tentu memiliki kinerja lebih tinggi. Akibatnya produsen telah pindah dari clock speed sebagai ukuran kinerja.
Faktor-faktor lain mempengaruhi kecepatan, seperti campuran unit-unit fungsional, kecepatan bus, memori yang tersedia, dan jenis dan urutan instruksi dalam program yang dijalankan.
Dalam sebuah komputer rumah khas,, cara paling sederhana yang paling dapat diandalkan untuk mempercepat kinerja biasanya untuk menambahkan random access memory (RAM). RAM lebih meningkatkan kemungkinan bahwa data yang diperlukan atau program dalam RAM-sehingga sistem ini cenderung perlu memindahkan data memori dari disk. Disk sering sepuluh ribu kali lebih lambat dari RAM karena memiliki bagian mekanik yang harus bergerak untuk mengakses data.
Ada dua jenis utama kecepatan, latency dan throughput. Latency adalah waktu antara awal proses dan selesai. Throughput adalah jumlah kerja yang dilakukan per satuan waktu. Latency Interrupt adalah dijamin waktu respon maksimal sistem untuk acara elektronik (misalnya saat hard disk selesai memindahkan beberapa data).
Kinerja dipengaruhi oleh rentang yang sangat luas pilihan desain - misalnya, pipelining prosesor biasanya membuat latency buruk (lambat) tetapi membuat throughput yang lebih baik. Komputer yang mesin kontrol biasanya perlu latency interrupt rendah. Komputer-komputer ini beroperasi dalam lingkungan real-time dan gagal jika operasi tidak selesai dalam jumlah waktu tertentu. Misalnya, dikendalikan komputer anti-lock brakes harus dimulai pengereman dalam diprediksi, waktu yang singkat setelah pedal rem dirasakan.
Kinerja komputer dapat diukur dengan menggunakan metrik lainnya, tergantung pada domain aplikasi. Sebuah sistem mungkin CPU terikat (seperti dalam perhitungan numerik), I / O terikat (seperti dalam aplikasi webserving) atau memori terikat (seperti dalam video editing). Konsumsi daya telah menjadi penting dalam server dan perangkat portabel seperti laptop.
Benchmarking mencoba untuk mengambil semua faktor ini ke rekening dengan mengukur waktu komputer yang diperlukan untuk menjalankan melalui serangkaian program uji. Meskipun benchmarking menunjukkan kekuatan, mungkin tidak membantu seseorang untuk memilih komputer. Seringkali mesin diukur dibagi pada ukuran yang berbeda. Misalnya, satu sistem bisa menangani aplikasi ilmiah dengan cepat, sementara yang lain mungkin memainkan video game populer lebih lancar. Selanjutnya, desainer dapat menambahkan fitur khusus untuk produk mereka, dalam perangkat keras atau perangkat lunak, yang memungkinkan patokan khusus untuk mengeksekusi cepat tetapi tidak menawarkan keuntungan yang sama dengan tugas umum.
---- Power consumption
Power consumption adalah pengukuran lain yang penting dalam komputer modern. Efisiensi daya sering dapat diperdagangkan untuk kecepatan atau biaya yang lebih rendah. Khas pengukuran dalam hal ini adalah
MIPS / W (jutaan instruksi per detik per watt).
Sirkuit modern memiliki kekuatan lebih per transistor sebagai jumlah transistor per chip tumbuh. Oleh karena itu, efisiensi daya telah menjadi semakin penting. Desain prosesor baru seperti Intel Core 2 lebih menekankan pada peningkatan efisiensi daya. Juga, dalam dunia komputasi embedded, efisiensi daya telah lama dan tetap menjadi tujuan penting berikutnya untuk throughput dan latency.
sumber :: Wikipedia
No comments:
Post a Comment