计算机组成原理

计算机组成原理 4 乘法器和除法器的原理

大兔子大兔子 提交于 2020-04-02 19:31:49
简单的情况### 倒霉的NIAC### 硬件的乘法器的实现结构### 1初始化 中间步骤不截了太累 乘法器的优化### 性能上的优化 优化1(自然的内容) 优化2(减少不必要的硬件资源) 解决方案 推广解决方案 除法的运算过程## 除法器的实现### 这里有一个小问题:正数和负数相除的话怎么办,余数和除数怎么处理 ? 除法的优化## 非常复杂,只对方向进行一下探讨 优化1 为什么支持右移? 我猜是要回退X 这是官方给的答案: 因为运算顺序的改变使得商多左移了一位,最后要回退回去 除法性能的优化### 除法的中间结果并不独立 小问题:快速的除法算法? 来源: https://www.cnblogs.com/sfzyk/p/7444061.html

计算机组成原理目录

我的梦境 提交于 2020-03-28 09:21:41
计算机组成原理目录 本文是极客时间 《深入浅出计算机组成原理》 的学习笔记,感兴趣的可以订阅正版。 [基础概念] [指令和运算] [处理器] [存储与I/O系统] [4.1 存储器 - 金字塔层次结构:越往下性能越差,容量越大,价格越低] [4.2 存储器 - 局部性原理:数据库性能跟不上,加个缓存就好了?] [存储器 - 高速缓存] [存储器 - 缓存一致性 MESI 协议:如何让多核CPU的高速缓存保持一致?] [存储器 - 内存:] [存储器 - 总线:] [存储器 - I/O 性能指标] [存储器 - 机械硬盘] [存储器 - SSD硬盘] [存储器 - DMA] [存储器 - 数据完整性] 每天用心记录一点点。内容也许不重要,但习惯很重要! 来源: https://www.cnblogs.com/binarylei/p/12585607.html

计算机组成原理第三章多层次的存储器

大兔子大兔子 提交于 2020-03-22 20:06:20
1. SRAM存储器(静态读写存储器) 存取速度快,容量小,价格昂贵。 基本的静态存储元阵列包含:1. 存储位元 2. 三组信号线(地址线、数据线、控制线)。 通常做成Cache,Cache主要是为了平缓各器件之间的差异。 掉电就丢失。 注意:读写操作不会同时发生。 (读与写功能的互锁逻辑) 2. DRAM存储器(动态读写存储器) 存储容量大,速度慢,价格低廉。 存储位元的记忆原理:DRAM存储器的存储位元是由一个MOS晶体管和电容器组成的记忆电路。——MOS管被当作开关使用,信息1或0则是有电容器上的电荷量来体现的。——充满电时为1,没有电荷时为0。 通常做成主存 SRAM与DRAM的比较 SRAM DRAM 存储信息 触发器 电容 面积 大 小 容量 少 多 存储成本 高 低 破坏性读出 非 是 需要刷新 不要 要 存取速度 快 慢 功率损耗 少 多 集成度 低 高 3. SRAM和DRAM容易扩充,扩充原则:先横后竖 字长位数扩展(位扩展) 需要用多片给定芯片扩展字长位数。 所需芯片:D=设计要求的存储器容量/选择芯片存储器容量 字存储容量扩展(字扩展) 给定的芯片存储容量较小(字数少),此时需要用多片给定芯片来扩展字数。 所需芯片:D=设计要求的存储器容量/选择存储器容量 字扩展: 所需芯片数量=CPU能访问的存储器总容量/每个芯片所能提供的容量。

计算机组成原理学习笔记——主存和CPU连接

坚强是说给别人听的谎言 提交于 2020-03-11 19:51:33
主存和CPU的连接 1、连接原理 2、主存容量扩展技术 2.1、位扩展法 2.2、字扩展法 1.3、字位同时扩展 3、存储芯片的地址分配与片选 3.1、线选法 3.2、译码片选法 4、搭建主存系统 4.1、选取存储芯片 4.2、地址线连接方式 4.3、数据线连接方式 4.4、控制命令线连接方式 4.5、片选线连接方式 1、连接原理 1)主存通过数据总线、地址总线和控制总线与CPU连接。 2)数据总线的位数与工作频率的乘积正比于数据传输率。 3)地址总线的位数决定了可寻址的最大内存空间。 4)控制总线(读/写)指出总线周期的类型和本次输入/输出操作完成的时刻。 主存和 CPU 连接方式大致如下图: 2、主存容量扩展技术 CPU 的数据线数与存储芯片数据位数不一定相等,通常进行位扩展,用多个存储芯片对字长进行扩充,使数据位数与 CPU 的数据线数相等。可用的技术方法有位扩展法、子扩展法和字位同时扩展法。 2.1、位扩展法 位扩展就是将多个存储芯片的地址端、片选端和读写控制端相应并联,数据端分别引出, 如图将 8 片 8K 1 位芯片组成 8K 8 位芯片组,所有芯片的地址线、片选信号线以及命令信号线都分别连在一起,而每片的数据线作为 CPU 数据线的一位。 注意: 仅采用位扩展时,各个芯片连接地址线的方式一样,而连接数据线的方式不一样,某一时刻选中所有芯片

计算机组成原理和Python基础知识

北城余情 提交于 2020-03-10 19:28:21
1、 计算机由硬件系统和软件系统组成。 硬件 :主机和外设部分 软件 :系统软件和应用软件 操作系统 : : 是一种方便用户管理和控制计算机软硬件资源的系统软件,同时也是一个大型的软件系统,其功能复杂,体系庞大,在整个计算机系统中具有承上启下的地位。我们操作计算机实际上是通过操作系统来进行的,它是所有软件的基础和核心 。 语言处理程序 :也称为编译程序,作用是把程序员用某种编程语言(如Python)所编写的程序,翻译成计算机可执行的机器语言。机器语言也被称为机器码,是可以通过CPU进行分析和执行的指令集。 2、 计算机是如何处理程序的? 按照冯·诺依曼存储程序的原理,计算机的工作流程大致如下: 1、用户打开程序,程序开始执行; 2、操作系统将程序内容和相关数据送入计算机的内存; 3、CPU根据程序内容从内存中读取指令; 4、CPU分析、处理指令,并为取下一条指令做准备; 5、取下一条指令并分析、处理,如此重复操作,直至执行完程序中全部指令,最后将计算的 结果放入指令指定的存储器地址中。 3、 python基础知识 1,注释:单行注释和多行注释,在程序代码中对程序代码进行解释说明的文字。 单行注释:以#开头,#右边的所有文字当作说明,而不是真正要执行的程序,起辅助作用 多行注释:‘’‘多行注释’‘’ 4、 变量的定义 变量就是用来存储数据的。程序是用来处理数据的。 5, 变量的类型

计算机组成原理5-预测和冒险

做~自己de王妃 提交于 2020-03-06 17:30:28
1、 CPU 的流水线设计的三大冒险 结构冒险(Structural Hazard)、数据冒险(Data Hazard)以及控制冒险(Control Hazard)。 2、 结构冒险  结构冒险的本质是硬件层面资源的竞争。CPU 在同一个时钟周期,同时在运行两条计算机指令的不同阶段。但是这两个不同的阶段,可能会用到同样的硬件电路。 可以看到,在第 1 条指令执行到访存(MEM)阶段的时候,流水线里的第 4 条指令,在执行取指令(Fetch)的操作。访存和取指令,都要进行内存数据的读取。内存只有一个地址译码器的作为地址输入,那就只能在一个时钟周期里面读取一条数据,没办法同时执行第 1 条指令的读取内存数据和第 4 条指令的读取指令代码。解决这种资源冲突的本质方法就是增加资源,在 CPU 的结构冒险里面。对于访问内存数据和取指令的冲突,一个直观的解决方案就是内存分成两部分,让它们各有各的地址译码器。这两部分分别是存放指令的程序内存和存放数据的数据内存。 现代的 CPU 并不会直接读取主内存。它会从主内存把指令和数据加载到 高速缓存 中,这样后续的访问都是访问高速缓存。而指令缓存和数据缓存的拆分,使得 CPU 在进行数据访问和取指令的时候,不会再发生资源冲突的问题了。 3、 数据冒险 数据冒险是程序逻辑层面的事,有三种类型:分别是 先写后读 (Read After Write,RAW)、

计算机组成原理测试题——第3章系统总线

余生长醉 提交于 2020-03-06 08:49:15
计算机组成原理测试题——第3章系统总线 1单选 下列不属于系统总线的为(D) A. 数据总线 B. 地址总线 C. 控制总线 D. 片内总线 2单选 下列不属于片内总线连接的是(B) A. 寄存器与寄存器间 B. CPU与内存间 C. 寄存器与算逻单元之间 D. CPU芯片内部 3单选 在计算机的总线中,不同信号在同一条信号线上分时传输的方式称为(A) A. 总线复用 B. 串行传输 C. 并行传输 D. 并行或串行传输 4单选 在计数器定时查询方式下,若每次计数都是从0开始,则(A) A. 设备号越小优先级越高 B. 每个设备的优先级相同 C. 无法确定设备优先级 D. 设备号越大优先级越高 5单选 在三种集中式总线控制中,(D)方式对电路故障最敏感。 A. 独立请求 B. 都一样 C. 计数器式定时查询 D. 链式查询 6单选 总线复用方式可以(D)。 A. 增加总线的功能 B. 提高总线的传输带宽 C. 实现并行传输 D. 减少总线中信号线的数量 7单选 在同步通信中,一个总线周期的传输过程是(D)。 A. 先传输数据,再传输地址 B. 只传输地址 C. 只传输数据 D. 先传输地址,再传输数据 8单选 总线上连接着各类设备,按其对总线有无控制能力可分为主设备和从设备两种。若多个主设备同时要使用总线时,就由总线控制器的判优

【计算机组成原理】中国大学MOOC哈工大第三章作业 习题3.14-3.16

南楼画角 提交于 2020-03-06 05:01:30
一、前言 接着上次的进行更新,教材是唐朔飞老师的计算机组成原理第二版,这次对第三章部分习题进行记录 二、题目 3.14 设总线的时钟频率为8MHZ,一个总线周期等于一个时钟周期。如果一个总线周期中并行传送16位数据,试问总线的带宽是多少? 标准答案: 1)由时钟频率8MHz,数据位数为16位得, 总线的带宽为 8 × 16 = 128 Mbps 3.15 在一个32位的总线系统中,总线的时钟频率为66MHZ,假设总线最短传输周期为4个时钟周期,试计算总线的最大数据传输率。若想提高数据传输率,可采取什么措施? 标准答案: 1)由总线传输周期 4/66 M秒,得总线的最大数据传输率为 32 / ( 4/66 )= 528 Mbps 2)若想提高数据传输率,可以提高总线时钟频率、增大总线的宽度或减少总线传输周期的时钟个数 3.16 在异步传输系统中,字符格式为:1个起始位、8个数据位、1个校验位、2个终止位.若要求传输120个字符,求传送的波特率和比特率? 标准答案: 1)由题意,一个字符有 1+8+1+2=12位, 则每秒传送120个字符时,波特率为 12 120 = 1440bps,比特率为 8 120 = 960bps 笔记: 1)一个字节Byet = 8bit,所以1Bps = 8bps,1MBps = 8Mbps,所以3.15结果可以化简为16MBps 2

计算机组成原理--校验码

梦想与她 提交于 2020-03-04 23:47:46
校验码 定义:能够发现或者自动纠正错误的数据编码。通过增加一些冗余码,来检验或纠错编码。两个合法码字之间最少变化的二进制位数,为数据校验码的码距。 码距等于或大于2的数据校验码开始具有检错能力。码距越大,检、纠错能力就越强,而且检错能力总大于等于纠错能力。 三种常用的校验码如下: 奇偶校验码 在原编码上加一个校验码, 码距等于2,可以检出一位错误(或奇位数错误),但不能确定出错的位置,也不能检测出偶数位 。增加的冗余位叫奇偶校验位。 奇校验码:整个校验码中的1的个数为奇数 偶校验码:整个校验码中的1的个数为偶数 常用基于存储器数据的检查或者传输数据的检查。 海明码校验码 在有效信息中加入几个校验位形成海明码 例题: 海明码 循环冗余校验码(CRC) 在信息位后面加上冗余码。 来源: CSDN 作者: 勇敢前行的小蚂蚁 链接: https://blog.csdn.net/weixin_44333359/article/details/104652561

计算机组成原理 - 计算机层次结构 和 性能指标(容量 + 速度)⭐

雨燕双飞 提交于 2020-03-04 10:22:59
计算机层次结构 简单层次结构 计算机: 软件 + 硬件 软件=应用软件+系统软件 计算机层次结构 计算机性能指标(容量+速度) 容量 总容量 = 存储单元个数 × 存储字长(bit) 1Byte = 8bit ∴ 总容量 = 存储单元个数 × (存储字长/8)Byte 存储体 MAR地址寄存器 存储单元个数 2^n 和 译码器对应地址线n条 n个二进制可以表示出多少种不同的状态? n=1 0,1 2^1 n=2 00,01,10,11 2^2 ...... n=10 ... 2^10 K n=20 ... 2^20 M n=30 ... 2^30 G n=40 ... 2^40 T 速度 机器字长/存储字长/指令字长 研究对象:ALU 引入概念: 机器字长: 计算机进行 一次整数 运算 ,所 能处理的 二进制数据的 长度位数 (最多能同时处理多少位) = 内部寄存器大小 计算精度 区别: 存储字长: 存储单元 所存储的二进制单元的 长度位数 指令字长: 指令 中所包含的二进制 长度位数 一般 指令字长是存储字长的整数倍 ,指令字长和存储字长都是字节的整数倍 CPU时间周期/主频/CPI/指令耗时/CPU执行时间 CPU时间周期:最小的时间单元 主频(CPU时间频率) = 1/CPU时间周期 CPI :执行一条指令,所需时钟周期 数目 该指令耗时 = CPI ×CPU时钟周期