Clock은 디지털 회로의 심장 박동이라고 할 수 있다.
System적으로는 clock이 모든 행위의 단위가 된다고 할 수 있고, 박자를 맞추어 사건을 정해진 순서대로 헝클어짐 없이(동기화) 수행되도록 한다는 의미이다.
CLK은 '유지비트'라는 말로 바꿔쓸 수 있다. 유지비트가 1(CLK high)일 때만 data in으로부터 들어오는 데이터를 읽을 수 있고 0(CLK low)일 때는 마지막 유지비트가 1일 때의 data가 유지된다.
모든 디지털 회로를 논리회로와 이런 latch회로로 구성된다. 그럼 반복 계산을 하려면 논리회로를 수십 개 써야만 할까? 우리는 그 대신 중간에 register를 하나 두고 한 번 계산된 값을 넣어 둔 다음 feedback 하는 형태로 회로를 구성할 수 있다. 이때 CLK이 순서를 꼬이지 않게 도와주어야 한다.
서로 처리 속도가 다른 digital 회로들끼리 연결되어 있는 경우 처리 속도가 가장 느린 회로의 clock을 맞춰야 전체 회로가 제대로 동작한다. 그러므로 한없이 clock을 빠르게 한다고 꼭 좋은 것은 아니다. 이것이 device spec에서 feeding clock을 제대로 확인해야 하는 이유이다.