阅读:1346回复:2
关于DMA方式的操作 急,急,急!!!!
现在写的程序直接操作一图形板(pci接口),由于采用其FIFO方式,速度达不到要求。
欲采用DMA方式上传数据到图形板。我的处理方式如下: 申请一块连续的物理地址paddress,把数据写入此物理地址空间中;(可以写入的) 把paddress传给DMA的地址寄存器; 启动DMA方式(通过板卡的命令寄存器启动Count,每传一字,Count计数器减)。 现在的问题:Count计数器不减,每次读的时候跟初始值一样,好像根本就没有搬运(从主存到图形板的buffer) 问:1。DMA的处理流程是否是这样的?有什么问题 2。需不需要pci图形板的映射buffer地址 不知道说明白了没有?请赐教,谢谢 |
|
最新喜欢:HuYugu... |
沙发#
发布于:2003-10-10 21:49
DMA operation is depends on the DMA engine which is built in inside the PCI interface chip on your pci card.
every one chip has its own way to control DMA operation. you should point out which PCI chip you have on the card so we can try to help you. in general, you are right, but you need specific help to make your pci card DMA works. |
|
板凳#
发布于:2003-10-11 10:48
我的pic芯片是比较老的一种,3DLabs的GLint 500TX,
里面一句话不知怎么理解: The DMA address should be loaded with the first PCI address ~~~~~~~~~~~~~~~~~~~~~ for the buffer to be transfered to the chip when using the DMA controls. 能解释一下the first PCI address? |
|