Please enable JavaScript.
Coggle requires JavaScript to display documents.
4장 프로세서 (MIPS을 하드웨어로 구현 (Background Knowledge (클록 # (동기화 시 필요, 에지에서 구동, 예측…
4장 프로세서
MIPS을 하드웨어로 구현
Background Knowledge
논리회로
-
EX) 명령어 메모리, 데이터 메모리 및 레지스터
-
-
-
-
-
기본 구조
-
-
- 이후 명령어에 따라서 다른 연산(at. ALU)
-
-
-
-
-
THINK. 클록을 사용하는 회로 둘을 구성한다. 하나의 회로는 클록이 상승할 때 동작한다. 다른 하나는 클록이 하강할 때 동작한다. 이러한 설계가 가능한 것인가. 문제는 없을까.
-> 회로 A가 상승 에지에서 동작하고 회로 B가 하강 에지에서 동작한다. 만약 B가 정상적으로 동작하기 위해서 A의 결과값이 필요하다면 도움이 될 듯하다. 클록 하나가 온전히 끝날 때까지 기다리는 것이 아니라 반 클록 만의 결과를 볼 수 있기 때문이다. 하지만 다른 유닛과의 동기화 문제가 생길 수도 있을 듯 하다.
-
-> 정확한 숫자는 모르겠지만 많다고 좋을 것 같지 않다. 일단 클록의 목적은 예측가능성에 있다. 유닛의 동작을 시간적으로 제어하기 위함이다. 그런데 클록의 숫자를 늘리면 그만큼 관리하기 힘들다. 따라서 모든 유닛을 하나의 클록으로 제어하는 것도 좋은 설계는 아니겠지만 많은 클록을 사용하는 것도 바람직하지느 않다.
-
-
-
-
-> 암달의 법칙에 의하면 개선되지 않는 부분에 의해서 실행 시간이 무한정 단축되지 않는다. 이는 병목현상 때문이다. 따라서 파이프라이닝을 통한 처리를 통해서 성능을 개선하기 위해서는, 몇 가지 요건이 필요하다. 메모리를 공유하는 환경이 적어야 할 것이고, 명령어 역시 별도로 처리할 수 있는 형태로 만들어져야 한다.
-
THINK. 해저드(제어, 구조적, 데이터)간의 차이는 무엇일까?
-> 해저드가 일어나는 원인에 있어서는 큰 차이가 없는 듯하다. 모두 연산을 하기위해서 이전의 결과가 필요한 상황에서 발생한다. 다만 해저드가 일어나는 부분이 어디인지에 따라서 구분하는 듯하다. 해저드는 기본적으로 지연에 의해서 발생하는 파이프라이닝의 문제점이다. 암달의 법칙과도 관련되어 있다고 생각한다. 개선되지 않은 요소에 의해서 병목현상이 발생한다면 이는 암달의 법칙에 의한 병렬처리의 한계로 간주할 수 있다.