1. Digital Logic Circuit
0) 관련 개념
1> Digital circuit : binary information을 다루는 hardware component
2> Basic logic operator : 기본적인 logic function (AND, OR, NOT과 같은 것들)
3> logic gate : logic function을 구현
4> Boolean Algebra : logic function을 구현하고 변환하는 mathematical system
5> 회로는 Hierarchical design 한다. (Y-chart)
6> 회로는 보는 관점에 따라 base circuit element가 바뀔 수 있다. (Transistor → Logic gate → Wire)
1) Levels of abstraction
(behavioral form : function level)
(structural component : 어떤 level에서 다루는가)
(physical object : 실제로 우리가 만질 수 있는 object )
1> Transistor (굉장히 low level)
전기나 voltage를 계산, input에 따라 output이 전기적 signal이 어떻게 변하는가?
2> Gate (주로 다루는 부분)
boolean equation
3> Register (RTL)
assembly language level
4> processor
프로그램과 연결되어 있다. (OS와 연관, compiler)
2) Y chart
1> behavioral domain : function level
2> structual domain : 어떤 구조 및 단위를 사용하는가?
3> physical domain : 실제로 만들어지는 것
2. logical operation
1) basic operation
1> AND : * (dot)
2> OR : +
3> NOT : ‾ (overbar), ' (single quote mark), ~
2) Logic function implementation
1> switch
- input : logic 1 (switch closed), logic 0 (switch open)
- output : logic 1(light on), logic 2 (light off)
2> implementation
3) Logic diagram expression
0> 특징
- Equation, Logic Diagram은 여러 법칙들에 의해 변형이 가능합니다.
- 하지만, Truth Table은 unique합니다. (일정합니다.) → 그래서 unique한 특징으로 사용 가능합니다.
1> Truth Table
2> Equation (식)
3> Logic Diagram (논리 회로 그림)
cf> Basic logic library
나중에 확인해보면 알겠지만 NOR와 NAND는 transistor를 총 4개씩 쓰는 것을 알 수 있다.
3. Transistor
1) Mos Transistor
Gate로 input signal이 들어온다.
Gate oxide(산화막)으로 전자가 들어와서 전류가 통한다. (switch 역할)
2) Mos Transistor의 2가지 switch
1> n-Channel (nMos Transistor, npn Transistor)
1이 gate로 들어오면 switch on
2> p-Channel (pMos Transistor, pnp Transistor)
0이 gate로 들어오면 switch on (동그란 모양을 보고 0이 들어오는 것을 연상하자)
3> 추가 개념
Vdd : 전원이 제공된다.
Vss : ground (접지)
4> Inverter Layout
M1 : pmos transistor
M2 : nmos transistor
- 0이 들어오면 → M2 끊어짐 & M1 연결 → Vdd로부터 M1에 전원 연결 → Vdd의 1이 output으로 전달 (output은 1이 된다.)
- 1이 들어오면 → M1 끊어짐 & M2 연결 → 접지된 Vss에 연결 → cload에 전압이 차있던 것이 M2 방향을 빠져나간다. (output은 0이 된다.)
5> Fully-Complementary CMOS Circuit
이 PMOS와 NMOS transistor는 서로 보완적인 관계입니다.
PMOS는 Vdd에서 전기 신호가 들어오게 해서 output을 charge(충전)시킵니다.
NMOS는 Vss로 전기 신호가 빠져나가게 해서 output을 discharge시킵니다.
3) Gate example
1> NOT
- [윗 부분]
A = 0이면 (output(F)= 1입니다.)
-> 윗 부분 A가 0이므로 : PMOS switch on
-> VDD로부터 전류가 흘러서 F까지 도달할 수 있다.
-> output = 1
- [아랫 부분]
B = 1이면 (output(F)= 0입니다.)
-> 아랫 부분 B가 1이므로 : NMOS swich on
-> 축적된 전하가 A, B를 통해 VSS로 전하가 빠져 나갑니다.
-> output = 0
2> NOR
- [윗 부분]
(A, B) = (0, 0)이면 (output(F)= 1입니다.)
-> 윗 부분 A, B 둘 다 0이므로 : PMOS switch on
-> VDD로부터 전류가 흘러서 F까지 도달할 수 있다.
-> output = 1
- [아랫 부분]
(A, B) = (1, 1), (1, 0), (0, 1)이면 (output(F)= 0입니다.)
-> 아랫 부분 A, B 중 하나 이상이 1이므로 : NMOS swich on
-> 축적된 전하가 A, B를 통해 VSS로 전하가 빠져 나갑니다.
-> output = 0
3> NAND
- [윗 부분]
(A, B) = (0, 0), (0, 1), (1, 0)이면 (output(F)= 1입니다.)
-> 윗 부분 A, B 하나 이상이 0이므로 : PMOS switch on
-> VDD로부터 전류가 흘러서 F까지 도달할 수 있다.
-> output = 1
- [아랫 부분]
(A, B) = (1, 1)이면 (output(F)= 0입니다.)
-> 아랫 부분 A, B 둘 다 1이므로 : NMOS swich on
-> 축적된 전하가 A, B를 통해 VSS로 전하가 빠져 나갑니다.
-> output = 0
3> AND
NAND 뒤에 inverter를 붙인 구조이다. (그래서 transistor를 NAND보다 2개 많은 6개를 쓴다.)
4> 3-input NAND
- [윗 부분]
(A, B, C) = (0, 0, 0), (0, 0, 1), (0, 1, 1)...이면 (output(F)= 1입니다.)
-> 윗 부분 A, B, C 하나 이상이 0이므로 : PMOS switch on
-> VDD로부터 전류가 흘러서 F까지 도달할 수 있다.
-> output = 1
- [아랫 부분]
(A, B, C) = (1, 1, 1)이면 (output(F)= 0입니다.)
-> 아랫 부분 A, B, C 셋 다 1이므로 : NMOS swich on
-> 축적된 전하가 A, B를 통해 VSS로 전하가 빠져 나갑니다.
-> output = 0