'베릴로그덧셈기'에 해당되는 글 1건

  1. 2020.12.30 [베릴로그] EP.2 1-bit Full Adder 만들기

(Adder에 관한 이론적인 설명은 논리회로 카테고리에 추후 추가하겠다)

 

Adder는 기본적으로 carry와 sum 이 out값으로 발생하게 된다.

그러므로 설계를 하기 전 1-bit Full Adder의 carry와 sum에 대해 truth table을 살펴보면 다음과 같다.

 

For sum 

Cin / AB 00 01 11 10
0   1   1
1 1   1  

S = A'B'Cin + A'BCin' + ABCin + AB'Cin'

으로 나타낼 수 있다.

 

For carry out

Cin / AB 00 01 11 10
0     1  
1   1 1 1

Cout = AB + BCin + ACin 

으로 나타낼 수 있다.

 

이를 가지고 Dataflow style 로 1-bit Full Adder를 설계하면 다음과 같이 쓸 수 있다.

 

assign  다음에 위에서 나타낸 sum 과 carryout을 게이트를 이용하여 나타낸 것을 볼 수 있다.

 

이를 case문을 활용해서도 1-bit Full Adder를 설계할 수 있다.

 

위와 마찬가지로 입출력은 동일하지만 이번에는 assign문이 아닌 case 문을 활용하여 나타낸 것을 볼 수 있다.

case 안에 넣어준 입력 차례대로 ci a b 가 각각의 비트일 때 co와 s 가 어떤 비트를 가지는지를 하나하나 케이스별로 쓴 것이다.

 

또한 이는 베릴로그의 concatenation 문법을 사용하여 다음과 같이도 설계할 수 있다.

이렇게 1-bit Full Adder를 design 할 때도 여러 방법을 사용할 수 있다.

 

Posted by 이지원
,