实验十一移位寄存器实验报告.pdf
文本预览下载声明
实验十一--移位寄存器实验报告
姓名:洪至远 学号: 专业:工科信息 1015
3100104624
课程名称:逻辑与计算机设计基础实验 同组学生姓名:谢志聪
实验时间: 实验地点:紫金港东4-509 指导老师: 蒋方炎,陆汉权
2011- 12-6
一、实验目的和要求
1、掌握移位寄存器的工作原理及设计方法。
2 、掌握串、并数据转换的概念与方法。
3、了解序列信号在CPU 控制器设计中的应用。
二、实验内容和原理
实验内容:
1、用Verilog 语言采用结构化描述方法设计一个 16 位带并行输入的右移移位寄存器。
2 、在xCal 上增加串行、并行输入功能。
实验原理:
1、带并行置入的移位寄存器
移位寄存器:每来一个时钟脉冲,寄存器中的数据按顺序向左或向右移动一位。
-必须采用主从触发器或边沿触发器
-不能采用电平触发器
数据移动方式:左移、右移。
数据输入输出方式。
- 串行输入,串行输出
- 串行输入,并行输出
-并行输入,串行输出
2、串行输入的移位寄存器
使用D 触发器,可构成串行输入的移位寄存器
第1 页/共 14 页
3、带并行输入的右移移位寄存器
数据输入移位寄存器的方式:串行输入、并行输入。
4、并行-串行转换器
没有启动命令时:
有启动命令时:
第2 页/共 14 页
三、主要仪器设备
1、装有ISE 的计算机系统 1 台
2 、Spartan III 实验板 1 套
四、操作方法与实验步骤
1、对移位寄存器模块波形仿真
实验步骤:
( 1) 、用Verilog HDL 语言,采用结构化描述方法设计一个 16 位带并行输入的右移移位寄
存器。
(2) 、编写该移位寄存器的代码模块shift_reg 。
(3) 、针对该模块,编写波形仿真输入代码。
(4) 、进行波形仿真,并分析仿真结果是否正确。
源代码:
module shift_reg(clk, S, s_in, p_in, Q);
input wire clk, S, s_in;
input wire [15:0] p_in;
output wire [15:0] Q;
wire [15:0] D;
wire nS;
FD FDQ0(.C(clk), .D(D[0]), .Q(Q[0])),
FDQ1(.C(clk), .D(D[1]), .Q(Q[1])),
FDQ2(.C(clk), .D(D[2]), .Q(Q[2])),
FDQ3(.C(clk), .D(D[3]), .Q(Q[3])),
FDQ4(.C(clk), .D(D[4]), .Q(Q[4])),
FDQ5(.C(clk), .D(D[5]), .Q(Q[5])),
FDQ6(.C(clk), .D(D[6]), .Q(Q[6])),
第3 页/共 14 页
FDQ7(.C(clk), .D(D[7]), .Q(Q[7])),
FDQ8(.C(clk), .D(D[8]), .Q(Q[8])),
FDQ9(.C(clk), .D(D[9]), .Q(Q[9])),
FDQ10(.C(clk), .D(D[10]), .Q(Q[10])),
FDQ11(.C(clk), .D(D[11]), .Q(Q[11])),
FDQ12(.C(clk), .D(D[12]), .Q(Q[12])),
FDQ13(.C(clk), .D(D[13]), .Q(Q[13])),
FDQ14(.C(clk), .D(D[14]), .Q(Q[14])),
FDQ15(.C(clk), .D(D[15]), .Q(Q[15]));
OR2 D0_L(.I0(L_0), .I1(R_0), .O(D[0])),
D1_L(.I
显示全部