본문 바로가기
흔한 학교 생활/컴퓨터 코딩 데이터

[마이크로프로세서] CISC와 RISC의 차이, CISC 기본 구조

by 흔한 학생 2024. 3. 7.
반응형

CISC & RISC

RISC (Reduced Instruction Set Computer) 에 대해 배우기 전 
CISC(Complex Instruction Set Computer)

에 대해 알아보겠습니다.
 
Reduced Instruction Set Computer: RISC에서 reduced가 의미하는 바가 무엇일까요?
명령어의 개수가 줄었다고 생각하기 쉽지만 아닙니다.
감소한 것은 바로 명령어의 복잡도입니다.
오히려 명령어 개수와 길이는 더 커졌습니다.
CISC는 복잡한 명령어를 가지고 있으며 CISC의 대표적인 예로 8085 프로세서가 있습니다.
RISC의 예시로는 MIPS, ARM이 있습니다.
CISC와 RISC의 하드웨어 또한 다릅니다.
 
앞으로 배울 CISC는 8085 프로세서를 기준으로 배우겠습니다.


CISC 기본 구조

 

Input 포트, Output 포트, 마이크로 프로세서, 메모리로 이루어져 있습니다. 


port는 사람이 드나들 수 있는 항구에서 따와 port라고 사용한다고 합니다.
그리고 마이크로프로세서와 나머지 구성 요소들은 Bus로 연결되어 있습니다.
Bus는 이름에서 알 수 있듯이 신호가 이동하기 위한 통로라고 생각하면 됩니다. 


System Bus

시스템 버스는 data bus, address bus, control bus 가 있습니다.
data bus - 8 bits
address bus - 16 bits
control bus - 1bits 
이며 예를 들어 데이터 버스는 한 클럭 당 8 bits 가... ?????? 이동할 수 있다? 


address bus

메모리에 있는 데이터를 불러올 때 주소가 필요합니다.
메모리가 하나만 있다면 주소를 사용할 필요없이 값을 읽고 쓸 수 있을 것입니다.
하지만 그렇지 않으므로 주소를 할당하여 메모리를 사용할 수 있도록 합니다.
어드레스 버스가 1개 (1bit)라면 00 01 두 경우로 두 개의 주소를 할당할 수 있을 것입니다.
n개라면 2^n 개의 메모리를 가질 수 있을 것입니다.
지금 배우고 있는 8085의 경우 16bits의 address bus를 사용한다 하였으니 2^16 개의 메모리를 가질 수 있습니다. 
메모리 하나에 8 bits, 즉 1Byte이므로 64kB 의 메모리를 가진다고 할 수 있겠습니다.
 


이때 어드레스 버스는 어떻게 접근할 메모리를 선택할 수 있을까요?
이때 디코더(decoder)를 이용합니다.
디코더는 논리회로에서 배웠을텐데
입력에 대한 모든 minterms 을 만들어내는 logic component 입니다.
즉 minterm generator라 할 수 있습니다. 
 
예를 들어 2개의 address bus 에서 00주소의 메모리에 접근하기 위해 00이 전달된다 가정해봅시다.
로직에서 당연히 A'B' 부분이 활성화되어 선택될 것입니다.
Input과 Output을 선택할 때도 마찬가지 입니다. 


▶ control bus

마지막으로 제어를 위한 control bus 입니다.
만약 다음과 같은 상황에서 00 신호를 전달한다고 가정해봅시다.
메모리, 입력(input), 출력(output) 셋 모두 00 주소가 enable 될 것입니다.
때문에 그 중 어느 곳에 접근할지 제어를 해야하며 이때에 control bus가 이용됩니다.
만약 제어신호가 MEMR 이라면 메모리 데이터 읽기
MEMW 라면 메모리 데이터 저장
IOR 이라면 input 읽기
IOW 라면 출력
입니다.
 
 

반응형