클럭킹 방법론은 신호를 언제 읽고 언제 쓸 수 있는지를 정의한다. 클럭킹 방법론은 예측 가능성을 보장하기 위해 고안되었다.
에지 구동 클럭킹 (Edge-triggered clocking)
sequential 논리 소자에 저장된 값은 클럭 에지에서만 바꿀 수 있음을 의미한다. 클럭 에지는 낮은 값에서 높은값으로, 혹은 높은 값에서 낮은 값으로의 변이를 의미한다.
state element만이 데이터 값을 저장할 수 있으므로, 모든 combinational 회로는 state element에서 입력을 받고 state element로 출력을 내보낸다.
위의 그림은 combinational 회로를 둘러 싸고 있는 2개의 state element를 보여준다. 앞으로의 글에서 모든 state element는 상향 에지 구동이라고 가정한다. 즉 모든 state element는 상향 클럭 에지에서 값이 바뀐다.
이 회로는 하나의 클럭 사이클에 동작한다. 즉, 모든 신호가 state element 1에서 나와 state element 2까지 전달되는 데 하나의 클럭 사이클이 걸린다. 신호들이 state element 1에서 나와 state element 2에 도착하는 데 필요한 시간으로 클럭 사이클을 정의한다.
(combinational logic은 하향 클럭 에지에서 값이 바뀐다. state element 1에서 combinational logic으로 하향 클럭 에지일 때 데이터 값이 전달되고, combinational logic에서 state element 2로는 상향 클럭 에지에서 값이 전달된다.)
매 클럭마다 state element에 쓰기가 행해지는 경우 control signal을 생략한다. 반면, 매 클럭마다 갱신되지 않는다면 control signal이 분명하게 표시되어야 한다. 클럭 신호와 control signal은 state element의 입력이 된다.
에지 구동 클럭킹 덕분에 같은 클럭 사이클에서 동일한 state element를 읽고 쓸 수 있다.
'Computer > 컴퓨터구조' 카테고리의 다른 글
[컴퓨터구조] Processor(3): 제어 유닛 (control unit) (0) | 2024.06.01 |
---|---|
[컴퓨터구조] Processor(2): 데이터패스 만들기 (0) | 2024.05.30 |
[컴퓨터구조] Processor(1): 데이터패스와 RISC-V의 구현 (0) | 2024.05.29 |
[컴퓨터구조] Arithmetic for Computers(1): 덧셈과 뺄셈 (0) | 2024.05.29 |