打印

如何用一片RAM实现收发的两个fifo

[复制链接]
2971|6
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
hujnn|  楼主 | 2011-4-27 10:30 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
刚刚上手fpga的知识,最近负责实验室里的一个接口任务。
我需要用一片双端口RAM来实现两个fifo。(芯片资源不够用,需要省着点)
当接收到数据后,写入到接收fifo后还要发出给dsp的控制端做比较,如果满足条件则写入发送端的fifo,再由fifo发出写入的数据

我现在想请教的是:应该怎么去控制,以实现我所需要的功能?现在我对老师提出来的要求毫无头绪,所以前来请教各位。

相关帖子

沙发
fpga_play| | 2011-5-14 10:35 | 只看该作者
搞两个指针不行?

使用特权

评论回复
板凳
hujnn|  楼主 | 2011-5-15 21:18 | 只看该作者
搞两个指针不行?
fpga_play 发表于 2011-5-14 10:35

我面前就是这么做的,发送端一个地址,接收端一个地址
但现在又碰到一个问就是:
当切换到发送FIFO读使能,发出的的第一个数据却是接收FIFO里的一个数据,接下来才是发送FIFO的数据
同样切换到接收FIFO读使能,发出的的第一个数据却是发送FIFO里的一个数据

使用特权

评论回复
地板
shawnelee88| | 2011-5-16 06:58 | 只看该作者
记得芯片手册里面好像有可以做两个fifo的    v5   可以有两个独立的始终控制的

使用特权

评论回复
5
hujnn|  楼主 | 2011-5-19 23:41 | 只看该作者
就我目前使用的一个RAM实现收发好似行不通,因为收发的时钟频率并不一样
现在换一个思路,两个串口的收共用一个RAM块,两个串口的发送端公用一个RAM块
这样理论上是否可行?

使用特权

评论回复
6
liu1teng| | 2011-5-30 11:10 | 只看该作者
我有一个笨一点的思路:收发FIFO之间的配合用状态机实现,因为你还要判断数据是否要发,在状态机里控制使能信号

使用特权

评论回复
7
liu1teng| | 2011-5-30 11:19 | 只看该作者
其实你的接收FIFO只是起到了一个缓存的作用,数据是否有效(是否要发送)是DSP给的控制信号,数据要先从接收FIFO中读出给DSP,若可用,这个数据进入发送FIFO,所以在从接收FIFO读出时,暂存在寄存器里,并发给DSP判断,等待DSP的控制信号,收到控制后写入发送FIFO,等待发送。不知道我对你要实现的功能理解的对不对?

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1

主题

11

帖子

0

粉丝