EDA实验报告(12份)最新 联系客服

发布时间 : 星期一 文章EDA实验报告(12份)最新更新完毕开始阅读42243aa1284ac850ad0242e6

实验名称:【5-1】组合电路的设计

一、实验目的

熟悉Max+plus II的VHDL文本设计流程全过程,学习简单组合电路的设计、多层次电路设计、仿真和硬件测试。 二、实验内容

利用Max+plus II完成2选1多路选择器的文本编辑输入(mux21a.vhd)和仿真测试等步骤,并给出仿真波形。 三、程序设计 LIBRARY IEEE ; END ENTITY mux21a; USE ARCHITECTURE one OF mux21a IS IEEE.STD_LOGIC_1164 .ALL ; BEGIN ENTITY mux21a IS Y<= a WHEN s = ‘0’ PORT (a, b: IN BIT; ELSE b ; s: IN BIT; END ARCHITECTURE one ; y: OUT BIT ) ;

原理图如图1所示。

图1

程序仿真波形如下图2:

图2

1

四、实验总结

从仿真波形图可以看出,当选择信号s为低电平时,y选择的是b;当选择信号s为高电平时,y选择的是a。即完成了两路信号的选择输出。

电路的功能可以是唯一的,但其电路的结构方式不是唯一它决定与综合区的基本元件库的来源,优化方向和约束的选择,以及目标器件的结构特点。

通过这次实验让理论与实践得到有效的结合,进一步加深学习的理解。

实验名称:【5-2】时序电路的设计

一、实验目的

熟悉Max+plus II的VHDL文本设计流程全过程,学习简单时序电路的设计、仿真和硬件测试。 二、实验内容

根据【实验5-1】的步骤和要求,用文本编辑输入完成触发器的设计,给出程序设计、软件编译和仿真波形。 三、程序设计

begin library ieee;

process(clk,q1)

use ieee.std_logic_1164.all;

begin

entity dff1 is

if clk'event and clk='1'

port(clk:in std_logic;

then q1<=d;

d:in std_logic;

end if;

q:out std_logic);

end process;

end;

q<=q1;

architecture bhv of dff1 is

end bhv;

signal q1:std_logic; 四、仿真波形 如图3所示

图3

2

五、实验总结

由图形可知,当时钟clk 为上升沿时,d的值赋给q,有一定的延时。实验【5-1】 是组合逻辑电路,实验【5-2】为时序电路,如何不详细分析其中的表述含义,两例在语句结构和语言应用上没有明显的差异。实验表明VHDL电路描述与设计平台和硬件实现对象无关的优秀特点。

实验名称:【5-3】含异步清零和同步时钟使能的加法计数器

一、实验目的

学习计数器的设计、仿真和硬件测试,进一步熟悉VHDL设计技术。 二、实验原理

当复位端RST为高电平,使能端为低电平时,CQ输出为0,即计数清零,并禁止计数。当RST为低电平,EN为高电平时,每一个时钟CLK的上升沿后,CQ输出加1,而当CQ输出为9时,COUT输出高电平进位信号。当EN为低电平时,计数器保持原有的计数值,当EN再为高电平时则继续计数。 三、实验内容

在Max+plus II上对CNT10程序进行编辑、编译、综合、适配、仿真。给出软件编译和仿真波形。 四、程序设计 library ieee; '0'); use ieee.std_logic_1164.all; elsif clk'event and clk='1' use ieee.std_logic_unsigned.all; then entity cnt10 is if en='1' then port(clk,rst,en:in std_logic; if cqi<9 then cqi:=cqi+1; cq:out std_logic_vector(3 else cqi:=(others=>'0'); downto 0); end if; cout:out std_logic); end if; end cnt10; end if; architecture bhv of cnt10 is if cqi=9 then cout<='1'; begin else cout<='0'; process(clk,rst,en) end if; variable cqi: cq<=cqi; std_logic_vector(3 downto 0); end process; begin end bhv; if rst='1' then cqi:=(others =>

波形仿真如图4所示。

3

图4

五、实验总结

当时钟CLK、复位信号RST或时钟使能信号EN中任一信号发生变化,都将启动进程。此时如果RST为‘1’,将对计数器清零。如果RST为‘0’,则看是否有时钟信号的上升沿;如何此时有CLK信号,又测得EN=‘1’,即允许计数器计数,此时若满足计数值小于9,即CQI小于9,计数器将进行正常计数,即执行语句CQI:=CQI+1,否则对CQI清零;但如果测得EN=‘0’,则跳出IF语句,使CQI保持原值,并将计数值向端口输出:CQ<=CQI.

实验名称:【5-4】用原理图输入法设计3位全加器

一、实验目的

熟悉利用Max+plus II的原理图输入方法设计简单组合电路,掌握层次化设计的方法,并通过一个3位全加器的设计把握利用EDA软件进行原理图输入方式的电子线路设计的详细流程。 二、实验原理

一个3位全加器可以由3个1位全加器构成,加法器间的进位可以串行方式实现,即将低位加法器的进位输出COUT与相邻的高位加法器的最低位进位输入信号CIN相接。而一个1位全加器可以用两个半加器完成。 三、实验内容

完成半加器和全加器的设计,包括原理图输入、编译、综合、适配、仿真、实验板上的硬件测试,并将此全加器电路设置成一个硬件符号入库。键1、键2、键3(PIO0/1/2)分别接ain、bin、cin;发光管D2、D1(PIO9/8)分别接sum和cout。

四、原理图设计

(1)半加器如图5所示:

4