计算机22组成原理_第1页
计算机22组成原理_第2页
计算机22组成原理_第3页
计算机22组成原理_第4页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

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

文档简介

1、实验 1 名称:通用寄存器组的设计与实现1.实验目的进一步掌握 Vhdl 语言框架、编程及调试的方法掌握结构模式的设计思路及描述方法;即多层次结构的设计和调试方法2.实验要求1)利用 2_4 译通用寄存器组。、4_1 选择器、16bit 寄存器等模块一个具有4 个寄存器的2)在开发上完成一个工程的设计的全过程。3)观察和分析电路的仿真波形。3)通过波段开关提供输入值,观察电路的输出状态(LED 指示灯显示)来进行硬件电路的验证3.实验原理寄存器组中包含 4 个 16 位的寄存器。当 reset 信号为低时,4 个寄存器复位为 0。寄存器的时钟信号为 clk。写端口为 2 位的 wr_port

2、信号,负责哪一个寄存器被写入。寄存器组有一个写允许信号 wen,在 wen 为 1 时,在 clk 上升沿将输入到寄存器组的16 位数据 data 写入 wr_port 指定的寄存器中。(5)读端口为 2 位的 rd_port 信号。rd_port 决定将哪个寄存器的输出送寄存器组的输出data_out。4.设计思路与源代码2 设计方案根据设计要求,设计方案如下:低层设计实体 register_16,完成寄存器复位和读写功能。低层设计实体 mux4_to_1,完成选择哪一个寄存器的值送寄存器组的输出。这是一个 4 选一选择器。(3)低层设计实体 decoder2_to_4,完成选择写哪一个寄存

3、器。这是一个 2-4 译。(4)设计实体 regfile,负责将 3 个低层设计实体的连接,完成寄存器组的全部功能。3 设计实现1设计实体 register_16 library ieee;use ieee.std_logic_1164.all;entity regiister_16 is port(reset d_input clk write sel q_output);:in in in ininstd_logic;std_logic_vector(15 downto 0); std_logic;std_logic;std_logic;out std_logic_vector(15 do

4、wnto 0)end register_16;architecture a ofbeginregister_16 ispros(reset,clk) beginif reset = 0 thenq_output = x0000;elsif (clkevent and clk = 1) then if sel = 1 and write = 1 thenq_output = d_input;end if; end if;end proend a;s;2设计实体 decoder2_to_4 library ieee;use ieee.std_logic_1164.all;entity decode

5、r2_to_4 is port (sel sel00 sel01 sel02sel03:in out out outoutstd_logic_vector(1 downtostd_logic; std_logic; std_logic;std_logic );0);end decoder2_to_4;architecture behavioral of decoder2_to_4beginissel00 sel01 sel02sel03=out_put out_putiut_put= out_put =writesel q_output=wen,sel00, reg00-顶层设计实体的外部输入

6、信号 wen);Areg01:register_16port map( reset, data,clk ,-16 位寄存器 R1-顶层设计实体的外部输入信号 reset-顶层设计实体的外部输入信号 data-顶层设计实体的外部输入信号 clkreset d_inputclk=write sel q_output);=wen, sel01,reg01-顶层设计实体的外部输入信号 wenAreg02:reggister_16port map reset, data, clk,(-16 位寄存器 R2-顶层设计实体的外部输入信号 reset-顶层设计实体的外部输入信号 data-顶层设计实体的外部输

7、入信号 clk-顶层设计实体的外部输入信号 wenreset d_inputclk=wenwrite sel q_output);=sel02,reg02Areg03:reggister_16 portmap(-16 位寄存器 R3reset=reset, -该语句将底层的引脚与顶层的端口信号连接起来了;顶层设计实体的外部输入信号 reset-顶层设计实体的外部输入信号 data-顶层设计实体的外部输入信号 clk-顶层设计实体的外部输入信号 wrend_input clk write sel q_output);=data, clk,wen,sel03,reg03decoder:decode

8、r2_to_4 portmap( -24 译-顶层设计实体的外部输入信号 rd_portsel sel00 sel01 sel02 sel03);=wr_port, sel00, sel01, sel02,sel03mux:mux_4_to_1 input0 =input1 =port map( reg00,reg01,-4 选 1 多路器input2 input3 selout_put=reg02, reg03, rd_port,data_out-顶层设计实体的外部输入信号 rd_port-顶层设计实体的输出信号 q_out);end struct;5.实验步骤编写程序调试分配引脚实验仿真5

9、 使用实验观察实验结果6.实验现象分析当 Reset 设置为 1 时,就可以读写数据当 wen 为 1 时,将输入的数据写入而此时 t0,t1 选择写入的寄存器当 wen 为 0 时,将写入的数据读出此时 t0,t1 选择读出的寄存器,若与之前写入的寄存器号相同,则将写入的数据输出,否则无法输出当 Reset 设置为 0 时,全部设置为 0。7.实验小结该实验的完成需要理解寄存器组的工作原理,掌握层次结构的设计方法。在实验过程中,编程时常出现语法错误,是对 VHDL 语言不够熟悉导致的。需要对该语言程序的编写多加练习。该实验的设计需要有熟悉的数字逻辑的知识,以此编写相应的逻辑。实验 2 名称:

10、层次结构的设计与实现1.实验目的掌握层次结构的设计与是实现方法2.实验要求设计一个模块:把与门(与非门)、或门、反相器、译、选择器、寄存器、计数器等器件连接起来。在开发上完成一个工程的设计的全过程。观察和分析电路的仿真波形。通过波段开关提供输入值,观察电路的输出状态(LED 指示灯显示)来进行硬件电路的验证。3.实验原理通过三个二选一与二四译的级联,实现四选一选择器的功能。4.设计思路与源代码一底层的设计实体 mux21 library ieee;use ieee.std_logic_1164.all; entity mux21 isport(w0,w1: in std_logic;s:y:i

11、n std_logic;out std_logic);end entity mux21;architecture mux21a of mux21 is beginpros(w0,w1,s) beginif s=0 then y=w0; else yiiiia0,w1=a1,y=b1,s=b3);m2:mux21 port map (w0=a2,w1=a3,y=b2,s=b4);m3:mux21 port map (w0=b1,w1=b2,y=mux4_1_out,s=b5); e4:decoder2_4 port map (w(0)=s1,w(1)=s2,i(1)=b3,i(2)=b4,i(3)=b5);end architecture struc5.实验步骤编写程序调试分配引脚实验仿真5 使用实验观察实验结果6.实验现象分析:当输入a0-a3 为 0001,选择信号设置为 00此时输出

温馨提示

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

评论

0/150

提交评论