基于fpga的采样状态机的设计与仿真本科毕业论文(编辑修改稿)内容摘要:

s,co:OUT Std_ogic)。 END Fadder。 Architecture struc of fadder is Component or2gate 结构体说明 Port(a,b:In Std_ogic。 f:OUT Std_ogic)。 南京林业大学 学士学位 论文 8 End ponent。 Compo hadder 元件例化语句 Port(a,b:In Std_ogic。 s,co:Out Std_ogic)。 End ponent。 Signal:tepms,tempcol2:Std_logic。 Begin U0:hadder Port MAP(a,b,temps,tempco1)。 U1:hadder Port MAP(ci,tmps,s,tempco2)。 U2:or2gate Port map(ci,tempco2,co)。 End struc。 从该程序可以看出,一个完整的 VHDL 从描述层次上可以包括库说明,实体说明,结构体说明三个部分 [5]。 例外, VHDL 语言和其他软件一样,也有严格的标识符、数据对象 , 数据类型定义。 准确、熟练掌握基本的数据定义,对 于 初学者是非常必要的。 本章小结 本章介绍了 VHDL 语言的概念进行了综述,然后对其结构进行了详细的说明。 通过这些内容,对 FPGA 设计的硬件描述语言 VHDL 有了大致了解‘ 南京林业大学 学士学位 论文 9 第 四 章: FPGA 基础 CPLD 分类 复杂的可编程逻辑器件 CPLD( Complex Programmable Logic Device) 是由 PAL 或 GAL发展而来的,基本上是扩充原始的可编程逻辑器件,它通常是由可编程逻辑的功能块围绕一个位于中心和延时固定的可编程互联矩阵构成。 为了增加电路密度而不使性能或功耗受到损失,复杂的可编程逻辑器件 CPLD 在结构上引入了各种特性。 从目前的趋势来看, CPLD 又延伸出二大分支:即可擦除可编程的逻辑器件 EPLD( Erasable programmable logic device)和 现场可编程门阵列器件 FPGA(Field programmable gate qrrery)[6]. 总的来说, CPLD 与 FPGA 的定义有所不同,根据结构特点和工作原理,CPLD 与 FPGA 的分类方法是:以乘积项结构方式构成逻辑行为的器件称为CPLD,以查表法结构方式构成逻辑行为的器件称为 FPGA. FPGA 简介 FPGA 是由掩膜可编程门阵列和可编程逻辑器件演变而来的,将它们的特性结合在一起,使得 FPGA 具有门阵列的高逻辑密度和通用性,又有可编程逻辑器件的用户可编程特性。 而且, FPGA 可以分成二大类: 即细粒度 (Finegrain)和粗粒度( coarcegrain)。 细粒度逻辑块是与半定制门阵列的基本单元相同,它由可以用可编程互连来连接的少数晶体管组成,规模都较小,主要优点是可用的功能块可以完全被利用;缺点是采用它通常需要大量的连线和可编程开光,使相对速度变慢。 而基于 FPGA 设计的硬件系统具有以下特点: ( 1)无需投片生产,即可得到芯片 ( 2)可做 ASIC 的中试样片 ( 3)有丰富的触发器和 I/ O 引脚 ( 4)设计周期最短、开发费用最低、风险最小 ( 5)采用高速 CHMOS 工艺,功耗低,可以与 CMOS、 TTL 电平兼容 南京林业大学 学士学位 论文 10 图 5 FPGA 设计流程 [7] FPGA 的设计与传统的通用 IC 设计在许多方面有区别,可以归纳表格如下: (1).设计规范 ( 4) .逻辑综合 ( 2) .设计输入 ( 7)系统测试 ( 3) .仿真功能 ( 5)布局布线 ( 6)时序分析 输入工具 辅助分析工具 管脚约束 优化设计 手动工具 分析工具 优化工具 仿真工具 南京林业大学 学士学位 论文 11 项目 方法 通用 IC 设计 CPLD/FPGA 设计 设计方向 从片子到系统 从系统到片子 成本限制 元件数量 工作量及芯片价格 性能限制 功能单元设计 设计及开发工具性能 设计方案选择 主要元件 FPGA 芯片 可测试要求 可连接到 PCB 板上 只需要功能测试(注) 验证 制作印刷电路板 模拟 样 机制作 通常在实验室内完成 可在实验室内完成 后期更改计划 不方便 方便 设计方法 不灵活 有很大的灵活性 工具 可以不依赖与 CAE 强烈依赖于 CAE 图 6 FPGA 设计与传统 IC 设计区别 本章小结 本章介绍了 CPLD 与 FPGA 的分类方法,详细做表介绍了一般 FPGA 的设计流程 ,并且比较了 FPGA 与传统 IC 设计的区别。 通过比较很容易得出 FPGA 设计比其它设计更有优势的结论。 从而在大型电路设计会考虑 FPGA 设计来提高效率。 南京林业大学 学士学位 论文 12 第 四 章:有限状态机的基本概念 有限状态机设计硬 件的优势 当前以硬件描述语言为工具,逻辑器件为载体的系统设计越来越广泛。 在设计中,状态机是最典型、应用最广泛的电路模块,其运行速度的高效、执行时间的确定性和高可靠性方面都显示出强大的优势。 有限状态机是一种时序逻辑电路,常用于数字电路中的控制单元。 有限状态机中的每一个状态对应控制单元中的一个控制步骤,有限状态机的次态对应控制单元中与每一个控制步骤有关的转移条件。 只要遵循这二条对应关系,就很容易利用有限状态机来描述数字电路系统中的控制单元了。 有限状态机的输出信号仅与当前状态有关时,称为 Moore 型有限状态机。 其输出不仅与当前状态有关,而且与所有的输入信号有关时。 这样的状态机称为Mealy 型有限状态机 [8] 有限状态机可应用于各种系统控制,如:微处理机中的总线总裁、微处理机与外设之间的控制、工业控制、数据的加密与解密,数字信号与处理中的时序控制等。 有限状态机的设计的一个代码例子 组合逻辑进程中有关状态机的代码: PROCESS (input, current_state) BEGIN CASE current_state IS WHEN state is IF(input=......) THEN Output =value。 Next_state=stae1。 ELSE....... END IF。 南京林业大学 学士学位 论文 13 WHEN STATE1= IF ( input=.....) THEN Output =value。 Next_state=state2; ELSE ...... END IF。 WHEN state2= IF (input=......)THEN Ouput =value。 Next_state=state3。 ELSE ...... END IF。 ....... END CASE。 END PROCESS; 这段代码做了二件事:对输出端口赋值和确定状态机的下一状态。 同样可以看出,它采用顺序代码设计组合逻辑电路的基本要求,即所有输入信号必须出现在 PROCESS 的敏感信号中,并且所有输入 /输出信号的组合都必须完整列出。 在整个代码中,由于没有任何信号的赋值是通过其他某个信号的跳变来触发的,所以不会生成寄存器。 状态机的时序逻辑进程 时序逻辑进程主要用于实现状态机的状态转化。 一般状态机是随外部时钟信号。 该进程就是保 证状态机的跳变与时钟信号同步,保证在时钟发生有效跳变时,状态机的状态发生变化。 时序逻辑进程的代码如下: PROCESS(reset, clock) BEGIN IF(reset=‘ 1’ )THEN 南京林业大学 学士学位 论文 14 current_state=state0。 ELSE (CLOCK’ event and clock=’ 1’ )THEN Current_state=next_state。 END IF。 END PROCESS。 本章小结 本章纤细的介绍了状态机的基本内容,包括状态机包括 moore 型与 mealy 型的区别 ,并且举了一个状态机的例子。 由于状态机的启动必须要有启动的时序逻辑进程,故本章还对逻辑启动进程的程序作了些讲解。 南京林业大学 学士学位 论文 15 第 五 章: 基于 FPGA 的采样状态机 设计总体思路 图 7 设计思路框图 本次课题研究 的是 由温度传感器得到数据后,怎样由 AD 采样, 其中 AD 采样使用 AD0809。 图 8 ADC0809 的元器件内部结构图 采样模块的设计。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。