EDA作业

发布 2022-09-02 20:46:28 阅读 2449

eda作业及实验报告。

姓名:许文祥学号:20091003791 班级:072093

第七章宏功能模块与ip应用。

7-5 将例7-4的顶层程序和例7-3的rom程序合并成为一个程序,要求用例化语句直接调用lpm模块altsyncram,编译验证,使之功能与原设计相同。

vhdl文件:

library ieee;

library altera_mf;

use altera_

use use

entity singt is

port ( clk : in std_logic;

dout : out std_logic_vector (7 downto 0) )

end;architecture dacc of singt is

component altsyncram

generic (

intended_device_family : string;

width_a : natural; widthad_a : natural;

numwords_a : natural; operation_mode : string;

outdata_reg_a : string; address_aclr_a : string;

outdata_aclr_a : string; width_byteena_a : natural;

init_file : string; lpm_hint : string;

lpm_type : string );

port ( clock0 : in std_logic ;

address_a : in std_logic_vector (5 downto 0);

q_a : out std_logic_vector (7 downto 0) )

end component;

signal q1 : std_logic_vector (5 downto 0);

beginprocess(clk )

beginif clk'event and clk = 1' then q1<=q1+1;

end if;

end process;

altsyncram_component : altsyncram

generic map ( intended_device_family =>cyclone",

width_a =>8,

widthad_a =>6,

numwords_a =>64,

operation_mode =>rom",outdata_reg_a =>unregistered",

address_aclr_a =>none",

outdata_aclr_a =>none",

width_byteena_a =>1,

init_file =>datahex/",

lpm_hint =>enable_runtime_mod=yes, instance_name=none",lpm_type =>altsyncram" )

port map(clock0=>clk,address_a=>q1,q_a=>dout);

end ;rtl文件:

实验与设计:

7-2(1) 8位十六进制频率计设计。

vhdl描述:

library ieee; -测频控制。

use use

entity ftctrl is

port ( clkk : in std_logic; -1hz

cnt_en,rst_cnt,load : out std_logic);

end ftctrl;

architecture beh** of ftctrl is

signal div2clk : std_logic;

beginprocess( clkk )

beginif clkk'event and clkk = 1' then div2clk <=not div2clk;

end if;

end process;

process (clkk, div2clk)

beginif clkk='0' and div2clk='0' then rst_cnt <=1';

else rst_cnt <=0'; end if;

end process;

load <=not div2clk ; cnt_en <=div2clk;

end beh**;

library ieee; -32位锁存器。

use entity reg32b is

port ( lk : in std_logic;

din :

in std_logic_vector(31 downto 0);

dout :

out std_logic_vector(31 downto 0) )

end reg32b;

architecture beh** of reg32b is

beginprocess(lk, din)

beginif lk'event and lk = 1' then dout <=din; -时钟到来时,锁存输入数据。

end if;

end process;

end beh**;

library ieee; -32位计数器。

use use

entity counter32b is

port ( enabl,clr,fin : in std_logic;

dout: out std_logic_vector(31 downto 0));

end counter32b;

architecture beh** of counter32b is

signal cqi : std_logic_vector(31 downto 0);

beginprocess( enabl,clr,fin )

beginif clr='1' then cqi <=others=>'0');清零。

elsif fin'event and fin='1' then

if enabl='1' then cqi<= cqi + 1;

end if;

end if;

end process;

dout <=cqi;

end beh**;

library ieee;

use entity preqtest is

port(clk1hz:in std_logic;

fsin:in std_logic;

dout:out std_logic_vector(31 downto 0));

end preqtest;

architecture struc of preqtest is

component ftctrl

port(clkk:in std_logic;

cnt_en:out std_logic;

rst_cnt:out std_logic;

load:out std_logic);

end component;

component counter32b

port(fin:in std_logic;

clr:in std_logic;

enabl:in std_logic;

dout:out std_logic_vector(31 downto 0));

end component;

component reg32b

port(lk:in std_logic;

din:in std_logic_vector(31 downto 0);

dout:out std_logic_vector(31 downto 0));

end component;

signal tsten1:std_logic;

signal clr_cnt1:std_logic;

signal load1:std_logic;

signal dt01:std_logic_vector(31 downto 0);

signal carry_out1:std_logic_vector(6 downto 0);

beginu1: ftctrl port map(clkk=>clk1hz,cnt_en=>tsten1,rst_cnt=>clr_cnt1,load=>load1);

u2:reg32b port map(lk=>load1,din=>dt01,dout=>dout);

u3:counter32b port map(fin=>fsin,clr=>clr_cnt1,enabl=>tsten1,dout=>dt01);

end struc;

rtl文件:

波形**:第八章状态机设计。

8-5 在不改变原**功能的条件下用两种方法改写例8-2,使其输出的控制信号(ale、start、oe、lock)没有毛刺。方法1:将输出信号锁存后输出;方法2:

使用状态码直接输出型状态机,并比较这三种状态机的特点。

EDA作业

电子电路基础 eda作业。multisim的应用之晶体管放大器的设计与调测。本实验的主要目的是熟悉multisim软件的使用,包括电路图编辑,虚拟仪器仪表的使用和掌握常见电路分析方法。能够运用multisim软件对模拟电路进行设计和性能分析,掌握eda设计的基本方法和步骤。熟练掌握有关单级放大电路有...

EDA作业

山东交通学院。eda电路 设计软件。设计报告。班级电气111 姓名罗汉林。学号 110812135 专业电气工程及其自动化 学院信电学院。简易频率计数器的设计。设计说明。频率的测量实际上就是在1个单位时间内 通常1s 对信号脉冲进行计数,计数值就是信号频率。1.设计目标。用at89s51设计一个数显...

EDA作业

控制灯亮灭的一个eda程序 library ieee use use 以上三条语句引入可用的函数库。entity light is 定义实体,名为light port clk1 in std logic 程序仅有时钟信号这一个输入。light buffer std logic vector 7 do...