- 1、本文档共9页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
EDA
课程设计报告
课题名称:8路彩灯控制器课程设计
专业年级:电子信息科学与技术2009级
学号:学生姓名: 指导教师:完成日期年月
绪论
1.1 系统背景
伴随着计算机、集成电路和电子设计技术的发展,EDA技术在过去的几十年里取得了巨大的进步。EDA技术使得设计者的工作仅限于利用软件的方式,即利用硬件描述语言和EDA软件便可完成对系统硬件功能的实现。如今,EDA软件工具已经成为电子信息类产品的支柱产业。从高性能的微处理器、数字信号处理器一直到彩电、音响和电子玩具电路等,EDA技术不单是应用于前期的计算机模拟仿真、产品调试,而且也在P哪的制作、电子设备的研制与生产、电路板的焊接、朋比的制作过程等有重要作用。可以说电子EDA技术已经成为电子工业领域不可缺少的技术支持。相比传统的电路系统的设计方法,VHDL具有多层次描述系统硬件功能的能力,支持自顶向下(Top to Down)和基于库(LibraryBased)的设计的特点因此设计者可以不必了解硬件结构。从系统设计入手,在顶层进行系统方框图的划分和结构设计,在方框图一级用VHDL对电路的行为进行描述,并进行仿真和纠错,然后在系统一级进行验证,最后再用逻辑综合优化工具生成具体的门级逻辑电路的网表,下载到具体的CPLD器件中去,从而实现可编程的专用集成电路(ASIC)的设计(5) VHDL 类型众多而且支持用户自定义类型,支持自顶而下的设计方法和多种电路的设计。
1.2课程设计内容
本次课程设计是设计一个8路彩灯控制器,能够控制8路彩灯按照两种节拍,三种花型循环变化。两种节拍分别为0.25s和0.5s。三种花型分别是:
(1)8路彩灯分成两半,从左至右顺次渐渐点亮,全亮后则全灭。
从中间到两边对称地渐渐点亮,全亮后仍由中间向两边逐次熄灭。
8路彩灯从左至右按次序依次点亮,全亮后逆次序依次熄灭。
设计完成后,在试验箱上进行仿真,与实验需要达到的要求进行对比,验证是否正确。
通过本次课程设计,需达到以下目的:
熟悉Max+plus Ⅱ软件的使用方法,使自己能更加熟练的操作. 并能熟悉使用原理图输入设计法和 VHDL 文本输入设计法进行设计,完成设计任务.
增强自己实际动手能力,独立解决问题的能力.
通过对课程设计对以前所学的知识进行更新及巩固.
第二章 系统电路设计
2.1系统总体设计框架结构
8路彩灯的三种花型控制模块
分频模块 二选一模块 输出 CLK
分频模块:把时钟脉冲二分频,得到另一个时钟脉冲,让这两种时钟脉冲来交替控制花型的速度。
2.2.1分频模块设计
程序:library ieee;
use ieee.std_logic_1164.all;
entity fenpin2 is
port( clk:in std_logic;
clkk:out std_logic);
end fenpin2;
architecture behav of fenpin2 is
begin
process(clk)
variable clkk1:std_logic:=0;
begin
if clkevent and clk=1 then clkk1:= not clkk1;
end if;
clkk=clkk1;
end process;
end behav;
仿真波形:
右上图可知,输出clkk的频率只有clk的一半,所以二分频的目的达到,程序无误。用用二分频可组成四分频和其他分频。如:
2.2.2二选一模块设计
程序:library ieee;
use ieee.std_logic_1164.all;
entity mux21 is
port(a,b,s:in std_logic;
y:out std_logic);
end mux21;
architecture behave of mux21 is
begin
process(a,b,s)
begin
if s=0 then y=a;
else y=b;
end if;
end process;
end behave;
仿真波形:
此模块常用,无问题。
else s=s+1;
end if;
case s is
when 00000=q
when 00001=q
when 00010=q
when 00011=q
when 00100=q
when 00101=q
when 00110=q
when 00111=q
文档评论(0)