
7.0 DMA支持
该USBN9602支持DMA传输与外部
DMA控制器和从端点1到6。在这种
模式下,该器件的引脚DRQ和DACK在额外使用
灰到并行接口引脚RD或WR和数据
D [7 :0]引脚。在DMA模式只能与所使用的
并行接口模式(模式1连接到GND ) 。读
或写入地址由内部产生,状态
在DMA周期的A0 / ALE引脚被忽略。
DMA的支持逻辑具有较低的优先级比标准杆
等位基因接口。 CS需要在一个DMA保持非活动赛扬
CLE 。如果CS变为有效, DACK被忽略,经常
进行读/写操作。只有一个端点可以
在给定的时间来发出DMA请求时被激活
被接收或发送的数据。
要启用DMA传输,下面的步骤必须执行
形成:
1.本地CPU程序的DMA控制器,飞了
需求模式传输。在此模式下,传输发生
只有当USBN9602经由DRQ请求它们
引脚。数据读取/写入从/到USBN9602重
人为对象/发送FIFO和写入/读成/本地
在同一总线上交易过程中的记忆。
2. DMA地址计数器被编程以指向
在本地共享内存目的地的内存块,
和字节计数寄存器进行编程时将num-
要传送的块的字节误码率。
3. DMA请求使能位和DMA源位被置位
在USBN9602 。此外,该软件必须设置
各端点使能位。
4. USB主机现在可以执行USB批量或同步
通过USB总线数据传输到接收FIFO或
从USBN9602发送FIFO 。
5.如果达到FIFO的警告限制或的数据发送
/接收完成后, DMA请求/应答响应
边缘序列开始为预定数
的字节。在哪个DMA请求发出DE-时间
暂时搁置在选定的DMA模式(由受控
DMACNTRL.DMOD位),则最终的当前状态
点FIFO和FIFO的警告使能位。一个DMA重
任务可以立即发出。
6.之后,DMA控制器被授予总线的控制下,它
驱动一个有效的内存地址,并声称和DACK
RD或WR,从而从USBN9602传送一个字节
接收FIFO存储器或从存储器到发射
FIFO。这个过程继续,直到将DMA字节计数,
DMA控制器内,达到零。
7.后的数据的编程量被传送时,该
固件需要执行以下操作(取决于一个人
传送方向和模式):排队新的数据
通过设置TXCx.TX_EN位传输,设置
包结束的标记物通过设置TXCx.TX_LAST位
重新启用通过设置RXCx.RX_EN位接收,或
检查是否接收到数据包的最后字节
( RXSx.RX_LAST ) 。
DMA传输可以在任何时候通过设定暂停
在USBN9602 DMA请求使能位。如果USBN9602
一个中间过程中的DMA请求使能位被清零
DMA周期,在当前循环之前,完成
DMA请求被终止。
图8显示了基本的DMA读时序和图9中
显示了基本的DMA写时序。
DRQ
DACK
WR
D[7:0]
输入
图8. DMA写USBN9602
DRQ
DACK
RD
D[7:0]
产量
图9. DMA读从USBN9602
12
www.national.com