BUS Matrix
ARM的BUS Matrix就是多主(Core,DMA等)、多从(内部RAM,APB,外部总线等)的交联和仲裁。目的是为了提高不同主机访问不同外设情况下的带宽,另外一个就是简化Bus Master的协议设计。
比如,DMA把片内RAM的数据搬运到APB的外设,如串行口。同时Core从外部总线,SDRAM取指令。如果单一总线,那么Core和DMA控制器就需要先仲裁总线控制权,然后才能访问对应的外设,此时单一总线的带宽不一定够。如果用交联矩阵,那么Core可以直接访问SDRAM,同时DMA访问APB外设。
如果没有用到多个BUS Master,典型如DMA,LCD控制器等都没有用到,具体看芯片,那么Matrix不会有什么性能提升;当然,如果用到了多个Slave,可能会有少量的性能损失,切换总线节点可能需要比直接仲裁更多的时间;(仲裁完成-传输数据 vs 仲裁完成-切换/保持总线节点-传输数据)
如果只用了一个Slave,比如Core,DMA,LCD都是只访问外部总线的SDRAM,实质上就是多主单从结构,效率或许会下降。至少看ATmel的手册,切换连接节点好像需要一个MCK,单总线仲裁,不一定会需要这一个周期。
多主多从的应用才会得到较为明显的好处。
BUS Matrix的更多相关文章
- 数据仓库专题(23):总线矩阵的另类应用-Drill Down into a More Detailed Bus Matrix
一.前言 Many of you are already familiar with the data warehouse bus architecture and matrix given thei ...
- SAM4E单片机之旅——16、NAND Flash读写
这次大概介绍了一下NAND Flash,以及在ASF中使用它的方法. 一. 接线 这个开发板搭载了一个256 MB,8位的NAND Flash(MT29F2G08ABAEA).引脚接线如下: 偷个懒, ...
- AMBA interconnector PL301(一)
HPM(High-Performance Matrix)是一个自生成的AMBA3 bus subsystem. 由一个AXI bus matrix,Frequency Conversion Compo ...
- STM32 + RT Thread OS 学习笔记[四]
1. 补注 a) 硬件,打通通讯通道 若学习者购买了学习板,通常可以在学习板提供的示例代码中找到LCD的相关驱动代码,基本上,这里的驱动的所有代码都可以从里面找到. 从上面的示意图可见,M ...
- 【STM32H7教程】第3章 STM32H7整体把控
完整教程下载地址:http://forum.armfly.com/forum.php?mod=viewthread&tid=86980 第3章 STM32H7整体把控 初学STM32H7一 ...
- STM32F401
The STM32F401 line is the entry level to the STM32 F4 series. It is designed for medical, industrial ...
- cache控制器取值从TCM/CACHE/FLASH
cache 控制器顶层有4组接口,分别为输入I/D bus ,输出TCM bus /Cache bus /direct flash bus (走cache ID bus matrix) flash 控 ...
- 【STM32H7教程】第25章 STM32H7的TCM,SRAM等五块内存基础知识
完整教程下载地址:http://www.armbbs.cn/forum.php?mod=viewthread&tid=86980 第25章 STM32H7的TCM,SRAM等五块内 ...
- 如何在 arm 官网上找到合适的手册
http://infocenter.arm.com/help/advanced/help.jsp 在这里输入合适的版号即可 这样就可以不用去 CSDN 了 100000_0000_00_EN - AR ...
随机推荐
- Python程序数据溢出问题或出现 NAN 问题
[数据溢出问题] overflow:溢出 overflow:上溢 underflow:下溢 数据溢出包括上溢和下溢. 上溢可以理解为:你想用一个int类型来保存一个非常非常大的数,而这个超出了int类 ...
- JavaScript 设计模式之简介
一.设计模式概念解读 设计模式(Design pattern)是一套被反复使用.多数人知晓的.经过分类编目的.无数实战代码设计经验的总结.使用设计模式是为了让系统代码可重用.可扩展.可解耦.更容易被人 ...
- 【LeetCode】44. Wildcard Matching (2 solutions)
Wildcard Matching Implement wildcard pattern matching with support for '?' and '*'. '?' Matches any ...
- 【LeetCode】35. Search Insert Position (2 solutions)
Search Insert Position Given a sorted array and a target value, return the index if the target is fo ...
- 手机imie号介绍使用
http://zhidao.baidu.com/question/3682744.html手机机身号又叫手机串号,是国际移动设备识别码,GSM手机机身号简称IMEI,CDMA手机机身号简称ESN. 一 ...
- Launchy – 快速调出你的程序
http://www.appinn.com/launchy/这个可是今天绝对的发现,超级好玩好用的程序,Launchy 可以使你快速的调用你电脑中的程序快捷方式,而且很智能,使用起来很智能,安装后用A ...
- lsnrctl: error while loading shared libraries: /opt/app/oracle/product/11.2/db_1/lib/libclntsh.so.11
错误描述: 安装好数据库后,在oralce用户下敲入 查看监听状态命令,返回错误提示 [oracle@centos3 ~]$ lsnrctl statuslsnrctl: error while lo ...
- js学习笔记27----键盘事件
键盘事件主要有2个: onkeydown : 键盘按下时触发,如果按下不抬起,那么会连续触发. onkeyup : 键盘弹起时触发 不是所有元素都能接收键盘事件,只有能够响应用户输入的元素,换 ...
- X86 寻址方式、AT&T 汇编语言相关知识、AT&T 与 Intel 汇编语言的比较、gcc 嵌入式汇编
注:本分类下文章大多整理自<深入分析linux内核源代码>一书,另有参考其他一些资料如<linux内核完全剖析>.<linux c 编程一站式学习>等,只是为了更好 ...
- Go从入门到精通(一)go语言初识
一.第一个go程序 package main import ( "fmt" ) func main(){ fmt.Println("hello world") ...