搜索
bottom↓
回复: 28

两块FPGA长距离通信如何保持两者之前的CLK信号不衰减

[复制链接]

出100入0汤圆

发表于 2022-7-16 20:55:22 | 显示全部楼层 |阅读模式
如题,想做两块FPGA长距离通信,距离可能有1.5M,FPGA之间通过自建频率的SPI模式,担心距离长,两者的CLK信号衰减,请问有什么方法防止信号减弱?谢谢、

阿莫论坛20周年了!感谢大家的支持与爱护!!

月入3000的是反美的。收入3万是亲美的。收入30万是移民美国的。收入300万是取得绿卡后回国,教唆那些3000来反美的!

出0入8汤圆

发表于 2022-7-16 21:06:00 | 显示全部楼层
改成lvds信号传输

出100入0汤圆

 楼主| 发表于 2022-7-16 21:31:04 | 显示全部楼层
prow 发表于 2022-7-16 21:06
改成lvds信号传输
(引用自2楼)

数据线是用LVDS转换芯片,CLK就是不敢肯定,是否可以。你用过吗?

出0入8汤圆

发表于 2022-7-16 21:41:20 | 显示全部楼层
jsh560 发表于 2022-7-16 21:31
数据线是用LVDS转换芯片,CLK就是不敢肯定,是否可以。你用过吗?
(引用自3楼)

肯定可以啊,经常这么用,用LVDS传图像,标准协议(Camera Link)或非标自定协议

出100入0汤圆

 楼主| 发表于 2022-7-16 22:03:06 | 显示全部楼层
prow 发表于 2022-7-16 21:41
肯定可以啊,经常这么用,用LVDS传图像,标准协议(Camera Link)或非标自定协议 ...
(引用自4楼)

还有个疑问没解决,FPGA之间的CLK信号是双向的,这个用LVDS如何实现? 我所用的DS90LV047ATM,DS90LV048ATM是单向的,兄弟有没有什么法可以借鉴吗?谢谢

出0入8汤圆

发表于 2022-7-16 22:08:50 | 显示全部楼层
jsh560 发表于 2022-7-16 22:03
还有个疑问没解决,FPGA之间的CLK信号是双向的,这个用LVDS如何实现? 我所用的DS90LV047ATM,DS90LV048A ...
(引用自5楼)


CLK怎么能是双向的呢?肯定是单向的啊
你SPI通信的时候主机和从机都产生时钟?

出100入0汤圆

 楼主| 发表于 2022-7-16 22:12:13 | 显示全部楼层
prow 发表于 2022-7-16 22:08
CLK怎么能是双向的呢?肯定是单向的啊
你SPI通信的时候主机和从机都产生时钟?
...
(引用自6楼)

是的,这样可以吗?主从机各自产生时钟。作为发送数据方(主机)产生时钟。

出200入657汤圆

发表于 2022-7-16 22:16:59 | 显示全部楼层
你的spi频率有多高?比特率有过高?若只有几MHz,那么洗洗睡了,不要担心什么衰减了

若担心信号完整性,那么做好阻抗匹配就OK

出0入8汤圆

发表于 2022-7-16 22:23:33 | 显示全部楼层
jsh560 发表于 2022-7-16 22:12
是的,这样可以吗?主从机各自产生时钟。作为发送数据方(主机)产生时钟。 ...
(引用自7楼)

也可以,当成两个单向SPI,一共两组时钟、数据、使能信号,两个fpga各为主机

出100入0汤圆

 楼主| 发表于 2022-7-16 22:25:31 | 显示全部楼层
ziruo2002ab 发表于 2022-7-16 22:16
你的spi频率有多高?比特率有过高?若只有几MHz,那么洗洗睡了,不要担心什么衰减了

若担心信号完整性,那 ...
(引用自8楼)

“若只有几MHz,那么洗洗睡了,不要担心什么衰减了” 哦哦 你的意思是直连? 谢谢了 晚安。

出100入0汤圆

 楼主| 发表于 2022-7-16 22:29:16 | 显示全部楼层
prow 发表于 2022-7-16 22:23
也可以,当成两个单向SPI,一共两组时钟、数据、使能信号,两个fpga各为主机 ...
(引用自9楼)

“”一共两组时钟、数据、使能信号,两个fpga各为主机” 设想是两块FPGA轮流替换成主从,从主机模式,  数据线12条共用inout模式, 使能信号两条,作为输入输出使能, 时钟信号共用一根,现在就卡在时钟线的实现上。

出200入657汤圆

发表于 2022-7-16 22:33:52 | 显示全部楼层
jsh560 发表于 2022-7-16 22:25
“若只有几MHz,那么洗洗睡了,不要担心什么衰减了” 哦哦 你的意思是直连? 谢谢了 晚安。 ...
(引用自10楼)

在100MHz rg58的同轴线衰减大概是16dB,换算成1.5米,大概是0.2dB,换成电压衰减是2%的衰减,担心个啥

所以,pcb布板更要担心信号反射,也就是所谓的信号完整性

如果你所用的是常规spi,串个10MHz级别的clock,那根本不考虑衰减

相反,信号完整性:1.5米,大概是8ns,如果信号完整性没有做好,来回震荡个5、6次,那么就是50ns了,严重影响数字信号的传输

出0入8汤圆

发表于 2022-7-16 22:37:32 | 显示全部楼层
jsh560 发表于 2022-7-16 22:29
“”一共两组时钟、数据、使能信号,两个fpga各为主机” 设想是两块FPGA轮流替换成主从,从主机模式,   ...
(引用自11楼)

没搞懂你的需求,FPGA1的时钟、数据、使能信号能实现向FPGA2的单向通信;FPGA2的时钟、数据、使能信号能实现向FPGA1的单向通信
2组信号就能让两个fpga双向通信,为什么还要设置成inout呢

出100入0汤圆

 楼主| 发表于 2022-7-16 22:38:26 | 显示全部楼层
ziruo2002ab 发表于 2022-7-16 22:33
在100MHz rg58的同轴线衰减大概是16dB,换算成1.5米,大概是0.2dB,换成电压衰减是2%的衰减,担心个啥

...
(引用自12楼)

好的 ,虽然“100MHz rg58的同轴线衰减大概是16dB,换算成1.5米,大概是0.2dB,换成电压衰减是2%的衰减”这个我不懂,但在你们专家的指点分析下,我就放心了,谢谢。5个汤圆感谢

出100入0汤圆

 楼主| 发表于 2022-7-16 22:43:31 | 显示全部楼层
prow 发表于 2022-7-16 22:37
没搞懂你的需求,FPGA1的时钟、数据、使能信号能实现向FPGA2的单向通信;FPGA2的时钟、数据、使能信号能 ...
(引用自13楼)

为了节省12条芯片管脚资源,一主一从,FPGA1作为主机,clk由它产生,产生数据输出使能,FPGA2捕获到输入数据使能就作为从机接收信号。 FPGA2作为主机时以同样的方式发送数据,  FPGA1作为从机接收数据。

出0入8汤圆

发表于 2022-7-16 22:52:48 | 显示全部楼层
jsh560 发表于 2022-7-16 22:43
为了节省12条芯片管脚资源,一主一从,FPGA1作为主机,clk由它产生,产生数据输出使能,FPGA2捕获到输入 ...
(引用自15楼)


时钟可以只由fpga1单向输出,但两个fpga在接收的时候可能需要做些延迟调整

出100入0汤圆

 楼主| 发表于 2022-7-16 22:57:07 | 显示全部楼层
prow 发表于 2022-7-16 22:52
时钟可以只由fpga1单向输出,但两个fpga在接收的时候可能需要做些延迟调整 ...
(引用自16楼)

“但两个fpga在接收的时候可能需要做些延迟调整”这个没做过 不了解,有没有网上资料可以借鉴的 谢谢

出200入657汤圆

发表于 2022-7-16 22:59:01 | 显示全部楼层
jsh560 发表于 2022-7-16 22:38
好的 ,虽然“100MHz rg58的同轴线衰减大概是16dB,换算成1.5米,大概是0.2dB,换成电压衰减是2%的衰减” ...
(引用自14楼)


事情没那么简单。 1.5米寄生电容大概是200pF,如果是10mA的驱动,那么rise要66ns,显然太长了。不止要考虑衰减,还要考虑普通io口的驱动能力。

楼主的应用我理解是什么意思了

这么操作:
fpga1 到fpga2
fpga1 clk1 ttl ->clk1 lvds            -------------------------->   lvds -> ttl fpga2
             data1->data1 lvds
fpga1发送到fpga2的数据以锁存方式存储到fpga2,这样只需要一根clk一根data就全部解决问题,不需要并行口

一般spi速率很低,ttl速率达到100MHz近距离没有问题,整个线的瓶颈受限于ttl那个位置,那么这个spi传输100Mbps没有问题

除非你传输视频信号,那么每根data没有办法,只能用并行lvds

出100入0汤圆

 楼主| 发表于 2022-7-16 23:06:01 | 显示全部楼层
ziruo2002ab 发表于 2022-7-16 22:59
事情没那么简单。 1.5米寄生电容大概是200pF,如果是10mA的驱动,那么rise要66ns,显然太长了。不止要考 ...
(引用自18楼)

"事情没那么简单。 1.5米寄生电容大概是200pF,如果是10mA的驱动,那么rise要66ns,显然太长了。不止要考虑衰减,还要考虑普通io口的驱动能力。" 先前就是考虑驱动能力,想过用LVC245做TTL转换。提高驱动能力,但这样方案就复杂了。成本增加了。

出0入8汤圆

发表于 2022-7-16 23:10:37 | 显示全部楼层
jsh560 发表于 2022-7-16 22:57
“但两个fpga在接收的时候可能需要做些延迟调整”这个没做过 不了解,有没有网上资料可以借鉴的 谢谢 ...
(引用自17楼)

啊,这。。。搞fpga的怎么能不知道信号调整时序呢
比如你程序里用到各种posedge,为什么能这么用呢?那是因为你用这个时钟采样的信号满足建立时间、保持时间,但如果信号与时钟的相位关系不满足建立时间、保持时间怎么办呢,你就不能简单的用posedge来采样,这样采样出来的也是错的。
调整时钟和信号相位关系的方法有很多,比如可以添加引脚或信号的约束影响布线来改变延时;高速串行lvds还可以用iodelay调整延时;mmcm能调整时钟相位等等

出100入0汤圆

 楼主| 发表于 2022-7-16 23:14:58 | 显示全部楼层
prow 发表于 2022-7-16 23:10
啊,这。。。搞fpga的怎么能不知道信号调整时序呢
比如你程序里用到各种posedge,为什么能这么用呢?那是 ...
(引用自20楼)

谢谢兄弟抬举(我不是专门从事FPGA的),方便私下认识你吗? 向你请教下这个知识,FPGA只是我自学了半年,然后就自己用ARM+FPGA DIY了一个DDS, 作为兴趣爱好,本着学习目的,这是自己想的一个方案,想做PLX9054+FPGA做PC与多个下位机通信的。 方便留个你的联系方式吗?谢谢

出0入8汤圆

发表于 2022-7-16 23:18:27 | 显示全部楼层
jsh560 发表于 2022-7-16 23:14
谢谢兄弟抬举(我不是专门从事FPGA的),方便私下认识你吗? 向你请教下这个知识,FPGA只是我自学了半年 ...
(引用自21楼)

有问题发论坛就好了,论坛的大神都会回帖的
我都四五年没写FPGA程序了,FPGA都让同事来搞,太细了问我也白费

出100入0汤圆

 楼主| 发表于 2022-7-16 23:27:03 | 显示全部楼层
prow 发表于 2022-7-16 23:18
有问题发论坛就好了,论坛的大神都会回帖的
我都四五年没写FPGA程序了,FPGA都让同事来搞,太细了问我也 ...
(引用自22楼)

好的,谢谢

出0入618汤圆

发表于 2022-7-16 23:53:01 | 显示全部楼层
SPI本来就是单主多从总线,为什么非要两个FPGA都做主模式呢?

FPGA1做主机,FPGA2做从机,增加一个FPGA2 -> FPGA1的DRQ信号,当FPGA2需要主动往FPGA1发数据的时候拉低DRQ,FPGA1就开始发时钟读数据不就行了。

出0入442汤圆

发表于 2022-7-17 08:12:41 来自手机 | 显示全部楼层
gzhuli 发表于 2022-7-16 23:53
SPI本来就是单主多从总线,为什么非要两个FPGA都做主模式呢?

FPGA1做主机,FPGA2做从机,增加一个FPGA2 - ...

(引用自24楼)

线太长,一端喂时钟另一段返回的信号会出问题。lz这应用必须lvds,否则走不了几mhz。

出0入4汤圆

发表于 2022-7-17 15:34:12 | 显示全部楼层
直接单线通信,不要带时钟,不然时序问题搞死人

出100入0汤圆

 楼主| 发表于 2022-7-17 17:12:05 | 显示全部楼层
chxzh123 发表于 2022-7-17 15:34
直接单线通信,不要带时钟,不然时序问题搞死人
(引用自26楼)

不带时钟怎么通信? 没搞过 你做过吗?

出0入618汤圆

发表于 2022-7-17 17:56:51 | 显示全部楼层
wye11083 发表于 2022-7-17 08:12
线太长,一端喂时钟另一段返回的信号会出问题。lz这应用必须lvds,否则走不了几mhz。 ...
(引用自25楼)

那就根本不是SPI了嘛,只能说是带时钟的同步串口(SSI)。

出0入4汤圆

发表于 2022-7-21 14:49:41 | 显示全部楼层
jsh560 发表于 2022-7-17 17:12
不带时钟怎么通信? 没搞过 你做过吗?
(引用自27楼)

fpga单线通信,两边异步时钟采样,近距离跑50M,远距离跑25Mbit速率完全没有问题的。我们项目都是这么搞
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-4-24 02:56

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表