打印

FPGA在读取EP2数据之前怎么控制 FIFOADR0 ,FIFOADR1端口地址线指向EP2端口啊?

[复制链接]
729|11
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
morrisk|  楼主 | 2018-7-10 18:24 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
关于68013A开发采集卡的问题想问一下, (68013A )作为USB的控制芯片通过上位机软件与FPGA进行通信, FPGA与USB之间通信采用slave-fifo的方式,FPGA不断从USB的FIFO中的EP2读取控制数据,FPGA不断写数据到USB的FIFO中的EP6端口。
FPGA在启动写数据到USB的FIFO中的EP6端口中,需要先读取EP2端口的控制命令,请问FPGA在读取EP2数据之前怎么控制 FIFOADR0 ,FIFOADR1端口地址线指向EP2端口啊?
沙发
morrisk|  楼主 | 2018-7-10 18:28 | 只看该作者
那一般情况下FPGA是怎么读取上位机PC机的控制命令数据的?

使用特权

评论回复
板凳
houcs| | 2018-7-10 18:30 | 只看该作者
不知这两个帖子是否对你有帮助如何在FPGA和ASIC设计中结合高速USB功能 https://bbs.21ic.com/viewthread.php?tid=328149

使用特权

评论回复
地板
yinxiangh| | 2018-7-10 18:32 | 只看该作者
如何实现FX2LP™-FPGA接口 https://bbs.21ic.com/viewthread.php?tid=345910

使用特权

评论回复
5
morrisk|  楼主 | 2018-7-10 18:35 | 只看该作者
多谢!但还是没解决我的问题啊?我想知道的是FPGA主控器如何接收PC机的IN或OUT控制命令啊?

使用特权

评论回复
6
chenjunt| | 2018-7-10 18:37 | 只看该作者
FIFOADR1 ,FIFOADR0两根线的不同值的组合,就代表了不同的大端点(EP2、EP4、EP6、EP8),如果为00,则指向EP2;如果为01,指向EP4;如果为10,指向EP6;如果为11,指向EP8,很简单的。详细的说明可以参考TRM第九章。用FPGA控制这两根线,赋不同的电平值就可以了。

使用特权

评论回复
7
zyf部长| | 2018-7-10 18:39 | 只看该作者
楼主可以发邮件给support_china@cypress.com,或者在官网上建case

使用特权

评论回复
8
morrisk|  楼主 | 2018-7-10 18:42 | 只看该作者
谢谢大家的关注!我的疑问是:在CY68013a接收到PC机的控制命令解析后,CY68013a通过什么方式告诉我的FPGA控制器执行相应的命令?是中断还是通过IO口?

使用特权

评论回复
9
xxmmi| | 2018-7-10 18:44 | 只看该作者
用FIFO SLAVE模式,就不要用8051参与解析了,把68013看成一个没有大脑的接口芯片,数据直接从主机到FPGA。如果你不仅让68013解析命令,又让它处理FIFO数据,那就让它工作在GPIF方式。TRM手册里的那两章分开看比较好,别混在一起。

使用特权

评论回复
10
morrisk|  楼主 | 2018-7-10 18:46 | 只看该作者
  数据直接从主机到FPGA?那FPGA也得知道控制FIFOADR1 ,FIFOADR0这两地址线啊,所以在传数据之前是否有个CY68013A提供给FPGA的读写判断命令吧?这判断命令是怎么给FPGA控制器的呢?谢谢

使用特权

评论回复
11
zwll| | 2018-7-10 18:49 | 只看该作者
这两条线是FPGA控制的。如果想让FPGA接收数据,那么就让FPGA处于接收状态,接收某个端点数据(地址线选中该端点,读),读到一帧数据之后,处理,如果有上传,就把数据写到另外一个端点(地址线选中此端点,写)。至于读出多少,写入多少,可以用8051初始化。

仔细读手册,翻译出来抄写十遍,基本就懂了。

使用特权

评论回复
12
morrisk|  楼主 | 2018-7-10 18:51 | 只看该作者
搞定了,呵呵,犯了低级错误……结贴啦,多谢各位

使用特权

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

本版积分规则

701

主题

6879

帖子

2

粉丝