본문 바로가기
  • We are looking for banner advertisers Please refer to the email below
컴퓨터견적

CPU Architecture 아키텍처란 무엇일까

by 크론크롱 2021. 10. 21.
반응형

시스템의 설계방법 이나 설계 원리 또는 구축 된 시스템의 구조의 틀을 아키텍처라 하며 아키텍처란 원래 건축 분야에서 설계사상 또는 건축 양식의 의미를 담고 있었지만 IT분야에서 IBM이 최초로 범용 컴퓨터인 시스템을 표현하기 위해 아키텍처 라는 단어를 사용하면서 지금까지 사용되었다 근래는 하드웨어뿐만 아니라 OS(운영체제), 어플리케이션, 네트워크 각종 서비스 분야에서 고도로 복잡하게 고도화 됨에 따라 해당 단어를 많이 사용되곤 한다

 

컴퓨터 시장에서의 프로세서 아키텍처

시스템의 구동되기 위한 전반적으로 핵심적인 역할을 수행하는 프로세서라 불리는 CPU는 출시 이후부터 지금까지 많은 영향력이 있었던 INTEL사를 꼽을 수 있을 것이다 매년 신 모델의 발표와 함께 새로운 아키텍처에 대해 발표하였으며 앞으로 출시 될 모델에 대해 설명되어왔다

아키텍처는 핵심적으로 CPU내에 탑재될 코어들의 위치 또는 캐시메모리 등 구성요소들의 배치를 하기 위한 첫걸음인 밑바탕을 의미한다 즉 CPU내부에서의 납땜이 이뤄지는 트랜지스터 간의 간격 등의 제조 공정이 줄어들거나 프로세서 내부의 각 트랜지스터의 개수가 늘어나거나 또는 CPU 다이 의 크기를 줄임으로써 성능은 높이고 소비전력을 낮추는 등의 포괄적인 설계 내용을 말하며 이는 2006년도부터 CPU의 다중 코어 처리 방식이 적용됨에 따라 전력 소비 그리고 성능에 직접적인 영향이 생기게 되어 많은 관심이 쏟아져 왔다

지난 몇 십 년간 INTEL 에서의 서버 는 물론 일반 데스크톱 시장에서의 유닉스의 점유율을 빠르게 흡수함으로써 독점 수준의 시장장악력으로 시장 입지를 구축하였지만 AMD사의 빠른 추격과 INTEL의 10년간 신제품 발표 시마다 실망만 안겨주었던 현 시점에 경쟁이 사라졌던 데스크톱 시장에 활기를 불어 넣고 있다

 

아키텍처의 발전

사용자가 시스템에 요구한 명령들은 프로세서에서 인식하고 기능을 수행할 수 있도록 명령어 집합을 보유하고 있다 필요 시 목적에 따라 이를 대응할 수 있도록 기계어로 번역되어 작동되는 구조로 설계되어 있으며 CPU의 대표적인 기능은 제어장치에서의 제어기능, 연산장치에서의 연산기능, 레지스터에서의 기억기능 세가지로 구분된다

프로세서의 구성요소
장치구분 역할 구성요소
제어장치 시스템 모든 장치를 동작하고 지시하며 제어 Decoder : 명령해석 회로
Encoder : 해석된 명령을 각 장치로 보냄
주소 레지스터 : 마이크로명령어의 주소를 저장
순서 제어 모듈 : 명령어 실행순서 결정
연산장치 제어장치에서 명령을 받아 연산을 수행 가산기, 누산기, 보수기, 어버플로 검출기
레지스터 처리 명령어나 중간 결과 값을 기억하는 임시기억 플립플롭 또는 래치 의 병렬구성

 

레지스터간 자료 전송 방법

직렬전송 : 레지스터간 직접적인 전송으로 레지스터의 내용을 보존을 위하여 직렬 출력을 다시 직렬로 입력하여 모든 비트가 원래 위치에 있도록 하는 전송 방식

병렬전송 : 기억전체 내용을 하나의 제어 신호로 다른 레지스터에 동시로 전송하는 방식으로 4비트의 구성으로 구성

버스전송 : 하나의 전송만 이루어지도록 제어신호가 가해져 전송에 사용될 레지스터를 선택하여 전송

 

프로세서는 위의 구성을 가지고 데이터를 교환함으로써 사용자가 명령한 데이터를 해석하며 각 장치로 제어명령을 내리게 되는데 처리 프로세서의 업무 처리 순서는 아래와 같다

 

프로세서의 작동 구조
순서 내용 상세내용
Instruction Fetch 명령어 가져오기 메모리에서 명령어를 가져와 레지스터에값을 저장
Instruction Decode 명령어 해석 어떤 명령어가 수행될 지 결정
Operand Fetch 연산자 가져오기 수행할 데이터를 메모리에서 가져와 레지스터에 저장
Execute 실행 해석된 명령 기능을 수행하여 결과를 레지스터에 저장
Result Store 결과를 저장 레지스터에 있는 결과를 메모리에 전달

프로세서는 사용자가 내린 명령을 처리하는데에 있어 실제 시스템에서 실행되는 명령어의 30% 이상은 로드 명령어와 Store 명령어의 작동 구분을 가지고 있으며 메모리와 프로세서간 입출력 성능이 성능에 가장 큰 영향을 미치게 된다

 

누산기 구조 아키텍처

이렇듯 시스템 내부 구조는 실행 속도를 개선하는 방향으로 흘러 발전하게 되는데 초창기 아키텍처는 누산기(Accummulator) 구조의 방법이 적용되었지만 이후에는 스택(Stack) 구조 형태가 도입되면서 범용 레지스터의 개념이 등장하게 된다

 

스택 구조 아키텍처

스택은 자료를 입력하거나 도출되어 나오는 선현 구조의 형태로 구성되어 있으며 자료를 밀어 넣는다 하여 Push 라 칭하고 넣어둔 자료를 꺼낸다 하여 Pop이라 하는데 꺼내지는 자료는 가장 최근에 Push가 이뤄진 자료가 먼저 나오게 된다

 

CPU의 설계 또는 복잡성의 진화는 시대가 지남에 따라 더 작고 안정적인 디바이스를 사용할 수록 더 정교한 아키텍처가 출시되었으며 CPU 의 성능은 명령어 갯수, 평균 CPI 그리고 클럭의 속도로 구분짓게 되는데 클럭 사이클 시간은 아키텍처에 의해 결정되므로 데이터 경로 또는 지연시간을 단축시킬 수 있는 구조 그리고 한 사이클에 수행할 작업량을 결정 지으므로 아키텍처는 굉장히 중요한 회로 기술이다.

반응형

댓글