我是靠谱客的博主 健壮星月,最近开发中收集的这篇文章主要介绍实例七— 8位移位寄存器的设计,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

实例七 8位移位寄存器的设计(基于Robei工具的8位移位寄存器的设计)

4.1.1. 本章导读

设计目的
设计准备

4.1.2. 设计流程

1. shift模型设计

(1)新建一个模型命名为shift,类型为module,同时具备5个输入和1个输出,每个引脚的属性和名称参照图4-1-1进行对应的修改。

(3)保存模型到一个文件夹(文件夹路径不能有空格和中文)中,运行并检查有无错误输出。

2. shift_test测试文件设计

(1)新建一个具有5个输入和1个 输出的shift_test测试文件,记得将Module Type设置为“testbench”,各个引脚配置如图4-1-3所示。

always #1 clock=~clock;

(5)执行仿真并查看波形。查看输出信息。

3. shift_constrain测试文件的设计

(1)新建一个模块,命名为shift_constrain,模块类型选择为constrain,具有14个输入和8个输出,如图4-1-6所示。

4.1.3. 板级验证

为了测试所设计shift的工作特性,选择开发板搭载XILINX公司的Z-7010芯片,选用VIVADO设计平台进行Synthesis、Implementation和Generate Bitstream,最终将生成的数据流文件下载到开发板内,并进行验证。

1. VIVADO设计平台进行后端设计

1.1启动Vivado软件并选择设备XC7Z010CLG400-1(ZYBO)作为硬件对象,设计语言选用Verilog,建立新的工程,添加通过Robei设计的文件shift.v。
1.2打开shift_constrain.xdc文件,查看引脚约束源代码。

(3)点击File—>Save File保存文件。

** 1.3使用Vivado综合工具来综合设计,并进行Implementation任务实现。**

(1)单击综合任务下拉菜单中的Run Synthesis,综合过程将分析shift.v文件并生成网表文件。当综合过程完成了,且没有错误信息,将会弹出带有三个选项的完成对话框;

** 1.4将开发板上的电源开关拨到ON,生成比特流并打开硬件会话,对FPGA进行编程。**

(1)确保微型USB电缆连接到PROG UART接口;

2. 开发板验证

首先,按住clr(BTN1)不放,按1到2次clk(BTN0),进行复位操作。
然后,将en(SW3)设置为高电平,设置输入数据data_in[0~7] (Sw[07])和位移控制信号set[03] (SW0~1),这里选择输入数据为00110111,位移控制信号分别为000,010,100,111进行验证;
最后,每更改一次位移控制信号,按一下clk时间键,然后观察输出数据data_out[0~7] (Led[0~7]),验证移位寄存器功能是否正确。

4.1.4. 问题与思考

1.如何在一个模块上面设计一个移位寄存器,该移位寄存器既有右移功能,还有左移、双向移动的功能,这些功能通过一个值的变化来切换?

2.如何实现扭环形移位寄存器?

最后

以上就是健壮星月为你收集整理的实例七— 8位移位寄存器的设计的全部内容,希望文章能够帮你解决实例七— 8位移位寄存器的设计所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(42)

评论列表共有 0 条评论

立即
投稿
返回
顶部