您的位置 首页 ADAS

FPGA体系调试问题及进步调试功率的办法

本文就调试FPGA系统时遇到的问题及有助于提高调试效率的方法,针对Altera和Xilinx的FPGA调试提供了最新的方法和工具。

现代科技对体系的可靠性提出了更高的要求,而FPGA技能在电子体系中运用现已十分广泛,因而FPGA易测验性就变得很重要。要取得的FPGA内部信号十分有限、FPGA封装和印刷电路板(PCB)电气噪声,这一切使得规划调试和查验变成规划中最困难的一个流程。另一方面,当时简直一切的像CPU、DSP、ASIC等高速芯片的总线,除了供给高速并行总线接口外,正敏捷向高速串行接口的方向开展,FPGA也不破例。每一条物理链路的速度从600 Mbps到10 Gbps,高速I/O的测验和验证更成为传统专心于FPGA内部逻辑规划的规划人员所面对的巨大应战。这些应战使规划人员十分容易地将绝大部分规划时刻放在调试和查验规划上。

本文就调试FPGA体系时遇到的问题及有助于进步调试功率的办法,针对Altera和Xilinx的FPGA调试供给了最新的办法和东西。

1 FPGA一般规划流程

在FPGA体系规划完结前,有2个不同的阶段:规划阶段、调试和查验阶段,如图1所示。规划阶段的首要任务是输入、仿真和完结;调试和查验阶段的首要任务是查验规划,校对发现的过错。

1.1 规划阶段

在这一阶段不只要规划,而且要运用仿真东西开端调试。实践证明,正确运用仿真为找到和校对规划过错供给了一条有用的途径。可是,不该依靠仿真作为调试FPGA规划的仅有东西。

在规划阶段,还需求提早考虑调试和查验阶段,规划怎样在线快速调试FPGA,这可以界说全体调试办法,协助辨认要求的任何测验丈量东西,确认挑选的调试办法对电路板规划带来的影响。针对或许选用的FPGA存在的高速总线,除了考虑逻辑时序的测验和验证外,还应该充分考虑后边或许面对的信号完好性测验和剖析难题。

1.2 调试和查验阶段

在调试阶段,有必要找到仿真没有找到的扎手问题。怎样以省时省力的办法完结这一作业是一个应战。本文将研讨怎么挑选正确的FPGA调试办法及怎么有用地运用新办法的处理才能,这些新办法可以只运用少数的FPGA针脚检查许多内部FPGA信号。假如运用妥当,可以打破最扎手的FPGA调试问题。

1.3 FPGA调试办法

在规划阶段需求作出的要害挑选是运用哪种FPGA调试办法。在抱负情况下,规划者期望有一种办法,这种办法可以移植到一切FPGA规划中,可以洞悉FPGA内部运转和体系运转进程,为确认和剖析扎手的问题供给相应的处理才能。

根本在线FPGA调试办法有2种:运用嵌入式逻辑剖析仪以及运用外部逻辑剖析仪。挑选运用何种办法取决于项目的调试需求。

2 嵌入式逻辑剖析仪内核

首要的FPGA厂商针对器材的在线调试都供给了嵌入式逻辑剖析仪内核,这些知识产权模块刺进FPGA规划中,一起供给触发功用和存储功用。它们运用FPGA逻辑资源完结触发电路;运用FPGA存储模块完结存储功用;运用JTAG装备内核操作,并用它将捕获的数据传送到PC上进行检查。

因为嵌入式逻辑剖析仪运用内部FPGA资源,因而其一般用于大型FPGA,这些大型FPGA可以更好地消化刺进内核带来的开支。一般来说,用户期望内核占用的FPGA逻辑资源不超越可用资源的5%。

与其他调试办法相同,还要知道这种办法存在的部分对立。

2.1 针脚与内部资源

嵌入逻辑剖析仪内核不运用额定的测验针脚,因为它经过现有的JTAG针脚拜访内核。这意味着即便规划遭到FPGA针脚约束,仍可以运用这种办法。对立在于,它运用的内部FPGA逻辑资源和存储模块可以用来完结规划。此外,因为运用片内内存存储捕获的数据,因而内存深度一般相对较浅。

2.2 勘探与运转形式

嵌入式逻辑剖析仪中心的勘探十分简略,它运用现有的JTAG针脚。对立在于,虽然嵌入式逻辑剖析仪可以检查FPGA操作,但没有一种办法将这些信息与电路板级或体系级信息时刻相关起来。而将FPGA内部的信号与FPGA外部的信号相关起来对处理扎手的调试问题至关重要。在剖析办法上,嵌入式逻辑剖析仪只能进行状况剖析。

2.3 本钱与灵敏性

大多数FPGA厂商供给了嵌入式逻辑剖析仪内核,而其价格要低于全功用外部逻辑剖析仪。虽然用户期望更多的功用,但嵌入式逻辑剖析仪内核的功用不管从通用性、剖析办法、触发才能,仍是从存储和剖析才能都弱于全功用外部逻辑剖析仪,而用户一般需求这些功用来捕获和剖析扎手的调试问题。例如,嵌入式逻辑剖析仪只能在状况形式下操作,它们捕获与FPGA规划中已有的指守时钟同步的数据,因而不能供给准确的信号守时联系。

3 外部逻辑剖析仪

因为嵌入式逻辑剖析仪办法存在部分约束,FPGA规划人员选用外部逻辑剖析仪办法,来运用FPGA的灵敏性和外部逻辑剖析仪的处理才能,如泰克TLA系列逻辑剖析仪。

在这种办法中,有用的内部信号路由到FPGA没有运用的针脚上,然后衔接到逻辑剖析仪上。这种办法供给了十分深的内存,合适调试呈现毛病和实践导致该毛病的原因在时刻上相距很远的问题;关于需求收集很多数据进行后期剖析的规划人员也十分必要。别的,它还可以把内部FPGA信号与电路体系中的其他活动时刻相关起来。

与嵌入式逻辑剖析仪办法相同,也需求考虑许多对立。

3.1 针脚与内部资源

外部逻辑剖析仪办法选用十分少的逻辑资源,不运用FPGA内存资源。它释放了这些资源,来完结所需功用。其对立在于,有必要添加专用于调试的针脚数量,而规划时需求运用这些针脚。

3.2 勘探与作业形式

外部逻辑剖析仪勘探要比嵌入式逻辑剖析仪办法要求的勘探杂乱一些。有必要确认怎样运用逻辑剖析仪探头勘探FPGA内部信号,而不能运用电路板上已有的JTAG衔接器。最简洁的办法是在电路板中添加一个测验衔接器,这可以简洁地把FPGA信号与体系中的其他信号相关起来。

3.3 本钱与灵敏性

虽然外部逻辑剖析仪的购买价格的确要高于嵌入式逻辑剖析仪,但运用外部逻辑剖析仪可以处理愈加广泛的问题。逻辑剖析仪不只可以用于FP

GA调试,还可以用来处理其他数字规划应战,它被公认为是进行通用数字体系硬件调试的最佳东西。外部逻辑剖析仪可以完结愈加灵敏的收集形式和触发功用。经过外部逻辑剖析仪,可以设置最多16个不同的触发状况(每一个状况含有16个条件判别分支),每一个通道供给256 MB的内存,而且可以在守时剖析形式下以高达125 ps的分辨率(8 GS/s采样) 捕获数据。

4 FPGAView进行FPGA调试

外部逻辑剖析仪办法有用地运用了FPGA的处理才能,并根据需求从头对设备装备,将有用的内部信号路由到一般很少的针脚上。这是一种十分有用的办法,但它也有必定的局限性:用户每次需求检查一套不同的内部信号时,都有必要改动规划(在RTL级或运用FPGA编辑器东西),把期望的信号组路由到调试针脚上。这不只耗时,而且假如要求从头汇编规划,还会改动规划的守时,或许会躲藏需求处理的问题。当更改FPGA内部测验信号时,在外部逻辑剖析仪上的被测信号称号需求手艺进行更新。一般说来,调试针脚数量很少,内部信号与调试针脚之间1:1的联系约束着规划检查才能和洞悉力。为战胜这些局限性,呈现了一种新的FPGA调试办法,它不只供给了外部逻辑剖析仪办法的一切优势,还消除了首要局限性。FPGAView软件在与泰克TLA系列逻辑剖析仪配套运用时,为调试FPGA和周边硬件电路供给了一个完好的处理方案,如图2所示。

  
这种组合可以时刻相关的检查FPGA的内部活动和外部活动;敏捷改动FPGA内部探点,而无须从头汇编规划;每个针脚监测多个内部信号;在TLA逻辑剖析仪上主动更新切换的内部信号称号。此外,FPGAView可以在一台设备中处理多个测验内核(合适监测不同的时钟域),并可以在一个JTAG链上处理多台FPGA设备。

5 快速运用FPGAView

运用FPGAView的进程如下所述:

(1) 刺进内核

这步是装备测验内核,把它刺进到FPGA规划中。例如,在运用ALTERA或Xilinx器材时,可以运用FPGA开发东西供给的逻辑剖析仪接口编辑器,创立最合适自己需求的测验核。

对大多数的测验内核,可以指定下述参数:

①针脚数量(pin count):表明期望专用于逻辑剖析仪接口的针脚数量;

②组数(bank count):表明期望映射到每个针脚上的内部信号数量;

③输出/捕获形式(output/capture mode):挑选期望履行的收集类型;可以挑选组合逻辑/守时形式(combina-tion/timing)或寄存器/状况形式(registered/state);

④时钟(clock):假如用户挑选了registered/state的捕获形式,这一选项答应挑选测验内核的取样时钟;

⑤通电状况(power-up state):这个参数答应指明用于逻辑剖析仪接口的针脚的通电状况。

(2) 把测验内核信息加载到FPGAView中

从FPGAView软件窗口中,可以与JTAG编程电缆树立衔接,而且衔接到TLA系列逻辑剖析仪(TLA逻辑剖析仪运用Windows渠道)或PC作业站上。

在运用ALTERA FPGA芯片时,按翻开(Open)东西条按钮,调出一个文件浏览器,挑选QuartusⅡLAI Editor软件曾经生成的逻辑剖析仪接口(.lai)文件。这样就加载了与LAI中心有关的一切信息,包含每一组的信号数量、组数和信号称号,别的假如设备中的LAI内核多于一个,那么还包含每个LAI内核的信息。

(3) 把FPGA针脚映射到逻辑剖析仪上

映射FPGA针脚和TLA逻辑剖析仪探头之间的物理衔接。FPGAView可以主动更新逻辑剖析仪上显现的信号称号,与测验内核当时监测的信号相匹配。为此,简略地点击探头(probes)按钮,将呈现一个拖放窗口,把测验内核输出信号称号与逻辑剖析仪上的相应通道衔接起来。对某条方针衔接,这个通道分配进程只需一次。

(4) 进行丈量

运用组(bank)列表下拉菜单,挑选想要丈量的组。一旦挑选了组,FPGAView会经过JTAG接口与FPGA通讯,并装备测验内核,以便挑选期望的组。

FPGAView还将这些通道称号经过对TLA系列逻辑剖析仪的操控进行主动分配,然后可以简洁地了解丈量成果。为丈量不同的一套内部信号,用户只需挑选不同的信号组。全功用TLA系列逻辑剖析仪会主动地把这些FPGA信号与体系中的其他信号相关起来。

在TLA逻辑剖析仪中,针对规划人员关怀的各种时刻信息,供给了业界独有的守时参数主动丈量功用,经过鼠标简略地拖放操作,可以得到周期、频率、占空比、脉冲宽度、通道/通道推迟、边缘计数、周期计数、违规计数、周期颤动、以及周期间颤动等信息。

6 定论

调试针对Altera和Xilinx的FPGA体系时用嵌入式逻辑剖析仪和外部逻辑剖析仪这2种办法各有其优势和缺乏,而FPGAView等新办法进一步进步了外部逻辑剖析仪办法的吸引力。可以快速方便地移动探点,而不需从头汇编规划,一起可以把内部FPGA信号活动与电路板级信号相关起来,可以较好地满意产品开发周期的要求。

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/qiche/adas/195088.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部