核心特性
协议与位宽:基于AHB-Lite总线协议,32位数据总线
地址范围:0x0000_0000至0x1FFF_FFFF,与I-Code总线共享相同空间
访问特点:仅支持对齐访问,处理器总线接口会将非对齐访问自动转换为对齐访问
主要功能
数据访问:负责从Flash/SRAM读取程序常量数据或写入数据
调试支持:与调试模块共享总线,数据访问优先级高于调试访问
总线仲裁:通过总线矩阵协调与DMA的访问冲突
与I-Code总线区别
功能差异:D-Code专用于数据访问,I-Code专用于指令取指
共享机制:两者通过总线矩阵实现同一存储空间的分时复用
支持存储类型
Flash存储器:用于存储程序中的常量数据(如const修饰的变量)
SRAM:用于存储程序中的变量(全局变量、局部变量等)
总线仲裁
D-Code总线通过总线矩阵实现与DMA的访问冲突仲裁。总线矩阵是连接D-Code总线和System总线的关键组件,负责协调内核系统总线和DMA主控总线之间的访问。仲裁采用轮换算法,当DMA和CPU同时请求访问同一资源时,总线矩阵会根据预设的优先级规则进行仲裁。
貌似总线冲突发生后对实时性的影响还是有些的。所以,在嵌入式程序设计中,可通过调整DMA传输时机或使用CPU缓存来减少冲突,例如在CPU空闲时段启动大批量DMA传输。
我要赚赏金
