Maxplus2课程设计

  • 格式:doc
  • 大小:262.50 KB
  • 文档页数:9

实验名称:Max+plusⅡ在数字电子技术中的应用实验仪器:Max+plusⅡ系统仿真实验原理:Max+plusⅡ是Alter公司开发的一款完全集成化得EDA工具软件,它具有强大、界面友好、使用简便等优点。

Max+plusⅡ支持原理图、硬件描述语言波形文件以及它们的混合设计作为输入,而且可以讲其编译并形成各种能够下载到可编程逻辑器件的数据文件,并能进行仿真的仿真模型文件。

在进行功能仿真时,能产生精确的仿真效果,以检查设计的可靠性。

实验内容:一、门电路的仿真1. 2输入与非门的VHDL描述:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY nand2 ISPORT(a, b : IN STD_LOGIC;y: OUT STD_LOGIC);END nand2;ARCHITECTURE one OF nand2 ISBEGINy<= a nand b;END one;仿真结果:2. 2输入或门的VHDL描述:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL; ENTITY or2 ISPORT(a, b : IN STD_LOGIC; y: OUT STD_LOGIC); END or2;ARCHITECTURE one OF or2 ISBEGINy<= a or b;END one;仿真结果:3.非门的VHDL描述LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL; ENTITY hnot ISPORT(a : IN STD_LOGIC;y: OUT STD_LOGIC); END hnot;ARCHITECTURE one OF hnot ISBEGINy<= not a;END one;仿真结果:4.异或门的VHDL描述LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL; ENTITY xor2 ISPORT(a, b : IN STD_LOGIC; y: OUT STD_LOGIC); END xor2;ARCHITECTURE one OF xor2 ISBEGINy<= a xor b;END one;仿真结果:二、3线-8线译码器的仿真3线-8线译码器的VHDL描述LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY decoder38 ISPORT(a : IN STD_LOGIC_VECTOR(2 DOWNTO 0);y: OUT STD_LOGIC_VECTOR(7 DOWNTO 0));END decoder38;ARCHITECTURE one OF decoder38 ISBEGINPROCESS (a)BEGINCASE a ISWHEN "000" => y<= "00000001";WHEN "001" => y<= "00000010"; WHEN "010" => y<= "00000100"; WHEN "011" => y<= "00001000"; WHEN "100" => y<= "00010000"; WHEN "101" => y<= "00100000"; WHEN "110" => y<= "01000000"; WHEN "111" => y<= "10000000";WHEN OTHERS =>null ;END CASE;END PROCESS;END one;仿真结果:三、8线-3线优先编码器的仿真8线-3线优先编码器的VHDL描述LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY encoder83 ISPORT( d : IN STD_LOGIC_VECTOR(7 DOWNTO 0);encode: OUT STD_LOGIC_VECTOR(2 DOWNTO 0)); END encoder83;ARCHITECTURE one OF encoder83 ISBEGINencode <= "111" when d(7) = '1' else"110" when d(6) = '1' else "101" when d(5) = '1' else "100" when d(4) = '1' else "011" when d(3) = '1' else "010" when d(2) = '1' else "001" when d(1) = '1' else "000" when d(0) = '1' ;END one;仿真结果:四、同步复位D触发器的仿真同步复位D触发器的VHDL描述LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY d_ff isPORT (d,clk,reset : IN STD_LOGIC;q : OUT STD_LOGIC);END d_ff;ARCHITECTURE one OF d_ff ISBEGINPROCESS (clk)BEGINIF clk'EVENT AND clk='1' THEN IF reset='1' THENQ<='0';ELSE q<=d;END IF;END IF;END PROCESS;END one;仿真结果:五、边沿JK触发器的仿真边沿JK 触发器的VHDL描述LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY jk_ff isPORT (j,k,clk : IN STD_LOGIC;q, qn : OUT STD_LOGIC); END jk_ff;ARCHITECTURE one OF jk_ff ISSIGNAL q_s : STD_LOGIC;BEGINPROCESS (j,k,clk)BEGINIF clk'EVENT AND clk='1' THEN IF J='0' AND k='0' THENq_s<= q_s;ELSIF J='0' AND k='1' THEN q_s<='0';ELSIF J='1' AND k='0' THEN q_s<='1';ELSIF J='1' AND k='1' THENq_s<=NOT q_s;END IF;END IF;END PROCESS;q<=q_s;qn<=not q_s;END one;仿真结果:六、十进制计数器的仿真十进制计数器的VHDL描述LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY COUNT10 ISPORT(CP: IN STD_LOGIC;Q: OUT STD_LOGIC_VECTOR(3 DOWNTO 0)); END COUNT10;ARCHITECTURE BEHAVE OF COUNT10 ISSIGNAL COUNT_4: STD_LOGIC_VECTOR(3 DOWNTO 0); BEGINPROCESS(CP)BEGINIF(CP'EVENT AND CP='1') THENIF(COUNT_4="1001") THENCOUNT_4<="0000";ELSECOUNT_4<=COUNT_4+'1';END IF;END IF;END PROCESS;Q<= COUNT_4;END BEHAVE;仿真结果:七、4位基本寄存器的仿真4位基本寄存器的VHDL描述LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY registerb isPORT (cp,reset : IN STD_LOGIC;data : IN STD_LOGIC_VECTOR(3 DOWNTO 0); q: OUT STD_LOGIC_VECTOR(3 DOWNTO 0) );END registerb;ARCHITECTURE one OF registerb ISBEGINPROCESS (cp)BEGINIF cp'EVENT AND cp='1' THENIF reset='1' THENq<="0000";ELSEq<= data;END IF;END IF;END PROCESS;END one;仿真结果:实验小结:通过对实例的系统仿真,一方面熟悉了VDHL语言程序设计和仿真软件的应用,另一方面在验证单元电路的同时也加深了对所学内容单元电路功能的理解。

以上的报告只是对Max+plusⅡ软件在数字电子技术学习上的一点应用,以后更深一步学习微机原理,单片机,EDA技术等课程时还可以应用这个软件来做仿真,需要进一步学习这个软件的应用,这样在以后做设计实验前可以先用VHDL语言对硬件描述然后仿真一下,验证是否可以达到预定的输出,帮助我们更好的操作真实实验。

参考文献:《数字电子技术简明教程(第三版)》余孟尝主编。