文档介绍:+plus2软件支持VHDL语言描述被设计电路的逻辑功能,如下举例说明如何使用该语言设计逻辑电路。肁例一:设计一个加法器莇第一步:进入Max+plus2软件环境蚇第二步:建立项目名称,选择File/Project/Name菜单膅第三步:建立新文件,选择File/New菜单,进入文本编辑器(TextEditorFile)窗口芀第四步:输入VHDL语言编写的源程序,,这是对一个加法器进行的描述。输入完毕后存盘。文档收集自网络,:选择Assign/Device菜单,选定器件。膈羄第六步:选File/Project/lile菜单,编译该VHDL源文件蚀若有错误则改错,然后再编译,直至无错编译成功衿薄第七步:选Max+plus2\WaveformEditor菜单,进入波形编辑窗口,。文档收集自网络,:选择Max+plus2/Simulator菜单,。,将该电路转换成一个单元电路,在图形编辑器中调用该单元电路就象调用其它单元电路一样方便、简单,。文档收集自网络,:设计一个十进制加法计数器莆第一步:进入Max+plus2软件环境袄第二步:建立项目名称,选择File/Project/Name菜单膃第三步:建立新文件,选择File/New菜单,进入文本编辑器(TextEditorFile)窗口虿第四步:输入VHDL语言编写的源程序,这是对一个十进制加法计数器的行为描述。输入完毕后存盘。肆蚂十进制加法计数器的源程序:芁LIBRARYieee;;;蚃entitycount10is荿port(clk,reset,en:instd_logic;薈qa,qb,qc,qd:outstd_logic);薇endcount10;螄architecturebehaveofcount10is螂signalcount_4:std_logic_vector(3downto0);羈begin芈qa<=count_4(0);薂qb<=count_4(1);袀qc<=count_4(2);莇qd<=count_4(3);肈process(clk,reset)薃begin芃if(reset='0')then肀count_4<="0000";薄elsif(clk'eventandclk='1')then蚅if(en='1')then莁if(count_4="1001")then薀count_4<="0000";芅else蒂count_4<=count_4+'1';葿endif;罿endif;羅endif;蒃endprocess;袂endbehave;莈第五步:选择Assign/Device菜单,选定器件。螅第六步:选File/Project/lile菜单,编译该VHDL源文件薅若有错误则改错,然后再编译,直至无错编译成功羀第七步:选Max+plus2\WaveformEditor菜单,进入波形编辑窗口,。文档收集自网络,:选择Max+plus2/Simulator菜单,。:蒅如下是一个六十进制计数器和一个十二进制计数器异步连接的例子,六十进制计数器的进位输出是十二进制计数器的时钟脉冲。。从仿真中发现,若选用FLEX10k系列器件,由于设计不尽合理会出现不该有的毛刺,致使不该输出进位时输出了进位,导致十二进制计数器误动作,然而选用MAX7000系列器件就不会出现毛刺和误动现象。文档收集自网络,仅用于个人学习蕿六十进制计数器设计文件和十二进制计数器设计文件基本相同,只是十位数的归零条件不同。莀设计文件:螇LIBRARYieee;;;蝿蒇entitycou12is莄port(clk,reset,cin:instd_logic;肀co:outstd_logic;腿bcd1p:outstd_logic_vector(3downto0);文档收集自网络,仅用于个人学习膈bcd10p:o