历史上的今天
返回首页

历史上的今天

今天是:2025年02月05日(星期三)

正在发生

2020年02月05日 | 从PC总线到ARM的内部总线

2020-02-05 来源:eefocus

我在学习《Linux设备驱动程序(第3版)》的 第九章 与硬件通信 时,对 IO总线的概念 不是很清晰,所以查找了有关资料。现在总结如下:


本文的参考资料:
1、 《AMBA、AHB、APB总线简介》 作者 adamzhao 日期 2006-11-16 19:33:00
转载网址:http://www.openhard.org/myspace/blog/show.php?id=75802
2、 《Introduction to AMBA Bus System 》台湾 工研院 / 系統晶片技術中心工程師 吳欣龍,PDF格式
下载地址:http://tpe-wh3.dwins.net/download/member_file/2002/soc/2002-5-1.pdf
3、 《PC架构系列:CPU/RAM/IO总线的发展历史!》
转载网址:http://blog.csdn.net/xport/archive/2006/11/16/1387928.aspx

4、 《认识物理I/O构件- 主机I/O总线(1)》作者:IT168存储频道  2007-04-10

原文网址:http://storage.it168.com/g/2007-04-10/200704101424234.shtml


总线的演变

首先应该讲讲总线的演变历史,这方面《PC架构系列:CPU/RAM/IO总线的发展历史!》这篇文章写得很好!感谢文章的作者!以下内容大量来自这篇文章,可以说是这篇文章的缩减转载。

 

公共总线

早期PC中,CPU/RAM/IO都是挂在一条总线上,所有的部件都必须在同步的模式下工作。这样就带来一个"互锁" (locked to each other )效应:所有设备都被限定在一个通用时钟频率(Clock Frequency)上面,整个系统的速度会被系统中最慢的设备限制,系统的整体性能无法提高。

南桥诞生(IO总线诞生)

1987年,康柏(Compaq)公司想到一个办法: 将系统总线与I/O总线分开,使得2个不同的总线工作在不同的时钟频率上。CPU和内存工作在系统总线上(the System Bus),独立于所有的I/O设备。这样高速的CPU/RAM组件就摆脱了低速I/O设备的束缚。



这里的Bridge,就是现在的南桥(South Bridge)芯片的前身,而它实际起到了降频的作用。


倍频出世

从80486开始,CPU的发展迅猛,频率大幅攀升。内存开始变得跟不上CPU的发展步伐了。Intel 于是决定在80486中引入倍频(Clock Doubler)的概念。内存依旧工作在系统总线上,与系统总线保持同样的工作频率,而CPU的内部工作频率(CPU主频)是:


CPU 主频 = 外频(系统总线频率System Bus Frequency)* 倍频 (Clock doubler)


北桥和前端总线的诞生

PC结构的变化趋势是把低速设备与高速设备用隔离总线的方法进行隔离。而发展到后来,就演变出了北桥(North Bridge)芯片。内存与北桥间的总线称为内存总线,把CPU与北桥间连接的这段总线成为前端总线(Front Side Bus,FSB),也就是系统总线(System Bus)!



PC中的IO总线
通过上面的文章,我们知道的总线的演变过程。现在专门来讲讲IO总线。

总线:用来传送信号或能量的构造器。

系统 I/O 总线将指令从内存传导至与输入输出处理器(IOP)相连的设备。系统 I/O 总线还会将指令从 IOP 传导回内存。

以下的内容来自《认识物理I/O构件- 主机I/O总线(1)》 ,这篇文章写得很好。感谢文章作者!

在数据离开系统内存总线后,它通常传输到另一条总线:主机I / O总线。现在最常见的主机I / O总线是P C I总线,另外还有如PCI-E总线、ISA总线,E I S A总线及V M E总线等等。主机I / O总线实现了几种重要的功能,包括:


允许加入新的插卡。

允许从内存总线输入和输出数据。

允许在插卡之间传输数据。


主机I / O总线并不是处于设备与系统内存总线间的仅有的中介物,在主机I / O总线和系统内存总线之间还存在着桥控制器芯片(南桥),该芯片负责在两总线之间交换数据。主机I / O总线是在内存和外设之间传送数据的运输工具。



ARM处理器的内部总线

认真研究ARM9(以s3c2410为例)的结构框图,你会发现:作为高性能的嵌入式CPU,ARM9可以看成一个高度浓缩的计算机系统,类似于分化出南桥芯片且有倍频的计算机构架!具体见下图:

 

看了这些,应该可以对计算机的总线有了一些认识,更重要的是对ARM9的体系构架有了更好地认识!这里值得注意的是:ARM 的内存芯片并没有直接接在“内存总线”上,而是通过内存控制器间接地和“内存总线”连接。

 

如果你有兴趣更深入地研究ARM的总线结构,推荐你看一下我上面提到的参考资料:《AMBA、AHB、APB总线简介》、《Introduction to AMBA Bus System 》 。我就不在这废话了,因为他们讲得已经很全面,很精彩了。你如果是ARM总线的设计者,你应该看看ARM 公司的《AMBA™ Specification (Rev 2.0)》文档(去ARM的官方网站注册一下就可以下载了)。

推荐阅读

史海拾趣

BOSER公司的发展小趣事

在国内市场取得一定成绩后,BOSER公司开始积极寻求海外市场的扩张。公司加强与国际知名企业的合作,通过参加国际展览、举办技术研讨会等方式,不断提升品牌知名度和影响力。同时,BOSER还针对不同国家和地区的市场需求,推出定制化的产品和服务,成功打开了多个海外市场。

CONTEC公司的发展小趣事

在互联网+的浪潮下,CONTEC公司积极拥抱变革。2010年,公司开始布局“互联网+”领域,通过建立河北省医疗检查监测仪器工程技术研究中心,探索将互联网技术应用于医疗设备。这一举措不仅拓宽了公司的业务范围,还提高了产品的智能化和便捷性。

Aptina (ON Semiconductor)公司的发展小趣事

在被ON Semiconductor收购后,Aptina作为ON Semiconductor的一部分,继续保持其技术优势和市场竞争力。ON Semiconductor对Aptina进行了整合与发展,将其纳入公司的整体战略中。通过资源共享、技术互补和市场协同,Aptina在ON Semiconductor的支持下实现了更快速的发展,并继续为全球客户提供高质量的图像传感器产品。

综上所述,Aptina (ON Semiconductor)公司的发展历程充满了挑战与机遇。从初创时期的艰难起步到技术突破与专利积累,再到与索尼的专利交叉许可和被ON Semiconductor收购,每一个阶段都见证了公司的成长与蜕变。如今,作为ON Semiconductor的重要一员,Aptina将继续在图像传感器领域深耕细作,为全球消费者带来更多优质的产品和服务。

Grande Electronics Ltd公司的发展小趣事
如二极管损坏、老化或光强减弱,导致无法发射红外光或发射的红外光强度不足。
Display Engineering Services公司的发展小趣事
使用专业的红外接收仪器或万用表等检测设备,检测遥控器发射的红外光信号是否正常。对于万用表检测,可以测量遥控器发射头两端的电压或电流变化,以判断发射电路是否工作。
ELEMENT14公司的发展小趣事

ELEMENT14的在线社区是其成功的关键因素之一。公司投入大量资源建设和发展在线社区,吸引了大批电子设计工程师和采购专员的参与。在这个平台上,工程师们可以分享经验、交流技术、解决问题。ELEMENT14还通过社区收集客户反馈和需求,不断优化产品和服务。这个活跃的在线社区不仅增强了客户黏性,也为公司提供了宝贵的市场信息。

问答坊 | AI 解惑

FPGA系统设计实战经验分享

这个帖子主要和大家介绍一些我们在FPGA硬件系统设计过程中遇到的问题和解决的方法。也欢迎大家一起参与讨论。主要涉及以下几个方面: 1。芯片的选型 包括FPGA芯片的选型原则,外围芯片,比如存储器,电源,接口芯片等等选择的依据。我们会给大 ...…

查看全部问答>

学习嵌入式系统的10点建议

现在,国内似乎在进行一个全民学习嵌入式的运动,但据了解,很多人在整个学习的过程中,由于某些技术领域的空白或者是技术尚未成熟,再加上个人学习方法不正确,给个人的学习造成了极大的阻碍,遇到这种情况该如何解决? 根据本人有限的学习经验,给学习嵌 ...…

查看全部问答>

大哥大姐帮帮吗?

谁有51单片机汇编编辑器和仿真软件啊 ?…

查看全部问答>

崩溃了,上、下、左、右键的困惑

我的应用EVC开发下,dialog为主窗口,窗口中放了个Listctrl(class CMylistCtrl : public CListCtrl) 我在模拟器下跑的时候,通过PC的键盘中的上、下键可以操作item,我写这个应用的时候都是在模拟器上操作的 我的问题是:怎么把模拟器上实现了 ...…

查看全部问答>

短信猫在低压配电监控应用

短信猫在低压配电监控应用 随着电网改造的逐步深入,电力配网技术的高速发展,科学、经济、有效的控制电网运行,必须逐步实现、提高配网自动化水平。城市配电网自动化系统是电力部门改善供电质量,合理配置供电设备,有效实现电力需求侧管理的重要 ...…

查看全部问答>

求救,我刚拿到MC50 ,如何开发?

刚拿到个MC50,要开发Scanner ,我该如何入手?我是做JAVA的 ,J9安装了,SMDK v1.4 for Java我下载了,但不知道怎么入手 …

查看全部问答>

最新的WinCE SDK的版本是多少?在哪里下载?

最新的WinCE SDK的版本是多少?在哪里下载? 先多谢。 …

查看全部问答>

单片机视频教程《手把手教你学单片机》下载地址

replyreload += \',\' + 1077953;手把手教你学单片机教程下载地址,        http://www.verycd.com/topics/2867187/   优酷在线观看地址:       Timson,如果您要查看本帖隐藏内 ...…

查看全部问答>

【MSP430共享】基于组态方式的自动化监控系统在线配置设计

介绍目前整个远程自动化监控系统发展状况的同时, 简单介绍了动力环境远程监控系统的结构, 并对如何在自动化监控系统中实现在线配置的原理进行了论述。在此基础上, 具体描述了如何通过面向对象设计的灵活性和节点链接关系的修改来解决上述问题。& ...…

查看全部问答>

寻找zhdphao,在线吗?能否加下QQ,有个问题想请教!!!

搞定了。。。。请教个问题,谢谢! [ 本帖最后由 youki12345 于 2012-6-11 09:05 编辑 ]…

查看全部问答>