关于DMA(三)


1. DMA 中断

  • 半传输中断;
  • 传输完成;
  • 传输错误;
  • FIFO下溢或上溢;

2. DMA 传输状态

  • 外设到存储器
    • 外设首先发起请求,送入DMAC的仲裁模块,决定哪个外设可以进行数据传输。
    • 外设地址计算。
    • DMA接收到数据,并将数据送入FIFO中(直接模式下没有FIFO)。
    • 存储器端口的访问可以由FIFO达到阈值后触发(突发传输,使用FIFO模式)或DMA拿到数据之后立即触发(使用直接模式)。
    • 存储器端口仲裁,决定向哪个存储器写入数据。
    • 存储器地址计算。
    • 向存储器写入数据。
  • 存储器到外设
    • 存储器端口仲裁,决定从哪个存储器读出数据。
    • 存储器地址计算。
    • 从存储器中取出数据存在FIFO中,以保证DMA获得总线使用权后可以立即进行数据传输。
    • 外设端口仲裁。
    • 外设地址计算。
    • 向外设地址写入数据。
posted @ 2023-06-19 23:02  可达达鸭  阅读(38)  评论(0编辑  收藏  举报