Компютърна архитектура: Разлика между версии

Изтрито е съдържание Добавено е съдържание
още превод от англ
Ред 21:
Към 1990-те обичайната практика е новите компютърни архитектури да се строят, тестват и донастройват в някоя съществуваща архитектура – симулатор.
 
== Подкатегории ==
Дисциплината на компютърна архитектура се разделя на три основни подкатегории:<ref>{{cite book|author=John L. Hennessy and David A. Patterson|title=Computer Architecture: A Quantitative Approach|edition=Third|publisher=Morgan Kaufmann Publishers}}</ref>
# ''[[набор инструкции|Instruction Set Architecture]]'', или ISA. ISA определя какъв [[машинен код]] чете [[централен процесор|процесорът]] и как го обработва, включително размера на машинната дума, начина на адресация на паметта (memory address modes), процесорните регистри (processor registers), и типа данни (data type).
<!--
# ''[[Microarchitecture]]'', or ''computer organization'' describes how a particular [[Central processing unit|processor]] will implement the ISA.<ref>{{cite book|title=Dictionary of Computer Science, Engineering, and Technology|last=Laplante|first=Phillip A.|year=2001|publisher=CRC Press|isbn=0-8493-2691-5|pages=94–95}}</ref> The size of a computer's [[CPU cache]] for instance, is an issue that generally has nothing to do with the ISA.
# ''[[Systems design|System Design]]'' includes all of the other hardware components within a computing system. These include:
## Data processing other than the CPU, such as [[direct memory access]] (DMA)
## Other issues such as [[virtualization]], [[multiprocessing]], and [[software]] features.
 
There are other types of computer architecture. The following types are used in bigger companies like Intel, and count for 1% of all of computer architecture
* Macroarchitecture: [[architectural layer]]s more abstract than microarchitecture
* Assembly Instruction Set Architecture (ISA): A smart assembler may convert an abstract assembly language common to a group of machines into slightly different [[machine language]] for different [[implementation]]s
* Programmer Visible Macroarchitecture: higher level language tools such as [[compiler]]s may define a consistent interface or contract to programmers using them, abstracting differences between underlying ISA, UISA, and [[microarchitecture]]s. E.g. the [[C (programming language)|C]], [[C++]], or [[Java (programming language)|Java]] standards define different Programmer Visible Macroarchitecture.
* UISA (Microcode Instruction Set Architecture)—a group of machines with different hardware level microarchitectures may share a common microcode architecture, and hence a UISA.
* Pin Architecture: The hardware functions that a [[microprocessor]] should provide to a hardware platform, e.g., the [[x86]] pins A20M, FERR/IGNNE or FLUSH. Also, messages that the processor should emit so that external [[CPU cache|caches]] can be invalidated (emptied). Pin architecture functions are more flexible than ISA functions because external hardware can adapt to new encodings, or change from a pin to a message. The term "architecture" fits, because the functions must be provided for compatible systems, even if the detailed method changes. -->
== Източници ==
<references />