1、多路彩灯控制器的设计 O 引言 硬件描述语言(HDL)是相对于一般的计算机软件语言如 C,Pascal 而言的。 HDL 是用于设计硬件电子系统的计算机语言,它描述电子系统的逻辑功能、电 路结构和连接方式。设计者可以利用 HDL 程序来描述所希望的电路系统,规定 其结构特征和电路的行为方式,然后利用综合器和适配器将此程序变成能控制 FPGA 和 CPLD内部结构, 并实现相应逻辑功能的门级或更底层的结构网表文件 和 下 载 文 件 。 VHDL(VeryHigh Speed Integrated Circuit Hardware descriptionLangtuage)主要用于描述数字系统的
2、结构、行为、功能和接口。与其 他的 HDL 语言相比,VHDL 具有更强的行为描述能力,从而决定了它成为系统 设计领域最佳的硬件描述语言。强大的行为描述能力是避开具体的器件结构。从 逻辑行为上描述和设计大规模电子系统的重要保证。 在文献中作者从不同的角度 阐述了 EDA 技术的应用,它具有功能强大、描述能力强、可移植性好、研制周 期短、成本低等特点,即使设计者不懂硬件的结构,也能进行独立的设计。本文 以 Alter 公司提供的 Max+Plus为平台,设计一个可变速的彩灯控制器,可以 在不修改硬件电路的基础上, 仅通过更改软件就能实现任意修改花型的编程控制 方案, 实现控制 16 只 LED以
3、 6 种花型和两种速度循环变化显示, 而且设计非常 方便,设计的电路保密性。 (一)实验目的 1 进一步掌握数字电路课程所学的理论知识。 2 了解数字电路设计的基本思想和方法,学会科学分析和解决问题。 3 熟悉几种常用集成数字芯片,并掌握其工作原理,进一步学会使用其进行电 路设计。 4. 培养认真严谨的工作作风和实事求是的工作态度 一、设计任务与要求 (1)要有多种花形变花。 (2)多路花形可以自动变换循环往复。 (3)彩灯变幻的快慢接拍可以选择。 (4)具有清零开关。 二、总体框图 (一)设计思路 用 VHDL 进行设计,首先应该理解,VHDL 语言是一种全方位硬件描述语言, 包括系统行为级
4、, 寄存器传输级和逻辑门级多个设计层次。 应充分利用 VHDL“自 顶向下”的设计优点以及层次化的设计概念,层次概念对于设计复杂的数字系统 是非常有用的, 它使得我们可以从简单的单元入手, 逐渐构成庞大而复杂的系统。 首先应进行系统模块的划分,规定每一个模块的功能以及各模块之间的接口, 最终设计方案分为三大模块:16 路花样彩灯显示器、时序控制器、整个电路系 统,从而达到控制彩灯闪烁速度的快慢和花型的的变换。 1.自动控制多路彩灯按预设的花型进行变换; 2、花型种类不少于三种,花型自拟; 3.分别用快慢两种节拍实现花型变换。 4.选择:用可编辑逻辑器件实现。 (二)总体方案的设计 根据题目实际
5、要求,经过分析与思考,拟定以下两种方案: 方案一:总体分为三个模块。第一块实现花形的演示,第二块实现花形的控制 及节拍控制;第三块实现时钟信号的产生。 方案二:整体电路分为四块。第一块实现花形的演示;第二块实现花形的控制; 第三块实现节拍控制;第四块实现信号产生。 方案三:有三个模块,第一个模块是时钟控制模块,第二块是花形控制模块,第 三块是整体模块。 (三)总体设计的选择 三种方案比较发现,第三种方案相对简单。这样设计其优点在于:设计思想比较 简单,元件种类使用较少,且易于连接电路。基于以上原因,加上短时间内完成 课程设计,我选择了连线少的,易于连接和调试的方案。 (四)总体设计的选择 1
6、设计原理 时序控制电路 SXKZ 根据输入信号 CKL_IN, CLR, CHOSE_KEY 产生符合 一定要求的、供显示控制电路使用的控制时钟信号,而显示控制电路 XSKZ 则根据时序控制电路 SXKZ 输入的控制时钟信号, 输出种花形循环变化 的、控制路彩灯工作的控制信号,这些控制信号加上驱动电路一起控制彩灯 工作。 2 系统设计方案 根据系统设计方案要求可知,整个系统共三个输入信号:控制彩灯节拍快慢 的基准时钟信号 CLK_IN,系统清零信号 CLK,彩灯节拍快慢选择开关 CHOSE_KEY:共有 16 个输出信号 LED【150】 ,分别控制 16 路彩灯。 我们可将整个彩灯控制器 CDKZQ 分为两大部分: 时序控制电路 SXKZ 和显示 控制电路 XSKZ,整个系统的组成原理如下图。 三、选择器件 16X16LED显示 EPI版上 SW【】拨码 p 四、功能模块 (一)时序控制电路的源程序 SXKZ。 library ieee; use ieee.std_logic_1164.all; use ieee.std_l