当前位置:高等教育资讯网  >  中国高校课件下载中心  >  大学文库  >  浏览文档

中国科学技术大学:《计算机组成原理》课程教学资源(课件讲稿,2022)03 处理器设计(单周期)

资源类别:文库,文档格式:PDF,文档页数:41,文件大小:1.7MB,团购合买
点击下载完整版文档(PDF)

The Processor Implementation: Datapath Control “Computer Organization&Design” 第四章

The Processor Implementation: Datapath & Control “Computer Organization & Design ” 第四章

31 2524 2019 1514 1211 76 0 funct7 rs2 rs1 funct3 rd opcode R-type imm[11:0] rs1 funct3 rd opcode I-type H&P.CA 6ed imm[11:5可 rs2 rs1 funct3 imm[4:0] opcode S-type 附录A.9,4类 imm[31:12] rd opcode U-type Instruction format Primary use rd rs1 rs2 Immediate R-type Register-register Destination First source Second source ALU instructions I-type ALU immediates Destination First source Value Load base register displacement S-type Store Base register Data source to store Displacement Compare and first source second source offset branch U-type Jump and link Register Target address for Target address Jump and link destination for jump and link for jump and link register return PC register Example instruction Instruction name Meaning add x1,x2,x3 Add Regs[x1]-Regs[x2]+Regs[x3] addi x1,x2,3 Add immediate unsigned Regs[x1]-Regs[x2]+3 lw x1,60(x2) Load word Regs [x1]-64 Mem[60+Regs [x2]])32 Mem[60+Regs[x2]] swx3,500(x4) Store word Mem[500+Regs[x4]]-32Regs[x3]32.63 beq x3,x4,offset Branch equal zero if (Regs[x3]=-Regs[x4])PC--PC+(offset<<1) jal xl,offset Jump and link Regs[x1]-PC+4;PC-PC+(offset<<1) jalr x1.x2,offset Jump and link register Regs[x1]-PC+4:PC--Regs[x2]+offset

H&P, CA 6ed 附录A.9, 4类

微结构:数据通路,控制器 EPROM RAM Cs CS A9 A0-A8 A9 A0-A8 Address Bus n Data Bus m PROCESSOR RD WR Control Signals 内存,Io Data& Control Arithmetic Internal Unit Logic Unit data bus Addr Input Registers Instruction Op&BEN&mode Decoder 控制单元 数据通路 (执行单元) Control Signals Control Signals

微结构:数据通路,控制器

内容提要 ●( CPU uArch实现概要 ● 单周期设计:早期RISC采用,$4.3,$4.4 -输入:RV32IISA -输出:功能部件,数据通路,控制器(真值表),Clocking -步骤:5步法 性能分析 COD5 Digital Design and Computer Architecture -$4.1:引言 SECOND EDITION 一 $4.2:设计约定 一 $4.3:数据通路 一$4.4:单周期实现(控制器) M<

内容提要 • CPU uArch实现概要 • 单周期设计:早期RISC采用,$4.3,$4.4 – 输入:RV32I ISA – 输出:功能部件,数据通路,控制器(真值表),Clocking – 步骤:5步法 • 性能分析 • COD5 – $4.1:引言 – $4.2:设计约定 – $4.3:数据通路 – $4.4:单周期实现(控制器)

单周期数据通路概览:七大部件,图4-1 取指:取指,PC+1 译码:译码控制信号 执行:add执行,计算地址, beq完成 Add ● Add 访存:ld读,sd和add完成 写回:d完成 Data Register PC Address Instruction Registers ALU Address Register Data Instruction memory memory Register Data R-type funct7 r52 rs1 funct3 rd opcode I-type immediate[11:0] rs1 funct3 rd opcode S-type immed[11:5] rs2 rs1 funct3 immed[4:0] opcode B-type mmed12.10:5] rs2 rs1 funct3 immed(4:1,11] opcode

单周期数据通路概览:七大部件,图4-1 • 取指:取指,PC+1 • 译码:译码控制信号 • 执行:add执行,计算地址, beq完成 • 访存:ld读,sd和add完成 • 写回:ld完成

Controller概览:附录C DATAPATH REGISTER MUX DFF din DFF din- 0 addr- DFF DATA INSTRUC. -dout ALU -dout din- -dout -dout init- PC -addr addr MEMORY REGISTER inst din- din din- sel DFF wrPC clk ALUop wrR clk rdM wrM clk wrlR clk sel ALUop wrR rdM wrM wrPC wrlR 1.Instruction 2.Decode/ 5.Reg. opcode- Control Fetch Register 3.Execute 4.Memory Write Read clk- Unit rst- (FSM) 1.Instruction 2.Decode/ 5 Reg. Fetch Register 3.Execute 4.Memory Write 日G 功能:译码,正确的时间产生正确的控制信号 Clk,Reset? 由两部分构成:计算输出和下一状态+时序控制 -组合逻辑,计算:真值表(unstructured(简单),PLA(structured two- level logic array))。一可实现单周期控制器 顺序逻辑,时序控制:FSM(ROM,PLA,Sequencer),微程序

Controller概览:附录C • 功能:译码,正确的时间产生正确的控制信号 – Clk,Reset? • 由两部分构成:计算输出和下一状态 + 时序控制 – 组合逻辑,计算:真值表(unstructured(简单),PLA(structured two￾level logic array))。——可实现单周期控制器 – 顺序逻辑,时序控制:FSM(ROM,PLA,Sequencer),微程序

PC,立即数生成/符号扩展,MUX,3-8译码器 M 32 Imm 64 B PC Gen Select 每个周期结束时写入npc 64 无需写控制信号 M 641 Outo Inputs Outputs Out1 12 11 10 Out7 Out6 Out5 Out4 Out3 Out2 Outo Out2 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 Out3 Decoder 0 1 0 0 0 0 0 0 1 0 0 Out4 0 1 1 0 0 0 0 1 0 0 0 Out5 1 0 0 0 0 0 1 0 0 0 0 Out6 1 0 1 0 0 1 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 Out7 1 1 1 1 0 0 0 0 0 0 0

PC,立即数生成/符号扩展,MUX,3-8译码器 每个周期结束时写入npc 无需写控制信号

$A.8.1:D触发器,寄存器 D Master Slave (Data) 0 Clock C C Clock D锁存器:ck电平控制 一位D触发器:ck边沿控制 Preset Preset 数据输入 数据输出 数据使能 D触发器 时钟 Clear 复位 带清零Clear和预置Preset的D触发器 一位寄存器,数据使能=write,clk

$A.8.1:D触发器,寄存器 D 锁存器:clk电平控制 一位 D 触发器:clk边沿控制 = = 带清零Clear和预置Preset的D 触发器 一位寄存器,数据使能=write,clk

n位RegFile结构,图A-8-8,A-8-9 Read register number 1 Write Register 0 Register 1 M 1 Register 0 Read data 1 n-to-2n Register number decoder Register n-2 n-1 Register 1 Register n-1 Read register number 2 Register n-2 Read data 2 Register n-1 Register data clk、Clear、Preset、write?“两读一写”,“异步读,同步写”,“先读后写

n位RegFile结构,图A-8-8,A-8-9 clk、Clear、Preset、write?“两读一写”, “异步读,同步写”, “先读后写

单周期RegFile读写操作约定 ·不同寄存器读写:在一个周期中,F支持两个读和一个写 同一寄存器读写(图4-7,4-32,4-50):add$t0,$s2, $t0 “读和写不能同时”?写控制RegWrite与clk同步,边沿触发 ·后写(late write):前半周期读,后半周期写。一一单周期版! -一个周期内完成读写,但读出的是上一个周期写入的值,“读旧写新” ·先写(early write):与后写相反。一一流水线RAW时“写新读新”! 读出的是前半周期末写入的值。 Read Port 1 Registers Read Write register 1 Read Adr 1 Read data 1 Read register 2 Adr 1 Read Write Read Port 2 register data 2 Write data Read Re gWrite Adr 2

单周期RegFile读写操作约定 • 不同寄存器读写:在一个周期中,RF支持两个读和一个写 • 同一寄存器读写(图4-7,4-32,4-50): –“读和写不能同时”?写控制RegWrite与clk同步,边沿触发 • 后写(late write):前半周期读,后半周期写。——单周期版! –一个周期内完成读写,但读出的是上一个周期写入的值,“读旧写新” • 先写(early write):与后写相反。——流水线RAW时“写新读新”! –读出的是前半周期末写入的值。 10 Write data

点击下载完整版文档(PDF)VIP每日下载上限内不扣除下载券和下载次数;
按次数下载不扣除下载券;
24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
共41页,可试读14页,点击继续阅读 ↓↓
相关文档

关于我们|帮助中心|下载说明|相关软件|意见反馈|联系我们

Copyright © 2008-现在 cucdc.com 高等教育资讯网 版权所有