计算机组成原理第二次上机实验报告_第1页
计算机组成原理第二次上机实验报告_第2页
计算机组成原理第二次上机实验报告_第3页
计算机组成原理第二次上机实验报告_第4页
计算机组成原理第二次上机实验报告_第5页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

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

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

3、出时,可一次读16位。应该怎样设计?2、 逻辑设计 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、 通用寄存器组系统框图d0d1d14d15.s2a2s

4、1a1s0a0rwcp 通用寄存器组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 1 1 1 1 1 1

5、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)验证异步清零功能:使chip=0且r=1,接着使ch

6、ip=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:in std_logic

9、_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=;elsif a=110

10、 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 of Sregister

11、 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_logic_1164.a

12、ll;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(7 downto 0);

13、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;beginD0:Decoder

14、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=d,chip=Y(3);G4:Sregister port map (cp=cp,z=z,reset=reset,rw=rw,q=q,d=d,chip=

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论