Full Adder
- 최초 등록일
- 2010.10.09
- 최종 저작일
- 2010.10
- 7페이지/ 한컴오피스
- 가격 1,000원
소개글
Full Adder
목차
Ⅰ. Full Adder Source Code 분석
Ⅱ. 4bit Ripple Carry Adder Source Code 분석
Ⅲ. Test Bench Source Code 분석
Ⅳ. Waveform 분석
Ⅴ. 종합적 분석
본문내용
Ⅰ. Full Adder Source code 분석
Full adder는 크게 두부분으로 나눠져 있다. Summation을 담당하는 부분과 자리올림수를 연산하는 carry부분으로 나눌 수 있다. 덧셈연산을 담당하는 부분은 XOR게이트 두 개로 구성할 수 있다. 입력신호는 a, b, c_in으로 구성되어 있다. 우선 a, b신호를 연산한 다음 그 결과값을 c_in 신호와 연산하는 구조로 되어있다. Carry out연산도 덧셈연산과 마찬가지로 a, b, c_in의 input으로 구성되어 있다. 이를 각각 or/and 연산한 결과값을 c_in bit와 and연산하고 최종적으로 or연산을 하면 carry out신호가 발생한다. 자리올림수는 밑의 ripple carry adder의 자리 수에 따라 결정된다. 예를 들어 2bit input RCA인 경우 11을 넘어가는 연산에는 00의 sum값과 1의 carry out신호를 갖는다.
Ⅱ. 4bit Ripple Carry Adder Source code 분석
4bit연산을 하는 것이 이 프로젝트의 과제이므로 input과 output을 4비트로 설정한다. 그리고 4개의 full adder를 사용하는데 각각의 연산에서 발생된 carry bit를 다음 FA로 전달하는 wire가 필요하다. 그래서 source code 초반부에는 이러한 것들을 설정한다. 그 다음 본격적인 ripple carry adder연산을 위한 설계를 한다. 4bit 연산을 수행해야 하므로 4개의 FA를 구비한 다음 각각의 해당하는 자리수에 연산을 한다. 여기서 주목해야 할 점은 첫 번째 FA와 4번째 FA이다. 첫 번째 FA같은 경우 carry를 입력 받는 곳이 없으므로 초기치를 0으로 설정해야한다. 그렇지 않으면 그 값이 어떻게 될지 몰라 연산 오류의 빌미가 될 수 있다. 4번째 FA같은 경우 carry가 최종으로 출력되는 값이므로 여기서 발생하는 carry bit는 출력값으로 인식해 waveform이나 text파일에서 체크할 필요가 있다.
참고 자료
없음