阅读:2349回复:8
求教:利用Windriver如何发出PCI的突发命令?
我是自己用VHDL写的PCI接口内核,现在实现了三个空间的控制
想用Windriver编写驱动程序,可是不知道如何利用它去对我的设备发出突发指令(写或读),cbe总线上总是存储器读或是存储器写, 突发传输的时候命令总线应该是什么命令呢?请各位大侠不吝赐教! 我找到一个XXX_ReadWriteBlock(。。。)的函数 不知是哪个函数? 我做的是PCI Slave! 急急急! 谢谢 |
|
沙发#
发布于:2003-05-26 13:27
各位大虾!出手相救亚!
|
|
板凳#
发布于:2003-05-26 14:45
那要看你的PCI接口是哪个芯片啊,看它突发时的时序就可以了啊!
|
|
地板#
发布于:2003-05-26 21:47
我是用VHDL自己写的核心
所译时序我是很了解的,今天我已经实现PCI总线的突发写操作 我的问题不是我的从设备如何响应,而是如何利用Windriver的API 函数发出指令,让主设备对我的从设备进行突发读写! 今天实现的突发写能实现40MB/s,可是我更需要的是读! 似乎有人说很多南桥芯片支支持突发写,不支持突发读,有这回事情吗? |
|
地下室#
发布于:2003-06-02 18:03
突发方式。电路设计好后需要在配置存储器中设置允许在该方式下工作。软件设计时不需要特别考虑,只要速度足够快,就自动以突发方式工作了,否则就以单次方式工作。
你在示波器(最好逻辑分析仪)上观察一下波形后就明白了。 |
|
5楼#
发布于:2003-06-06 15:43
是的,WINDRIVER的框架程序可以有很多API函数,你要调用这些函数先配置你的一些寄存器的值,相当于初始化吧!
|
|
6楼#
发布于:2005-05-18 21:29
zhpzh:
你好,你的回复提到“只要速度足够快,就自动以突发方式工作了,否则就以单次方式工作。” 不知速度足够快是什么意思,是指local bus的时钟吗,我的8M。我用9030实现的突发写(burst4模式),WR信号的先是一个周期的低电平,然后持续两周期的低电平,最后又是一个周期低电平。只实现了BURST2。9030的突发读干脆变成了单一读。不知你怎么实现的? |
|
7楼#
发布于:2009-07-30 15:33
楼主,你是怎么解决的啊。
|
|
8楼#
发布于:2009-07-30 15:34
我和你一样的问题。就是不知道上位机控制时怎么实现突发的操作!有可能给我回邮件啊!cqm239@126.com
|
|