MDMA块传输性能测试及缓冲传输+JPEG解码技术-综合

270 阅读1分钟

1 MDMA基础理论

  • MDMA 位于 D1 域,使用的 64 位的 AXI 总线,可以操作 TCM 空间 image.png image.png image.png image.png image.png
  • 请求触发源 image.png

2 MDMA2D 块传输及缓冲传输

2.1 分散加载与MPU保护

  • MPU image.png image.png image.png image.png

2.2 缓冲传输(JPEG解码缓冲传输)

  • 这个模式主要用于QSPI,DCMI,硬件JPEG等外设上。每个请求都会触发 BufferTransferLength (最大 128 字节)大小的数据传输,此大小由 HAL_MDMA_Init 调用的参数配置。 image.png image.png
  • 测试STM32H7 硬件JPEG 解码800*480 图片性能,全部通过SDRAM缓存数据,解码10ms,显示9ms

2.2.1 硬件JPEG初始化流程

  • image.png image.png image.png image.png
  • 硬件JPEG初始化流程(HAL_JPEG_Init->JPEG_Decode_DMA->DMA2D_Copy_YCbCr_To_RGB) image.png
  • HAL_JPEG_Init image.png
  • JPEG_Decode_DMA JPEG解码 image.png
  • HAL_JPEG_Init -> HAL_JPEG_MspInit(一次突发传输32字节) image.png image.png
  • JPEG回调函数,用于从输入地址获取新数据继续解码 image.png
  • JPEG回调函数,用于输出缓冲地址更新 image.png

2.3 MDMA块传输及性能测试

  • image.png image.png
  • MDMA块传输初始化 image.png image.png image.png
  • MDMA中断回调 image.png