大城小魔

天下难事,必作于易;天下大事,必作于细

  C++博客 ::  :: 联系 :: 聚合  :: 管理

公告


最新评论

第三节:地址线和总线
 

我们把DRAM中的每个字节的唯一 数值标识称之为地址,就像街区中的房屋一样。地址是一个整型值。内存中的第一个字节的地址为0。靠近0地址的内存区域称之为内存底端或者低位内存。靠近内 存末端的内存区域称之为高位内存。处理器的对物理内存的寻址能力,称之为处理器的物理地址空间。(见图1.3)

 


图1-3 

处理器的物理地址空间表明了最大的可寻址字节数,而不是当前的实际物理内存的字节数。人们通常不愿意花钱购买填充满整个地址空间数量的内存DRAM芯片。购买4GB的DRAM目前还只是在高端企业级服务器上。

处理器的物理地址空间由处理器的地址线数量 决定。地址线是一批处理器和DRAM芯片连接的导线。每条地址线指定给定字节的一个地址位。例如Intel Pentium处理器有32条地址线。这意味着每个字节赋予了一个32位的地址,于是它的地址空间构成了的可寻址空间232(4GB)。8088处理器具 有20条地址线,所以它的寻址能力为 220, 或者 1,048,576, 字节. 

 

     注释:如 果在Pentium4的平台上启用了虚拟内存,有一个称之为物理地址扩展(Physical Address Extension )(PAE)的技术可以再启用4条附加的地址线。这样一来Pentium处理器的处理地址空间由36条地址线指定,变为236 bytes (64GB)的地址空间。

 

处理器使用一个控制总线和数据总线,实现对物理内存的访问和扩展。总线是指一系列将处理器与相关硬件子系统连接的线路集合。控制总线是用来当处理器想对内存进行读写操作时候发送相应状态的。数据总线用来在处理器和内存之间进行数据传输的通道。(如图1.4)

 
图1.4

当处理器从内存读取的时候,将执行以下的过程:

1.处理器将欲读取的字节的地址放置到地址线上。
2.处理器向控制总线出发读取信号。
3.DRAM芯片组从数据总线返回指定的字节。

当处理器向内存写入的时候,将执行以下的过程:

1.处理器将欲写入的字节的地址放置到地址线上。
2.处理器向控制总线发送写入信号。
3.处理器向数据总线发送欲向内存写入的字节。

这样的描述方式有些过于简单。例 如,Pentium处理器同时读取和写入4字节的数据。这便是为什么Pentium被称为32位处理器芯片的原因。处理器使用首字节地址用于记录32位的 数据实际数据负载。(例如:最低端的字节地址)然而我认为一般的操作还是非常容易理解的。

posted on 2008-11-29 01:25 momor 阅读(1025) 评论(3)  编辑 收藏 引用 所属分类: 翻译

Feedback

# re: C/C++ 内存管理算法与实现--第一章:地址线和总线 (翻译连载) 2008-12-05 16:52 斑马军团
支持博主  回复  更多评论
  

# re: C/C++ 内存管理算法与实现--第一章:地址线和总线 (翻译连载) 2008-12-10 00:00 region
于是它的地址空间构成了的可寻址空间232(4GB)。8088处理器具 有20条地址线,所以它的寻址能力为220, 或者 1,048

这里的232写成2^32,220写成2^20好一点。  回复  更多评论
  

# re: C/C++ 内存管理算法与实现--第一章:地址线和总线 (翻译连载) 2008-12-10 00:14 momor
@region

感谢你的细心阅读,我是在google docs上编辑的文档,结果,粘贴过来时候,文本发生了改变。
内容已经修改过来了,再次感谢^^   回复  更多评论
  


只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理