2022. 1. 28. 00:38ㆍCS
순차논리
-컴퓨터는 비트를 어떻게 기억하는가
순차논리라는 말은 순서(sequence)라는 말에서 비롯된 용어다. 순서는 '시간적으로 어떤 값 뒤에 오는 다른 값'이라는 뜻이다. 사람이 직관적으로 시간을 안다고 해서 디지털 회로에서도 시간을 자연스럽게 다룰 수 있다는 뜻은 아니다. 우리는 디지털 회로에서 시간을 어떻게든 만들어내야 한다.
<시간 표현과 상태 기억>
우리는 주기 함수를 사용해 시간을 측정할 수 있다. 예를 들어. 지구의 자전이 바로 주기적 함수다. 지구가 한 바퀴를 다 돌면 이를 하루(1일)라고 부른다. 이 하루를 더 잘게 나눠서 시간, 분, 초 등으로 구분을 한다.
컴퓨터의 경우 전자공학을 사용하기 때문에 주기적인 전기 신호가 필요하다. 전자가 스위치를 때리게 하면 이런 신호를 만들 수 있다.
발진자
좀 더 안정적인 주파수로 진동하는 발진자(oscillator)가 있다면 더 정확히 시간을 측정할 수 있는 기준이 될 것이다. 정확한 발진자를 적은 비용으로 효율적으로 만드는 방법은 크리스털(crystal)을 활용하는 것이다.
전극을 크리스털에 연결하고 크리스털을 압축하면 크리스털이 전기를 만들어낸다. 그리고 전극에 전기를 가하면 크리스털이 구부러진다. 이런 현상을 피에조 전기(압전) 효과라고 부른다.
크리스털은 음성진동을 잡아낼 수 있어서 마이크를 만들 때 이를 쓸 수 있다. 또한 크리스털에 전기를 가해서 음성 진동을 만들어냄으로써 여러 전기 기구에서 다양한 경보음을 낼 수 있다.
크리스털 발진자는 전자적인 단극쌍투 스위치를 사용해 크리스털에 전기를 가해서 다시 전기를 얻어낸다. 입력한 전기로부터 크리스털이 전기를 다시 만들어내는 시간은 예측이 가능하며 매우 정확하다.
클록
발진자는 컴퓨터에 클록(clock)(시간을 셀 수 있게 해주는 신호)을 제공한다. 컴퓨터 클록은 밴드에서 드러머가 박자를 맞춰 드럼을 치는 것과 같다. 클록은 회로의 페이스(pace)를 결정한다. 회로의 최대 클록 속도나 가장 빠른 템포(tempo)는 회로의 전파 지연 시간에 의해 결정된다.
컴퓨터를 오버클로킹(overclocking)한다는 말을 들어본 적이 있을 것이다. 이 말은 통꼐적으로 빈의 중간 정도에 위치하는 부품을 부품이 고장 나지 않을 범위 안에서 클록을 빠르게 공급하는 도박을 한다는 뜻이다.
래치
이전의 상태가 현재 출력에도 영향을 미치게 되는데 이전 상태를 기억하기 위해 메모리 개념이 추가된다. 그것의 가장 기초가 된 것이 바로 래치이다.
메모리는 기본적으로 피드백에 의해 만들어지게 되는데 궤환, 되먹임이라고도 부른다.
SR Lastch
SR Latch의 특성표이다.
S : set(설정)
R : reset(재설정)
Q(t-1) : 이전상태
Q(t) : 현재상태
S=0, R=0, Q=0 일 떄,
S가 0이면 피드백이 0이와서 P가 1이 되고 R인 0과 만나 현재상태가 0이 된다.
S=1, R=0, Q=1 일 떄,
S가 1이면 피드백이 1이와서 P가 0이 되고 R인 0과 만나 현재상태가 1이 된다.
즉 0과 0이 만나면 1이 되고,
1과 1이 만나면 0이 되고,
0과 1이 만나면 0이 된다.
이전상태와 현재상태가 같을 경우 표에 나타난 것 과 같이 ?는 부정상태라고도 한다.
'CS' 카테고리의 다른 글
CS : 데이터 구조와 처리 (0) | 2022.02.15 |
---|---|
CS : 네트워킹 (0) | 2022.02.08 |
CS : 컴퓨터 아키텍쳐와 운영체제 (0) | 2022.02.04 |
CS : 문자를 사용한 수 표현, 색을 표현하는 방법 (0) | 2022.01.22 |
CS : 컴퓨터 내부의 언어 체계 (0) | 2022.01.18 |