PARWANCPU状态机设计

PARWANCPU状态机设计

ID:39765585

大小:590.50 KB

页数:16页

时间:2019-07-11

PARWANCPU状态机设计_第1页
PARWANCPU状态机设计_第2页
PARWANCPU状态机设计_第3页
PARWANCPU状态机设计_第4页
PARWANCPU状态机设计_第5页
资源描述:

《PARWANCPU状态机设计》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、标准文档基于FPGA的数字系统设计大作业学号:13091378姓名:邢武天班级:130914实用文案标准文档题目一:设计Parwan的controlsection内部状态机s1s2..s9,并给出功能仿真?题目二:利用分层结构设计ParwanCPU,并给出功能仿真?(利用在实验课中所给出的TESTBENCH)实验原理图ControlSectionStructure:s1…s9(如下图所示)实用文案标准文档InputsandoutputsofPARWANcontrolsections:–Appli

2、edto,categories,signalname,functions实用文案标准文档实验过程1.1创建工程(1)打开ISE13.x软件,选择File->NewProject在弹出的对话框中输入工程名和路径。(2)单击下一步选择所使用的芯片。Spartan3E开发板的芯片型号为Spartan3EXC3S500E芯片,FG320封装。(3)单击Next,进入工程信息页面,确认无误后,点击Finish完成工程的创建。1.2测试文件(1)选择菜单栏中的Project->NewSource。(2)在Selec

3、tSourceType窗口中,选择左侧的VHDLTestBench,在右侧FileName栏中输入文件名par_control_unit_tb(3)单击Next按钮,选择关联文件。1.3实验截图实用文案标准文档实验代码在实现过程中,除了定义CPU的信号接口外,还设置了一个输出类型的接口,名字叫present_state_value,主要是用来在调试或仿真的过程中输出CPU所处的状态,便于调试分析。整个状态机的实现过程主要使用了case…IS…when逻辑结构。用了present_state和next_s

4、tate两个状态变量。详细的实现代码如下所示:LIBRARYIEEE;USEIEEE.std_logic_1164.ALL;USEwork.synthesis_utilities.ALL;--ENTITYpar_control_unitISPORT(clk:INstd_logic;--registercontrolsignals:load_ac,zero_ac,load_ir,increment_pc,load_page_pc,load_offset_pc,reset_pc,load_page_mar,

5、load_offset_mar,load_sr,cm_carry_sr,--busconnectioncontrolsignals:pc_on_mar_page_bus,ir_on_mar_page_bus,pc_on_mar_offset_bus,dbus_on_mar_offset_bus,实用文案标准文档pc_offset_on_dbus,obus_on_dbus,databus_on_dbus,mar_on_adbus,dbus_on_databus,--logicunitfunctioncon

6、troloutputs:arith_shift_left,arith_shift_right:OUTstd_logic;alu_and,alu_not,alu_a,alu_add,alu_b,alu_sub:outstd_logic;--inputsfromthedatasection:ir_lines:INstd_logic_vector(7DOWNTO0);status:INstd_logic_vector(3DOWNTO0);--memorycontrolandotherexternalsigna

7、ls:read_mem,write_mem:OUTstd_logic;interrupt:INstd_logic;--testpresent_state_value:outstd_logic_vector(3DOWNTO0));ENDpar_control_unit;--ARCHITECTUREdataflow_synthesizableOFpar_control_unitISTYPEcpu_statesIS(s1,s2,s3,s4,s5,s6,s7,s8,s9);SIGNALpresent_state

8、,next_state:cpu_states;SIGNALnext_state_value:std_logic_vector(3DOWNTO0);BEGINclocking:PROCESS(clk,interrupt)BEGINIF(interrupt='1')THENpresent_state<=s1;present_state_value<="0001";ELSIFclk'EVENTANDclk='0'THENpresent_state

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

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

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