完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
我正在设计一个同步的FIFO接口与FX3超高速探索者工具包的设计。但是,我在延迟问题上有问题。
我的应用程序将36字节指令发送到FPGA上的2048字节FIFO;从FIFO接口从100 MHz读取FX3,并将数据写入FIFO,但FPGA在0.5 MHz FPGA时钟的每个时钟周期中读取一条指令。在一些处理之后,FPGA根据我的FPGA上的0.5 MHz时钟,以“时间戳”的形式发送结果,因此我可以看到当FPGA收到指令时。我用奴隶FIFO接口与我的主机进行通信,这是一个带有USB 2的漫游四核单板计算机Runnig-Ubuntu 14.04。连接。 我试图减少从我的主机发送指令到FX3的延迟,因为FPGA从FX3接收数据不够快。在我的FX3实现中,我有45个2048字节的DMA缓冲器要由FPGA读取。由于指令的大小,我同时发送指令块,用2016字节的数据填充缓冲区。然而,当测试时,我发现当在DMA缓冲器之间切换时,存在显著的延迟100毫秒。从一个DMA缓冲器末尾的最后一次指令到下一个DMA缓冲器开始时的第一个指令的时间,根据结果,即使它们间隔7个时钟周期,结果表明它们被分开1000个周期。 我试着把延迟降低到微秒。我尝试切换到DMA自动配置,将端点改为中断端点,而不是批量端点,但我似乎无法降低延迟。我使用LIUBBB使用异步数据传输从我的漫游板发送数据,但是我还能做些什么来减少延迟呢?我是不是刚好碰到USB 2传输的局限性?我不能将突发传输增加到1以上,但是还有什么可以减少延迟呢? |
|
相关推荐
2个回答
|
|
|
|
|
|
对迟到的回应表示歉意。我把信号探针放在MYFPGA上,并且测量了一个传输结束和另一个传输的开始之间的时间差,基于当FX3读取的DMA信道专用标记变高的时候。我把一个传输结束和下一个开始之间的差值,我测量了基于采样时钟的延迟。我正在为每个包执行单独的LIPSBB传输,所以一个LIUBSB传输保持36个字节,而下一个保持36字节。 |
|
|
|
只有小组成员才能发言,加入小组>>
754个成员聚集在这个小组
加入小组2105 浏览 1 评论
1851 浏览 1 评论
3669 浏览 1 评论
请问可以直接使用来自FX2LP固件的端点向主机FIFO写入数据吗?
1786 浏览 6 评论
1536 浏览 1 评论
CY8C4025LQI在程序中调用函数,通过示波器观察SCL引脚波形,无法将pin0.4(SCL)下拉是什么原因导致?
570浏览 2评论
CYUSB3065焊接到USB3.0 TYPE-B口的焊接触点就无法使用是什么原因导致的?
423浏览 2评论
CX3连接Camera修改分辨率之后,播放器无法播出camera的画面怎么解决?
437浏览 2评论
384浏览 2评论
使用stm32+cyw43438 wifi驱动whd,WHD驱动固件加载失败的原因?
915浏览 2评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-24 00:00 , Processed in 1.274015 second(s), Total 79, Slave 63 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号