FPGA设计方案
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
FPGA课程设计
题目:全天候温度纪录仪的设计与FPGA实现
姓名:
学号:
院系:信息科学与工程学院
专业:计算机技术
摘要
本设计有效的克服了传统的数字温度计的缺点,采用自上而下的设计思路,绘制出了系统结构流程图,最后又在硬件上通过对其进行调试和验证。基于FPGA在Quartus II13.0软件下应用Verilog HDL语言编写程序,采用ALTRA公司Cyclone- IV系列的EP4CE40F23I7 芯片进行了计算机仿真,并给出了相应的仿真结果。该电路能够实现很好的测温功能。
关键字:数字温度计;FPGA;Quartus II130.;Verilog HDL;EP4CE40F2317
Abstract
This design effectively overcomes the traditional digital thermometer’s wea knesses and takes a top-down approach to design flow chart of system, and fi nally pass the circuits to the hardware to debug and verify it. This design is b ased on FPGA using Verilog HDL language to write program in Quartus II sof tware, adopting EP4CE40F23I7 chip of Cyclone- IV series of ALTRA company for computer simulation and at the same time showing the corresponding sim ulation result. This circuit is able to carry out excellent temperature- measurem ent function.
KeyWords:Digital thermometer;FPGA;Quartus II 13.0;Verilog HDL ;EP4CE40F2317
目录
一、设计要求 (1)
1.1 设计题目 (1)
1.2 选题背景 (1)
1.3 设计要求: (1)
二、系统设计 (2)
2.1 系统设计图 (2)
2.2 系统设计说明 (2)
三、硬件设计 (2)
3.1 FPGA简介 (3)
3.2 LCD1602液晶显示 (5)
3.3 DS18B20温度传感器 (7)
3.4 AT24C02读写模块 (9)
3.5 按键模块设计 (10)
四、软件设计 (11)
4.1 Quartus II软件介绍 (11)
4.2 系统架构图 (12)
4.3 系统控制器 (12)
4.4 系统调试 (13)
五、代码附录 (13)
5.1 顶层模块 (13)
5.2 LCD驱动部分代码 (15)
5.3 DS18B20驱动模块 (17)
全天候温度纪录仪的设计与FPGA实现
一、设计相关
1.1 设计题目
全天候温度纪录仪的设计与FPGA实现
1.2选题背景
当今电子产品正向功能多元化,体积最小化,功耗最低化的方向发展。它与传统的电子产品在设计上的显著区别是大量使用大规模可编程逻辑器件,使产品的性能提高,体积缩小,功耗降低同时广泛运用现代计算机技术,提高产品的自动化程度和竞争力,缩短研发周期。FPGA开发技术正是为了适应现代电子技术的要求,吸收众多学科最新科技成果而形成的一门新技术。基于Verilog HDL语言的设计开发更是灵活多变,容易上手,方便开发人员开发新产品。
时代在发展,人们的物质生活水平在不断提高,新产品、新技术层出不穷,电子技术的发展更是日新月异。可以毫不夸张的说,电子技术的应用无处不在,电子技术正在不断地改变我们的生活,改变着我们的世界。一个方便实用的温度计对于大众来说更是生活中不可或缺的一件产品。
美国ALTERA公司的可编程逻辑器件采用全新的结构和先进的技术,加上最新的QUARTUS开发环境,更具有高性能,开发周期短等特点,十分方便进行电子产品的开发和设计本节将从FPGA嵌入式应用开发技术与温度计发展的客观实际出发,通过对该技术发展状况的了解,以及课题本身的需要,指出研究基于FPGA的芯片系统与设计——全天候温度记录仪的设计与实现的必要性。
1.3 设计要求
本设计要求设计一个温度计,通过温度传感器(DS18B20)周期的测量温度数据,同时将数据存储在EEPROM AT24C02中,在需要读取数据温度纪录时,
读出温度纪录至板载LCD(1602)液晶显示器显示。
二、系统设计
2.1 系统设计图
图2-1 系统设计图
2.2 系统设计说明
本设计是基于FPGA的温度记录仪,整体系统设计如下,首先由FPGA控制器驱动DS18B02温度传感器对当前温度进行周期性采集,并且对采集到的数据进行处理,然后存入EEPROM AT24C02只读存储器,最后利用LCD1602液晶显示屏进行显示。同时本系统通过向用户提供按键,方便用户读取历史温度记录。
三、硬件设计
3.1FPGA简介
3.1 1 FPGA芯片的介绍
FPGA是现场可编程门阵列(Field Programmable Gate Array)的简称,与之相应的CPLD是复杂可编程逻辑器件(Complex Programmable Logic Device)的简称,两者的功能基本相同,只是实现原理略有不同,所以有时可以忽略这两者的区别,统称为可编程逻辑器件。
3.12 FPGA基本结构
FPGA具有可编程门阵列的通用结构,它由逻辑功能块排成阵列,并由可编程的互连资源连接这些逻辑功能块来实现不同的设计。
FPGA一般由3种可编程电路和一个用于存放编程数据的静态存储器SRAM 组成。这3种可编程电路是:可编程逻辑模块、输入/输出模块(IOB--I/O Block)和互连资源。可编程逻辑模块CLB是实现逻辑功能的基本单元,它们通常规则的排列成一个阵列,散布于整个芯片;可编程输入/输出模块(IOB)主要完成芯片上的逻辑与外部封装脚的接口,它通常排列在芯片的四周;可编程互连资源包括各种长度的连接线段和一些可编程连接开关,它们将各个CLB之间或CLB、IOB之间以及IOB之间连接起来,构成特定功能的电路。
(1) CLB是FPGA的主要组成部分。图3-1是CLB基本结构框图,它主要由逻辑函数发生器、触发器、数据选择器等电路组成。CLB中3个逻辑函数发生器分别是G、F和H,相应的输出是G’、F’和H’。G有4个输入变量G1、G2、G3和G4;F也有4个输入变量F1、F2、F3和F4。这两个函数发生器是完全独立的,均可以实现4输入变量的任意组合逻辑函数。逻辑函数发生器H有3个输入信号;前两个是函数发生器的输出G’和F’,而另一个输入信号是来自信号变换电路的输出H1。这个函数发生器能实现3输入变量的各种组合函数。这3个函数发生器结合起来,可实现多达9变量的逻辑函数。
CLB中有许多不同规格的数据选择器(四选一、二选一等),通过对CLB 内部数据选择器的编程,逻辑函数发生器G、F和H的输出可以连接到CLB输出端X或Y,并用来选择触发器的激励输入信号、时钟有效边沿、时钟使能信号以及输出信号。这些数据选择器的地址控制信号均由编程信息提供,从而实现所