缔冠期刊网

基于VHDL彩灯控制器设计

2022-06-09

周 婷

(重庆师范大学涉外商贸学院,中国 重庆 401520)

【摘 要】随着计算机技术的飞速发展,EDA技术也有了巨大的发展,被广泛应用于电子、通信、医学、军事等各个领域。本文介绍了基于VHDL硬件描述语言设计彩灯控制器的思维与技巧,在MAX+plusⅡ开发工具软件中进行源文件的编辑、逻辑综合、适配、仿真及编程下载。仿真和验证的结果表明,该设计方法切实可行,该判决器具有一定的实际应用性。

教育期刊网 http://www.jyqkw.com
关键词 EDA; VHDL;彩灯控制器;MAX+plusⅡ

※基金项目:重庆师范大学涉外商贸学院校级科研项目(KY2014008)。

作者简介:周婷(1988—),重庆合川人,硕士研究生。

0 引言

电子设计自动化(EDA)技术就是依赖功能强大的计算机,在EDA工具软件平台上,对以硬件描述语言VHDL为系统逻辑描述手段完成的设计文件,自动地完成逻辑优化和仿真测试,直至实现既定的电子线路系统功能[1]。由美国国防部主持开发的VHDL语言是一种可用于数字电路描述和综合的高级语言[2],如果结合VHDL语言仿真电路进行仿真和验证,可以尽早发现电路设计中的错误,从而缩短开发的周期,降低开发成本,提高系统的设计效率。

VHDL语言是目前应用最广泛的硬件描述语言之一。它是一种人和机器都能理解的高级语言,与具体的硬件电路没有关系,具有较高的易读性。它支持层次化结构设计,从系统整体要求出发,从上至下逐层设计直到最终生成器件,完成电路系统。一个完整的VHDL程序包括有库、包集合、实体、结构体,另外还有配置块[3]。它的最大特点是将一项工程设计分成了内部和外部,工程可以是目标系统、电路模块甚至一个元件。其中外部是系统的端口;内部则是不可视部分,其功能用程序设计好后可直接调用。

1 彩灯控制器的功能分析与设计

彩灯在生活中经常能够看到,并且给我们的生活增添了许多色彩。尤其在节假日,不仅闪烁着美丽耀眼的光芒,还能够烘托出节日的气氛。本文采用EDA技术,使用VHDL语言实现彩灯的控制。

在美国ALTERA公司的MAX+PLUSⅡ平台上,使用VHDL硬件描述语言实现的彩灯控制电路的设计如下:在电路中以1代表灯亮,以0代表灯灭,由0、1按不同的规律组合代表不同的灯光图案,同时使其选择不同的频率,从而实现多种图案多种频率的花样功能显示。彩灯控制器的元件,Y[15..0]是彩灯控制器的输出端。reset是彩灯控制器的复位信号输入端,当复位信号reset=‘1’时,彩灯状态会和s0相同;否则,当有时钟信号来临时,会根据程序设置显示出彩灯的亮灭状态。en是彩灯循环方式控制信号输入端,当en=‘0’时,彩灯自左边第一个灯和中间分别向右边循环闪烁;当en=‘1’时,彩灯自右边第一个灯和中间分别向左边循环闪烁;否则,彩灯会呈现熄灭状态。

2 彩灯控制器VHDL语言设计

十六路彩灯显示系统控制器的主要VHDL语言程序代码如下所示:

library ieee;

use ieee.std_logic_1164.all;

use ieee.std_logic_arith.all;

use ieee.std_logic_unsigned.all;

entity colorlamp is

port(clk,reset,en:in std_logic;

   y:out std_logic_vector(15 downto 0));

end;

architecture beha of colorlamp is

type states is (s0,s1,s2,s3,s4,s5,s6,s7);

signal st:states;

signal yn:std_logic_vector(15 downto 0);

begin

one:process(clk,reset)

begin

if reset=´1´ then st <= s0;

elsif clk´event and clk=´1´ then

case st is

       when s0 => st <= s1;

      when s1 => st <= s2;

       when s2 => st <= s3;

      when s3 => st <= s4;

       when s4 => st <= s5;

      when s5 => st <= s6;

       when s6 => st <= s7;

       when s7 => st <= s0;

      when others => st <= s0;

end case;

end if;

end process one;

two:process(st,en,clk)

begin

case st is

when s0 =>

if en=´0´ then yn <= "1000000010000000";

elsif en=´1´ then yn <= "1000000010000000";

else yn <= "0000000000000000";

end if;

when s1 =>

if en=´0´ then yn <= "0100000001000000";

elsif en=´1´ then yn <= "0000000100000001";

else yn<= "0000000000000000";

end if;

when s2 =>

if en=´0´ then yn <= "0010000000100000";

elsif en=´1´ then yn <= "0000001000000010";

else yn <= "0000000000000000";

end if;

when s3 =>

if en=´0´ then yn <= "0001000000010000";

elsif en=´1´ then yn<= "0000010000000100";

else yn<= "0000000000000000";

end if;

when s4 =>

if en=´0´ then yn<= "0000100000001000";

elsif en=´1´ then yn <="0000100000001000";

else yn <= "0000000000000000";

end if;

when s5 =>

if en=´0´ then yn <= "0000010000000100";

elsif en=´1´ then yn<= "0001000000010000";

else yn<= "0000000000000000";

end if;

when s6 =>

if en=´0´ then yn <= "0000001000000010";

elsif en=´1´ then yn<="0010000000100000";

else yn <= "0000000000000000";

end if;

when s7 =>

if en=´0´ then yn <= "0000000100000001";

elsif en=´1´ then yn<="0100000001000000";

else yn <= "0000000000000000";

end if;

when others => yn <= "0000000000000000";

end case ;

if clk´event and clk=´1´ then y<= yn ;

end if;

end process two;

end beha;

3 仿真结果

利用MAXPLLUS2的原理图输入,以原理图的形式形成最后的十六路彩灯显示系统器件并且进行仿真。图1分别是彩灯自右边第一个灯和中间分别向左边循环闪烁,彩灯自左边第一个灯和中间分别向右边循环闪烁的仿真时序图(如图1)。

4 结束语

通过上述实验可知,本设计是可行的。仿真正确后通过下载电缆下载到CPLD/FPGA芯片上即可。芯片可以重复使用无数次。只要拥有计算机,配上相应的软件就可以随心所欲的改变彩灯的方式,而且不受时间的限制。

教育期刊网 http://www.jyqkw.com
参考文献

[1]赵刚,编.EDA技术简明教程[M].成都:四川大学出版社,2004.

[2]宋文好,等.数字电路的VHDL综合技术[J].现代计算机,2001(111):22-25.

[3]李光超.基于VHDL的循环码编译码器的设计[D].河北:北华航天工业学院,2012.

[责任编辑:杨玉洁]

论文中心更多

期刊百科
期刊投稿 期刊知识 期刊审稿 核心期刊目录 录用通知 期刊版面费 投稿期刊推荐 学术问答
基础教育
小学语文 中学语文 小学数学 中学数学 小学英语 中学英语 物理教学 化学教学 生物教学 政治教学 历史教学 地理教学 科学教学 音乐教学 美术教学 体育教学 信息技术 班主任管理 校长管理 幼教 教育管理 微课教学 作文教学 德育教学 教学设计
医学论文
内科医学 外科医学 预防医学 妇科医学 检测医学 眼科医学 临床医学 药学论文 口腔医学 中西医 中医学 外科 护理 基础医学 急救医学 老年医学 医学实验 儿科医学 神经医学 兽医学 肿瘤医学 综合医学
职业教育
教育学原理 电影文学教育 学前教育 教育学管理 高等教育学 教育技术学 职业技术教育 成人教育学 特殊教育学 教育心理学 家庭教育 教育毕业 中专中职教育 教学设计 国学教育 学术研究 大学教育
药学卫生
社区门诊 医药学 医患关系 医院管理 疾病预防 保健医学 公共卫生 医学教育
文科论文
农业经济 工商管理毕业 会计毕业 行政管理 法律毕业 市场营销 经济毕业 汉语言文学 财务管理 物流管理 人力资源 旅游管理 国际贸易 物业管理 新闻学 企业管理 金融银行 社会科学 食品安全 办公档案 审计学 税务税收学 外国文学 哲学
理科论文
机电毕业 土木工程 计算机毕业 电气毕业 建筑毕业 电子商务 工程毕业 设计毕业 机械制造 汽车毕业 园林毕业 农学毕业 数控毕业 软件技术 水利工程 环境生态 畜牧渔业 化工毕业 科技创新 石油矿藏
论文格式
开题报告 论文题目 摘要关键词 目录提纲 论文致谢 参考文献 附录其他 论文答辩
职业论文
教育论文 经济论文 科技论文 财会论文 管理论文 医学论文 法学论文 文学论文 工业论文 建筑论文 农业论文 水利论文 计算机论文 社科论文 机械论文 生态环境 中西文化

先发表后付款 不成功可退款

权威机构认证 专注期刊10余年 1000余家杂志社长期合作

缔冠期刊网

首页 网站地图 返回顶部
Copyright © 1998- 缔冠期刊网