펄스의 경우 펄스 싱크로 나이저를 사용하고 레벨 신호의 경우 2- 플롭 싱크로 나이저를 사용하지만 신호가 펄스 또는 레벨 동작이 될 수있는 경우에는 어떻게해야합니까? 거기에 어떤 방법으로 동기화 할 수 있습니까?펄스 및 레벨 신호를위한 클록 도메인 크로싱
1
A
답변
0
예, 해결책은 출력 클럭을 기준으로 입력 펄스의 너비를 기반으로해야합니다.
출력 클럭이 매우 느리고 펄스가있는 경우 입력 클럭 도메인에서 작동하는 인라인 펄스 스트레서를 추가해야합니다. 스트레치는 아래의 stretch_out의 비트 폭으로 정의되며 "반드시"는 출력 clk 도메인에서 1 클럭보다 커야합니다.
reg [3:0] stretch_out;
always @ (posedge inclk)
begin
stretch_out <= in_signal ? 4'b1111 : {stretch_out[2:0],1'b0};
end
이제는 double flop synchronizer를 사용할 수 있습니다.
reg [1:0] out_sync;
always @ (posedge outclk)
begin
out_sync <= {out_sync[0],stretch_out[3]};
end
이렇게하면 빠른 도메인의 속도와 펄스를 느린 도메인으로 동기화해야합니다.
유일한 문제는 일반적인 두 개의 플롭 대기 시간 이상을 추가하는 것입니다.
0
대상 도메인의 신호를 사용하여 비동기 적으로 설정하고, 이중 플립을 사용하여 동기화 한 다음 상승 에지를 감지 할 수 있습니다. 짧은 펄스와 긴 레벨 모두에서 작동해야합니다.
// Prevent DRC violations if using scan
wire in_signal_n = scan_mode ? 1'b1 : !signal_in;
// Following code creates a flop with both async setb and resetb
reg sig_n_async;
always @ (posedge outclk or negedge reset_n or negedge in_signal_n)
if (!reset_n)
sig_n_async <= 0;
else if (!in_signal_n)
sig_n_async <= 1;
else
sig_n_async <= 0;
// Synchronizer
reg [1:0] out_sync;
always @ (posedge outclk or negedge reset_n)
if (!reset_n)
out_sync <= 0;
else
out_sync <= {out_sync[0],sig_n_async};
// Rising edge
reg out_sync_del;
always @ (posedge outclk or negedge reset_n)
if (!reset_n)
out_sync_del <= 0;
else
out_sync_del <= out_sync[1];
wire signal_out = out_sync[1] & !out_sync_del;
관련 문제
- 1. 클록 펄스 측정이란 무엇입니까?
- 2. 클록 펄스 (C 코드)를 생성/출력하십시오.
- 3. 클록 이해
- 4. C# : 펄스 및 대기
- 5. 세 번째 레벨 도메인
- 6. 멀티 레벨 도메인 SSL 보호
- 7. 레일의 멀티 레벨 서브 도메인
- 8. Facebook 앱이있는 Muti 레벨 도메인
- 9. 가운데 플립 클록 및 흰색 텍스트 변경
- 10. 다중 레벨 상호 도메인 iframe에서 최상위 레벨 윈도우의 URL 결정
- 11. 레벨 이전 및 이후 레벨
- 12. 클록 프로 캐시 교체
- 13. 십진수로 VHDL 클록 나누기
- 14. 자바 워드 클록
- 15. 오라클 딥 클록
- 16. I2C 슬레이브 클록 스트레칭
- 17. Android에서 오토 클록
- 18. iOS 펄스 및 대기 스레딩에 해당합니다.
- 19. 신호의 제로 크로싱 속도를 계산하는 방법은 무엇입니까?
- 20. C : URL의 세 번째 레벨 도메인 감지
- 21. 센터에서 시작하는 펄스
- 22. 클록 키트의 복잡한 이미지로 작업하기
- 23. 펄스 오디오와 Dbus 접촉
- 24. jQuery로 펄스 효과
- 25. 역 펄스 효과
- 26. css3 펄스 효과 지연
- 27. 반복 펄스 애니메이션
- 28. UIBezierPath 펄스 애니메이션
- 29. 하프 사인파 펄스 형성
- 30. Arduino - 인터럽트없이 카운트 펄스