京东:三季度归属母公司净亏损28亿元,去年同期净利润76亿元
06-18
1. FPGA概述 FPGA是英文Field Programmable Gate Array的缩写,即现场可编程门阵列。
它基于PAL、GAL和EPLD等可编程器件。
进一步发展的产物。
它作为专用集成电路(ASIC)领域的半定制电路出现,既解决了定制电路的缺点,又克服了原有可编程器件门数有限的缺点 2。
FPGA芯片结构 FPGA芯片主要由三部分组成,分别是IOE(input output element,输入输出单元)、LAB(logic array block,逻辑阵列块,对于Xilinx来说称为可配置逻辑块CLB)和Interconnect(内部连接线)。
2.1 IOE IOE是芯片与外部电路之间的物理接口。
主要完成不同电气特性下输入/输出信号的驱动和匹配要求,如从基本的LVTTL/LVCMOS接口到PCI/LVDS/RSDS甚至各种差分接口,从5V兼容到3.3V/2.5V/ 1.8V/1.5V电平接口。
以下是ALTERA的Cyclone IV EP4CEF29器件的IOE结构 图1 EP4CEF29器件的IOE结构图 FPGA的IOE分为几组。
每个组可以独立支持不同的I/O标准。
通过软件的灵活配置,可以匹配不同的电气标准和IO物理特性,驱动电流可调。
改变上拉/下拉电阻,Cyclone IV 器件有 8 个 IO 空(组),见下图: 图 2 Cyclone IV 器件的 IO 组 2.2 LAB LAB 是基本的FPGA的逻辑单元。
实际数量和特性因所使用的设备而异。
EP4CEF29 器件的每个 LAB 的布局包括 16 个 LE、LAB 控制信号、LE 进位链、寄存器链和本地互连。
LAB 结构图如下: 图3 LAB 结构图 LE 是Cyclone IV 器件的最小逻辑单元。
每个LE主要由LUT和寄存器组成。
图4 LE结构图 查找表LUT(Look-Up-Table)本质上是静态存储器SRAM。
目前,FPGA大多使用4输入LUT。
每个 LUT 可以被视为具有 4 位地址线的 16x1 RAM。
当我们通过原理图或者HDL语言描述一个逻辑电路时,FPGA开发软件会自动计算出该逻辑电路所有可能的结果,并将结果提前写入RAM中。
这样,FPGA工作时,每输入一个信号进行一次逻辑运算,就相当于输入一个地址进行查表,找出该地址对应的内容,然后输出。
图5 LUT实现原理图 2.3互连 FPGA内部有很多连接线。
根据数据手册中的描述,它们主要包括图3中的Row互连、列互连、Direct link互连、Local互连和Register链互连(寄存器之间的连接线)。
内部连接线连接FPGA内部的所有单元,连接的长度和过程决定了信号重连线的驱动能力和传输速度。
在实际开发中,设计者不需要直接选择连接线。
布局和布线器可以根据输入逻辑网表(通过综合生成)的拓扑和约束,自动选择连接线来连接各个逻辑单元。
因此,从本质上讲,布线资源的使用与设计的结果之间有着密切而直接的关系。
3。
FPGA工作原理 FPGA使用小型查找表(16×1RAM)来实现组合逻辑。
每个查找表都连接到一个D触发器的输入端(见图4),触发器驱动其他逻辑电路或驱动I/O,从而形成一个基本逻辑单元模块,既可以实现组合逻辑功能,又可以实现逻辑功能。
顺序逻辑函数。
这些模块使用金属线相互连接或连接到 I/O 模块。
FPGA的逻辑是通过将编程数据加载到内部静态存储单元来实现的。
存储单元中存储的值决定了逻辑单元的逻辑功能以及模块之间或模块与I/O之间的连接方式,最终决定了FPGA能够实现的功能,FPGA允许无限编程。
4。
FPGA开发流程 原理图和HDL(硬件描述语言)是最常用的两种数字硬件电路描述方法,其中HDL设计方法具有更好的可移植性、通用性和模块划分、可复用性的特点,被广泛应用于目前的工程设计。

以下在熟悉FPGA设计电路的情况下的开发流程是基于HDL的。
图6 FPGA开发流程 1)系统功能设计 系统设计之前,首先要做的是程序论证、系统设计和FPGA芯片选型等准备工作。
系统工程师根据系统指标、复杂度等任务要求,权衡芯片本身的工作速度以及各种资源和成本,选择合理的设计方案和合适的器件类型。
一般采用自上而下的设计方法,将系统划分为若干个基本单元,然后将每个基本单元再划分为下一级基本单元。
如此一直持续到EDA组件库可以直接使用为止。
2)RTL级HDL设计 RTL级(Register Transfer Level,寄存器传输级)是指不关注寄存器和组合逻辑的细节(比如使用了多少个逻辑门、逻辑门等),HDL设计方法通过模型描述寄存器之间的数据流以及如何处理和控制这些数据流。
RTL 级别比门级别更抽象,同时也更简单、更高效。
RTL级最大的特点是可以利用综合工具直接综合成门级网表。
RTL级设计直接决定了系统的功能和效率。
3)RTL级仿真 又称功能(行为)仿真,或预综合仿真,是用户设计的电路在编译前进行的逻辑功能验证。
此时的模拟没有延迟信息,仅测试初步功能。
在仿真之前,必须首先使用波形编辑器和 HDL 创建波形文件和测试向量(即将感兴趣的输入信号组合成序列)。
仿真结果将生成报告文件并输出信号波形,从中您可以观察每个节点信号的行为。
种类。
如果发现错误,则返回设计以修改逻辑设计。
常用的工具包括Model Tech的ModelSim、Sysnopsys的VCS以及Cadence的NC-Verilog和NC-VHDL软件。
虽然功能仿真不是FPGA开发过程中的必要步骤,但却是系统设计中最关键的步骤。
为了提高功能仿真的效率,需要建立测试平台testbench。
其测试激励一般使用行为级HDL语言来描述。
RTL 级模块是可综合的,并且是行为级模块的子集。
4)综合 所谓综合就是将较高抽象层次的描述转化为较低层次的描述。
综合优化根据目标和需求优化生成的逻辑连接,扁平化分层设计以便通过FPGA布局和布线软件实现。
在目前层面,综合优化(Synthesis)是指将设计输入编译成由与门、或门、非门、RAM、触发器等基本逻辑单元组成的逻辑连接网表,而不是真正的逻辑连接网表。
门级电路。
需要利用FPGA厂商的布局布线功能综合后生成的标准门级结构网表,生成真实的、具体的门级电路。
为了转换为标准的门级结构网表,HDL 程序必须按照特定合成器所需的风格编写。
由于门级结构和RTL级HDL程序的综合是一项非常成熟的技术,所有综合器都可以支持这种级别的综合。
常用的综合工具有Synplicity的Synplify/Synplify Pro软件以及各FPGA厂商推出的综合开发工具。
5) 门级模拟 也称为后综合模拟。
综合后仿真检查综合结果是否与原始设计一致。
在仿真过程中,将综合生成的标准延迟文件反标注到综合仿真模型中,以估计门延迟的影响。
不过这一步无法估计线路延迟,所以与布线后的实际情况还是有一定的差距,不是很准确。
目前的综合工具已经比较成熟,对于一般的设计可以省略这一步。
然而,如果布局布线后发现电路结构与设计意图不符,则需要返回综合后仿真来确认问题。
功能仿真中引入的软件工具一般都支持后综合仿真。
6)布局布线 实现是将综合生成的逻辑网表配置到具体的FPGA芯片上,将项目的逻辑和时序与器件的可用资源进行匹配。
布局布线是最重要的过程。
布局将逻辑网表中的硬件原语和底层单元合理配置到芯片内部固有的硬件结构中,往往需要在速度优化和面积优化之间做出选择。
布线利用芯片内部的各种布线资源,根据版图的拓扑结构,合理、正确地连接各个元件。
布局布线也可以简单理解为FPGA内部查找表和寄存器资源的合理配置。
布局可以理解为选择能够实现设计网表的最优资源组合,而布线就是优化这些查找表和寄存器资源。
以尽可能最好的方式连接。
目前FPGA的结构非常复杂,尤其是有时序约束的情况下,需要使用时序驱动的引擎进行布局布线。
布线完成后,软件工具会自动生成报告,提供设计各部分的资源使用情况信息。
由于只有FPGA芯片制造商最了解芯片结构,因此必须使用芯片开发商提供的工具进行布局和布线。
7)时序仿真 是指将布局布线的延迟信息回标到设计网表中,检测是否存在时序违规(即不满足时序约束或器件固有的时序规则,如建立时间、保持时间等)现象。
时序仿真包含了最完整、最准确的时延信息,能够更好地反映芯片的实际工作情况。
由于不同芯片的内部延迟不同,不同的布局和布线方案对延迟的影响也不同。
因此,布局布线后,非常有必要对系统及各模块进行时序仿真,分析其时序关系,评估系统性能,排查并消除竞争风险。
8)FPGA板级调试 通过编程器将布局布线配置文件下载到FPGA中,对其硬件进行编程。
配置文件一般为.pof或.sof文件格式,下载方式有AS(主动)、PS(被动)、JTAG(边界扫描)等。
逻辑分析仪(LA)是主要的调试工具FPGA设计,但需要大量测试引脚且LA价格昂贵。
目前主流FPGA芯片厂商都提供内置在线逻辑分析仪(如Xilinx ISE中的ChipScope、Altera QuartusII中的SignalTapII和SignalProb)来解决上述矛盾。
它们只需要占用芯片少量的逻辑资源,并且具有很多优点。
实用价值高。
版权声明:本文内容由互联网用户自发贡献,本站不拥有所有权,不承担相关法律责任。如果发现本站有涉嫌抄袭的内容,欢迎发送邮件 举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。
标签:
相关文章
06-18
06-17
06-18
最新文章
PCBA质检员的日常工作内容
美国法院裁定VoIP不属于电信服务,需征税
雷达嵌入式工控主板如何使用?工控主板故障分析
摩托罗拉在西班牙促销Z8手机
中宇买下了一台三星机型,品牌和规模是合作的主要原因
舰载军用加固计算机热设计
谷歌开始对仍由HTC生产的谷歌手机进行内部测试
英国EE分享LTE发展经验教训,面临终端-语音-回传三大挑战