一、设计目标设计目的:设计一个含有36条指令的MIPS单周期处理器,并能将指令准确的执行并烧写到试验箱上来验证设计初衷1、理解MIPS指令结构,理解MIPS指令集中常用指令的功能和编码,学会对这些指令进行归纳分类。
2、了解熟悉MIPS体系中的处理器结构3、熟悉并掌握单周期处理器CPU的原理和设计4、进一步加强Verilog语言进行电路设计的能力二、实验设备1、装有xilinxISE的计算机一台2、LS-CPU-EXB-002教学系统实验箱一台三、实验任务1.、学习MIPS指令集,深入理解常用指令的功能和编码,并进行归纳确定处理器各部件的控制码,比如使用何种ALU运算,是否写寄存器堆等。
2、单周期CPU是指一条指令的所有操作在一个时钟周期内执行完。
设计中所有寄存器和存储器都是异步读同步写的,即读出数据不需要时钟控制,但写入数据需时钟控制。
故单周期CPU的运作即:在一个时钟周期内,根据PC值从指令ROM中读出相应的指令,将指令译码后从寄存器堆中读出需要的操作数,送往ALU模块,ALU模块运算得到结果。
如果是store指令,则ALU运算结果为数据存储的地址,就向数据RAM发出写请求,在下一个时钟上升沿真正写入到数据存储器。
如果是load指令,则ALU运算结果为数据存储的地址,根据该值从数据存RAM中读出数据,送往寄存器堆根据目的寄存器发出写请求,在下一个时钟上升沿真正写入到寄存器堆中。
如果非load/store操作,若有写寄存器堆的操作,则直接将ALU运算结果送往寄存器堆根据目的寄存器发出写请求,在下一个时钟上升沿真正写入到寄存器堆中。
如果是分支跳转指令,则是需要将结果写入到pc寄存器中的。
2024/7/22 14:06:56 2.55MB 计算机组成原 龙芯中科
1
vivado工程,模块清晰包含车流量判断分频数码管显示按键防抖动模块
2024/7/22 14:52:45 744KB verilog 交通灯 防抖动
1
Altera_CycloneVGXFPGADevelopmentKitfpga开发板资料Cadence硬件原理图+PCB+Verilog例程源码+文档资料
1
完整的音乐播放器verilog代码各个模块的内容都在其中,模块清晰了然,资源很好,欢迎大家下载截图:https://i.loli.net/2019/11/20/Ee1t9HzmqPUoiM2.png
2024/7/21 6:49:01 15KB verilog
1
用于RS编码的原理与实现,内含多篇高价值文章与原理说明,另有实用参考代码
2024/7/19 20:40:42 9.95MB RS编码 verilog matlab
1
包含有符号乘法器以及无符号乘法器的Verilog源码,同时带有tb文件用于仿真测试,在Vivado和Modelsim上验证通过
2024/7/19 12:29:53 2KB 乘法器 Verilog
1
采用Verilog语言设计的移位相加型8位硬件乘法器小论文
2024/7/19 11:49:49 156KB Verilog 乘法器
1
verilog实现八位数码管显示,该模块输入BCD码,就可以显示
3KB verilog
1
这是verilog最基础的练习题,希望对初学者了解verilog的使用有所帮助。
2024/7/12 22:42:19 578KB verilog
1
基于verilog的ps_2键盘驱动,已经验证综合即可实现
2024/7/12 20:31:35 7KB ps_2驱动
1
共 872 条记录 首页 上一页 下一页 尾页
在日常工作中,钉钉打卡成了我生活中不可或缺的一部分。然而,有时候这个看似简单的任务却给我带来了不少烦恼。 每天早晚,我总是得牢记打开钉钉应用,点击"工作台",再找到"考勤打卡"进行签到。有时候因为工作忙碌,会忘记打卡,导致考勤异常,影响当月的工作评价。而且,由于我使用的是苹果手机,有时候系统更新后,钉钉的某些功能会出现异常,使得打卡变得更加麻烦。 另外,我的家人使用的是安卓手机,他们也经常抱怨钉钉打卡的繁琐。尤其是对于那些不太熟悉手机操作的长辈来说,每次打卡都是一次挑战。他们总是担心自己会操作失误,导致打卡失败。 为了解决这些烦恼,我开始思考是否可以通过编写一个全自动化脚本来实现钉钉打卡。经过一段时间的摸索和学习,我终于成功编写出了一个适用于苹果和安卓系统的钉钉打卡脚本。
2024-04-09 15:03 15KB 钉钉 钉钉打卡