计算机原理笔记2——存储器和IO总线

SRAM DRAM

前者用来实现cache较多,后者则用来实现主存也就是内存。

局部性:时间局部性和空间局部性。


存储器访问和总线


总线:数据总线(DB双向三态)、地址总线(AB单向三态)、控制总线(CB双向三态)

按CPU分为内部和外部总线:通常指外部。

控制芯片:CPU要和存储器还有IO进行交互,因而 需要不同的芯片,称为控制芯片组(Chipset)。

控制芯片集成在主板上,典型的有南北桥结构和单芯片结构。与芯片相连的总线可以分为前端总线(FSB)、存储总线、IO总线、扩展总线。

南北桥结构:

北桥芯片,控制着CPU的类型,主办的总线频率,内存控制器,显示核心等。直接与CPU、内存、显卡、南桥相连,数据量很大。

前端总线:将CPU连接到北桥芯片的总线。FSB的频率指的是CPU和北桥之间数据交换的速度。速度越快,数据带宽就越高,性能越强;

内存总线:是将内存链接到北桥的总线,用于和北桥之间的通信;

显卡总线:是将显卡连接到北桥的总线。目前有AGP,PCI-E等接口。其实没有严格意义上的显卡总线,属于IO总线。

南桥芯片,负责外部和内部CPU的联系;

IO总线:IO设备到南桥的总线,比如USB设备,ATA,SATA设备,以及一些扩展接口;

扩展总线:主板上提供的一些PCI,ISA插槽。

单芯片结构:

主要取消了北桥,CPU内置内存控制器,这样就可以提高内存控制器频率,减少延迟。可能现在的一些CPU还内置显示单元,也使得显示芯片频率更高。


运行频率

数据带宽=(总线频率*数据位宽)/8

外频:建立在输在脉冲信号震动速度的基础上,是CPU与系统总线以及其他外部设备共同运行的速度。我们知计算机中有一个时序发生器来保证各个部件之间协同工作,这里所说的外频就是这个时序发生器的频率。外频也是系统总线的工作频率。

频率和控制芯片

起初没有控制芯片的概念,所有部件在同一总线频率下工作。

引入倍频概念,使得CPU在不改变外频和总线频率的前提下能够在更高的频率下工作。

发展到后来出现了北桥芯片,于是CPU和北桥之间的总线称为前端总线,而内存和北桥之间的总线称为内存总线。

分频和倍频

分频:使得IO设备可以和较高外频协同工作。

倍频:为了提高CPU频率又能够正常和内存工作,CPU的工作频率是外频频率*倍频。

FSB频率:CPU和北桥之间的连接通过FSB,FSB频率表示北桥芯片和CPU之间的工作速度。随着北桥芯片的消失,FSB的概念也逐渐销声匿迹了。

内存频率:

包括核心频率、总线频率和传输频率。

核心频率和外频类似,建立在脉冲震荡信号上。

总线频率是指内存的工作频率,也就是内存和北桥之间的工作频率。

传输频率类似FSB,指实际数据传输的频率。

对SDR来说,三个频率是一致的,而对于DDR在一个周期内就能够传输两次数据,因而它的传输频率是核心频率的两倍。DDR2(4bit预存)总线频率是核心频率的2倍,DDR3(8bit预存)总线频率是核心频率的4倍。这里DDR指芯片拥有两个内存控制器,使得传输速率翻倍。

IO设备原理

硬件工程师会将IO设备理解成电子芯片、导线、电源、电子控制设备、电机等组成的物理设备。程序员则关心IO设备的编程接口。

IO设备的分类

块设备:块设备将信息存放在固定大小的块中,每个块都有自己的地址,独立于其他块,可寻址。例如磁盘、USB闪存、CD-ROM等。
符号设备:字符设备以字符为单位接受或者发送一个字符流,字符设备不用寻址。例如打印机、网卡、鼠标键盘等等。

设备控制器

IO设备一般由机械部件和电子部件两部分组成。电子设备一般称为设备控制器,在计算机上一般以芯片的形式出现,比如前面提到的南桥芯片。不同的控制器可以控制不同的设备。所以南桥芯片中包含了多种设备的控制器,比如硬盘控制器、USB控制器、网卡、声卡控制器等等。总线通过提供卡槽和设备本身的连接。比如PCI、PCI-E、SATA、USB等。


驱动程序

用来对不同设备进行控制的软件。

内存映射IO

每个控制器都有几个寄存器和CPU进行通信。

你可能感兴趣的:(计算机原理)