随笔分类 -  处理器cpu

摘要:存储层次结构概况 这是我们非常熟悉的冯·诺依曼计算机结构, 那这其中哪些部件和存储功能有关呢? 存储器和外部记录介质肯定具有存储功能,另外还有一个自带存储功能的运算器,为了描述方便,我们把这些部件统称为存储器。那么我们看一下计算机中对存储器有哪些要求 ? 1、首先存储器当中应该保存了将要运行的程序和 阅读全文
posted @ 2023-07-22 09:58 luckylan 阅读(275) 评论(0) 推荐(0) 编辑
摘要:除法器 与乘法相比,除法的实现较为复杂,运算过程如下: 过程: 被除数和余数:将余数和被除数视为一个,共享一个寄存器,初始值为被除数 除数:可视为不断右移,并和被除数相减 商:每个bit依次生成,可视为不断左移 除法器的工作流程 要注意的是,与手算相比,电路实现总是将余数减除数,所以如果出现差小于0 阅读全文
posted @ 2023-07-17 14:21 luckylan 阅读(368) 评论(0) 推荐(0) 编辑
摘要:乘法器 顺序乘法器 我们需要明确的是两个D_WIDTH位宽的数相乘,结果位宽为2*D_WIDTH, 对于负数乘法,可以利用乘数和被乘数的符号位进行异或得到积的符号位,通过判断符号位得到乘数和被乘数的绝对值,将负数乘法转为无符号数乘法进行运算,首先初始化乘数寄存器和被乘数寄存器Multiplicand 阅读全文
posted @ 2023-07-17 13:47 luckylan 阅读(1124) 评论(0) 推荐(0) 编辑
摘要:减法器 半减器 半减器用于计算两比特Xi和Yi的减法,输出结果Di和向高位的借位Bo(Borrow output)。其真值表、逻辑表达式、Verilog描述和门电路图如下: module half_subtract( input xi, input yi, output di, output bo) 阅读全文
posted @ 2023-07-17 13:38 luckylan 阅读(350) 评论(0) 推荐(0) 编辑
摘要:加法器 1.1 半加器 半加器用于计算2个单比特二进制数a与b的和,输出结果sum(s)和进位carry(c)。在多比特数的计算中,进位c将作为下一相邻比特的加法运算中。单个半加器的计算结果是2c+s。其真值表、逻辑表达式、verilog描述和电路图分别如下所示。 逻辑表达式: $$s=a'b |a 阅读全文
posted @ 2023-07-17 11:32 luckylan 阅读(1271) 评论(0) 推荐(1) 编辑
摘要:本文主要内容如下,基本涉及了cache的概念,工作原理,以及保持一致性的入门内容。 1 为什么需要Cache 1.1 为什么需要Cache 我们首先从一张图来开始讲为什么需要cache. 上图是CPU性能和Memory存储器访问性能的发展。我们可以看到,随着工艺和设计的演进,CPU计算性能其实发生了 阅读全文
posted @ 2023-06-11 11:33 luckylan 阅读(262) 评论(0) 推荐(0) 编辑
摘要:经常,一些性能测试人员对延时(Latency)、吞吐(Throughput)、带宽(Bandwidth)和响应时间(Response Time)感到迷惑,今天,就用一些简单的例子来说明它们之间的区别。 从上图(水管示意图),基本可以看出三个重要组件:延时(Latency)、吞吐(Throughput 阅读全文
posted @ 2023-05-19 10:53 luckylan 阅读(1450) 评论(0) 推荐(0) 编辑