Chapter 1. Logic Gates
Boolean Logic
Boolean Functions
Commutative Laws : ๊ตํ ๋ฒ์น
๐ xยทy=yยทx
x+y=y+x
AND๋ OR ์ฐ์ฐ์์ ์์๊ฐ ๋ฐ๋๋๋ผ๋ ๊ทธ ๊ฒฐ๊ณผ๋ ๊ฐ๋ค. ์ฆ, 0ยท1=1ยท0์ด๊ณ , 0+1=1+0
Associative Laws : ๊ฒฐํฉ ๋ฒ์น
๐ xยท(yยทz)=(xยทy)ยทz x+(y+z)=(x+y)+z
๊ตํ ๋ฒ์น๊ณผ ์ ์ฌํ๊ฒ ์ผ๋ฐ ์ํ์์์ ๊ท์น๊ณผ ๊ฐ์ต๋๋ค. ์๋ถํฐ ์์๋๋ก ์ฐ์ฐํ๊ฑฐ๋, ๋ค๋ถํฐ ์์๋๋ก ์ฐ์ฐํ๋ค๊ณ ํด์ ๊ฒฐ๊ณผ๊ฐ ๋ฌ๋ผ์ง์ง๋ ์๊ฒ ์ฃ .
Distributive Laws : ๋ถ๋ฐฐ๋ฒ์น
๐ 13 - xยท(y+z)=xยทy+xยทz 14 - x+yยทz=(x+y)ยท(x+z)
๋ถ๋ฐฐ ๋ฒ์น๋ ์ผ๋ฐ ์ํ์ ์๊ฐํ๋ฉด ์ฝ์ง๋ง, ์กฐ๊ธ ๋ค๋ฅธ ์ ์ด ์์ต๋๋ค. ์ผ๋จ 13๋ฒ ๋ฒ์น์ ์ฐ๋ฆฌ๊ฐ ์๋ ๋ถ๋ฐฐ ๋ฒ์น์ด๋ผ ์ด๋ ค์ธ ์ ์ด ์์ต๋๋ค. ๋ฌธ์ ๋ 14๋ฒ์ธ๋ฐ์, ์ฐธ ์ด์ํ๊ฒ๋ +์ ๋ถ๋ฐฐ ๋ฒ์น์ ์ฌ์ฉํ์ต๋๋ค. ์ด๋ ์ผ๋ฐ ๋์์์๋ ์ฑ๋ฆฝํ์ง ์์ง๋ง ๋ถ ๋์์์๋ง ์ฑ๋ฆฝํ๋ ๋ด์ฉ์ ๋๋ค.
์๋์์ ๋์ฌ ๋์ผ ํผ์ผ๋ก ์ฆ๋ช ํ๋ ๊ฒ์ด ๊ฐ์ฅ ๊ฐ๋จํ์ง๋ง, ์ฐ๋ณ์ ์์ ๊ทธ๋๋ก ์ ๊ฐํด๋ณด์๋ ์ฑ๋ฆฝํ๋ค๋ ๊ฒ์ ์ ์ ์์ต๋๋ค. (x+y)ยท(x+z)=xx+xy+xz+yz์ด๊ณ , ์ด๋ ๋ค์ x(1+y+z)+yz๋ก ์ ๋ฆฌํ ์ ์๊ณ , 1+y+z=1์ด๋ฏ๋ก x+yยทz๊ฐ ๋์ด ์ฐธ์์ ํ์ธํ ์ ์์ต๋๋ค.
De Morgan Laws : ๋๋ชจ๋ฅด๊ฐ ๋ฒ์น
๐ (xยทy)'=x'+y' (x+y)'=x'ยทy'
๋ ๋ชจ๋ฅด๊ฐ ๋ฒ์น์ ์๋ง ์งํฉ์ ๊ณต๋ถํ์ จ๋ค๋ฉด ๋ค๋ค ์ต์ํ์ค ํ ๋ฐ์, ๊ทธ๊ฒ๊ณผ ๊ฐ์ต๋๋ค. ๋ ผ๋ฆฌ์ ์ ์ฒด์ ๋ถ์ ์ฐ์ฐ์ ํ ๊ฒฝ์ฐ, ๊ฐ ๋ณ์์ NOT ์ฐ์ฐ์ ํ๊ณ , AND -> OR, OR -> AND ์ฐ์ฐ์ผ๋ก ๋ฐ๊ฟ์ฃผ์ด์ผ ํฉ๋๋ค.
๋ถ์ธ๋์ (Boolean Algebra)
์์์ ํ๋ก์์ ์ผ๋ จ์ ๊ธฐ๋ฅ์ ์ํ ํ๊ธฐ ์ํ ๊ฐ์ฅ ์ต์ ์ ๋ฐฉ๋ฒ์ ๊ฒฐ์ ํ๋ ์์์ ํํ ๋ฐฉ๋ฒ
๐ก NOT(NOT(x) AND NOT(x OR y))
NOT(NOT(x) AND (NOT(x) AND NOT(y)))
๋ถ๋ฐฐ ๋ฒ์น (Distributive Laws) ์ ์ฉ๋์ด
NOT(x OR y)
โ(NOT(x) AND NOT(y)
NOT((NOT(x) AND NOT(x)) AND NOT(y))
๊ฒฐํฉ ๋ฒ์น (Associative Laws) ์ ์ํด
NOT(x) AND (NOT(x)
โ(NOT(x) AND NOT(x)
NOT(NOT(X) AND NOT(y))
๋ฉฑ๋ฑ ๋ฒ์น (Idempotence) ์ ์ํด
NOT(x) AND NOT(x)
โNOT(X)
NOT(NOT(x)) OR NOT(NOT(y))
์ด์ค ๋ถ์ ๋ฒ์น (Double Negation Law) ์ ์ํด
x OR y
๋ก ๊ฐ์ด ๋ณํ๊ฒ๋๋ค.
Boolean Functions Synthesis
ํจ์๋ก ์ด๋ฃจ์ด์ง ๋ ผ๋ฆฌ ๊ฒ์ดํธ๋ฅผ ํตํด Truth Table์ ๋ง๋ ๋ค. ์ด ๋, ๊ฐ ๊ฒฝ์ฐ์ ์๋ฅผ ์ ๋ ฅ ํ๊ณ ํจ์์ ๊ฒฐ๊ณผ ๊ฐ์ด ์ ํด์ก๋ค๋ฉด ๋น์ ์ ๋ ผ๋ฆฌ๊ฒ์ดํธ๋ฅผ ์์ฑ ํ ์ ์์ด์ผ ํ๋ค.
Hardware Description Language
HDL๋ก ํ๋ก๊ทธ๋๋ฐ์ ํ๋ฉด ์๋ฎฌ๋ ์ดํฐ๋ก ๊ตฌํ ํ ์ ์๋ค. ๊ทธ๋ ๊ฒ ํ๊ธฐ ์ํด์๋ ๋น์ ์ ๋ ผ๋ฆฌ ๊ฒ์ดํธ ๊ธฐ๋ฅ์ ์ ์ ํ๊ณ , Truth table์ ๋ง๋ค์ด input๊ณผ output์ ํํ ํด์ผํ๋ค.
๋น์ ์ด ๋ง๋ ๋ ผ๋ฆฌ๊ฒ์ดํธ์ ๋ค์ด์ด๊ทธ๋จ๊ณผ ํ๋ฅผ ๋ง๋ค๋ฉด ์ด ์นฉ์ด ์ด๋ค ์ผ์ ํด์ผ ํ๋์ง ์ดํดํ ์ ์๋ค.
HDL๋ก ํ๋ก๊ทธ๋๋ฐ์ ํ ๋ ๋ ผ๋ฆฌ ๊ฒ์ดํธ์ ๋ํ ์ด๋ฆ, input, output์ ๋ชจ๋ ์ค์ ํด์ค์ผํ๋ค. ์ด ๊ฒ์ ๊ฒ์ดํธ ์ธํฐํ์ด์ค๋ผ๊ณ ํ๋ค.
์ด๋ ๊ฒ ๋ง๋ค์ด์ง ๊ฒ์ดํธ ์ธํฐํ์ด์ค๊ฐ ๋ง์ฝ ์ ๊ตฌ์ถ ๋์๋ค๊ณ ํ๊ณ , ๋จ์๊ฒ ์ฃผ์๋ค๊ณ ๊ฐ์ ํด๋ณธ๋ค. ๊ทธ๋ฌ๋ฉด ๋ฐ๋ ์ฌ๋์ด ์ฌ์ฉ ํ ๋๋ output์ด ์ด๋ค ๊ฐ์ธ์ง๋ง ์ ์ ์๋ค. ์ง๊ธ๊น์ง ์ฐ๋ฆฌ๊ฐ ์๋ ํ ์ด๋ธ๊ณผ๋ ๋ค๋ฅด๋ฉฐ, ์ฐ๋ฆฌ๋ ๊ทธ ๊ฒ์ ๋ณด๊ณ ๋ ผ๋ฆฌ๊ฒ์ดํธ๋ฅผ ์ด๋ป๊ฒ ๊ตฌํ ํ๋์ง ์ ์ถ ํ ์ ์๋ค.
Hardware Simulation
HDL ํ๋ก๊ทธ๋จ์ ์ธ๋ถ ํ ์คํธ ํธ์ง๊ธฐ์์ ์์ฑํ ๋ ผ๋ฆฌ ๊ฒ์ดํธ ์ฝ๋๋ฅผ ๋ถ๋ฌ์ค๋ฉด output์ ๊ฐ๊ณผ ์งํ ์ํฉ ๋ฑ ์๋ฎฌ๋ ์ดํฐ๋ฅผ ํตํด ์ ์ธํ ๊ฐ์ ๋ณผ ์ ์๊ณ , ํ ์คํธ ์ฝ๋๋ฅผ ์์ฑ ํจ์ผ๋ก์จ ๊ฒฝ์ฐ์ ์๋ฅผ ๋ชจ๋ ๋๋ฒ๊น ํ๋ฏ ํ ์คํธ ํ ์ ์๋ค.
Multi-bit Buses
ํ ๊ฐ์ ๋นํธ๊ฐ ์๋, ์ฌ๋ฌ ๊ฐ์ ๋นํธ์ ์ ๊ทผ ํ๊ณ ๊ทธ ์ ๊ทผ์๋ ์ธ๋ฑ์ค๋ฅผ ํตํด ์ ๊ทผํ๊ฒ ๋๋ค. ์ด ๋ ์ธ๋ฑ์ค๋ ์ค๋ฅธ์ชฝ์์ ์ผ์ชฝ์ผ๋ก ์ ๊ทผํ๋ค. โ 15, 14, 13, โฆ 0
์ง๊ธ ๊น์ง 2๊ฐ์ ์ข ๋ฅ์ ๋ํด์ ๋ ผ๋ฆฌ ํ๋ก๋ฅผ ๊ตฌ์ฑ ํ์ง๋ง ์ด๋ ๊ฒ ๋นํธ๋ฅผ ์ด์ฉ ํ์ฌ ์ธ๊ฐ์ง ์ธํ์ด ์๋ค๋ฉด ์์ ๊ฐ์ ์ฌ์ง ์ฒ๋ผ ์ฒ๋ฆฌ ํ ์ ์๋ค.
์ฐ์ฐ ๊ณผ์ ์ a์ b์ ๋ํด ์ฐ์ ์ฐ์ฐ์ ์ฒ๋ฆฌ ํ๊ณ , ๊ทธ ๊ฒฐ๊ณผ ๊ฐ์ ์์ ๋ณ์์ ์ ์ฅํ๋ค.
์์ ๋ณ์์ ์ ์ฅ ๋ ๊ฐ์ ๋ง์ง๋ง c(third) ๊ฐ๊ณผ ์ฐ์ฐ์ ํ๋ฉฐ ์ต์ข out ๊ฐ์ ๋ฆฌํดํ๋ค.
์๋ธ ๋ฒ์ค๋ก ๋ฉํฐ ๋นํธ ๋ฒ์ค ๊ด๋ฆฌํ๊ธฐ
๋ถํ์ ์ถ๋ ฅ ๋ฒ์ค์ ์๋ธ ๋ฒ์ค ์ค๋ฒ๋ฉ ํ์ฉ๋จ
๋ด๋ถ ํ์ ๋๋น๊ฐ ์๋์ผ๋ก ์ถ๋ก ๋จ
"False" ๋ฐ "True"๋ ๋ชจ๋ ํญ์ ๋ฒ์ค๋ก ์ฌ์ฉํ ์ ์์
Project 1 Overview
์ง๊ธ๊น์ง ๋ฐฐ์ด ๊ฐ๋ ์ผ๋ก ๋ ผ๋ฆฌ ํ๋ก๋ฅผ ๊ตฌํ ํ๋ ํ๋ก์ ํธ๋ฅผ ์งํ ํ๋ ๋ฐ ์์ด ์ถ๊ฐ์ ์ผ๋ก ํ์ํ ๊ฐ๋ ์ ํ์ตํ๋ค.
๋ฉํฐํ๋ ์
๋๋ฉํฐํ๋ ์
Multiplexor
๋ฉํฐํ๋ ์๋ ๊ฒ์ดํธ์ด๋ฉฐ ์๋์ ๊ฐ์ด ์๋ํ๋ค.
name: Mux
input: a, b, sel
output: out
โ sel์ ๊ฐ์ ์ํด ์ถ๋ ฅ ๊ฐ์ด ๋ณํ๋ ํํ๋ก, sel์ด false ์ผ ๋๋ a์ ๊ฐ, true ์ผ ๋ b์ ๊ฐ์ผ๋ก ์ถ๋ ฅ
Demultiplexor
์์ mux์ ์ญ์์ด๋ฉฐ, ๋จ๋ฐฉํฅ output์ด ์๋ ๋ ๊ฐ์ ๊ฐ์ด ๋ฆฌํด๋๋ ํํ์ด๋ค.
mux์ ๋์์ ๋น์ทํ๊ฒ sel์ ๊ฐ์ ์ํด ์ถ๋ ฅ ๊ฐ์ ๊ฒฐ์ ํ๋ ํํ๋ก, 0์ผ ๋ in์ ๊ฐ, 0์ด ๋ฆฌํด ๋๊ณ 1์ผ ๋ 0, in์ ๊ฐ์ผ๋ก ๋ฆฌํด ๋์ด a, b๋ก ๊ฐ์ ํ ๋นํ๋ค.
AND 16 - bit buses
์ ๋ ฅ ๋ฐ์ 16๋นํธ์ ๊ฐ์ ์๋ก AND gate logic์ ์ํด ๊ฒฐ๊ณผ ๊ฐ์ ๋์ถ ํ๋ ๋ฐฉ์์ด๋ค.
16-bit, Multiplexor 4-way
Input
a[16]
b[16]
c[16]
d[16]
2๊ฐ์ select
Last updated