当前位置:文档之家› 基于FPGA的交通灯(verilog)

基于FPGA的交通灯(verilog)

基于FPGA的交通灯(verilog)
基于FPGA的交通灯(verilog)

基于同步FSM交通信号控制器

试验目的

1、进一步熟悉FSM原理;

2、交通信号控制逻辑的抽象建模方法;

3、掌握同步有限状态机的置位与复位方法;

3、掌握编写可综合的FSM一般指导原则;

试验原理

Verilog HDL和VHDL亍为描述用于综合还只有十年的历史,可综合风格的VerilogHDL和VHD啲语法只是它们各自语言的一个子集;HDL的可综合性研究近年来非常活跃,可综合子集的国际标准目前尚未最后形成,因此,各厂商的综合器所支持的HDL子集也略有不同;对于有关可综合的VerilogHDL的内容我们只着重于介绍RTL算法级和门级结构的描述;把一个时序逻辑抽象成一个同步有限状态机是设计可综合VerilogHDL 模块的关键。有限状态机是设计各种时序逻辑电路的关键。具体的有限状态机的原理可以参看试验七有关原理的介绍。下面介绍一般的可综合有限状态机的编写原则

每个always 块只能有一个事件控制@(event_expression) ,而且要紧跟在

always 关键字后面;

always 可以表示时序逻辑或者组合逻辑;也可以用always 块既表示电平敏感的锁存器又同时表示组合逻辑;

带有posedge或negedge关键字的事件表达式表示边沿触发的时序逻辑,没有posedge或negedge关键字的表示组合逻辑或者电平敏感的锁存器,或者两者都表示;

每个表示时序的always 块只能由一个时钟跳变沿触发,置位和复位最好也由该始终跳变沿触发;

每个在always 块中赋值的信号必须定义为reg 类型或者整型;

Always 块中应该避免组合反馈回路;

实验步骤和实验内容

1、本试验交通信号控制灯的逻辑关系该交通信号灯控制器用于控制一条主干道与一

条乡村公路的交叉口的交通

( 如图8-1 所示) ,它必须具有下面的功能;由于主干道上来往的车辆较多,因此控制主干道的交通信号灯具有最高优先级,在默认情况下,主干道的绿灯点亮;乡村公路间断性地有车经过,有车来时乡村公路的交通灯必须变为绿灯,只需维持一段足够的时间,以便让车通过。只要乡村公路上不再有车辆,那么乡村公路上的绿灯马上变为黄灯,然后变为红灯;同时,主干道上的绿灯重新点亮;一传感器用于监视乡村公路上是否有车等待,它向控制器输入信号X;如果X=1,则

表示有车等待,否则X=o;当从S1状态转换到S2状态,从S2状态转换到S3状态,从S3状态转换到S4状态,从S4状态转换到S20状态时,具有一定的延时;

2、试验内容

1 )从以上实际交通信号控制问题抽象逻辑关系;

2)画出状态转换图;

2)设计Verilog 代码;

TO START: 实验代码//基于同步FSM 交通信号灯控制器

'defi ne TRUE 1'b1

'defi ne FALSE 1'b0

//延迟

'define Y2RDELAY 3

'define R2GDELAY 2

module sig_control(hwy,cntry,X,clock,clear); output[1:0]hwy,cntry;

reg[1:0]hwy,cntry;

input X;

input clock,clear;

parameter RED=2'd0,

YELLOW=2'd1,

GREEN=2'd2;

parameter S0 =3'd0,

51 =3'd1,

52 =3'd2,

53 =3'd3,

54 =3'd4;

reg[2:0] state;

reg[2:0] next_state;

always@(posedge clock) if(clear)

state<=S0;

else

state<=next_state;

always@(state)

begin

hwy =GREEN;

cntry =RED;

case (state)

S0: ;

S1:hwy =YELLOW;

S2:hwy =RED;

S3: begin

hwy = RED;

cntry = GREEN;

end

S4: begin

hwy =RED;

cntry =~YELLOW;

end

endcase

end

always@(state or X)

begin

case(state)

S0: if (X)

next_state =S1;

else

next_state = S0;

S1:begin

repeat('Y2RDELAY)@(posedge clock); next_state = S2;

end

S2:begin

repeat('R2GDELAY)@(posedge clock); next_state = S3;

end

S3: if (X)

next_state =S3;

else

next_state = S4;

S4:begin

repeat('Y2RDELAY)@(posedge clock); next_state = S0;

end

default:next_state =S0;

endcase

end endmodule

得结果

虽然有警告,但是综合还是过了,成功了!

fcg

3 ?C WIZL I C B^igii

卜厂=

y 甲"卜血环讳讥腐血订

P Fitter (Jl&ce

/ 甲亠ftsswlil就yfcy iit 旨Lurf

# g—口帕力r Timaf bdywi t

F-lk lllk fri tfr

交通信号控制信号的状态

图如下:

4 总I A U-L L ysi= 1

Eynlkes]s B 旨」Jl tiar

+■音」AsimUsr

Tim £t:

i-ns

Qiurtu 口y"fTsi

皿WiSlOEL hl !

Tojrlevel Jnt-itj-

rwily

Dwi?

TninjV:血血ht 啓

r^qaiTETicnts

iHil fzBit

xncEEEO. nijJLijpi.Ler w

以下是所得的彷真图: 放大如下 || k%- ?:-l^ Ikiu.i. ry. Bio* It ^BUTI 3^ ?n* ? 'Ji i ?3 C4U. 'i £dlana ! <11 ■?2?>

160.0 ns 320.0 rs I 4M.0 ns I 640.0 ns 8C0 0 ns Nine

963 C ns 1.0 u 1]81JOJ irckt?-- < I d d LrL —

TL □

基于VerilogHDL的通行时间可变的交通灯控制器

通行时间可变的交通灯控制器设计 module tr1(ng,clk,reset,resets,emergency,lighta,lightb,seg,select); input ng,clk,reset,emergency,resets; output[6:0]seg;//显示用的 output[3:0] lighta,lightb;//a是主干道,b是支干道 output [3:0] select;//选择那一个管子进行显示 reg clk1,clk2;//clk1要5HZ clk2要几千HZ reg [3:0] select; reg tim1,tim2;//这是看你的等有没有变过颜色的控制信号 reg [1:0] cont; reg[2:0]state1,state2,ste;两个控制颜色变化状态的信号。 reg[3:0]lighta,lightb;//a是主干道,b是支干道 reg[3:0]num;//译码器是根据这个东西来译码的 reg [35:0] fout; reg[6:0]seg;//显示 reg[7:0] numa,numb; reg[7:0] red1,red2,green1,green2,yellow1,yellow2,left1,left2; always @(ng ) if(!ng) begin //设置计数初值 green1 <=8'b00110000;//30S red1 <=8'b01010001;//51S yellow1<=8'b00000011;//3S left1 <=8'b00010101; //15S green2 <=8'b00110000;//30S

(完整版)基于FPGA的智能交通灯的设计毕业设计

目录 摘要 ............................................................. I 1 前言 (1) 2 交通红绿灯控制电路的发展与技术现状 (2) 2.1 交通控制系统以及交通红绿灯控制电路的发展现状 (2) 2.2 智能交通红绿灯控制电路技术的现状 (3) 3 VHDL、FPGA、Quartus ii简介 (5) 3.1 VHDL简介 (5) 3.1.1 VHDL简介 (5) 3.1.2 VHDL语言的特点 (6) 3.2 FPGA简介 (8) 3.2.1 PLD器件的设计特点 (8) 3.2.2 FPGA的基本结构 (10) 3.2.3 采用FPGA设计逻辑电路的优点 (11) 3.3 Quartus II 的简介 (12) 4 具体方案论证与设计 (13) 4.1 具体方案论证 (13) 4.2系统算法设计 (15) 4.3 具体电路原理图 (16) 4.4 电路仿真图 (16) 5 实验结果 (17) 总结 (18) 参考文献 ......................................... 错误!未定义书签。附录: .. (19)

基于FPGA的十字路口交通信号灯 摘要 本文主要介绍十字路口交通灯控制器的设计。首先,介绍交通控制系统以及交通红绿灯控制电路的发展现状;然后采用硬件描述语言进行的交通灯控制器设计。重点介绍了控制系统各部分的设计,以及各个模块之间的同步处理。为了克服交通信号灯控制系统传统设计方法的弊端,更加适应城镇交通现状,利用VHDL语言、采用层次化混合输入方式,设计了具有3种信号灯和倒计时显示器的交通信号灯控制系统,在 QuartusⅡ下进行仿真,并下载到FPGA中制作成实际的硬件电路进行了模拟运行.使用该方法设计的交通灯控制系统电路简单、运行可靠、易于实现,可实现对交通信号的控制和显示功能。 关键词 FPGA;QUARTUS ii;HDPLD;十字路口交通灯控制器; Based on FPGA intersection traffic lights Abstract This paper describes the design of intersection traffic signal controller.First, the introduction of traffic control systems and traffic light control circuit of the development status; then using language designed for the traffic light controller.Focus on various parts of the control system

交通灯设计 verilog

数电课程设计 学生姓名: 专业:电子信息工程 指导教师: 完成日期: 2016-6-30

摘要 Verilog HDL作为一种规范的硬件描述语言,被广泛应用于电路的设计中。它的设计描述可被不同的工具所支持,可用不同器件来实现。利用Verilog HDL语言自顶向下的设计方法设计交通灯控制系统,使其实现道路交通的正常运转,突出了其作为硬件描述语言的良好的可读性、可移植性和易理解等优点,并通过Quartus5.0完成综合、仿真。此程序通过下载到FPGA芯片后,可应用于实际的交通灯控制系统中。 关键词:Verilog HDL;硬件描述语言;状态;FPGA Abstract As a common language for the description of hardware, Verilog HDL is widely applied in circuit designing. The design description can be supportted by differenttools and implemented by different devices.In this paper, the process of design ing traffic light controller system by the Verilog HDL topdown design method is presented, which has made the road traffic work well, the design of t his system has shown the readability, portability and easily understanding of Verilog HDL as a hard description language Circuit synthesis and simulation are pe rformed by Quartus5.0. The program can be used in the truly traffic light controller system by downloading to the FPGA chip Keywords:Verilog HDL; hardware description language; state; FPGA

基于FPGA下的交通灯控制器设计

引言 随着城乡的经济发展,车辆的数量在迅速的增加,交通阻塞的问题已经严重影响了人们的出行。 现在的社会是一个数字化程度相当高的社会,很多的系统设计师都愿意把自己的设计设计成集成电路芯片,芯片可以在实际中方便使用。随着EDA技术的发展,嵌入式通用及标准FPGA器件的呼之欲出,片上系统(SOC)已经近在咫尺。FPGA/CPLD 以其不可替代的地位及伴随而来的极具知识经济特征的IP芯片产业的崛起,正越来越受到业内人士的密切关注。FPGA就是在这样的背景下诞生的,它在数字电路中的地位也越来越高,这样迅速的发展源于它的众多特点。交通等是保障交通道路畅通和安全的重要工具,而控制器是交通灯控制的主要部分,它可以通过很多种方式来实现。在这许许多多的方法之中,使用FPGA和VHDL语言设计的交通灯控制器,比起其他的方法显得更加灵活、易于改动,并且它的设计周期性更加短。 城市中的交通事故频繁发生,威胁着人们的生命健康和工作生活,交通阻塞问题在延迟出行时间的同时,还会造成更多的空气污染和噪声污染。在这种情况下,根据每个道路的实际情况来设置交通灯,使道路更加通畅,这对构建和谐畅通的城市交通有着十分重要的意义。

第一章软件介绍 1.1 QuartusⅡ介绍 本次毕业设计是基于FPGA下的设计,FPGA是现场可编程门阵列,FPGA开发工具种类很多、智能化高、功能非常的强大。可编程QuartusⅡ是一个为逻辑器件编程提供编程环境的软件,它能够支持VHDL、Verilog HDL语言的设计。在该软件环境下,设计者可以实现程序的编写、编译、仿真、图形设计、图形的仿真等许许多多的功能。在做交通灯控制器设计时选择的编程语言是VHDL语言。 在这里简单的介绍一下QuartusⅡ的基本部分。图1-1-1是一幅启动界面的图片。在设计前需要对软件进行初步的了解,在图中已经明显的标出了每一部分的名称。 图 1-1-1 启动界面 开始设计前我们需要新建一个工程,首先要在启动界面上的菜单栏中找到File,单击它选择它下拉菜单中的“New Project Wizard”时会出现图1-1-2所显示的对话框,把项目名称按照需要填好后单击Next,便会进入图 1-1-3 显示的界面。

verilog课程设计—交通灯

课程论文 论文题目基于DE2的交通灯设计完成时间 课程名称Verilog语言设计 任课老师 专业 年级

1.交通信号控制器设计要求与思路 1.1设计背景 FPGA是一种用户根据各自需要而自行构造逻辑功能的数字集成电路,其种类很多,内部结构也不同,但共同的特点是体积小、使用方便。本文介绍了用VerilogHDL语言设计交通灯控制器的方法,并在QuartusII系统对FPGA芯片进行编译下载,由于生成的是集成化的数字电路,没有传统设计中的接线问题,所以故障率低、可靠性高,而且体积非常小。本文通过EDA设计,利用VerilogHDL语言模拟仿真交通灯控制电路。 1.2设计要求 根据交通灯控制器要实现的功能,考虑用两个并行执行的always语句来分别控制A方向和B方向的3盏灯。这两个always语句使用同一个时钟信号,以进行同步,也就是说,两个进程的敏感信号是同一个。每个always语句控制一个方向的3种灯按如下顺序点亮,并往复循环:绿灯----黄灯----红灯,每种灯亮的时间采用一个减法计数器进行计数,计数器用同步预置数法设计,这样只需改变预置数据,就能改变计数器的模,因此每个方向只要一个计数器进行预置数就可以。为便于显示灯亮的时间,计数器的输出均采用BCD码,显示由4个数码管来完成,A方向和B方向各用两个数码管。设定A方向红灯、黄灯、绿灯亮的时间分别为:35s、5s、35s,B方向的红灯、黄灯、绿灯亮的时间分别为:35s、5s、35s。假如要改变这些时间,只需要改变计数器的预置数即可。 1.3设计思路 两个方向各种灯亮的时间能够进行设置和修改,此外,假设B方向是主干道,车流量大,因此B方向通行的时间应该比A方向长。交通灯控制器的状态转换表见下表。表中,1表示灯亮,0表示灯不亮。A方向和B方向的红黄绿分别用R1、Y1、G1、R2、Y2、G2来表示。

通过Verilog实现交通灯设计实验报告

电子科技大学 实 验 报 告 一、实验室名称:虚拟仪器实验室 二、实验项目名称:交通灯设计实验 三、实验学时:4学时 四、实验原理

假设交通灯处于南北和东西两条大街的“十”字路口,如图1所示。用FPGA 开发板的LED 灯来模拟红、黄、绿3种颜色信号,并按一定顺序、时延来点亮LED ,如图2所示。图3给出了交通灯的状态转移图。设计使用频率为1Hz 的时钟来驱动电路(注1:仿真时采用1MHz 的时钟来驱动电路),则停留1个时钟可得到1S 的延时,类似停留3个时钟可得到3S 的延时,停留15个时钟可得到15S 的延时(注2:开发板工作时钟为50MHz )。 北 南 西东 图1. 六个彩色LED 可以表示一组交通信号灯 图2. 交通灯状态 南北 东西 红 黄 绿 红 黄 绿 S0 1 0 0 0 0 1 S1 1 0 0 0 1 0 S2 1 0 0 1 0 0 S3 0 0 1 1 0 0 S4 0 1 0 1 0 0 S5 1 0 0 1 0 0

图3. 交通灯的状态转移图 顶层模块 时钟分频模块状态机跳转模块 图4. 交通灯的原理框图 五、实验目的 本实验是有限状态机的典型综合实验,掌握如何使用状态转移图来定义Mealy状态机和Moore状态机,熟悉利用HDL代码输入方式进行电路的设计和仿真的流程,掌握Verilog语言的基本语法。并通过一个交通灯的设计掌握利用EDA软件(Xilinx ISE 13.2)进行HDL代码输入方式的电子线路设计与仿真的详细流程。。 六、实验内容 在Xilinx ISE 13.2上完成交通灯设计,输入设计文件,生成二进制码流文件下载到FPGA开发板上进行验证。 七、实验器材(设备、元器件)

交通灯设计-verilog.

. 基于Verilog语言交通灯设计报告 院系:工学院自动化系 年级:14级 班级:10班 姓名:周博 学号:14032291

这学期我学习了EDA技术及其创新实践这门课程,通过自己学习的内容和自己查找的一些资料用Verilog语言编写交通灯的程序,并且完成了仿真。Verilog HDL是工业和学术界的硬件设计者所使用的两种主要的HDL之一,另一种是VHDL。现在它们都已成为IEEE标准。两者各有特点,但Verilog HDL拥有更悠久的历史、更广泛的设计群体,资源也远比VHDL丰富,且非常容易学习掌握。一、设计背景和意义 交通灯控制系统主要是实现城市十字交叉路口红绿灯的控制。在现代化的大城市中,十字交叉路口越来越多,在每个交叉路口都需要使用红绿灯进行交通指挥和管理,红、黄、绿灯的转换要有一个准确的时间间隔和转换顺序,这就需要有一个安全、自动的系统对红、黄、绿灯的转换进行管理,本系统就是基于此目的而开发的。 二、设计任务 (1)设计一个交通红绿灯。要求分主干道和支干道,每条道上安装红(主:red1,支:red2)绿(主:green1,支:green2)黄(主:yellow1,支:yellow2)三种颜色灯,由四种状态自动循环构成; (2)在交通灯处在不同的状态时,设计一个计时器以倒计时方式显示计时,主干道上绿灯亮30S,支干道上绿灯亮20S。每个干道上,在绿灯转为红灯时,要

求黄灯先亮5S。 在完成基本要求的基础上,可进一步增加功能、提高性能,如绿灯亮的时间可调。 三、设计方案 1.工作原理: 城市十字交叉路口红绿灯控制系统主要负责控制主干道走向和从干道走向的红绿灯的状态和转换顺序,关键是各个状态之间的转换和进行适当的时间延时,正是基于以上考虑,采用如下设计: S0:当主干道走向的绿灯亮时,从干道走向的红灯亮,并保持30s S1:当主干道走向的黄灯亮时,从干道走向的黄灯亮,并保持5s S2:当主干道走向的红灯亮时,从干道走向的绿灯亮,并保持20s S3:当主干道走向的黄灯亮时,从干道走向的黄灯亮,并保持5s 在S3结束后又回到(1)状态,并周期重复进行。 状态图如下: 30秒 5秒5秒

基于FPGA的交通灯课程设计报告

总体设计要求和技术要点 1.任务及要求 (1)设计一个交通信号灯控制器,由一条主干道和一条支干道汇合成十字路口,在每个入口处设置红、绿、黄三色信号灯,红灯亮禁止通行,绿灯亮允许通行,黄灯亮则给行驶中的车辆有时间停在禁行线外。 (2)红、绿、黄发光二极管作信号灯,用传感器或逻辑开关作检测车辆是否到来的信号。 (3)主干道处于常允许通行的状态,支干道有车来时才允许通行。主干道亮绿灯时,支干道亮红灯;支干道亮绿灯时,主干道亮红灯。 (4)主、支干道均有车时,两者交替允许通行,主干道每次放行45秒,支干道每次放行25秒,设立45秒、25秒计时、显示电路。 (5)在每次由绿灯亮到红灯亮的转换过程中,要亮5秒黄灯作为过渡,使行驶中的车辆有时间停到禁行线外,设立5秒计时、显示电路。 (6)按《湖南涉外经济学院课程设计管理办法》要求提交课程设计报告。 工作内容及时间进度安排 第17周:周1---周2 :立题、论证方案设计 周3---周5 :程序设计与调试 第18周:周1---周3 :硬件调试与测试、撰写课程设计报告 周4---周5 :验收答辩 课程设计成果 1.与设计内容对应的软件程序 2.课程设计总结报告

摘要 本实验为自主选题设计实验,实验选择具有倒计时显示功能的红黄绿三色交通设计,实验中采用VHDL 作为设计功能描述语言,选用Altera公司的EP1K30144-PIN TQFP最为主控芯片,实验报告中简要介绍了FPGA器件,并给出了设计原理图,详细的介绍了交通灯的设计流程,实验报告中还附有实验代码实验结果照片图。 Abstract This experiment designed for independent choice experiment, experiment choice which has the function of the countdown display red yellow green traffic design, description language (VHDL as design function is applied in the experiments, the most main control chip select MAX II EPM240T100C5 Altera company, experiment report, this paper briefly introduces the MAX II device series, and gives the design diagram, detailed introduces the traffic lights of the design process, the experiment report with the code results photo graph.

verilog课程设计—交通灯1

课程设计 课程名称__EDA技术综合设计与实践__ 题目名称交通灯控制系统 学生学院信息工程学院 专业班级通信工程08(4) 学号 3108002925 学生姓名高高 指导教师李学易 2011 年12 月26 日

基于FPGA 的交通灯控制器的设计 摘要:Verilog 是广泛应用的硬件描述语言,可以用在硬件设计流程的建模、综合和模拟等多个阶段。随着硬件设计规模的不断扩大,应用硬件描述语言进行描述的CPLD 结构,成为设计专用集成电路和其他集成电路的主流。现代城市在日常运行控制中,越来越多的使用红绿灯对交通进行指挥和管理。而一套完整的交通灯控制系统通常要实现自动控制和手动控制去实现其红绿灯的转换。 基于FPGA 设计的交通灯控制系统电路简单、可靠性好。本设计利用Verilog HDL 语言、采用层次化混合输入方式,可控制4个路口的红、黄、绿、左转四盏信号灯,让其按特定的规律进行变化。在QUARTUSⅡ下对系统进行了综合与仿真。仿真结果表明系统可实现十字路口红绿灯及左转弯控制和倒计时显示,并能够自动控制交通灯转变。通过应用Verilog HDL 对交通灯控制器的设计,达到对Verilog HDL 的理解 关键词:FPGA;交通灯自动控制;V erilog HDL;Quartus Ⅱ 1.交通信号控制器设计要求与思路 1.1设计要求 在交通灯系统中(图1),路口1、2、3、4均需要红、黄、绿、左转四盏灯(用RYGL分别表示) ,并且每个路口都需要一个倒数的计时器,假设绿灯每次维持的时间是40 s ,黄灯为5 s ,左转灯10s,红灯60s,黄灯亮时以一定的频率闪动。交通灯系统大多是自动控制来指挥交通的,但有时需要由交警手动控制红绿灯,所以要求设 计的该交通信号系统需要具有该功能。 实现设计目标如下: (1)设计一个十字路口的交通灯控制电路,每条路配有红、黄、绿交通信号灯,通过电路对十字路口的两组交通灯的状态实现自动循环控制; (2)实现东西车道和南北车道上的车辆交替运行,绿灯每次维持的时间是40 s ,黄灯为5 s ,左转灯10s,红灯60s; (3)要求黄灯亮5 秒后,红灯才能转为绿灯,黄灯亮时以一定的频率闪动; (4)东西车道和南北车道每次通行的时间不同且可调; 图1 交通灯系统示意图

基于FPGA的交通灯设计说明

交通信号灯控制器

目录 第一章系统设计 1.1设计要求 (3) 1.2 方案比较 (3) 1.3方案论证 (3) 1.3.1总体思路 (4) 1.3.2设计方案 (5) 第二章单元电路设计 2.1 4位二进制计数器 (6) 2.2 两位二进制计数器 (6) 2.3定时时间到检测电路 (6) 2.4红黄绿灯输出控制电路 (6) 2.5计时器 (6) 第三章软件设计 3.1用VHDL编写程序 (6) 3.2 程序流程 (7) 3.3程序清单及仿真 (7) 第四章系统测试 (7) 第五章结论 (8) 参考文献 (9) 附录 (10)

0 引言 随着经济的飞速发展,现代化交通管理成了当今的热点问题。一个完善的交通控制功能,可使混乱的交通变得井然有序,从而保障了人们的正常外出。本系统通过设计一交通信号灯控制器,达到交通控制的目的。除实现交通灯基本的控制功能外,系统还可显示该灯本次距灯灭所剩的时间,具有更完善的控制功能,使行人提前做好起、停准备,具有更强的实用性。 第1章 系统设计 1.1设计要求 (1) 交通灯从绿变红时,有4秒黄灯亮的间隔时间。 (2) 交通灯红变绿是直接进行的,没有间隔时间。 (3) 主干道上的绿灯时间为20秒,支干道的绿灯时间为10秒。 (4) 在任意时间,显示每个状态到该状态结束所需要的时间。 1.2方案比较 要实现对交通灯的控制,有很多的方案可供选择。 方案一:由两块CMOS 集成电路完成定时和序列控制功能,三只双向晶体管完成实际的电源切换功能。电路中采用10V 负电源(可由市电电压经降压、整流、滤波、稳压而得)、CD4049集成电路、计数器CD4017等器件。其中双向晶闸管选用400V 、4A 的,二极管选用BY127型和1N4148型,稳压管选用10V 、1W 的。因直接使用市电工作,故在安装和使用时安全系数较低,且硬件电路复杂,所用器件多。 方案二:运用VHDL 语言分别控制分频和状态机两个模块, 即信号源经分频器分频后得到1Hz 脉冲,输出脉冲控制状态机中预置四个状态的循环,从而达到交通控制作用.该方案电路结构简单,使用器件少,易于安装和使用.但不宜于电路扩展,适用围小,应用不广泛. 方案三:采用VHDL 语言输入的方式实现交通信号灯控制器,并灵活运用了通用元件CBU14和CBU12作为4位二进制计数器和两位二进制计数器,简化了硬件电路,同时也给调试、维护和功能的扩展、性能的提高带来了极大的方便。 分析以上三种方案的优缺点,显然第三种方案具有更大的优越性、灵活性,所以采用第三种方案进行设计。 1.3 方案论证 1.3.1 总体思路 系统交通管理示意图如图1.3.1. 主干道 支干道 图1.3.1 路口交通管理示意图 由此可得出交通信号灯A 、B 、C 、D 的4种状态:

基于VerilogHDL的交通灯控制器设计

目录 第一章设计原理 (1) 1.1设计要求 (1) 1.2设计思路和原理 (1) 1.3实现方法 (1) 第二章Verilog 程序设计 (2) 2.1整体设计 (2) 2.2 具体设计 (3) 第三章仿真 (7) 3.1 波形仿真 (7) 第四章设计总结 (9) 4.1 总结 (9) 4.2参考资料 (9) 程序清单 (10)

交通灯控制器设计 第一章 设计原理 1.1设计要求 设计一个交通控制器,用LED 显示灯表示交通状态,并以7段数码显示器显示当前状态剩余秒数 主干道绿灯亮时,支干道红灯亮;反之亦然,二者交替允许通行,主干道每次放行35s ,支干道每次放行25s 。每次由绿灯变为红灯的过程中,亮光的黄灯作为过渡,黄灯的时间为5s 。能进行特殊状态显示,特殊状态时东西、南北路口均显示红灯状态。用LED 灯显示倒计时,并且能实现总体清零功能,计数器由初始状态开始计数,对应状态的显示灯亮。 1.2设计思路和原理 本次设计是针对十字路口,进行南北和东西直行情况下交通灯控制。设定东西方向为主干道方向,根据交通灯的亮的规则,在初始状态下四个方向的都为红灯亮启,进入正常工作状态后,当主干道上绿灯亮时,支干道上红灯亮,持续35S 后,主干道和支干道上的黄灯都亮启,持续5S 后,主干道上红灯亮启,支干道上绿灯亮启持续25S ,之后主干道和支干道上的黄灯都亮启5s ,一个循环完成。循环往复的直行这个过程。其过程如下图所示: 0s 30s 25s 主干道方向 支干道方向 图1.交通灯点亮时间控制说明 1.3实现方法 本次采用文本编辑法,即利用Verilog 语言描述交通控制器,通过状态机计数法,实现设计所要求的交通灯控制及时间显示。设计中用两组红黄绿LED 模拟两个方向上的交通灯,用4个7段数码管分别显示两个方向上的交通灯剩余时间,控制时钟由试验箱上频率信号提供。

基于FPGA的十字路口交通灯控制器设计

石河子大学信息科学与技术学院 成绩存档 学期:2014 至2015学年第一学期 考试科目:电子EDA技术课程设计 专业:电子信息工程 班级:2012 (1)班 姓名: 学号: 任课教师:钟福如

目录 一、实验目的 (1) 二、测试方法 (1) 三、总的设计流程 (1) 四、交通灯控制器的具体设计方案 (1) 五、主要功能设计与仿真 (2) 1、时钟分频模块 (2) 2、交通灯控制模块 (3) 六、顶层文件 (8) 七、心得体会 (9) 八、参考文献 (10)

基于FPGA的十字路口交通灯控制器设计 一、实验目的: 弄懂交通灯的控制逻辑,注意是十字路口,分人行道与车道。车道分别有直行、左转、右转指示,且每个指示三种颜色:红绿黄,红绿转换时间设定2分钟,红与绿之间转换之前有30秒黄灯的闪烁;人行道有红、绿灯指示,红绿转换时间间隔2分钟,且在红绿转换之间有30秒的黄灯闪烁 二、测试方法: 输入技术脉冲信号,仿真波形的输出端的交通指示灯能按题目要求变化. 三、总的设计流程 首先根据交通灯控制器的功能要求,将功能要求转化成系统流程图,然后对系统进行模块的划分、定义各个模块的具体功能。再开始对各个模块用VHDL语言编程,并在Quartus II环境下进行编译及功能仿真。 四、交通灯控制器的具体设计方案

主干道 支 干 道 图1 十字路口交通灯控制器的平面图 实现红黄绿灯的自动指挥。通过交通灯控制器要能够使用于一条由主干道和支干道交汇处的十字路口(假设东西方向为主干道,南北方向为支干道)。且遵循“主干道优先考虑”原则,主、支干道红、绿灯亮的时间不完全一致,在正常情况下主干道允许车辆通行的时间更长。在绿灯转换为红灯的过程中有黄灯进行,使车辆有足够的时间停下来。另外由VHDL语言合理设计交通灯控制器的功能,以使绿、黄、红灯的转换有一个准确的转换顺序和时间间隔。依据设计要求,最终画出如图所示的系统框图。(图1)

用verilog语言编写交通灯程序

交通灯 一、实验目的 写一个交通灯,要求: ①有东西南北四个方向,两组交通灯轮流交替变换,其中,红灯时间为30 个时间单位,绿灯时间为25个时间单位,黄灯时间为5个时间单位。最后用modelsim软件进行仿真。 ②要求设计是一个可综合设计。 二、实验原理 根据实验要求的逻辑功能描述,可以分析得出原理图如下: 根据实验要求画出控制器的状态转移图如下:

三、代码 1、源代码 (1)控制器模块 module traffic_lights(clk,rst,count,ew,sn); input clk,rst; input[5:0] count; output[2:0] ew,sn; reg[2:0] ew,sn; reg[3:0] state; parameter Idle=3'b000,s1=3'b001,s2=3'b010,s3=3'b011,s4=3'b100; always @(posedge clk) if(!rst) begin state<=Idle; end else casex(state) Idle: if(rst) begin state<=s1; end s1: if(count=='d25) begin state<=s2; end s2: if(count=='d30) begin state<=s3;

end s3: if(count=='d55) begin state<=s4; end s4: if(count=='d60) begin state<=s1; end endcase always @(posedge clk) begin if(!rst) begin ew<=3'b100; sn<=3'b100; end else casex(state) Idle: if(rst) begin ew<=3'b100; sn<=3'b001; end s1: if(count=='d25) begin ew<=3'b100; sn<=3'b010; end

Verilog语言实现设计交通灯控制器

Verilog语言实现设计交通灯控制器 实验模块组成: (计数器+控制器)可以分开实现,最好一起实现避免接口对接时出错 译码器 实验要求: 1.在十字路口两个方向各设一组红、绿、黄灯,显示顺序为: 南北方向是绿、黄、红灯;东西方向是红、绿、黄灯。 2.要求红、绿、黄灯的持续时间分别为:10s、7s、3s,东西、南北方向各用一 个数码管显示倒计时时间。 3.当任意方向出现特殊情况时,应优先放行,即使各方向均亮红灯,倒计时停 止,且显示数字闪烁。经过规定时间之后,恢复正常运行状态。 //计数器+控制器 module ZTJ(clk,s,count1,count2,led); parameter s0=6'b010100,s1=6'b001100,s2=6'b100010,s3=6'b100001,s4=6'b100100; inputclk,s; output[3:0]count1; output[3:0]count2; output[5:0]led; reg[3:0]count1; reg[3:0]count2; reg[5:0]led; reg[5:0]st; reg[5:0]jicun; reg[3:0]i; always @(posedgeclk) if(s==0 & led==6'b000000) begin led<=s0; st<=s0; count1<=4'b0110; count2<=4'b1001; end else if(s==0 & led!=6'b000000) begin case(st) s0:if(count1!=4'b0000) begin led<=s0;count1<=count1-1;count2<=count2-1;end else begin count1<=4'b0010;st<=s1;end s1:if(count1!=4'b0000) begin led<=s1;count1<=count1-1;count2<=count2-1;end else begin

基于FPGA的交通灯(verilog)

基于同步FSM交通信号控制器 试验目的 1、进一步熟悉FSM原理; 2、交通信号控制逻辑的抽象建模方法; 3、掌握同步有限状态机的置位与复位方法; 3、掌握编写可综合的FSM一般指导原则; 试验原理 Verilog HDL和VHDL亍为描述用于综合还只有十年的历史,可综合风格的VerilogHDL和VHD啲语法只是它们各自语言的一个子集;HDL的可综合性研究近年来非常活跃,可综合子集的国际标准目前尚未最后形成,因此,各厂商的综合器所支持的HDL子集也略有不同;对于有关可综合的VerilogHDL的内容我们只着重于介绍RTL算法级和门级结构的描述;把一个时序逻辑抽象成一个同步有限状态机是设计可综合VerilogHDL 模块的关键。有限状态机是设计各种时序逻辑电路的关键。具体的有限状态机的原理可以参看试验七有关原理的介绍。下面介绍一般的可综合有限状态机的编写原则 每个always 块只能有一个事件控制@(event_expression) ,而且要紧跟在 always 关键字后面; always 可以表示时序逻辑或者组合逻辑;也可以用always 块既表示电平敏感的锁存器又同时表示组合逻辑; 带有posedge或negedge关键字的事件表达式表示边沿触发的时序逻辑,没有posedge或negedge关键字的表示组合逻辑或者电平敏感的锁存器,或者两者都表示; 每个表示时序的always 块只能由一个时钟跳变沿触发,置位和复位最好也由该始终跳变沿触发; 每个在always 块中赋值的信号必须定义为reg 类型或者整型; Always 块中应该避免组合反馈回路; 实验步骤和实验内容 1、本试验交通信号控制灯的逻辑关系该交通信号灯控制器用于控制一条主干道与一 条乡村公路的交叉口的交通 ( 如图8-1 所示) ,它必须具有下面的功能;由于主干道上来往的车辆较多,因此控制主干道的交通信号灯具有最高优先级,在默认情况下,主干道的绿灯点亮;乡村公路间断性地有车经过,有车来时乡村公路的交通灯必须变为绿灯,只需维持一段足够的时间,以便让车通过。只要乡村公路上不再有车辆,那么乡村公路上的绿灯马上变为黄灯,然后变为红灯;同时,主干道上的绿灯重新点亮;一传感器用于监视乡村公路上是否有车等待,它向控制器输入信号X;如果X=1,则

Verilog交通灯

实验报告 班级:微电2班 组员:刘家豪门珺 学号:11180102

目录 一、概述 (4) 二、任务功能 (5) 三.系统设计 (5) 1.工作原理 (5) 2.系统设计方案 (6) 四、程序设计 (7) 1.verilog源程序 (7) 2.设备选择 (11) 3引脚绑定 (12) 五、结束语 (13)

一:概述 HDL(Hardware Description Language,硬件描述语言)是一种描述硬件所做工作的语言。目前,电子系统向集成化、大规模和高速度等方向发展,以硬件描述语言和逻辑综合为基础的自顶向下的电路设计方法在业界得到迅猛发展,HDL在这种形势下显示出了巨大的优势,展望将来HDL在硬件设计领域的地位将与C和C++在软件设计领域地位一样,在大规模数字系统的设计中,它将逐步取代传统的逻辑状态表和逻辑电路图等硬件描述方法而成为主要的硬件描述工具。 Verilog HDL是工业和学术界的硬件设计者所使用的两种主要的HDL之一,另一种是VHDL。现在它们都已成为IEEE标准。两者各有特点,但Verilog HDL 拥有更悠久的历史、更广泛的设计群体,资源也远比VHDL丰富,且非常容易学习掌握。 Quartus简介: Quartus II 是Altera公司的综合性PLD/FPGA开发软件,支持原理图、VHDL、VerilogHDL 以及AHDL(Altera Hardware Description Language)等多种设计输入形式,内嵌自有的综合器以及仿真器,可以完成从设计输入到硬件配置的完整PLD设计流程。Quartus II可以在XP、Linux以及Unix上使用,除了可以使用Tcl脚本完成设计流程外,提供了完善的用户图形界面设计方式。具有运行速度快,界面统一,功能集中,易学易用等特点。Quartus II支持Altera的IP核,包含了LPM/MegaFunction宏功能模块库,使用户可以充分利用成熟的模块,简化了设计的复杂性、加快了设计速度。对第三方EDA工具的良好支持也使用户可以在设计流程的各个阶段使用熟悉的第三方EDA工具。此外,Quartus II 通过和DSP Builder工具与Matlab/Simulink相结合,可以方便地实现各种DSP应用系统;支持Altera的片上可编程系统(SOPC)开发,集系统级设计、嵌入式软件开发、可编程逻辑设计于一体,是一种综合性的开发平台。

基于FPGA的交通灯设计报告

合肥学院综合课程设计报告 题目:基于FPGA的交通灯设计 专业:电子信息工程 班级:09电子(2)班 姓名:周峰 导师: 成绩: 2012年12月11日

基于FPGA的交通灯设计 一:题目要求 1:主干道绿灯时,支干道红灯亮,反之亦然,两者交替允许通行。主干道每次放行40秒,支干道每次放行30秒。每次路灯亮,前10秒为左转灯亮,后5秒为黄灯亮。余下为直行灯亮、 2:能实现正常的倒计时显示功能。 3:能实现总体清零功能;计数器由初始状态开始计数,对应状态的指示灯亮。二:题目分析 1:在十字路口东西方向和南北方向各设一组左转灯、;显示的顺序为:左转灯绿灯黄灯红灯。 2:设计一个倒计时显示器。倒计时只显示总体时间。主干道左转灯、红灯、绿灯和黄灯亮的时间分别是10秒、30秒、25秒、5秒。支干道左转灯、红灯、绿灯和黄灯亮的时间分别是10秒、40秒、15秒、5秒状态表如表3-1所示:3 三:选择方案 1:方案一 在VHDL设计描述中,采用自顶向下的设计思路,该思路在自顶向下的VHDL 设计描述中,通常把整个设计的系统划分为几个模块,然后采用结构描述方式对整个系统进行描述。根据实验设计的结构功能,来确定使用哪些模块以及这些模块之间的关系。通过上面的分析,不难得知可以把交通灯控制系统划分为3个模块:时钟模块、控制模块、分频模块。 2:方案二 不采用方案一的分模块设计,直接用进程写程序。该程序由7个进程组成,进程P1将CLK信号分频后产生1秒信号,P2形成0-49的计数器,进程P3、P4用来控制的信号灯亮灭的,其中P5、P6产生数码管显示的倒数的十进制形式。进程P7实现状态转换和产生状态转换的控制信号,进而控制数码管显示。 由于方案一中使用进程会使程序变得很复杂,不易理解,所以我采用了方案二。

verilog_HDL交通灯控制电路

青岛农业大学 理学与信息科学学院 电子设计自动化及专用集成电路课程设计 报告 设计题目__________ 用状态机设计交通灯控制器___________ 学生专业班级_____ 通信工程2008级1班 _______________ 学生姓名(学号)孙鹏飞(20082715)_____________ 扌旨导教师________________ 刘金梅_____________________ 完成时间2011-9-9 ________________________ 实习(设计)地点工程楼405 __________________ 2011年9月9日

、课程设计目的和任务 课程设计目的:本次课程设计是在学生学习完数字电路、模拟电路、电子设 计自动化的相关课程之后进行的。通过对数字集成电路或模拟集成电路的模拟与 仿真等,熟练使用相关软件设计具有较强功能的电路, 提高实际动手,为将来设 计大规模集成电路打下基础。 课程设计任务:设计一个交通控制器,用 LED 显示灯表示交通状态,并以 7 段数码显示器显示当前状态剩余秒数 主干道绿灯亮时,支干道红灯亮;反之亦 然,二者交替允许通行,主干道每次放行 35s ,支干道每次放行25s 。每次由绿 灯变为红灯的过程中,亮光的黄灯作为过渡,黄灯的时间为 5s o 能进行特殊状 态显示,特殊状态时东西、南北路口均显示红灯状态。用 LED 灯显示倒计时,并 且能实现总体清零功能,计数器由初始状态开始计数,对应状态的显示灯亮。 二、分析与设计 1、设计任务分析 本次设计是针对十字路口,进行南北和东西直行情况下交通灯控制。 设定东 西方向为主干道方向,根据交通灯的亮的规则,在初始状态下四个方向的都为红 灯亮启,进入正常工作状态后,当主干道上绿灯亮时,支干道上红灯亮,持续 35S 后,主干道和支干道上的黄灯都亮启,持续 5S 后,主干道上红灯亮启,支 干道上绿灯亮启持续25S ,之后主干道和支干道上的黄灯都亮启 5s ,一个循环完 成。循环往复的直行这个过程。其过程如下图所示: 图1?交通灯点亮时间控制说明 2、设计方案论证 主干道方向 支干道方向

基于FPGA的交通灯设计(状态机)

基于FPGA的交通灯设计规范 一、功能描述: 本设计实现一个交通信号灯,具体功能如下: 1.异步信号复位,复位后1组为红灯亮2组为绿灯亮,数码管显示从24开始 依次递减计数 2.实现红黄绿灯的延时交替亮灭,分两组灯,1组红灯亮时,2组为黄灯,5 秒后,1组红灯亮,2组绿灯亮;25秒后,1组黄灯亮,2组红灯亮;5秒后,1组绿灯亮,2组红灯亮。如此交替重复 3.计时时间25秒、5秒显示在数码管上。分别为:从24依次递减到0,从4 依次递减到0 二、输入输出信号描述:

系统结构框图 顶层模块说明: 1、fenpin:将50MHz晶振转为1Hz作为时钟频率; 2、delay:计数延时; 3、state:指出状态转移顺序; 4、shuma:将计数延时用数码管输出显示。 设计说明: 设计分为分频、延时、状态机、数码管显示四个模块。分频,将50MHz的系统时钟转为1Hz。计数延时,让状态机能在合适的时间点进行状态切换。状态机,完成状态间的切换,输出。数码管显示,将延时模块的计时输出值转换为数码管输出显示。 状态机的输出状态信号标志flag=out[1]|out[4],即为:判断此时的两组输出是否有黄灯亮。flag_data=flag,作为计数延时模块的输入,用状态信号标志flag_data和计数值cnt来共同控制计数模块是5秒还是25秒。 四、子模块描述: 4.1、fenpin:分频模块 1、功能描述 将实验板上的50MHz的石英晶振频率转为1Hz。 2、管脚描述

每当clock时钟上升沿来临时,内部寄存器sum从0递加,加至25000000时,对clk进行取反操作,则可得到频率为1Hz的clk时钟 4.2、delay:延时模块 1、功能描述 计数延时,让状态机能在合适的时间点进行状态切换。 用计数值和状态信号标志的与结果(cnt==0 && flag_data)来判断计数延时的初始值应为24还是4 4.3、state:状态机模块 1、功能描述 完成状态间的切换,输出。 状态信号标志flag=out[1]|out[4]。即为检测当前是否有黄灯亮。 注:out[5:3]对应1组灯的:红黄绿 out[2:0]对应2组灯的:红黄绿 4.4、shuma:数码管显示模块 1、功能描述 将延时模块的计时输出值转换为数码管输出显示。

Verilog_HDL的交通灯控制器设计

交通信号灯控制器 课程设计报告 2015-2016学年第2学期 课程设计名称:电子综合设计EDA课程设计 院(系):电子信息学院 专业:电子信息工程班级:电子1313 姓名: xx 学号: 1310034303xx 综合实验时间: 2016/7/11-2016/7/15 指导教师:钟旭 提交时间: 2016/7/15

上海电机学院课程设计任务书

目录 第一章设计原理 (4) 1.1设计要求 (4) 1.2设计思路和原理 (4) 1.3实现方法 (4) 第二章Verilog HDL程序设计 (6) 2.1整体设计 (6) 2.2 具体设计 (7) 第三章仿真测试 (7) 3.1 波形仿真 (8) 第四章设计总结 (11)

第一章设计原理 1.1设计要求 设计一个交通控制器,用LED显示灯表示交通状态,并以7段数码显示器显示当前状态剩余秒数主干道绿灯亮时,支干道红灯亮;反之亦然,二者交替允许通行,主干道每次放行35s,支干道每次放行25s。每次由绿灯变为红灯的过程中,亮光的黄灯作为过渡,黄灯的时间为5s。能进行特殊状态显示,特殊状态时东西、南北路口均显示红灯状态。用LED灯显示倒计时,并且能实现总体清零功能,计数器由初始状态开始计数,对应状态的显示灯亮。能实现特殊状态的功能显示。[1] 1.2设计思路和原理 (1) 主、支干道用传感器检测车辆到来情况,实验电路用逻辑开关代替。 (2) 选择1HZ时钟脉冲作为系统时钟。 (3) 45s、25s、5s定时信号可用顺计时,也可用倒计时,计时起始信号由主控电路给出,每当计满所需时间,启、闭三色信号灯,并启动另一计时电路。 (4) 交通灯状态变化如表1及图1所示: 表1 交通灯状态图

相关主题
文本预览
相关文档 最新文档