ImageVerifierCode 换一换
格式:DOCX , 页数:18 ,大小:167.70KB ,
资源ID:2481256      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/2481256.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(西电EDA满分大作业.docx)为本站会员(b****1)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

西电EDA满分大作业.docx

1、西电EDA满分大作业 EDA报告 题 目 VHDL设计初步 学 院 电子工程学院 专 业 学 号 导师姓名 朱燕 引言 随着大规模集成电路技术和计算机技术的不断发展,在涉及通信、国防、航天、医学、工业自动化、计算机应用、仪器仪表等领域的电子系统设计工作中,EDA技术的含量正以惊人的速度上升;电子类的高新技术项目的开发也逾益依赖于EDA技术的应用。即使是普通的电子产品的开发,EDA技术常常使一些原来的技术瓶颈得以轻松突破,从而使产品的开发周期大为缩短、性能价格比大幅提高。不言而喻,EDA技术将迅速成为电子设计领域中的极其重要的组成部分。第一章 实验部分(流水灯)1、程序设计流程图: 2、模块说明

2、第一部分:分频器 因为主板是cyclong-EP16C6Q240C8的主频是4M赫兹,如果直接当做CLK信号,根本无法看清流水灯的变化,所以需要做分频操作。仿照数电课本的例题中的分频器。分频器的实体:entity devide isport( clk :in std_logic; clk_out:out std_logic );end devide;我们可以从程序中看到,输入时clk(外部主频时钟),输出是clk_out(分频后的时钟)。(这是实体的器件图)分频器的结构体: process;用进程语言描述 begin wait until clkevent and clk=1 if(count

3、3999999)then count=count+1; clk_out=0; else count0); clk_out=1; 我们可以从程序中看到wait until clkevent and clk=1这句是时钟来到意思,当count计数小于3999999时,count自加1,且输出为零,只有当大于3999999时,产生一个高电平脉冲。接下来是对分频器的波形仿真:从波形中我们可以看到分频器的工作.第二部分:模8计数器 我们需要一个计数器来输出计数电频,作为下一步38译码器的输入信号,首先我们来看这个器件的实体:port(clk:in std_logic; dout:out std_logi

4、c_vector(2 downto 0) );(这是器件的实体图)输入端口是clk,是接入分频器的时钟信号,输出就是计数电平了。计数器的结构体:architecture arc_m of m issignal count:std_logic_vector(2 downto 0);begin process(clk) beginif rising_edge(clk) then if count7 then count=count+1;elsif count=7 then count=000; end if; end if;a=count(0);b=count(1);c=count(2);end

5、process; 以上是模8计数器的结构体,我们可以看到,但时钟来到时,在count小于7时count加一,当count=7时,count清零。接下来是对计数器波形的仿真: dout输出000,001,010,011,100,101,110,111,000,001这符合我们的要求。第三部分:38译码器因为我们使用是共阴极二极管,38译码器每接受一个来自计数器的点平时,对应的Yn就输出低电平,点亮此二极管。我们就可以看到二极管依次点亮好似流水一般。译码器的实体:port(a,b,c:in std_logic; y:out std_logic_vector(7downto 0); 输入是a,b,c

6、从低到高的三个,输出是y对应的译码电平。(这是译码器的原件图)译码器的结构体:architecture arc_yima38 of yima38 issignal comb:std_logic_vector(2 downto 0); begin combyyyyyyyyy=null; end case; end process;我们可以看到如下的波形:在y的输出波形中,“0”循环右移,这是我们想要的结果。第四部分:总体效果3、遇到的问题和解决方法 我使用的是原理图连接,在下到片子后我编译失败,经过同学和我的检查,终于发现我的原理图连接有问题,如上图所示,我将y2.0连接到译码器的输入端(a,b

7、,c),这是不正确的,因为y2.0是(vector)矢量,而(a,b,c)是位,我错误的以为用线连起来就可以使用,但事实是矢量必须配对矢量,位配对位。第二章 习题部分(Ex-1)画出下例实体描述对应的原理图符号元件:ENTITY buf3s IS - 实体1: 三态缓冲器 PORT (input : IN STD_LOGIC ; - 输入端 enable : IN STD_LOGIC ; - 使能端 output : OUT STD_LOGIC ) ; - 输出端END buf3x ;答:ENTITY mux21 IS -实体2: 2选1多路选择器 PORT (in0, in1, sel :

8、IN STD_LOGIC; output : OUT STD_LOGIC); END ENTITY mux21;(Ex-2)图中所示的是4选1多路选择器,试分别用IF_THEN语句和CASE语句的表达方式写出此电路的VHDL程序。 ( 选择控制的信号s1和s0为STD_LOGIC_VECTOR类型;当s1=0,s0=0;s1=0,s0=1;s1=1,s0=0和s1=1,s0=1分别执行y=a、y=b、y=c、y=d。) 答:首先为用IF THEN 语句实现程序如下:library IEEE; USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_UNS

9、IGNED.ALL;entity mux41 isport(a,b,c,d:in std_logic; s1,s0:in std_logic_vector(1 downto 0); y:out std_logic );end entity mux41;architecture one of mux41 isbegin process(a,b,c,d,s1,s0) begin if s1=0and s0=0 then y=a; else if s1=0and s0=1 then y=b; else if s1=1and s0=0 then y=c; else if s1=1and s0=1 th

10、en y=d; end if;end process;end architecture one;用 case 语句程序如下:library IEEE; USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL;entity mux41 isport(a,b,c,d:in std_logic; s1,s0:in std_logic; -这里s1 s0没有定义成2位矢量 y:out std_logic );end entity mux41;architecture one of mux41 issignal l1:std_logic_

11、vector(1 downto 0); -中间信号为两位矢量,为了使用&begin process(a,b,c,d,s1,s0) begin l1yyyy=d; end case;end process;end architecture one;(Ex-3)图中所示的是双2选1多路选择器构成的电路MUXK,对于其中MUX21A,当s=0和1时,分别有y=a和y temp temp output output=temp;end case;end process;end pr1; (Ex-4)图中是一个含有上升沿触发的D触发器的时序电路,试写出此电路的VHDL设计文件。 library IEEE;

12、 USE IEEE.STD_LOGIC_1164.ALL; entity dff is port(cl,clk0:in std_logic; out1:out std_logic);end entity dff;architecture one of dff issignal q1,q2:std_logicbegin process(clk) begin if rising edge(clk) then q2=not q1; q1=not(cl and q2); end if; end process; out=q2;end one;(Ex-5)给出1位全减器的VHDL描述。要求:(1)首先设计1

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1