Bilgisayar mühendisliğinde bilgisayar mimarisi, bir bilgisayar sisteminin kavramsal tasarımı ve temel operasyonel yapısıdır. Tüm tasarım gereksinimlerinin (özellikle hızlar ve ara bağlantılar) teknik çizimleri ve işlevsel açıklamasıdır, bir bilgisayarın çeşitli parçalarının nasıl tasarlanacağı ve uygulanacağıdır - büyük ölçüde merkezi işlem biriminin (CPU) dahili olarak çalışma şekline ve bellekteki adreslere nasıl eriştiğine odaklanır.
İşlevsel, performans ve maliyet hedeflerini karşılayan bilgisayarlar oluşturmak için donanım bileşenlerini seçme ve birbirine bağlama bilimi ve sanatı olarak tanımlanabilir.
Bilgisayar mimarisi en az üç ana alt kategori içerir:
- Komut kümesi mimarisi veya ISA, komut kümesi, bellek adres modları, işlemci kayıtları ve adres ve veri formatları dahil olmak üzere bir makine dili (veya montaj dili) programcısı tarafından görülen bir bilgi işlem sisteminin soyut modelidir.
- Bilgisayar organizasyonu olarak da bilinen mikro mimari, bilgisayar sisteminin tüm parçalarının çalışmasını ve ISA'yı uygulamak için nasıl birbirine bağlandıklarını ve birlikte çalıştıklarını tamamen tanımlamak için yeterli olan daha düşük seviyeli, ayrıntılı bir sistem açıklamasıdır. Örneğin bir bilgisayarın önbelleğinin boyutu, genellikle ISA ile hiçbir ilgisi olmayan organizasyonel bir konudur.
- Bir bilgisayar sistemindeki diğer tüm donanım bileşenlerini içeren Sistem Tasarımı, örneğin
· Bilgisayar veri yolları ve anahtarlar gibi sistem ara bağlantıları.
· Bellek denetleyicileri ve hiyerarşileri.
· Doğrudan bellek erişimi gibi CPU yükü azaltma mekanizmaları.
· Çoklu işlem gibi konular.
Hem ISA hem de mikro mimari belirlendikten sonra, gerçek bilgi işlem sisteminin donanım olarak tasarlanması gerekir. Bu tasarım sürecine uygulama adı verilir. Uygulama genellikle bir donanım mühendisliği tasarım sürecidir.
Uygulama daha da üçe ayrılabilir ancak tamamen ayrı parçalar değildir:
- Mantık Uygulaması: Mikro mimaride tanımlanan blokların, esas olarak yazmaç aktarımı ve kapı seviyelerinde tasarlanması.
- Devre Uygulaması: Temel elemanların (kapılar, çoklayıcılar, flip-floplar, vb.) yanı sıra performans nedenleriyle bu seviyede veya hatta daha düşük bir fiziksel seviyede uygulanabilecek bazı büyük blokların (ALU'lar, önbellekler, vb.) transistör seviyesinde tasarımı.
- Fiziksel Uygulama: Fiziksel devreler çizilir, farklı devre bileşenleri bir çip zemin planına veya bir kart üzerine yerleştirilir ve bunları bağlayan kablolar yönlendirilir.
CPU'lar için, tüm uygulama süreci genellikle CPU tasarımı olarak adlandırılır; RISC ve CISC gibi ilgili CPU tasarımları ailesi de olabilir.