EDA设计的自动售饮料机当文网提供.docx

上传人:b****5 文档编号:8392515 上传时间:2023-01-31 格式:DOCX 页数:7 大小:156.40KB
下载 相关 举报
EDA设计的自动售饮料机当文网提供.docx_第1页
第1页 / 共7页
EDA设计的自动售饮料机当文网提供.docx_第2页
第2页 / 共7页
EDA设计的自动售饮料机当文网提供.docx_第3页
第3页 / 共7页
EDA设计的自动售饮料机当文网提供.docx_第4页
第4页 / 共7页
EDA设计的自动售饮料机当文网提供.docx_第5页
第5页 / 共7页
点击查看更多>>
下载资源
资源描述

EDA设计的自动售饮料机当文网提供.docx

《EDA设计的自动售饮料机当文网提供.docx》由会员分享,可在线阅读,更多相关《EDA设计的自动售饮料机当文网提供.docx(7页珍藏版)》请在冰豆网上搜索。

EDA设计的自动售饮料机当文网提供.docx

EDA设计的自动售饮料机当文网提供

前言

随着电子技术和计算机技术的飞速发展,电子线路的设计工作也日益显得重要。

经过人工设计、制作实验板、调试再修改的多次循环才定型的传统产品设计方法必然被计算机辅助设计所取代,因为这种费时费力又费资源的设计调试方法既增加了产品开发的成本,又受到实验工作场地及仪器设备的限制。

为了克服上述困难,加拿大InteractiveImageTechnologies公司推出的基于Windows95/98/NT操作系统的EDA软件。

他可以将不同类型的电路组合成混合电路进行仿真。

此外,从另一角度来看,随着计算机技术和集成电路技术的发展,现代电子与电工设计,已经步入了电子设计自动化(EDA)的时代,采用虚拟仿真的手段对电子产品进行前期工作的调试,已成为一种发展的必然趋势。

通过对实际电子线路的仿真分析,从而提高对电路的分析、设计和创新能力。

数字集成电路本身在不断地进行更新换代。

它由早期的电子管、晶体管、小中规模集成电路、发展到超大规模集成电路(VLSIC,几万门以上)以及许多具有特定功能的专用集成电路。

但是,随着微电子技术的发展,设计与制造集成电路的任务已不完全由半导体厂商来独立承担。

系统设计师们更愿意自己设计专用集成电路(ASIC)芯片,而且希望ASIC的设计周期尽可能短,最好是在实验室里就能设计出合适的ASIC芯片,并且立即投入实际应用之中,因而出现了现场可编程逻辑器件(FPLD),其中应用最广泛的当属现场可编程门阵列(FPGA)和复杂可编程逻辑器件(CPLD)。

FPGA(现场可编程门阵列)与CPLD(复杂可编程逻辑器件)都是可编程逻辑器件,它们是在PAL,GAL等逻辑器件的基础之上发展起来的。

同以往的PAL,GAL等相比较,FPGA/CPLD的规模比较大,它可以替代几十甚至几千块通用IC芯片。

这样的FPGA/CPLD实际上就是一个子系统部件。

本次EDA课程设计就是利用VerilogHDL来设计基于ACEX1K30TC144-3型号的FPGA来设计一个自动售货机,机器设有2个投币孔,可以接受一元和五角的硬币,每瓶饮料2.5元,可用2个按键来代替。

还设有2个输出,要求有找零和提示信号,分别输出饮料和找零,设计按照EDA课程设计的流程,源代码的编写,前仿真,综合,然后布局布线,后仿真,前、后仿真验证成功后,下载到FPGA实验箱上进行验证。

本此设计综合利用ModelSimSE6.0、leonardospectrum、MAX+PLUS210.0等设计软件进行课程设计。

 

目  录

一、自动售饮料机系统设计任务书 

二、自动售饮料机方案

三、自动售饮料机控制系统设计详细说明

1.系统完整程序代码及系统测试程序代码

2.系统的顶层原理图、RLT级原理图、technology级原理图

3.前仿真波形及分析

4.综合后仿真波形及分析

5.EDA试验箱的实验下载及调试

6.系统原理图

四、系统设计工作进程

1.小组成员分工及安排

2.工作日程表

3.本人承担的任务和执行的情况

五、收获和体会

六、参考文献

一、自动售饮料机系统设计任务书

课程设计要求:

设计一个自动售饮料机。

假定每瓶饮料售价为2.5元,可使用两种硬币,即5角和1元,机器有找零功能。

机器设计有2个投币孔,可用2个按键来代替。

还设有2个输出孔,分别输出饮料和找零,提示用户取走饮料和零钱。

二、自动售饮料机方案

Verilog程序源代码:

modulesell(yi_yuan,wu_jiao, get,half_out,sell_out,reset,clk);

parameteridle=0,half=1,one=2,two=3,three=4;

inputyi_yuan,wu_jiao,reset,clk;

outputget,half_out,sell_out;

regget,half_out,sell_out;

reg[2:

0]s;

always@(posedgeclk)

begin

if(reset)

begin

sell_out=0; get=0; half_out=0; s=idle;

end

else

case(s)

idle:

begin

sell_out=0; get=0;half_out=0;

if(wu_jiao) s=half;

else if(yi_yuan)s=one;

end

half:

begin

if(wu_jiao) s=one;

elseif(yi_yuan)

s=two;

end

one:

begin

if(wu_jiao)s=two;

elseif(yi_yuan)s=three;

end

two:

 begin

if(wu_jiao)s=three; 

elseif(yi_yuan) 

begin

sell_out=1;get=1; s=idle;

end

end

three:

 begin

if(wu_jiao) 

begin

sell_out=1;get=1; s=idle;

end

elseif(yi_yuan)

begin 

sell_out=1;get=1;half_out=1;s=idle;

end

end

default:

begin

sell_out=0; get=0;half_out=0; s=idle; 

end  

endcase

end

endmodule

测试代码:

`timescale1ns/1ns

modulesell_top;

regyi_yuan,wu_jiao,reset,CLK;

wireget,half_out,sell_out;

always#50CLK=~CLK;

initial

begin

CLK=0;reset=1;

#100   reset=0;

yi_yuan=0;

wu_jiao=0;

end

always@(posedgeCLK)

begin

wu_jiao={$random}%2;#50wu_jiao=0;

end

always@(posedgeCLK)

begin

if(!

wu_jiao)yi_yuan=1;#50yi_yuan=0;

end

sellm(.yi_yuan(yi_yuan),.wu_jiao(wu_jiao),.get(get),

.half_out(half_out),.sell_out(sell_out),.reset(reset),.clk(CLK));

endmodule

三、  自动售饮料机控制系统设计详细说明

仿真前波形及分析:

分析前仿真波形,每个时钟周期为100ns,如图:

在100ns系统复位,到550ns时,输入5个wu_jiao信号,get和sell_out信号出现告电平,持续100ns,表示卖出和取饮料信号。

第三组开始输入信号:

在1050ns且为上升沿时,1个yi_yuan高电平,后接着俩wu_jiao高电平,又一个yi_yuan高电平,half_out/get和sell_out信号出现告电平持续100ns,表示分别有卖出、找零和取饮料信号。

在1850ns时第5组测试数据开始,同时为时钟上升沿,分别有三个wu_jiao和一个yi_yuan高电平,满足输出,get、sell_out同时为高,持续100ns,表示分别卖出和取饮料信号。

系统的顶层原理图如下:

RLT级原理图:

综合后technology级原理图:

后仿真测试代码:

由于在综合中名字有所改变,故如下的原sell改为sellnow,并且经过综合原clk改为CLK:

`timescale1ns/1ns

modulesell_top;

regyi_yuan,wu_jiao,reset,CLK;

wireget,half_out,sell_out;

always#50CLK=~CLK;

initial

begin

CLK=0;reset=1;

#100   reset=0;

yi_yuan=0;

wu_jiao=0;

end

always@(posedgeCLK)

begin

wu_jiao={$random}%2;#50wu_jiao=0;

end

always@(posedgeCLK)

begin

if(!

wu_jiao)yi_yuan=1;#50yi_yuan=0;

end

sellnowm(.yi_yuan(yi_yuan),.wu_jiao(wu_jiao),

.get(get),.half_out(half_out),.sell_out(sell_out),.reset(reset),.CLK(CLK));

 

endmodule

后仿真图形如下:

后仿真图形分析:

采用系统函数随机产生测试数据,在100ns时系统复位,在150ns时测试数据有效,输入5个wu_jiao信号,在550ms时满足输出,但在650ns时输出get、sell_out同时为高,持续100ns,布局布线后信号产生迟延为100ns,在650ns到950ns中输入3个wu_jiao和一个yi_yuan信号,在950ns使满足输出,但在1050ms时产生输出,get、sell_out同时为高,持续100ns,在1050ns到1350ns中输入2个wu_jiao2个yi_yuan信号,在1350ns时满足输出,但在1450ns时输出get、half_out、sell_out同时为高,持续100ns,通过以上分析可以知道,经过综合后,信号产生了100ns的时间迟延,状态符合设计要求。

设计初步符合设计要求。

 

EDA试验箱的实验:

经过以上前仿真,综合,然后布局布线,后仿真,前、后仿真验证成功后,下载到FPGA实验箱成功得到led显示,与上面的仿真波形相对应,与设计思想吻合,实验部分已经成功,下面是原理图的绘制:

 

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高中教育 > 初中教育

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1