FPGA开发全攻略(PDF)

所需积分/C币:47 2011-11-27 22:30:04 8.49MB PDF
收藏 收藏
举报

第一章、为什么工程师要掌握FPGA开发知识? 5 第二章、FPGA基本知识与发展趋势 7 2.1 FPGA结构和工作原理 7 2.1.1 梦想成就伟业 7 2.1.2 FPGA结构 8 2.1.3 软核、硬核以及固核的概念 15 2.1.4 从可编程器件发展看FPGA未来趋势 15 第三章、FPGA主要供应商与产品 17 3.1.1 赛灵思主要产品介绍 17 第四章、FPGA开发基本流程 29 4.1 典型FPGA开发流程与注意事项 29 4.2 基于FPGA的SOC设计方法 32 基于FPGA的典型SOC开发流程为 32 第五章、FPGA实战开发
FPGA开发全攻略——工帅创新设计宝典 上册基础篇 目录 前言 +-· 第一章、为什么工程师要掌握FPGA开发知识? 第二章、FPGA基本知识与发展趋势 21FPGA结构和工作原理 2.1.1梦想成就伟业·…… 中··· 257778 2.1.2FPCA结构·……… 2.1.3软核、使核以及固核的概念· 15 2.1.4从可编程器件发展看FPCA未来趋势 15 第三章、FPGA主要供应商与产品 17 3.1.1赛灵思主要产品介绍 第四章、FPGA开发基本流程 41典型FPCA开发流程与注意事项 29 42基于FPGA的SOC设计方法 …32 基于FPGA的典型SOC开发流程为 32 第五章、FPGA实战开发技巧 51FPGA器件选型常识 33 5.1.1器件的供货渠道和开发工具的支持 33 5.12器件的硬件资源 …33 513电气接口标准 ∴34 5.1.4器件的速度等级·…………… 35 5.15器件的温度等级 35 5.1.6器件的封装·…… 5 5.17器件的价格 5.2如何进行FPGA设计早期系统规划 ……36 5.3.综合和仿真技巧 ………37 5.3.1综合工具XST的使用 5.32基于ISF的仿真 533和PGA接口相关的设置以及时序分析 45 534综合高手揭秘XST的11个技巧·… 51 54大规模设计带来的综合和布线问题 52 5.5FPGA相关电路设计知识.…… 54 FPGA开发全攻略——工帅创新设计宝典 上册基础篇 551配置电路 54 552主串模式一—最常用的FPGA配置模式·…… ··· 56 5.53SP串行 FlashI置模式 ··4 58 5.54从串置模式·……… 62 5.55JTAC配置模式 63 556 System ACE配置方案. 5.6大规模设计的调试经验… …68 56 Chip scope pro组件应用实例…… 68 57FPGA设计的P和算法应用 …74 5.7.1IP核综述.…… 74 572 FFT IP核应用示例 75 58赛灵思卜PGA的专用HDL开发技巧 ;香 ·+“+·垂垂 581赛灵思FPGA的体系结构特点 582赛灵思FPGA芯片专用代码风格 ……79 ISE与EDK开发技巧之时序篇 510新一代开发工具 SE Design suit10.1介绍 85 510.1 ISE Design Sui0.1综述 85 5.102 ISE Design suit0.1的创新特性:… 85 5.I1IS与第三方软件的配合使用技巧 …92 5111 Synplify pro软件的使用 5112 Modelsim件的使用 5.11.3 Synplify pro、 Modelsim和ISE的联合开发流程· 104 5.114ISE与 MATLABI的联合使用·……………… ∴∴∴105 5.12征服FFGA低功耗设计的三个挑战 108 5.13高手之路—FPGA设计开发中的进阶路线·… 附录一、FPGA开发资源总汇 ……………112 附录二、编委信息与后记 ……11 附录三、版权声明… 114 FPGA开发全攻略——工帅创新设计宝典 上册基础篇 第一章、为什么工程师要掌握FPGA开发知识? 作者:张国斌、田耘 2008年年初,某著名嵌入式系统「公司为了帮助其产品售后工程师和在线技术支持工程师更好的理解其 产品,举行了ASC/FPGA基础专场培训.由于后者因为保密制度而只能接触到板级电路图和 LAYOUT,同时 因ASC/FPGA都是典型的SoC应用,通常只是将AS| C/FPGA当作黑盒来理解,其猜测性读图造成公司与外部 及公司内部大量的无效沟通.培训结束后,参与者纷纷表示ASC/PGA的白盒式剖析极大提高了对产品的理解, 有效解决了合作伙伴和客户端理解偏异性问题,参加培训的工程师小L表示:“FPGA同时拥有强大的处理功能 和完全的设计自由度,以致于它的行业对手ASC的设计者在做 wafer fabrication之前,也大量使用FPGA来做 整个系统的板级仿真,学习FPGA开发知识不但提升了我们的服务质量从个人角度讲也提升了自己的价值。” 实际上,小L只是中国数十万FPGA开发工程师中一个缩影,目前,随着FPGA从可编程逻辑芯片升级为 可编桯系统级芯片,其在电路中的角色已经从最初的逻辑胶合延伸到数字信号处理、接口、高密度运算等更广 阔的范围,应用领域也从通信延伸到消费电子、汽车电子、工业控制、医疗电子等更多领域,现在,大批其他 领域的工程师也像小L一样加入到FPGA学习应用大军中。未来,随着FPGA把更多的硬核如 PowerPC处 理器等集成进来,以及采用新的工艺将存储单元集成,FGA越来越成为一种融合处理、存储、接口于一体的 超级芯片,“FPGA会成为一种板级芯片,未来的电子产品可以通过配置FFGA来实现功能的升级,实际上,某 些通信设备厂商已经在尝试这样做了。”赛灵思公司全球资深副总裁汤立人这样指出。可以想象,未来,FPGA 开发能力对工程师而言将成为类似C语言的基础能力之一,而对这样的发展趋势,你还能简单地将FPGA当成 一种逻辑器件吗?还能对FPGA的发展无动于衷吗? 电子产品设计趋势的变化 自电子产品诞生之日起,电子产品开发流程和方法就随着电子元器件的不断演进而变化,从最早的电子管 器件到晶体管再到集成电路,工程师在设计产品时,所采用的工具和方法都有所不同,但是总的来说贯穿电子 设计的统一思路是:使用印刷电路板上的分立、现成元件、迕接器或C创建物理平台实现所需要的功能。例如, 在60年代,如果要设计一个收音机,工程师必须通过在PCB板上通过晶体管、电阻、电容、电感、电线、滤 波器、极管等电路搭建岀—个物理平台,实现对RF信号的调谐、滤波、放大等,最后实现收音机的功能。集 成电路出现以后,一些分立器件被集成到一颗芯片上,但是总的设计思路没有变化,还是要在一个PCB板上通 过无源器件和C撚建出一个物理平台,实现信号的接收、处理和输出。但是,随着FPGA等可编程器件的诞生, 设计思路正发生着微妙的变化——随着更多功能从分立器件移到可编稈领域,各种不同的设计流程交汇刭了 起。现在,有效的电子设计是将板卡设计、可编程逻辑设计和软件开发融合在一起,未来,随着FPGA融合处 理、存储于一体,板卡没计将融合进可编程逻辑设计中,电子产品没计将演变为可编程逻辑设计和嵌入式软件 设计,那时,电子没计将更体现一种“软”设计,一种通过开发语言和工具实现的设计,而FPGA将成为这种 FPGA开发全攻略——工帅创新设计宝典 上册基础篇 软”设计的载体,以FPGA形式存在的低成本、大规模可编程器件可以随时随地获得,这使设计者有可能将所 有系统核心功能都转移刭软设计中,并利用这种设计的优势 这些“软”设计优势包括:更容易保护系统功能使其不被仿制或逆向工程,编程到设计中的“软”元素容易更新, 使设计过程更具连续性。好的工具所设计的软设计不依赖于事先指定的硬件平台。而且,设计可以在最终硬件 平台内继续进行,即使产品已经移交客户也仍然可行。即“软”设计将成为电子设计的发展方向。 另一点,现今及未来的电子产品都在追求智能化和个性化,智能化只能通过软件来实现,个性化呢,需要 工程师简单地修改就可体现不同的特色,另外也需要保护自己的设计不被仿制,要做到这点,也需要可编程器件。 每个工程师都希望自的产品永远与众不同。与众不同就是要让产品与竞争产品不一样,让购买者选择你的 产品而不选择竞争对手的产品。但是,怎么样才能在日益全球化的市场中保持与众不同呢? 不要再指望在硬件上能达到目的,因为现在几乎每个人都能获得同样的芯片。当现有物理硬件中实现的任 何功能受到市场的欢迎的同时,大量的仿制就出现了。 所以要将产品的区别建立在编程器件智能上,保护有价值的|P,并且使竞争对手很难对其进行逆向工程。 而且,即使硬件已经制造岀来,产品仍可以通过“软”设计进行创新并为产品增值,产品的成功就有了保障。 而这些,都离不开可编程器件。可编程器件是实现“软”设计的保障和载体。 电子设计工程师设计方法和设计内容在不断变化 电子设计工程师的设计方法和内容其实也在一直变化,电子管时代,设计工程师要掌握电子管的性能和设 计要点,晶体管时代,设计工程师要熟悉跟中电路的作用和搭建,集成电路诞生以后,设计工程师要熟悉C管 脚的作用和功能,而设计工具从最早的草稿图、软件辅助设计也发展到电子设计自动化工具(EDA软件),以 FPGA为代表的可编程器件诞生后,设计工程师不但要设计硬件电路吏要熟悉HDL、 Verilog等|C设计语言,此外, 还要熟悉接口、数字信号处理、算法、EDA设计方法学等等,电子工程师要学习的知识日益增多。 未来的硬件工程师是什么样的? 那么,未来的的硬件设计工程师是什么样的?或者说未来的硬件设计工程是怎样的?而巳这样说:以 VHDL或者 Verilog语言来表达设计意图、以FPGA做为硬件载体、以计算机为设计开发工具,以EDA软件为 开发环境、以SoC、P等为综合设计的方法,已经成为硬件设计工程的主要特征。可以预见,FPGA将成为未 来的硬件工程师必用的设计元素之一。 另外,FPGA在应用中的其他显著优势是可以减少BOM整合多个分立的数字器件(例如一个很小很便宜的 CPLD可以替换好几个74系列芯片)、降低PCB布线难度MGT/GTP等串行收发器将原本与需要三五十条线并 行数据线梦换为少量的串行线路)、可定制性(可以自己写代码来支持非标准的接口),可扩展性(可编稈易修 改方便升级)、加速面市时间(只需关心功能实现,不需要再花时间制成专用|C)等,这样FPGA带给设计的公 司的好处已经不是从成本体现了,它可以大幅度提升开发的效率 综上所述,我们就明白为什么工程师要掌握FPGA开发知识了,希望杰书有助于大家了解和掌握FPGA开发。 FPGA开发全攻略—工酲帅创新设计宝典 上册基础篇 第二章、FPGA基本知识与发展趋势 FPGA是英文 Field Programmable Gate Array的缩写,即现场可编程门阵列,它是在PAL、GAL、CPLD 等可编程器件的基础上进一步发展的产物。它是作为专用集成电路(ASC)领域中的一种半定制电路而出现的, 既解决了定制电路的不定,又克服了原有可编程器件门电路数有限的缺点。它是当今数宁系统设计的主要硬件 平台,其主要特点就是完全由用户通过软件诖行配置和编程,从而完成某种特定的功能,且可以反复擦写。在 修改和升级时,不需额外地改变PCB电路板,只是在计算机上修改和更新程序,使硬件设计工作成为软件开发 工作,缩短了系统设计的周期,提高了实现的灵活性并降低了成本,因此获得了广大硬件工程师的青睐。 21FPGA结构和工作原理 21.1梦想成就伟业 1984年,在硅谷工作的Bene∨ anderschmitt、 Ross Freeman和 Jim barnett *t同构建了一个设想,他们 梦想创立一家不同于一般的公司。他们希望创建一家在整个新领域内开发和推出先进技术的公司。并且,他们 还希望以这种方式领导它:在这里工作的人们热爱他们的工作、享受工作的乐趣,并对他们所从事的工作着迷。 图2-1 Ross Freeman()是FPGA的发明人, Bernie vonderschmitt右)是赛灵思公司的创始人 创造性地推出了“无晶圆半导体”公司的概念。 2009年2月18日, Ross Freeman因他的这项发明——现场可编程门阵列(FPGA)而荣登2009美国发明 家名人堂。 Freeman先生的发明是一块全部由“开放式门”组成的计算机芯片,其专利号为4.870302。采用这种芯片, 工程师可以根据需要进行编程,添加新的功能,满足不断发展的标准或规范要求,并可在设计的最后阶段进行修改。 7 FPGA开发全攻略——工帅创新设计宝典 上册基础篇 212FPGA结构 对PROM、 EPROM、E2PROM熟悉的人都知道这些可编程器件的可编程原理是通过加高压或紫外线导致 三极管或M○S管內部的载流子密度发生变化,实现所谓的可编程,但是这些器件或只能实现单次可编程或编 桯状态难以稳定。FPGA则不同,它采用了逻辑单元阵列LCA( Logic Ce‖!Aray)这样一个新概念,内部包括可 配置逻辑模块 CLB(Coη figurable Logic Block)输岀輸入模块OB( nput OutρuBσck)和内部连线( oteroηec 三个部分。 FPGA的可编程实际上是改变了CLB和OB的触发器状态,这样,可以实现多次重复的编程由于FPGA需 要被反复烧写,它实现组合逻辑的基本结杓不可能像ASC那样通过固定的与非门来完成,而只能采用一种易 于反复配置的结构。杳找表可以很好地满足这一要求,目前主流FPGA都采用了基于SRAM工艺的查找表结构 也有一些军品和宇航级FFGA采用Fash或者熔丝与反熔丝工艺的查找表结构。通过烧写文件改变查找表内容 的方法来实现对FPGA的重复配置。 根据数字电路的基本知识可以知道,对于一个n输入的逻辑运算,不管是与或非运算还是异或运算等等, 最多只可能存在2n种结果。所以如果事先将相应的结果存放于一个存贮单元,就相当于实现了与非门电路的功 能。FPGA的原理也是如此,它通过烧写文件去配置查找表的内容,从而在相同的电路情况下实现了不同的逻 辑功能。 查找表(Look-∪p-Tabe)简称为LUT,LUT本质上就是一个RAM。目前FPGA中多使用4输入的LUT, 所以每—个L丌「可以看成一个有4位地址线的的RAM。当用户通过原理图或HDL语言描述了一个逻辑电路 以后, PLD/FPGA开发软件会自动计算逻辑电路的所有可能结果,并把真值表(即结果)事先写入RAM,这样 每输入一个信号进行逻辑运算就等于输入一个地址进行查表,找出地址对应的内容,然后输出即可。 实际逻辑电路 LUT的实现方式 ,,C,入 逻辑输出 RAM地址RAM中存備的内 000 01 0001 0 11 表2-1输入与门的真值表 从表中可以看到,LUT具有和逻辑电路相同的功能。实际上,LUT具有更快的执行速度和更大的规模。 由于基于LUT的FPGA具有很高的集成度,其器件密度从数万门到数千万门不等,可以完成极其复杂的时 序与逻辑组合逻辑电路功能,所以适用于高速、高密度的高端数字逻辑电路没计领域。其组成部分主要冇可编 程输入/输出单元、基本可编程逻辑单元、内嵌SRAM、丰富的布线资源、底层嵌入功能单元、内嵌专用单元等, FPGA开发全攻略—工酲帅创新设计宝典 上册基础篇 主要设计和生产厂家有赛灵思、 Altera、 Lattice、Acte、Ame和 Quicklogic等公司,其中最大的是美国赛灵 思公司,占有可编程市场50%以上的市场份额,比其他所有竞争对手市场份额的总和还多。 FPGA是由存放在片内FAM中的程序来设置其工作状态的,因此,工作时需要对片内的RAM进行编程。 用户可以根据不同的配置模式,采用不同的编程方式。 加电时,FPGA芯片将EPR○M中数据读入片内编程RAM中,配置完成后,FPGA进入工作状态。掉电后, FPGA恢复成白片,内部逻辑关系消失,因止,FPGA能够反复使用。FPGA的编程无须专用的FPGA编程器, 只须用通用的 EPROM、PROM编程器即可。这样,同一片FPGA,不同的编程数据,可以产生不同的电路功能。 因此,FPGA的使用非常灵活。 固■国国■■■圜■■■■■■■■口■■■■■■■■■ 1口口a 口口日口口目口凹口图口目目目口 口□ 口口口口口日口口口目口面 日口世 口口口口口团口国 口aa 口a 日口口日口园日国口口日口日口国 口口口日口口口日口 口口口口口口口口口口口口口 日日口日口国日口日口口日日口国 日国口日日日日 口口口口口口日口口口口口日口口口 日日日日日日园目日日 国国口日口■国回口a口a口 自口口■口口口口口口 国口日口■口a口口 日日口日口国日日曰日日日国日 日口 口口口日口口日口口口日口日口口 口国日口口口口 园自口 口口口2口口 口目日口口a口D口口 国国■國■■■■■■■■國■■■■■■■■圖■■ 图2-2被广泛应用的 Xilinx Spartan-3系列FPGA 如前所述,FPGA是由存放在片内的RAM来设置其工作状态的,因此工作时需要对片内RAM进行编程。 用户可根据不同的配置模式,采用不同的编程方式。 Xilinx FPGA的常用配置模式有5类:主串模式、从串模式、 Select mAP模式、 Desktop配置和直接SP|配置 目前,FPGA市场占有率最高的两大公司赛灵思公司和Atea生产的FPGA都是基于SRAM工艺的,需要 在使用时外接一个片外存储器以保存程序。上电时,FPGA将外部存储器中的数据读入片内RAM,完成配置后, 进入工作状态;掉电后FFGA恢复为白片,内部逻辑消矢。这样FPGA不仅能反复使用,还无需专门的FPGA 编程器,只需通用的 EPROM、PROM编程器即可。Acel、 QuickLogic等公司还提供反熔丝技术的FPGA,具 有抗辐射、耐高低温、低功耗和速度快等优点,在军品和航空航天领域中应用较多,但这种FPGA不能重复擦写, 开发初期比较麻烦,费用也比较昂贵。 Lattice是lsP技术的发明者,在小规模PLD应用上有一定的特色。早期 的赛灵思公司产品一般不涉及军品和宇航级市场,但目前已经有多款产品进入该类领域。 FPGA开发全攻略——工帅创新设计宝典 上册基础篇 CLB CLE CL CLE BRA 图2-3FPGA芯片内部结构 FPGA芯片结构目前主流的FPGA仍是基于查找表技术的,已经远远超出了先前版本的基本性能,并且整 合了常用功能(如RAM时钟管理和DSP尸的硬核(ASC型)模块。如图2-3所示(注:图2-3只是一个示意图, 实际上每一个系列的FPGA都有其相应的内部结构),FPGA芯片主要由6部分完成,分别为:可编程输入输出 单元、基本可编程逻辑单元、完整的时钟管理、嵌入块式RAM、丰富的布线资源、内嵌的底层功能单元和內嵌 专用硬件模块。 每个模块的功能如下 1.可编程输入输出单元(IOB) 可编程输入/输岀单元简称丨○单元,是芯片与外界电路的接口部分,完成不同电气特性下对输入/输出信 号的驱动与匹配要求,其示意结构如图2-4所示。FPGA内的/O按组分类,每组都能够独立地支持不同的O 标准。通过软件的灵活配置,可适配不同的电气标准与O物理特性,可以调整驱动电流的大小,可以改变上、 下拉电阻。目前,∥O口的频率也越来越高,一些高端的FPGA通过DDR寄存器技术可以支持高达2Gbps的 数据速率。 10

...展开详情
试读 127P FPGA开发全攻略(PDF)
立即下载 低至0.43元/次 身份认证VIP会员低至7折
    一个资源只可评论一次,评论内容不能少于5个字
    Eee___123 好资料,不过缺下册。学习了。
    2014-02-05
    回复
    关注 私信 TA的资源
    上传资源赚积分,得勋章
    最新推荐
    FPGA开发全攻略(PDF) 47积分/C币 立即下载
    1/127
    FPGA开发全攻略(PDF)第1页
    FPGA开发全攻略(PDF)第2页
    FPGA开发全攻略(PDF)第3页
    FPGA开发全攻略(PDF)第4页
    FPGA开发全攻略(PDF)第5页
    FPGA开发全攻略(PDF)第6页
    FPGA开发全攻略(PDF)第7页
    FPGA开发全攻略(PDF)第8页
    FPGA开发全攻略(PDF)第9页
    FPGA开发全攻略(PDF)第10页
    FPGA开发全攻略(PDF)第11页
    FPGA开发全攻略(PDF)第12页
    FPGA开发全攻略(PDF)第13页
    FPGA开发全攻略(PDF)第14页
    FPGA开发全攻略(PDF)第15页
    FPGA开发全攻略(PDF)第16页
    FPGA开发全攻略(PDF)第17页
    FPGA开发全攻略(PDF)第18页
    FPGA开发全攻略(PDF)第19页
    FPGA开发全攻略(PDF)第20页

    试读已结束,剩余107页未读...

    47积分/C币 立即下载 >