EDA课程设计报告自动售货机.doc
文本预览下载声明
EDA(Verilog)课程设计报告
——自动售货机
摘 要
本设计是以现场可编程逻辑器件(FPGA)为核心的自动售货机,利用QuartusⅡ软件编写verilog HDL硬件描述语言程序以实现自动售货功能。
本设计主要以程序为主,硬件方面则使用实验箱(芯片Cyclone II— EP2C35F672C8,基于MagicSOPC创新教学实验开发平台),将程序各变量端口与实验箱管脚进行相应的配置,用八个开关分别代表商品价格、所投钱币价格及确认付款找零操作。当选择好商品并投币后,数码管显示所选商品价格及投入钱币价格;按下确认付款开关,数码管显示应找多少钱,若交易成功,则对应商品LED灯亮,同时步进电机转动将商品送出。若所投钱币小于所选商品价格,此时交易不成功,同时对应警告的LED灯亮。
目 录
前言
第一章 系统设计
1.1 系统设计
1.2 总体设计
1.3 方案设计
第二章 详细设计
2.1 自动售货机状态描述
2.2 详细状态描述
2.2.1 初始状态
2.2.2 选商品状态
2.2.3 投币状态
2.2.4 找零状态
第三章 软件设计
3.1 程序总流程图
3.2 verilog HDL源程序
第四章 结果与讨论
4.1 实验调试
4.1.1 调试步骤
4.1.2 实验现象
4.2 结果与分析
第五章 心得体会
参考文献
附录
前言
EDA是电子设计自动化(Electronic Design Automation)的缩写,在20世纪60年代中期从计算机辅助设计(CAD)、计算机辅助制造(CAM)、计算机辅助测试(CAT)和计算机辅助工程(CAE)的概念发展而来的。
Verilog HDL是众多EDA软件设计采用的是Verilog公司推出的Verilog硬件描述语言Verilog硬件描述语言Ve r i l o g硬件描述语言的主要能力:
· 基本逻辑门,例如a n d、o r和n a n d等都内置在语言中。
· 用户定义原语( U D P)创建的灵活性。用户定义的原语既可以是组合逻辑原语,也可以是时序逻辑原语。
· 开关级基本结构模型,例如p m o s 和n m o s等也被内置在语言中。
· 提供显式语言结构指定设计中的端口到端口的时延及路径时延和设计的时序检查。
· 可采用三种不同方式或混合方式对设计建模。这些方式包括:行为描述方式—使用过程化结构建模;数据流方式—使用连续赋值语句方式建模;结构化方式—使用门和模块实例语句描述建模。
· Verilog HDL中有两类数据类型:线网数据类型和寄存器数据类型。线网类型表示构件间的物理连线,而寄存器类型表示抽象的数据存储元件。
· 能够描述层次设计,可使用模块实例结构描述任何层次。
· 设计的规模可以是任意的;语言不对设计的规模(大小)施加任何限制。
· Verilog HDL不再是某些公司的专有语言而是I E E E标准。
· 人和机器都可阅读Verilog 语言,因此它可作为E D A的工具和设计者之间的交互语言。
· Verilog HDL语言的描述能力能够通过使用编程语言接口( P L I)机制进一步扩展。P L I是允许外部函数访问Verilog 模块内信息、允许设计者与模拟器交互的例程集合。
· 设计能够在多个层次上加以描述,从开关级、门级、寄存器传送级( RT L)到算法级,包括进程和队列级。
· 能够使用内置开关级原语在开关级对设计完整建模。
· 同一语言可用于生成模拟激励和指定测试的验证约束条件,例如输入值的指定。
· Verilog HDL 能够监控模拟验证的执行,即模拟验证执行过程中设计的值能够被监控和显示。这些值也能够用于与期望值比较,在不匹配的情况下,打印报告消息。
· 在行为级描述中, Verilog HDL不仅能够在RT L级上进行设计描述,而且能够在体系结构级描述及其算 法级行为上进行设计描述。
· 能够使用门和模块实例化语句在结构级进行结构描述。
· 在Verilog HDL 的混合方式建模能力,即在一个设计中每个模块均可以在不同设计层次上建模。
· Verilog HDL 还具有内置逻辑函数,例如(按位与)和|(按位或)。
· 对高级编程语言结构,例如条件语句、情况语句和循环语句,语言中都可以使用。
· 可以显式地对并发和定时进行建模。
· 提供强有力的文件读写能力。
· 语言在特定情况下是非确定性的,即在不同的模拟器上模型可以产生不同的结果;例如,事件队列上的事件顺序在标准中没有定义。
第一章 系统
显示全部