EDA实验报告

2019-03-03 22:04

E D A

实 验 报 告

实验——

八位十六进制频率计

学院: 班级: 姓名: 学号:

一、实验目的:

1.熟悉Quartus II软件的使用;

2.掌握VHDL文本设计流程、组合电路的设计仿真和测试;

3.通过电路的仿真及验证,进一步了解八位十六进制频率计的功能;

二、实验内容:

根据VHDL文本设计流程,利用Quartus II完成八位十六进制频率计。

A.建立工作库文件夹和编辑设计文件

a.新建一个文件夹,命名为liulan,放在D盘中;

b.打开Quartus II,新建文件,选择 VHDL File选项,分四个模块——侧频控制电路、32位锁存器、32位计数器、频率计顶层文件分别输入源程序如下:

1. 侧频控制电路

LIBRARY IEEE;

USE IEEE.STD_LOGIC_1164.ALL;

USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY FTCTRL IS

PORT( CLKK : IN STD_LOGIC; CNT_EN : OUT STD_LOGIC; RST_CNT : OUT STD_LOGIC; load : OUT STD_LOGIC); END FTCTRL;

ARCHITECTURE behav OF FTCTRL IS SIGNAL Div2CLK :STD_LOGIC; BEGIN

PROCESS(CLKK)

BEGIN

IF CLKK'EVENT AND CLKK ='1' THEN Div2CLK <=NOT Div2CLK; END IF; END PROCESS;

PROCESS(CLKK,Div2CLK)

BEGIN

IF CLKK = '0' AND Div2CLK = '0' THEN RST_CNT <='1'; ELSE RST_CNT <= '0' ;END IF; END PROCESS;

load <= NOT Div2CLK; CNT_EN <= Div2CLK;

END behav;

2.32位锁存器

LIBRARY IEEE;

USE IEEE.STD_LOGIC_1164.ALL; 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 behav OF REG32B IS BEGIN

PROCESS(LK,DIN) BEGIN

IF LK'EVENT AND LK = '1' THEN DOUT <= DIN; END IF;

END PROCESS; END behav;

3.32位计数器

LIBRARY IEEE;

USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY COUNTER32B IS

PORT( FIN : IN STD_LOGIC; CLR : IN STD_LOGIC; ENABLE : IN STD_LOGIC;

DOUT : OUT STD_LOGIC_VECTOR(31 DOWNTO 0)); END COUNTER32B;

ARCHITECTURE behav OF COUNTER32B IS

SIGNAL CQI : STD_LOGIC_VECTOR(31 DOWNTO 0); BEGIN

PROCESS(FIN,CLR,ENABLE)

BEGIN

IF CLR = '1' THEN CQI <= (OTHERS => '0'); ELSIF FIN'EVENT AND FIN = '1' THEN

IF ENABLE = '1' THEN CQI <= CQI + 1;END IF; END IF; END PROCESS; DOUT <= CQI;

END behav;

4.频率计顶层文件

LIBRARY IEEE;

LIBRARY IEEE;

USE IEEE.STD_LOGIC_1164.ALL; ENTITY wf IS

PORT(CLK1HZ : IN STD_LOGIC; FSIN : IN STD_LOGIC;

DOUT : OUT STD_LOGIC_VECTOR(31 DOWNTO 0)); END wf;

ARCHITECTURE struc OF wf 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; ENABLE : 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 DTO1 : STD_LOGIC_VECTOR(31 DOWNTO 0); SIGNAL CARRY_OUT1 : STD_LOGIC_VECTOR(6 DOWNTO 0);

BEGIN

U1 : FTCTRL PORT MAP(CLKK => CLK1HZ,CNT_EN => TSTEN1,

RST_CNT => CLR_CNT1,load => load1); U2 : REG32B PORT MAP(LK => load1,DIN => DTO1,DOUT => DOUT);

U3 : COUNTER32B PORT MAP(FIN => FSIN,CLR => CLR_CNT1, ENABLE => TSTEN1,DOUT =>DTO1); END struc;

c.选择File—save as,找到已设立的文件夹:D:\\liulan,将文件存盘至该文件夹(存盘文件名与实体名一致)。

B.创建工程:

a.选择File—New Project Wizard,找到文件夹D:\\liulan b.将设计文件分别加入工程。 c.完成工程的设定。

C.输出原理图:

利用RTL Viewer,查看原理框图是否正确。若无误,则可分别观察到如下图形: 1.

2.


EDA实验报告.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:WCDMA-DT测试中未接通归类及处理指导手册20100127v1

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: