基于fpga的简易逻辑分析仪的设计与仿真完整毕业设计论文(编辑修改稿)内容摘要:
来时,对输入的逻辑信号进行一次移位并输出。 使用 VHDL 语言编程并在 Quartus II 中生成的该模块符号图如图 所示。 CLKLOADD[7..0]Q[7..0]SHIFTXinst 循环移位寄存器的仿真结果如图 所示。 图 中 CLK 为时钟信号, LOAD 为工作信号 , D 为预置信号, Q 为输出观察信号。 从图中可以看出,当时钟信号上升沿到来且 LOAD 信号处于低电平时 , 循环移位寄存器开始工作产生数据流。 可以看到该循环移位寄存器模块很好的实现了其功能,符合设图 循环移位寄存器 元件符号 图 图 循环移位寄存器时序仿真图 苏州大学本科生毕业设计(论文) 13 C LKUEN USET UR ESE TUC LK1LO AD AD U [7. .0]Q U [7. .0]SH Uins t计要求。 数字信号发生器仿真 使用 VHDL 语言编程并在 Quartus II 中生成的该模块符号图如图 所示。 数字信号发生器的仿真结果如图 所示: 图 是数字信号发生器在预置信号为 00000101( 5)时产生的循环序列仿真图,CLK1 是 1MHz 有源晶振, CLKU 为系统时钟, LOADA 是工作信号。 在使能信号ENU 处于高电平状态,时钟信号 CLKU 上升沿到来并且加载信号 LOADA 处于低电平时,预置寄存器将预置信号 00000101( 5)送入循环移位寄存器,从而产生连续不断循环的数据流。 从仿真图可以看出此数字信号发生器模块功能完全符合所需要求。 图 数字信号发生器仿真图 图 数字信号发生器元件符号图 苏州大学本科生毕业设计(论文) 14 触发电路实现与仿真 该模块的设计框图如图 所示。 该模块的作用:在系统电路上电之后,数字信号发生器会源源不断地输出数据流,而触发电路模块会一直接收数据流,并且一直检测输入的数据流序列与预置触发字的逻辑状态是否相同。 只有当 8 路信号的逻辑状态与预置触发字的逻辑状态完全相同时,才会产生一个触发信号发送出去,作为触发模块后面几个模块的控制信号。 图 为触发电路的符号图。 触发模块的仿真结果如图 所示。 图 触发电路 元件符号 图 C LKIN PU TM [7. .0]IN PU TN [7. .0]PEQH C T688ins t5苏州大学本科生毕业设计(论文) 15 在图 中, CLK 为时钟信号, INPUTM、 INPUTN 分别为输入测试信号、预置触发字, PEQ 为输出观察信号。 可以看到,在每个时钟上升沿到来时,触发电路都会对输入数据 INPUTM 和预置触发字 INPUTN 进行对比,若不相同则输出低电平,若在某一个时钟上升沿触发则将一直输出高电平。 如图 所示,当输入数据流 INPUTM的逻辑状态为 00001001( 9)和预置触发字的逻辑状态 00001001( 9)相同时,之后将一直输出高电平。 从仿真图可以看出,该触发电路模块实现了所需功能,完全符合设计要求。 存储器 REGN 的实现 存储器 REGN 的设计框图如图 所示。 该模块的作用:数字信号发生器产生的数据流在源源不断输出到触发电路的同时,也会不断的输出到这一模块。 当触发电路触发后产生的使能信号 EN 到来即为高时,存储器 REGN 才会允许输入端的数据流进行输出。 使用 VHDL 语言编程并在 Quartus II 中生成的该模块元件图如图 所示。 存储器 REGN 的仿真结果如图 所示: 图 存储器 REGN 元件符号 图 图 触发电路时序仿真波形 C LKEND AT A[ 7. .0]Q[ 7. .0]R EG Nins t6图 存储器 REGN 仿真波形图 存储器 REGN 数据流 EN 图 存储器 REGN 的 结构 框图 苏州大学本科生毕业设计(论文) 16 在图 中, CLK 为时钟信号, EN 为使能信号, DATA 为输入测试信号, Q 为输出观察信号。 从图 显示的仿真波形看到,在时钟上升沿以及 EN 高电平到来时,REGN 很好的将数据 4 及 4 之后的数据都进行了输出,实现了它的功能,完全符合设计要求。 640 分频器 FREQ 的实现 由于数字信号发生器产生的每个数据周期是 10us,而我们的 RAM 需要实现在一个周期中,先写入 32 个数据,再读出 32 个数据的功能。 这就需要向 RAM 输入一个周期为 640us 的控制信号。 而有源晶振的频率为 1MHz,这样我们就可以设计一个 640 分频器产生这样的控制信号。 640 分频器的框图如图 所示。 该模块的作用:当触发电路触发后产生的使能信号 ABLE 到来时,分频器电路开始工作,对 1MHz 的时钟信号进行 640 分频,得到一个周期为 640us 的时钟信号输出给RAM 作为 RAM 的读写控制信号,之后, RAM 就可以在一个周期的读写信号控制下写 32 个数据,读 32 个数据。 使用 VHDL 语言编程并在 Quartus II 中生成的该模块符号图如图 所示。 C LKABLEOU TPU TFR EQinst3 分频器 CLK ABLE 图 分频器 框图 图 分频器元件符号 图 苏州大学本科生毕业设计(论文) 17 640 分频器的仿真结果如图 所示。 在图 中, CLK 为时钟信号, OUTPUT 输出信号。 从仿真图看到,当分频器工作的时候,高频时钟信号被分成了一个低频时钟信号。 640 分频器模块完全能够实现所需要求,符合设计要求。 存储器 RAM 的实现 RAM 存储器用于存储采集的数据,其设计框图如图 所示。 该模块的作用: RAM 作为整个设计中最核心的模块,需要完成数据的采集和处理工作。 在系统时钟的作用下,当触发电路触发后产生的使能信号 CS 到来时,这时候读写控制信号 OE 也会同时到来,并且 OE 处于高电平。 这时候 RAM 启动,并开始对输入的数据流进行采样,之后将采集得来的信号数据写入 RAM 中,采样存储时间持续 32 个系 统时钟周期,亦即 32bit 每一通道,然后结束存储。 此时 OE 的高电平状态会结束 并进入 低电平状态,此时 RAM 读出先前存储的 32bit 数据。 从 CS 片选信号到来的那一刻,每过一个系统时钟, RAM 内部都有一个计数器加一,当计数满 64 次之后,关闭 RAM,停止读写。 使用 VHDL 语言编程并在 Quartus II 中生成的该模块符号图如图 所示。 图 640 分频器 仿真图 RAM 数据流 CS OE 图 RAM 实现框图 CLK 苏州大学本科生毕业设计(论文) 18 W ID T H 32 S ig n e d In t e g e rD E P T H 32 S ig n e d In t e g e rP a r a m e t e r V a l u e T y p eC LKAD D R [ 4. . 0]CSOED AT A_I [ 7. . 0]D AT A_O[ 7. . 0]R AM 5in s t 存储器 RAM 的仿真结果如图 所示。 在图 中, CLK 为时钟信号, CLK_EN 为使能信号, CLR 为计数器复位信号,高电平有效; CS 为 RAM 片选信号,高电平有效; OE 为 RAM 读写信号,高电平写入,低电平读出; D 为地址信号。 从图 仿真图看到当片选信号 CS 高电平到来时, RAM开始工作,此时读写信号 OE 为高电平,写入 32 个数据,此时没有输出。 32 个时钟过后,图 RAM 的 元件符号 图 图 存储器 RAM 仿真图 图 OE 低电平期间读出的 32 个数据放大图 图 OE 高电平期间写入的 32 个数据放大图 苏州大学本科生毕业设计(论文) 19 OE 为低电平, RAM 开始读出刚刚写入的 32 个数据,当读完这 32 个数据之后, RAM关闭。 从仿真图看出,该模块很好地实现了所需要的功能,完全符合设计要求。 苏州大学本科生毕业设计(论文) 20 第四章 系统 顶层的实现与仿真 系统顶层原理图 将第三章设计的数字信号发生器模块,触发模块,存储器 REGN 模块, RAM 模块在 Quartus II 中对应接口连接起来之后,得到如图 所示的系统顶层原理图。 系统顶层仿真图 在 20xxus 时间观察域,系统时钟信号为 ,有源晶振 1MHz 的基础上,得到的系统顶层仿真结果如图 所示。 图 系统顶层原理图 图 系统顶层仿真图 苏州大学本科生毕业设计(论文) 21 在图 的系统仿真图中, CLK 为系统时钟; CLK1 为有源晶振; CLK_EN 使能信号 ; CLR 为计数器复位信号; LOADA 为数字信号发生器开始工作信号; DU 为预置信号; datab 为预置触发字; A 为数字信号发生器产生的数据流观察信号; B 为触发信号观察信号,亦即 RAM 片选信号; C 为 OE 读写信号观察信号; D 为计数器地址信号; DATA_O 为输出端口。 整个系统大致的运行流程是这样的:当数据流序列与预置触发字 130( 10000010)相同时,立刻触发,触发信号 B 在 130( 10000010)之后将一直保持高电平。 此时分频器启动将时钟信号 CLK1 进行 640 分频成读写信号 OE 输出到 RAM 中,与此同时触发信号 B 也输出到 RAM 中,作为片 选信号 CS,启动 RAM。 在。基于fpga的简易逻辑分析仪的设计与仿真完整毕业设计论文(编辑修改稿)
相关推荐
4)用 C 语言完成了系统中单片机控制的的软件设计。 ( 5)对频率计的系统性能进行分析,通过分析得出,本设计的测频范围是~50MHz,测量精度为百万分之一,被测信号的幅度为。 本文分 5 章介绍了基于 FPGA 的等精度数字频率计的设计原理、设计步骤,性能分析等。 兰州交通大学毕业设计(论文) 3 2 系统设计的相关理论 频率测量方法的研究 常用测频方案 在电子技术中,频率是最基本的参数之一
( 6) 灵活高效的全局时钟网络,提高设计性能 ,开发板上提供48MHz 的晶振频率 ; ( 7) 在封装上, A3P030 有 132QFN 和 100VQFP 两种 ,此工程用的是开发板是 100VQFP 封装型号 ; LiberoIDE 是 Actel FPGA 的集成开发环境 ,提供完整的 FPGA 设计工具,支持原理图, HDL 输入,并以用户 GUI 的方式显示 FPGA 的设计过程
INT82DEV_OE83IN484GCLCK11IN12DEV_OE3VCCINT4I/O0/DATA75I/O1/DATA66I/O2/DATA57I/O3/DATA48I/O4/DATA39I/O5/DATA210I/O6/DATA111D A T A 012D C L K13n C E14T D I15I / O 716I / O 817I / O 918I / O 1019V C C
0 进行温度采集,将采集到的温度数字直接以数字信号传输给 FPGA 控制器,控制器通过比较采集的温度和用户设置的温度来做出发送降温还是加热的控制信号给空调机。 同时通过 FPGA 芯片还可以实现定时和控制显示,使用 6 个数码管将传感器测量到的温度,设置的温度、定时时长都显示出来。 其方框图 32如下: 图 32 基于 FPGA 的空调控制系统框图 方案论证与确定 通过比较两个方案,方案 1
这里只需了解系统的轮廓即可,后面会详细介绍各模块的设计与实现。 河南理工大学毕业设计(论文)说明书 15 3 模块设计与实现 如前面所述,顶层实体由 3个模块构成: 微控制器接口模块、相位累加器模块及双端口 RAM 模块。 由 8 个比例乘法器级联组成的分频器模块以端口定义的形式例化在微控制器模块中,属于后者的子模块,但是由于比例乘法器的本设计中所发挥的作用很大,加之相关资料少之又少
入式开发软件、可编程逻辑设计于一体,是一种综合性的开发平台。 使用 Quartus II 的设计过程包括以下几步,若任一步出错或未达到设计要求则应修改设计,然后重复以后各步, Quartus II 的设计流程如图 11 所示。 图 11 Quartus II 的设计流程。 逻辑设计的输入方法有原理图形输入、文本输入、波形输入及第三方 EDA 工具生成的设计网表文件输入等。 输入方法不同