流水灯电路设计说明书.docx
《流水灯电路设计说明书.docx》由会员分享,可在线阅读,更多相关《流水灯电路设计说明书.docx(15页珍藏版)》请在冰豆网上搜索。
流水灯电路设计说明书
一、EDA技术和设计题目简介
EDA技术简介
20世纪90年代,国际上电子和运算机技术较先进的国家,一直在踊跃探索新的电子电路设计方式,并在设计方式、工具等方面进行了完全的变革,取得了庞大成功。
在电子技术设计领域,可编程逻辑器件(如、)的应用,已取得普遍的普及,这些器件为的设计带来了极大的灵活性。
这些器件能够通过软件编程而对其硬件结构和工作方式进行重构,从而使得硬件的设计能够犹如软件设计那样方便快捷。
这一切极大地改变了传统的方式、设计进程和设计观念,增进了EDA技术的迅速进展。
EDA技术就是以运算机为工具,设计者在EDA软件平台上,用硬件描述语言VHDL完成设计文件,然后由运算机自动地完成逻辑编译、化简、分割、综合、优化、布局、布线和仿真,直至对于特定目标芯片的适配编译、逻辑映射和编程下载等工作。
EDA技术的出现,极大地提高了电路设计的效率和可操作性,减轻了设计者的劳动强度。
利用EDA工具,电子能够从概念、算法、协议等开始设计,大量工作能够通过运算机完成,并能够将电子产品从电路设计、性能分析到设计出IC版图或PCB版图的整个进程的运算机上自动处置完成。
此刻对EDA的概念或范围用得很宽。
包括在机械、电子、通信、航空航天、化工、矿产、生物、医学、军事等各个领域,都有EDA的应用。
目前EDA技术已在各大公司、企事业单位和科研教学部门普遍利用。
例如在飞机制造进程中,从设计、性能测试及特性分析直到飞行模拟,都可能涉及到EDA技术。
EDA技术概念
EDA技术是指以运算机为工作平台,融合了、运算机技术、信息处置及智能化技术的最新功效,进行电子产品的自动设计。
利用EDA工具,电子设计师能够从概念、算法、协议等开始设计电子系统,大量工作能够通过运算机完成,并能够将电子产品从电路设计、性能分析到设计出IC版图或PCB版图的整个进程的运算机上自动处置完成。
此刻对EDA的概念或范围用得很宽。
包括在机械、电子、通信、航空航天、化工、矿产、生物、医学、军事等各个领域,都有EDA的应用。
目前EDA技术已在各大公司、企事业单位和科研教学部门普遍利用。
例如在飞机制造进程中,从设计、性能测试及特性分析直到飞行模拟,都可能涉及到EDA技术。
本文所指的EDA技术,主要针对电子电路设计、PCB设计和IC设计。
EDA设计可分为系统级、电路级和物理实现级。
VHDL的简介
是一种用于电路设计的高级语言。
它在80年代的后期出现。
最初是由开发出来供美军用来提高设计的靠得住性和缩减开发周期的一种利用范围较小的设计语言。
VHDL翻译成中文就是硬件描述语言,主如果应用在数字电路的设计中。
目前,它在的应用多数是用在FPGA/CPLD/EPLD的设计中。
固然在一些实力较为雄厚的单位,它也被用来设计ASIC。
VHDL主要用于描述数字系统的结构,行为,功能和接口。
除含有许多具有硬件特征的语句外,VHDL的语言形式、描述风格和语法是十分类似于一般的。
VHDL的程序结构特点是将一项工程设计,或称设计实体(能够是一个元件,一个电路模块或一个系统)分成外部(或称可视部份,及端口)和内部(或称不可视部份),既涉及实体的内部功能和算法完成部份。
在对一个设计实体概念了外部界面后,一旦其内部开发完成后,其他的设计就可以够直接挪用那个实体。
这种将设计实体分成内外部份的概念是VHDL系统设计的大体点。
流水灯电路设计简介
每当夜幕降临,咱们能够看到大街各式各样广告牌上漂亮的霓虹灯,看起来令人赏心悦目,为夜幕中的城市增添了很多亮丽侧才。
其实这些霓虹灯的工作原理和EDA技术设计的流水灯是一样的,只不过霓虹灯的花腔更多,看起来美观,而且各式各样。
本课程设计中详细了介绍了用EDA技术实现流水灯的设计,别且咱们能够自己设置希望看见的流水灯显示方式,从不同的按键中来控制流水灯的方向。
而本课程设计中,咱们将采用到EPM7128CPLD来实现八位的LED流水灯的显示,其中包括的两种显示方式,第一种是从右边开始,即从第八位开始,使电路向左,一一的灭掉一个LED,当灭到最后一个LED灯的,又从第八位开始,即实现一种循环显示的功能。
第二种是从右边开始,即从第一名开始,使电路向右,一一的灭掉一个LED,当灭到最后一个LED灯的,又从第一名开始。
而实现第一种显示和第二种显示,咱们用到了一个开关电路来实现,即当两个信号中的一个为高电平的,别离对应一种方式来显示流水灯的状态。
固然咱们能够对电路实现拓展功能,例如咱们能够使电路有置数、停止,暂停和其他各类不同的显示方式。
固然这也提升了编程的难度和电路设计的复杂程度,对于一个两周的课程设计,时刻是不可能实现,所以我做了其中的一个模块,使之功能实现,固然若是需要添加一些其他的模块,咱们也能够对应其他的模块添加进去。
二、设计方案的论证及选择
二、1方案一
本方案采用单片机来完成流水灯的设计,其主要采用STC89C52单片机作为流水灯的主要控制原件,运用单片机之间的接口来完成对流水灯方向的控制,主要由STC89C52单片机,LED显示灯,USB程序下载接口和其他外设控制电路组成。
2-1方案一整体设计框图
方案二
方案二采用ALTERA公司的EPM7128芯片,通过VerilogHDL语言设计一个流水灯电路。
流水灯的主要三种方式。
此设计中还包括两个控制信号的设计。
图2-2方案二设计总框图
方案的选择
采用方案一,即用单片机来实现流水灯的功能,对于单片机,咱们不能不去写相应的软件程序,而且还得设计各类外设电路,由于此课程设计只有两周,考虑到时刻的问题,所以用单片机实现流水灯的完成比较困难。
可是运用单片机完成流水灯的设计本钱是超级低的。
而方案二,运用EDA技术来设计流水灯,这种设计能够用QuartusⅡ软件来完成所需设计,具有方便简单的功能,再加上此课程设计是EDA课程设计,所以综上所述,采用方案二来此流水灯的设计。
三、设计实现
此课程设计中将采用各类外设电路来完成整体电路的设计,其中各个功能电路别离提供不同的功能,以实现所需的功能。
其中外设电路包括,方式选择电路、时钟电路和LED显示电路。
众多外设电路和CPLD相连,组成了整体电路。
芯片简介
EPM7128是可编程的大规模逻辑器件,为ALTERA公司的MAX7000系列产品,具有高阻抗、电可擦等特点,可用门单元为2500个,管脚间最大延迟为5ns,工作电压为+5V。
大体参数如下:
可编程逻辑类型:
PLD
逻辑芯片功能:
ProgrammableISP
逻辑芯片大体号:
7128
输入/输出线数:
84
宏单元数:
128
频率:
输入/输出接口标准:
TTL,CMOS
电源电压最小:
3V
电源电压最大:
封装类型:
TQFP
工作温度范围:
0°Cto+85°C
SVHC(高度关注物质):
Cobaltdichloride
IC标号:
7128
传播延迟时刻:
10ns
器件标号:
7128
封装类型:
剥式
电源电压:
表面安装器件:
表面安装
输入数:
84
逻辑功能号:
7128
针脚数:
100
门电路数:
2500
EPM7128如下3-1图所示:
图3-1EMP7128芯片图
其中咱们用右边60~67引脚作为LED显示灯的链接,而83引脚作为时钟输入信号的引脚,8~9引脚作为显示方式选择按钮的链接。
方式选择电路
本设计中方式选择电路如图3-2所示。
图3-2方式选择电路设计图
当咱们要利用到显示方式一的时候,咱们能够使开关达到右边的电阻来使K1变成高电平使之CPLD的第八个引脚为高,来选择利用显示方式一来显示LED流水灯的功能。
同理,当咱们需要显示方式二的时候,咱们能够使开关达到左侧的电阻来使K2变成高电平使之CPLD的第八个引脚为高,来选择利用显示方式二来显示LED流水灯的功能。
时钟电路的设计
本设计时钟电路采用晶振来做,其电路原理图如图3-3所示。
图3-3时钟电路原理图
此电路为CPLD提供时钟信号,其顶用来设计电路,那个时候咱们能为CPLD提供时钟频率,而且当频率需要的变的时候,咱们能够利用verilogHDL语言来实现频率的倍频和分频。
LED显示电路的设计
显示电路采用8为LED二级发光管来实现流水灯,其电路原理图如3-4所示。
图3-4LED显示电路原理图
整体电路设计图
本课程设计所用到的所有电路和总电路设计图如图3-5所示,其中包括的以上的显示方式的电路图、LED显示模块、时钟和CPLD。
其中的连线和布局都在图中有了详细的解释和说明,咱们能够直观的看见整体电路设计的思想和对电路的影响。
固然这里面也有其他做的不足的地方,而且若是要拓展其他的功能模块,和他连线之间的关系,本图中都没有显示出来。
这也和能力不足和时刻有限有关,若是要暂停和复位电路,也能够在硬件电路中表现出来,可是编写VerilogHDL硬件的时候没有编辑相应的功能,所以也就没有涉及到。
那个电路图中的原件清单有一片EPM7128CPLD,8个LED显示灯,时钟电路和方向选择电路。
图3-5整体电路设计
流水灯总设计电路图
本设计采用VHDL硬件语言来实现软件的设计,而所用的软件工具是。
其中软件的主要功能有3块,即显示方式控制模块。
其中硬件语言的源程序如下:
moduleexp3(LED,CLK,k1,k2);
output[7:
0]LED;
inputCLK,k1,k2;
reg[7:
0]LED;
always@(posedgeCLK)
新建工程项目exp3,直接点击Finish。
(2)点击File->New..在该项目下新建VerilogHDL源程序文件,输入上面的源程序代码并保存。
(3)选择所用的FPGA器件----EP1C3T144C8,以及进行一些配置。
选择配置器件,如果要下载程序到EPCS1的话。
选择不需要使用的IO功能。
选择Asinputs,tri-stated。
点击两次ok,回到主界面。
⑶成立波形文件
1单击File→New命令,在弹出的对话框当选择OtherFilesVector页面中的WaveformFile项,打开波形文件编辑窗口。
2双击窗口左侧空白区域,打开InsertNodeorBus对话框。
3单击NodeFinder…按钮,打开以下对话框,选择Filter下拉列表中的Pins:
all,并点击List列出所有的端口,通过》按钮把这些端口加入到右边的窗口中,单击OK完成端口的添加。
4回到波形编辑窗口,对所有输入端口设置输入波形,最后保留波形文件。
⑷进行功能仿真
1单击Assignments→Settings…,在弹出对话框中做相关设置。
在Simulationmode设置为Functional,即功能仿真。
指定仿真波形文件后单击OK完成设置。
2单击Processing→GenerateFunctionalSimulationNetlist以取得功能仿真网络表。
3单击Processing→StartSimulation进入仿真页面。
此仿真中不包括延迟信息。
⑸进行时序仿真
功能仿真无误后进入时序仿真,时序仿真是增加了相关的延迟仿真。
是最接近实际情形的仿真。
1单击Assignments→Settings…,在弹出对话框中做相关设置。
在Simulationmode设置为Timing,即时序仿真。
指定仿真波形文件后单击OK完成设置。
2单击Processing→StartSimulation进入仿真页面。
时序仿真成功后进入到下载工作。
四、总结
这次课程设计中咱们用到QuartusII软件和protel软件来别离对电路的软件和硬件电路的设计。
固然QuartusII也能够对硬件电路来设计,可是要最终做成实物,本人所学到的知识也只能是运用到了protel来实现,对于QuartusII知识对其的verilogHDL语言熟悉,对于其他的功能确实有些不能熟练的去运用到它。
固然这次课程设计是对自己本学期的EDA课程的另外一种的检测的方式。
咱们在其中学到了课程之外的各类利用知识,也使咱们对QuartusII有了更深刻的影响,对于以后的工作和学习中有着超级重要的帮忙。
其中运用QuartusII来对所设计的电路进行时序的仿真,有着重要的意义,其中咱们能明白自己设计中时序功能的涉及,对时钟那个名词有了更进一步的体会和感受。
固然这次课程设计对我的提升也有更大的意思,不仅使我了解了EDA技术的进展和最新的情形之外,还对EPM7128这款CPLD芯片有了一些的认知和体会。
这对于我来讲这种经历有着对我电路和软件知识有着更大的提高。
六参考文献
[1]潘松,黄继业.EDA技术实用教程[M].北京:
科学出版社,2002.
[2]杨君,王景存.基于VerilogHDL的流水线的设计方式及应用[J].武汉科技大学学报(自然科学版),2002,25(4):
394—396.
[3]郝国法,黄睿,郝琳,等.FPGA在自动售邮票机设计中的应用[J].武汉科技大学学报(自然科学版),2001,24
(2):
178—180.
[4]王景存,李炳生,郝国法,等.用FPGA实现数字逻辑分析仪设计[J].武汉科技大学学报(自然科学版),2001,24
(1):
298—300.
[5]胡华春,石玉.数字锁相环原理与应用[M].上海科学技术出版社,1990.
七附录
实验电路图:
实验VerilogHDL硬件设计语言:
moduleexp3(LED,CLK,k1,k2);
output[7:
0]LED;
inputCLK,k1,k2;
reg[7:
0]LED;
always@(posedgeCLK)//
begin
if(k1)
LED<=LED<<1;
if(LED==8'b0000000)
LED<=8'b;
if(k2)
LED<=LED>>1;
if(LED==8'b0000_0000)
LED<=8'b1111_1111;
end
endmodule