计算机组成原理第二次上机实验报告(共12页).doc

上传人:飞****2 文档编号:14514037 上传时间:2022-05-05 格式:DOC 页数:12 大小:224.50KB
返回 下载 相关 举报
计算机组成原理第二次上机实验报告(共12页).doc_第1页
第1页 / 共12页
计算机组成原理第二次上机实验报告(共12页).doc_第2页
第2页 / 共12页
点击查看更多>>
资源描述

《计算机组成原理第二次上机实验报告(共12页).doc》由会员分享,可在线阅读,更多相关《计算机组成原理第二次上机实验报告(共12页).doc(12页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、精选优质文档-倾情为你奉上青岛理工大学实 验 报 告实验课程: 计算机组成原理I 实验日期: 2015年 10月23日, 交报告日期:2015 年11月2日,成绩:实验地点:现代教育技术中心303计算机工程 学院,计算机科学与技术 专业, 班级:计算132班 实验指导教师:林孟达 批阅教师:林孟达同组学生姓名学号一、 实验课题及内容 按照题目要求设计一个通用寄存器组的逻辑,决定外部的端口(名称、有效电平)和内部各元件的连接,画出系统框图和逻辑图,设计仿真数据,用VHDL编程和仿真。实验内容:一、主要元件设计 116位寄存器 功能要求:同步并行置数,异步复位(清零),三态输出,片选信号,读/写控

2、制。 2地址译码器 功能要求:3-8译码器。二、顶层设计 用层次结构设计的方法设计一个通用寄存器组。包括8个16位寄存器,1个地址译码器等元件。 功能要求:每个寄存器能够同步并行置数,异步复位(清零),三态输出。每个都可以(用地址)独立访问。 三、仿真 设计仿真波形数据,要考虑到所有可能的情况。在实验报告中必须清楚说明仿真波形数据是怎样设计的。 四、深入的课题 上面设计的通用寄存器组,每次只能访问一个寄存器。如果想同时访问两个寄存器,应该怎样设计? 16位的寄存器每次读/写都是一个16位字,如果需要写入的是8位的字,即将8位的字写到16位寄存器的高8位或低8位(例如,16位寄存器A由AH和AL

3、两个8位的寄存器组成),读出时,可一次读16位。应该怎样设计?二、 逻辑设计 1、3-8译码器系统框图A0A1A2 3-8译码器S2S1S0 .Y0Y6Y7端口说明:a(2-0):输入信号 S(2-0):使能端,s0是高电平有效,s1,s2是低电平有效。 y(0-7):输出端口3-8译码器逻辑函数: 2、16位寄存器系统框图d14d15d0d1.16位寄存器chipcpresetzrw.q0q1q14q15端口说明:d(0-15):输入 q(0-15):输出 cp,reset,chip,rw,z:分别是时钟信号,异步清零信号,片选信号,读写控制信 号,三态输出。3、 通用寄存器组系统框图d0d

4、1d14d15.s2a2s1a1s0a0rwcp 通用寄存器组resetz.q0q1q14q15端口说明: d(0-15):数据输入 q(0-15):数据输出 a(0-2):译码器的输入 s(0-2):使能端控制 cp,z,reset,rw:分别是时钟信号,三态输出,异步清零,读写控制三、仿真设计1、3-8译码器:3-8译码器功能表输入输出s0 s1 s2 a2 a1 a0 y7 y6 y5 y4 y3 y2 y1 y01 0 01 0 01 0 01 0 01 0 01 0 01 0 01 0 0 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1

5、 1 1 1 1 1 1 1 01 1 1 1 1 1 0 11 1 1 1 1 0 1 11 1 1 1 0 1 1 11 1 1 0 1 1 1 11 1 0 1 1 1 1 11 0 1 1 1 1 1 10 1 1 1 1 1 1 1从它的功能表可以知道输入的数据是有限的且只有八组,故可以按照功能表对全部数据进行仿真。2、 16位寄存器:16位寄存器功能表chipcpresetzrw工作状态1不工作01异步清零(复位)0011读000写000高阻态根据功能表来输入各个端口验证各项功能。(1)验证无工作状态功能:令chip=1,若输出为Z则说明其没有工作。(2)验证异步清零功能:使chi

6、p=0且r=1,接着使chip=0,cp处于上升沿,reset=0,z=1,rw=1。 若仿真结果是16个0则表明异步清零功能有效,且简洁验证了,读功能是正确的。(3)验证写入寄存器的功能:使chip=0且cp处于上升沿,reset=0,rw=0。接着读出数据,若读出的数据是这之前写入寄存器的数据则表明写功能正确。(4)验证读功能:使chip=0且cp处于上升沿,reset=0,rw=1。若仿真的结果是之前写入寄存器的数据,则表明读功能是正确的。3、十六位寄存器组:对十六位寄存器组,共有8个寄存器。每一个寄存器都要进行功能验证,一、为了验证译码器的正确性;二、为了验证每个寄存器的功能是否都正确

7、。(实际上这些寄存器都是由一个模板复制而来,之所以每个都进行验证是为了查看每个组件之间的连接是否正确)。按照十六位寄存器的仿真设计,对每一种片选信号都进行十六位寄存器的仿真。四、实验步骤及工具实验步骤:1、逻辑设计 2、根据逻辑原理设计数据并得出理论结果 3、用VHDL语言编写程序 4、启动Quartus系统 5、建立一个工程 6、建立一个VHDL文件,输入源程序并检查错误 7、编译并修改语法错误 8、建立一个波形文件 9、功能仿真和时序仿真,修改逻辑错误,记录仿真波形工具:1、PC机 2、Quartus 系统五、结果分析讨论1、3-8译码器功能仿真结果:结果讨论:从仿真图可以看出对于每种输入

8、,都可以得到和功能表一致的结果。故3-8译码器设计是正确的。2、十六位寄存器仿真结果:结果讨论:从仿真图可以看出对于精心选择的数据,都输出了正确的结果。因此可以断定该十六位寄存器的设计是正确的。3、十六位寄存器组的仿真结果:各片寄存器的仿真图:第一片:第二片:第三片:第四片:第五片:第六片:第七片:第八片:经过功能仿真,无论片选信号选择哪个寄存器时,由仿真图可知都能输出正确的结果,所以可以推断出该通用寄存器组的设计基本是正确的。六、VHDL程序-底层设计library ieee;-3-8译码器use ieee.std_logic_1164.all;entity Decoder isport(a

9、:in std_logic_vector(2 downto 0); y:out std_logic_vector(7 downto 0); s:in std_logic_vector(2 downto 0); end Decoder;architecture behave of Decoder isbeginprocess(s,a)beginif s=100 thenif a=000 then y=;elsif a=001 then y=;elsif a=010 then y=;elsif a=011 then y=;elsif a=100 then y=;elsif a=101 then y

10、=;elsif a=110 then y=;elsif a=111 then y=; end if;else y=;end if;end process;end behave;library ieee;-16位寄存器use ieee.std_logic_1164.all;entity Sregister isport(cp,chip,rw,z,reset:in std_logic; d:in std_logic_vector(15 downto 0); q:out std_logic_vector(15 downto 0); end Sregister;architecture behave1

11、 of Sregister issignal sign:std_logic_vector(15 downto 0);beginprocess(cp,chip,rw,z,reset)begin if chip=0 thenif reset=1 thensign0);elsif rising_edge(cp)then if rw=1thenq=sign;elsesign=d;end if;if z=0 then qZ); end if;end if;elseqZ);end if;end process;end behave1;-顶层设计library ieee;-通用寄存器use ieee.std

12、_logic_1164.all;entity Usual_register isport(d:in std_logic_vector(15 downto 0); q:out std_logic_vector(15 downto 0); z,reset,cp,rw:in std_logic; a:in std_logic_vector(2 downto 0); s:in std_logic_vector(2 downto 0);end Usual_register;architecture behave3 of Usual_register issignal Y:std_logic_vector

13、(7 downto 0);component Sregisterport(cp,reset,chip,z,rw:in std_logic; d:in std_logic_vector(15 downto 0); q:out std_logic_vector(15 downto 0);end component;component Decoderport(a:in std_logic_vector(2 downto 0); y:out std_logic_vector(7 downto 0); s:in std_logic_vector(2 downto 0);end component;beg

14、inD0:Decoder port map (a=a,y=y,s=s);G0:Sregister port map (cp=cp,z=z,reset=reset,rw=rw,q=q,d=d,chip=Y(0);G1:Sregister port map (cp=cp,z=z,reset=reset,rw=rw,q=q,d=d,chip=Y(1);G2:Sregister port map (cp=cp,z=z,reset=reset,rw=rw,q=q,d=d,chip=Y(2);G3:Sregister port map (cp=cp,z=z,reset=reset,rw=rw,q=q,d=

15、d,chip=Y(3);G4:Sregister port map (cp=cp,z=z,reset=reset,rw=rw,q=q,d=d,chip=Y(4);G5:Sregister port map (cp=cp,z=z,reset=reset,rw=rw,q=q,d=d,chip=Y(5);G6:Sregister port map (cp=cp,z=z,reset=reset,rw=rw,q=q,d=d,chip=Y(6);G7:Sregister port map (cp=cp,z=z,reset=reset,rw=rw,q=q,d=d,chip=Y(7);end behave3;专心-专注-专业

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

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

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

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁