版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、FPGA系统调试问题及提高调试效率的方法 现代科技对系统的可靠性提出了更高的要求,而FPGA技术在电子系统中应用已经非常广泛,因此FPGA易测试性就变得很重要。要获得的FPGA内部信号十分有限、FPGA封装和印刷电路板(PCB)电气噪声,这一切使得设计调试和检验变成设计中最困难的一个流程。另一方面,当前几乎所有的像CPU、DSP、ASIC等高速芯片的总线,除了提供高速并行总线接口外,正迅速向高速串行接口的方向发展,FPGA也不例外。每一条物理链路的速度从600 Mbps到10 Gbps,高速IO的测试和验证更成为传统专注于FPGA内部逻辑设计的设计人员所面临的巨大挑战。这些挑战使设计人员非常容
2、易地将绝大部分设计时间放在调试和检验设计上。 本文就调试FPGA系统时遇到的问题及有助于提高调试效率的方法,针对Altera和Xilinx的FPGA调试提供了最新的方法和工具。1 FPGA一般设计流程在FPGA系统设计完成前,有2个不同的阶段:设计阶段、调试和检验阶段,如图1所示。设计阶段的主要任务是输入、仿真和实现;调试和检验阶段的主要任务是检验设计,校正发现的错误。1.1 设计阶段在这一阶段不仅要设计,而且要使用仿真工具开始调试。实践证明,正确使用仿真为找到和校正设计错误提供了一条有效的途径。但是,不应依赖仿真作为调试FPGA设计的唯一工具。在设计阶段,还需要提前考虑调试和检验阶段,规划怎
3、样在线快速调试FPGA,这可以定义整体调试方法,帮助识别要求的任何测试测量工具,确定选择的调试方法对电路板设计带来的影响。针对可能选用的FPGA存在的高速总线,除了考虑逻辑时序的测试和验证外,还应该充分考虑后面可能面临的信号完整性测试和分析难题。1.2 调试和检验阶段在调试阶段,必须找到仿真没有找到的棘手问题。怎样以省时省力的方式完成这一工作是一个挑战。本文将研究如何选择正确的FPGA调试方法及如何有效地利用新方法的处理能力,这些新方法可以只使用少量的FPGA针脚查看许多内部FPGA信号。如果使用得当,可以突破最棘手的FPGA调试问题。1.3 FPGA调试方法在设计阶段需要作出的关键选择是使用
4、哪种FPGA调试方法。在理想情况下,设计者希望有一种方法,这种方法可以移植到所有FPGA设计中,能够洞察FPGA内部运行和系统运行过程,为确定和分析棘手的问题提供相应的处理能力。基本在线FPGA调试方法有2种:使用嵌入式逻辑分析仪以及使用外部逻辑分析仪。选择使用何种方法取决于项目的调试需求。2 嵌入式逻辑分析仪内核主要的FPGA厂商针对器件的在线调试都提供了嵌入式逻辑分析仪内核,这些知识产权模块插入FPGA设计中,同时提供触发功能和存储功能。它们使用FPGA逻辑资源实现触发电路;使用FPGA存储模块实现存储功能;使用JTAG配置内核操作,并用它将捕获的数据传送到PC上进行查看。由于嵌入式逻辑分
5、析仪使用内部FPGA资源,因此其通常用于大型FPGA,这些大型FPGA可以更好地消化插入内核带来的开销。一般来说,用户希望内核占用的FPGA逻辑资源不超过可用资源的5。与其他调试方法一样,还要知道这种方法存在的部分矛盾。2.1 针脚与内部资源嵌入逻辑分析仪内核不使用额外的测试针脚,因为它通过现有的JTAG针脚访问内核。这意味着即使设计受到FPGA针脚限制,仍可以使用这种方法。矛盾在于,它使用的内部FPGA逻辑资源和存储模块可以用来实现设计。此外,由于使用片内内存存储捕获的数据,因此内存深度一般相对较浅。2.2 探测与运行模式嵌入式逻辑分析仪核心的探测非常简单,它使用现有的JTAG针脚。矛盾在于
6、,尽管嵌入式逻辑分析仪可以查看FPGA操作,但没有一种方式将这些信息与电路板级或系统级信息时间关联起来。而将FPGA内部的信号与FPGA外部的信号关联起来对解决棘手的调试问题至关重要。在分析方法上,嵌入式逻辑分析仪只能进行状态分析。2.3 成本与灵活性大多数FPGA厂商提供了嵌入式逻辑分析仪内核,而其价格要低于全功能外部逻辑分析仪。虽然用户希望更多的功能,但嵌入式逻辑分析仪内核的功能无论从通用性、分析方式、触发能力,还是从存储和分析能力都弱于全功能外部逻辑分析仪,而用户通常需要这些功能来捕获和分析棘手的调试问题。例如,嵌入式逻辑分析仪只能在状态模式下操作,它们捕获与FPGA设计中已有的指定时钟
7、同步的数据,因此不能提供精确的信号定时关系。3 外部逻辑分析仪由于嵌入式逻辑分析仪方法存在部分限制,FPGA设计人员采用外部逻辑分析仪方法,来利用FPGA的灵活性和外部逻辑分析仪的处理能力,如泰克TLA系列逻辑分析仪。在这种方法中,有用的内部信号路由到FPGA没有使用的针脚上,然后连接到逻辑分析仪上。这种方法提供了非常深的内存,适合调试出现故障和实际导致该故障的原因在时间上相距很远的问题;对于需要采集大量数据进行后期分析的设计人员也非常必要。另外,它还可以把内部FPGA信号与电路系统中的其他活动时间关联起来。与嵌入式逻辑分析仪方法一样,也需要考虑许多矛盾。3.1 针脚与内部资源外部逻辑分析仪方
8、法采用非常少的逻辑资源,不使用FPGA内存资源。它释放了这些资源,来实现所需功能。其矛盾在于,必须增加专用于调试的针脚数量,而设计时需要使用这些针脚。3.2 探测与工作模式外部逻辑分析仪探测要比嵌入式逻辑分析仪方法要求的探测复杂一些。必须确定怎样使用逻辑分析仪探头探测FPGA内部信号,而不能使用电路板上已有的JTAG连接器。最简便的方式是在电路板中增加一个测试连接器,这可以简便地把FPGA信号与系统中的其他信号关联起来。3.3 成本与灵活性尽管外部逻辑分析仪的购买价格确实要高于嵌入式逻辑分析仪,但使用外部逻辑分析仪可以解决更加广泛的问题。逻辑分析仪不仅可以用于FPGA调试,还可以用来解决其他数
9、字设计挑战,它被公认为是进行通用数字系统硬件调试的最佳工具。外部逻辑分析仪能够实现更加灵活的采集模式和触发功能。通过外部逻辑分析仪,可以设置最多16个不同的触发状态(每一个状态含有16个条件判断分支),每一个通道提供256 MB的内存,并且可以在定时分析模式下以高达125 ps的分辨率(8 GSs采样) 捕获数据。 4 FPGAView进行FPGA调试外部逻辑分析仪方法有效地利用了FPGA的处理能力,并根据需要重新对设备配置,将有用的内部信号路由到通常很少的针脚上。这是一种非常有用的方法,但它也有一定的局限性:用户每次需要查看一套不同的内部信号时,都必须改变设计(在RTL级或使用FPGA编辑器
10、工具),把希望的信号组路由到调试针脚上。这不仅耗时,而且如果要求重新汇编设计,还会改变设计的定时,可能会隐藏需要解决的问题。当更改FPGA内部测试信号时,在外部逻辑分析仪上的被测信号名称需要手工进行更新。一般说来,调试针脚数量很少,内部信号与调试针脚之间1:1的关系限制着设计查看能力和洞察力。为克服这些局限性,出现了一种新的FPGA调试方法,它不仅提供了外部逻辑分析仪方法的所有优势,还消除了主要局限性。FPGAView软件在与泰克TLA系列逻辑分析仪配套使用时,为调试FPGA和周边硬件电路提供了一个完整的解决方案,如图2所示。这种组合可以时间关联的查看FPGA的内部活动和外部活动;迅速改变FP
11、GA内部探点,而无须重新汇编设计;每个针脚监测多个内部信号;在TLA逻辑分析仪上自动更新切换的内部信号名称。此外,FPGAView可以在一台设备中处理多个测试内核(适合监测不同的时钟域),并可以在一个JTAG链上处理多台FPGA设备。5 快速使用FPGAView使用FPGAView的步骤如下所述:(1) 插入内核这步是配置测试内核,把它插入到FPGA设计中。例如,在使用ALTERA或Xilinx器件时,可以使用FPGA开发工具提供的逻辑分析仪接口编辑器,创建最适合自己需求的测试核。对大多数的测试内核,可以指定下述参数:针脚数量(pin count):表示希望专用于逻辑分析仪接口的针脚数量;组数
12、(bank count):表示希望映射到每个针脚上的内部信号数量;输出捕获模式(outputcapture mode):选择希望执行的采集类型;可以选择组合逻辑定时模式(combina-tiontiming)或寄存器状态模式(registeredstate);时钟(clock):如果用户选择了registeredstate的捕获模式,这一选项允许选择测试内核的取样时钟;通电状态(power-up state):这个参数允许指明用于逻辑分析仪接口的针脚的通电状态。(2) 把测试内核信息加载到FPGAView中从FPGAView软件窗口中,可以与JTAG编程电缆建立连接,并且连接到TLA系列逻辑分
13、析仪(TLA逻辑分析仪使用Windows平台)或PC工作站上。在使用ALTERA FPGA芯片时,按打开(Open)工具条按钮,调出一个文件浏览器,选择QuartusLAI Editor软件以前生成的逻辑分析仪接口(.lai)文件。这样就加载了与LAI核心有关的所有信息,包括每一组的信号数量、组数和信号名称,另外如果设备中的LAI内核多于一个,那么还包括每个LAI内核的信息。(3) 把FPGA针脚映射到逻辑分析仪上 映射FPGA针脚和TLA逻辑分析仪探头之间的物理连接。FPGAView可以自动更新逻辑分析仪上显示的信号名称,与测试内核当前监测的信号相匹配。为此,简单地点击探头(probes)按
14、钮,将出现一个拖放窗口,把测试内核输出信号名称与逻辑分析仪上的相应通道连接起来。对某条目标连接,这个通道分配过程只需一次。(4) 进行测量使用组(bank)列表下拉菜单,选择想要测量的组。一旦选择了组,FPGAView会通过JTAG接口与FPGA通信,并配置测试内核,以便选择希望的组。FPGAView还将这些通道名称通过对TLA系列逻辑分析仪的控制进行自动分配,从而可以简便地理解测量结果。为测量不同的一套内部信号,用户只需选择不同的信号组。全功能TLA系列逻辑分析仪会自动地把这些FPGA信号与系统中的其他信号关联起来。在TLA逻辑分析仪中,针对设计人员关心的各种时间信息,提供了业内独有的定时参数自动测量功能,通过鼠标简单地拖
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 外兑合同范本
- 齐齐哈尔大学《嵌入式系统原理及应用》2022-2023学年期末试卷
- 系统测试合同范本
- 材料订货合同范本
- 2012购房合同范本
- 木材经营合同范本
- 受限玻尔兹曼机RBM学习笔记
- 荷叶圆圆说课稿15篇
- 快递作业实务教学案
- 2024年互联网行业趋势预测:5G时代的变革与机遇
- 部编版语文六年级下册总复习病句选择题精选精练(有答案)
- 气排球记录方法五人制2017年5月9日
- 信用管理师(三级)理论考试题库(300题)
- 医学创新与科学研究知到章节答案智慧树2023年岳阳职业技术学院
- 社会体育导论教学教案
- 厂房物业管理服务合同
- 新生适应性成长小组计划书
- 08SS523建筑小区塑料排水检查井
- 教学评一体化的教学案例 课件
- 父亲去世讣告范文(通用12篇)
- 人教版八年级上Unit 2How often do you exercise Section A(Grammar Focus-3c)
评论
0/150
提交评论