还剩35页未读,继续阅读
本资源只提供10页预览,全部文档请下载后查看!喜欢就下载吧,查找使用更方便
文本内容:
基础教学FPGA现场编阵术础应课专为电专业设可程门列技基与用程,子与通信工程学生精心计课带领设计实际应为本程将学生深入了解FPGA的基本原理、方法和用,现数统设计坚实础代字系奠定基课程介绍主讲内容础设计应语时设计FPGA基原理、流程与用,涵盖硬件描述言、序、接口技术识等核心知点学时分配论课时实验课时论实践结实际理48学,24学,理与相合,确保学生掌握操作技能评分标准试实验报评论实期末考60%,告30%,出勤10%,全面估学生的理掌握和践能力教学资源第一章可编程逻辑器件概述数字电路设计发展历程可编程逻辑器件分类在现代设计中的地位FPGA从现编逻辑编逻辑复杂结构为灵早期的分立元件到代的可程可程器件按度和可分FPGA以其活性、可重配置性和快速数电设计经历变简单编逻辑复杂编逻辑开发现电设计器件,字路了巨大革可程器件、可程原型能力,在代子中占据传统电设计满现复现场编阵类为数统设计的路方法已无法足代器件和可程门列等不同型越来越重要的地位,成字系杂统选择系的需求的主流可编程逻辑器件发展历史年代11970编读储现为编逻辑PROM(可程只存器)的出,可程器件奠础开创户编时定了基,了用可程硬件的代2年1985发标Xilinx公司明了世界上第一款FPGA器件XC2064,志着现场编阵术诞可程门列技的生年31992查构Altera公司推出FLEX系列FPGA,引入了找表架,大幅逻辑提升了密度和性能4年后2000实现跃发艺节缩FPGA集成度和性能飞式展,工点不断小,趋复杂功能日年代52020计领获应为异FPGA在人工智能和高性能算域得广泛用,成构计组算的重要成部分可编程逻辑器件分类简单可编程逻辑器件复杂可编程逻辑器件SPLD CPLD编阵逻辑阵逻辑编个单过编连资连包括PAL(可程列)、GAL(通用列)和PLA(可程由多SPLD元通可程互源接而成,保持了SPLD的确定逻辑阵阵结构简单逻辑实时时逻辑列),具有固定的AND-OR列,适用于的功能性序特性,同提供更大的容量现现场可编程门阵列其他新型器件FPGA查结构逻辑资灵连络复杂数处编阵采用找表,提供丰富的源和活的互网,支持包括SoC FPGA(集成理器的FPGA)、MPGA(掩膜可程门统实现应编逻辑专电为应专决字系的,是目前用最广泛的可程器件列)和ASIC(用集成路),不同用需求提供门解方案与其他器件对比FPGA与比较与微处理器比较与比较ASIC GPU灵处FPGA具有更高的活性FPGA具有天然的并行FPGA在能效比方面通常开发优和更短的周期,但在理能力,在特定算法加速于GPU,且具有更低的处迟成本和功耗方面不如方面性能卓越,而微理延,但GPU在浮点运算计编数处ASICASIC适合大批量器在通用算和程便捷和并行据理方面有独产优势优势生,FPGA适合中小批性方面更有特量和快速迭代成本分析综虑开发需要合考成本、产时间生成本、成本等多个应场因素,不同用景下优选择最会有所不同第二章基本结构FPGA互连资源基本逻辑单元编连络灵径查发构可程互网提供活的信号路,支逻辑单间连找表(LUT)和触器成FPGA的基本逻辑单实现组逻辑时逻辑2持任意元的接元,合和序功能1时钟管理专时钟络时钟块3用分配网和管理模确个统时保整系的序同步存储资源5结构4I/O块数储分布式RAM和RAM提供片上据存能输输单种电标力可配置的入出元支持多气准协议和接口基本构成单元FPGA查找表()LUT值实现为输组逻辑数实现逻辑极灵基于SRAM的真表,可配置任意4-6入的合函LUT是FPGA功能的核心元件,具有高的活性触发器()Flip-Flop储进数储发结实现时逻辑电构状态计数础用于存一位二制据的基本存元件触器与LUT合,可序路,是建机和器的基载波块()Slice个发组逻辑单还选择进链辅电逻辑实现由多LUT和触器成的基本元,包含多路器和位等助路,提供完整的能力逻辑块()CLB/LAB个组逻辑单线单现还专块由多Slice成的更大元,是FPGA布局布的基本位代FPGA集成了用的乘法器和DSP模内部互连结构FPGA全局长线1个连跨越整芯片的高速接区域中线2连邻线接相区域的中等距离布本地短线3邻逻辑块间连相的短距离接交换矩阵4编连实现可程互点信号路由专用连线5时钟复专、位等特殊信号的用通道连结构层设计从层连顶层连编连络这种设计既证连灵优传输迟FPGA的互采用分,底的本地接到的全局接,形成了完整的可程互网保了接的活性,又化了信号的延换阵为编连过传输开关状态实现径选择和功耗交矩作可程互的核心,通SRAM控制门的来任意的信号路时钟管理系统FPGA时钟输入与缓冲1专时钟输时钟缓动时钟输用入引脚和差分冲器,提供低抖的信号入锁相环与延迟锁定环2实现时钟频频调统种时钟频PLL和DLL的倍、分和相位整,生成系所需的各率时钟分配网络3为级时钟络时钟发传输分全局、区域和本地三网,确保信号的同步分和低偏斜异步时钟域处理时钟亚态电证统4提供跨域的同步机制和稳抑制路,保系的稳定运行的结构FPGA I/O可配置单元I/O个备编输输缓态每I/O引脚都配可程的入出冲器,支持三控制、上拉下电驱动调节户应灵拉阻配置和强度用可根据具体用需求活配置I/O特性多种电气标准支持种单标支持LVTTL、LVCMOS、SSTL、HSTL等多端信号准,以及标满统LVDS、LVPECL等差分信号准,足不同系接口要求高速串行收发器专发数传输集成用的高速串行收器,支持多Gbps的据速率,广应泛用于PCIe、以太网等高速通信接口存储器接口DDR专优门化的DDR接口控制器,支持DDR2/DDR3/DDR4等高储协议带宽数速存器,提供高的据存取能力的存储资源FPGA分布式块RAM RAM实现储访问专储块访基于LUT的小容量存器,速1用的大容量存模,支持双端口实现缓问宽实现缓度快但容量有限,适合小型存和2和不同位配置,是片上存的查资找表主要源外部存储器接口控制器FIFO4专进储逻辑支持与外部SRAM、SDRAM、Flash等门的先先出存器控制,广泛3储扩统储数处时钟数传输存器的高效接口,展系的存容用于据流理和跨域的据量第三章主流器件介绍FPGA70%市场份额场导Xilinx和Intel两大厂商占据全球FPGA市主地位15%年增长率场兴应动FPGA市保持稳定增长,新用推需求上升100+产品型号产线满应各厂商提供丰富的品足不同用需求5nm先进工艺进导艺最新FPGA采用先半体制造工提升性能公司产品Xilinx FPGA系列系系系列Artix KintexVirtex Zynq列列面向成本敏感集成ARM应级档舰级处用的入门中性能旗高性能Cortex-A产FPGA,具有FPGA品,FPGA,采用理器的SoC进结低功耗特性和在功耗、成本最先的制造FPGA,合资间艺软优丰富的I/O和性能之取工,提供最件和硬件费逻辑势处负源,适合消得平衡集成大的容量理器电业资责子和工控丰富的DSP和最高的性控制和管理应发制用提供源和高速收能主要面向功能,FPGA优异数实现的性价比器,适合通信据中心、航部分加速开发处应和完整的和信号理空航天等高端和接口功能态应领生用用域公司产品IntelAltera FPGA产应领品系列定位主要特点用域级费电Cyclone入门低成本、低功消子、工业耗控制场电Arria中端市平衡性能与成通信、汽车本子应数Stratix高端用最高性能、最据中心、AI艺新工加速决内统SoC FPGA集成解方案ARM核嵌入式系、边缘计+FPGA算购术处储术Intel收Altera后,将FPGA技与自身的理器和存技深度融合,推出异构计决这种为数边缘计了全新的算解方案整合据中心加速和AI算提供了强术大的技支撑国产厂商与产品FPGA发术产创近年来,中国本土FPGA厂商快速展,在技水平和品性能方面不断提升紫光同的TQ系列、安路科技的ELF/Eagle系列、导产应领备竞高云半体的GW1N系列等品在特定用域已具一定争力产发进赖义虽产场开国FPGA的展对于保障国家信息安全、降低对口依具有重要意然在高端品方面仍有差距,但在中低端市已始竞优势应领实现形成争,未来有望在更多用域突破器件选型考量因素FPGA第四章设计流程与工具FPGA需求分析设计标约明确目和束设计RTL语编码硬件描述言综合实现线布局布生成比特流验证调试验证时功能和序分析设计个复杂过个阶设计从FPGA流程是一的工程程,涉及多段和不同的工具最初的需求终验证个骤细规划执现设计分析到最的硬件,每步都需要仔和行代FPGA工具提供了完设计环从设计动整的境,支持RTL到比特流生成的全流程自化完整设计流程FPGA需求分析与规划1标设计约详细设计规测试计划明确功能需求、性能指和束,制定的范和2设计与编码RTL语进传输级设计实现数逻辑使用硬件描述言行寄存器,所需的字功能功能仿真验证3构测试进为级验证设计建平台,行行仿真,的功能正确性4逻辑综合码转换为级进逻辑优术将RTL代门网表,行化和技映射布局布线实现5逻辑资线将网表映射到具体的FPGA源,完成物理布局和信号布6时序分析与优化检查时约满进时优序束是否足,行序化和功耗分析比特流生成7编生成配置文件,用于FPGA器件的程和配置8硬件验证测试实际进测试验证在硬件平台上行功能和性能开发环境介绍FPGA设计套国产工具开源工具链Xilinx VivadoIntel QuartusPrime EDA件开发环华导为为Intel FPGA的集成以大九天、芯和半体以Yosys、nextpnr代表舰级开为标专业产开链为术Xilinx公司的旗FPGA境,分准版和版代表的国EDA厂商正在快的源FPGA工具学发从设计从发针产应工具,集成了RTL支持Cyclone到Stratix全速展,推出了对国研究和特殊用提供了新的设计开发开发选择到比特流生成的完整工具系列器件的FPGA的工具链支持System备进综线虽种级设具先的合和布局布然在功能完整性方面仍有支持多FPGA器件,具有Generator、HLS等高库应领扩计算法,提供丰富的IP核和差距,但在特定用域已良好的可展性和定制能工具设计满开发参考DSP Builder等能足基本需求,是国力,适合深度定制和算法研时级设计产选择应提供强大的序分析、功耗工具支持算法化替代的重要究用调试估算和功能,是7系列开发及以上器件的主要平习线台界面友好,学曲相缓对平设计层次与模块化方法系统级规划1顶层构设计架与功能分解子系统划分2块进层按功能模行次化分解模块设计3单详细实现独立功能元的基础单元4复逻辑组可用的基本件顶设计设计过层块划设计复杂块划仅设计维护还自向下的方法是FPGA的核心理念,通次化的模分可以有效管理度良好的模分不有利于的可性,能提高码复项开发代的用性和目的效率义规数设计实现块设计关键术统标块间数设计则块灵接口定范和参化技巧是模化的技一的接口准使得不同模之可以方便地集成,参化提供了模的活性和通用性设计验证方法测试平台构建自检测结构设计协议符合性验证设计验设计检测逻标协议完整的Testbench在中嵌入自对于准接口,需要证环励辑实现时错误检进专测试境,包括激生成、,运行的行门的符合性,结检查统计测诊标规果和覆盖率和断包括奇偶校确保与准范的兼容验检验线测试协议仪标采用SystemVerilog和、CRC和在性使用分析和验证术测试UVM方法学可以提高等技准向量质效率和量覆盖率分析过码通代覆盖率、功能覆盖率和断言覆盖率分析,评验证标估的完整性目达是到95%以上的覆盖率调试技术FPGA片上逻辑分析仪内资构逻辑仪实时获内状态利用FPGA部源建的分析,可以捕部信号支复杂发条设数储调试持的触件置和深度据存,是FPGA的主要工具虚拟调试I/O过实时读内时值通JTAG接口写FPGA部信号,可以在运行修改寄存器数调状态监应和控制信号适合参整和控用混合信号调试结调试测试设备进统级调试合片上工具和外部,行系使用示波逻辑仪调试器、分析等外部工具配合片上功能调试策略优化统调试层调试递进验证问题制定系性的策略,包括分、式和定调试档经验库调试位方法建立文和,提高效率第五章硬件描述语言基础语言特点优势语言特色HDL Verilog HDL VHDL语传统软编语语简洁类语习类统数类硬件描述言与件程言的根Verilog法,似C言,学曲VHDL具有强型系和丰富的据别线缓业应为码读项本区在于描述对象不同HDL描述的相对平在工界用最广泛,型支持,代可性好,适合大型目电结构为资开发欧军领应较是硬件路的和行,具有天然的工具支持完善,IP核源丰富在洲和工域用多时概并行性和序念扩组设计SystemVerilog是Verilog的展,增VHDL的包机制和件化理念有利种级别从级级别码复项语复HDL支持多抽象的描述,门加了面向对象、接口等高特性,特于代用和目管理,但法相对统级为阶设计复杂统设计验证杂习槛较到系,不同段的提供合适适合系的和,学门高的描述方式硬件描述语言概述硬件描述与软件编程的区别语电为结构软则顺硬件描述言描述的是物理路的行和,具有固有的并行性件程序是序执这种异决设计维行的指令序列根本差定了HDL的思方式发展历史HDL项则VHDL起源于美国国防部的VHSIC目,Verilog由Gateway DesignAutomation公开发种语标为业司两言在IEEE准化后成界主流抽象级别为级级级开关级种层种层设计阶HDL支持行、RTL、门和多抽象次,每次适合不同的段应场层层实现和用景高次描述更接近算法,低次描述更接近硬件现代发展趋势软概设计SystemVerilog、SystemC等新一代HDL引入了更多件工程念,支持面向对象级验证动设计和高方法学,推了硬件方法的革新基础语法VerilogHDL模块定义数据类型设计单连线类类module是Verilog的基本元,wire表示型,reg表示寄存器1内义术逻辑关包含端口声明、部信号定和功能描型运算符包括算、、系和位2块实块层选择述模可以例化其他模,形成运算符,支持向量操作和部分设计结构次化结构描述行为描述4过块实连线电结语组逻辑块通模例化和来描述路3assign句描述合,always构类图设计级语时逻辑组逻辑块,似于原理门原可以描述序或合initial用逻辑连关综描述基本门的接系于仿真初始化,不可合进阶特性Verilog参数化设计义数实现块设计数块实时义码复灵使用parameter和localparam定常量参,可配置的模参可以在模例化重新定,提高代的用性和活性生成语句语条环数动态结构别实现阵结构处单generate句支持件生成、循生成和案例生成,可以根据参生成硬件特适合可配置的列和并行理元函数与任务实现组逻辑值时时个输复杂为function用于合功能,有返回且无序控制task可以包含序控制和多出,适合的行描述编译指令编译条编译码编译码维护指令如`define、`include、`ifdef等用于件和代管理合理使用指令可以提高代的可性和可移植性基础语法VHDL1实体与架构义块实现个个实现Entity定模的接口,Architecture描述具体一Entity可以有多Architecture,支持不同的方式2数据类型数类标类户义类标类库类统错误检查VHDL提供丰富的据型,包括准型、用定型和IEEE准型强型系有助于3并行语句赋值条赋值选择赋值语组逻辑组实实现结构设计信号、件和等并行句描述合件例化化4进程描述概顺语进条Process是VHDL的核心念,包含序句序列敏感信号列表控制程的激活件5包与组件类数设计层结构Package提供常量、型和函的共享机制Component声明使得具有良好的次硬件描述语言编码规范命名规范注释与文档可综合设计风格统约时为个块编详细综编码采用一的命名定,如每模写的功能遵循可合的风格,避钟缀复说复杂综语结信号使用clk前,位信明和接口描述,对算免使用不可合的言缀电时进构组逻辑时号使用rst前,低平有效法和序要求行充分注明确区分合和缀块释统档逻辑信号使用_n后模名使建立一的文模板,序的描述方法,确保代划线记录码够综为电用下分隔的小写字母,包含版本信息、修改和能正确合硬件测试状态常量使用大写字母路避免设计陷阱锁防止意外生成存器,避免组逻辑环处复合路,正确理设计位信号使用同步方异逻辑带时法,避免步来的问题竞险序和争冒高级综合技术高层次综合概念1动转换为实现设计级别HLS将C/C++算法描述自RTL,提高效率和抽象算法优化技术2线环开数组优术实现资流水、循展、分割等化技性能和源的平衡硬件映射策略3动导构数径逻辑储统设计自推硬件架,包括据路、控制和存器系的约束与优化4过时约资约导综满实现通序束和源束指合工具生成足要求的硬件层综术设计发别应开发异构编高次合技代表了FPGA方法的重要展方向,特适合算法密集型用的快速原型OpenCL、SYCL等程模型的引入,软开发员开发应槛使得件人也能参与FPGA加速器的,大大降低了FPGA用的门第六章时序设计FPGA值值典型ns要求ns时序分析基础时序余量1设计标实际值目与性能的差关键路径2决频时径定最高工作率的序路建立保持时间3发样数时触器正确采据的序窗口时钟偏斜4时钟达发时间同一信号到不同触器的差传播延迟5过组逻辑传输时间信号通合的态时现设计标时验证它过时径验证设计满时动态静序分析(STA)是代FPGA的准序方法,通分析所有可能的序路来是否足序要求与仿真相比,STA具有覆盖率高、优势时敛速度快的,是序收的重要工具时序约束技术时钟约束定义义时钟时钟频使用create_clock命令定主,包括率、占空比和相位信息对于衍时钟时钟关树时钟义生,使用create_generated_clock命令建立系正确的定时约础是所有序束的基输入输出延迟约束约义间set_input_delay和set_output_delay束定了外部器件与FPGA之的时关这约诉时时序系些束告工具外部信号的序特性,确保接口序的正确性特殊路径约束义径使用set_multicycle_path定多周期路,set_false_path排除不需要时检查径这约帮设计图过约序的路些束助工具正确理解意,避免度束约束验证与调试过时报检查约识别约约径通序告束的正确性和完整性,束冲突和未束路时图观时径约使用序分析工具的形界面可以直地理解序路和束效果跨时钟域设计技术亚稳态问题两级同步器数时钟边变时产时钟术过级发当据在沿附近化可能生最基本的跨域技,通两触亚态导统预测为1亚态概单稳,致系不可的行理器降低稳率适用于bit控制亚态设计时钟2时钟传输简单解稳的物理机制是可靠跨信号的跨域,可靠但有延电迟域路的前提异步握手协议FIFO专为时钟数传输设计储结过请应数传输4跨域据的存通求-答机制确保据的可构码针数传3,使用格雷指和同步器确保可靠靠性,适用于控制信号和小量据数时钟传输设计虑协议锁操作适合高速据流的跨域需要考的正确性和死输避免时钟管理高级技术时钟树设计配置优化动态时钟管理低功耗时钟设计PLL规划时锁环数实现时调时钟频关过时钟术动态合理全局、区域和本地精确配置相参理想运行整率和相位通门控技降低功钟资时钟源的使用的特性系耗现时钟资个专时钟缓灵时钟络这资实现复杂时代FPGA提供了丰富的管理源,包括多PLL/MMCM、用冲器和活的分配网充分利用些源可以的钟满样统时钟规划仅响统还关电拓扑,足多化的系需求域的合理不影系性能,直接系到功耗和磁兼容性第七章接口技术FPGA串行通信接口高速存储器接口高速串行接口带宽数UART、SPI、I2C等串行接口是FPGA系DDR SDRAM接口提供高的据存取PCIe、以太网等高速串行接口利用FPGA统设备础这数处统关键组发实现数传与外部通信的基些接口具有能力,是大容量据理系的的GT收器,支持多Gbps的据实现简单应传设计虑时输这现计统引脚少、的特点,广泛用于件接口需要考信号完整性和序速率些接口是代高性能算系统问题组感器接口和系配置匹配的重要成部分通用通信接口实现实现种协议时电简单帧处处总线时通用通信接口的FPGA需要深入理解各的序要求和气特性UART接口相对,主要涉及波特率生成和格式理I2C接口需要理仲裁和钟虑极设拉伸,SPI接口要考不同的工作模式和性置层实现较为复杂帧验检测实现状态设备举过数传输这实现统以太网MAC,涉及格式、CRC校和冲突等功能USB接口需要机管理枚程和据些接口的正确是FPGA系础与外界交互的基。
个人认证
优秀文档
获得点赞 0