计算机组成原理
CV工程师呀
就写给自己看看
展开
-
计组-数据冒险
数据相关指在一个程序中,存在必须等前一条指令执行完才能执行后一条指令的情况,则这两条指令即为数据相关。数据冲突分为三类RAW(写后读)、WAR(读后写)、WAW(写后写),读后读不会发生错误。1.RAW2.WAR当指令支持乱序发射时,会发生WAR。即I2会比I1先执行,会发生数据冲突。3.WAW多个功能部件存在会发生WAW,虽然是按序执行指令,但是乘法指令比加法指令执行顺序长,会导致I2比I1早执行完,发生了数据冲突。...原创 2020-12-28 18:20:28 · 1892 阅读 · 2 评论 -
2.2定点数的乘除法运算
1.原码一位乘法(n次先加法再移位)特点:重复n轮加法、移位符号位不参与运算,符号位用异或来决定2.补码一位乘法(n次先加法再移位,多一次加法)原创 2021-01-03 18:56:21 · 1050 阅读 · 0 评论 -
2.3浮点数的表示与运算
1.浮点数的表示1.1浮点数的表示1.2 浮点数尾数的规格化1.3规格化浮点数的特点原创 2021-01-01 10:12:57 · 1083 阅读 · 1 评论 -
DMA控制器
1.DMA控制器原创 2020-12-30 16:18:10 · 141 阅读 · 0 评论 -
程序中断方式
1.中断的基本概念程序中断是指在计算机执行现行程序的过程中,出现某些急需处理的异常情况或特殊请求,CPU暂时中止现行程序,而转去对这些异常情况或特殊请求进行处理,在处理完毕后CPU又自动返回到现行程序的断点处,继续执行原程序。非屏蔽中断:关中断时也会被响应(如:掉电)可屏蔽中断:关中断时不会被响应2.中断请求标记(如何判断是哪个设备发来的中断信号?)每个中断源向CPU发出中断请求的时间是随机的。为了记录中断事件并区分不同的中断源,中断系统需对每个中断源设置中断请求标记触发器INTR,当其状态原创 2020-12-30 15:53:00 · 3849 阅读 · 0 评论 -
7.I/O系统
1.基本概念1.1I/O接口I/O接口:又称I/O控制器(I/O Controller)、设备控制器,负责协调主机与外部设备之间的数据传输1.2I/O硬件I/O硬件:包括外部设备、I/O接口、I/O总线等。1.3I/O软件I/O软件包括驱动程序、用户程序、管理程序、升级补丁等。通常采用I/O指令和通道指令实现主机和I/O设备的信息交换。1.3.1I/O指令注:I/O指令与普通指令格式略有不同,操作码指明了CPU要对IO接口做什么,命令码指明了IO接口要对设备做什么1.3.2通道指令(通原创 2020-12-30 10:36:01 · 439 阅读 · 1 评论 -
4-5CISC和RISC
1.CISC和RISC原创 2020-12-25 08:52:45 · 138 阅读 · 1 评论 -
3.4Cache
1.CPU和cache之间,cache和主存之间,主存和辅存之间数据交换的单位分别是什么?CPU和cache之间单位是"字",cache和主存之间单位是"块"(这个是大多数国内院校教材的翻译)/cache line(也有很多教材倾向于翻译为“行”),主存和辅存之间单位是"页"(虚拟存储系统中)。...原创 2020-12-23 21:15:41 · 335 阅读 · 1 评论 -
3.3双端口RAM & 多模块存储器(用于提升主存速度)
1.双端口RAM2.多体并行存储器2.1取多少个存储体合适?3.单体多字存储器原创 2020-12-23 13:16:09 · 341 阅读 · 0 评论 -
3.2主存储器与CPU的连接
1.单块存储芯片与CPU的连接2.多块存储芯片与CPU的连接2.1位扩展法(地址不连续)2.2字扩展(地址连续)2.2.1线选法2.2.2译码片选法2.2.3字位同时扩展原创 2020-12-23 12:35:50 · 151 阅读 · 0 评论 -
3.1存储器概述
1.存储系统基本概念1.1存储器的层次化结构1.2存储器的分类1.2.1层次1.2.2存储介质★1.2.3存取方式1.2.4信息的可更改性1.2.5信息的可保存性1.3存储器的性能指标原创 2020-12-23 10:40:51 · 1830 阅读 · 0 评论 -
2.4算术逻辑单元(ALU)
1.电路基本原理&加法器设计1.1算术逻辑单元(ALU)1.2最基本的逻辑运算优先级: 与>或(类比乘法、加法)A(C+D) = AC+ AD ——分配律ABC=A(BC) ——结合律A+B+C=A+(B+C) ——结合律1.3一位全加器1.4串行加法器1.5并行加法器2.加法器、ALU的改进2.1并行加法器的优化2.1.1并行进位的并行加法器并行进位的并行加法器:各级进位信号同时形成,又称为先行进位、同时进位2.2ALU芯片的优化..原创 2020-12-21 21:51:57 · 708 阅读 · 0 评论 -
2.2定点数的表示与运算
1.定点数的表示1.1无符号数的表示(只有整数,没有小数)n位的无符号数表示范围为:0 ~ 2n -11.2有符号数的定点表示1.2.1原码原码:用尾数表示真值的绝对值,符号位“0/1”对应“正/负”若机器字长n+1位,原码整数的表示范围: - ( 2n -1) ~ 2n -1若机器字长n+1位,原码小数的表示范围: - ( 1-2-n ) ~1- 2-n1.2.2反码反码:若符号位为0,则反码与原码相同原创 2020-12-18 10:23:16 · 1043 阅读 · 0 评论 -
6.总线
1.总线的概述1.1总线的定义总线是一组能为多个部件分时共享的公共信息传送线路。一根总线有许多的信号线组成,所有硬件部件都可以通过这根总线传递数据。同一时刻只能有一个部件发送数据,但是可有多个部件接受数据。这是为了避免发生信号冲突。1.2总线的特点1.2.1共享性共享是指总线上可以挂接多个部件,各个部件之间互相交换的信息都可以通过这组线路分时共享。1.2.2分时性分时是指同一时刻只允许有一个部件向总线发送信息,如果系统中有多个部件,则它们只能分时地向总线发送信息。1.3总线的特性1.3原创 2020-12-16 20:44:52 · 3508 阅读 · 0 评论 -
2.1码的知识理解
1.乘基取整法如小数部分=0.3D0.3D=0.010B2.BCD码用二进制编码的十进制,可能有冗余2.18421码映射关系:手算方法:机算方法:2.2余3码映射关系:8421码+(0011)22.32421码映射关系:改变权值定义,0-4二进制首位为0,5-9二进制首位为13.字符与字符串3.1汉字的表示和编码3.2大端模式和小端模式大端模式:将数据的最高有效字节存放在低地址单元中小端模式:将数据的最高有效字节存放在高地址单元中以下以B0 A1H为例,我们原创 2020-12-15 10:00:47 · 684 阅读 · 0 评论 -
5.5.3五段式指令流水线
1.运算类指令的执行过程运算类指令IF:根据PC从指令Cache取指令至IF段的锁存器ID:取出操作数至ID段锁存器EX:运算,将结果存入EX段锁存器M:空段,不需要干任何事,但是周期时间仍要消耗WB:将运算结果写回指定寄存器2.LOAD指令的执行过程LOAD指令IF:根据PC从指令Cache取指令至IF段的锁存器ID:将基址寄存器的值放到锁存器A,将偏移量的值放到ImmEX:运算,得到有效地址M:从数据Cache中取数并放入锁存器WB:将取出的数写回寄存器3.STORE原创 2020-12-28 16:09:40 · 2139 阅读 · 0 评论 -
5.5.2指令流水线 影响因素分类
1.机器周期的设置2.影响流水线的因素2.1 结构相关(资源冲突,互斥)由于多条指令在同一时刻争用同一资源而形成的冲突称为结构相关。这里的ID阶段和WB阶段的寄存器冲突,即取指令的寄存器和存储数据的寄存器为同一个,所以冲突了解决办法:1.后一相关指令暂停一周期2.资源重复配置:数据存储器+指令存储器(即设置两个不同的寄存器)2.2 数据相关(数据冲突,同步)数据相关指在一个程序中,存在必须等前一条指令执行完才能执行后一条指令的情况,则这两条指令即为数据相关。解决办法:1.把遇到数原创 2020-12-28 16:09:33 · 1998 阅读 · 0 评论 -
5.5.1指令流水线基本概念和性能指标
1.指令的执行方法1.1顺序执行方式总耗时T= nx3t = 3nt传统冯·诺依曼机采用顺序执行方式,又称串行执行方式。优点:控制简单,硬件代价小。缺点:执行指令的速度较慢,在任何时刻,处理机中只有一条指令在执行,各功能部件的利用率很低。1.2一次重叠执行方式总耗时T= 3t +(n-1)×2t=(1+2n)t优点:程序的执行时间缩短了1/3,各功能部件的利用率明显提高。缺点:需要付出硬件上较大开销的代价,控制过程也比顺序执行复杂了。1.3二次重叠执行方式总耗时T= 3t+(n-1原创 2020-12-28 10:23:51 · 669 阅读 · 2 评论 -
5.4.4控制器设计 微程序控制单元的设计
1.微程序控制单元的设计1.1 分析每个阶段的微操作序列1.2 写出对应机器指令的微操作命令及节拍安排(1) 写出每个周期所需要的微操作(参照硬布线)(2)补充微程序控制器特有的微操作: a. 取指周期: Ad ( CMDR ) → CMAR 这条指令表示取下地址,每条微指令结束之后都需要进行 &原创 2020-12-28 10:04:00 · 634 阅读 · 0 评论 -
5.4.3控制器设计 微程序控制器 微指令的设计
1.微指令的格式相容性微命令:可以并行完成的微命令。互斥性微命令:不允许并行完成的微命令。1.1水平型微指令一条微指令能定义多个可并行的微命令。1.1.1基本格式优点:微程序短,执行速度快;缺点:微指令长,编写微程序较麻烦。1.2垂直型微指令一条微指令只能定义一个微命令,由微操作码字段规定具体功能1.2.1基本格式优点:微指令短、简单、规整,便于编写微程序;缺点:微程序长,执行速度慢,工作效率低。1.3混合型微指令在垂直型的基础上增加一些不太复杂的并行操作。优点:微指令较短原创 2020-12-28 09:50:15 · 6275 阅读 · 1 评论 -
1-6计算机性能指标
1.存储器的性能指标存储器总容量=存储单元个数×存储字长bit例: MAR为32位,MDR为8位,存储器总容量=232* 8 bit = 4GB2.CPU的性能指标CPU主频:CPU内数字脉冲信号振荡的频率。(即1s内有几个脉冲信号)CPU时钟周期。通常为节拍脉冲或T周期,为CPU主频的倒数。(即一个脉冲信号要花费多少时间)CPI:执行一条指令所需的时钟周期数。(执行一条指令的耗时= CPI x CPU时钟周期)CPU执行时间:运行一个程序的耗时IPS:每秒执行多少条指令。IPS=主频/原创 2020-12-27 19:22:55 · 460 阅读 · 0 评论 -
5.4.2控制器设计 微程序控制器的基本原理
1.微程序控制器的设计思路程序:由指令序列组成指令是对程序执行步骤的描述,与微程序一一对应微程序:由微指令序列组成,包含多个微指令微指令是对指令执行步骤的描述,微指令中可能包含多个微命令,微命令与微操作一一对应微周期(微指令周期)︰从控制器存储器取出一条微指令并执行相应微操作所需的时间2.微程序控制器的基本结构3.微程序控制器的工作原理...原创 2020-12-28 08:45:56 · 2168 阅读 · 0 评论 -
5.4.1控制器设计 硬布线控制器
1.硬布线控制器根据指令操作码、目前的机器周期、节拍信号、机器状态条件,即可确定现在这个节拍下应该发出哪些“微命令”2.硬布线控制器的设计2.1分析每个阶段的微操作序列(取值、间址、执行、中断 四个阶段)即确定哪些指令在什么阶段、在什么条件下会使用到的微操作2.2选择CPU的控制方式即采用定长机器周期还是不定长机器周期?每个机器周期安排几个节拍?下面例子假设采用同步控制方式(定长机器周期),一个机器周期内安排3个节拍。2.3安排微操作时序即如何用3个节拍完成整个机器周期内的所有微操作?原创 2020-12-27 19:20:37 · 1872 阅读 · 1 评论 -
5.3.2数据通路 专用通路结构
1.专用数据通路方式根据指令执行过程中的数据和地址的流动方向安排连接线路,避免使用共享的总线,性能较高,但硬件量大。2.专用数据通路方式取值周期原创 2020-12-27 16:56:41 · 375 阅读 · 0 评论 -
5.3.1数据通路 单总线结构
1.CPU内部单总线方式将所有寄存器的输入端和输出端都连接到一条公共通路上,这种结构比较简单,但数据传输存在较多的冲突现象,性能较低。连接各部件的总线只有一条时,称为单总线结构;CPU中有两条或更多的总线时,构成双总线结构或多总线结构。内部总线是指同一部件,如CPU内部连接各寄存器及运算部件之阅的总线;系统总线是指同一台计算机系统的各部件,如CPu、内存、通道和各类I/O接口间互相连接的总线。2.寄存器之间数据传送比如把PC内容送至MAR,实现传送操作的流程及控制信号为;(PC)→Bus &n原创 2020-12-27 16:56:35 · 2400 阅读 · 0 评论 -
5-2指令周期的数据流
1.指令周期指令周期:CPU从主存中每取出并执行一条指令所需的全部时间。指令周期常常用若干机器周期来表示,机器周期又叫CPU周期。一个机器周期又包含若干时钟周期(也称为节拍、T周期或CPU时钟周期,它是CPU操作的最基本单位)。1.1定长的机器周期与不定长机器周期每个指令周期内机器周期数可以不等,每个机器周期内的节拍数也可以不等。1.2如何理解每个指令周期内机器周期数可以不等,每个机器周期内的节拍数也可以不等?1.3指令执行流程1.4计算机如何判断现在在哪个指令执行阶段1.5指令原创 2020-12-27 16:56:28 · 1209 阅读 · 0 评论 -
5-1CPU的功能和基本结构
1.CPU的功能指令控制。完成取指令、分析指令和执行指令的操作,即程序的顺序控制。操作控制。一条指令的功能往往是由若干操作信号的组合来实现的。CPU管理并产生由内存取出的每条指令的操作信号,把各种操作信号送往相应的部件,从而控制这些部件按指令的要求进行动作。时间控制。对各种操作加以时间上的控制。时间控制要为每条指令按时间顺序提供应有的控制信号。数据加工。对数据进行算术和逻辑运算。中断处理。对计算机运行过程中出现的异常情况和特殊请求进行处理。2.运算器和控制器的功能3.运算器的基本结构原创 2020-12-27 16:56:20 · 330 阅读 · 0 评论 -
4-4-2偏移寻址
学习目标:理解概念学习内容:概念:1、基址寻址:以程序的起始存放地址作为“起点”2、变址寻址:程序员自己决定从哪里作为“起点”3、相当寻址:以程序计数器PC所指地址作为“起点”0.简单理解1.基址寻址(多道程序) 将CPU中基址寄存器(BR)(OS课中的“重定位寄存器”就是“基址寄存器”)的内容加上指令格式中的形式地址A,而形成操作数的有效地址,即EA=(BR)+A。注:基址寄存器是面向操作系统的,其内容由操作系统或管原创 2020-12-24 22:15:40 · 454 阅读 · 0 评论 -
4-4-1数据寻址
学习目标:理解概念学习内容:概念:1、直接寻址2、间接寻址3、寄存器寻址4、寄存器间接寻址5、隐含寻址6、立即寻址7、偏移寻址1.指令寻址vs数据寻址指令寻址数据寻址2.数据寻址指令中的地址码字段并不代表操作数的真实地址,这种地址称为形式地址(A)。形式地址结合寻址方式,可以计算出操作数在存储器中的真实地址,这种地址称为有效地址(EA)。(A)表示地址为A的内容。2.1直接寻址 指令原创 2020-12-24 21:34:34 · 316 阅读 · 0 评论 -
4-3指令寻址
学习目标:理解概念学习内容:概念:1、顺序寻址2、跳跃寻址1.指令寻址 下一条欲执行指令的地址(始终由程序计数器PC给出)2.顺序寻址 顺序寻址可通过程序计数器(PC)加“1” (1个指令字长),自动形成下一条指令的地址。2.1定长指令字结构,主存按字编址设该系统采用定长指令字结构指令字长=存储字长=16bit=2B主存按字编址2.2定长指令字结构,主存按字节编址设该系原创 2020-12-24 22:21:14 · 123 阅读 · 0 评论 -
4-2扩展操作码
学习目标:做题学习内容:概念:1、 操作码、地址码的概念2、 根据地址码数目不同分类3、 根据指令长度分类4、 根据操作码的长度不同分类5、 根据操作类型分类1.扩展操作码指令格式定长指令字结构+可变长操作码(即指令长度固定,操作码根据实际情况改变)2.基础扩展操作码指令字长为16位,每个地址码占4位。前4位为基本操作码字段OP,另有3个4位长的地址字段A1、A2和A3。三地址指令为15条,将1111留作扩展操作码之用二地址指令为15条,将1111 1111留作扩展操作码原创 2020-12-24 15:39:34 · 5217 阅读 · 1 评论 -
4-1指令格式
学习目标:理解概念学习内容:概念:1、 操作码、地址码的概念2、 根据地址码数目不同分类3、 根据指令长度分类4、 根据操作码的长度不同分类5、 根据操作类型分类1.操作码、地址码的概念2.根据地址码数目不同分类2.1零地址指令①不需要操作数,如空操作、停机、关中断等指令②堆栈计算机,两个操作数隐含存放在栈顶和次栈顶,计算结果压回栈顶。如数据结构中的“后缀表达式”在计算机中的操作,下面以“AB+CD*”举例。2.2一地址指令①只需要单操作数,如加1、减1、取反、求补原创 2020-12-24 15:39:18 · 956 阅读 · 0 评论