频道栏目
读书频道 > 系统 > 其他综合 > 深入理解8051单片机系统
0.4.1 总线设计
2015-12-02 14:38:21     我来说两句
收藏   我要投稿

本文所属图书 > 深入理解8051单片机系统

本书详细介绍了8051单片机的各种功能。主要内容包括8051微控制器、8051汇编语言编程、跳转指令、循环指令、调用指令、I O端口编程、8051寻址方式、算术逻辑指令与程序、8051 C语音编程、8051硬件接线、8051定时  立即去当当网订购

0.4 总线设计与地址译码

本节将首先阐述CPU如何使用总线访问计算机的各个零件,然后说明怎样将I/O与计算机存储器相连。

0.4.1 总线设计

计算机中,CPU需要从存储器和I/O中发送/接收数据,通过独有的导线将装置(存储器或I/O)连接到CPU中会增加CPU的引脚数,所以,CPU通过叫做总线的公用导线与存储器和I/O相连。计算机总线允许信息能从一个地方传输到另外一个地方,就像道路允许汽车将人从一个地方带到另外一个地方一样。如图0-16所示,通常计算机中有三种类型的总线:数据总线、地址总线以及控制总线。


 

譬如,在一个会议室中,每把椅子有一个唯一的编号,当主席想要与某人谈话时,主席就用椅子编号代表他。同样,在计算机中,每个设备(存储器或I/O)被分配了一个唯一的地址,两个设备不允许有相同的地址。CPU将地址(使用的是二进制)放在地址总线上,然后CPU就使用数据总线获得设备发来的数据或是发送自己的数据。当CPU请求接收信息或发送信息时,由控制总线提供读或写信号给设备。

三种总线中,地址总线和数据总线决定CPU的工作效率。

数据总线更多相关知识

因为数据总线为CPU输入或输出信息,所以使用的数据总线越多,CPU的效率就越高。如果将数据总线想象成高速公路的车道,很显然,在CPU与外设(打印机、RAM、ROM等,见图0-17)之间的很多线路可以为其提供更好的通路。同理,道路的增加就会增加建设的成本,所以数据总线越多就意味着CPU和计算机越昂贵。CPU中数据总线的平均尺寸在8~64位之间。早期的个人计算机如苹果2使用的就是8位的数据总线,而超级计算机如Cray使用的是64位的数据总线。数据总线是双向的,因为CPU需要使用它们接收和发送数据。计算机的处理能力与总线的大小相关,因为8位的总线只能一次发送一个字节,而16-位的却能一次发送两个字节,这比前者快了一倍。


 

地址总线

因为地址用于区分连接到CPU上的外设及存储器,所以地址总线使用得越多,外设使用得越多。也就是说,CPU地址总线的数目决定了能与CPU进行通信的位置数,位置数通常等于2x,其中x是地址线的数目,而不管数据总线的大小。例如,一个有16根地址线的CPU能提供65536(216)或者64K的可寻址存储器,每个位置最多可以有一个字节的数据,这是因为所有的通用处理器CPU都是字节可寻址的。另一个例子,IBM PC AT使用的一个有24根地址线和16根数据线的CPU,所以,总共的可寻址存储器就是16MB(224=16MB)。在这个例子中有224个位置,因为每个位置可以放一个字节,所以就有16MB的存储。地址总线是单向的,这就意味CPU只能使用地址总线发送地址。综上所述,一个CPU的可寻址的存储器位置的总数等于2x,其中x指地址位的数目,而不用理会数据总线的大小。

地址总线的更多相关知识

在一些计算机中,I/O和存储器的控制信号是分开的。例如,在x86 PC中,控制总线就有下面的信号:MEMR(存储器读)、MEMW(存储器写)、IOR(I/O读)以及IOW(I/O写)。为了对存储器进行读,CPU就需使能MEMR;为了读取I/O,CPU就需激活IOR等。在这些计算机中,CPU使用分开指令来访问I/O和存储器。图0-17所示为带控制信号的示例系统

在这个系统中,当CPU想要将50存放到存储器地址为15的区域时,CPU就需遵循以下步骤。

1. CPU将15放在地址总线上,并且将50放在数据总线上。

2. CPU激活MEMW。这就意味着CPU想对存储器进行写,因此数据存放在存储器中。

看看另外一个例子,当CPU想从I/O设备(地址是40)得到数据时,就需采用下面步骤。

1. CPU将40放在地址总线上。

2. CPU激活IOR。这就意味着CPU想从地址是40的I/O处得到数据,相应地,地址是40的设备就将数据放到数据总线上了。

CPU与RAM和ROM的关系

为了让CPU能处理信息,数据必须存储在RAM或ROM中。计算机中ROM的功能是提供固定不变的信息。这些信息如视频监视器上的字模表或计算机运行的必要程序——用于测试和寻找安装在系统上的RAM数量的程序,或用于显示录像监视器上信息的程序。相反,RAM存储的是暂时的信息,是可以随时间改变的,例如各种版本的操作系统、应用程序包、文字处理或税计算包等。

这些程序来自硬盘,并会加载到RAM中交给CPU处理。CPU不能直接从磁盘上获取信息,因为磁盘速度太慢。也就是说,CPU是首先从RAM中寻找要处理的信息(或是ROM)。只有当数据没有存储在RAM或ROM中时,CPU才从大容量的存储设备例如磁盘中寻找数据,然后再将信息传给RAM。因此,有时RAM和ROM也称为主存储器(primary memory),而磁盘称为辅助存储器(secondary memory)。

您对本文章有什么意见或着疑问吗?请到论坛讨论您的关注和建议是我们前行的参考和动力  
上一篇:0.3.5 RAM(随机访问存储器)
下一篇:0.4.2 存储器地址解码
相关文章
图文推荐
排行
热门
最新书评
特别推荐

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训 | 举报中心

版权所有: 红黑联盟--致力于做实用的IT技术学习网站