4。计算机组成原理(5)总线和I/O

嵌入式软件开发,非科班专业必须掌握的基本计算机知识
核心知识点:数据表示和运算、存储系统、指令系统、总线系统、中央处理器、输入输出系统

一 总线概述

总线是一组能实现多个部件间信息传输的线路

按功能分类

1)片内总线(片上总线)

片上总线是指一种在芯片内部连接不同功能单元的高速通讯总线。它可以用于在处理器和存储器、I/O设备之间传输数据和控制信号,同时也可以为多个功能单元之间提供相互通信的能力。

2)系统总线

系统总线是计算机内部各个部件之间传输数据和控制信息的通道。它是一组物理电路和逻辑控制信号线,用于连接CPU、内存、硬盘、扩展卡等各种设备和部件,以实现它们之间的通信和互动。

系统总线可以分为三类:地址总线、数据总线和控制总线。地址总线用于传输地址信息,数据总线用于传输数据信息,而控制总线则用于传输控制信息,如时序信号、中断信号、总线请求信号等。

系统总线在计算机中起着至关重要的作用,它决定了计算机的运行速度和性能。一般来说,总线的宽度越大,数据传输的速度就越快,因此现代计算机中常使用高速、宽带的总线来提高数据传输效率。

3)通信总线(外部总线)

通信总线(Communication Bus)指的是一种用于数据传输的物理线路或集合,可以连接多个设备或组件,让它们能够直接相互通信。通信总线通常被广泛应用在计算机、工控系统、汽车电子等领域,以实现各种设备之间的数据交换和信息传递。

通信总线的作用是提供一个标准化的、可靠的数据传输途径,降低系统复杂度、增强模块化和可扩展性。通信总线可以分为多种类型,如串行总线、并行总线、CAN总线、SPI总线、I2C总线等,每种总线都有自己的特点和适用场景。同时,通信总线也需要考虑带宽、延迟、误码率、抗干扰能力等方面的性能指标,以满足不同应用的需求。

按时序控制方式分类

1)同步总线

总线上的数据传输与时钟同步

2)异步总线

总线上的数据传输与时钟异步

按数据传输格式分类

1)并行总线

数据是一位一位地在总线上传输

2)串行总线

数据是多位在总线上同时传输

系统总线的结构

系统总线的性能指标 

二 总线仲裁(总线判优方式)

在某个时刻,分给某个设备用

常见的总线仲裁方式包括:

  1. 集中式仲裁:在集中式仲裁方式中,总线上只有一个专门的仲裁器,也称为总线控制器。所有主设备向总线控制器发送请求,由总线控制器确定哪个设备获得总线使用权。这种方式的优点是实现简单,控制精度高,但是在总线并发访问较多时,会造成总线控制器的瓶颈效应。

  2. 分布式仲裁:分布式仲裁是指总线上没有专门的仲裁器,而是将仲裁的功能分布到各个主设备上。主设备之间通过一定的规则进行冲突检测和协调,来确定哪个设备获得总线使用权。这种方式的优点是仲裁效率高,能够提高整个系统的并行性能,但是实现复杂,对主设备的要求也较高。

  1. 轮询方式:由总线控制器按照一定的顺序对各主设备进行轮询,发现空闲总线后授予相应主设备使用权。

  2. 计算优先级方式:各主设备根据自身的需求对访问请求打分,总线控制器计算并授予优先级最高的设备使用权。

  3. 中断方式:主设备以中断的方式向总线控制器请求使用权,总线控制器接受中断信号后将使用权授予对应设备。

  4. 令牌环方式:总线上运行一个虚拟令牌,持有令牌的设备有权使用总线,使用完成后将令牌传递给下一个设备。

  5. 抢占式方式:某些主设备具有抢占能力,在总线上已经获得使用权的设备还未完成操作时,抢占设备可以请求抢占并立即获取总线使用权。

三 总线操作和定时

总线传输的四个阶段

1)同步定时方式

同步定时方式是在分布式系统中实现时钟同步的一种方式,其基本思想是通过一个主节点向所有从节点发送时间信息,从而使得所有从节点的时钟与主节点保持一致。具体实现方式包括以下几个步骤:

  1. 选择主节点:在网络环境中选择一台性能较好的设备作为主节点,该节点负责向其他从节点发出时间信息。

  2. 发送时间信息:主节点通过广播或点对点通信向所有从节点发送时间信息,时间信息包括当前主节点的时间戳以及主节点与从节点之间的网络延时信息。

  3. 时间校准:当从节点接收到主节点的时间信息时,会根据主节点的时间戳和网络延时信息调整自己的时钟,从而实现与主节点同步。

需要特别注意的是,由于分布式系统中网络延时存在不确定性,因此同步定时方式无法完全实现时钟的绝对同步,只能实现时钟的相对同步。同时,采用同步定时方式时需要确保主节点的可靠性和精度,以避免时钟同步误差过大。

优点:

  1. 实现简单:同步定时方式的实现比较简单,只需要一个主节点向各个从节点发送时间信息即可,不需要专门的仲裁器等组件。

  2. 时钟相对同步:同步定时方式虽然无法实现时钟的绝对同步,但可以实现时钟的相对同步,即各个节点的时钟差值在一定范围内。

  3. 精度较高:同步定时方式可以通过计算网络延迟等信息来调整时钟,从而实现精度较高的时钟同步效果。

  4. 可扩展性强:同步定时方式适用于分布式系统任意规模的场景,并且可以方便的增加新的节点进行扩展。

缺点:

  1. 主节点单点故障问题:同步定时方式需要依赖主节点来发送时间信息,当主节点发生故障时,整个时钟同步系统会瘫痪。

  2. 时间误差积累问题:由于同步定时方式无法实现时钟的绝对同步,因此在长时间运行后,各个节点的时间误差可能会累计到一个较大值。

  3. 网络延迟不稳定问题:同步定时方式需要依赖网络传输,当网络延迟不稳定时,可能会导致时钟同步误差增大。

  4. 实时性问题:同步定时方式需要发送数据和计算网络延迟等信息,可能会引入一定的延迟,影响实时性要求较高的应用场景。

2)异步定时方式

没有统一的时钟,没有固定的时间间隔。完全依靠双方相互制约的“握手”信号实现定时控制。
开始传输之前主设备会向从设备发出请求,并且会一直等从设备发来响应信号后才开始数据传输。

1.不互锁方式
主设备发出“请求”信号后,不必等到接到从设备的“回答”信号,而是经过一段时间便撤销“请求”信号。而从设备在接到“请求”信号后,发出“回答”信号,并经过一段时间,自动撤销“回答”信号,双方不存在互锁关系。
2.半互锁方式
主设备发出“请求”信号后,必须待接到从设备的“回答”信号后,才撤销“请求”信号,有互锁的关系。而从设备在接到“请求”信号后,发出“回答”信号,但不必等待获知主设备的“请求”信号己经撤销,而是隔一段时间后自动撤销“回答”信号,不存在互锁关系。
3.全互锁方式
主设备发出“请求”信号后,必须待从设备“回答”后,才撤销“请求”信号;从设备发出“回答”信号,必须待获知主设备“请求”信号己撤销后,再撤销其“回答”信号。双方存在互锁关系。

比特率与波特率

IO系统

一 外部设备

输入设备:

  1. 键盘:通过按键按下来输入字符、数字和符号等。
  2. 鼠标:通过移动、点击、滚轮等方式来控制光标和操作。
  3. 扫描仪:可以将纸质文档、图片或其他物品扫描成电子化的文件或图像。
  4. 摄像头:可以拍摄照片或视频,并将其存储到计算机或其他设备中。
  5. 语音输入:可以通过说话的方式来输入文本和命令等。

输出设备:

  1. 显示器:用于显示计算机生成的图像、文字等视觉信息。
  2. 打印机:可以将计算机生成的图像、文字等信息打印出来,通常分为喷墨打印机和激光打印机等几种类型。
  3. 扬声器:通过播放音频文件来输出声音和音乐等。
  4. 投影仪:可以将计算机生成的图像、视频等投射到大屏幕上。
  5. 电视机:可以通过连接计算机等设备,将视频等内容在大屏幕上播放出来。

硬磁盘轨道记录格式
(1)磁头数,等于记录面数;
(2)柱面数,表示硬盘每一面盘面上有多少磁道;
(3)扇区数,表示每一条磁道上有多少个扇区。

磁盘地址

驱动器号,柱面号,盘面号,扇区号

二 I/O接口

I/O接口是主机与外设之间的交界面

I/O接口的功能
(1)实现主机和外设的通讯控制;
(2)地址译码和设备选择;
(3)实现数据缓冲;
(4)信号格式转换;
(5)传送控制命令和状态信息。

l/O接口的类型
(1)按照数据传输方式分为并行和串行接口;
(2)按照主机访问/O设备的控制方式可分为程序查询接口、中断接口和DMA接口;
(3)按功能的灵活性可分为可编程接口和不可编程接口。

 I/O端口编址
注意:接口和端口是不同的概念,端口是接口电路中的寄存器。
I/O端口要能够被CPU访问,要有端口地址,一个端口对应一个端口地址,端口编址方式有与存储器统一编址和独立编址两种:
(1)统一编址(存储器映射方式),是把I/O端口当作存储器单元进行地址分配;
优点:不需要专门的输入/输出指令,CPU访问1/O端口的操作灵活、方便,端口编址空间大;
缺点:端口占用一部分存储器地址,使可访问的存储器的最大容量变小,CPU访问I/O端口的速度较慢。

(2)独立编址(I/O映射方式),I/O端口地址与存储器地址无关,CPU靠专门的指令来访问端口。
优点:I/O端口地址不占用存储器地址;因为有独立的指令使CPU可以直接访问端口,所以访问速度快;
缺点:输入/输出指令少,一般只能对端口进行传输操作;且CPU控制主存读/写和I/O端口读写需要两组不同的控制信号,控制复杂。

三 I/O方式

程序查询方式,特点在于CPU每时每刻不断查询I/O设备是否准备就绪

程序中断方式

计算机在程序执行过程中,当出现异常或者特殊情况时,计算机停止现行程序的执行转向对这些异常情况或特殊情况的处理,处理结束后再返回现行程序的间断处,继续执行原程序,这就是中断。

中断请求

中断请求是指中断源向CPU发送中断请求信号。
(1)内中断和外中断:
外中断:来自CPU和内存以外的部件产生的中断,如/O设备的中断;
内中断:来自CPU和内存的中断,如除数为0等程序运算产生的错误
或者内存不足,空间分配失败产生的中断。
(2)硬中断和软中断:
硬中断:通过外部硬件产生的中断。硬中断属于外中断;
软中断:通过指令产生的中断,可编程实现,软中断属于内中断。
(3)非屏蔽中断和可屏蔽中断,都属于外中断。

中断判优

中断系统在某一时刻只能响应一个中断源的请求,但不同中断源发出请求是随机的,因此可能某一时刻会同时产生多个中断请求,这时候要按照某种规则来选择一个中断请求进行响应。
般硬件故障属于最高级中断,其次是软件中断,非屏蔽中断高于可屏蔽中断,DMA请求高于/O设备,高速设备高于低速设备,输入设备高于输出设备,实时设备高于普通设备。

中断响应和处理

DMA方式

DMA(Direct Memory Access,直接存储器访问)方式是一种计算机外设与主存之间进行数据传输的技术。在传统的I/O方式中,CPU需要通过输入输出指令来控制数据的传输,这会占用CPU大量的时间和资源,并且会使得系统的效率变低。而使用DMA方式可以不需要CPU的干预,提高了数据传输的效率。

DMA方式的工作原理是将数据传输的任务交给DMA控制器,在数据传输期间,DMA控制器负责控制数据的传输,而CPU则可以继续执行其他的任务。DMA方式的传输流程如下:

  1. CPU向DMA控制器发出请求:将数据的起始地址、传输大小等信息告知DMA控制器。

  2. DMA控制器向外部设备发出请求:将数据传输的命令发送给外部设备,通知其开始传输数据。

  3. 外部设备将数据写入到DMA缓冲区:外部设备将数据写入到DMA缓冲区中,DMA缓冲区位于主存之内。

  4. DMA控制器将数据从DMA缓冲区拷贝到目的地址:DMA控制器将DMA缓冲区中的数据读取出来,并将其拷贝到目的地址中。在拷贝数据的过程中,CPU可以继续执行其他的任务。

  5. 数据传输完成:DMA控制器通知CPU数据传输已经完成。

由于DMA方式可以在不占用CPU资源的情况下进行数据传输,因此它能够大大提高数据传输的效率。它主要适用于需要频繁进行大量数据传输的场合,如高速网络、视频采集等应用场景。

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值