《计算机组成原理》(第3版)第3章 系统总线 复习笔记

第3章 系统总线

一、总线的基本概念

总线是连接多个部件的信息传输线,是各部件共享的传输介质,如图3-1所示。
在这里插入图片描述
图3-1 面向CPU的双总线结构框图
倘若将CPU、主存和I/O设备都挂到一组总线上,便形成单总线结构的计算机,如图3-2所示。
在这里插入图片描述
图3-2 单总线结构框图
还有一种以存储器为中心的双总线结构,如图3-3所示。
在这里插入图片描述
图3-3 以存储器为中心的双总线结构框图

二、总线的分类

(一)片内总线
片内总线是指芯片内部的总线。

(二)系统总线
系统总线是指CPU、主存、I/O设备各大部件之间传输线,又称板级总线或板间总线。
按系统总线传输信息的不同,又可分为三类:数据总线、地址总线和控制总线。
1.数据总线
数据总线用来传输各功能部件之间的数据信息,它是双向传输总线。
2.地址总线
地址总线用来指出数据总线上的源数据或目的数据在主存单元地址或I/O设备的地址。
3.控制总线
控制总线是用来发出各种控制信号的传输线。

(三)通信总线
这类总线用于计算机系统之间或计算机系统与其他系统之间的通信。

三、总线特性及性能指标

(一)总线特性
1.从物理角度来看,图3-4形象地表示了各个部件与总线之间的物理摆放位置。
在这里插入图片描述
图3-4 总线结构的物理实现
(1)机械特性
机械特性是指总线在机械连接方式上的一些性能。
(2)电气特性
电气特性是指总线的每一根传输线上信号的传递方向和有效的电平范围。
(3)功能特性
功能特性是指总线中每根传输线的功能。
(4)时间特性
时间特性是指总线中的任一根线在什么时间内有效。

(二)总线性能指标
1.总线宽度:通常是指数据总线的根数,用bit(位)表示;
2.总线带宽:总线带宽可理解为总线的数据传输速率MBPS(兆字节每秒)表示;
3.时钟同步/异步:总线上的数据与时钟同步工作的总线称为同步总线,与时钟不同步工作的总线称为异步总线;
4.总线复用:一条信号线上分时传送多种信号;
5.信号线数:地址总线、数据总线和控制总线三种总线数的总和;
6.总线控制方式:包括突发工作、自动配置、仲裁方式、逻辑方式、计数方式等;
7.其他指标:如负载能力、电源电压、总线宽度能否扩展等。

(三)总线标准
所谓总线标准,可视为系统与各模块、模块与模块之间的一个互连的标准界面。对硬件设计而言,使各个模块的接口芯片设计相对独立;对软件设计而言,更有利于接口软件的模块化设计。
目前流行的总线标准有以下几种:
(1)ISA总线;
(2)EISA总线;
(3)VESA(VL-BUS)总线;
(4)PCI总线,它的主要特点如下所述:①高性能;②良好的兼容性;③支持即插即用;④支持多主设备;⑤具有与处理器和存储器子系统完全并行操作的能力;⑥提供数据和地址奇偶校验功能,保证了数据的完整和准确;⑦支持两种电压标准;⑧可扩充性好;⑨软件兼容性好;⑩采用多路复用技术,减少了总线引脚个数。
(5)AGP总线;
(6)RS-232C总线,如图3-5所示。
在这里插入图片描述
图3-5 串行通信系统
(7)USB总线,它的主要特点是:①具有真正的即插即用特征;②有很强的连接能力;③数据传输率高;④标准统一;⑤连接电缆轻巧,电源体积小;⑥生命力强。图3-6是典型的USB系统拓扑结构。
在这里插入图片描述
图3-6 典型的USB系统拓扑结构

四、总线结构

(一)单总线结构
它不允许两个以上的部件在同一时刻向总线传输信息。

(二)多总线结构(图3-7是双总线结构的示意图)
双总线结构的特点是将速度较低的I/O设备从单总线上分离出来,形成主存总线与I/O总线分开的结构。
在这里插入图片描述
图3-7 双总线结构
图3-8是三总线结构的示意图。
在这里插入图片描述
图3-8 三总线结构
图3-9是另一种三总线结构的示意图。
在这里插入图片描述
图3-9 三总线结构的又一形式
为进一步提高I/O设备性能,使其更快响应命令,出现了四总线结构,如图3-10所示。
在这里插入图片描述
图3-10 四总线结构

(三)总线结构举例
图3-11是传统微型计算机的总线结构示意图。
在这里插入图片描述
图3-11 传统微型计算机的总线结构
图3-12的VL-BUS局部总线结构。
在这里插入图片描述
图3-12 VL-BUS局部总线结构
图3-13是PCI总线结构的示意图。
在这里插入图片描述
例3.13 PCI总线结构
当PCI总线驱动能力不足时,可采用多层结构,如图3-14所示。
在这里插入图片描述
图3-14 多层PCI总线结构

五、总线控制

(一)总线判优控制
常见的集中控制优先权仲裁方式有以下三种:
(1)链式查询:如图3-15(a)所示;
(2)计数器定时查询:如图3-15(b)所示;
(3)独立请求方式:如图3-15(c)所示。
在这里插入图片描述
图3-15 集中控制的三种优先权仲裁方式

(二)总线通信控制
总线通信控制通常用四种方式:同步通信、异步通信、半同步通信和分离式通信。
(1)同步通信
图3-16表示同步式数据输入传输。
在这里插入图片描述
图3-16 同步式数据输入传输
图3-17表示同步式数据输出传输。
在这里插入图片描述
图3-17 同步式数据输出传输
(2)异步通信
异步通信克服了同步通信的缺点,给设计者充分的灵活性和选择余地。异步通信的应答方式又可分为不互锁、半互锁和全互锁三种类型,如图3-18所示。
①不互锁方式;②半互锁方式;③全互锁方式。
在这里插入图片描述
图3-18 异步通信中请求与回答的互锁
(3)半同步通信
半同步通信数据输入过程如图3-19所示。
在这里插入图片描述
图3-19 半同步通信数据输入过程
(4)分离式通信

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/393540.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【Linux 驱动】IMX6ULL input驱动

1. input子系统介绍 input 子系统分为 input 驱动层、input 核心层、input 事件处理层,最终给用户空间提供可访问的设备节点。 驱动层:输入设备的具体驱动程序,比如按键驱动程序,向内核层报告输入内容核心层:承上启下…

OpenCV图像滤波(5)二维卷积滤波函数filter2D()的使用

操作系统:ubuntu22.04 OpenCV版本:OpenCV4.9 IDE:Visual Studio Code 编程语言:C11 算法描述 cv::filter2D() 函数用于对图像应用二维卷积滤波器。这个函数可以用来实现多种图像处理操作,如模糊、锐化、边缘检测等。它通过将一个…

stm32应用、项目、调试

主要记录实际使用中的一些注意点。 1.LCD1602 电路图: 看手册:电源和背光可以使用5v或者3.3v,数据和控制引脚直接和单片机引脚连接即可。 单片机型号:stm32c031c6t6 可以直接使用推完输出连接D0--D7,RS,EN,RW引脚,3…

Linux--网络层IP

IP协议 IP协议,全称Internet Protocol(互联网协议),是TCP/IP协议族中的核心协议之一,用于在互联网络上进行数据的传输。IP协议的主要功能是确保数据从一个网络节点(如计算机、服务器、路由器等&#xff09…

OpenDataLab:人工智能开放数据平台

作者:CSDN _养乐多_ 本文将介绍一个人工智能开放数据平台,OpenDataLab。 文章目录 一、OpenDataLab介绍二、下载 一、OpenDataLab介绍 官网链接: OpenDataLab:https://opendatalab.com/ 这里面有很多数据集,包括计…

CCIA2024“网络安全优秀创新成果大赛-哈尔滨分站赛”优胜奖,花落谁家?

近日,“2024 年网络安全优秀创新成果大赛 - 哈尔滨分站赛”评选结果正式公布。此次大赛由黑龙江省委网信办指导,中国网络安全产业联盟主办,哈尔滨工业大学网络空间安全学院承办。开源网安代码审核平台 CodeSec 凭借在 AI 方向的创新能力和极高…

JavaEE: 进程和线程

文章目录 进程线程的概念和区别总结如何创建线程1.继承Thread重写run2.实现Runnable重写run3.继承Thread重写run,通过匿名内部类来实现4. 实现Runnable重写run,通过匿名内部类来实现5.基于lambda表达式来创建 虚拟线程 并发编程: 通过写特殊的代码,把多个CPU核心都利…

Mojo使用调试工具(Visual Studio Code)详解

Visual Studio Code 的 Mojo 扩展使您可以将 VS Code 的内置调试器与 Mojo 程序一起使用。(Mojo 扩展还支持调试 C、C++ 和 Objective-C。) 有关 VS Code 调试功能的完整介绍,请参阅 Visual Studio Code 中的调试。 本文介绍了可通过 Mojo 扩展获得的功能,以及 Mojo 调试…

层次分析法(评价类问题)

目录 本文章内容来自: 层次分析法模型讲解(附matlab和python代码) 【数学建模快速入门】数模加油站 江北_哔哩哔哩_bilibili 一. 概念 二. 适用的问题范围 三. 层次分析法的四个步骤 四. 对应代码 本文章内容来自: 层次分析法模型讲解(附matlab和…

【面试题】串联所有单词的子串,找到所有符合条件的串联子串的起始索引

串联所有单词的子串,找到所有符合条件的串联子串的起始索引 面试学习 一、题目 串联所有单词的子串 二、解题思路 2.1 定义子串长度 所有字符串 words 的长度是相同的,假设为 L。那么一个有效的串联子串的总长度应该是 L * len(words)。 2.2 滑动窗…

解决Minizip压缩后解压时的头部错误问题

最近,在处理文件压缩的任务时,我遇到了一个有趣的问题。使用Minizip库进行文件压缩后,在解压过程中收到了一个关于"头部错误"的警告。尽管这个警告看似令人担忧,但解压操作最终仍然能够成功完成文件的解压。这引发了我的…

BM1反转链表[栈+头插法]

题目要求如下: 问题比较简单,就是将链表中的值进行反转即可。 一种比较简单的方式是使用栈链表的方式来实现,下面是相应的代码: #include <stdio.h> #include <stdlib.h> int arr[10001] {0}; struct ListNode* ReverseList(struct ListNode* head ) {if (head …

编译运行 Byconity

我的系统是centos&#xff0c;因此用他们的docker编译并用他们的docker-compose运行&#xff0c;以下流程亲测可跑&#xff1a; 拉取并编译 https://github.com/ByConity/ByConity/tree/master/docker/debian/dev-env 运行 https://github.com/ByConity/ByConity/blob/master/d…

Day-16 SpringBoot原理

SpingBoot原理 在前面十多天的课程当中&#xff0c;我们学习的都是web开发的技术使用&#xff0c;都是面向应用层面的&#xff0c;我们学会了怎么样去用。而我们今天所要学习的是web后端开发的最后一个篇章springboot原理篇&#xff0c;主要偏向于底层原理。 我们今天的课程安…

20240807 每日AI必读资讯

&#x1f468;‍&#x1f4bc;马斯克再发难、OpenAI 高层巨变&#xff1a;两大核心人物离职&#xff0c;总裁休长假到年底 - OpenAI 联合创始人 John Schulman 官宣离职&#xff0c;加入原是竞品公司的 Anthropic - 陪伴 OpenAI 共同成长 9 年的总裁兼联合创始人 Greg Brockm…

事务和索引(面试常问)

面试常问&#xff1a; 一、数据库隔离级别&#xff1f;事务隔离级别解决的问题&#xff1f; 答&#xff1a;1.数据库隔离级别&#xff1a; READ_UNCOMMITTED 读未提交 READ_COMMITTED 读提交&#xff08;不可重复读&#xff09; REPEATABLE_READ 可重复读 SERIALIZABLE 串行化…

sed 简易使用指南

sed 简易使用指南 1 sed 介绍2 查找3 替换4 反向引用5 删除6 cai&#xff08;菜&#xff09; 导言&#xff1a; 笔者之前花了较多时间学习并整理了sed命令相关的内容&#xff0c;以及一些进阶内容。但是&#xff0c;到后来使用也就只记得那么几个简单的选项&#xff0c;再高级的…

6-8 残差网络(ResNet)

随着我们设计越来越深的网络&#xff0c;深刻理解“新添加的层如何提升神经网络的性能”变得至关重要。更重要的是设计网络的能力&#xff0c;在这种网络中&#xff0c;添加层会使网络更具表现力&#xff0c; 为了取得质的突破&#xff0c;我们需要一些数学基础知识。 残差网络…

【虚拟化】KVM使用virt-manager部署及管理虚拟机

目录 一、KVM 概述 二、KVM工作原理 三、部署KVM 四、新建虚拟机步骤 4.1 创建存储池并创建存储卷 4.1.1 创建存储池 4.1.2 创建存储卷 4.3 创建ISO存储池 4.4 生成新的虚拟机 一、KVM 概述 KVM 是 Kernel-based Virtual Machine 的缩写&#xff0c;是一种用于虚拟化的…

大模型微调深入研究

在本博文系列的前一部分中&#xff0c;我们探讨了情境学习的概念&#xff0c;这是一种克服大型语言模型 (LLM) 的“舒适区”限制的强大方法。我们讨论了如何使用这些技术来转换任务并将其移回模型的专业领域&#xff0c;从而提高性能并与有用性、诚实性和无害性的关键设计原则保…