设计及仿真系统、装置及方法

文档序号:6523597阅读:157来源:国知局
设计及仿真系统、装置及方法
【专利摘要】一种设计及仿真系统、装置及方法。其中的验证模块包括多个场域可程序门阵列、高性能收发器以及储存装置,验证模块用以对电子电路设计的时序和状态进行除错。各个场域可程序门阵列具有信号值压缩电路以及千兆位收发器,以增加各个场域可程序门阵列的扇出。以太网络套接字接口使远程软件,可对处理器指令进行除错。
【专利说明】设计及仿真系统、装置及方法
【技术领域】
[0001]本发明涉及一种设计及仿真系统、装置及方法,特别涉及一种关于电子电路设计的自动化和验证技术。特别地,本发明是关于电子电路设计的自动化和验证技术,该电子电路设计的自动化和验证技术特别适用于单芯片系统(System-on-a-chip, SoC)型电子电路。
【背景技术】
[0002]为了让原型专用集成电路(Prototype Application Specific IntegratedCircuit)被制作为屏蔽式门阵列(Masked Gate Arrays)或标准组件(StandardCell),在惯例上,会运用厂商如XiIinX和Altera,所提供的场域可程序门阵列(FieldProgrammable Gate Array, FPGA)装置以进行制作。然而,场域可程序门阵列装置的引脚(Pin)有限,因此在对不正确的设计除错时,其引脚的限制会造成障碍。个体式的场域可程序门阵列,可通过嵌入式逻辑分析仪(Logic Analyzer)知识产权(IntellectualProperty, IP),以加强可观测性(Observability),但是选路(Routing)和逻辑资源(LogicSource)的成本,会对可达成自动布局选路(Placed and Routed)的用户逻辑(User Logic)的数量,产生负面影响。另外,被进行除错的单一个场域可程序门阵列,可以连接至一计算机主机,以通过计算机主机进行控制和显示;但是,两个以上的场域可程序门阵列难以共同作业,并且难以连接至多个分离的计算机主机。
[0003]已知的场域可程序门阵列是用于原型(Prototype)的大型电子电路,以及用做于除错的方法和工具,该些除错的方法和工具用以对任一场域可程序门阵列上的信号除错。该些工具会向各个场域可程序门阵列,要求大量的选路和逻辑资源,使得该各个场域可程序门阵列不再适用于原型。
[0004]对一个复杂的、具备多个场域可程序门阵列的电子电路除错,会产生问题。对一个需要多个场域可程序门阵列的原型,所具有的各个场域可程序门阵列进行仿真,是可行的;但是对一个跨越了两个场域可程序门阵列之间的边界的问题进行解析,是非常困难的。另夕卜,已知的单一芯片的场域可程序门阵列的除错方案,皆无法等比例调整(Scale)。
[0005]第一代系统控制一场域可程序门阵列,用以编译并传送可被观察的信号到外部引脚。但是,场域可程序门阵列内的输入和输出的引脚,经常被用作为边界资源(BoundingResource),且功能块(Functional Block)可能不完全适用于具有较少引脚的场域可程序门阵列。
[0006]第二代系统嵌入一简易的内部逻辑分析仪,以引发一个简单的逻辑方程式,并传递一小型事件序列。在多个实际例子中,这种内部逻辑分析仪被期许能发挥作用,但是其功效不如预期。
[0007]第三代系统结合了多个场域可程序门阵列,但只让其中一个场域可程序门阵列可被探测。它只能对刚好发生在同一区域的设计之中的问题,进行除错。它无法对跨越了场域可程序门阵列的分区的问题,进行处理。[0008]最近,四种高性能收发器的机型已被导入,以解决不同的需求:ArtiX-7FPGAs的GTP机型(6.6Gb/s),在极低成本的组件中,提供主流低功耗连接性(Mainstream Low PowerConnectivity) ;Kintex_7 和 Virtex_7FPGAs 的 GTX 机型(12.5Gb/s),提供成本效益(CostEffective)为 12.5Gb/s 的光学和背板的应用;VirteX_7FPGAs 的 GTH 机型(13.1 Gb/s),提供有线的光传输单元(Optical Transport Unit7OTU)里的增强型前向揪错机制(EnhancedForward Error Correction, EFEC),所需的25%开销(Overhead),并提供低功耗的高效能背板应用;Virtex-7HT FPGAs的GTZ机型(28.05Gb/s),启用了带宽为100-400G的应用,该应用可支持主要高速串联(Major High-Speed Serial)和光通讯协议(Optical Protocol)。如同众所周知的,ArtiX、KinteX以及VirteX,均为其各自所有者所拥有的商标。该些商标并非限定用于所举例的市售的千兆位收发器(Gigabit Transceiver)上。在本发明里,千兆位收发器可以是任何上述物品或等效物品,其不受任何局限。
[0009]一个常规的场域可程序门阵列除错工具,被限制于只能对单一场域可程序门阵列内的信号除错,常规的场域可程序门阵列除错工具亦会消耗资源,该些被消耗的资源会使得单一场域可程序门阵列内的可被应用的用户逻辑量变少。这使得用户逻辑的布局选路变得更加艰难,因为除错电路会消耗引脚、逻辑组件以及通讯频道的资源。
[0010]以下为常规的设计流程的步骤:
[0011]1.常规:设定用户设计(User Design)
[0012]la.执行起始设计入门(Initial Design Entry)
[0013]lb.执行合成(Synthesis)以及布局选路
[0014]Ic.编程单一装置和测试
[0015]2.常规:设定常规的嵌入式逻辑分析仪
[0016]2a.创建需要可观测性的信号文件
[0017]2b.选择信号进行分析
[0018]2c.设定信号、触发器(trigger)、条件触发器(conditional trigger)、分层触发器(hierarchical trigger)
[0019]3.常规:撷取、显示,以及分析采样信号值(Sample Signal Value)
[0020]3a.再次编程单一装置和测试
[0021]3b.在连接的计算机主机上显示采样信号值
[0022]3c.分析数据,以解析该用户设计的问题。
[0023]因此,可以得知,需要一种方法来对一单芯片系统除错,该单芯片系统具备可在嵌入式处理器上执行的软件。特别地,其需解决的问题是去触发逻辑值,该逻辑值是被撷取而作为一信号序列组合(Combination of Signal Sequence)的结果,该信号序列组合的结果是应用于多个场域可程序门阵列之间。

【发明内容】

[0024]本发明的目的在于提供一种方法和系统,用以设计可重构平台以及仿真用户设计。一验证模块以及一接口被编译至一场域可程序门阵列,接口连接至一用户工作站。验证模块可用以追踪一信号,信号位于其他的场域可程序门阵列。一逻辑值通道的电路编译至各个场域可程序门阵列,以启用验证模块,以触发并捕获其他场域可程序门阵列内的逻辑值。本发明可被执行于一平台,该平台具有内存和多个场域可编程逻辑设备,例如可程序门阵列。在一实施例之中,多个场域可程序门阵列、高性能收发器以及储存装置(例如第三代双倍数据率同步动态随机存取内存,Double-Data-Rate Three Synchronous DynamicRandom Access Memory, DDR3),会提供一验证模块,验证模块用以对一嵌入式处理器设计上的时序和型态进行除错。信号值压缩电路以及千兆位收发器被嵌入至各个场域可程序门阵列,以增加各个场域可程序门阵列的扇出。千兆位以太网络套接字接口使远程软件,可对处理器指令进行除错。
[0025]根据本发明的一实施例,使用该用以对用户设计进行仿真以及除错的系统时,用户会生成一个顶层模块(Top-Level Module),顶层模块包含用户设计。该用户会将用户设计合成并划分至各个分区,分区可被执行于其中一可编程逻辑设备。另外,各个可编程逻辑设备皆被分配一个数据值通道。藉由该数据值通道,各个分区可被完全得显现在逻辑分析仪上,该逻辑分析仪可被验证模块的可编程逻辑设备所执行。分区和数据值通道电路是用以布局选路,并执行于可编程逻辑设备。
[0026]根据本发明的一实施例,该系统可提供一系统除错工具,系统除错工具用以在运作时间内,对多个可编程逻辑设备内或可编程逻辑设备之间的信号,进行监控和分析。系统除错工具可包括一场域可程序门阵列回读工具(Read Back Tool)、一数据值通道,以及一内部逻辑值分析工具。内部逻辑分析仪包括一可编程逻辑设备,可编程逻辑设备被组态为一电路,该电路用以执行一逻辑分析仪。
[0027]以下结合附图和具体实施例对本发明进行详细描述,但不作为对本发明的限定。
【专利附图】

【附图说明】
[0028]图1是一单芯片系统分区逻辑模块的方框图;
[0029]图2是一验证模块的方框图;
[0030]图3是一结合了两个模块的系统示意图;
[0031]图4是一结合了两个模块于一单一印刷电路板的装置的方框图。
【具体实施方式】
[0032]现在请参考附图描述的本发明的各个态样的实施例。需理解的是,附图仅作为根据实施例的态样而呈现和示意,其不对本发明的范围造成限制,附图亦不是按照比例所绘制。
[0033]如图1所示,在一实施例之中,一场域可程序门阵列(Field Programmable GateArray, FPGA) 311是一单芯片系统(System On Chip, SoC)分区逻辑模块的组件,单芯片系统分区逻辑模块通过一通道321而耦合至其他模块。场域可程序门阵列311被组态,使得场域可程序门阵列311包括一用户设计分区312以及一通道接口 313,电路信号值可从通道接口 313传入或读出。
[0034]在一实施例之中,如图2所示,本发明包括一验证模块380,验证模块380耦合至一用户工作站390,验证模块380亦通过通道321、322而耦合至多个单芯片系统分区逻辑模块。在一实施例之中,验证模块380包括一储存装置389。验证模块380包括一场域可程序门阵列381 ;场域可程序门阵列381被组态,以包括一逻辑分析仪382和至少一通道接口383,3840各个通道接口 383、384耦合至一通道321、322。
[0035]如图3所不,在一实施例之中,一系统300包括多个场域可程序门阵列310、360,多个场域可程序门阵列310、360通过通道321、326而耦合至一验证模块380,该验证模块380依次耦合至一用户工作站390。通道321、326的优点是,其克服了可用的引脚(Pin)的数量的限制,引脚是用以在验证模块380中传输信号到逻辑分析仪。
[0036]从图4可得知,一单一印刷电路板可提供一场域可程序门阵列和一逻辑分析仪382,场域可程序门阵列是组态成一用户设计分区312。用户工作站390提供一图形化用户接口,以供一人类用户控制并操作一电子式可重组态原型系统400。通过图形化用户接口,用户工作站390的用户可以连接至一用户设计(User Design)、选择可观测性(Observability)的信号,以及设置触发器,以撷取数据并查看后续仿真的结果。用户工作站390可被一工程工作站或一个人计算机所执行运用。在本实施例之中,用户工作站390通过一工业标准通讯接口而向逻辑分析仪382通讯,工业标准通讯接口例如为USB、PC1、IEEE-1394 (firewire)或是其他工业标准连接总线。
[0037]本发明所举例的较佳实施例如以下所述,但不局限于以下所述:
[0038]在一实施例中,一系统用以设计和仿真一嵌入式处理器设计。该系统包括一验证模块和至少一单芯片系统(SoC)分区逻辑模块。验证模块包括一接口、至少一场域可编程逻辑设备、至少一通道接口和多个千兆位收发器(Gigabit Transceiver)。接口用以连接至一用户工作站。至少一场域可编程逻辑设备组态为一常规的嵌入式逻辑分析仪知识产权(intellectual property, IP)电路说明。通道接口用于传输一第一频率(Clock)和一用户信号压缩(User Signal Compression)。至少一单芯片系统(SoC)分区逻辑模块I禹合至验证模块的至少一通道接口。各个单芯片系统分区逻辑模块包括多个场域可编程逻辑设备和另外的至少一场域可编程逻辑设备。多个场域可编程逻辑设备是用以仿真一用户设计;其中各个场域可编程逻辑设备包括一通道,通道包括一电路,电路耦合到至少一通道接口该通道接口用于传输一第二频率和一用户信号压缩;藉此,分配给其中一场域可编程逻辑设备的其中一部分的用户设计,可经由多个千兆位收发器,而和分配给其他场域可编程逻辑设备的其他部分的用户设计通讯。另外的至少一场域可编程逻辑设备是组态成一处理器,并耦合至各个其他场域可编程逻辑设备的该通道接口的该电路;藉此,可实时得监控机板上的整体频率(Global Clock),监控和显示电压、电流和温度;藉由软件设定外部1/0电压,以及藉由软件达成远程整体重置(Global Reset) 0
[0039]在一实施例之中,通道接口可包括一频率信号控制器以及串化器/解串化器(SerDes)功能件。
[0040]在另一实施例之中,通道接口包括一频率信号控制器以及一低电压差分信号(Low-voltage differential signaling, LVDS)接口电路或千兆位收发器。
[0041]在一实施例的系统中,系统提供了通道接口的各个电路,用以对信号值和先前写入至储存装置的信号逻辑值进行比较;以及用以写入新信号逻辑值至储存装置。
[0042]在另一实施例之中,当信号值符合储存装置所储存的信号逻辑值时,各个通道接口的电路对通道接口传输一地址,该地址是储存了信号逻辑值的储存装置的地址。
[0043]在另一实施例之中,通道接口的各个电路传输一新信号值和一地址,该地址是储存了新信号值的储存装置的地址。[0044]在一实施例之中,验证模块更包括一储存装置,储存装置用以储存用户信号逻辑值压缩(User Signal Logic Value Compression),储存装置通信得稱合至一场域可编程逻辑设备,场域可编程逻辑设备包括一嵌入式逻辑分析仪。
[0045]在本发明的另一态样中,一种装置包括一印刷电路板。印刷电路板包括一接口、至少一场域可编程逻辑设备、至少一通道接口、其他的至少一场域可编程逻辑设备,以及另外的至少一场域可编程逻辑设备。接口用以连接至一用户工作站。至少一场域可编程逻辑设备组态为一常规的嵌入式逻辑分析仪知识产权电路说明。通道接口用于传输一第一频率和一用户信号压缩。其他的至少一场域可编程逻辑设备用以仿真一用户设计,其中各个场域可编程逻辑设备包括多个千兆位收发器、一千兆位以太网络套接字接口和一通道。千兆位以太网络套接字接口,用以进行远程软件除错。通道包括一电路,电路耦合到至少一通道接口,通道接口用于传输一第二频率和一用户信号压缩;藉此,分配给其中一场域可编程逻辑设备的其中一部分的用户设计,可以和分配给其他场域可编程逻辑设备的其他部分的用户设计通讯。另外的至少一场域可编程逻辑设备,被组态成用以执行一进阶精简指令集机器(Advanced RISC Machine, ARM)处理器的软件指令。
[0046]在一实施例之中,嵌入式逻辑分析仪耦合至一电路,该电路用以由一储存装置,接收一用户信号压缩地址、读取一信号值,以及传送信号值到该用户工作站或一远程除错件。
[0047]在另一实施例之中,其中当信号值被预先储存至一储存装置(例如DDR3装置)时通道接口的电路传递一地址。
[0048]在本发明的另一态样中,一方法用以验证一嵌入式处理器用户设计的时序和状态,该方法包括:步骤(i):提供一验证模块;验证模块包括一接口、至少一场域可编程逻辑设备和至少一通道接口 ;其中接口用以连接至一用户工作站;至少一场域可编程逻辑设备组态为一常规的嵌入式逻辑分析仪知识产权电路说明;通道接口用于传输一第一频率和一用户信号压缩。步骤(ii):提供至少一单芯片系统分区逻辑模块,至少一单芯片系统分区逻辑模块耦合至验证模块的通道接口,各个单芯片系统分区逻辑模块包括多个场域可编程逻辑设备(Field Programmable Logic Device, FPLD)多个场域可编程逻辑设备用以仿真一用户设计;其中各个场域可编程逻辑设备包括一通道,通道包括一电路,电路耦合至少一通道接口,该通道接口用于传输一第二频率和一用户信号压缩。步骤(iii):藉由使用一计算机以生成一顶层模块,顶层模块包括用户设计以及至少一嵌入式逻辑分析仪知识产权电路说明。步骤(iv):藉由使用计算机,将用户设计划分为多个分区,各个分区分别用于组态至其中一场域可编程逻辑设备。步骤(V):藉由使用计算机,将电路分配至各个场域可编程逻辑设备,使电路连接至被组态至场域可编程逻辑设备的分区,藉此,分区可藉由计算机而和其他场域可编程逻辑设备的其他分区通讯。以及步骤(Vi):藉由使用计算机,将一电路分配至至少一场域可编程逻辑设备,该电路通过一千兆位以太网络套接字接口,而传递和接收多个指令和多个信号逻辑值。
[0049]本方法改善地增加一步骤:藉由使用一计算机和一千兆位以太网络套接字接口,以设置一多芯片连接方法。多芯片连接方法是用以对一原型除错和验证一处理器指令,该原型跨越多个芯片分界。
[0050]在一实施例之中,设置一多芯片连接方法包括:创造一信号文件,该信号文件需要可观测性(Observability)。[0051]增加的步骤可包括:划分该顶层模块,以使至少一嵌入式逻辑分析仪知识产权电路说明被划分至验证模块;藉此,通过使用一计算机,可使接口提供至少一触发器,并使接口传送至少一触发器获取的多个传输信号值。增加的步骤可包括:通过使用一计算机,将各个分区布局选路至一图像文件案,该图像文件案包括多个备用资源,且图像文件案用以组态至其中一个可编程逻辑设备。一更佳的方法更增加以下步骤:选择分析的信号;以及通过使用一计算机,选择一最佳的通道压缩技术。
[0052]通过使用一计算机,插入一储存装置输入/输出管理影像到图像文件案,图像文件案组包括嵌入式逻辑分析仪知识产权文件,嵌入式逻辑分析仪知识产权文件位于验证模块,藉此,传输量和性能可被改善。
[0053]准备进行模拟时,需要在可编程逻辑设备内,对图像文件案执行布局选路,以及将图像文件案储存至DDR3内存处理器可执行指令。
[0054]一较佳的方法更增加步骤如:a)储存信号逻辑值至储存装置;b)对新信号值和储存的信号逻辑值进行比对;c)若是比对符合时,传输该储存装置的一地址;d)若是比对不符合,传送一地址和信号值;以及e)由储存装置读取信号值。
[0055]本发明的另一态样的装置包括多个场域可程序门阵列装置,该多个场域可程序门阵列装置通信得耦合并黏接至一印刷电路板。印刷电路板包括一接口、至少一场域可程序门阵列、至少一通道接口、其他的至少一场域可编程逻辑设备,以及另外的至少一通道接口。接口连接至一用户工作站。至少一场域可编程逻辑设备组态为一常规的嵌入式逻辑分析仪知识产权电路说明。通道接口用于传输一第一频率和一用户信号压缩。其他的至少一场域可编程逻辑设备被组态为仿真全部或部分的用户设计,其中各个场域可编程逻辑设备被分配到一电路,该电路耦合到至少一通道接口并用以传输用户信号压缩;藉由该电路,分配给其中一场域可编程逻辑设备的其中一部分的用户设计,可以和分配给其他场域可编程逻辑设备的其他部分的该用户设计通讯。另外的至少一通道接口用于传输一第二频率和一用户信号压缩,其通信得耦合至嵌入式逻辑分析仪知识产权电路。
[0056]在另一实施例之中,本发明提供一验证模块,该验证模块耦合到至少一单芯片系统分区逻辑模块,至少一单芯片系统分区逻辑模块具有用户逻辑。验证模块如下所述:
[0057]验证模块耦合到多个原型板,各个原型板包括输入/输出电路以及一场域可程序门阵列。验证模块具有一场域可程序门阵列,场域可程序门阵列完全没有用户逻辑,场域可程序门阵列包括多个逻辑值通道电路,逻辑值通道电路连接至各个原型板。在一实施例之中,验证模块更包括储存电路和一接口电路,接口电路连接至一用户工作站,用户工作站用以控制操作并显示结果。
[0058]验证模块包括多个电路,以进行观察、触发和储存其他场域可程序门阵列内的逻辑值。但是引脚不足会造成问题。
[0059]—种解决方案是,藉由控制一多元调节器(multiplexor),以切换需要的接头点(probe point),以对大量的输出接头分享场域可程序门阵列引脚。
[0060]另一种解决方案是使用低电压差分信号(Low-voltage differentialsignaling,LVDS)驱动器和接收器,以增加场域可程序门阵列之间的数据传输速率,以及传输多重位字(Multiple Bit Word)的逻辑值。另一种解决方案是使用串化器/解串化器(SerDes)技术,以将场域可程序门阵列内的并联总线改变为串联。一更佳的技术是,使用多个场域可程序门阵列之间的千兆位收发器。
[0061]另一种解决方案是,储存位于到各个M4K位缓冲器(M4K Bit Buffer),并在空闲时间或周期之间才进行传输。本发明可以是操作装置的一种方法,该方法包括:选择一个选取框,选取框位在一影像化用户接口上,其中该影像化用户接口的探测,需要一指定的电子电路的缓存器传递语言(Register Transfer Language, RTL)说明;从上述的缓存器传递语言说明取出信号名称(Signal Name);藉由选择内部信号和模块接口的分层目录(Hierarchical Directory),指定信号名称,该信号名称需要可观测性;划分位于多个场域可程序门阵列之间的电子电路;维护一参照索引(Cross Index),该参照索引是多个场域可程序门阵列之间的内部缓存器传递语言信号名称和信号的索引;插入逻辑信号接口和逻辑分析仪电路到设计说明;起始化(Initiating) —缓存器传递语言的合成(Synthesis)至一闸等级网络联机表(Gate Level Netlist),闸等级列表会维持选择的信号名称,以供外部观察;分配信号到各个现场域可程序门阵列的引脚,并分配到场域可程序门阵列之间的路由;以及对各个场域可程序门阵列进行布局选路。
[0062]以下为在较佳实施例中,改善的设计流程的改善步骤:
[0063]1.常规:设定用户设计
[0064]Ia.执行起始设计入门(Initial Design Entry)
[0065]lb.执行合成(Synthesis)以及布局选路
[0066]Ic.编程单一装置和测试
[0067]2.改良:设置多芯片连接方法,用以对原型除错
[0068]2a.创建需要可观测性的信号文件
[0069]2a+1.改良:在多个芯片之中,划分用户设计以及常规的嵌入式逻辑分析仪
[0070]2a+i1.执行合成,以及对各个场域可程序门阵列进行布局选路
[0071]2b.选择信号进行分析
[0072]2b+ii1.改良:选择最佳的通道压缩技术
[0073]2c.设定信号、触发器(trigger)、条件触发器(conditional trigger)、分层触发器(hierarchical trigger)
[0074]2c+iv.改良:插入一压缩通道接口影像到各个编程文件
[0075]2c+v.改良:插入储存装置输入/输出管理影像到各个编程文件
[0076]3.改良:撷取、显示,以及从多芯片原型分析样本信号值
[0077]3a.再次编程单一装置并测试
[0078]3a+v1.改良:编程多个装置并测试
[0079]3a+vi1.改良:写入信号值至芯片外(off-chip)储存器
[0080]3a+vii1.改良:对新信号值和储存的信号值进行比对
[0081]3a+ix.改良:传递信号值的芯片外储存器的地址(仅在先前的信号值并未传递时)
[0082]3a+x.改良:由芯片外储存器读取信号值
[0083]3b.在连接的用户工作站上显示采样信号值
[0084]3c.分析数据,以解析该用户设计的问题。
[0085]本发明的一态样可以理解为一系统,该系统用以设计和仿真用户设计。该系统的一部分包括一验证模块和至少一单芯片系统分区逻辑模块。验证模块包括一接口、至少一场域可编程逻辑设备和至少一通道接口。接口用以连接至一用户工作站。至少一场域可编程逻辑设备组态为一常规的嵌入式逻辑分析仪知识产权电路说明。通道接口用于传输一第一频率和一用户信号压缩。但验证模块不具有用户设计逻辑。该设计已被划分至分区逻辑模块。至少一单芯片系统分区逻辑模块耦合至该至少一通道接口 ;各个单芯片系统分区逻辑模块包括多个场域可编程逻辑设备和另外的至少一通道接口。多个场域可编程逻辑设备,用以仿真一用户设计,其中各个场域可编程逻辑设备被分配一电路,该电路耦合到至少一通道,藉由该通道,该场域可编程逻辑设备的分区可和其他场域可编程逻辑设备的其他分区通讯。另外的至少一通道接口用于传输一第二频率和一用户信号压缩。其优点在于,跨越数个场域可程序门阵列的分区,并不具有逻辑分析仪知识产权,藉此,布局选路会更为容易。逻辑分析仪所需的预先的布局选路资源,会减少可被除错的用户设计的尺寸。
[0086]在一实施例之中,用于传输频率和用户信号压缩的通道接口包括多个串化器/解串化器功能件。在一实施例之中,用于传输频率和用户信号压缩的通道接口包括一低电压差分信号接口电路。在一实施例之中,用于传输频率和用户信号压缩的通道接口包括至少一信号多路转换电路(Signal Multiplexor Circuit)。在一实施例之中,千兆位收发器提供跨芯片数据转换(Interchip Data Transfer)。
[0087]在一实施例之中,用于传输频率和用户信号压缩的通道接口包括一频率信号控制器。
[0088]为了避免受到厂商供应所限制,本发明的应用整合了场域可编程逻辑设备和场域可程序门阵列及其等效替换物的用语。
[0089]在一实施例之中,验证模块进一步和一芯片外储存器(Off-chip Storage)整合,该储存器通讯得耦合到一场域可编程逻辑设备,该场域可编程逻辑设备具有一嵌入式逻辑分析仪。因此,信号值量会远大于可编程逻辑设备的内部储存器的可储存量。且该储存器的地址可被用于以非线性的方式,进一步得压缩数据传输。
[0090]验证模块更包括:一芯片外储存器输入/输出管理电路,以在电路板上进行写入至储存装置,或由储存装置读取。
[0091]如果用户对储存的信号值感兴趣,信号值可被电路传送,以便从芯片外储存器读取信号值,且信号值亦可被传送到一用户工作站以供观看、比对和分析。
[0092]被设计用以有效率得传输数据值的一装置,可包括一电路(或被指令组态的一处理器),以判断数据值是否和预先储存至内存内的数值相同,以及判断地址。当一信号值曾被或将要被储存至芯片外储存器,且该芯片外储存器位于上述的地址时,可利用一电路来传输该储存器的地址。
[0093]本发明的另一态样的方法,是用以功能性地评估一用户设计,该方法包括:(i)提供一验证模块,验证模块包括一接口、至少一场域可编程逻辑设备和至少一通道接口。接口用以连接至一用户工作站。至少一场域可编程逻辑设备组态为一常规的嵌入式逻辑分析仪知识产权电路说明。通道接口用于传输一第一频率和一用户信号压缩,且通道接口使验证模块连接至所有的场域可程序门阵列,该些所有的场域可程序门阵列具有对验证有益的信号。该方法也包括:(ii)提供至少一单芯片系统分区逻辑模块,至少一单芯片系统分区逻辑模块耦合至一通道,该通道用以传输频率和用户信号压缩。各个单芯片系统分区逻辑模块包括多个场域可编程逻辑设备和至少一通道接口。多个场域可编程逻辑设备用以仿真用户设计。通道接口用以传输第二频率以及用户信号压缩。
[0094]该方法更包括生成一顶层模块,顶层模块包括该用户设计以及至少一嵌入式逻辑分析仪知识产权电路说明;(iv)将用户设计划分为多个分区,各个分区分别用于组态至其中一场域可编程逻辑设备;以及(V)将至少一通道接口分配至分配各个可编程逻辑设备,藉由被组态至可编程逻辑设备的分区的至少一通道,该场域可编程逻辑设备的分区可和其他场域可编程逻辑设备的其他分区通讯。该些处理器或步骤,是通过自动化计算机,从许多源文件中改造许多大型文件,以形成较少的中级文件,接着再次改造中级文件,以符合在多个场域可程序门阵列之中可获得的资源。通过简单人工的方式,无法将来源文件改造成二进制影像(Binary Image),该二进制影像位于一编程文件中,用以控制一场域可程序门阵列内的电路路径。
[0095]划分过程将设计拆散成用户设计的多个分区,各个分区用以执行于一单一场域可程序门阵列。在一实施例中,划分指令引用一第三方划分工具(Third Party PartitionTool) o由于互连方案(Interconnection Scheme)使用上述的数据值通道,划分工具可根据一目标,该目标是最大限度得运用场域可程序门阵列的容量,而进行优化划分,该划分不受场域可程序门阵列的引脚所限制。划分程序替各个场域可程序门阵列生成一独立网络联机表。划分会保留所有设计讯息和用户设计的功能。另外,第三方划分程序或手动划分可被用以划分设计。划分程序可以指定限制条件,限制条件可以引导划分程序针对一指定的硬件,而生成一网络联机表。
[0096]在用户设计上执行划分程序后,编译程序使用布局选路程序,以在各个场域可程序门阵列的网络联机表上进行操作。布局选路程序是常见的场域可程序门阵列特定供货商所提供的程序,其可将各个网络联机表翻译成二进制格式(Binary Format)或美国信息交换标准石马(American Standard Code for Information Interchange, ASCI I)格式的文件。输出文件可被下载至场域可程序门阵列。在一实施例中,布局选路程序是在一个以上的用户工作站或处理器上运作,以使多个场域可程序门阵列的布局选路可以同时进行。布局选路的二进制格式或美国信息交换标准码输出文件,可被储存至用户工作站,以进一步的运行软件程序。
[0097]验证模块专门用以执行一内部逻辑分析仪知识产权或一流量/状态分析仪。藉由该些知识产权,系统设计者可对运行时的组态系统进行除错。例如,一内部逻辑分析仪知识产权可被用作在用户设计内的特定触发点上,对信号值取样,并将取样储存到内存组件,以供后续分析。运行软件可在运行时,存取或操纵除错知识产权。
[0098]内部逻辑分析仪工具对逻辑分析仪设定触发条件,该逻辑分析仪是内嵌于验证模块的内部。逻辑分析仪将一特定知识产权下载至验证模块。逻辑分析仪知识产权可提供和常规的逻辑分析仪一样的功能。逻辑分析仪知识产权可提供大量的信号采样,并处理大量的触发条件。在一实施例中,内部逻辑分析仪工具对嵌入式逻辑分析仪知识产权设定触发条件,等待触发条件或事件发生,从逻辑分析仪知识产权的内嵌式采样内存读取信号采样数据,并将采样数据和用户定义标志(User Defined Symbol)联系(Associate)。在一实施例中,内部逻辑分析仪工具设定一复杂事件状态机(Complicated Event State Machine),复杂事件状态机位于逻辑分析仪知识产权内。复杂事件状态机会根据一用户定义序列的条件,以操作并对信号数据采样,以供除错。藉由逻辑分析仪知识产权,用户可在运行状态时进行监控(例如,可在电路模式(In-Circuit Mode)时进行操作,而不是在停止或暂停时执行)。
[0099]藉由设置一多芯片连接方法,该多芯片连接方法是用以对一原型除错,该原型跨越多个芯片分界,可对本发明进行区分。
[0100]首先,在一图型化显示器上,使一程序执行用户选择程序,以创造一信号文件,该信号文件需要可观测性。
[0101]在本方法的下一步骤中,划分顶层模块,以使至少一嵌入式逻辑分析仪知识产权电路说明被划分至验证模块,藉此,用以连接至一用户工作站的一接口,可提供至少一触发器,并使接口传送该至少一触发器所获取的传输信号值。
[0102]接着,本方法如预期得,将各个分区布局选路至一图像文件案,该图像文件案具有备用资源,该图像文件案可用以组态其中一个可编程逻辑设备。
[0103]本发明可被下列两个步骤区分:a)选择分析的信号;以及b)选择最佳的通道压缩技术。需要分析的信号数量,会对于选择通道压缩技术造成直接的影响,选择通道压缩技术是用以满足触发的带宽的要求;在用户设计中,需要分析的信号数量亦会对撷取信号值造成直接的影响。
[0104]当该技术被用以从仿真的场域可程序门阵列,转发信号值到逻辑分析仪场域可程序门阵列时,其将变得有助于a)设定可观察的信号、触发器、条件触发器,以及分层触发器;以及b)插入至少一通道接口影像到各个上述的图像文件案,图像文件案具有备用资源,且图像文件案可用以组态至其中一个可编程逻辑设备。该接口可控制并复杂地操作引脚,以跨越验证模块而发送数据。
[0105]在一实施例之中,插入一芯片外储存器输入/输出管理影像至一图像文件案,该图像文件案位于验证模块并具有嵌入式逻辑分析仪知识产权文件,藉此,可改造编程文件。
[0106]藉由分析和将电路描述语言文件改造成图像文件案,以产生必要的编程文件后,该程序引用自动化执行布局选路图像文件案,该自动化执行布局选路图像文件案位于可编程逻辑设备内。
[0107]在一实施例之中,该计算机执行方法更进一步地执行指令控制电路,以进行:a)储存信号值至芯片外储存器,b)对新信号值和储存的信号逻辑值进行比对,c)若是比对符合时,传输芯片外储存值的地址,d)若是比对不符合,传送一地址和信号值,以及e)由芯片外储存器读取信号值。
[0108]该方法的所有步骤可更进一步得转化为计算机可读指令(Computer ReadableInstruction),并储存于或读取于一非暂时性介质(Non-Transitory Medium)。
[0109]本发明的实施例可被应用于各种计算机系统架构,包括手持式装置、微处理器系统、微处理器架构或可编程的消耗性电子产品、微电脑、大型计算机及其他类似装置。本发明亦可被应用于分布式计算器环境,分布式计算器环境是通过网络连接到远程处理设备以执行任务。
[0110]藉由上述实施例的描述,应可理解本发明可被应用于操作程序,操作程序是储存于计算机系统中,以供各种计算机执行和引用数据。该些操作程序需要通过物理性质的操作,才可被运行。通常,但非必要得,该些物理性质的操作是电或磁信号的形式,其能够被储存、传输、结合、比对,以及其他操作。
[0111]在本发明之中,本文所描述的任何操作皆为有用的机械操作。本发明也关于一装置或一机器,该装置或该机器可用以进行该些操作。该装置可以为所需目的而特别制作;该装置亦可为一通用型计算机,通过储存在通用型计算机内的一计算机程序,通用型计算机可被选择性地开启或组态。特别是,各种通用型机器皆可以根据本文的教导而运用计算机程序;另外,也可以特地建构一更为专门的装置,以执行符合特殊需要的操作。
[0112]本发明亦可以被具体实施为一可读代码,该可读代码是位于一非暂时性的计算机可读介质上。计算机可读介质是可以储存数据的任何数据储存装置,其可在往后供一计算机系统读取。非暂时性的计算机可读介质例如为硬盘、网络附加储存(network attachedstorage, NAS)、只读存储器、随机存取内存、只读记忆光盘(⑶-ROMs)、可录光盘(⑶-Rs)、可复写光盘(CD-RWs)、磁带,以及其他光学和非光学数据储存装置。计算机可读介质亦可以分散在网络耦合的计算机系统上,使得计算机可读代码以分布式的方式被储存和执行。在此应用中,计算机可读介质是指任何众所周知的非短暂性的有形介质。
[0113]为了便于清楚地理解本发明的目的,本发明虽已描述了一些细节,但在所附权利要求的范围内,显然亦可实施某些变化和修改。因此,本案的实施例应被视为说明,而非加以限制,本发明不应被本文所述的细节限制,而应以权利要求范围内所述的范围或等校的范围为准。
[0114]藉由本发明,可轻松地将常规的专用集成电路(application specificintegrated circuit, ASIC)原型方案区分为:L 一紧凑且高效的逻辑信号值传输,该逻辑信号值传输是应用于一场域可程序门阵列内的用户逻辑和另一场域可程序门阵列内的逻辑分析仪知识产权之间;2.在一用户工作站上,使层次化缓存器传递语言信号名称具有可见度(Visibility),其中该用户工作站缺少关于场域可程序门阵列的实际信号踪迹(Actual Signal Trace)的知识;以及3.在多个场域可程序门阵列系统内,减少重复的逻辑分析仪知识产权,以便更为轻松得进行布局选路。
[0115]当然,本发明还可有其它多种实施例,在不背离本发明精神及其实质的情况下,熟悉本领域的技术人员当可根据本发明作出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。
【权利要求】
1.一种设计及仿真系统,用以设计及仿真一嵌入式处理器设计,其特征在于,该系统包括: 一验证模块,包括: 一接口,用以连接至一用户工作站; 至少一场域可编程逻辑设备,该至少一场域可编程逻辑设备组态为一嵌入式逻辑分析仪知识产权电路说明; 至少一通道接口,该通道接口用于传输一第一频率和一用户信号压缩;及 多个千兆位收发器;以及 至少一单芯片系统分区逻辑模块,该至少一单芯片系统分区逻辑模块耦合至该验证模块的该至少一通道接口,各个单芯片系统分区逻辑模块包括: 多个场域可编程逻辑设备,用以仿真一用户设计;其中各个场域可编程逻辑设备包括一通道,该通道包括一电路,该电路耦合到至少一通道接口,该通道接口用于传输一第二频率和一用户信号压缩;藉此,分配给其中一场域可编程逻辑设备的其中一部分的该用户设计,经由该多个千兆位收发器,而和分配给其他场域可编程逻辑设备的其他部分的该用户设计通讯 '及 至少一场域可编程逻辑设备,其是组态成一处理器,并耦合至各个其他场域可编程逻辑设备的该通道接口的该电路。
2.根据权利要求1所述的设计及仿真系统,其特征在于,该通道接口包括:一频率信号控制器,以及多个千兆位收发器背板功能块。
3.根据权利要求1所 述的设计及仿真系统,其特征在于,该通道接口包括:一频率信号控制器,以及一千兆位收发器光学接口电路。
4.根据权利要求1所述的设计及仿真系统,其特征在于,该通道的该电路会将一信号逻辑值写入至一储存装置,并对一信号值和先前写入至该储存装置的该信号逻辑值进行比较。
5.根据权利要求4所述的设计及仿真系统,其特征在于,其中当该信号值符合该信号逻辑值时,该各个通道的该电路对该通道接口传输一地址,该地址是储存了该信号逻辑值的该储存装置的地址。
6.根据权利要求1所述的设计及仿真系统,其特征在于,其中该各个通道接口的该电路对该通道接口传输一信号值和一地址,该地址是储存了该信号值的一储存装置的地址。
7.根据权利要求1所述的设计及仿真系统,其特征在于,其中该验证模块更包括:一储存装置,用以储存用户信号逻辑值压缩,该储存装置通信得耦合至一场域可编程逻辑设备,该场域可编程逻辑设备包括一嵌入式逻辑分析仪。
8.一种设计及仿真装置,包括一印刷电路板,其特征在于,该装置包括: 一接口,用以连接至一用户工作站; 至少一场域可编程逻辑设备,该至少一场域可编程逻辑设备组态为一嵌入式逻辑分析仪知识产权电路说明; 至少一通道接口,该通道接口用于传输一第一频率和一用户信号压缩; 至少一其他的场域可编程逻辑设备,用以仿真一用户设计;其中各个场域可编程逻辑设备包括:多个千兆位收发器; 一千兆位以太网络接口,用以进行远程软件除错; 一通道,该通道包括一电路,该电路耦合到至少一通道接口,该通道接口用于传输一第二频率和一用户信号压缩;藉此,分配给其中一场域可编程逻辑设备的其中一部分的该用户设计,和分配给其他场域可编程逻辑设备的其他部分的该用户设计通讯;以及 至少一场域可编程逻辑设备,组态成用以执行一进阶精简指令集机器处理器的软件指令。
9.根据权利要求8所述的设计及仿真装置,其特征在于,其中被组态为该嵌入式逻辑分析仪知识产权电路说明的该嵌入式逻辑分析仪,耦合至一电路,该电路用以由一储存装置,接收一用户信号压缩地址、读取一信号值,以及传送该信号值到该用户工作站或一远程除错件。
10.根据权利要求9所述的设计及仿真装置,其特征在于,其中当该信号值被预先储存至该储存装置时,该通道的该电路传递一地址。
11.一种设计及模拟方法,用以验证一嵌入式处理器用户设计的时序和状态,其特征在于,包括: 提供一验证模块,该验证模块包括:一接口,用以连接至一用户工作站; 至少一场域可编程逻辑设备,该至少一场域可编程逻辑设备组态为一嵌入式逻辑分析仪知识产权电路说明;以及至少一通道接口,该通道接口用于传输一第一频率和一用户信号压缩; 提供 至少一单芯片系统分区逻辑模块,该至少一单芯片系统分区逻辑模块耦合至该验证模块的该通道接口,各个单芯片系统分区逻辑模块包括多个场域可编程逻辑设备,该多个场域可编程逻辑设备用以仿真一用户设计;其中各个场域可编程逻辑设备包括一通道,该通道包括一电路,该电路耦合到至少一通道接口,该通道接口用于传输一第二频率和一用户信号压缩; 藉由使用一计算机,以生成一顶层模块,该顶层模块包括该用户设计以及至少一嵌入式逻辑分析仪知识产权电路说明; 藉由使用该计算机,将该用户设计划分为多个分区,各个分区分别用于组态至其中一场域可编程逻辑设备; 藉由使用该计算机,将该电路分配至各个场域可编程逻辑设备,使该电路连接至被组态至该场域可编程逻辑设备的该分区,藉此,该分区可藉由该计算机而和其他场域可编程逻辑设备的其他分区通讯;以及 藉由使用该计算机,将一电路分配至该至少一场域可编程逻辑设备,该电路通过一千兆位以太网络套接字接口,而传递和接收多个指令和多个信号逻辑值。
12.根据权利要求11所述的设计及仿真方法,其特征在于,更包括:藉由使用该计算机和一千兆位以太网络套接字接口,以设置一多芯片连接方法,该多芯片连接方法是用以对一原型除错和验证一处理器指令,该原型跨越多个芯片分界。
13.根据权利要求12所述的设计及仿真方法,其特征在于,其中设置一多芯片连接方法包括:创造一信号文件,该信号文件需要可观测性。
14.根据权利要求13所述的设计及仿真方法,其特征在于,更包括:划分该顶层模块,以使该至少一嵌入式逻辑分析仪知识产权电路说明被划分至该验证模块;藉此,通过使用该计算机,可使该接口提供至少一触发器,并使该接口传送该至少一触发器获取的该多个传输信号值。
15.根据权利要求14所述的设计及仿真方法,其特征在于,更包括: 通过使用该计算机,将各个分区布局选路至一图像文件案,该图像文件案包括多个备用资源,且该图像文件案用以组态至其中一个可编程逻辑设备。
16.根据权利要求15所述的设计及仿真方法,其特征在于,更包括: 选择分析的信号;以及 通过使用该计算机,选择一通道压缩技术。
17.根据权利要求15所述的设计及仿真方法,其特征在于,更包括:通过使用该计算机,插入一储存装置输入/输出管理影像到该图像文件案,该图像文件案组包括该嵌入式逻辑分析仪知识产权文件,该嵌入式逻辑分析仪知识产权文件位于该验证模块。
18.根据权利要求17所述的设计及仿真方法,其特征在于,更包括:在该可编程逻辑设备内,对该图像文件案执行布局选路,以及将该图像文件案储存至多个内存处理器可执行指令。
19.根据权利要求18所述的设计及仿真方法,其特征在于,更包括: 储存该多个信号逻辑值至一储存装置; 对多个信号值和储`存的该多个信号逻辑值进行比对; 若是比对符合时,传输该储存装置的一地址; 若是比对不符合,传送一地址和多个信号值;以及 由该储存装置读取信号值。
【文档编号】G06F17/50GK103870627SQ201310683406
【公开日】2014年6月18日 申请日期:2013年12月12日 优先权日:2012年12月13日
【发明者】陈睦仁 申请人:S2C公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1