




已阅读5页,还剩26页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
沈阳工程学院课程设计(论文)摘 要eda技术用于电子产品设计中比较先进的技术,可以代替设计者完成电子系统设计中的大部分工作,而且可以直接从程序中修改错误及系统功能而不需要硬件电路的支持,既缩短了研发周期,又大大节约了成本,受到了电子工程师的青睐。及计算机应用等领域的重要性突出。随着技术市场与人才市场对eda的需求不断提高,产品的市场需求和技术市场的要求也必然会反映到教学领域和科研领域中来。因此学好eda技术对我们有很大的益处。eda功能强大,一台计算机、一套eda软件和一片或几片大规模可编程芯(cpld/fpga或isppac),就能完成电子系统的设计。eda技术涉及面广,内容丰富,但在教学和技术推广层面上,应用较为广泛的是基于可编程器件的eda技术,它主要包括如下四大要素:1大规模可编程器件,它是利用eda技术进行电子系统设计的载体;2硬件描述语言,它是利用eda技术进行电子系统设计的主要手段;3软件开发工具,它是利用eda技术进行电子系统的智能化的自动化设计工具;4实验开发系统,它是利用eda技术进行电子系统设计的下载工具及硬件验证工具。实现路口交通灯系统的控制方法很多,可以用标准逻辑器件、可编程序控制器plc、单片机等方案来实现。但是些控制方法的功能修改及调试都需要硬件电路的支持,在一定程度上增加了功能修改及系统调试的困难。因此,在设计中采用eda技术,应用目前广泛应用的vhdl硬件电路描述语言,实现交通灯系统控制器的设计,利用maxplus集成开发环境进行综合、仿真,并下载到cpld可编程逻辑器件中,完成系统的控制作用。关键词eda,系统,控制器,交通灯abstractthe eda technique used for an electronics product design medium more forerunner of technique, can replace design completion electronics system design medium of big part work, and can direct from in the procedure modification mistake and system function but not demand hardware electric circuit of support, since shortenned development period, again consumedly economy cost, was subjected to the electronics engineers favor. the realization street corner transportation light system of control the method be a lot of, can use standard logic spare part, programmable preface controller plc, list slice machine etc. project come to realization. but some control method of function modification and adjust to try all demand hardware electric circuit of support, to some extent increment function modification and the system adjust to try of difficulty. therefore, in the design adoption eda technique, application extensive currently application of vhdl hardware electric circuit description language, realization the transportation light system controller of design, make use of maxplus integration the development environment carry on comprehensive, imitate true, and download arrive the cpld programmable logic spare part in, completion system of control function.keywords eda, system, controller, transportation light目 录摘 要iabstractii目 录iii引 言12硬件电路介绍22.1 eda技术介绍22.2交通灯控制器的基本要求22.3交通灯控制器的原理描述32.4交通灯控制器的基本方案43各单元电路设计53.1 jtdkz53.2 xskz73.3 cnt45s83.4 cnt25s113.5 cnt05s143.6交通灯控制器的顶层原理16结 论17致 谢18参考文献19附 录20- 27 -引 言eda技术是用于电子产品设计中比较先进的技术,可以代替设计者完成电子系统设计中的大部分工作,而且可以直接从程序中修改错误及系统功能而不需要硬件电路的支持,既缩短了研发周期,又大大节约了成本,受到了电子工程师的青睐。vhdl英文全称为:very high speed integrated circuit hardware description language,即超高速集成电路硬件描述语言。当今,在电子工程领域,vhdl已经成为事实上的通用硬件描述语言vhdl起源于1983年,1986年美国电气和电子工程师协会(ieee)开始工作,讨论vhdl标准。1987年12月ieee接受vhdl为标准hdl,这就是ieee std 1076-1987(ltm87)。1993年ieee对vhdl重新修订,增加了一些功能,公布了新标准版本ieee std 1076-1993(lrm93)。严格的说,vhdl93和vhdl87并不完全兼容(vhdl93从更高的抽象层次和系统描述能力上扩展了vhdl的内容。例如,增加了一些保留字并删去了某些属性),但是,对vhdl87的源码只做少许简单的修改就可以成为合法的vhdl93代码(bfmr93)。vhdl主要用于描述和设计复杂数字系统的结构、行为、功能和接口。在工程设计方面有很多优点。首先,与其他的硬件描述语言相比,vhdl描述能力更强,从而决定了它成为系统设计领域最佳的硬件描述语言。其次,vhdl技术完备,具有丰富的仿真语句和库函数。而且还支持同步电路、异步电路和其他电路的设计。再次,vhdl设计方法灵活,对设计的描述具有相对独立性。设计者可以不懂硬件结构,可以不管最终设计实现的目标器件,而进行独立的设计。最后,vhdl支持广泛,目前大多数eda工具几乎都在不同程度上支持vhdl。实现路口交通灯系统的控制方法很多,可以用标准逻辑器件、可编程序控制器plc、单片机等方案来实现。但是这些控制方法的功能修改及调试都需要硬件电路的支持,在一定程度上增加了功能修改及系统调试的困难。因此,在设计中采用eda技术,应用目前广泛应用的vhdl硬件电路描述语言,实现交通灯系统控制器的设计,利用maxplus集成开发环境进行综合、仿真,并下载到cpld可编程逻辑器件中,完成系统的控制作用。2硬件电路介绍2.1 eda技术介绍电子设计自动化技术是一种以计算机为基本工作平台,利用计算机图形学、拓扑逻辑学、计算数学,以至人工智能学等多种计算机应用学科的成果开发出来的一整套软件工具,是一种帮助电子设计工程师从事电子元件、产品和几桶设计的综合技术。eda技术就是以微电子技术微物理成面,现代电子设计技术为灵魂,计算机软件为技术手段,最终形成集成电子系统或集成电路为目的的一门新兴技术。由此可见,eda技术的使用对象由两大类人员组成。一类是专用集成电路asic的芯片设计研发人员;另一类是广大的电子线路设计人员,他们不具备专门的集成电路(ic)深层次的知识。eda技术包含以下特点:1,eda技术所用器件体积小巧、使用灵活、成本低,易于真正产品化。组装各种智能式控制设备和仪器,能做到机电仪一体化。2,面向控制。能有针对性地解决各种从简单到复杂的各类控制任务,因而能获得最佳的性能价格比。3,抗干扰能力强,适应温度范围宽,在各种恶劣的环境下都能可靠的工作。这是其它微机集中无法比拟的。4,可以方便的实现多机、分布式的集散控制,使整个控制系统的效率大大地提高。5,eda技术应用产品的研制周期短,所开发出来的样机就是以后批量生产的产品,可以避免不必要的二次开发过程。eda的应用非常广泛,比如说在工业方面,电机控制,工业机器人,过程控制,智能传感器,机电仪一体化等都应用到了eda技术。而仪器仪表方面、家用电器、电讯方面、导航与控制方面、汽车方面、数据处理方面等多个方面也应用到了改技术。2.2交通灯控制器的基本要求在十字路口,每条道路各有一组红、黄、绿灯和倒计时显示器,用以指挥车辆和行人有序地通行。其中,红灯(r)亮,表示该条道路禁止通行;黄灯(y)亮,表示停车;绿灯(g)亮,表示可以通行。倒计时显示器是用来显示允许通行或禁止通行时间。交通灯控制器就是用来自动控制十字路口的交通灯和计时器,指挥各种车辆和行人安全通行。(1)在十字路口的两个方向上各设一组红、绿、黄灯,显示顺序为其中一方向(东西方向)是绿灯、黄灯、红灯;另一方向(南北方向)是红灯、绿灯、黄灯。(2)设置一组数码管,以倒计时的显示方式允许通行或禁止通行的时间,其中绿灯、黄灯、红灯的持续时间分别是25s、5s、和45s。(3)当各条路上任意一条上出现特殊情况时,如当消防车、救护车或其他需要优先放行的车辆通过时,各方向上均是红灯亮,倒计时停止,显示数字在闪烁。当特殊运行状态结束后,控制器恢复原来状态,继续正常运行。(4)用两组数码管实现双向倒计时显示。2.3交通灯控制器的原理描述交通灯控制器的核心范围是一个计数范围为059共(60秒)的计数器和一个根据计数值做出规定反映的控制器。另外,还需要输入clk时钟信号。最后,要驱动七段数码管,显然还需要一个译码电路。 54 0红灯亮绿灯亮绿灯亮绿灯亮红灯亮东西方向南北方向黄灯亮灯亮2959 292459黄灯亮灯亮图2.3交通灯控制器原理图2.4交通灯控制器的基本方案交通灯控制器的核心范围是一个计数范围为059共(60秒)的计数器和一个根据计数值做出规定反映的控制器。另外,作者所用的实验仪配备的晶振为20mhz,因此还需要一个分频电路。最后,要驱动七段数码管,显然还需要一个译码电路。 主干道状态转换图s=0立刻转换下一状态s=1s=1s=0s=0s=1step 0 系统下载,主干道开始60s倒计时,不论s有无信号,皆为mgcr状态。判断sstep 1 保持mgcr状态,显示保持5秒。step 2 转入mycr状态,开始5s倒计时step 3 转入mrcg状态,开始30s倒计时判断sstep 4 转入mrcy状态,开始5s倒计时3各单元电路设计3.1 jtdkz简单思路:假设4种状态分别为:a、b、c、d,在clk上升沿来时,根据sb、sm状态判断交通处于何种状态,该状态输出什么信号。设计的原理图模块:设计源程序:library ieee;use ieee.std_logic_1164.all;entity jtdkz is port(clk,sm,sb:in std_logic; mr,my0,mg0,br,by0,bg0:out std_logic);end entity jtdkz;architecture art of jtdkz is type state_type is(a,b,c,d); signal state:state_type; begin cnt:process(clk)is variable s:integer range 0 to 45; variable clr,en:bit; begin if(clkevent and clk=1)then if clr=0then s:=0; elsif en=0then s:=s; else s:=s+1; end if; case state is when a=mr=0;my0=0;mg0=1;br=1;by0=0;bg0=0; if(sb and sm)=1 then if s=45 then state=b;clr:=0;en:=0; else state=a;clr:=1;en:=1; end if; elsif(sb and(not sm)=1then state=b;clr:=0;en:=0; else statemr=0;my0=1;mg0=0;br=1;by0=0;bg0=0; if s=5 then state=c;clr:=0;en:=0; else statemr=1;my0=0;mg0=0;br=0;by0=0;bg0=1; if(sm and sb)=1then if s=25 then state=d;clr:=0;en:=0; else state=c;clr:=1;en:=1; end if; elsif sb=0 then state=d;clr:=0;en:=0; else statemr=1;my0=0;mg0=0;br=0;by0=1;bg0=0; if s=5 then state=a;clr:=0;en:=0; else state=d;clr:=1;en:=1; end if; end case; end if; end process cnt;end architecture art;设计仿真的截图:3.2 xskz简单设计思路:根据en45、en25、en05m、en05b的信号以及3个倒计时计数器的计数状态决定输出3个倒计时计数器中某个的状态输出。原理图模块:设计源程序:library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity cskz is port(ina:in std_logic; outa:out std_logic);end entity cskz;architecture art of cskz is begin process(ina)is begin if ina=1then outa=1; else outa=0; end if; end process;end architecture art;设计仿真的截图:3.3 cnt45s简单思路:clk上升沿到来时,若到计时使能信号和sb信号有效,cnt45s开始计数,并将输入状态通过dout45m、dout45b分别输出到主、支干道显示。 设计的原理图模块: 设计源程序:3library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity cnt45s is port(sb,clk,en45:in std_logic; dout45m,dout45b:out std_logic_vector(7 downto 0);end cnt45s;architecture art of cnt45s is signal cnt6b:std_logic_vector(5 downto 0); begin process(sb,clk,en45) is begin if sb=0 then cnt6b=cnt6b-cnt6b-1; elsif(clkevent and clk=1)then if en45=1then cnt6b=cnt6b+1; elsif en45=0then cnt6bdout45m=01000101;dout45bdout45m=01000100;dout45bdout45m=01000011;dout45bdout45m=01000010;dout45bdout45m=01000001;dout45bdout45m=01000000;dout45bdout45m=00111001;dout45bdout45m=00111000;dout45bdout45m=00110111;dout45bdout45m=00110110;dout45bdout45m=00110101;dout45bdout45m=00110100;dout45bdout45m=00110011;dout45bdout45m=00110010;dout45bdout45m=00110001;dout45bdout45m=00110000;dout45bdout45m=00101001;dout45bdout45m=00101000;dout45bdout45m=00100111;dout45bdout45m=00100110;dout45bdout45m=00100101;dout45bdout45m=00100100;dout45bdout45m=00100011;dout45bdout45m=00100010;dout45bdout45m=00100001;dout45bdout45m=00100000;dout45bdout45m=00011001;dout45bdout45m=00011000;dout45bdout45m=00010111;dout45bdout45m=00010110;dout45bdout45m=00010101;dout45bdout45m=00010100;dout45bdout45m=00010011;dout45bdout45m=00010010;dout45bdout45m=00010001;dout45bdout45m=00010000;dout45bdout45m=00001001;dout45bdout45m=00001000;dout45bdout45m=00000111;dout45bdout45m=00000110;dout45bdout45m=00000101;dout45bdout45m=00000100;dout45bdout45m=00000011;dout45bdout45m=00000010;dout45bdout45m=00000001;dout45bdout45m=00000000;dout45b=00000000;end case;end process;end;设计仿真的截图:3.4 cnt25s简单思路:clk上升沿到来时,若到计时使能信号、sm信号和sb信号有效,cnt25s开始计数,并将输入状态通过dout25m、dout25b分别输出到主、支干道显示。设计的原理图模块:设计源程序:library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity cnt25s is port(sb,sm,clk,en25:in std_logic; dout25m,dout25b:out std_logic_vector(7 downto 0);end entity cnt25s;architecture art of cnt25s is signal cnt5b:std_logic_vector(4 downto 0); beginprocess(sb,sm,clk,en25)isbegin if sb=0then cnt5b=cnt5b-cnt5b-1; elsif sm=0then cnt5b=cnt5b-cnt5b-1; elsif(clkevent and clk=1)then if en25=1then cnt5b=cnt5b+1; elsif en25=0then cnt5bdount25b=00100101;dout25mdount25b=00100100;dout25mdount25b=00100011;dout25mdount25b=00100010;dout25mdount25b=00100001;dout25mdount25b=00100000;dout25mdount25b=00011001;dout25mdount25b=00011000;dout25mdount25b=00010111;dout25mdount25b=00010110;dout25mdount25b=00010101;dout25mdount25b=00010100;dout25mdount25b=00010011;dout25mdount25b=00010010;dout25mdount25b=00010001;dout25mdount25b=00010000;dout25mdount25b=00001001;dout25mdount25b=00001000;dout25mdount25b=00000111;dout25mdount25b=00000110;dout25mdount25b=00000101;dout25mdount25b=00000100;dout25mdount25b=00000011;dout25mdount25b=00000010;dout25mdount25b=00000001;dout25mdount25b=00000000;dout25m=00000000;end case;end process;end;设计仿真的截图:3.5 cnt05s简单思路:clk上升沿到来时,若到计时使能信号有效,cnt25s开始计数,并将输入状态通过dout05输出到主、支干道显示。设计的原理图模块:设计源程序library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity cnt05s isport(clk,en05m,en05b:in std_logic; dout5:out std_logic_vector(7 downto 0);end cnt05s;architecture art of cnt05s is signal cnt3b:std_logic_vector(2 downto 0); begin process(clk,en05m,en05b)is begin if(clkevent and clk=1)then if en05m=1then cnt3b=cnt3b+1; elsif en05b=1then cnt3b=cnt3b+1; elsif en05b=0then cnt3bdout5dout5dout5dout5dout5dout5mr=0;my0=0;mg0=1;br=1;by0=0;bg0=0; if(sb and sm)=1 then if s=45 then state=b;clr:=0;en:=0; else state=a;clr:=1;en:=1; end if; elsif(sb and(not sm)=1then state=b;clr:=0;en:=0; else statemr=0;my0=1;mg0=0;br=1;by0=0;bg0=0; if s=5 then state=c;clr:=0;en:=0; else statemr=1;my0=0;mg0=0;br=0;by0=0;bg0=1; if(sm and sb)=1then if s=25 then state=d;clr:=0;en:=0; else state=c;clr:=1;en:=1; end if; elsif sb=0 then state=d;clr:=0;en:=0; else statemr=1;my0=0;mg0=0;br=0;by0=1;bg0=0; if s=5 then state=a;clr:=0;en:=0; else state=d;clr:=1;en:=1; end if; end case; end if; end process cnt;end architecture art;library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity cskz is port(ina:in std_logic; outa:out std
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025-2030防晒霜行业并购重组机会及投融资战略研究咨询报告
- 2025-2030铝制炊具行业市场现状供需分析及重点企业投资评估规划分析研究报告
- 雪人阅读测试题及答案
- 2025-2030蛋白质行业市场现状供需分析及投资评估规划分析研究报告
- 2025-2030药物和基因传递系统行业市场现状供需分析及投资评估规划分析研究报告
- 激光行业的创新管理与实践试题及答案
- 食物过敏和不耐受试题及答案
- 走出舒适区2025年公共卫生执业医师考试试题及答案
- 解密2024年心理咨询师考试技巧题目试题及答案
- 药物使用的长期效果评价试题及答案
- 小说环境描写的深度剖析:解锁文学世界的另一把钥匙(高中教材全册)
- 人教部编版六年级下册语文【选择题】专项复习训练真题100题(附答案解析)
- 浙江省温州市2024-2025学年高一上学期期末教学质量统一检测地理试题(B卷) 含解析
- 《中国土壤侵蚀现状》课件
- 小学语文四年级下册 第四单元 单元作业设计“作家笔下的动物”
- 《计算机网络基础》课件-OSI参考模型
- 建筑工地现场安全策划
- 新生儿高胆红素血症诊断和治疗专家共识
- 2024年全国行业职业技能竞赛(电力交易员)备考试题库(浓缩500题)
- 2022年全国森林、草原、湿地调查监测技术规程-附录
- 【数学】第1课时 不等式的性质教学设计++2024-2025学年人教版数学七年级下册
评论
0/150
提交评论