2023年MIPS单周期CPU实验报告.pdf

上传人:奔*** 文档编号:94823945 上传时间:2023-08-08 格式:PDF 页数:35 大小:4.37MB
返回 下载 相关 举报
2023年MIPS单周期CPU实验报告.pdf_第1页
第1页 / 共35页
2023年MIPS单周期CPU实验报告.pdf_第2页
第2页 / 共35页
点击查看更多>>
资源描述

《2023年MIPS单周期CPU实验报告.pdf》由会员分享,可在线阅读,更多相关《2023年MIPS单周期CPU实验报告.pdf(35页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、勤 中 孽 计 算 机 组 成 原 理 实 验 实 验 报 告(实 验 二)学 院 名 称:专 业(班 级):学 生 姓 名:学 号:时 间:2 0 23 年 11 月 25 日成 绩:实 验 二:单 周 期 CPU设 计 与 实 现 一.实 验 目 的(1)掌 握 单 周 期 CPU数 据 通 路 图 的 构 成、原 理 及 其 设 计 方 法;(2)掌 握 单 周 期 C P U 的 实 现 方 法,代 码 实 现 方 法;(3)结 识 和 掌 握 指 令 与 C P U的 关 系;(4)掌 握 测 试 单 周 期 C P U 的 方 法;(5)掌 握 单 周 期 CPU的 实 现 方 法

2、。二.实 验 内 容 设 计 一 个 单 周 期 的 M I PSCPU,使 其 能 实 现 下 列 指 令:=算 术 运 算 指 令(l)a d d rd,r s,r t(说 明:以 助 记 符 表 达,是 汇 编 指 令;以 代 码 表 达,是 机 器 指 令)00000 0 rs(5 位)rt(5 位)rd(5 位)r e se r ved功 能:rd-rs+rt。r e served为 预 留 部 分,即 未 用,一 般 填“0”(2)ad d i rt,rs,immediat e00 0 001 rs(5 位)rt(5 位)immediate(16 位)功 能:rt-rs+(si g

3、 n ex t end)immed i ate;immedia t e 符 号 扩 展 再 参 与“加 运 算。(3)su b r d,rs,rt000 0 1 0 rs(5 位)r t(5 位)rd(5 位)reserved功 能:r d r s-rt=逻 辑 运 算 指 令(4)or i r t,r s,immed ia t e0 1 0000 rs(5 位)rt(5 位)immediate(16 位)功 能:r t-rs|(ze r o-exte n d)imm e dia t e;imm e d ia t e 做 0扩 展 再 参 与 或 运 算.(5)a n d r d,rs,r t

4、0100 0 1 rs(5 位)r t(5 位)rd(5 位)r e se r v e d功 能:r d-r s&r t;逻 辑 与 运 算。(6)o r rd,r s,r t0100 1 0 rs(5 位)r t(5 位)rd(5 位)r ese r v e d功 能:r d-r s|rt;逻 辑 或 运 算。=移 位 指 令(7)sll r d,rt,sa0 1 1 0 O O 未 用 rt(5 位)r d(5 位)sa reser v ed功 能:r d rt比 较 指 令(8)s i t r d,r s,r t 带 符 号 数 011100 rs(5 位)rt(5 位)rd(5 位)r

5、e s erv e d功 能:i f(rs r t)r d=l e l s e r d=0,具 体 请 看 表 2 ALU运 算 功 能 表,带 符 号=存 储 器 读/写 指 令(9)sw rt,im m e d ia te(rs)写 存 储 器 功 能:m e mo r y r s+(sign-exten d Jimmed i a t e-*-rt;immediate 符 号 扩 展 再 100110 r s(5 位)rt(5 位)im m e dia t e(1 6 位)相 加。即 将 r t 寄 存 器 的 内 容 保 存 到 r s 寄 存 器 内 容 和 立 即 数 符 号 扩 展

6、 后 的 数 相 加 作 为 地 址 的 内 存 单 元 中。(10)lw rt,im m ed iate(rs)读 存 储 器 1 00 1 1 1 rs(5 位)rt(5 位)im m edia t e(1 6 位)功 能:r t-memo r y rs+(s i gn-extend)imm ediat e;im m ediate 符 号 扩 展 再 相 加。即 读 取 r s 寄 存 器 内 容 和 立 即 数 符 号 扩 展 后 的 数 相 加 作 为 地 址 的 内 存 单 元 中 的 数,然 后 保 存 到 r t寄 存 器 中。=分 支 指 令(1 1)beq rs,rt,im

7、m ediate1 10000 r s(5 位)r t(5 位)im m ediate(1 6 位)功 能:if(rs=rt)p c+p c+4+(s ig n e x te n d)i m m e d ia t e 0)p c p c+4+(sign extend)im m edia t e 2 else pc pc+4=跳 转 指 令(1 4)j addr1 1 1 OO 0 a ddr27.2=停 机 指 令(15)h a l t1 1 1 1 1 i 00(26 位)功 能:停 机;不 改 变 P C 的 值,P C保 持 不 变。三.实 验 原 理 1.时 间 周 期:单 周 期 C

8、 P U指 的 是 一 条 指 令 的 执 行 在 一 个 时 钟 周 期 内 完 毕,然 后 开 始 下 一 条 指 令 的 执 行,即 一 条 指 令 用 一 个 时 钟 周 期 完 毕。电 平 从 低 到 高 变 化 的 瞬 间 称 为 时 钟 上 升 沿,两 个 相 邻 时 钟 上 升 沿 之 间 的 时 间 间 隔 称 为 一 个 时 钟 周 期。时 钟 周 期 一 般 也 称 振 荡 周 期(假 如 晶 振 的 输 出 没 有 通 过 度 频 就 直 接 作 为 C PU的 工 作 时 钟,则 时 钟 周 期 就 等 于 振 荡 周 期。若 振 荡 周 期 经 二 分 频 后 形

9、成 时 钟 脉 冲 信 号 作 为 CPU的 工 作 时 钟,这 样,时 钟 周 期 就 是 振 荡 周 期 的 两 倍。)C PU在 解 决 指 令 时,一 般 需 要 通 过 以 下 几 个 环 节:(1)取 指 令(I F):根 据 程 序 计 数 器 P C中 的 指 令 地 址,从 存 储 器 中 取 出 一 条 指 令,同 时,P C 根 据 指 令 字 长 度 自 动 递 增 产 生 下 一 条 指 令 所 需 要 的 指 令 地 址,但 碰 到“地 址 转 移”指 令 时,则 控 制 器 把“转 移 地 址”送 入 PC,当 然 得 到 的“地 址”需 要 做 些 变 换 才

10、送 入 PC。(2)指 令 译 码(I D):对 取 指 令 操 作 中 得 到 的 指 令 进 行 分 析 并 译 码,拟 定 这 条 指 令 需 要 完 毕 的 操 作,从 而 产 生 相 应 的 操 作 控 制 信 号,用 于 驱 动 执 行 状 态 中 的 各 种 操 作。(3)指 令 执 行(EX E):根 据 指 令 译 码 得 到 的 操 作 控 制 信 号,具 体 地 执 行 指 令 动 作,然 后 转 移 到 结 果 写 回 状 态。(4)存 储 器 访 问(M EM):所 有 需 要 访 问 存 储 器 的 操 作 都 将 在 这 个 环 节 中 执 行,该 环 节 给 出

11、 存 储 器 的 数 据 地 址,把 数 据 写 入 到 存 储 器 中 数 据 地 址 所 指 定 的 存 储 单 元 或 者 从 存 储 器 中 得 到 数 据 地 址 单 元 中 的 数 据。(5)结 果 写 回(WB):指 令 执 行 的 结 果 或 者 访 问 存 储 器 中 得 到 的 数 据 写 回 相 应 的 目 的 寄 存 器 中。单 周 期 C P U,是 在 一 个 时 钟 周 期 内 完 毕 这 五 个 阶 段 的 解 决。图 1 单 周 期 CPU指 令 处 理 过 程 对 于 不 同 的 指 令,需 要 执 行 的 环 节 是 不 同 的,其 中 取 字 指 令(l

12、w)需 要 执 行 所 有 五 个 环 节。因 此,CPU 的 时 间 周 期 由 取 字 指 令 决 定。2.指 令 类 型:M I PS 的 三 种 指 令 类 型:R类 型:31 26 25 21 20 16 15 1110 65 0oprs rt rd sa funct6 位 5 位 5 位 5 位 5 位 6 位 I 类 型:31 26 25 21 20 16 15 0oprs rt immediate6 位 5 位 5 位 1 6位 J类 型:31 26 25 0op address6 位 2 6位 其 中,op:为 操 作 码;rs:只 读。为 第 1 个 源 操 作 数 寄 存

13、 器,寄 存 器 地 址(编 号)是 000001 1111,0 01F;r t:可 读 可 写。为 第 2 个 源 操 作 数 寄 存 器,或 目 的 操 作 数 寄 存 器,寄 存 器 地 址(同 上);rd:只 写。为 目 的 操 作 数 寄 存 器,寄 存 器 地 址(同 上);s a:为 位 移 量(shi f t amt),移 位 指 令 用 于 指 定 移 多 少 位;fu net:为 功 能 码,在 寄 存 器 类 型 指 令 中(R 类 型)用 来 指 定 指 令 的 功 能 与 操 作 码 配 合 使用;im m ed i a te:为 1 6位 立 即 数,用 作 无 符

14、 号 的 逻 辑 操 作 数、有 符 号 的 算 术 操 作 数、数 据 加 载(L o a d)/数 据 保 存(S to re)指 令 的 数 据 地 址 字 节 偏 移 量 和 分 支 指 令 中 相 对 程 序 计 数 器(PC)的 有 符 号 偏 移 量;a d d r e s s:为 地 址。在 本 CPU设 计 中,由 于 指 令 的 类 型 较 少,所 以 所 有 指 令 均 由 操 作 码(o p)拟 定。在 R型 指 令 中,功 能 码(fu n c t)为 0 O O O O O o3.控 制 线 路 图 与 数 据 通 路:InsMemRW 1RegWreRWlAddr

15、IDataOutIDatalnIns.MEMV WERead Reg1Read Reg 2Write RegRegister FileRead Data2Write Data-S06在 5rs、66TEIC o n tro lL U S rc6UnitRead Datal1615.OExtSel1.28addr127_2,0,0上 图 为 CPU的 数 据 通 路 和 必 要 的 控 制 线 路 图,其 中 I n s.M e m 为 指 令 存 储 器,Data.M e m为 数 据 存 储 器。访 问 存 储 器 时,先 给 出 内 存 地 址,然 后 由 读 或 写 信 号 控 制 操

16、作。对 于 寄 存 器 组,先 给 出 寄 存 器 地 址,读 操 作 时,输 出 端 就 直 接 输 出 相 应 数 据;而 在 写 操 作 时,在 WE使 能 信 号 为 1,在 时 钟 边 沿 触 发 将 数 据 写 入 寄 存 器。4.控 制 信 号:控 制 信 号 的 作 用控 制 信 号 名 状 态“o”状 态“1”Res e t 初 始 化 P C为 0 P C 接 受 新 地 址 PCWreP C不 更 改,相 关 指 令:h a I t P C更 改,相 关 指 令:除 指 令 ha 1 t 外 A L U S rcA来 自 寄 存 器 堆 d a ta 1输 出 湘 关 指

17、 令:add、su b、addi、o r、an d、o ri、b e q、bne、b gtz sit、sw、Iw来 自 移 位 数 s a,同 时,进 行(z e ro-e xt e n d)s a,即 27关 指 令:s llA L U S rcB 来 自 寄 存 器 堆 d a ta 2输 出,相 关 指 令:add、su b、or、an d、s 1 1、sIt、beq、b n e bgt z来 自 s ig n或 z e ro扩 展 的 立 即 数 相 关 指 令:a d d i、o r i、sw、IwDBDa t aSrc 来 自 AL U运 算 结 果 的 输 出,相 关 指 令:a

18、dd、a d d i%su b、ori、or、a n d s 1 t sll来 自 数 据 存 储 器(D a t a MEM)的 输 出,相 关 指 令:IwR e g Wr e 无 写 寄 存 器 组 寄 存 器,相 关 指 令:b eq bne、bgtz、sw halt、j寄 存 器 组 写 使 能,相 关 指 令:a d d、addi s ub o r i or and、sit、s 11 IwI nsMemRW 写 指 令 存 储 器 读 指 令 存 储 器(Ins.D a ta)/RD 读 数 据 存 储 器,相 关 指 令:1 W 输 出 高 阻 态/W R 写 数 据 存 储 器

19、,相 关 指 令:SW 无 操 作 Reg D st 写 寄 存 器 组 寄 存 器 的 地 址,来 自 r t字 段,相 关 指 令:ad d i、o r i.Iw写 寄 存 器 组 寄 存 器 的 地 址,来 自 r d 字 段,相 关 指 令:a d d、su b、a n d、o r、s lt s l lEx t Sel(zero-ext e nd)imm ed i ate(0扩 展),相 关 指 令:o r i(s i g n ex t e n d)imm e diate(符 号 扩 展),相 关 指 令:a d d i、s w 1 w bne、bne bg t zPC Srcl.O

20、0 0:p c sit、sll、s w、Iw、beq(zer o=0)bne(ze r o=1)bgtz(s i g n=l,c ze r o=1);01:pc-pc+4+(sign-ex ten d Jimmed i a t e,相 关 指 令:b eq(z ero=1)、bne(z e r o=0)、b gtz(sign=0,z er o=0);10:p c-(pc+4)3 1.2 8,a d d r2 7.2,0,0,相 关 指 令:j;1 1沫 用 ALUOp 2.0 A LU 8 种 运 算 功 能 选 择(0 0 0-111),看 功 能 表 A LU功 能 表 ALUO p2.0

21、功 能 描 述 000 Y=A+B 加 001 Y=A-B 减 010Y=B AB 左 移 A 位0 1 1 Y=A V B 或 1 00 Y=A A B 与 101 Y=(AB)?1:0比 较 A与 B不 带 符 号 110if(AB&(A31=B31)Y=1;else if(A3 1&!B 31)Y=1;els e Y=0;比 较 A与 B带 符 号 111Y=A B 异 或 附:本 C P U的 指 令 集 并 未 用 到 A L U的 所 有 功 能。5.重 要 模 块 接 口 说 明:。Instruc t io n Memory:指 令 存 储 器,ad d r ess,指 令 存

22、储 器 地 址 输 入 端 口 Datal n,指 令 存 储 器 数 据 输 入 端 口(指 令 代 码 输 入 端 口)Da t aOu t,指 令 存 储 器 数 据 输 出 端 口(指 令 代 码 输 出 端 口)I nsM em RW,指 令 存 储 器 读 写 控 制 信 号,为。写,为 1读 Data Memory:数 据 存 储 器,a d d re s s,数 据 存 储 器 地 址 输 入 端 口 Data O u t,数 据 存 储 器 数 据 输 出 端 口/RD,数 据 存 储 器 读 控 制 信 号,为 0 读/W R,数 据 存 储 器 写 控 制 信 号,为 0

23、写 R egis t e r Fil e:寄 存 器 组 Read R e g l,r s寄 存 器 地 址 输 入 端 口 Read Reg2,rt寄 存 器 地 址 输 入 端 口 Write R e g,将 数 据 写 入 的 寄 存 器 端 口,其 地 址 来 源 r t或 r d字 段 Wr i te D a ta,写 入 寄 存 器 的 数 据 输 入 端 口 R ead Data l,r s寄 存 器 数 据 输 出 端 口 R ead Data 2,r t寄 存 器 数 据 输 出 端 口 W E,写 使 能 信 号,为 1时,在 时 钟 边 沿 触 发 写 入RST,寄 存

24、器 清 零 信 号,为 0 时 寄 存 器 清 零 ALU:算 术 逻 辑 单 元 r e s u l t,A L U运 算 结 果 zero,运 算 结 果 标 志,结 果 为 0,贝!zero=1;否 贝!z ero=0。s i g n,运 算 结 果 标 志,结 果 最 高 位 为。,则 sign=O,正 数;否 则,s i g n=l,负 数 四.实 验 器 材 电 脑 一 台,Xi 1 in x Viva d o 软 件 一 套,Basys3板 一 块。五.实 验 过 程 与 结 果 1.各 个 指 令 相 应 的 控 制 信 号 指 令 P cWreAL U SrcAALU S r

25、cBD BDat a Sr cR egWr eI n s MemRWRD WR RegDst ExtSelAdd 1 0 0 0 1 1 1 1 1 XA dd i1 0 1 0 1 1 1 1 0 1S u b 1 0 0 0 1 1 1 1 1 XO ri 1 0 1 0 1 1 1 1 0 0And 1 0 0 0 1 1 1 1 1 XO r 1 0 0 0 1 1 1 1 1 XS 1 1 1 1 0 0 1 1 1 1 1 XS 1 t 1 0 0 0 1 1 1 1 1 XSw 1 0 1 X 0 1 1 0 X 1Lw 1 0 1 1 1 1 0 1 0 1Beq 1 0 0

26、X 0 1 1 1 X 1Bne 1 0 0 X 0 1 1 1 X 1Bgtz 1 0 0 X 0 1 1 1 X 1J 1 X X X 0 1 1 1 X XHalt0 X X X 0 1 1 1 X X控 制 信 号 ALUOpAdd 0 00Addi 000Sub 001O ri 011And 100O r 01 1Sil 010S it 11 0Sw 000Lw oooBeq 001B n e 00 1Bg t z 101J 010Halt XXX除 异 或 运 算(1 1 1)外,ALU所 有 功 能 均 被 使 用。PCSrc 指 令 00a d d、a dd i s u b、o

27、 r、ori、and、sit、s 1 1、sw、1 w、beq(z e ro=0)、bne(z ero=1)bgtz(sign=1,或 z e r o=l)01b e q(z er o=1)bne(z e r o=0)bgtz(s i gn=0,zero=0)1 0j2.重 要 模 块 代 码 及 仿 真(1)控 制 单 元(contr o 1 unit)V e r i 1 og代 码:1.m o d u 1 e c ont r o I Un i t(2.i nput 5:0 opc o de,3.inpu t zer o,4.i npu t s i g n,5.o u tp u t re g

28、 PCWre,6.output reg ALUS r cA,7.o u t put r e g ALUSrcB,8.outpu t r e g DBDataS r c,9.out p u t re g RegWre10.ou t p u t r e g In s MemRW,11.out p u t reg RD,12.out p u t reg W R,13.output re g RegDst,14.output reg ExtSel,15.ou t put r e g 1:0 PCS r c,16.outp u t reg 2:0 ALUOp1 7.);18.i n i t i a l

29、b e g in19.RD=1;20.W R=1;21.RegWre=0;22.In s MemRW=0;23.e nd24.a 1 w a y s(opc o de)be g in25.ca s e(opco d e)26.6 b 00 0 000:begi n/a dd27.PCWr e=1;28.A L U S r c A=0;29.ALUS rcB=0;30.DBDa t aS r c=0;31.Re g W re=1;32.I n sM em RW=1;33.R D=1;34.W R=1;35.R e gDst=1;36.A L U O p=3 b00 0;37.e n d38.6Z

30、 b 0 0 0 0 0 1:begin/a d d i39.PCWre=1;40.ALUSrc A=0;41.A LU S r c B=1;42.D B D a t a Sr C=0;43.RegWre=1;44.InsMemRW=1;45.R D=1;46.W R=1:47.RegD s t=0;48.E xtS e 1=1;49.ALUOp=3 b 0 00;50.end51.6 b000 0 10:b e g i n/s u b52.PCWre=1;53.A LU Src A=0;54.ALUS rc B=0;55.DBDa t a S r c=0;56.RegWre=1;57.In

31、s M e m R W=1;58.R D=1;59.WR=1;60.RegDs t=1;61.ALUOp=3 b001;62.end63.6 b 0 10000:be g in/o r i64.P CW r e=1;65.A LUS rc A=0;66.ALUSrcB=1;67.D B D ataS rc=0;68.Re g W r e=1;69.I nsM e mRW=1;70.RD=1;71.W R=1;72.Reg D s t=0:73.E xtS el=0;74.ALUOp=3 b011;75.en d76.6 b0 1 0 0 0 l:b e g i n/a nd77.PCWr e=

32、1;78.A LUS r cA=0;79.ALUSrcB=0;80.DBD ataSrc=0;81.RegWre=1;82.In s MemRW=1;83.RD=1;84.WR=1;85.Reg D s t=1;86.A LUOp=3 b l 0 0;87.end88.6 b 010010:beg i n/o r89.P C W r e=1;90.A LU Sr c A=0;91.ALUSrcB=0;92.D B D a ta S r c=0;93.RegWre=1;94.InsMemRW=1:95.R D=1;96.W R=1;97.R e gD s t=1;98.ALUOp=3 b 0 1

33、1;99.e n d100.6 b 0 11000:be g in/s i 1101.PCWr e=1;102.A L U S rcA=1;103.A LU S rcB=0;104.DB D ataS r c=0;105.Re g Wre=1;106.I nsMemRW=1;107.RD=1;108.W R=1;109.RegD s t=1;110.ALUOp=3 b010;111.e nd112.6b011 1 0 0:begin/s i t113.PCWr e=1;114.A L US r c A=0;115.ALU SrcB=0;116.DBData S r c=0;117.R e gW

34、 r e=1;118.I nsM e m R W=1;119.RD=1;120.W R=1;121.R e g Dst=1;122.ALUOp=3 b ll 0;123.end124.6,b 1 0 0 1 10:b e g i n/sw125.PCWre=1;126.A LU Sr c A=0;127.ALU SrcB=1;128.RegWre=0;129.InsMem RW=1;130.RD=1;131.W R=0;132.E x t S e l=1;133.A LU Op=3 b 000;134.end135.6 b l 0 0 1 11:b eg i n/lw136.PCWre=1;1

35、37.ALUS rcA=0;138.A L US r c B=1;139.D BDa t a S rc=1;140.R e g Wre=1;141.I nsMemRW=1;142.R D=0;143.HR=1;144.RegD s t=0;145.E xt S e l=1;146.ALUOp=3 b00 0;147.e n d148.6 b l l 0 000:be g i n/b eq149.PCWre=1;150.ALUSrcA=0;151.A LU S rc B=0;152.RegW r e=0;153.I nsMemRW=1;154.RD=1;155.W R=1;156.Ex t Se

36、 1=1;157.ALUOp=3b0O 1;158.end159.6 b 11 0 0 0 l:b e g i n/bne160.PCW r e=1;161.ALUSrcA=0;162.ALUS r c B=0;163.Re g Wre=0;164.I nsMemRW=1;165.R D=1;166.W R=1;167.Ex t Sei=1;168.ALUOp=3bO 01;169.e nd170.6 b 1 10010:b e gin171.PCW r e=1;172.ALU S rcA=0;173.ALUSrcB=0;174.RegW r e=0;175.InsM em RW=1;176.

37、R D=1;177.W R=1;178.ExtSel=1;179.AL UOp=3b00 1;180.end181.6 b 1 1 1 0 0 0:begin/j182.P C Wre=1;183.RegW r e=0;184.I n s MemRW=1;185.R D=1;186.W R=1;187.ALUOp=3 z b 0 10;188.end189.6 b l l l l l l:b e g in/h a lt190.PCWre=1;191.Reg W re=0;192.I n s M em R W=1;193.RD=1;194.W R=1;195.end196.d e f a u l

38、 t:beg i n197.RD=1;198.W R=1;199.R e gWre=0;200.I n s MemRW=0;201.e nd202.e n d c a s e203.e n d204.always(opco d e o r z e r o o r s ig n)begin205.i f(opc o d e=6 b l l 1 00 0)/j206.PCSrc=2 b 10;207.e l s e i f(op c o d e 5:3=3 b llO)be g i n208.i f(opc o d e 2:0=3 b000)b e gin209.i f(z ero=1)210.P

39、 C S rc=2 b 0 1;211.e 1 se212.PCSr c=2 b00;213.en d214.else i f(o p code 2:0=3 b 0 0 1)b e gin215.i f(z e r o=0)216.PCS r c=2b01;217.else218.PCSrc=2b00:219.e nd220.e l s e b e g in221.i f(zero=0&s ig n=0)222.PCSrc=2,b0 1;223.e 1 se224.PCSr c=2 b00;225.en d226.e n d227.else b e g in228.PCS r c=2r b00

40、:229.e n d230.end231.endmodu 1 e仿 真 截 图:Heme ValueB opcode5:0 3Ub zero 1S si pi 01&ALDSrcA 0 ALOSrcB 0玷 DBDataSrc 10 InsMoaRT1&即 13 YR1,RagDzt 0/ExtSal1 RBPCSrc(l:O)0 ReALO0p2:O 2(2)程 序 计 数 器(PC)Verilog 代 码:1.m o d u 1 e P C(2.inpu t e lk,3.i nput 3 1:0 PCin,4.i n p u t P C W r e,5.inp u t Rese t,6.

41、ou t put re g 31:0 PCou t7.);8.i n i t i a l b e gin9.PC out=0;10.end11.alwa y s(pos e d ge c Ik)b e gin12.i f(Rese t=0)be g in13.PC o u t=0;14.end15.e l s e i f(PCWre=0)begin16.PC o u t=PCout;17.end18.else b eg i n19.PCout=P C in;20.en d21.end22.e n dmo d ule仿 真 械 图:(3)程 序 存 储 器(i nstruction memory

42、)Ve r i 1 o g代 码:1.module lM em ory(2.i n p u t In s M e mRW,3.i n put 31:0 add r e s s,4.output re g 3 1:0 DataO u t5.);6.reg 7:0 mem 0:12 7;7.i n i t ia 1 b e g i n8.DataOut=32 b l l l l 1 1_ 0 000 0 0 0_ 0 000000_0000000_00000;9.$re a d m c m b(C:/Users/ACE R/De s k t o p/p/p ro je c t_ l/ro m _

43、d a ta.c o e mem);10.e nd11.a lw a y s(ad d ress or In s MemRW)begin12.i f(InsM e mR W=1)begin13.D a t aOut3 1:24=mema d dr e s s;14.DataOut 2 3:16=mema d dress+1;15.Data O ut 15:8=mem ad d r es s+2;16.D at a 0 u t 7:0=m e m a ddr e ss+3;17.end18.e nd19.e n d m o d ule仿 真 截 图:(4)ALUlin e Vdue1 严 i-1

44、一 图 唱.1 悭 野 1|P 止,1|件 型 1,1|100 as 9 InsMeaRX 1!1f l m address31:0 00000004:Ciiijuocu i(00000004 _)LVUOjjiji non toJr ijio o m i 1 i.o o o o c。必 00000001fonodiiiic jI o o o o d3 1,儿 MH显 暨 卡 04010008 40020002)00411800 1E 08622800)I:44622000 1r o o o o o o o o)f gQOQgl I1*I1 II 1 _ _ _:I _ _ _V er i l

45、og代 码:1.mod u le ALU(2.in p u t 2:0 AL Uop c ode,3.i n p u t 3 1:0 r e ga,4.in p u t 31:0 re g b,5.outp u t re g 3 1:0 r es u 16.output z e no,7.out p u t s i g n8.);9.assign zer o=(re s u lt=0)?1:0;10.a s s ig n sign=re s u l t 3 1;11.a l w a ys(ALUop c o de o r re g a o r re g b)begin12.case(A LUo

46、 p co d e)13.3 b 000:re s u lt=r e g a+r e gb;14.3 b0 0 1:re s u I t=r e g a-r egb;15.3 b0 1 0:re s u lt=r egb rega;16.3 b 0 11:re s u lt=r e g a|r e gb;17.3 b l 0 0:re s u lt=reg a®b;18.3bl01:re su I t=(rega re g b)?1:0;/不 带 符 号 比 较 19.3 b 1 10:begin/带 符 号 比 较 20.i f(regaregb&(re g a 31=0&r egb3

47、 1=0)|21.(r ega31=1&re g b 3 1=l)r esul t=1;22.else i f(rega 3 1=0®b31=1)resu 1 t=0;23.e 1 se i f(rega 3 1=1&r e gb 3 1=0)re s u lt=1;24.eIse r esul t=0;25.e n d26.3 b i l l:resul t=rega-r e gb;27.en d case28.end29.endmodu 1 e仿 真 截 图:(5)寄 存 器 堆 Verilog 代 码:1.module R e g F i 1 e(2.i nput CLK,3.in

48、put RST,4.i n pu t R egW r e,5.input 4:0 ReadRegl,6.inp u t 4:0 R e ad R e g2,7.i n put 4:0 WriteR e g,8.i n p u t 31:0 Wri t eData,9.o ut p u t 31:0 ReadDatal,10.outp u t 31:0 Rea d D a t a 21 1.);12.reg 31:0 r c g F ile l:31;/寄 存 器 定 义 必 须 用 r eg 类 型 13.i n te g e r i;14.a s sig n ReadDa t a l=(Re

49、adReg 1=0)?0:re g F il e R e a dRegl;/读 寄 存 器 数 据 15.ass i g n Read Data 2=(ReadRe g 2=。)?0:regFi 1 e R e adR e g 2;16.a 1 ways(neg e dg e CLK)begin/必 须 用 时 钟 边 沿 触 发 17.i f(RST=。)begin18.fo r(i=l;i 3 2;i=i+1)19.regF i l e i=0;20.e n d21.else i f(Re g Wr e=1&W r i t e Reg!=0)beg i n22.r e g Fi 1 e W

50、 r iteReg=W rit e D a t a;23.end24.end2 526.endm o dule仿 真 截 图:Uoac Vklu*I0?3,.|20?)3,.|400 A3 1 600 哼.,1.CLK 0 r-i_ i_ i _ r_n_r RSI 0_ I口 R 怖 0_ 11 一.V1UAK 1C 4:0 00 0 C:in:01D VReta23 1:0 000000001 z00000000 00000002)_00000003 iJjjOCiClil(6)数 据 存 储 单 元(Data Memory)Ver i 1 og代 码:1.m o d u le DataM

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 教案示例

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com