Ⅰ. Compuer architecture
-현대 컴퓨터 구조는 아래의 같은 구조로 되어 있습니다.
+ Physical design : 말 그대로 물리적인 level을 의미
+ Circuit design : 회로 레벨의 design을 의미
+ Logic design : 로직 레벨의 design을 의미
+ Processor + I/O System : 연산 수행이 가능한 processor와 입출력을 위한 system
+ ISA(Instruction Set Architecture) : 명령어의 집합을 의미하며, hardware와 software의 사이에 존재
+ Application : 우리가 흔히 말하는 '프로그램'이 애플리케이션이라고 할 수 있습니다.
> 그중에서도 OS는 메모리, 파일, 스케줄링 등의 일을 하는 역할을 하지요
- 여기서 말하고하는 것은 컴퓨터의 구조는 명령어의 집합 ISA와 Machine organization이라는 것입니다.
- 일반적으로 우리가 사용하는 high level의 language들은 아래의 단계를 거쳐서 최종적으로 machine language로 바뀌게 됩니다.
+ 우리가 작성한 C언어(혹은 다른 language)는 Complier를 통해서 assembly language로 바뀌게 됩니다.
+ Assembly language는 assembler를 통해서 machine language로 바뀌게 됩니다.
> 이때에 ISA에 따라 다르게 machine language로 바뀝니다.
> 예를 들면, 동일하게 작성된 C코드 라도 ARM core 기반이냐 Intel core 기반이냐 MIPS 기반이냐에 따라서 최종적인 Machine code는 다르다는 것입니다. 이것은 성능의 차이가 아니라, ISA가 다르기 때문에 그런 것입니다.
- 최종적으로 말을 하고자 하는 것은 ISA(Instruction Set Architecture)에 따라서 처리 속도, 성능, 파워에 지대한 영향을 준다는 것입니다!
Ⅱ. Design metric
- 설계의 관점에서 meric 요소는 다양
+ 성능(performance)
+ 파워(power)
+ 온도(Temperature)
+ 신뢰성(Reliality)
+ 품질(QoS, Quality of Service)
+ 비용(Cost)
- 그중에서도 performance에 대해서 알아보겠습니다.
ⅰ Perforrmance
- 사람들은 Performane를 다양하게 define 가능합니다.
+ Processor speed, system bus speed, memory size, disk storage, power consumption 등
- 하지만 일반적으로는 performance를 이야기할 때에는 Time(시간)을 가장 일반적인 metric을 두고 performance를 이야기합니다.
+ 그래서 아래의 그림을 보면 전부 Time(시간)과 관련이 되어 있습니다.
> Complier에서는 MIPS( Millions of instruction per second)
> OS에서는 MFLOPS( Millions of Floating-Point per second)
(※ 요즘 deep leaning 이 활발하게 연구가 되면서 해당 metric이 많이 언급이 되는 편이라 많이들 보셨을 것 같네요.)
> Data path/control에서는 CPI(Cycles per Instruction)
> Functional unit에서는 Clock frequency
ⅱ. Performance 측정
- CPU 성능 측정을 위해, 주로 execution time을 고려합니다. 그래서 아래와 같은 수식이 나올 수 있습니다.
- 그럼 "A CPU 보다 B CPU가 더 빨라"라고 하였을 때, 얼마나 더 빠른지에 대해서 계산하는 과정은 아래와 같습니다.
'Digital Hardware Design > Computer architecture' 카테고리의 다른 글
MIPS architecture & Instruction (0) | 2022.10.24 |
---|---|
Computer architecture(3) - Program language (0) | 2022.10.23 |
Computer architecture(2) (0) | 2022.10.14 |
댓글