完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
|
问题来源于2个模块之间需要传递数据,模块A负责每个时钟产生5bit并行数据,模块B(工作时钟是A的5倍)负责将接收的该数据以模块A的时钟频率的5倍串行发送出去,我的想法是用一个模5的加一计数器,作为发送数据的节拍,比如:计数0的时候发送数据的0位,计数1的时候发送数据的1位……计数4的时候发送数据的4位。 |
|
相关推荐
4个回答
|
|
|
//------假定A/B两个模块都是你开发的
a.A的数据输出端口添加一个数据有效信号data_valid,它与data_out[4:0]是对齐的。这样后面的模块可以随时检测数据是否有效。 b.B的计数0是初始状态,1~5分别发送数据的0~4位。建议输出也有一个q_valid信号。 //------假定只有B模块是你开发的 a.打开百度,直接搜“verilog的串并转换”。 b.要求A模块返工,添加数据有效信号data_valid。 |
|
|
|
|
|
两个思路
1. 将A模块的主时钟换成clk5x,然后5个数产生一个数据供给B模块使用 2. 如果A模块必须使用clk,则需要考虑一下跨时钟域的问题,中间可以加一级fifo,clk写clk5x读,这样写测可以一直写,读测5个时钟读一次,再进行并转串的操作就可以了 |
|
|
|
|
|
|
|
|
|
|
|
你们可以约定帧头
|
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
NVMe高速传输之摆脱XDMA设计50:主要功能测试结果与分析2 nvmePCIe高速存储
252 浏览 0 评论
NVMe高速传输之摆脱XDMA设计49:主要功能测试结果与分析1
1501 浏览 0 评论
907 浏览 0 评论
855 浏览 0 评论
658 浏览 0 评论
4426 浏览 63 评论
/9
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-12-2 03:59 , Processed in 0.864847 second(s), Total 76, Slave 59 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191

淘帖
894