您当前的位置: 首页 > 

FPGA硅农

暂无认证

  • 5浏览

    0关注

    277博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

跨时钟域处理(四)----脉冲展宽同步

FPGA硅农 发布时间:2022-03-08 11:18:32 ,浏览量:5

我们知道,在单比特信号的跨时钟域传输时,如果是从慢时钟域到快时钟域,那么我们可以采用打两拍的方式。然而,这个方法在快时钟域传输到慢时钟域时并不可行,因为如果快时钟域的该信号的宽度小于慢时钟的周期,那么慢时钟很可能无法采样到,如下图所示: 在这里插入图片描述 为了解决这个问题,一个自然的想法就是将signal_a信号展宽,保证能被慢时钟域采样到,具体的方法是:每当快时钟域clka检测到Signal_a脉冲信号为高时,让wide_a信号取反,使得Signal_a的第一个脉冲变为wide_a信号的上升沿,Signal_a的第二个脉变为wide_a信号的下降沿。这样就使快速时钟域clka的脉冲信号Signal_a展宽之后在慢速时钟域clkb中能够被采集到。在接收方,慢时钟将wide_a打两拍同步到慢速时钟域clkb,再通过双边缘检测将wide_b2转换为脉冲信号。 整个过程如下图所示: 在这里插入图片描述 RTL代码实现: 发送端:

`timescale 1ns / 1ps
//
// Company: 
// Engineer: 
// 
// Create Date: 2022/03/08 10:38:57
// Design Name: 
// Module Name: ont_bit_sync
// Project Name: 
// Target Devices: 
// Tool Versions: 
// Description: 
// 
// Dependencies: 
// 
// Revision:
// Revision 0.01 - File Created
// Additional Comments:
// 
//


module ont_bit_sync(
input logic clka,
input logic rst,
input logic pluse_a,
output logic wide_a
    );
always@(posedge clka,posedge rst)
if(rst)
    wide_a            
关注
打赏
1656680865
查看更多评论
0.4558s