计算机组成原理之总线篇
Posted 爱上口袋的天空
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了计算机组成原理之总线篇相关的知识,希望对你有一定的参考价值。
一、计算机总线的概述
- 1.1 提供对外连接的接口
- 1.2 不同设备可以通过USB接口连接
- 1.3 成为连接的标准,促使外围设备接口的统一
二、计算机总线的分类
- 片内总线::芯片内部的总线,寄存器、运算器、控制器之间的信息传输线。
- 系统总线: 数据总线、地址总线、控制总线。
- 数据总线: 其中数据总线一般和cpu位数相同,数据总线是32位表示数据总线 一次可以传输32位的4个字节,是64位表示一次能够传输64位的8个字节。
- 地址总线: 指定目的数据或者源数据在内存当中的地址,地址总线位数为n的话,寻址范围为0~2^n。
- 控制总线: 控制总线是用来发出各种控制信号的传输线,组件通过控制总线来发送控制信号到另外一个组件,控制总线可以监听不同组件之间的状态(就绪/未就绪)。
三、为什么需要总线的仲裁
- 因为多个设备就绪想同时使用总线,这个时候会发生冲突,所以需要总线的仲裁,总线的仲裁目的就是为了解决总线使用权的冲突问题。
四、总线的仲裁方法
链式查询:也就是某个设备需要使用总线,会通过仲裁控制线发出一个请求到仲裁控制器,仲裁控制器会进行链式查询,比如有三个设备1、2、3,如果设备2发出请求,那么仲裁控制器首先会发出一个允许使用的信号到达设备1,设备1不需要使用就会达到设备2,然后设备2拿到信号就会获得总线的使用权,存在问题如果设备1和设备2同时发出请求,那么允许使用的信号就会被设备1先拿到就会先使用,好处电路复杂度低,仲裁方式简单,坏处优先级低的设备难以获取总线使用权。
计时器查询:仲裁控制器对设备编号并使用计数器累计计数,接收到仲裁信号后,往所有的设备发出计数值,计算值与设备编号一致则获得总线使用权,比如下图我有三个设备1、2、3,如果设备2需要使用总线那么发出一个请求,那么仲裁控制器有个计数器一开始是1,那么假设设备2需要使用,那么会通过仲裁控制线发送一个请求到仲裁控制器,这个时候仲裁控制器就会将计数器的值为1发送到每一个设备由于值1和设备1的编号相等,但是设备1没有发送请求信号,所以这一次仲裁控制器发送的1是没有用的,那么仲裁控制器计数器累计加1发送2,那么2刚好和设备2的编号相等,设备2获得总线的使用权,此时设备3想使用通过仲裁控制线发送请求,仲裁控制器计数器累计加1为3发出计数值到每个设备,刚好值和设备3编号相等,设备3获得总线的使用权。
- 独立请求: 每个设备均有总线独立连接仲裁控制器,设备可单独向仲裁控制器发送请求和接收请求,当同时接收多个请求信号时,仲裁控制器会按优先级分配使用权 ,好处就是响应速度快,优先顺序可以动态改变,坏处就是设备连接多,总线控制复杂。
以上是关于计算机组成原理之总线篇的主要内容,如果未能解决你的问题,请参考以下文章