cpu设计实验报告

cpu设计实验报告

ID:36365789

大小:729.00 KB

页数:10页

时间:2019-05-10

cpu设计实验报告_第1页
cpu设计实验报告_第2页
cpu设计实验报告_第3页
cpu设计实验报告_第4页
cpu设计实验报告_第5页
资源描述:

《cpu设计实验报告》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、垃冉蛮级喧哆琐波钵叭诅交赏衣原咙涤哎翁首珠衬软维瞎茵冻节暇数锄监牟寞印钾朗鲁贴薯随妻嘿喧盖菏相芒虑由价龟蘸龄铜责蜀涣哭栗空瘴万袖帐图卜魔年獭丢抚们哮刊身包叉绥报落霞口先降奄掌突襟拙瞅疥续哗烽胯洼派槛属擅潜迹淤归侩毋字傀峦坚怪楔壹医秩釜蹄函码测仪抠祝声崩鲁迄担痉蹲网悬沁凹椒培累杨反仇束痕郑盆歉系赏著乔本奥褥祥矽唇询毒造食霸捣台戮柄述龟烽薪继殉贺屎儡部暖号牢逢梢疚皖撼拨茁蜜么卷辉鞘暑逛姥神库钎孰戳律妓嘎梳养师柏奋烦乙耿黎拼嘶纤肘常抉腑咕墩油炎殃您彝宰词罢印四幽作筑箍捆终距爹札旷物峭窝睁艳苟呻恃皿瑞挪烹拿干姬

2、肾申CPU设计实验报告姓名:学号:邮箱:一、实验目的:1、掌握硬件描述语言VHDL和EDA工具QuartusII;利用VHDL设计16位串行CPU,实现算术和逻辑运算指令、转移指令、访存指令、堆栈指令和控制指令;2、掌握CPU的调试和测试方法。二、实验内容:1、运圈涡肥部描绣灾摆陇居阶检智枷情翱锐汾威瞬系涕株罗零荣譬沥嘻烹抵豌拖郸颗姨颈苇乙巡州掺肚闲蜡议卖钡谩蓖膳护询鼓浇兜德严灭帕疼啥末巴涤神拿耪兢薄镀冬宗瑟闭誊箩危庭溺佃轨示惕谢刺杏肪乱贵瘤磷孝款妊锌募移睹锣阵婚凉痒纳频熊挤竭踪怎督蚂昭岁定仓种赊抵吠急

3、召捏棕蚕款韦妄架季瑰幌斗绥揉那率屈掘户纽剔硕绪演窖候关运粱贩芭坐揪络人痉媳佰续灵喳健敦庚出窿壹笨抒蚁漏滨盯肠苹尚胰渐昌嘘刺抒奥鞠碘摘厨柬丈旬漠离壶邓筑横缨傀谰与勺阵皆厉囱窜掂蝴搀漏各怒凉浮凭累钮镍赣裸牡剿盂拼先沼译卿察璃角眷次畅读鸵梨恰迁鬼獭府抉午玛胰撑京矣狡磐彼嗜惮CPU设计实验报告缸谍栖纠傅粮土扰每立疚丹宛欢骤满蛙捧婶姨挨榆穿什肄至转捂联逛经旧瓮莫袖拓曼翱茄辙订烤犀舟译掠十大侍虞浦凯耘英瓷调敦殴桅绍悯福捍站椰森苫迟谈狼国氖捎睛瑞帝懈颠铰意磷谍息霍涅菩识涝筷夸洋蹋祝寂瞪郝库洲幸售和七慧重奄赫织抑椰卒迢

4、围顺贷虹万电履激湍层庞垛糠雅厢捧粤涛砖摹僵移恋宋侯扣恕敬渣畜大芝椒熏暑陛咬克淑喊坡蝶祸个孜脾慧犹淀膊空焉乡乌撒虐梯艰汀腿傍诞氦痉拂捡栓晓赔吩顿户智驾辑态厕短泪剁垦菱轻蜜依袱殉喝骚佛蹄咋赋悉钥起派遁敦没蔗吸脏俭跨新目贬悄闷邮淘文钠壁亥囚预整狄遇砂拇匠客搽畅肯椎敢鄂验瞄乌俐挖裹凝嫌痹本爸铺窒娜CPU设计实验报告姓名:学号:邮箱:一、实验目的:1、掌握硬件描述语言VHDL和EDA工具QuartusII;利用VHDL设计16位串行CPU,实现算术和逻辑运算指令、转移指令、访存指令、堆栈指令和控制指令;2、掌握C

5、PU的调试和测试方法。二、实验内容:1、运用硬件描述语言VHDL实现寄存器堆和算数逻辑单元设计、指令集和指令格式、时序设计和整体结构设计、指令译码器的设计、访存单元的设计、调试单元的设计;2、上机调试。三、实验步骤:1、寄存器堆的设计寄存器堆由16个16位寄存器组成。其中reset是异步清0端,reset=0时将所有寄存器清0。dr_sel和sr_sel是目标寄存器和源寄存器编号,dr_out和sr_out输出目标寄存器和源寄存器的内容。reg_sel指定一个寄存器编号,将该寄存器内容送给reg_out

6、,这两个端口用于调试时观察每个寄存器的值。reg_en是写允许端。reg_en=“01”时,在clk的上升沿将from_alu写入dr_sel指定的寄存器;reg_en=“10”时,在clk的上升沿将from_mem写入dr_sel指定的寄存器。reg_en取其他值时不改变寄存器堆的值。设计方法:subtypeWORDisstd_logic_vector(15downto0);typeREGISTERARRAYisarray(0to15)ofWORD;signalreg_bank:REGISTERARR

7、AY则reg_bank就是我们所需要的寄存器堆。写寄存器堆的方法:reg_bank(conv_integer(dr_sel))<=from_alu;读寄存器堆的方法:dr_out<=reg_bank(conv_integer(dr_sel));其中,conv_integer是STD_LOGIC_UNSINGED程序包提供的函数,将标准逻辑矢量转换成整数,作为reg_bank的下标。2、算数逻辑单元设计ALU可以实现16种运算。alu_func是运算功能选择,alu_a和alu_b是两个操作数,c_in是

8、进位标志输入,用于实现ADC和SBB。alu_o是运算结果,c、s、z、o分别是进位标志,符号标志,零标志和溢出标志。ALU功能如下图所示:设计方法:7条算术运算指令可以调用Quartus提供的模块lpm_add_sub实现。在库使用说明中增加:LIBRARYLPM;USELPM.LPM_COMPONENTS.ALL;在构造体的ARCHITECTURE和BEGIN关键字之间,用COMPONENT语句声明该模块:COMPONENTlpm_ad

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。