[TIL] 2022.11.27. [Single Datapath]
2022. 11. 27. 02:15
가장 간단한 데이터패스는 모든 명령어를 한 클럭 사이클에 실행하도록 시도하는 것이다.이것은 어느 데이터패스 자원도 명령어당 두 번 이상 사용될 수 없음을 의미한다.
두 개의 다른 명령어 종류들이 데이터패스 구성 요소를 공유하기 위해서는 그 구성 요소의 입력에 여러 개의 연결을 허용해야 하며, 멀티플렉서와 제어신호를 사용해서 그 입력들 중 하나를 선택해야 한다.
* 데이터 패스 구축
산술/논리 명령어 연산과 메모리 명령어 연산은 매우 비슷하나 다음과 같은 점이 다르다.
- 산술/논리 연산 명령어는 ALU를 사용하되, 두 입력이 모두 레지스터에서부터 온다.
- 메모리 명령어 역시 주소를 계산하기 위하여 ALU를 사용하지만, ALU이 두 번째 입력은 명령어의 12비트 변위 필드를 부호확장한 값이다.
- R-형식 명령어는 목적지 레지스터에 저장할 값이 ALU에서 나오지만, 적재 명령어는 메모리에서 가져온다.
데이터 패스는 명령어 메모리와 데이터 메모리를 따로 가져야한다.
* RISC-V에서는 데이터와 명령어의 형식이 다르기 때문에 다른 메모리가 필요하다.
* 메모리는 따로 갖는 것이 싸게 먹힌다.
* 프로세서가 명령어를 한 사이클에 실행하는데, 단일 포트의 메모리로는 한 사이클에 두 개의 서로 다른 접근을 할 수 없다.
※ 해당 게시물은 컴퓨터 구조 및 설계 (RISC-V)를 토대로 작성되었으며, 문제가 될 시 삭제하겠습니다. ※
'Today I Learned(TIL)' 카테고리의 다른 글
[TIL] 2022.11.29. [Computer Architecture] (0) | 2022.11.29 |
---|---|
[TIL] 2022.11.28. [Computer Architecture] (0) | 2022.11.28 |
[TIL] 2022.11.27. [Computer Architecture] (1) | 2022.11.27 |
[TIL] 2022.11.26. [Context switch] (0) | 2022.11.26 |
[TIL] 2022.11.25. [System Programming] (0) | 2022.11.25 |