• 8.2单周期CPU设计

    设计处理器步骤ISA确定后,进行处理器设计的大致步骤 分析每条指令的功能,并用RTL(Register Transfer Language)来表示 根据指令的功能给出所需元件,并考虑如何将他们互连 确定每个与元件所需控制信号的取值 汇总所有指令所涉及到的控制信号,生成一张反映指令与控制信号之间关系的表 根据表得到每个控制信号的逻辑表达式,据此设计控制器电路 1.指令功能的描述 数据指定 ...
  • 8.1CPU概述

    1.CPU的基本功能2.CPU的基本组成 数据通路—指令的执行部件 操作元件(ALU) 存储元件—寄存器 控制器—指令的控制部件 译码部件 控制信号生成部件 存储元件—寄存器 数据通路 两类元件组成 组合逻辑元件 时序逻辑元件 元件间的连接方式 总线连接方式 分散连接方式 具体工作 进行数据存储、处理、传送 操作元件:组合逻辑电路 加法器 多路选择器 算逻部件(ALU...
  • 7.3指令系统实例:RISC-V架构

    1.RISC-V指令系统概述 核心:RV32I 扩展标准集:RV32M、RV32F、RV32D、RV32A 32位架构RV32G = RV32IMAFD 压缩指令集RV32C(指令长度16位) 32位架构RV64G = RV64MAFD 压缩指令集RV64C(指令长度16位) 2.RISC-V指令参考卡 R-型为寄存器操作数指令 I-型为短立即数或装入(Loa...
  • 并行程序设计

    #include <thread> thread为一个类 join:主线程会阻塞住,直到该子线程退出为止 detach:主线程丧失对子线程的控制权 主线程结束之后,子线程可能仍在运行 主线程结束伴随着资源销毁,需要保证子线程没有引用这些资源 yield:让出处理器,重新调度各执行线程 get_id:返回当前线程的id,可以以此来标识不同的线程 sleep_for:让...
  • 7.2指令系统设计

    1.操作数和寻址方式数据类型 地址(指针):无符号整数,寄存器编号 数值数据 定点数:一般二进制补码 浮点数:IEEE754标准 十进制数:NBCD码 位、位串、字符、字符串用来表示文本、声音、图像 逻辑(布尔)数据 操作数存放在寄存器或内存单元中,也可以立即数的方式直接出现在指令中 寻址方式 寻址方式:指令或操作数地址的指定方式 地址码编码由操作数的寻址方式决定 指令的寻址——简...
  • 7.1指令系统概述

    一条指令包含: 操作码:指定操作类型(对何种类型数据做何种操作)(操作码长度:固定/可变) 源操作数参照:一个或多个源操作数存在的地址(操作数来源:主(虚)存 / 寄存器 / I/O端口 / 指令本身) 结果值参照:产生的结果存放何处(目的操作数)(结果地址:主(虚)存 / 寄存器 / I/O端口) 下一条指令...
  • 6.2定点数运算

    定点数加减运算1.补码加减运算[x+y]补=2n+x+y=2n+x+2n+y=[x]补+[y]补  (mod2n) [x+y]_补 = 2^n + x+y = 2^n +x+2^n+y = [x]_补+[y]_补\ \ (mod 2^n) [x+y]补​=2n+x+y=2n+x+2n+y=[x]补​+[y]补​  (mod2n) [x−y]补=2n+x−y=2n+x+2n−y=[x]补+[...
  • 泛型程序设计

    类属函数 采用通用指针类型的参数 函数模板 通用指针参数实现1234567891011121314151617typedef unsigned char byte;void sort(void *base, //需排序的数据(数组)内存首地址 unsigned int num, //数据元素的个数 unsigned int element_size, //一个数据元素所占内...
  • 异常处理

    程序错误通常包括: 语法错误 逻辑错误(或语义错误) 运行异常:程序设计对程序运行环境考虑不周而造成的程序运行错误 对于x/y,给y输入了0 文件打开错误 由内存空间不足导致的内存访问错误 可以预料,但无法避免 保证程序的鲁棒性(robustness),需要加一些对可能出现的异常进行预见性处理 异常处理策略 就地处理 异地处理 就地处理常用:调用exit或abort...
  • 输入/输出

    I/O类库基本类ios ​ istream ​ —ifstream ​ —istringstream ​ ostream ​ —ofstream ​ —ostringstream 面向控制台的I/O cin(istream的对象) cout(ostream的对象) cerr和clog(ostream的对象):对应特殊信息(如错误信息),cerr不带缓冲,clog带...