原理
在单总线系统中,当CPU取一条指令时,首先把PC(程序计数器)中的地址:同控制信息一起送至总线上。该地址不仅加至内存,同时也加至总线上的所有外部设备,但是,只有与出现在总线上的地址相对直的没备,才执行数据传送操做。由于在取指情况下的地址是内存地址。所以,此时该地址所指定的内存单元的内容(一条指令)将被取出送给CPU,指令取出之后,CPU将查操作码以确定下一次要执行什么操作。对采用单总线的计算机来讲,操作码规定了对数据要执行什么操作以及数据是流进还是流出CPU。
在单总线系统中,访内指令同输入/输出指令的区别仅仅在于地址的数值。因此, CPU只要把指令的地址段送到总线上,并依靠相应的设备作出响应就可以了。
如果该地址对应的地址是内存地址,则内存将响应,这时,在CPU和内存之间将发生数据传送。
如果该指令地址对应的是外部设备地址,则外部设备将响应,这时,CPU和与该地址相对应的外部设备之间,将发生数据传送。2
组成单总线系统由硬件配置、处理次序和单总线信号三部分组成。系统按单总线协议规定的时序和信号波形完成初始化、识别器件和数据交换。
1.硬件配置
单总线系统定义了一根信号线,总线上的每个器件都能驱动它。为了区分不同的芯片,厂家为每个芯片都编制了唯一的序列号,用激光刻录的一个64位二进制ROM代码,从最低位开始前8位是族码表示产品的分类编号,接着的48位是一个唯一的序列号,最后8位是前56位的CRC校验码。当有多个器件连接在一根信号线上进行串行分时数据交换时,就能通过寻址把芯片识别出来。
2、单总线信号
单总线传送数据或命令是由一系列时序信号组成的。通常,单总线上共有以下四种时序信号。初始化信号;写0信号;写1信号;读信号。设计中可以用单片机的汇编语言编程以确保指令执行时间小于或等于时序信号中的最小时间,尤其注意当单片机工作频率不同时,单总线的时延也不同的。
3、处理次序
在单总线系统中软件设计的处理次序是关键。单片机做主控机时,依据单总线协议,处理次序要保证数据可靠的传送,并且任一时刻单总线上只有一个控制信号或数据。3
特点1、部件独立性
采取异步工作方式各部件的运行速度可以与总线上其他部件完全无关,而不是一切以存贮器周期为转移。因此可以局部更新,增强系统适应性延长系统使用寿命。积木化也有利于各部件独立地设计、生产、调试和改进。
2、面向外围
单总线结构是一种面向外围的系统组织方法。I/O设备“直接存贮器存取"(DMA)可以绕过CPU;外围设备之间可以直接通信,例如显示器可从磁盘直接获得画面数据形成与CPU独立的I/O子系统;与另一台单总线计算机互连,也只要两者的总线互连,易于扩充为多机系统。
3、总线限制
系统中所有设备都连接在单总线上,使总线实际上比较长,电气负载很重,决定了单总线不能成为高速总线。而总线速率限制了系统性能,限制了可扩充性。总线可靠性则限制了系统可靠性。事实上,CPU和主存之间的信息交换是系统中最经常的事件,并主要由它决定了整个系统性能。可是单总线系统却忽视了主存的特殊地位,只放在外围设备同等地位。因此改进单总线系统性能的途径自然是在主存与CPU之间增加一条独立的高速总线,实际上部分地转移到以存贮器为中心组织系统。4
缺陷采用简单的单总线结构,虽然可以构成计算机系统,但是它的工作效率和计算机的使用范围受到很大的限制。
例如,目前的计算机系统中都设有显示子系统。显示子系统主要包括显示控制器、显示数据存储器和显示器等。为了保证显示内容的正确性,显示控制器需要不断从显示数据存储器中读取数据送显示器,这个过程就是我们通常所说的显示器刷新。显示器刷新和中央处理器使用存储器将竞争使用总线,这对于中央处理器和显示刷新的效率都会产生影响,尤其对于高速的中央处理器,将会严重地影响运行效率。
又如在计算机系统中都设有键盘,它的速度是人的手指动作的速度,一般为每分钟两百次以内。如果将键盘和存储器连接在同一条总线上,显然中央处理器访问存储器的工做效率将受倒影响。1