从零开始之驱动发开、linux驱动(六十一、PL330 DMA控制器)

本文介绍了DMAC的基本概念,然后详细讲述了S5PV210芯片中基于PrimeCell技术的PL330 DMA控制器,包括其特性、配置选项和在内存到存储器及外设到存储器/存储器到外设中的应用。讨论了DMA控制器的指令集、通道配置、中断处理以及物理地址的使用,强调了在启动传输和传输结束时的处理方法。
摘要由CSDN通过智能技术生成

一、DMA介绍

首先简单介绍下什么是DMAC(Direct Memory Access Controller),DMAC 是一个自适应先进的微控制器总线体系的控制器,它由ARM公司设计并基于PrimeCell技术标准,DMAC提供了一个AXI接口用来执行DMA传输,以及两个APB接口用来控制这个操作,DMAC在安全模式技术下用一个APB接口执行TrustZone技术,其他操作则在非安全模式下执行。DMAC包括了一个小型的指令集,用来提供一些灵活便捷的操作,为了缩小内存需求,DMAC则使用了变长指令。
不同于ARM11以及以前系列的芯片,S5PV210使用了基于PrimeCell技术标准的PL330(DMA控制器核心)有了很大的变化,从编程方式上看,它提供了灵活的指令集,使得你有更多的组合方式用来操作DMA,从硬件上看,它实现了硬件上的多线程管理,一次编写代码即可让它正常的完成所需的工作,因此这个DMA的开发是有一定困难的。

二、PL330简述

      DMAC包含了一个执行指令的模块,并且控制了数据的传输,DMAC通过AXI接口来存取这些存储在了内存中的指令,DMAC还可以将一些临时的指令存放在Cache中,我们能够配置行宽度以及深度。
 当然,DMAC的8个通道都是可配置的,且每个都可支持单个并发线程的操作&#x

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

奔跑的小刺猬

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值