zhowo
驱动牛犊
驱动牛犊
  • 注册日期2004-02-18
  • 最后登录2004-12-20
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:1099回复:2

PCI9054DMA读写 求助

楼主#
更多 发布于:2004-02-18 22:29
我在用9054的时候遇到很辣手的问题!
目前我用9054想同时实现读写功能,能不能同时将DMA0和DMA1打开一个用于读,一个用于写?(不想在程序里面改变读写方向)来如果可以我就遇到这样的问题;
由于PCI总线时钟很快,大部分时间都是处于等待接受数据!如果没有接收完DMA会死在那里!不能做写DMA1写操作和I/O操作。
如果不在程序里面关断DMA)是否可以利用DREQ0信号,等到我数据准备好了在让9054产生HOLD信号??
如果可以,那DMA1该怎么控制?
hmwhmw
驱动牛犊
驱动牛犊
  • 注册日期2002-11-23
  • 最后登录2011-06-23
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2004-03-19 15:24
9054无法做到,应该用9056
zhowo
驱动牛犊
驱动牛犊
  • 注册日期2004-02-18
  • 最后登录2004-12-20
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2004-03-25 17:39
9056,9080均可以!
但是目前板子上弄的是9054!
怎么也不知道在数据没准备好(ready为高)的情况下中断dma1操作!!我把dma0设成优先,而且强迫在读占据的时候,允许写。都不行!我看了frame都是可以retry的!我本来想用别的办法,可是和老大闹很大矛盾。或者这样也可以啊!只要能结束dma1操作至ready为0但是有办法让总线知道这是无效的也可以,但是找不到
游客

返回顶部