|||
WinCupl是ATMEL公司出品的Cupl语言的编译环境,用于PLD器件的编程,支持多种器件,包括GAL系列
和ATF系列。一般来说,ATF系列的同等级产品要必GAL的便宜,比如AFT16V8就兼容GAL16V8,可以擦写100
次,价格上也便宜1块~2块,性能都差不多。
在ATMEL公司的SPLD/CPLD栏目中免费下载WinCupl后,可以得到一个注册码,用这个码就可以激活
WinCupl了,这个码没有使用时间的限制。
WinCupl软件包实际包括两个部分,一个是WinCupl,PLD的编译环境,一个是WinSim,相当于MAX的波
形仿真部分。
接下来我们学习如何使用这个软件。
一、编译第一个源文件
第一次课我们举了一个例子,说明了Cupl语言的基本结构,下面我们做另一个例子,就是两输入端与
门。具体步骤是:
1、启动WinCupl。启动完进入主界面后,单击File菜单的New,从New中单击Projet,就是新建一个工
程文件(其实还是PLD文件),在弹出的对话框中,可以填您的源文件名字(Name),填MYGATE,其它的
东西怎么填请您复习第2课的PLD文件头部文件的说明部分。这里有个特殊的地方,就是器件(Device),
系统默认的是virtual,就是不针对任何具体的部件,这里我们改掉,改成g16v8a,这个关键字兼容
ATF16V8。
2、单击OK后,系统要你输入你要用的输入引脚数,因为我们只有两个输入端,因此填2,单击OK按钮
。
3、系统要你输入要用到的输出引脚数,填1,单击OK按钮。
4、系统要你输入要使用到的中间节点数,我们不需要,填0,单击OK按钮。这样系统就建立了一个
PLD文件,文件名就是MYGATE.PLD。系统将该文件显示出来了,就象下面这样:
Name MYGATE ;
PartNo 00 ;
Date 2006-8-9 ;
Revision 01 ;
Designer WUJIAN ;
Company TALE ;
Assembly None ;
Location ;
Device g16v8a ;
/* *************** INPUT PINS *********************/
PIN = ; /* */
PIN = ; /* */
/* *************** OUTPUT PINS *********************/
PIN = ; /* */
因此,这个文件是空的,我们填一下,将输入输出引脚都填好,把逻辑也写完,就象下面这样:
Name MYGATE ;
PartNo 00 ;
Date 2006-8-9 ;
Revision 01 ;
Designer WUJIAN ;
Company TALE ;
Assembly None ;
Location ;
Device g16v8a ;
/* *************** INPUT PINS *********************/
PIN 2 = a ; /* */
PIN 3 = b ; /* */
/* *************** OUTPUT PINS *********************/
PIN 12 = Y ; /* */
Y = a & b;
写好后,我们需要编译该文件。在Run菜单中,单击Device Dependent Compile,就是基于器件型号
的编译。如果没有出现什么键入错误,都能成功编译。编译完成后,我们来仿真一下看看波形。
二、仿真的基本方法
编译完成后。单击工具栏图标的从右侧数第2个,启动WinSim。启动完成后,单击WinSim菜单File中的
New。
1、在弹出的Design Properties对话框中,单击Design File按钮,选中MYGATE.PLD文件,按“确认
”按钮继续。在Design Properties对话框中,单击OK按钮确认。
2、接下来WinSim会提示是否创建MYGATE.SIM文件并编译它,单击“是”继续。
3、不管接下来的提示,在WinSim中Signal(信号)菜单中单击Add,在弹出的Add Signal对话框中不
断单击OK按钮将a、b、y三个信号加到波形图中。单击Done关闭该对话框。
4、在WinSim的File菜单中单击Save项保存该项目。
5、在黑色的网格的左上方有个Value,Value右边有个1,在1所在的灰色条上单击鼠标右键,在弹出
的菜单中的Add Vector上单击鼠标左键,在弹出的对话框中输入3,表示增加波形仿真的3段。
6、在a的右侧的波形上单击鼠标右键,依次选0,0,1,1,在b的波形上单击鼠标右键,依次选0,1
,0,1。
7、保存该工程。在Simulator菜单中选择Simulator开始仿真,就可以看到y的波形了。