게시판 즐겨찾기
편집
드래그 앤 드롭으로
즐겨찾기 아이콘 위치 수정이 가능합니다.
[verilog]시뮬레이션이 이상해서 그러는데 한번만 봐주세요
게시물ID : science_1461짧은주소 복사하기
작성자 : 시럽
추천 : 2
조회수 : 717회
댓글수 : 2개
등록시간 : 2010/06/08 15:37:12
현재 CLA 즉 캐리 예측 가산기를 설계하고 있는데...
일단 모듈까지는 다 짜보고... 다른 내용들이랑 비교해보면
맞는것 같습니다. 컴파일시 오류도 없고요

그래서 이걸 스티뮬러 통해서 확인해보려하는데... 안되네요;
뭔가 스티뮬러를 잘못잔것 같고... 뭐가 잘못된건지좀 한번 부탁드립니다;

module cla4(in_a, in_b,in_c,out_s,out_c);

input [3:0] in_a, in_b;
output [3:0] out_s;
input in_c;
output out_c;

wire [3:0] out_s;
wire c_out;
wire [3:0] g, p;
wire [3:1] c;

assign  g[3:0]=in_a[3:0] & in_b[3:0]; 
assign  p[3:0]=in_a[3:0] ^ in_b[3:0]; 
assign  c[1]=g[0] | (p[0] & in_c);
assign  c[2]=g[1] | (g[0] & p[1]) | (p[0] & p[1] & in_c);
assign  c[3]=g[2] | (g[1] & p[2]) | (g[0] & p[1] & p[2]) | (p[0] & p[1] & p[2] & in_c);
assign  c_out=g[3] | (g[2] & p[3]) | (g[1] & p[2] & p[3]) | (g[0] & p[1] & p[2] & p[3]) | (p[0] & p[1] & p[2] & p[3] & in_c);
assign  out_s[0]=p[0]^out_c;
assign  out_s[3:1]=p[3:1]^c[3:1];

endmodule

module stimulus;                                                                                
reg [3:0] a;
reg [3:0] b;
reg cin;
wire [3:0]sum;
wire carry4;                                                                         
cla4 u1(a, b, cin, sum, carry4);                                                     
                        
initial
begin                                                                     
#10 a=4'b1001;b=4'b1001;cin=1'b0;
#10 a=4'b0010;b=4'b0111;cin=1'b0;
#10 a=4'b0101;b=4'b0101;cin=1'b1;
#10 a=4'b1111;b=4'b0001;cin=1'b0;
#50 $finish;
end

endmodule
전체 추천리스트 보기
새로운 댓글이 없습니다.
새로운 댓글 확인하기
글쓰기
◀뒤로가기
PC버전
맨위로▲
공지 운영 자료창고 청소년보호