搜档网
当前位置:搜档网 › 基于FPGA芯片的最小系统设计

基于FPGA芯片的最小系统设计

基于FPGA芯片的最小系统设计
基于FPGA芯片的最小系统设计

黑龙江大学本科生

毕业论文(设计)档案编码:

学院:电子工程学院

专业:电子信息工程

年级:2007

学生姓名:王国凯

毕业论文题目:基于FPGA 的电梯自动控制

系统设计

摘要

本文在介绍了在当前国内外信息技术高速发展的今天,电子系统数字化已成为有目共睹的趋势。从传统的应用中小规模芯片构成电路系统到广泛地应用单片机,直至今天FPGA 在系统设计中的应用,电子设计技术已迈人了一个全新的阶段。FPGA 利用它的现场可编程特性,将原来的电路板级产品集成为芯片级产品,缩小体积,缩短系统研制周期,方便系统升级,具有容量大、逻辑功能强,提高系统的稳定性,而且兼有高速、高可靠性。越来越多的电子设计人员使用芯片进行电子系统的设计,通过基于FPGA 电梯系统开发设计,说明了FAPG 芯片研究的动机和研究意义。

关键词

FPGA;电梯系统;FLEX10K;JTAG;模块设计

Ab s t ract

This paper introduces the rapid development of information technology around the world today. Digitalized electronic systems have become the trend. From the traditional application of small and medium-chip circuitry to Microcontroller and FPGA application in system design, electronic design technology is stepping into a new field. By using its field programmable features, FPGA changes the original circuit board-level products to the chip-level integration products. Now FPGA has advantages of reduced the size, shorten development cycle, facilitated in system upgrades, highly capacity, strong logic functions, stable system and high speed. More and more electronic designers use FPGA to design electronic systems. This paper shows the motivation and significance of designing by FPGA through the elevator FPGA system design.

Ke ywo r d

FPGA; Mini-System; FLEX10K; JTAG;Module design

目录

摘要......................................................................................... I ABSTRACT .................................................................................. II

第一章引言 (1)

1.1 FPGA 的简述 (1)

1.2 研究的背景及意义 (1)

1.3 本课题主要研究工作 (1)

1.4 本章小结 (2)

第二章FPGA 基本知识 (3)

2.1 FPGA 的诞生 (3)

2.2 FPGA 的发展与现状 (3)

2.3 FPGA 的结构特性 (3)

2.3.1 FPGA 的优点 (4)

2.3.2 FPGA 的缺点 (5)

2.4 FPGA 的分类 (5)

2.5 本章小结 (7)

第三章Altera 可编程逻辑器件 (8)

3.1 Altera 产品概述 (8)

3.2 FLEX10K 系列 (8)

3.2.1 FLEX10K 系列概述 (8)

3.2.2 FLEX10K 系列器件性能 (8)

3.2.3 FLEX10K 系列器件电源设计 (9)

3.3 Quartus II 软件部分 (10)

3.3.1 Quartus II 软件功能说明 (10)

3.3.2 Quartus II 软件使用设置 (11)

3.3.3 FLEX10K 系列器件下载设计 (13)

3.4 本章小结 (14)

4.1 Altium Designer 6.0 主要特点 (15)

4.2 扩展电路原理图设计 (16)

4.2.1 复位和晶振电路原理图设计 (16)

4.2.2 蜂鸣器电路原理图设计 (17)

4.2.3 开关电路原理图设计 (17)

4.2.4 显示模块电路原理图设计 (18)

4.3 基本电路原理图设计 (21)

4.3.1 USB 接口供电电路原理图设计 (21)

4.3.2 JTAG 模式配置电路原理图设计 (22)

4.3.3 最小系统接口电路原理图设计 (23)

4.3.4 D 型并口下载线电路原理图设计 (23)

4.3.5 最小系统电路设计的总体电路原理图 (24)

4.4 最小系统电路PCB 板设计 (25)

4.4.1 PCB 板设计总体电路的工作流程 (25)

4.4.2 最小系统总体电路原理图设计 (25)

4.4.3 最小系统下载线电路原理图设计 (26)

4.5 最小系统电路实物图 (27)

4.5.1 最小系统总体电路实物图 (27)

4.5.2 下载线电路实物图 (29)

4.6 本章小结 (29)

第五章测试结果与分析 (30)

5.1 调试过程 (30)

5.1.1 八位LED 显示调试 (30)

5.1.2 四位七段数码管显示调试 (31)

5.1.3 LCD 显示调试 (31)

5.1.4 蜂鸣器调试 (31)

5.2 调试结果 (32)

5.2.1 LED 流水灯调试结果 (32)

5.3 调试结果分析 (33)

5.4 本章小结 (33)

结论 (34)

参考文献 (35)

附录 (37)

附录1 ................................................................................... 37 附录2 .. (40)

致谢 (44)

第一章引言

1.1 FPGA 的简述

FPGA[1-30] 是英文Field Programmable Gate Array 的缩写,即现场可编程门阵列。FPGA 利用它的现场可编程特性,将原来的电路板级产品集成为芯片级产品,缩小体积,缩短系统研制周期,方便系统升级,具有容量大、逻辑功能强,提高系统的稳定性的同时兼有高速、高可靠性。可以在数字系统设计中完全由用户通过软件进行配置和编程,从而完成某种特定的功能。

1.2 研究的背景及意义

20 世纪70 年代,出现了基于与或阵列的可编程逻辑器件(简PLD:Programmable Logic Device)[16-31]。这种可编程逻辑器件的结构简单,由它实现的逻辑电路都具有高速的性能,但是只能实现用少量的乘积项来表示小规模逻辑电路。如果乘积项增加,它们的连线结构会变得十分庞大以至于无法实现。1984 年,Altera 公司采用CMOS 的EPROM 工艺研制了首块可擦写的可编程逻辑器件(称为 EPLD),它可用紫外线擦除并重复编程。1985 年Lattice 公司用EEPROM 工艺研制出电可擦除的可编程逻辑器件 GAL(通用逻辑阵列),它具有设计灵活、高速、低功耗、改写迅速方便的特点,成为当时的一种常用工业标准器件之一。对于可编程器件的另一个分支,Xilinx 公司于1985 年推了首块现场可编程门阵列FPGA。它结合了PLD 的可编程性和掩膜可编程门阵列(MPGA)的通用连线结构,使得可编程器件具有较高的逻辑密度。其后,各公司又相继推出了各种功能强劲的FPGA 系列产品。

FPGA 解决了定制电路的不足,同时克服了原有可编程器件门电路数有限的缺点。在当今数字系统设计的主要硬件平台中,其主要特点就是完全由用户通过软件可以反复进行配置和编程,完成用户所需要的特定功能,缩短了系统设计的周期,提高了实现的灵活性并降低了成本,因此FPGA 备受广大学者和开发人员的喜爱。这可编程逻辑特性也使可编程器件在集成电路设计原型验证以及软硬件协同设计等相关领域得到广泛的应用。

1.3 本课题主要研究工作

本课题主要研究的内容是设计一款基于FPGA 芯片的最小系统,一开始通过翻阅很

多有关FPGA 的资料,对FPGA 有了更深刻的了解,根据所学到的知识去设计原理图,原

理图设计好以后就开始绘制PCB,将绘制好的PCB 版图发给制板公司印制,手工把元器件焊接到电路板上,再对做好的实物进行编程运行,测试最小系统是否可以正常运行,测试过程中系统板的各个模块的工作一切正常,本课题设计结束。

我们要研究的是Altera 公司推出的一款FLEX10K 系列芯片,通过学习该芯片的工作原理和使用特性,设计一个基于FLEX10K 芯片的最小系统,通过对该最小系统的设计让大家能够更好的了解FPGA,并对其产生浓厚的兴趣,为更多想要了解学习FPGA 的人们做个很好的开头。

1.4 本章小结

本章主要介绍了FPGA 是现场可编程门阵列,简述课题的相关内容及相关背景知识,最后介绍了该课题的主要研究工作,了解本课题的设计环节和进行的过程,使课题研究的目的更明确,思路更清晰。

第二章FPGA 基本知识

2.1 FPGA 的诞生

1984 年,在硅谷工作的 Bernie Vonderschmitt、Ross Freeman 和Jim Barnett 共同构建了一个设想,他们梦想创立一家不同于一般的公司。他们希望创建一家在整个新领域内开发和推出先进技术的公司。并且,他们还希望以这种方式领导它:在这里工作的人们热爱他们的工作、享受工作的乐趣,并对他们所从事的工作着迷[23-31]。

2009 年2 月18 日,Ross Freeman 因他的这项发明——现场可编程门阵列(FPGA) 而荣登2009 美国发明家名人堂Freeman 先生的发明是一块全部由“开放式门”组成的计算机芯片,其专利号为4,870,302。采用这种芯片,工程师可以根据需要进行编程,添加新的功能,满足不断发展的标准或规范要求,并可在设计的最后阶段进行修改。2.2 FPGA 的发展与现状

FPGA 出现后立即受到世界范围内电子设计工程师的普遍欢迎,并得到迅速发展。FPGA 不断向新市场渗透,并继续成为电子系统的核心。根据In-Stat 报告,全球FPGA 交货值将从2005 年的19 亿美元增长到2010 年的27.5 亿美元[25],其中大部分将来源于小批量交货。最大的最终用户细分市场将是通信业和工业。

FPGA 市场实力的增长有两个因素:它们比PLD 有更高的密度和性能,因而它们能实现更多的功能,而其它替代品(例如ASIC 和ASSP)的成本则在多数情况下过于昂贵。目前世界各著名半导体器件公司,如Xilinx[7][8][15]、Altera[1-6][9]、Actel[10][12]等公司, 均可提供不同类型的FPGA 产品。Xilinx 公司生产的FPGA 从最初的几千个可利用门发展到现在已达千万个可利用门。系统内可编程技术、边界扫描技术的出现也使器件在编程技术和测试技术及系统可重构技术方面有了很快的发展。众多公司的竞争促进了可编程集成电路技术的提高,使其性能不断完善,产品日益丰富。可编程逻辑器件将在结构、密度、功能、速度和性能等各方面得到进一步发展,并在现代电子系统设计中得到更广泛的应用。

2.3 FPGA 的结构特性

对于PROM、EPROM、E2PROM[4-18]这些可编程器件的可编程原理是通过加高压或紫外线导致三极管或MOS 管内部的载流子密度发生变化,实现所谓的可编程,但是这些器

件或只能实现单次可编程或编程状态难以稳定。FPGA 则不同,它采用了逻辑单元阵列

LCA(Logic Cell Array) 这样一个新概念,内部包括可配置逻辑模块 CLB(Configurable Logic Block)、输出输入模块IOB(Input Output Block) 和内部连线(Interconnect) 三个部分。

FPGA 的可编程实际上是改变了CLB 和IOB 的触发器状态,这样,可以实现多次重复的编程由于FPGA 需要被反复烧写,它实现组合逻辑的基本结构不可能像ASIC 那样通过固定的与非门来完成,而只能采用一种易于反复配置的结构。查找表可以很好地满足这一要求,目前主流FPGA 都采用了基于SRAM 工艺的查找表结构,也有一些军品和航天级FPGA 采用 Flash 或者熔丝与反熔丝工艺的查找表结构。通过烧写程序文件改变查找表内容的方法来实现对FPGA 的重复配置,来实现一定要求的功能

2.3.1FPGA 的优点

①上市时间短;②成本高效的设计及验证方法;③可重复编程性

上市时间短是FPGA 的一个最大优点。在ASIC 设计方法中,即使已经得到了目标系统的一个验证过的最终设计方案,也要花费几个月甚至1 年的时间来生产实现系统的实际芯片。与ASIC 不同,使用FPGA,一旦我们有了对于一个系统的有效设计,最终芯片可以通过可编程逻辑单元及互连单元的配置在一天内生产出来。最终用户无需第三方供应商的任何帮助就可完成FPGA 的制作。这种“非定制”的设计方法使得产品能以比用ASIC 方法制作短得多的周期时间进入市场。另一方面,这种短时间上市的优点让FPGA 设计软件承担了很大的压力。为了达到产品的快速周期时间,FPGA 设计软件必须能快速地将HDL(硬件描述语言)描述编辑成配置比特流。

高效的设计及验证是“非定制”FPGA 设计方法的另一直接成果。随着半导体制造技术的进步,硅器件的单位面积制造成本迅速降低,FPGA 厂商不断采用新工艺使得FPGA 的单片价格不断下降。相反随着设计复杂性的增加,ASIC 的开发费用逐渐增加,由于FPGA 设计系统不需要任何定制的掩模制造,所以就没有相应的工装费用。随着技术进步,由于生产设备越来越先进,ASIC 的起动费用持续走高而FPGA 起动费用近似不变。FPGA 和ASIC 的交叠容量也不断增长,这使得FPGA 在越高的容量越能高效的利用成本。就系统测试和验证而言,使用FPGA 的设计者比ASIC 设计者有更多的自由度和灵活性。考虑到实体制造成本,ASIC 设计必须花费很多成本在时序仿真上以在生产阶段之前保证设计的正确性。FPGA 设计在一个较小风险下工作。首先,由于FPGA 的

可再编程性,任何在设计中发现的缺陷都可以不用附加成本进行修正。其次,用以FPGA 设计好的芯片对整个系统进行在线测试是可行的。因此,整个系统可以全速运行并且时

间精确。比纯粹基于仿真的检验方法更彻底地排除可能的系统错误。

在当前市场上可能得到的大多数FPGA-基于SRAM 或基于EPROM 可以提供可再编程性。这种可再编程性在减少产品的生命周期成本上是十分重要的。另一方面,由于产业动态在快速地变化,新产品在较短时间内达到大容量,这时生命周期逐渐变得更短。更糟的是,由于缺乏工业标准,有时一个简单的产品需要多次实现。在这种情况下,可再编程为系统设计者提供了巨大的灵活性。一个VLSI 设计者在通过现场已配置好的系统中重新配置FPGA 能够以最小的成本自由地修改现存的设计或彻底重新设计一个产品。

2.3.2FPGA 的缺点

①低逻辑密度;②低电路速度

逻辑密度是指在芯片上能配置的逻辑数。由于FPGA 必须提供可编程性,因此有相当大的面积惩罚。可编程电路单元为逻辑设计者提供了很大的灵活性用以实现任意的逻辑功能及线网模式。但同时,这些可编程电路单元比 ASIC 定制的电路单元占据更大的空间,特别是在一个固定FPGA 面积中留下较少的空间用以实现有用的电路逻辑。当前的FPGA 结构研究揭示:在一个简单的FPGA 中,逻辑面积仅占可编程互连面积的10%。由于这一有限的逻辑容量,为了实现完全的逻辑功能,相比于ASIC 技术FPGA 需要具有更高逻辑容量的芯片。实现一个系统需要多重FPGA 是十分普遍的。在一个FPGA 中使用额外的逻辑单元或布线资源的边际成本为0,但是如果设计与单个硬模不匹配则成本会快速增加。因此,有限的逻辑容量成为在显著增长的系统成本中的一个主要因素。

相对较慢的电路速度是FPGA 技术的另一个众所周知的缺点。FPGA 的连接线路由可编程互连点(PIP)及线网段构成。除金属线网段的寄生电阻、电容之外,每个可编程互连点也包含电阻及电容,这导致较长的信号传播延迟。不幸的是,在FPGA 设计中,来自这些可编程互连点的扩大的延迟决定着线网互连延迟(即,布线延迟),而布线延迟是远远超过逻辑延迟的。因此这些可编程互连单元虽然提供了设计灵活性但也是FPGA 设计低效的首要因素。

2.4 FPGA 的分类

按照互连线编程工艺,即它们制作的基本方法,FPGA 可分为三类:基于SRAM

型、反熔丝型及基于EPROM/EEPROM 型。

基于SRAM 型:可编程互连线由一个传输晶体管(或传输门)及一个控制它们的

SRAM 比特构成(图2-1)[23],由存储在RAM 单元中的比特值决定传输晶体管是开还是关。这一技术的优点是1)通过简单地下载一批新RAM 位单元值就可以实现在线电路的重新配置;2)可以用标准的CMOS(互补型金属氧化物半导体)技术生产。然而,由于每个SRAM 位单元需要至少5 个晶体管,相比其他方法需要的面积大的多。而且由于SRAM 的挥发特性,使其需要借助外部电源以维持数据,且操作上需由外部进行数据下载。应用于实际产品上时,往往需要搭配另一个专用的ROM 将程序永久保存,并且在每次系统启动时,也必须花费许多时间将程序从外部的ROM 读到FPGA 的SRAM 中,对程序的保密性造成不良的影响。

图2-1互连线编程工艺S R A M型

反熔丝型:反熔丝是具有通孔(或接触孔)大小的一次可编程单元)在编程前,反熔丝具有高阻抗相当于“未连接”(图2-1)[23]。一旦编程后,反熔丝熔断并在终端之间建立一个低阻抗连线。此技术的优点为:

1)所需面积比开关晶体管小的多;

2)它产生了相当低的R-C 线路延迟,这是由于熔丝上的电阻及电容较低。主要缺点是一次可编程性,即一旦FPGA 配置形成一个设计,就不可能将FPGA 重新用于不同的设计。

图2-2互连线编程工艺反熔丝型

基于EPROM/EEPROM 型:与EPROM 存储器中所采用的方法相同。EP ROM单元通过浮栅电荷注入而起作用(图2-1)[23]。一个EPROM 的晶体管由两个栅组成:一个浮栅及一个选择栅。在非编程状态下通过控制选择栅,晶体管打开。然而,当晶体管流过大电流编程时,它永久关闭而对其选择门上的信号没有响应。这一技术的优点是它可再编程而不需要额外存储配置的位。并且其开关所需面积比SRAM 开关少的多。然而,与

SRAM FPGA 不同的是:EPROM/EEPROM FPGA 是非在线可再编

程。

图2.3互连线编程工艺E P R O M型

2.5 本章小结

本章详细介绍了FPGA 的发展历史及发展现状,小篇幅地阐述了FPGA 的结构特点,

更为详细的举例说明FPGA 具有众多优点的同时所存在的缺点,最后叙述按照互联线工艺来把FPGA 划分为三个类。

第三章Altera 可编程逻辑器件

3.1 A lt er a产品概述

Altera[1-9]在20 世纪90 年代以后发展很快,是最大的可编程逻辑器件供应商之一,总部位于美国硅谷圣侯赛,其主要产品有属于EPLD 的MAX3000/5000/7000/9000 和Classic 系列,属于FPGA 的FLEX6K/8K/10K、APEX20K、ACEX1K、APEX、Mercury、Excalibur 和Stratix 系列。有的资料将Altera 产品都归类为 CPLD。

Altera 的开发工具MAX+PLUSⅡ被普遍认为是最优秀的PLD 开发平台之一,可以开发除APEX20K、APEXⅡ、Mercury、Excalibur 和Stratix 系列以外的该公司所有EPLS/FPGA 器件。APEX20K、APEXⅡ、Mercury、Excalibur 和Stratix 系列器件有Altera 的 Quartus 开发软件支持。

3.2 FLEX10K 系列

3.2.1FLEX10K 系列概述

FLEX10K 是工业界第一个嵌入式的可编程逻辑器件,采用可重构的CMOS SARM 工艺,把连续的快速通道互连与独特的嵌入式阵列结构相结合,同时也结合了众多可编程器件的优点来完成普通门阵列的宏功能。由于其具有高密度、低成本、低功率等特点,所以脱颖而出成为点进Altera PLS 中应用最好的器件系列。集成度已达到25 万门。它能让设计人员轻松地开发出集存储器、数字信号处理器及特殊逻辑包括32 为多总线系统等强大功能于一体的芯片。到目前为止,已经推出了FLEX10K、FLEX10KA、KFLEX10KV、FLEX10KE 等分支系列。

FLEX10K 结构类似于嵌入式门阵列,是门阵列市场中成长最快的器件。像便准门阵列一样,嵌入式门阵列采用一般的门海结构实现普通逻辑。因此,在实现大的特殊逻辑时会有潜在的死区。与标准门阵列相比,嵌入式门通过在硅片中嵌入逻辑块的方法来减少死区,提高速度。然而,典型的嵌入式宏功能模块通常是不能改变的,这就限制了设计人员的选择。相反,FLEX10K 器件是可编程的,在调试时它允许设计人员全面控制嵌入式宏功能模块和一般的逻辑,可以方便地反复修改设计。

3.2.2 FLEX10K 系列器件性能

FLEX10K 系列器件拥有突出的性能特点,如表 3-1 所示。

表 3-1 FLEX10K 系列典型器件性能对照表

阵列和实现普通功能的逻辑阵列,可提供可编程单芯片系统SOPC 集成。

(2)高密度:1 万~两万个可用门。高达40960 位内部RAM 所有这些都可在不减少逻辑能力的轻快下使用。

(3)系统级特点:支持多电压接口;在FLEX10KA 器件中允许输入的引脚电压为5.0V,在FLEX10KB 器件中允许输入的引脚电压为3.3V 和5.0V;低功耗;遵守PCI 总线规定;内带JTAG 边界扫描测试电路;器件采用先进的工艺制造并可在 2.5V、3.3V、5.0V 电源电压下工作。所有器件都 100%经过功能测试。

(4)灵活的内部连接;快速、可预测连线延时的快速通道连续式不限结构;实现快速加法器、计数器和比较器的专用进位链;实现高速、多输入逻辑函数的专用级联接;实现内部三态总线的三态模拟;多的六个全局时钟信号和四个全局清除信号。

(5)强大的 I/O 引脚功能:每个引脚都有一个独立的三态输出时能控制及漏极开路配置选项;可编程输出电压的摆率控制,可以减少开关噪声。FLEX10KA、FLEX10KE、FLEX10KS 器件支持热插拔。

(6)多种封装方式:用户可任意选择84~500 引脚的各种封装。封装形式有PLCC、TQFP、PQFP、RQFP、PGA、BGA 等,同一种封装中的各种FLEX10K 系列器件的引脚相兼容。

3.2.3 FLEX10K 系列器件电源设计

在设计大规模FPGA 开发板电源时,开发者要在系统整体方案的成本,电路板面积

相关主题