본문 바로가기
Computer Science

[Programming] Central Processing Unit, Instruction Cycle

by Henry Cho 2022. 4. 10.
728x90

Central Processing Unit, Instruction Cycle


포스트 난이도: HOO_Junior

 

[Notice] 포스트 난이도에 대한 설명

안녕하세요, HOOAI의 Henry입니다. Bro들의 질문에 대한 내용을 우선적으로 포스팅이 되다 보니 각각의 포스트에 대한 난이도가 달라서 난이도에 대한 부분을 작성하면 좋겠다는 의견을 들었습니다

whoishoo.tistory.com


 

# Central Processing Unit

Central Processing Unit는 CPU라고 불리는 중앙 처리 장치를 의미한다.

Central Processing Unit는 ALU, Data cache, Control unit, Instruction cache 등으로 이루어져 있으며, Registers와 연결된다.


Fig01. CPU


ALU과 Data cache는 read와 write가 모두 되지만 Instruction cache에서 Control unit으로 갈 때는 Read만 가능하다.

마찬가지로 Controal unit에서 ALU로도 Read만 가능하다.

한마디로 화살표가 한 방향만 있는 경우에는 Read만 가능하고 화살표가 양방향인 것은 Reand and Write이 모두 가능하다.


# Instruction Cycle

프로그램이 실행되기 위해서는 아래와 같은 단계를 거쳐서 프로그램이 실행된다.

  • Instruction fetching
  • Instruction decoding
  • Operand Fetching
  • Execution
  • Write Back

Instruction fetching은 Instruction cache에서 명령어를 가져온다.

이를 decoding을 거쳐서 ALU에 전달하게 된다.

다음으로 Operand fetching이 이루어지고 실행되고 다시 write back이 이루어지는 단계를 거친다.

이 단계 중에서 Instruction fectching과 Operand fetching이라는 2가지의 fetching 단계를 거치는 걸 확인할 수 있다.

이 두가지 Fetching의 경우에는 다른 단계 과정에 비해 상대적으로 평균 걸리는 시간이 길다.

따라서 처리되는 속도가 상대적으로 느리다고 볼 수 있다.

반면에 Execution의 경우에는 상대적으로 평균 걸리는 시간이 짧다.

따라서 처리되는 속도가 상대적으로 빠르다고 볼 수 있다.

Write Back의 경우에는 Write memory의 경우에는 상대적으로 평균 처리 속도가 느릴 수 있지만 그냥 Write back일 경우에는 느리지가 않다.


 

728x90

댓글