06 2022 档案

摘要:串口DMA驱动实现分析 1.1 DMA控制器基本原理 DMA控制器用于实现各类存储介质间的数据搬移,存储介质包括内存以及各类外设的寄存器空间; 基本的工作原理是,配置好DMA控制器后,通过软件或DMA请求线的方式启动DMA传输,搬移数据时,独自控制系统总线,不需要CPU干预; DMA在完成数据搬移完 阅读全文
posted @ 2022-06-26 23:28 小小的番茄 编辑
摘要:三、arm32中断处理软件子系统 中断软件子系统负责cpu检测到中断以后的处理,总体来看,可以分为三个部分:中断向量函数、中断控制器驱动部分以及用户接口部分; 中断向量函数放在中断向量表里面,每一种中断对应一个中断向量函数,软件在初始化时需要创建一个中断向量表,放在内存中并通过协处理器cp15告诉c 阅读全文
posted @ 2022-06-26 11:54 小小的番茄 编辑
摘要:二、arm32中断子系统的硬件原理 如上图所示,arm32中断子系统的硬件主要由3个部分构成:外设、中断控制器GIC以及cpu;外设产生中断后,通过中断线汇聚到GIC,GIC处理后,统一分发给各个cpu。除了外设能产生中断,cpu产生的核间中断,以及cpu自己的私有中断都是先汇聚到GIC,由GIC统 阅读全文
posted @ 2022-06-25 16:54 小小的番茄 编辑
摘要:一、预备知识 中断处理与cpu体系结构强相关,比如x86处理器与arm处理器对中断的处理方式是不一样的;本文对arm32的中断子系统进行分析,因此首先需要熟悉一些arm32体系结构的知识。 1.1 arm32处理器的运行模式 处理器模式 描述 用户模式(User, usr) 正常程序执行的模式 快速 阅读全文
posted @ 2022-06-25 16:29 小小的番茄 编辑