西电EDA满分大作业
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
EDA报告
题目 VHDL设计初步学院电子工程学院专业
学号
导师姓名朱燕
目录
第一章实验部分(流水灯) (3)
1、程序设计: (3)
2、程序代码..............................................................................................错误!未定义书签。
3、程序调试..............................................................................................错误!未定义书签。
第二章习题部分..............................................................................................错误!未定义书签。
习题一........................................................................................................错误!未定义书签。
习题二........................................................................................................错误!未定义书签。
习题三........................................................................................................错误!未定义书签。
习题四........................................................................................................错误!未定义书签。
习题五........................................................................................................错误!未定义书签。
习题六........................................................................................................错误!未定义书签。
习题七........................................................................................................错误!未定义书签。
引言
随着大规模集成电路技术和计算机技术的不断发展,在涉及通信、国防、航天、医学、工业自动化、计算机应用、仪器仪表等领域的
电子系统设计工作中,EDA技术的含量正以惊人的速度上升;电子类
的高新技术项目的开发也逾益依赖于EDA技术的应用。即使是普通的电子产品的开发,EDA技术常常使一些原来的技术瓶颈得以轻松突破,从而使产品的开发周期大为缩短、性能价格比大幅提高。不言而喻,EDA技术将迅速成为电子设计领域中的极其重要的组成部分。
第一章实验部分(流水灯)1、程序设计流程图:
2、模块说明
第一部分:分频器
因为主板是cyclong-EP16C6Q240C8的主频是4M赫兹,如果直接当做CLK信号,根本无法看清流水灯的变化,所以需要做分频操作。仿照数电课本的例题中的分频器。
分频器的实体:
entity devide is
port(
clk :in std_logic;
clk_out:out std_logic
);
end devide;
我们可以从程序中看到,输入时clk(外部主频时钟),输出是clk_out(分频后的时钟)。
(这是实体的器件图)
分频器的结构体:
process;用进程语言描述
begin
wait until clk'event and clk='1'
if(count<3999999)then
count<=count+1;
clk_out<='0';
else
count<=(others=>'0');
clk_out<='1';
我们可以从程序中看到wait until clk'event and clk='1'这句是时钟来到意思,当count计数小于3999999时,count自加1,且输出为零,只有当大于3999999时,产生一个高电平脉冲。
接下来是对分频器的波形仿真:
从波形中我们可以看到分频器的工作.
第二部分:模8计数器
我们需要一个计数器来输出计数电频,作为下一步38译码器的输入信号,首先我们来看这个器件的实体:
port(clk:in std_logic;
dout:out std_logic_vector(2 downto 0)
);
(这是器件的实体图)
输入端口是clk,是接入分频器的时钟信号,输出就是计数电平了。计数器的结构体:
architecture arc_m of m is
signal count:std_logic_vector(2 downto 0);
begin
process(clk)
begin