实验报告(2012----2013学年第一学期)课程名称:EDA技术专业班级:学号:姓名:实验一:原理图输入法设计与仿真实验时间:2012年10月19日(第七周)VCCD0INPUT VCCD1INPUT VCCD2INPUT VCCD3INPUT VCCS1INPUT VCCS0INPUT YOUTPUTNAND3instNAND3inst6NAND3inst7NAND3inst8NAND4inst9NOTinst10NOTinst113、管脚锁定五、实验结果及总结1、 系统时序仿真情况六、实验心得其实这个实验很简单,仅仅是让我们熟悉Quartus Ⅱ9.0软件的使用方法,在书本上的每个步骤都写的清清楚楚,我们组员按着书本上的步骤一步一步的做,实验做完后,我们那一大组很多小组依旧不停的请求老师指导,我们是最先做完实验的小组了。
之后我们被不同的小组询问。
其实只要看看书就可以很顺利做完实验,但是同学们做实验之前都没有好好做实验预习报告。
指导教师:吴建清2012年10月19日成绩实验二 七人表决器的设计2、系统时序仿真情况3、引脚匹配六、实验心得做这个实验之前做了预习报告,但是上实验室进行调试和老师的指导,才发现自己的之前的程序是行不通的,看到其他小组不同的程序,最后经过努力重新编写,最后成功完成实验。
条条道路通罗马,在学习的道路上不能去复制他人的东西,而要自己去思考,去创新!努力让自己多学点东西。
经过努力完成的事情才会有成就感。
成绩指导教师:吴建清2012年11月4日实验三 显示电路设计一、实验目的1、学习7段数码显示译码器设计;2、学习VHDL 的多层设计方法。
二、实验仪器设备1、PC 机一台2、GW48-PK2系列SOPC/EDA 实验开发系统 三、实验原理1、七段数码显示工作原理(共阴极接法)7 段数码是纯组合电路,通常的小规模专用IC ,如74 或4000系列的器件只能作十进制BCD 码译码,然而数字系统中的数据处理和运算都是2 进制的,所以输出表达都是16 进制的,为了满足16 进制数的译码显示,最方便的方法就是利用译码程序在FPGA/CPLD 中来实现。
作为7 段译码器,输出信号LED7S 的7 位分别接数码管的7 个段,高位在左,低位在右。
例如当LED7S 输出为“1101101”时,数码管的7 个段:g 、f 、e 、d 、c 、b 、a 分别接1、1、0、1、1、0、1;接有高电平的段发亮,于是数码管显示“5”。
注意,这里没有考虑表示小数点的发光管,如果要考虑,需要增加段h 。
2、显示代码概念 显示代码a b cdefg四、实验内容1、编写7段译码器VHDL源程序。
2、在QuartusⅡ软件上编译和仿真。
3、锁定管脚,建议选择实验电路模式6,显示译码输出用数码8 显示译码输出(PIO46-PIO40),键8、键7、键6 和键5 四位控制输入。
4编程下载与硬件验证。
5、记录系统仿真和硬件验证结果。
五、实验结果:1、VHDL源程序port(x:in std_logic_vector(3 downto 0);led:out std_logic_vector(6 downto 0)); end entity xianshi;architecture one of xianshi issignal led7:std_logic_vector(6 downto 0); beginprocess(x)begincase x iswhen "0000" =>led <="1111110";when "0001" =>led <="0110000";when "0010" =>led <="1101101";when "0011" =>led <="1111001";when "0100" =>led <="0110011";when "0101" =>led <="1011011";when "0110" =>led <="1011111";when "0111" =>led <="1110000";when "1000" =>led <="1111111";when "1001" =>led <="1111011";when others =>null;end case;end process;end architecture one;2、波形仿真图:4、引脚锁定:六、实验心得:其实本实验的显示我们在模电里面就学习过了,也用集成块进行过实验,本实验用程序加硬件完成。
真所谓条条道路通罗马!实验四 四位全加器一、实验目的通过实验让学生熟悉Quartus Ⅱ的VHDL 文本设计流程全过程,掌握组合逻辑电路的文本输入设计法,通过对设计电路的仿真和硬件验证,让学生进一步了解加法器的功能。
二、实验仪器设备1、PC 机一台2、GW48-PK2系列SOPC/EDA 实验开发系统 三、实验原理4位全加器可看作4个1位全加器串行构成,具体连接方法如下图所示:图3-1 由1位全加器构成4位全加器连接示意图采用VHDL 语言设计时调用其附带的程序包,其系统内部会自行生成此结构 四、实验内容4. 编写1位全加器full_add1的VHDL 源程序,并进行编译。
5. 利用元件例化语句编写4位全加器full_adder4的VHDL 源程序,并进行编译和仿真。
6. 锁定引脚,建议选择实验电路模式1:键1输入4位加数,键2输入4位被加数,键8输入Cin ,数码管5显示相加和,D8显示进位CO 。
7.编程下载与硬件验证。
五、设计提示调用STD_LOGIC_UNSIGNED包。
先设计一个一位的全加器包括三个输入端:a,b,cin(进位输入),两个输出端:s(和),cout(进位输出)。
四位串行进位的全加器可以利用四个一位的全加器搭建而成,其结构如上图所示,其输入端口分别为a0,a1,a2,a3,b0,b1,b2,b3,cin输出端口分别为s0,s1,s2,s3,cout。
在实验中只需要先描述一位全加器,然后用component语句进行元件说明,再利用元件例化语句就可以实现四位的全加器。
六、实验验证:2、波形图仿真:七、实验心得:真正意义上明白了例化语句的功能。
实验五序列检测器设计注:报告内容根据具体实验课程或实验项目的要求确定,一般包括实验目的、实验仪器、原理摘要、数据记录及结果分析等。
如纸张不够请自行加纸。
一、实验目的1、了解状态机的设计;2、用状态机实现序列检测器的设计。
architecture one of xljcq istype states is(s0,s1,s2,s3,s4,s5,s6,s7,s8);signal st, nst:states := s0;begincom:process(st,din)begincase st iswhen s0=> if din ='1' then nst <= s1; else nst<= s0; end if;when s1=> if din ='1' then nst <= s2; else nst<= s0; end if;when s2=> if din ='1' then nst <= s3; else nst<= s0; end if;when s3=> if din ='0' then nst <= s4; else nst<= s0; end if;when s4=> if din ='0' then nst <= s5; else nst<= s0; end if;when s5=> if din ='1' then nst <= s6; else nst<= s0; end if;when s6=> if din ='0' then nst <= s7; else nst<= s0; end if;when s7=> if din ='1' then nst <= s8; else nst<= s0; end if;when s8=> if din ='1' then nst <= s1; else nst<= s0; end if;when others => nst<=s0;end case;end process;reg:process(clk,clr)beginif clr ='1' then st<=s0;elsif clk 'event and clk='1' then st<= nst;end if;end process reg;AB <= "1010" when st=s8 else "1011";end one;2、管脚锁定五、实验结果及总结5、系统时序仿真情况六、实验心得动手这次实验,使测试技术这门课的一些理论知识与实践相结合,更加深刻了我对测试技术这门课的认识,巩固了我的理论知识。
成绩指导教师:吴建清2012年10月19日实验六分频器的设计实验室名称:EDA技术学时数:2节3、管脚锁定五、实验结果及总结6、系统时序仿真情况六、实验心得通过这次测试技术的实验,使我学到了不少实用的知识,更重要的是,做实验的过程,思考问题的方法,这与做其他的实验是通用的,真正使我们受益匪浅.指导教师:吴建清成绩2012年10月19日实验七步进电机设计实验室名称:EDA技术学时数:2节2、VHDL源程序LIBRARY ieee;USE ieee.std_logic_1164.all;LIBRARY work;ENTITY step_a ISPORT(clk0 : IN STD_LOGIC;u_d : IN STD_LOGIC;clk5 : IN STD_LOGIC;S : IN STD_LOGIC;Y : OUT STD_LOGIC_VECTOR(3 DOWNTO 0) );END step_a;ARCHITECTURE bdf_type OF step_a ISATTRIBUTE black_box : BOOLEAN;nATTRIBUTE noopt : BOOLEAN;PORT MAP(a => P(11 DOWNTO 8),b => SYNTHESIZED_WIRE_6,agb => F(2));b2v_95 : cmp3PORT MAP(a => P(7 DOWNTO 4),b => SYNTHESIZED_WIRE_6,agb => F(1));b2v_96 : cmp3PORT MAP(a => P(3 DOWNTO 0),b => SYNTHESIZED_WIRE_6,agb => F(0));b2v_inst : rom3PORT MAP(inclock => clk0,address => q,q => P);END bdf_type;仿真波形:引脚匹配:实验八8051/89c51核及片上系统设计——基于8051单片机IP核的等精度频率计单片机系统设计(LCD显示)2、VHDL源程序LIBRARY ieee;USE ieee.std_logic_1164.all;LIBRARY work;ENTITY MCU8951 ISPORT(CLK : IN STD_LOGIC;TCLK : IN STD_LOGIC;RST : IN STD_LOGIC;MT : IN STD_LOGIC;NO : IN STD_LOGIC;P1 : INOUT STD_LOGIC_VECTOR(7 DOWNTO 0);五、实验结果及总结7、系统时序仿真情况六、实验心得在做测试技术的实验前,我以为不会难做,就像以前做物理实验一样,做完实验,然后两下子就将实验报告做完.直到做完测试实验时,我才知道其实并不容易做,但学到的知识与难度成正比,使我受益匪浅.。