DMA
DMA请求源:通过设置DCON[23]位SWHW_SEL值,选择硬/软件请求,并可进一步通过设置HWSRCSEL[26:24]位选择HW模式下的每个DMA通道的请求源 DMA工作过程:使用三态FSM(有限状态机)进行操作,分三步操作: Stage-1 初始状态,等待DMA请求,若请求到达,进入Stage-2。此阶段,DMA ACK和INT REQ都为0。
循环水旁滤器
Stage-2 DMA ACK变为1,计数器CURR_TC从DCON[19:0]加载数值。注意:此时DMA ACK仍然为1,知道它随后在stage-3中被清0。
Stage-3 在此状态,对DMA进行原子操作的sub-FSM(子状态机)被初始化它从源地址读取数据然后写入目的地址(此操作需要考虑数据大小和传输尺寸)。 园林垃圾桶
每一次DMA传输,必须先得到请求。
有两种请求模式:Demand和Handshake。差别在于是否等待DREQ信号无效:
Handshake模式下,DMA控制器在开始下一次传输之前要一直等待直到DREQ信号无效。如果DREQ信号无效了,DMA 控制器使DACK无效后继续等待下一次DREQ信号有效,之后又开始数据传输,且使DACK信号有效。
Demand模式下,DMA控制器不等待DREQ信号无效。如果传输完毕后DREQ还是继续有效,DMA控制器只是先无效DACK信号,然后又开始新一轮的传输。数据手册上建议对外部DMA请求使用Handshake模式,以避免不经意的开始新一轮数据传输。
有两种传输模式:Single service和Whole service。差别在于三态FSM操作的Stage-3:
在Stage-3状态,对DMA进行原子操作的Sub-FSM被初始化,它从源地址读取数据然后写入目的地址(此操作需要考虑数据大小和传输尺寸)。
家具涂装生产线
Whole service模式下,这种读、写操作重复进行直到计数器(CURR_TC)变为0;而Single service模式下读和写操作只进行一次。虚拟课堂
透射电镜制样>点火装置