소개글
1. 32비트 ALU With CLL(carry Lookahead Logic) 설계하기
2. 테스트 벤치 작성 및 결과
3. 게이트 수와 딜레이 계산
으로 나누어져 있다.
설계 부분은 기본적으로 AND,OR,ADD,SUB,SLT(Set On Less Than) 기능을 가지는 1bit ALU의 설계를 한 후, CLL을 가지는 4bit ALU, 16bit ALU, 마지막으로 32bit ALU를 설계하였다. 기초적인 부분부터 그림을 사용하여 자세하게 작성하였다.
시뮬레이션 툴은 ModelSim을 사용하였다.
3. 게이트 수와 딜레이 계산 은 몇가지 가정 하에 계산하였고, 왜 ALU에 CLL을 사용하는지의 이유를 알 수 있다.
컴파일 실행환경
ModelSim 5.7로 컴파일 및 시뮬레이션
본문내용
이와 같이 설계한 32bit ALU의 coding은 다음과 같다.
module cla_32bit(a,b,carry,alu_op,r,carry_out,v,z);
input [31:0] a,b; //32bit 입력 a,b
input carry; //carry 비트
input [2:0] alu_op; //기능을 선택하는 3bit 입력 aluop
output [31:0] r; //32bit 결과값 r
output carry_out,v,z; //1bit 출력 carry out과 v,z
wire c1,c2;
wire x,c31;
wire set;
reg carry_i;
cla_16bit alu16_0 (a[15:0],b[15:0],carry_i,set,alu_op[2:0],c1,r[15:0]);
cla_16bit_msb alu16_1 (a[31:16],b[31:16],c1,0,alu_op[2:0],c2,r[31:16],x,c31);
//16bit ALU 모듈과 16bit ALU(MSB) 모듈
verification veri (c2,c31,x,v,set); //overflow여부와 SLT을 위한 모듈
.
.
.
.
.
압축파일 내 파일목록
32bit ALU with CLL.pdf
VerilogHDL code.zip
참고 자료
없음