설계"CPLD의

M

MRFGUY

Guest
난 그냥 Verilog를 사용하여 bcd 카운터 (00으로 66)를 설계하십시오.제대로 자일링스와 테스트 벤치 파형을 보여 Verilog 코드를 써주세요.그럼 난 xc9572 CPLD의 다운로드하려고합니다.다운로드 후, 내가 00 66 처음부터 카운트를 시작에서 테스트하려고합니다.그럼 다시 08 (대신 다시 00)와 나중에 카운터를 보여 08-66 유일한 것.00부터 07은 그냥 사라지지는 1 루프했다.

여기 내 프로그램입니다 :

모듈을 포함 (,, qx, qy TTL) vc;
입력 조인트 벤처 TTL;
출력 [3시] qx, qy;

선 A와 B는 C, D 조, 대답, 지하 1 층,에 C1, D1에;
와이어 reseta, resetc;

할당 resetc = ((식사와 침대 & C는) & (지하 1 층 &에 C1));
reseta 할당 = ((나 & D에) | ((식사와 침대 & C는) & (지하 1 층 &에 C1)));

ls7493 x1 (, reseta, TTL reseta, vc A와 B는 C, D 조);
ls7493 × 2 (조인트 벤처 개발, resetc, resetc, 대답, 지하 1 층,에 C1, D1에);

qx 할당 = (D 조, C 조, B는);
할당 qy = (D1에,에 C1, 지하 1 층, 대답);
endmodule
---------
모듈 ls7493 (VCC는, 금주 모임, reset0, reset1, 품질 보증, 쿼터백, 품질 관리, QD는);

입력 금주 모임, reset0, reset1, VCC는;
출력 품질, 쿼터백, 품질 관리, QD는;
와이어 품질, 쿼터백, 품질 관리, QD는;

reg 재설정;
항상 @ (reset0 또는 reset1)
시작
리셋 = reset0 & reset1;

FF로 (VCC는, 재설정, 금주 모임, 품질 보증);
FF로 B 조 (VCC는, 재설정, 품질 보증, 쿼터백);
FF로 C (VCC는, 재설정, 쿼터백, 품질 관리);
FF로 D 조 (VCC는, 재설정, 품질 관리, QD는);

endmodule
-------
모듈 FF로 (, in_t, output_t 세 계 최 초의) 마;

입력 T는, 세 계 최 초의, in_t;
출력 output_t;

reg output_t;

초기 output_t = 1;
(negedge in_t 또는 posedge 세 계 최 초의)은 항상 @
시작
(세 계 최 초의 == 1)
output_t "= 0;
다른 경우 (마 == 0)
output_t "= in_t;
그 밖의
output_t "= ~ output_t;


endmodule

 
대신 그 무서운 비동기 카운터 리셋을 사용하여, 당신은 유일한 동기식 카운터를 사용하여 디자인해야합니다.

여기 두 자릿수 동기식 BCD 카운터이다 66 카운트는 00에서 다시 00 :
코드 :

모듈 가기 (CLK, bcd);

입력 CLK;

출력 reg [7시] = 0 bcd;항상 (posedge CLK) @

bcd "= bcd == 8'h66?
0 : bcd [3시] == 9?
bcd 7 : bcd 1;

endmodule
 
안녕,
내가 echo47 동의; 통해 UR asynch 문제를 재설정하고 리플 카운터입니다.
통해 UR 회로와 함께 비동기 리셋 펄스 폭 문제는되지 않습니다
[3] 플립 플롭 qxx 재설정 충분합니다.qxx [3] qxx로 [2]되면부터 재설정되면 CLK
1 - "0 그것을 무시하고 다시 설정되면!그래서 결과를 통해 UR지고!
희망이 좀 나아 통해 UR 구현을 이해하는 데 도움!

 
그래, 난 너무 echo47 함께 동의합니다.Behavor sysnthesisable 귀하의 디자인을 간단하게 설명합니다.

 

Welcome to EDABoard.com

Sponsor

Back
Top