文档介绍:+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