본문 바로가기

Nand2Tetris(Couesera)

Nand2Tetris - Boolean Functions and Gate Logic


코세라(Couesera)를 통한 Nand2Tetris의 첫번째 주 강의이다 

Boolean Function(불린 함수)와 Gate logic에 대해 배운다


Unit 1.1 : Boolean logic(불 논리)

Boolean Values 

: On/off, True/False, Yes/No, 1/0


Boolean Operations

: x  AND  y                     x  OR  y

  0         0 = 0                   0       0 = 0

  0         1 = 0                   0       1 = 1 

  1         0 = 0                   1       0 = 1

  1         1 = 1                   1       1 = 1


Boolean Identities

교환법칙 :                            (x AND y) = (y AND x)

(Commutative Laws)     (x OR y) = (y OR x)


결합법칙 :                            (x AND (y AND z)) = ((x AND y) AND z)

(Associative Laws)         (x OR (y OR z)) = ((x OR y) OR z)


분배법칙 :                             (x AND (y OR z)) = (x AND y) OR (x AND z)

(Distributive Laws)        (x OR (y AND z)) = (x OR y) AND (x OR z)


드모르간법칙 :                   NOT(x AND y) = NOT(x) OR NOT(y)

(De Morgan Laws)        NOT(x) AND NOT(y)


Boolean Algebra(불 대수)

                                         NOT(NOT(x) AND NOT(x OR y)) = 

De Morgan Laws    >  NOT(NOT(x) AND (NOT(x) AND NOT(y))) 

Associative Laws     >  NOT((NOT(x) AND NOT(x)) AND NOT(y)) 

Idempotence Laws  >  NOT(NOT(x) AND NOT(y)) 

Double Negation    >  x OR y


Unit 1.2 Boolean functions synthesis(불린 함수 합치기?)

어떤 불린함수들이라도 AND와 NOT operations을 사용해서 표현될 수 있다. 

Ex. 드모르간법칙


어떤 불린함수들이라도 오직 NAND operations를 사용해서 표현될 수 있다.

Ex. NOT(x) = (x NAND x)

    (x AND y) = NOT(x NAND y)


Unit 1.3 Logic Gates

불린 함수들을 이행하기 위한 기술들이 Logic Gates이다.

기본논리회로 (Nand, And, Or, Not, .... )

조합논리회로 (Mux, Adder, ....)

Nand : if(a==1 and ==1) then out =0 , else out = 1


Unit 1.4 Hardware Description Language

HDL은 기능적, 선언형 언어이다.

HDL 명령문의 순서는 중요하지 않다.

chip part를 사용하기전에 Interface에 대해 반드시 알아야한다. (Ex. NOT(in=, out=), AND(a=, b=, out=), OR(a=, b=, out=)

partName(a=a, ...) 그리고 partName(..., out=out) 의 사이는 일반적이다.


Unit 1.6 Multi-Bit Buses

Array of Bits 

- 비트의 배열을 같이 조작해야 될 때가 있다. 이런 경우 bit의 집합을 "Bus"라는 용어인 하나의 독립체로 생각하는게 쉽다.

- HDL은 buses들을 조작하기 위해 편리한 표기법을 항상 제공한다.

- Bus들은 sub-buses들로 구성될 수 있다.




'Nand2Tetris(Couesera)' 카테고리의 다른 글

Nand2Tetris 강의를 시작하다  (0) 2018.10.21