一个fpga产生的输入信号传给多个fpga 这些fpga都为输入 要保证这些输入同步。由于信号传输时经过缆线会有延时 如何在软件上(不用示波器)确定延时的具体大小 ?如何使输入信号同步输入?
你可以阅读下关于FPGA 管脚约束的文档
一般组合逻辑下这些延约束很麻烦,组合逻辑下也很难实现高速逻辑。
一般用同步方式去处理,比如一个总线是由一个时钟和8个数据线组成,要求这8个数据线输入同步。
这可以用简单的管脚约束就能实现这8个数据线同步到达FPGA内部的逻辑。
比如可以这么约束
##pclk 100MHz
create_clock -period 10.0 -name pclk [get_ports pclk]
set_input_delay -clock [get_clocks pclk] -add_delay 0.000 [get_ports dat[*]]
fpga的io时序参数应该是可以找到的,每条传输线延时只能估计个大概,去做io约束,反正绝对同步挺难的。所以,为啥要这么实现这个系统呢?
看你连接两个fpga板卡的方式,比如杜邦线,性能就比较差,如果是插槽的那种就比较好(水平问题,不知道这种怎么称呼),像杜邦线,就应该有技术参数,里面就应该会有延时参数,至于同步,就是通常意义上的同步,输入端定义两个寄存,同步打拍,基本上就能使用了。