




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
建构Beta计算机
6.004-Fall200210/29/0L15-BuildingaBeta1
中央处理单元的设计取舍
最大效能:以每秒可执行的指令数来衡量
最小成本:以电路的大小来衡量
最佳效能/价钱:以MIPS(每秒百万指令)与大小的来比例来衡量.
在重视能量消耗的应用中,MIPS/瓦特也很重要.
6.004-Fall200210/29/0L15-BuildingaBeta2
效能之量测
每秒百万指令
时脉频率(百万赫)
ClockFrequency(MHz)
MIPS=
C.P.L
每指令所需时脉数
推进效能…
今天:1时脉/指令
下次:以管路技术来达成更多百万赫
下下次:修正不同的管路技术问题
6.004-Fall200210/29/0L15-BuildingaBeta3
Beta指令集
操作类别:Reg[Rc]<-Reg[Ra]opReg[Rb]
11xxxx|RcIRa]rteraiC(signed;以操作码区分的指令类
另小
操作类别:Reg[Rc]-Reg[Ra]opSXT(C)
两种格式共享的操作码(OPCODE):OP
ADDSUBMUL*DIV*"optionalOPC
CMPEQCMPLECMPLT
ANDORXORMEM
SHLSHRSRATransferofControl
31xxxx|RcRaiteraiC(signed)
LD:RegNc]-Ver[Reg[Ra]*SXT(C)]
ST:MeT[Reg[Ra]+SXT(C»—Reg(Rc]
Reg(Rc]—PCM;PC4-Reg[Ra:
BEQ:Reg[Rc]—PC+4;if司T:nenPC—PCWSXT(C)
BNEReg(^cj4-PC+4;-RegfRaW)tnenPC-nc+4WSXT《C)
LOR:^eg[Rc]1Vem(PC+4+4'SXT(C)]
O.UUH--ran乙uu/Iu/“/uLIO—ouiiuiiiyaoeia4
达成方法:累进功能法
每个指令是由一个简单的功能组件成来达成的.我们将试着实现各个指令类别
的数据路径,然后再将它们合并(使用解多任务器等).
步骤:我们的组件百宝袋:
1.操作类指令bI缓存器匹
2.存取类指令
3.跳跃与分流类指令、口解多任务器
4.例外
父三7“黑盒子”运算逻辑单元
5.合并数据路径
RA1RA2
WA
Register
inctruoUon
;eMemory
(3-port)D
RD2内存
6.004-Fall200210/29/0L15-BuildingaBeta5
多端口缓存器档案
6.004-Fall200210/29/0L15-BuildingaBeta6
缓存器档案之时序
两组组合逻辑式读取端口,一组时脉控制式写入埠
WE__________________L___3______
)000播XX施必XXX二DWWX
WDXXXXXXXXXXXX施政CMD000纶XXXX
%
如果(举例来说)WA=RA1,将会如何???
RD1会读取“旧的"Reg[RA1]之值,一直到下一个时脉边缘为止!
6.004-Fall200210/29/0L15-BuildingaBeta7
起始点:ALU操作
32•位(4-字节)ADD指令:
1oooodooi0王001d0001dooooooooooa
OpCodeRcRa◎(unused)
对BETA而言,表示Reg[R4]—Reg[R2]+Reg[R3]
首先,硬件必需能够:
・读取下一个32•位指令
•指令译码(DECODE):ADD,SUB,XOR,等等
•从缓存器档案进行读取(READ)(Ra,Rb)之操作;
•执行(PERFORM)指定的操作;
•将结果写回(WRITE)缓存器档案(Rc).
6.004-Fall200210/29/0L15-BuildingaBeta8
指令取得/译码
•使用计数器来取得(FETCH)下一个指令:
程序计数器(PC)
•使用PC来当作内存地址
・力口4到PC,然后在时脉结束时加载新的值
・从内存取得指令
o直接使用某些指令字段(缓存器编号,
16■位之常数)
o使用<31:26>位来产生控制讯号
INSTRUCTION
WORD
FIELDS
CONTROLSIGNALS
6.004-F;L15-BuildingaBeta9
ALU操作之数据路径
6.0..daBeta10
ALU操作(常数存在时)
6.004-Fall200210/29/0L15-BuildingaBeta11
“加载'指令
6.004-Fall200210/29/0L15-BuildingaBeta12
“储存”指令
6.004-Fall200210/29/0L15-BuildingaBeta13
“跳跃”(JMP)指令
6.004-Fall200210/29/0L15-BuildingaBeta14
BEQ/BNE(当相等/不等时,则跳跃)指令
6.004-Fall200210/29/0L15-BuildingaBeta15
“加载相对地址”指令
rteraiC(sigred;
LDR:Reg[Rc]-Mem[PC+4+4*SXT(C)]
等等,“加载相对地址”指令有什么好处呢???我认为
・程序代码是单纯的,举例来说,它们是只读的,并且存在一个“程序”内存区;
•但数据是可读/写的,而使用以下方法之一来储存
•存在堆栈(STACK)中(内部);或
•在某些外部变数中;或,______________
•存在一个外部的储存堆栈(HEAP)./c:x=x♦i:
所以,为什么一个指令要设计成可以加载“靠近”这个血wxO)
指令的数据呢???LDR(clr:
LDR(clzrrl)
当数据是“地址“及“其它较大的常数”时MULCxO,xl,xO)
ST(xOzX)
6.004-Fall200210/29/0L15-BuildingaBeta16
“加载相对地址”(LDR)指令
RcliteralC(signed)
ICR—Mcm[R:444.4e6XT(C)]
Incruoton
Memory
向LDR:Reg[Rc]—Mem[PC+4+4*SXT(C)]
?)<15:1产厂、Rc:<2S21>
4:【一
Register
ControlLogic
Epc
RA
EA二
B
itvAu
m,
m
<E
6.004-Fall200210/29/0L15-BuildingaBeta17
例外处理
计划::
•中断正在执行的程序
•呼叫例外处理(像是一个过程调用)
•返回并继续执行.
我们希望有可修复的中断以达成
•由中央处理器(CPU)或系统产生的同步化事件
错误(例如,不合法的指令,除数为0,不合法的内存地址)
捕捉及系统呼叫(例如,从外围读取一个字符)
・由I/O所产生的异步化事件
(例如,键盘键入,收到封包,磁盘传输完成)
关键:对于被中断程序的透明度.
•这对异步化中断是最难的
6.004-Fall200210/29/0L15-BuildingaBeta18
实施方法…
例外如何运作:
•不要执行现在的指令
取而代之的,假装有一个“强制”的过程调用
•储存现在的程序计数(PC)(事实上是现在的PC+4)
•用例外向量载入PC
•同步化例外是0x4,异步化例外是0x8
问题:要把现在的PC+4存到哪呢?
•我们的方法:保留一个缓存器(R30,也称XP)
•禁止使用者程序使用XP.为什么?
例子:DIV指令并未实施不合法的操作:
PUSH(XP)
取得指令于Mem[Reg[XP]-4]
LD(R31,A,R0)检查DIV操作码,找到缓存器号码
LD(R31,B,R1)用软件来执行这个操作,填入结果缓存器
DIV(R0,R1,R2)
POP(XP)
ST(R2,C,R31)
JMP(XP)
6.004-Fall200210/29/0L15-BuildingaBeta19
例外
BadOpcode:Reg[XP]-PC+4;PC-“川Op”
Other:Reg[XP]-PC+4;PC-“Xadr”
intirucftcn
(30
—
X
u
H
力
幺
/
力
・;
6.004-Fall200210/29/0L15-BuildingaBeta20
控制逻辑
*Or
39今%3
ALUFNF(op)F(op)y———*——
WERF1110111i11
ffSEL0111——————
WbSEL112—000200
WR0001000000
RA25EL0—1——————
PC5EL00002Z?1:0Z?0:1034
ASEL0000——
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 【正版授权】 ISO 4075:2025 EN Polysulfone (PSU) - Effect of time and temperature on expected strength
- 花画艺术在宠物用品设计的趣味性考核试卷
- 理论与实践相结合的公路工程复习策略试题及答案
- 数据中心网络架构试题及答案
- 矿物加工厂质量管理与质量控制考核试卷
- 金属工艺品的工艺研究与技术开发挑战应对策略考核试卷
- 纳米材料检测技术考核试卷
- 嵌入式产品开发过程中的法律问题试题及答案
- 行政组织理论中的领导者角色与权责文化试题及答案
- 金冶炼厂的碳排放减少与碳足迹管理考核试卷
- 《中国老年高血压管理指南(2023版)》解读
- 七年级下册《山地回忆》课件
- 浦东文员面试题及答案
- 腰椎病的康复护理
- 2024-2025学年度第二学期人教版八年级下册物理暑假作业含答案第一天
- 2024年中国甘脲行业调查报告
- 浙江省2025年中考第二次模拟考试英语试题(含答案无听力原文及音频)
- 初创公司薪酬方案
- 2025年大学期末民法试题及答案
- 《辅助生殖技术探究》课件
- 中医儿科学研究进展知到课后答案智慧树章节测试答案2025年春浙江中医药大学
评论
0/150
提交评论