




已阅读5页,还剩6页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1 / 11 eda 实验实验报告 数字 EDA实验 实验报告 学院: 计算机科学与工程学院专业: 通信工程 学号: 0941903207 姓名: 薛蕾 指导老师: 钱强 实验一 四选一数据选择器的设计 一、实验目的 1、熟悉 Quartus II 软件的使用。 2、了解数据选择器的工作原理。 3、熟悉 EDA开发的基本流程。 二、实验原理及内容 实验原理 数据选择器在实际中得到了广泛的应用,尤其是在通信中为了利用多路信号中的一 路,可以采用数据选择器进行选择再对该路信号加以利用。 从多路输入信号中选择其中一路进行输出的电路称为数据选择器。或:在地址信号控制下,从多路输入信息中选择其中的某一路信息作为输出的电路称为数据选择器。数据选择器又叫多路选择器,简称MUX。 4 选 1数据选择器: 原理框图:如右图。 D0 、 D1、 D2、 D3 :输入数据 A1 、 A0 :地址变量 由地址码决定从路输入中选择哪路输出。 真值表如下图: 逻辑图 2 / 11 数据选择器的原理比较简单,首先 必须设置一个选择标志信号,目的就是为了从多路信号中选择所需要的一路信号,选择标志信号的一种状态对应着一路信号。在应用中,设置一定的选择标志信号状态即可得到相应的某一路信号。这就是数据选择器的实现原理。 三实验内容 1、分别采用原理图和 VHDL 语言的形式设计 4 选 1数据选择器 2、对所涉及的电路进行编译及正确的仿真。 电路图: 四、实验程序 library ieee; use _Logic_; ENTITY mux4 ISPORT;y :OUT STD_LOGIC ); END mux4; ARCHITECTURE archmux OF mux4 IS BEGIN y a1 WHEN s = 01 else -当 s=01 时,y=a1 a2 WHEN s = 10 else-当 s=10时, y=a2 a3; -当 s 取其它值时, y=a2 END archmux; 五、运行结果 六实验总结 真值表分析: 当 js=0 时, a1,a0 取 00,01,10,11 时,分别可取d0,d1,d2,d3. 3 / 11 EDA 技术实验报告 实验名称:序列检测器设计 实验日期: X月 XX号 指导教师: XXX 姓名: XXXXXX 学号: XXXXXX 班级: XXXXXX 杭州电子科技大学 一、 实验设计要求: 实验目的:用状态机实现序列检测器的设计,了解一般状态机的设计与应用。 实验内容:根据节有关原理介绍,利用 Quartus II对例 8-4 进行文本编辑输入、仿真并给出仿真波形,了解控制信号的时序,最后进行引脚锁定并完成硬件测试实验。 由于本例中的状态机对于序列的检测不能连续,也就是一旦出现不符合的数字时就会全部归零处理,这样实际上并不是最完备的检测手段,请对例中的代码稍作修改来完成连续序列检测。 二、 设计原理: 状态机原理图: 图 2-1状态机状态转换图 图 2-2状态机模块示意图 原理解释: 状态转换图如上图所示,下面的是模块的示意图。4 / 11 状态机有几个接口,分别是时钟 端 clk,数据输入端 din,复位端 rst 和输出端 out。每个时钟上升沿读入外部的一位数据,根据读到的数据,状态机进行当前状态的改变,而复位端的功能是将状态机的状态恢复到初始态。只有检测到11010011这个数据序列的时候状态机才会输出一个 1即高电平信号。 如图的状态转换图可以看出,设计的状态机输入的数据是可重复的,即并不是每次都要依次输入规定的数据进入下一状态,否则就归回初始态;而是可以重复的。比如要求是检测 11010011 序列的,可是输入刚开始是 1 后面一直是 1,这时候不会不断地复位,而是会保持 在” 11”状态也就是第二状态,等待出现 0进入下一状态。 三、 实验程序: 序列检测状态及电路程序: Input 包括时钟 clk、数据输入 din、复位端 rst;output 包括一个 out端,为了表示 9 个状态,声明了一个 4位的寄存器,因为四位可以表示最多 16 个状态;为了保存次态的信息,又声明了一个 4位的寄存器,用来存储次态的信息,为了下次上升沿读取。主程序中包括两个过程语句,一个是用来对状态机的状态进行操作的,如果复位有效,下一个时钟上升沿就是将状态变成初始态;而如果不是就 在下一个时钟上升沿将状态变成次态。 5 / 11 另一个过程语句是用来对次态的状态进行赋值、改变的。它根据现在的状态检测输入的数据的高低电平来决定次态是什么样的状态,并将次态用寄存器保存起来。 声明两个寄存器的,就是为了一个用来保存次态信息,一个用来保存现态。 module series_chk; input clk,din,rst; output out; reg3:0 st,nst; parameter s0=07, s1=08, s2=09, s3=10, s4=11, s5=12, s6=13, s7=14, s8=15; /-/ alwaysbegin /*只有在时钟的上升沿来到时 , next_state 才被保存为 current_state*/end /-/ alwaysbegin /* next_state 根据 current_state 的状态一直在变化并且跟时钟是独立的,不依赖于时钟 */ end /-/ assign out = ; case s0 : ifnst endmodule 四、 编译结果及仿真: 6 / 11 编译资源使用情况: 器件型号为 Stratix 。 可见,使用了 9个组合自适应查找表单元; 9 个专用逻辑寄存器; 4个管脚;一共使用了 0 bits 的内存块单元。 仿真的波形: 端口的解释: RST:状态清零端; CLK:时钟输入端; out:信号输出端; 时钟信号选取的是 100MHz,首先让 RST高电平清零,这时状态机没有正常工作,一直都是初态;然后 RST 置低,状态机开始工作,输入是在时钟上升沿的时候触发的,观察图中的上升沿,可以看到首先赋的是 1,然后又是 1,后是 0、1,后是 0011,然后的确在 out 上输出了一个高电平表示序列检测成功。然后为了测试序列可重复的功能是否实现了,因而之后是这么加信号的,因为上个序列 11010011 最后是11,也就是第二状态,现在输入 01,进入 了第四状态了,这时本来应该输入 0011 的,但是我输入了 1,这时按理就会跳到第二状态了,因为出现了连续的 11,之后 再输入 010011 的确能输出一个高电平,说明重复功能是正常的可用的。 五、 总结: 、状态机的类型 7 / 11 从状态机的信号输出方式上分,有 Mealy型和 Moore型两种状态机。 从状态机的描述结构上分,有单过程状态机和多过程状态机。 从状态机表达方式上分:有符号化状态机和确定状态编码的状态机。 从状态机编码方式上分,可以分为顺序状态机、一位热码编码状态机或其他编码方式状态机。 、状态变量的表示: 有两种的表示方式: 1. 各状态元素用参数说明关键词 parameter来定义的,其中各状态元素所取的具体数值 或编码必须写上,如设 s1=1或 s1=3 B101 等; 如下所示: parameter 2:0 s0=1, s1=2, s2=3, s3=4, s4=5; / 定 义 所 有 的 元 素 及 其 代 表 的 数 ; reg2:0 current_state, next_state; 2. 在后来改进了的 Verilog HDL 已经可以使用枚举变量来表示状态元素了,具体的写法如下: typedef enum s0, s1, s2, s3, s4 type_user; /定义枚举类型 type_user; type_user current_state, next_state; /使用枚举类型声明两个状态变量; 8 / 11 、 Mealy型和 Moore型的状态机区别: 若从输出时序上看,前者属于同步输出状态机,而后者属于异步输出状态机。 Mealy 型状态机的输出是当前状态和所有输入信号的函数,它的输出是在输入变化后立即发生的,不依赖时钟的同步。 Moore 型状态 机的输出则仅仅为当前状态的函数,这类状态机在输入发生变化时还必须等待时钟的到来,时钟使状态发生变化时才导致输出的变化,所以比 Mealy型要多等待一个时钟。 这两种可以看做 Mealy 是实时输出的状态机,而后者 Moore 是按时钟时刻输出的状态机。 杭州电子科技大学 实验报告 实验课程名称 实 实 班 姓 学 指导教验验序内号 容 级 名 号 师 EDA 技术 1 分频器与频率 计设计 123 吕文 123 黄某 二一四年 4月 18 日 9 / 11 一、实验的目的与要求 实验名称 :分频器与频率计设计 实验目的 : 1、初识 Verilog HDL 语言熟练 Verilog 的语法 2、学习 quartus调用 modelsim进行仿真 3、 掌握用 FPGA实现简易的分频器与频率计的原理与方法 实验要求 : 1、设计一个可控分频器,输入 20MHz或 12MHz 时钟,输出 100Hz10kHz,输 出 100HZ 10kHZ,输出频率数控可调,输出波形占 空比为 50%,接蜂鸣器; 2、设计一个简易频率计,输入为方波,测量频率 的范围 100HZ 9999HZ , 测量精度 3、分频器输出接频率计的输入 二、实验原理 分频器的原理:把输入的信号作为计数脉冲,由于计数器的输出端口是按一定规律输出脉冲的,所以对不同的端口输出的信号脉冲,就可以看作是对输入信号的”分频“。 频率计是对信号的频率进行测量并显示测量结果。原理就是在 1秒钟内对时钟计数,得到的 数字就是频率大小。 频率计的设计是用一个标准的时钟 20MHZ来做参照,以 1s钟为周期,为 20000000 个周期,同时定义一个计数的10 / 11 变量 q ,当输入的端口出现上升沿的时候,变量加 1,那么在一秒钟内 cout的数值即为,该波形的频率。 最后将分频器的输出端口接入频率计的输入端口,用频率计来测量波形的频率大小,通过比较实际的频率 Fre1与测出来的频率大小 Fre2,就知道了该频率计的误差。 三、实验内容 实验步骤 1、大概的把框架建起来,把思路想好 2、先设 计一个符合要求的分频器 3、进行仿真,看效果 3、再设计一个符合要求的频率计 4、用 modelsim 进行仿真 5、把这两部分连接起来,最后进行仿真得到结果 6、得到频率计的测频误差 本实验分频器的时钟是 20MHZ,分频出来的是100HZ10kHZ 的波形,那么就定义一个变量当做分频比 17:0 div ,可以用按键来控制 div 的大小,继而实现分频出来的大小。 分频器 Veliog程序: module FENPIN; input clk,rst;
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 高中生物模拟考试试题附详细解析
- 英语八年级口语对话练习册
- 零售行业顾客满意度提升方法
- 墙面施工铲除及抹灰技术方案
- 四年级英语单词发音辨析练习册
- 基础医学理论考试题库
- 房建项目监理管理细则与实例
- 道路交通安全宣传策划方案
- 基坑施工安全管理规范及实施细则
- 客服中心绩效考核体系设计方案
- 2025版煤矿安全规程宣贯培训课件
- DB31∕T 1545-2025 卫生健康数据分类分级要求
- 法院宣传稿范文大全500字
- JTG-D40-2011公路水泥混凝土路面设计规范
- 既有建筑混凝土结构改造设计规范DBJ-T 15-182-2020
- 最常用2000个英语单词-电子表格版
- 《防水施工培训》课件
- 光的偏振与光的偏振方向
- 2023类器官技术与行业研究报告-复刻结构重现功能 构建组织器官替身
- 初中毕业证在哪里查询
- 名词语法讲解
评论
0/150
提交评论