Time and Memory(1)
- Sequential logic의 경우 과거의 출력값에도 영향을 받기 때문에 memory device가 필요함.
- 현재 input 이외의 과거 상태 및 현재 상태 값들을 고려하여 출력이 결정되기 때문에 time을 나타내는 device 필요.
Oscillator
- 일정시간에 맞춰 반복되는 주기적인 펄스를 발생시켜 computer등에서 time 정보를 제공하는 역할
- CPU 등에서 동작 clock 등이 해당 device가 어떤 빠르기로 동작하는지를 나타내며, 이와같은 동작 clock을 제공하는 것이 oscillator
- 주로 piezoelectric effect를 이용하는 crystal로 만들어짐. crystal에 전기를 가하는 경우, 일정 시간 이후 crystal이 다시 전기를 만들어내는데 이 때 시간 간격이 매우 정확함.
- 위와 같은 원리를 이용하여 clock signal을 발생시키는 oscillator가 만들어짐.
Clock
- computer나 circuit의 동작 pace.
- 보통 [Hz]로 표현하며 초당 몇번의 pulse signal이 반복되는지로 빠르기를 나타냄.
- computer나 circuit을 구성하고 있는 여러 device들은 propagation delay 등의 특성이 다르기 때문에 clock에 맞춰서 정상적인 동작이 이루어지도록 동기화되는 경우가 대부분.(비동기 방식이 없지는 않지만, 제어가 매우 어려움)
- 일반적으로 device들의 시간과 관련된 특성들은 variation이 다양하기 때문에 통계적인 측정치로 표시되며 일정 range에서 정상동작이 보장되는 특징을 가짐.
Latch
- Gate를 조합하여 1bit의 정보를 기억하는 역할을 하는 회로
- 1bit의 정보를 기억하는
flip-flop
과의 대표적인 차이점은 clock signal에 대해 high(or low) level에서 기억이 이루어지는지, rising(or falling) edge에서 기억이 이루어지는지에 있음.
latch
는 주로 high level에서 기억이 이루어지며, flip-flop
의 경우 주로 rising edge에서 기억이 이루어지는 version이 많이 사용됨.
OR Latch
- feedback연결과
OR
gate를 이용하여 1bit의 정보를 기억한다는 점에서 가장 간단한 latch
- 기억만 가능할 뿐 다시 reset이 불가능함.
AND-OR Latch
OR
latch의 feedback connection을 OR
에 직접 연결하지 않고 OR
앞에 연결된 AND
에 연결하고 동시에 해당 AND
에 reset을 입력시켜 reset 기능을 추가한 latch.
OR
latch에서 reset이 되지 않는다는 단점을 보완한 것으로 정보의 기억 및 기억된 정보의 출력, 기억될 정보의 수정이 가능한 가장 간단한 memory.
- 대칭구조(symmetric structure)가 아니기 때문에 propagation delay에 취약함.
S-R Latch
set | reset | Q | Q | |
---|
0 | 1 | 1 | 0 | |
1 | 0 | 0 | 1 | |
1 | 1 | memory | memory | |
0 | 0 | 1 | 1 | not intended for use |
AND
-OR
latch와 같은 역할이지만 NAND
, NOR
로 구현하여 symmetric structure를 가지도록 구현됨.
- 흔히 latch라고 하면
S-R latch
를 가르킴.
- set과 reset이 동시에 activation 되는 경우 사용하지 않음.(not intended for use)
Gated S-R Latch
- clock signal을 입력받아서 특정 시점의 정보를 기억하도록
S-R latch
를 확장한 것.
- 개념적인
S-R latch
가 아닌 실제 회로 등에서 얘기하는 latch는 Gated S-R Latch를 가르키는 경우가 많음.
- S-R latch의 reset과 set의 입력단 각각의 앞에
OR
을 붙이고 각 OR
에서 reset과 set의 입력을 받고, 동시에 각 OR
은 clock이 입력될 동안 gate 입력을 받는 구조.
- 위 구조에서 reset과 set은 동시에 1이 될 수 없기에 하나의 신호로 받아 하나는 이를 그대로 입력하고 다른 쪽은 inverter를 거쳐 입력하는 구조로 만드는 것이 나음.
Gate-D Latch
- 위에서 설명한 것을 구현한 것이 D latch.
- 입력을 D라고 하면 이 latch는 해당 D의 1bit 정보를 gate에 따라 지정된 시간만큼 기억하는 memory로 동작하게 됨.
- gate가 low인 경우(gate=0)에 D의 signal이 그대로 출력 Q에 전달.
따라서 gate가 low인 경우에는 D의 상태가 변한다면 해당 변화가 그대로 출력 Q로 전달됨.
References:
1) https://www.nutsvolts.com/magazine/article/may2015_HamWorkbench
2) https://soojong.tistory.com/entry/%EC%9E%91%EC%84%B1%EC%A4%91%EC%88%9C%EC%B0%A8%ED%9A%8C%EB%A1%9C-%EB%9E%98%EC%B9%98