- 1、本文档共28页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Verilog课程设计精选
实验目的(1)学习RISC_CPU的基本结构和原理;(2)了解Verilog HDL仿真和综合工具的潜力;(3)展示Verilog设计方法对软/硬件联合设计和验证的意义;(4)学习并掌握一些常用的 Verilog语法和验证方法。二.实验原理 CPU即中央处理单元的英文缩写,它是计算机的核心部件。计算机进行信息处理可分为两个步骤:(1)将数据和程序(即指令序列)输入计算机的存储器中。(2)从第一条指令的地址起开始执行该程序,得到所需结果,结束运行。CPU的作用是协调并控制计算机的各个部件并执行程序的指令序列,使其有条不紊地进行。因此它必须具有以下基本功能。①取指令——当程序忆在存储器中时,首先根据程序入口地址取出一条程序,为此要发出指令地址及控制信号。②分析指令——即指令译码,这是对当前取得的指令进行分析,指出它要求什么操作,并产生相应的操作控制命令。③执行指令——根据分析指令时产生的“操作命令”形成相应的操作控制信号序列,通过运算器、存储器及输入/输出设备的执行,实现每条指令的功能,其中包括对运算结果的处理以及下条指令地址的形成。将CPU的功能进一步细化,可概括如下:(1)能对指令进行译码并执行规定的动作;(2)可以进行算术和逻辑运算;(3)能与存储器和外设交换数据;(4)提供整个系统所需要的控制。尽管各种CPU的性能指标和结构细节各不相同,但它们所能完成的基本功能相同。由功能分析,可知任何一种CPU内部结构至少应包含下面这些部件:(1)算术逻辑运算部件(ALU);(2)累加器;(3)程序计数器;(4)指令寄存器和译码器; (5)时序和控制部件。三.实验内容通过我们自己动手,设计出一个CPU的软核和固核。这个CPU是一个简化的专门为教学目的而设计的RISC_CPU。在设计中我们不但关心CPU总体设计的合理性,而且还使得构成这个RISC_CPU的每一个模块不仅是可仿真的也都可以综合成门级网表。因而从物理意义上说,这也是一个能真正通过具体电路结构而实现的CPU。为了能在这个虚拟的CPU上运行较为复杂的程序并进行仿真,把寻址空间规定为8K(即13们地址线)字节。四.实验代码1.源代码//----------------------------------clk_gen.v------------------------------`timescale 1ns/1ns //时间单位1ns,时间单位1nsmodule clk_gen(clk,reset,fetch,alu_ena); //模块名clk_gen,参数列表(clk,reset,fetch,alu_ena)input clk,reset; //输入clk,resetoutput fetch,alu_ena; //输出fetch,alu_enawire clk,reset; //wire型变量clk,resetreg fetch,alu_ena; //reg寄存器型变量fetch,alu_enareg[7:0]state; //reg寄存器型变量8位的stateparameter S1=8b,S2=8b,S3=8b,S4=8b,S5=8b,S6=8b,S7=8b,S8=8b,idle=8b; //参数型定义8位二进制常量s1,s2,s3,s4,s5,s6,s7,s8,idlealways@(posedge clk) //always块时钟触发if(reset) //如果reset为真begin //执行begin,and顺序块fetch=0; //fetch非阻塞赋值赋为0alu_ena=0; //alu_ena非阻塞赋值赋为0state=idle; //idle非阻塞赋值给stateendelse //reset为假执行下面begin语句begincase(state) //case表达式(state)S1:beginalu_ena=1; //alu_ena非阻塞赋值赋为1state=S2; //state非阻塞赋值赋为S2endS2:begin alu_ena=0; //alu_ena非阻塞赋值赋为0state=S3; //state非阻塞赋值赋为S3endS3:beginalu_ena=1; //alu_ena非阻塞赋值赋为1state=S4; //state非阻塞赋值赋为S4endS4:beginstate=S5; //state非阻塞赋值赋为S5endS5:state=S6; //state非阻塞赋值赋为S6S6:state=S7; //state非阻塞赋值赋为S7S7:beginfetch=0; //fetch非阻塞赋值赋为0state=S8; //state非阻塞赋值赋为S8endS8:beginstate=S1; //state非阻塞赋值赋为S1endidle
您可能关注的文档
- LBS应用网站开发项目策划方案精选.docx
- juniper防火墙初级动手配置-internal-qubo精选.ppt
- JWT型驼峰无线机车信号系统培训精选.ppt
- JT1-CZ2000型一体化机车信号车载设备系统精选.ppt
- KYT活动培训(经典)精选.ppt
- linux slackware 9.0系统安装、 设置和调试精选.ppt
- LED控制装置标准中主要安全要求的识别及应用精选.ppt
- LED芯片及灯具散热设计全攻略精选.docx
- KOA知识办公自动化系统功能展示精选.ppt
- LDO本科毕业设计论文精选.doc
- 2025年成都市玩偶生产荧光涂鸦互动玩偶开发可行性研究报告.docx
- 2025年成都市海绵生产用于体育馆室外运动场地透水改造可行性研究报告.docx
- 2025年天津市体操鞋企业团建运动应用报告.docx
- 2025年上海市溶洞极限运动(速降)场地开发可行性研究报告.docx
- 2025年上海市涵洞工程施工技术应用可行性研究报告.docx
- 2025年上海市体育场馆设施扎带安全防护可行性研究报告.docx
- 2025年上海市牦牛育肥产业园区建设可行性研究报告.docx
- 2025年旅拍宠物陪伴拍摄项目可行性研究报告.docx
- 2025年上海市进口食品节庆主题快闪店可行性研究报告.docx
- 2025年上海市洗选厂尾矿综合利用产业化可行性研究报告.docx
文档评论(0)