新闻  |   论坛  |   博客  |   在线研讨会
用SignalTap嵌入逻辑分析仪验证PLD设计
zhchxgh | 2009-07-14 22:41:32    阅读:854   发布文章

用SignalTap嵌入逻辑分析仪验证PLD设计

作者:Altera 公司      来源:《电子产品世界》

要说ASIC设计者的经验有所提示的话,那么将来的百万门级可编程逻辑设计中验证会耗费大半的设计周期。随着设计复杂度的增加,传统的设计验证方法如仿真需要其它技术和工具的补充,因为这些可编程芯片系统(SOPC)进行完全的真实模拟是不可在适当的时间内完成。而且,设计规模的陡增必然需要新的工具来观察已编程期间的内部操作。尤其是随着第三方IP使用的增加,它们需要获取内部探测来验证操作,使其和设计的其它部分相分离。最后,由于封装技术的提高,必须开发新的方法以使于对象BGA之类日趋小型化和大规模封装的硬件进行验证。

一种新的技术SignalTap,业已开发满足这些需求。SignalTap允许设计者在PLD运行期间同时监视内部信号。通过下载电缆或传统的分析设备连接到用户工作部的PC板卡上,便可以在用户的工作部上观察到这些信号的波形。使用SingnalTap就类似于使用逻辑分析仪,能够设置初始化,触发(内部或外部)和显示条件以及观察的内部信号,用户以此可以研究设计的运行状态。用户的分析参数可以被编译为嵌入逻辑分析仪(ELA),它和设计的其它数据一起配置PLD。Altera APEX 20K系列器件支持SignalTap,采用Altera MasterBlaster作为器件的下载电缆。

以下是三个不同的例子演示SignalTap技术所赋有的用途。例1便于探测内部连线

若没有采用SignalTap接口,PLD用户必须更改设计以探测内部逻辑的连线。设计的内部连线必须连接到顶层设计的管脚上。如果结点处于庞大分级设计的下层,那么改起来很复杂,同时很耗时,而且破坏了设计的完整性。ELA接口支持拖放选择用于逻辑分析的连线。 这个接口根本就无需改变设计。图1为用于选择逻辑分析节点的接口。

选择了ELA的输入通道之后,需要重新编译设计把ELA配置加入期间配置文件中。重新编译只是把一个ELA实例添加到现有的设计中,而无需改变已有的设计。更新后的配置文件重新配置器件后,标准逻辑分析仪就会可以检测那些被连接到器件管脚的内部信号了。例2子监测难以接近的管脚

随着PLD的尺寸日益减小和PCB的复杂度日益增加,PLD用户发现越来越多的PLD管脚无法接近不在PCB的外层。和例1类似,ELA接口可以把无法接近的管脚连接到用于逻辑分析的保留管脚。其实,ELA接口无非就是在不改变设计文件的同时复制了这些管脚。

使用ELA的流程和例1相同,区别是设计的输入和输出管脚作为输入通道而非内部连线作为输入通道。这两种应用可以同时在一个ELA实例中实现。而且,触发输出信号能够产生器件的内部事件作为外部逻辑分析仪的触发输入信号。例3不使用外部分析仪监测PLD内部事件

在某种情况下器件没有空闲管脚用于调试,这时ELA可以用于内部信号和监测满足触发条件的通道。这些采样数据保存在PLD的嵌入存储器内,然后通过JTAG口上载到主系统。五个JTAG管脚是器件用于编程的专用管脚,因此器件I/O没有管脚用于调试。

使用采样模式ELA的第一步是和例1一样拖放选择内部连线,而不必修改设计。选择器件的内部连线或管脚作ELA的输入通道后,一个通道必须设置为ELA的采集时钟。所选信号的正沿(上升沿)为通道的采样时刻。如果采样时钟为66MHz的系统时钟,那么ELA将以66MHz采样。以系统速率获取采样数据。

输入通道的样值存储在器件的嵌入存储块内,ELA功能监测输入通道是否发生触发事件。SignalTap接口定义的触发事件如图2所示。每个输入通道可以监测六种不同条件之一。

一旦ELA存储了满足触发状态的足够数据,ELA停止采样监测输入通道。然后数据上载到主机,显示在Quartus的波形编程器中。数据的主载速率取决于JTAG TCK信号的速率。可以使用ByteBlaster并行下载电缆或MasterBlaster串行/USB通信电缆完成主机和JTAG接口间的通信。MasterBlaster USB连接是最快的上载方案。

ELA功能会使用设计本身占用以外的器件资源。ELA是可参数化的,因此能够使用有效的资源。采样缓冲器深度从每通道0个采样到2048个采样。如果增加要样缓冲器,那么存储数据所用的嵌入存储块数目也随之增加。同时,输入通道数目增加,那么实现ELA功能逻辑单元数量也要增加。然而,ELA功能和存储数据占用的资源并不是不切合实际的。表1是中等规模APEX 20K器件实际ELA资源战胜的实例。

在不同的应用中可以组合和自定义这三类情况、简化在系统验证中的一些麻烦。把管脚和内部连线连接到输出管脚创建一个ELA,然后ELA采样并存储数据直至发生触发事件。触发事件可以控制用于外部分析的触发输入管脚的状态,而且可以把ELA从采样模式至上载模式,在主机上观察采样数据。

*博客内容为网友个人发布,仅代表博主个人观点,如有侵权请联系工作人员删除。

参与讨论
登录后参与讨论
推荐文章
最近访客