关于计算机体系结构-北桥和南桥
2015-11-12 10:47
204 查看
相关链接:http://www.oschina.net/translate/what-every-programmer-should-know-about-memory-part1
RAM(随机寄存器)
ROM ( 只读寄存器 )
个人计算机和小型服务器被标准化到了一个芯片组上,它由两部分组成: 北桥和南桥,见图
CPU通过一条通用总线(前端总线,FSB)连接到北桥。北桥主要包括内存控制器和其它一些组件,
内存控制器决定了RAM芯片的类型。不同的类型,包括DRAM、Rambus和SDRAM等等,要求不同的内存控制
器。为了连通其它系统设备,北桥需要与南桥通信。南桥又叫I/O桥,通过多条不同总线与设备们通信。
目前,比较重要的总线有PCI、PCI Express、SATA和USB总线,除此以外,南桥还支持PATA、IEEE 1394、串
行口和并行口等。比较老的系统上有连接北桥的AGP槽。那是由于南北桥间缺乏高速连接而采取的措施。现在的
PCI-E都是直接连到南桥的。
这种结构有一些需要注意的地方:
从某个CPU到另一个CPU的数据需要走它与北桥通信的同一条总线。
与RAM的通信需要经过北桥
RAM只有一个端口。{本文不会介绍多端口RAM,因为商用硬件不采用这种内存,至少程序员无法访问到。
这种内存一般在路由器等专用硬件中采用。}
CPU与南桥设备间的通信需要经过北桥
在上面这种设计中,瓶颈马上出现了。第一个瓶颈与设备对RAM的访问有关。早期,所有设备之间的通信
都需要经过CPU,结果严重影响了整个系统的性能。为了解决这个问题,有些设备加入了直接内存访问(DMA)
的能力。DMA允许设备在北桥的帮助下,无需CPU的干涉,直接读写RAM。到了今天,所有高性能的设备都
可以使用DMA。虽然DMA大大降低了CPU的负担,却占用了北桥的带宽,与CPU形成了争用。
第二个瓶颈来自北桥与RAM间的总线。总线的具体情况与内存的类型有关。在早期的系统上,只有一条总线,
因此不能实现并行访问。近期的RAM需要两条独立总线(或者说通道,DDR2(Double Data Rate 2)就是这
么叫的,见图2.8),可以实现带宽加倍。北桥将内存访问交错地分配到两个通道上。更新的内存技术
(如FB-DRAM)甚至加入了更多的通道。DDR2内存拥有两倍于上一代双倍速DRAM(DDR)内存预读取能力
(即:4bit数据读预取)。换句话说,DDR2内存每个时钟能够以4倍外部总线的速度读/写数据,并且能够以内
部控制总线4倍的速度运行。
RAM(随机寄存器)
ROM ( 只读寄存器 )
个人计算机和小型服务器被标准化到了一个芯片组上,它由两部分组成: 北桥和南桥,见图
CPU通过一条通用总线(前端总线,FSB)连接到北桥。北桥主要包括内存控制器和其它一些组件,
内存控制器决定了RAM芯片的类型。不同的类型,包括DRAM、Rambus和SDRAM等等,要求不同的内存控制
器。为了连通其它系统设备,北桥需要与南桥通信。南桥又叫I/O桥,通过多条不同总线与设备们通信。
目前,比较重要的总线有PCI、PCI Express、SATA和USB总线,除此以外,南桥还支持PATA、IEEE 1394、串
行口和并行口等。比较老的系统上有连接北桥的AGP槽。那是由于南北桥间缺乏高速连接而采取的措施。现在的
PCI-E都是直接连到南桥的。
这种结构有一些需要注意的地方:
从某个CPU到另一个CPU的数据需要走它与北桥通信的同一条总线。
与RAM的通信需要经过北桥
RAM只有一个端口。{本文不会介绍多端口RAM,因为商用硬件不采用这种内存,至少程序员无法访问到。
这种内存一般在路由器等专用硬件中采用。}
CPU与南桥设备间的通信需要经过北桥
在上面这种设计中,瓶颈马上出现了。第一个瓶颈与设备对RAM的访问有关。早期,所有设备之间的通信
都需要经过CPU,结果严重影响了整个系统的性能。为了解决这个问题,有些设备加入了直接内存访问(DMA)
的能力。DMA允许设备在北桥的帮助下,无需CPU的干涉,直接读写RAM。到了今天,所有高性能的设备都
可以使用DMA。虽然DMA大大降低了CPU的负担,却占用了北桥的带宽,与CPU形成了争用。
第二个瓶颈来自北桥与RAM间的总线。总线的具体情况与内存的类型有关。在早期的系统上,只有一条总线,
因此不能实现并行访问。近期的RAM需要两条独立总线(或者说通道,DDR2(Double Data Rate 2)就是这
么叫的,见图2.8),可以实现带宽加倍。北桥将内存访问交错地分配到两个通道上。更新的内存技术
(如FB-DRAM)甚至加入了更多的通道。DDR2内存拥有两倍于上一代双倍速DRAM(DDR)内存预读取能力
(即:4bit数据读预取)。换句话说,DDR2内存每个时钟能够以4倍外部总线的速度读/写数据,并且能够以内
部控制总线4倍的速度运行。
相关文章推荐
- 用OSSIM轻松分析网络设备日志
- Java学习笔记(十五)网络编程及常用类库
- 本地接收百度等外部文件显示结果 使用TcpClient可避免HttpWebRequest的常见错误
- http与https的区别
- HTTP深入浅出 http请求
- 【数据结构】堆
- 【数据结构】堆
- TCP/IP、Http、Socket的区别
- Java学习笔记(十四)IO流及网络基础
- “.网络”域名总量TOP10:新网蝉联第一 份额近30%
- Genymotion配置Charles抓取HTTPS请求
- 转:携程App的网络性能优化实践
- Xcode升级为7.1后网络请求出问题解决
- Android高级之xUtils框架(二):HttpUtils
- wireshark网络基础
- HDU 4888 Redraw Beautiful Drawings 网络流(矩阵模型)
- iOS9 HTTP 不能正常使用的解决办法
- java 探测网络中是否有dhcp环境
- iOS9 http & https
- Linux基于heartbeat配置httpd高可用服务