阅读:2066回复:3
碰到难题:pci ip怎么把PCI32位总线转成16位或者8位的本地总线?
我花了很长的时间学习PCI协议,学习FPGA/CPLD,想自己用FPGA/CPLD完成PCI IP和用户逻辑,但现在有个问题是怎么把PCI32位总线转成16位或者8位的本地总线?我想有两种办法:
1)把PCI 32位总线一次传32位值,分成4个字节,分4次发到本地总线,就转成8位本地总线。 2)通过C/BE[3:0]来指出PCI 32位总线一次传32位值其中一个字节有效,也就转成8位本地总线,但是怎么控制C/BE[3:0]?是通过驱动程序还是其他方法,请知道的高手指点迷津,谢谢。 |
|
沙发#
发布于:2010-04-14 16:46
其实通过驱动或FPGA里的逻辑都可以做,但本人觉得驱动里做更好实现。
|
|
板凳#
发布于:2010-05-04 14:27
在EEPROM里面更改寄存器的值LBRD0[1:0],你查一下,9054可以将PCI的32位数据线变成16或8位线下发到local端
|
|
地板#
发布于:2010-05-06 16:54
感谢xuxiubo,能说的具体一点吗?我一直没有做过实物,请指点。
感谢mnbqwe10,我是用CPLD/FPGA做PCI CORE,不用PCI905X做。 有知道的请不吝赐教!!! |
|