Clustering of electronic circuit design modules for hardware-based and software-based co-simulation platforms
    1.
    发明授权
    Clustering of electronic circuit design modules for hardware-based and software-based co-simulation platforms 有权
    用于基于硬件和基于软件的协同仿真平台的电子电路设计模块的集群

    公开(公告)号:US08145466B1

    公开(公告)日:2012-03-27

    申请号:US12469897

    申请日:2009-05-21

    IPC分类号: G06F17/50

    CPC分类号: G06F17/5022 G06F2217/86

    摘要: Approaches for preparing simulation models of an electronic circuit are disclosed. The design is partitioned into first and second clusters. The design includes a source module in the first cluster connected to a destination module in the second cluster. The first cluster is compiled into a first model for a software-based co-simulation platform for simulating behavior of the source module using the first model. The first cluster and the second cluster of the design are compiled into a second model for a hardware-based co-simulation platform that includes a programmable logic circuit configurable for emulating behavior of the design using the second model. An interconnection block is generated and stored in the second model. The interconnection block is switchable between coupling of the destination module in the second model to the source module of the first model or to a source module of the second model.

    摘要翻译: 公开了制备电子电路仿真模型的方法。 设计分为第一和第二集群。 该设计包括在第一集群中连接到第二集群中的目标模块的源模块。 第一个集群被编译成基于软件的协同仿真平台的第一个模型,用于使用第一个模型模拟源模块的行为。 该设计的第一个集群和第二个集群被编译成一个基于硬件的协同仿真平台的第二个模型,该平台包括一个可编程逻辑电路,可配置为使用第二个模型模拟设计的行为。 生成互连块并将其存储在第二模型中。 互连块可在第二模型中的目的地模块与第一模型的源模块耦合到第二模型的源模块之间切换。

    Reloadable just-in-time compilation simulation engine for high level modeling systems
    2.
    发明授权
    Reloadable just-in-time compilation simulation engine for high level modeling systems 有权
    用于高级建模系统的可重新加载的即时编译仿真引擎

    公开(公告)号:US08352229B1

    公开(公告)日:2013-01-08

    申请号:US12359409

    申请日:2009-01-26

    IPC分类号: G06F17/50

    CPC分类号: G06F17/5027 G06F9/4552

    摘要: A computer-implemented method of creating a simulation engine for simulating a circuit design can include receiving a source code contribution from a high level modeling system and receiving a simulation model specified in an interpretive language that specifies the circuit design. The source code contribution can be compiled together with the simulation model using a Just-In-Time compiler. A simulation engine, specified in native machine code, can be output as a single, integrated software component formed from the source code contribution and the simulation model.

    摘要翻译: 用于创建用于模拟电路设计的模拟引擎的计算机实现的方法可以包括从高级建模系统接收源代码贡献,并且接收指定电路设计的解释语言中指定的仿真模型。 可以使用即时编译器将源代码贡献与仿真模型一起编译。 以本机代码指定的模拟引擎可以作为由源代码贡献和仿真模型组成的单一的集成软件组件输出。

    Conversion of a high-level graphical circuit design block to a high-level language program
    3.
    发明授权
    Conversion of a high-level graphical circuit design block to a high-level language program 有权
    将高级图形电路设计块转换为高级语言程序

    公开(公告)号:US07992111B1

    公开(公告)日:2011-08-02

    申请号:US12467678

    申请日:2009-05-18

    IPC分类号: G06F9/45

    CPC分类号: G06F8/34

    摘要: Approaches for processing an electronic circuit design. In one embodiment, the graphical model of an outer subsystem block and an inner subsystem block are translated into a high-level language (HLL) program. The HLL program includes a specification of a first function corresponding to the outer subsystem block and within the specification of the first function a specification of a second function corresponding to the inner subsystem block. The specification of the first function references a parameter of the outer subsystem block and specifies invocation of the second function. The specification of the second function specifies invocation of a third function corresponding to a leaf block in the inner subsystem block. The specification of the first function references a variable corresponding to the parameter, and that variable is referenced by the second or third functions. Execution of the HLL program instantiates a model of the design.

    摘要翻译: 处理电子电路设计的方法。 在一个实施例中,外部子系统块和内部子系统块的图形模型被转换为高级语言(HLL)程序。 HLL程序包括与外部子系统块相对应的第一功能的规范,并且在第一功能的规范内包括对应于内部子系统块的第二功能的规范。 第一个函数的规范引用外部子系统块的参数,并指定第二个函数的调用。 第二函数的规范规定了对应于内子系统块中的叶块的第三函数的调用。 第一个函数的规范引用与参数对应的变量,该变量由第二或第三个函数引用。 执行HLL程序实例化设计模型。

    Method and apparatus for providing program-based hardware co-simulation of a circuit design
    4.
    发明授权
    Method and apparatus for providing program-based hardware co-simulation of a circuit design 有权
    用于提供电路设计的基于程序的硬件协同仿真的方法和装置

    公开(公告)号:US08600722B1

    公开(公告)日:2013-12-03

    申请号:US11805133

    申请日:2007-05-22

    IPC分类号: G06F17/50

    CPC分类号: G06F17/5022 G06F2217/86

    摘要: A method and apparatus for providing a program-based hardware co-simulation of a circuit design are described. In one example, a circuit design is implemented for programmable logic to establish a design under test (DUT). A co-simulation model is programmatically generated using primitives defined by an application programming interface (API). The circuit design is simulated by configuring the programmable logic with the DUT and driving a co-simulation engine to communicate with the DUT via execution of the co-simulation model.

    摘要翻译: 描述了一种用于提供电路设计的基于程序的硬件协同仿真的方法和装置。 在一个示例中,实现用于可编程逻辑以建立被测设计(DUT)的电路设计。 使用由应用程序编程接口(API)定义的原语以编程方式生成协同仿真模型。 通过使用DUT配置可编程逻辑来模拟电路设计,并通过执行协同仿真模型驱动协同仿真引擎与DUT进行通信。

    Hardware description interface for a high-level modeling system
    5.
    发明授权
    Hardware description interface for a high-level modeling system 有权
    高级建模系统的硬件描述界面

    公开(公告)号:US08079013B1

    公开(公告)日:2011-12-13

    申请号:US12340473

    申请日:2008-12-19

    IPC分类号: G06F17/50

    CPC分类号: G06F17/5045

    摘要: A computer-implemented method of specifying a circuit design within a high-level modeling system (HLMS) can include, responsive to a scripted user input, instantiating a first and a second block objects within a hardware description interface (HDI) that is communicatively linked with the HLMS and, responsive to instantiating the first and second block objects, creating and displaying, within the HLMS, first and second modeling blocks representing the first and second xBlock objects respectively. Responsive to instantiating, within the HDI, a signal object bound to an output port of the first block object and an input port of the second block object, a modeling line can be created and displayed within the HLMS visually linking an output of the first modeling block with an input of the second modeling block. The first modeling block, second modeling block, and modeling line can be stored as a description of the circuit design.

    摘要翻译: 在高级建模系统(HLMS)中指定电路设计的计算机实现的方法可以包括响应于脚本化的用户输入,在通信地链接的硬件描述接口(HDI)内实例化第一和第二块对象 并且响应于实例化第一和第二块对象,分别在HLMS内创建和显示表示第一和第二xBlock对象的第一和第二建模块。 响应于在HDI内实例化绑定到第一块对象的输出端口的信号对象和第二块对象的输入端口,可以在HLMS内创建和显示建模线,以在视觉上连接第一建模的输出 块与第二建模块的输入。 第一建模块,第二建模块和建模线可以存储为电路设计的描述。

    Synchronization for a modeling system
    6.
    发明授权
    Synchronization for a modeling system 有权
    建模系统的同步

    公开(公告)号:US08042079B1

    公开(公告)日:2011-10-18

    申请号:US12468764

    申请日:2009-05-19

    IPC分类号: G06F17/50

    CPC分类号: G06F17/5054

    摘要: Design synchronization for a High-Level Modeling System (“HLMS”) of an integrated circuit device (“IC”) is described. In a method for generating a netlist, a description of a first circuit block of a user design is input to a programmed computer system programmed with a computer-aided modeling system. The description includes output port information of the first circuit block and synchronization signal information. The computer-aided modeling system selects a circuit core for the first circuit block responsive to output port information and the synchronization signal information, the circuit core including port metadata. The computer-aided modeling system selects at least one macro responsive to the port metadata for generation of the netlist. The macro is for rate synchronized coupling of the first circuit block to a second circuit block of the user design. The computer-aided modeling system outputs the netlist including the macro.

    摘要翻译: 描述了集成电路设备(“IC”)的高级建模系统(“HLMS”)的设计同步。 在用于生成网表的方法中,将用户设计的第一电路块的描述输入到用计算机辅助建模系统编程的编程计算机系统。 该描述包括第一电路块的输出端口信息和同步信号信息。 计算机辅助建模系统响应于输出端口信息和同步信号信息,电路核心包括端口元数据,为第一电路块选择电路核心。 计算机辅助建模系统响应于端口元数据选择至少一个宏来生成网表。 该宏是用于将第一电路块与用户设计的第二电路块的速率同步耦合。 计算机辅助建模系统输出包含宏的网表。

    Hardware and software implementation of an electronic design in a programmable logic device
    7.
    发明授权
    Hardware and software implementation of an electronic design in a programmable logic device 有权
    在可编程逻辑器件中的电子设计的硬件和软件实现

    公开(公告)号:US07669164B1

    公开(公告)日:2010-02-23

    申请号:US11732611

    申请日:2007-04-04

    IPC分类号: G06F17/50

    CPC分类号: G06F17/5054

    摘要: Implementing an electronic design having software-implemented blocks and hardware-implemented blocks. A specification of the electronic design is created in response to selection of blocks from a library, and at least one of the blocks is available for implementation in a selectable one of a software implementation for an embedded processor on a programmable logic device (PLD) and a hardware implementation on the PLD. A specification of each block in a first subset is obtained from the library and translated into an execution function of the software implementation of the block. Peripheral functions are generated for connections between blocks in the first subset and blocks in a second subset, which are designated for a hardware implementation on the PLD. A program is generated that invokes each peripheral function and each execution function in an order determined from the interconnections between the blocks.

    摘要翻译: 实施具有软件实现的块和硬件实现的块的电子设计。 响应于来自库的块的选择创建电子设计的规范,并且至少一个块可用于在可编程逻辑器件(PLD)上的嵌入式处理器的软件实现中的可选择的一个中实现,并且 PLD上的硬件实现。 从库中获得第一子集中的每个块的规范,并将其转换为块的软件实现的执行功能。 为第一子集中的块和第二子集中的块之间的连接生成外围功能,其被指定用于PLD上的硬件实现。 生成以从块之间的互连确定的顺序调用每个外围功能和每个执行功能的程序。

    HDL co-simulation in a high-level modeling system
    8.
    发明授权
    HDL co-simulation in a high-level modeling system 有权
    HDL在高级建模系统中的共模拟

    公开(公告)号:US07203632B2

    公开(公告)日:2007-04-10

    申请号:US10389161

    申请日:2003-03-14

    IPC分类号: G06F17/50

    CPC分类号: G06F17/5022 G06F2217/86

    摘要: Method and apparatus for simulating operations of a circuit design that includes high-level components and HDL components. The high-level components of the design are simulated in a high-level modeling system (HLMS), and the HDL components of the design are simulated with an HDL simulator. Data values are converted from a data type of the HLMS to a logic vector compatible with the HDL simulator for each data value to be input to the HDL simulator, and a logic vector is converted from the HDL simulator to a data value of a data type compatible with the HLMS for each logic vector output from the HDL simulator. Events are scheduled for input to the HDL simulator as a function of the time of HLMS events and a maximum response time of the HDL components.

    摘要翻译: 用于模拟包括高级组件和HDL组件的电路设计操作的方法和装置。 设计的高级组件在高级建模系统(HLMS)中进行模拟,并且使用HDL模拟器来模拟设计的HDL组件。 将数据值从HLMS的数据类型转换为与HDL模拟器兼容的逻辑向量,以将每个数据值输入到HDL模拟器,并且将逻辑向量从HDL模拟器转换为数据类型的数据值 与HDL模拟器的每个逻辑矢量输出的HLMS兼容。 根据HLMS事件的时间和HDL组件的最大响应时间,事件被安排输入到HDL模拟器。

    Method and system for parameterization of imperative-language functions intended as hardware generators
    9.
    发明授权
    Method and system for parameterization of imperative-language functions intended as hardware generators 有权
    用于硬件发生器的命令式语言功能的参数化方法和系统

    公开(公告)号:US07620942B1

    公开(公告)日:2009-11-17

    申请号:US10850176

    申请日:2004-05-20

    IPC分类号: G06F9/45

    摘要: A method (100) of translating an imperative language function into a parameterized hardware component can include the steps of using (102) formal imperative function arguments to represent at least one among a component input port and a component parameter and distinguishing (104) between formal imperative function arguments intended as component parameters from formal imperative function arguments intended as component input ports. The method can generate (106) hardware description by providing a framework where imperative language functions can be translated into hardware components by being instantiated, combined and simulated. Arbitrary code can be associated (108) to a function-importing block as parameterization code and enabling an assignment of arbitrary code to actual imperative function arguments. The arbitrary code can be executed (110) in an interpreter that analyzes assigned variables by name and compares variable names with the formal argument identifiers in an imported function.

    摘要翻译: 将命令式语言功能转换为参数化的硬件组件的方法(100)可以包括以下步骤:使用(102)形式命令式函数参数来表示组件输入端口和组件参数中的至少一个,并区分(104)正式 命令式功能参数旨在作为组件输入端口的正式命令式函数参数的组件参数。 该方法可以通过提供框架来生成(106)硬件描述,其中命令式语言功能可以通过实例化,组合和模拟来转换成硬件组件。 任意代码可以与函数导入块(108)相关联(108)作为参数化代码,并允许将任意代码分配给实际的命令式函数参数。 可以在解析器中执行任意代码(110),该解释器通过名称分析分配的变量,并将变量名称与导入函数中的形式参数标识符进行比较。