文档详情

实验三_用,状态机实现序列检测器的设计.ppt

发布:2017-01-20约1.95千字共20页下载文档
文本预览下载声明
上网查询资料,复习《数字电子技术》教材,理解有限状态机的概念。 有限状态机的状态图的画法及其含义。 系统任务要求 系统主要包括3个模块: 1)并行数据转串行数据模块(xulie.v) 2)串行检测模块(schk.v) 3)数码管显示模块(decled7s .v) 由于需要用按键V16作为时钟输入,按键D18作为系统复位输入,所以需调用实验二中应用的消抖模块,对两个按键输入信号进行消抖。 系统任务要求 并行数据转串行数据模块(xulie.v),串行检测模块(schk.v)均采用有限状态机的描述方式。 并行数据转串行数据模块(xulie.v)功能描述: 可以异步复位,可以在时钟控制下,将并行输入数据din[7:0],按照din[7],din[6],din[5],din[4],din[3],din[2],din[1],din[0]的顺序输出至串行检测模块的输入端口din。 根据设计要求,先画出并行数据转串行数据模块的状态转移图,并写出HDL代码。 比较实验指导书提供并行数据转串行数据模块的参考代码,总结有限状态机的HDL设计方法。 系统任务要求 串行检测模块(schk.v) 输入信号:DIN-----1bit的串行输入数据 CLK-----同步输入时钟 CLR ------异步清零信号,当CLR=1,系统输出置0,否则,系统正常工作 输出信号:AB--------4bits数据,如果系统检测到这8bit的输入,AB=4’b1010,否则,AB=4’b1011. 系统任务要求 串行检测模块(schk.v) 画出串行检测模块(schk.v)的状态转移图,并自行设计HDL源代码。 用Verilog HDL设计数码管驱动电路、系统顶层电路。 设计输入 选择Verilog Module ,并输入合法文件名 设计输入 在文本编辑窗口输入代码 设计处理 设计处理环节进行综合、功能仿真、时序仿真等处理 设计处理 在sources窗口选中待综合模块cnt10,在process窗口双击Synthesize-XST 综合完后可以双击Synthesize-XST下的View RTL Schematic,得到综合后的电路图。 功能仿真 1)建立仿真激励文件 功能仿真 考虑完备性测试和减短仿真耗时,将时钟周期改为100ns,测试文件时间长度2000ns 实验三 用状态机实现序列检测器的设计 任务分析 本次实验的核心是:应用有限状态机设计思路,检测输入的串行数据是否是。 根据下载电路板的资源, 拟用SW3---SW0,J4接口的E8,F8,C7,D7作为系统输入(系统由此需要设计一个8bits并行数据转串行的模块) 一个7段数码显示译码器作为检测结果的输出显示,如果串行序列为,显示a,否则显示b(系统需要设计一个7段数码显示译码器模块) 为了显示可控,清晰,拟用V16,D18实现时钟,复位信号的输入。 本实验由顶层文件、串行检测、并行数据转串行、数码管显示四个模块组成 设计参考 顶层模块 并转串 模块 串行检测模块 数码管显示模块 并行8bits数据 clk 串行数据 4bits数据 reset 7bits数据 1、构建一个工程名为XULIEQI的工程 由File-New Project Wizard,弹出对话框,设置文件夹目录,Project名称。 注意, 1 )不能将文件夹放置与软件安装目录下,应放在DATA盘上 2)要求以自己的学号作为文件夹名 3)顶层模块的类型选为HDL 正确选择器件和EDA工具,本次实验仍采用ISE自带的综合、仿真工具,按next,继续 建立工程后,开始分别设计 1)并行数据转串行数据模块(xulie.v) 2)串行检测模块(schk.v) 3)数码管显示模块(decled7s .v) 1、综合: 2、仿照schk的设计方法,再分别设计xulie和decled7s两个verilogHDL模块,并分别进行功能仿真和时序仿真,对仿真结果进行分析。 注:编写数码管显示程序(decl7s.v)来显示A或B状态。已知数码管为共阴级连接。 输入(4bits) 输出(7bits) 显示内容 4’b1010 7’b 1110111 a 4’b1011 7’b1111100 b 4’b0000 7’b1000000 0 提示:可以在default分支选用显示“0”。 3、按照前述子模块的相同的设计步骤完成,创建顶层文件,并进行综合,功能仿真,时序仿真,验证程序后,下载。 连接输入信号到FPGA,改变拨动开关和按键,观察结果
显示全部
相似文档