计算机组成原理笔记
文章平均质量分 71
东北大学计算机组成原理慕课笔记
教材是机械工业出版社《数字设计和计算机体系结构》第二版
炸酱面泡汤
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
7.1性能分析210822
目录如何定义性能响应时间和吞吐率实例程序执行时间:量化硬软件结合的系统有效速度指令数和CPIMIPS (每秒百万条指令):衡量计算机的硬件速度性能计算实例性能评价总结参考资料如何定义性能通过几个量响应时间和吞吐率程序执行时间TCPI: 每条指令的周期数Tc:时钟周期MIPS (每秒百万条指令)T (CPU执行时间响应时间和吞吐率响应时间:一个任务从开始到结束完成的时间对个人用户非常重要吞吐率(带宽):一定时间内完成的任务量对数据中心管理者非常重要实原创 2021-08-22 07:25:50 · 365 阅读 · 0 评论 -
6.7生成可执行文件210821
目录怎样编译&运行一个程序内存里面存储的内容MIPS内存映射Step1 编译Step2 汇编Step3 链接Step4 加载参考资料怎样编译&运行一个程序内存里面存储的内容指令(也称为text)数据全局/静态: 在程序运行之前分配动态: 在程序运行期间分配内存大小MIPS地址宽度位32位,可寻址的空间最多为232= 4G字节,因此内存最大为4G字节地址从0x00000000 到0xFFFFFFFF字地址从0x00000000 到0xFFFFFFFC内存空原创 2021-08-21 10:28:44 · 282 阅读 · 0 评论 -
6.6MIPS寻址方式210821
目录寻址方式寄存器寻址立即数寻址基址寻址相对PC寻址伪直接寻址参考资料寻址方式寻址方式就是怎样确定目标操作数的地址MIPS中有五种寻址方式寄存器寻址操作数在寄存器中例如: add $s0, $t2, $t3例如: sub $t8, $s1, $0立即数寻址16-bit 立即数用作操作数例如: addi $s4, $t5, -73例如: ori $t3, $t7, 0xFF基址寻址操作数地址为: 基址+符号扩展的立即数例如: lw $s4, 72($0)原创 2021-08-21 08:02:11 · 977 阅读 · 0 评论 -
6.5使用MIPS汇编语言编程210819
目录if语句whilefor数组过程(函数)调用栈参考资料if语句要注意的是,MIPS汇编代码中判断的是!=,而不是==whilefor数组过程(函数)调用约定实例栈使用为了防止有些寄存器值会被改变,过程调用前要先把值存入栈参考资料中国大学mooc 计算机组成原理.东北大学...原创 2021-08-19 09:34:16 · 184 阅读 · 0 评论 -
6.4MIPS机器语言210818
目录机器语言机器语言:R -类型实例机器语言:I-类型实例机器语言:J -类型程序存储分支指令条件分支beq条件分支指令bne无条件分支指令j无条件分支指令jr解释机器代码参考资料机器语言32-bit 指令–简单设计有助于规整化: 32-bit 数据和32-bit指令3 种指令格式:R-类型:寄存器操作数I-类型:立即数J-类型:跳转(稍后讨论)机器语言:R -类型有3个寄存器操作数:rs,rt,rd其他字段:op: 操作码或opcode (对于R-类型指令此字段为0)原创 2021-08-18 09:29:16 · 848 阅读 · 0 评论 -
6.3MIPS汇编语言210817
目录汇编语言MIPS指令:加减法MIPS设计原则1:简单设计有利于规整化多指令MIPS设计原则2:加快常见的功能操作数MIPS设计原则3:越小越快MIPS寄存器组字寻址存储器字节寻址存储器:MIPS的寻址方式设计原则4:好的设计需要折中参考资料汇编语言指令:计算机语言中的命令机器语言: 计算机能读懂的指令格式(1’s and 0’s)汇编语言: 人可以读懂的指令MIPS指令:加减法c代码:a = b + c;–> MIPS: add a,b,cc代码:a = b - c;–原创 2021-08-17 12:17:34 · 615 阅读 · 0 评论 -
6.2存储器大小端问题210817
目录大端&小端存储器实例大端和小段的存储器ASCII码使用lb和sb指令访问字符数组参考资料大端&小端存储器乔纳森·斯威夫特(英国政治家及小说家)在格列佛游记中说:小头派成员主张吃鸡蛋打破小头,大头派成员,主张吃鸡蛋打破大头,主要讽刺在英国延续二百年之久的新教与天主教信仰之争大端和小段存储器中,字的地址都是从0开始,只是每个字中的字节地址装入数据的顺序不同大端机器中,地址为0的字节从高字节开始,而小端机器中,地址为0的字节从低字节开始实例大端和小段的存储器IBM公司的原创 2021-08-17 09:11:06 · 210 阅读 · 0 评论 -
6.1体系结构210817
目录体系结构mips体系结构体系结构的设计准则理解计算机体系结构微结构参考资料体系结构跳跃了几级的抽象体系结构:是程序员所见到的计算机由指令和操作空间来定义不同类型体系结构:IA-32,MIPS,SPARC,PowerPC等体系结构不确定底层硬件实现同一体系结构的计算机,往往有不同的硬件实现同属IA-32体系结构的Intel处理器和AMD处理器,底层硬件不同在价格、性能和功耗等方面有不同的折中有些处理器擅长高性能计算,有些处理器功耗特别低mips体系结构原创 2021-08-17 07:48:12 · 159 阅读 · 0 评论 -
5.7逻辑阵列210817
目录PLAs(可编程逻辑阵列Programmable logic arrays)特性点描述法ROM是PLA一种特殊情况FPGAs(现场可编程门阵列Field programmable gate arrays)特性组成通用FPGA布局设计流程参考资料PLAs(可编程逻辑阵列Programmable logic arrays)特性与阵列+或阵列仅仅是组合逻辑固定内部连接点描述法ROM是PLA一种特殊情况下图PLA要用八位译码器实现FPGAs(现场可编程门阵列Field prog原创 2021-08-17 07:30:44 · 274 阅读 · 0 评论 -
5.6存储器210816
目录存储器阵列地址译码驱动系统存储端口RAM与ROMRAM的类型DRAMDRAM的刷新SRAMROM使用存储器阵列的逻辑参考资料存储器阵列有效存储大量数据的存储器阵列3种常见类型DRAM (Dynamic random access memory )SRAM (Static random access memory )ROM (Read only memory )在每一个N-bit地址指定的独特地址空间,读出/写入M-bit 数据值二维存储器位元阵列每一个位元存储一位数据N位地原创 2021-08-16 11:50:21 · 492 阅读 · 0 评论 -
5.5浮点数表示及运算210815
目录浮点数表示定点数缺点实数与浮点数比较浮点数一般形式实例最直接的表示隐含前导位表示偏置阶码表示(IEEE 754标准)浮点数表示范围浮点数运算加减法浮点数舍入处理乘除法参考资料浮点数表示定点数缺点编程困难表示数的范围小数据存储单元的利用率往往很低实数与浮点数比较浮点数一般形式浮点数表示:f = 土M×BE在计算机中B=2隐含表示需要在计算机中存储:S =浮点数符号M=尾数E=阶码精度实例使用32位浮点表示法表示数字22810我们用三个版本表示最后一个版本原创 2021-08-15 09:13:35 · 745 阅读 · 0 评论 -
5.4单精度定点除法器210814
目录恢复余数法算法实例加减交替法算法实例参考资料单精度定点除法有恢复余数法和加减交替法两种方法,在计算机中常用的是加减交替法,因为它的操作步骤少,而且也不复杂恢复余数法算法关键是比较余数与除数绝对值的大小,以决定商上0还是1这样算法就出来了实例每一步都用余数x2再减去除数得出新的余数,如果新的余数为正则商上一个1,否则商上一个0,然后再把上一步的余数再乘2再减去除数,就是所谓的恢复余数这种方法的缺点是:当某一次-Y的差值为负时,要多一次+Y恢复余数的操作,降低了执行速度,原创 2021-08-14 09:12:34 · 326 阅读 · 0 评论 -
5.3单精度定点乘法器210813
目录原码一位乘法器手工计算原理两个问题及解决方法原码一位乘法器原理计算过程逻辑实现原码一位乘法器手工计算原理这里我们要计算0.1101x1.1011会列这种式子上面的叫被乘数,下面的是乘数计算时将乘数每一位取出与被乘数相乘,把位置错开后相加(实际上乘数只有1和0,所以相加的每一个数要么是乘数要么是0)两个问题及解决方法首先是这个乘数的位数不是固定的,可能会有好多,所以我们不能用n个加法器直接加起来,而要用一个寄存器累加结果,这样每次只有两个数相加第二个问题就是计算出来的结果位数也会变多原创 2021-08-13 10:22:25 · 426 阅读 · 0 评论 -
1.1控制复杂性的关键技术210806
抽象对不重要的东西隐藏约束对设计选择的一个内在限制,通过这种限制可以更有效地在更高的抽象层次上工作三条原则层次化(Hierarchy):将系统分成若干模块,再细分若干模块,直到每个模块都易于理解模块化(Modularity):所有模块都定义好功能和接口,以便于它们之间很容易地相互连接而没有副作用规整化(Regularity):在模块之间寻求一致,以便通用重复使用,减少涉及不同模块的数量...原创 2021-08-06 07:31:44 · 192 阅读 · 0 评论 -
1.2关于数制210806
N位二进制数表示范围:[ 0 , 2N-1 ]表示 2N 个数估算2N210 = 1 Kilo 约1k220 = 1 Mega 约1million230 = 1 Giga 约1billion如224 = 24 * 220 约为16million位,字节,半字节,字进制转换出现八进制和十六进制的原因:一方面缩短数字的位数,便于人进行记录和传播;另一方面,它们与二进制的转换比较方便(相对比与十进制之间的转换)参考资料中国大学mooc 计算机组成原理.东北大学...原创 2021-08-06 08:00:58 · 208 阅读 · 0 评论 -
1.3计算机中的信息表示210806
文章目录一、计算机中的数据类型1.数据表示2.数据结构二、数据表示遵循的三个主要原则三、三种信息表示1.无符号数2.有符号数定点数定点数的原码表示定点数的补码表示对数据求补扩展位3.位串一、计算机中的数据类型计算机中有很多数据类型如图,表,树,队列,链表,堆…我们把数据类型分为数据表示和数据结构1.数据表示数据类型中比较常用,比较简单,用硬件实现相对比较容易的几种2.数据结构面向系统软件和实际应用中用到的数据类型和它们的逻辑及物理结构之间的关系二、数据表示我们在计算机组成原理这门课中主要.原创 2021-08-06 10:21:43 · 202 阅读 · 0 评论 -
1.4逻辑代数基础210806
逻辑与逻辑或逻辑非图中的圆圈又称之为气泡,用来表示取反缓冲门逻辑上和电线没有差异,但是从模拟电路角度来看,它可以向电机传递大电流,或者将输出更快地传到多个门的输入,因此我们在看一个系统时要考虑多个层次的抽象,缓冲门正是被它的数字抽象掩盖了真实作用多输入逻辑门更多的两输入逻辑门参考资料中国大学mooc 计算机组成原理.东北大学...原创 2021-08-06 10:55:45 · 150 阅读 · 0 评论 -
1.5数字抽象210806
电压0V --> 信号A=0电压5V --> 信号A=1电源电压最低电压0V,称为地(ground,GND)最高为电源电压VDD逻辑电平逻辑电平(logic level),将连续变量映射到离散的二进制变量噪声容限静态约束几种逻辑系列参考资料中国大学mooc 计算机组成原理.东北大学...原创 2021-08-06 16:24:30 · 530 阅读 · 0 评论 -
1.6功耗问题210806
功耗单位时间内消耗的能量数字系统的功耗包括动态功耗和静态功耗动态功耗给逻辑门电容充电消耗的能量将电容C充电到VDD所需的能量是CVDD2电路工作频率为f: 晶体开关的频率(从1到0 or从0到1)1秒钟内电容充电f / 2次(放电不需要能量,即从1到0)动态功耗:Pdynamic=1/2 C VDD2 f静态功耗逻辑门没有开关变化时,消耗的能量由静态电源电流引起,IDD(也叫漏电流)静态功耗:Pstatic = IDDVDD计算实例参考资料中国大学mooc 计原创 2021-08-06 16:58:22 · 156 阅读 · 0 评论 -
2.1组合逻辑基础210806
数字逻辑电路的组成一个或多个离散变量的输入端和输出端功能规范:描述输入输出关系时序规范:描述当输入改变时输出的延迟结点:一段导线,通过电压传递离散值变量输入结点:A,B,C输出结点:Y,Z内部结点:n1电路组件:E1,E2,E3数字电路的分类组合逻辑电路输出仅仅取决于输入的值没有记忆部件时序逻辑电路输出值取决于当前输入值也取决于之前输入的值有记忆部件组合电路的构成规则每个电路组件本身是组合电路每一个电路结点要么是一个电路的输入,要么仅连接到一原创 2021-08-06 17:42:42 · 305 阅读 · 0 评论 -
2.2布尔代数210807
公理单变量定理多变量定理德摩根定理&&推气泡德·摩根定理T12是数字设计中非常有力的工具。该定理说明,所有项乘积的补等于每个项各自取补后相加。同样,所有项相加的补等于每个项各自取补后相来。根据德·摩根定理,一个与非门等效于一个带逆变器输入的或门。同样,一个或非门等效于一个带反向输入的与门。每个函数的这两种表达式称为对偶式。它们是逻辑等效的,可以相互替换。逆变器也称为气泡(bubble)从输出端向后推气泡或者从输入端向前推气泡,将与门换成或门,反之亦然。从输出端推气原创 2021-08-07 07:17:51 · 308 阅读 · 0 评论 -
2.3用卡诺图化简逻辑函数210807
原理分析卡诺图(Karnaugh Map),简称K图,它是一种根据最小项之间相邻的关系画出的一种方格图,每个小方格代表逻辑函数的一个最小项。相邻项:指两个最小项仅有一个变量互为相反变量ABC+A‾BC=BCABC+ \overline{A}BC=BCABC+ABC=BC,相邻项可以合并从而化简逻辑函数卡诺图能把最小项之间的相邻关系可视化,采用相邻项不断合并的方法就能对逻辑函数进行化简。画法含n个变量的逻辑函数有2n个最小项,我们要在表格中把有相邻关系的最小项放在相邻的位置,首先要有2n个格原创 2021-08-07 09:01:56 · 5640 阅读 · 0 评论 -
2.4从逻辑到逻辑电路210807
绘制电路原理图规则几种组合逻辑模块7段数码管显示译码器多路选择器(多路复用器)Mux根据选择信号S的值在两个输入信号中选择一个输出2:1复用器可用与或逻辑实现或用三态缓冲器实现,三态缓冲器(three-state buffer)又称三态门,除了输入输出端还有一个控制端,控制端输入为1则正常输出,否则呈现高阻抗状态多路复用器可以通过查找表的方式实现逻辑功能译码器(Decoder)译码器是把特定含义的输入二进制代码译成对应的输出高、低有效电平信号。N个输入,2N原创 2021-08-07 10:55:57 · 251 阅读 · 0 评论 -
3.1锁存器和触发器210807
SR(Set/Reset)锁存器原创 2021-08-08 07:35:13 · 373 阅读 · 0 评论 -
3.2同步时序逻辑设计210808
目录两种常见的同步时序电路有限状态机(FSM , finite state machine)一、什么是有限状态机二、为什么要用有限状态机三、怎样设计参考资料两种常见的同步时序电路有限状态机流水线有限状态机(FSM , finite state machine)一、什么是有限状态机根据有限状态机功能规范的描述,FSM通常分为两类。在Moore型有限状态机中,输出仅仅取决于机器的当前状态。在 Mealy型有限状态机中,输出取决于当前状态和当前输人。二、为什么要用有限原创 2021-08-08 09:29:06 · 241 阅读 · 0 评论 -
3.3时序逻辑电路的时序问题210809
目录时序问题输入时序约束输出时序动态约束建立时间约束保持时间约束例题参考资料时序问题时序逻辑电路中,触发器在时钟上升沿到达时将D复制到输出Q,这个过程称为在时钟沿对D进行采样。D在进行采样的时候必须保持稳定类似于拍照片,物体在相机的孔径时间必须保持稳定,如果不稳定,会发生亚稳态现象输入时序约束建立时间:tsetup=数据在时钟沿之前必须保持稳定的时间(稳定,即不改变)保持时间:thold=数据在时钟沿之后必须保持稳定的时间孔径时间:t=数据在时钟沿附近必须保持稳定的时间(ta= tse原创 2021-08-09 09:59:57 · 1770 阅读 · 0 评论 -
3.4并行210809
目录几个概念并行空间并行时间并行实例:烤饼干没有并行空间并行-找人帮忙时间并行-烤第二盘时制作第一盘关于流水线参考资料几个概念任务(token) :定义为一组输入,该组输入经过处理后能产生一组输出延迟(Delay) :一个任务从开始到结束所需要的时间吞吐量(throughout) :系统单位时间内产生任务的数量。并行可以提高吞吐量并行空间并行多个相同的硬件在同一时间处理多个任务时间并行任务被分配成不同的阶段也被称作流水线例如, 一个装配流水线实例:烤饼干Ben 决定原创 2021-08-09 11:44:26 · 217 阅读 · 0 评论 -
5.1加法器210811
目录加法器半加器全加器进位传播加法器行波进位加法器先行进位加法器前缀加法器比较参考资料加法器半加器首先从构建一个一位的半加器,有两个输入和一个输出,如果A,B均为1,相加就会产生2,而2不能用一位二进制位表示,也就会产生进位,这个进位用Cout输出全加器在多位加法器中,Cout会被相加或者进位到下一个高位,然而半加器没有接收上一位进位的输入端,因此会有全加器(full adder)解决这个问题进位传播加法器一个N位加法器将两个N位输入(A、B)和一位进位C相加,产生一个N位结果S原创 2021-08-11 11:00:06 · 804 阅读 · 0 评论 -
5.2常见数字模块210812
目录减法器比较器相等比较器数量比较器(量值比较器)算数逻辑单元(ALU)ALU设计功能解析与或、加减操作小于置位操作(SLT)移位器电路图示使用移位器做乘除法计数器移位寄存器参考资料减法器减法器实现比较简单,改变减数符号并相加改变二进制补码的符号就是反转所有位再加一可以通过反相器实现反转所有位进位传播加法器的Cin为1,从而把补码加1比较器比较器的作用是判断两个二进制数是否相等,或者比较大小有两种常见比较器,相等比较器和数量比较器相等比较器相等比较器用同或门比较每一位是否相等原创 2021-08-12 10:03:39 · 773 阅读 · 0 评论
分享