System-level hardware and software development and co-simulation system
    51.
    发明授权
    System-level hardware and software development and co-simulation system 有权
    系统级硬件和软件开发与协同仿真系统

    公开(公告)号:US08473269B1

    公开(公告)日:2013-06-25

    申请号:US11711436

    申请日:2007-02-27

    IPC分类号: G06F17/50

    摘要: Various approaches for co-simulating an electronic system design are described. In one approach, a hardware design function block in the design is instantiated, along with a specification of a software execution platform including external ports and software to execute on the platform. In response to a user instruction to import the software execution platform into the design, a software execution platform interface block is automatically instantiated. A first simulation model is generated from the hardware design function block and the software execution platform interface block and a second simulation model is generated from the software execution platform. The design is co-simulated using the first and second simulation models. Data is communicated between the first simulation model and the second simulation model via the interface block.

    摘要翻译: 描述了用于共模拟电子系统设计的各种方法。 在一种方法中,设计中的硬件设计功能块被实例化,以及软件执行平台的规范,包括在平台上执行的外部端口和软件。 响应于将软件执行平台导入设计的用户指令,软件执行平台接口块被自动实例化。 从硬件设计功能块和软件执行平台接口块生成第一个仿真模型,并从软件执行平台生成第二个仿真模型。 使用第一和第二仿真模型共同模拟设计。 数据通过接口块在第一仿真模型和第二仿真模型之间进行通信。

    System and method for distributing and accessing files in a distributed storage system
    52.
    发明授权
    System and method for distributing and accessing files in a distributed storage system 有权
    在分布式存储系统中分发和访问文件的系统和方法

    公开(公告)号:US08392368B1

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

    申请号:US12870743

    申请日:2010-08-27

    IPC分类号: G06F17/30

    CPC分类号: G06F17/30194

    摘要: A system and method for distributing and accessing files in a distributed storage system uses an ordered list of the storage nodes in the system to determine the storage node on which a file is stored. The distributed storage system includes a cluster of storage nodes and may also include one or more client nodes that participate in the system as storage resources. Each node (client and storage) stores an ordered list of the storage nodes in the system, allowing any of the nodes to access the file. The list is updated whenever a new storage node is added to the system, an existing storage node is removed from the system, or a new storage node is swapped with an existing storage node. Each one of the nodes may independently compute a new mapping of files to the storage nodes when the ordered list is changed.

    摘要翻译: 用于在分布式存储系统中分发和访问文件的系统和方法使用系统中的存储节点的有序列表来确定存储文件的存储节点。 分布式存储系统包括一组存储节点,并且还可以包括作为存储资源参与系统的一个或多个客户机节点。 每个节点(客户端和存储)存储系统中存储节点的有序列表,允许任何节点访问该文件。 每当将新的存储节点添加到系统时,将更新列表,将现有存储节点从系统中删除,或者使用现有存储节点交换新的存储节点。 当有序列表改变时,每个节点可以独立地计算文件到存储节点的新映射。

    Compile-time dispatch of operations on type-safe heterogeneous containers
    53.
    发明授权
    Compile-time dispatch of operations on type-safe heterogeneous containers 有权
    对类型安全的异构容器进行编译时间调度

    公开(公告)号:US07669191B1

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

    申请号:US11152631

    申请日:2005-06-14

    IPC分类号: G06F9/45 G06F9/44

    CPC分类号: G06F8/437

    摘要: Implementing a type-safe heterogeneous containers in a memory arrangement of a computing system. In one embodiment, a main object of a class is specified in program source code. The class has a variant type, and the variant type provides at least two different data types, at least one of which is a linear array of objects of one of the data types. The class includes methods for putting and getting a variant object of the variant type in and from the main object. An application of a visitor method, which includes a respective operator for each of the different data types, is specified in the program source code for each method for getting a variant object from the main object. Compilation of the source code results in code that executes the one of the operators corresponding to the data type of a referenced variant object of the main object.

    摘要翻译: 在计算系统的存储器布置中实现类型安全的异构容器。 在一个实施例中,类的主要对象在程序源代码中被指定。 该类具有变体类型,并且变体类型提供至少两种不同的数据类型,其中至少一种是其中一种数据类型的对象的线性数组。 该类包括将变体类型的变体对象放入主变体和从主对象获取变量对象的方法。 在用于从主对象获取变体对象的每个方法的程序源代码中指定访问者方法的应用,其包括用于每个不同数据类型的相应操作符。 源代码的编译导致执行与主对象的引用变体对象的数据类型对应的操作符之一的代码。

    Method and system for parameterization of imperative-language functions intended as hardware generators
    54.
    发明授权
    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),该解释器通过名称分析分配的变量,并将变量名称与导入函数中的形式参数标识符进行比较。

    Correlation of data from design analysis tools with design blocks in a high-level modeling system
    55.
    发明授权
    Correlation of data from design analysis tools with design blocks in a high-level modeling system 有权
    来自设计分析工具的数据与高级建模系统中的设计块的相关性

    公开(公告)号:US07493578B1

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

    申请号:US11083667

    申请日:2005-03-18

    IPC分类号: G06F17/50 G06F11/00

    CPC分类号: G06F17/5045

    摘要: Methods are provided for processing design information of an electronic circuit design. A single path or multiple paths that are produced by a first design tool are an input for the method. Each path includes an ordered set of element names of the electronic circuit design. Each element name of each path is pattern matched with the names of design blocks of the electronic circuit design produced by a second design tool. Data indicative of a path produced by the second design tool that includes the design blocks that are pattern matched to the ordered set of element names is the output of the method.

    摘要翻译: 提供了用于处理电子电路设计的设计信息的方法。 由第一设计工具产生的单个路径或多个路径是该方法的输入。 每个路径包括电子电路设计的一组有序元素名称。 每个路径的每个元素名称都与由第二个设计工具生成的电子电路设计的设计块的名称进行模式匹配。 指示由第二设计工具产生的路径的数据,其包括与有序的元素名称集合模式匹配的设计块是该方法的输出。

    System and method for intuitive manipulation of the layering order of graphics objects
    56.
    发明授权
    System and method for intuitive manipulation of the layering order of graphics objects 有权
    用于直观操纵图形对象分层顺序的系统和方法

    公开(公告)号:US08773468B1

    公开(公告)日:2014-07-08

    申请号:US12870659

    申请日:2010-08-27

    IPC分类号: G09G5/00

    CPC分类号: G09G5/14

    摘要: A technique for manipulating the layering order of graphical objects in a digital canvas or document is disclosed. A graphics object that is included in a layer in the digital canvas or document is selected. The digital canvas or document is searched in order to define a subset of graphics objects that includes the selected graphics object and any other graphics objects that overlap with the selected graphics object. A layering-order control enables a user to move the layer associated with the selected graphics object to a depth in the digital canvas or document that includes a layer associated with one of the other graphics objects in the subset of graphics objects. The concurrent re-positioning of multiple layers associated with two or more selected graphics objects is also disclosed.

    摘要翻译: 公开了一种用于操纵数字画布或文档中的图形对象的分层顺序的技术。 选择包含在数字画布或文档中的图层中的图形对象。 搜索数字画布或文档以便定义包括所选择的图形对象和与所选择的图形对象重叠的任何其他图形对象的图形对象的子集。 分级顺序控制使得用户能够将与所选择的图形对象相关联的层移动到数字画布或文档中的深度,该深度包括与图形对象的子集中的其它图形对象之一相关联的层。 还公开了与两个或更多个所选择的图形对象相关联的多个层的并发重新定位。

    Translation of high-level circuit design blocks into hardware description language
    57.
    发明授权
    Translation of high-level circuit design blocks into hardware description language 失效
    将高级电路设计块翻译成硬件描述语言

    公开(公告)号:US07685541B1

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

    申请号:US12113231

    申请日:2008-05-01

    IPC分类号: G06F17/50

    CPC分类号: G06F17/5045

    摘要: Translation of high-level design blocks into a design specification in a hardware description language (HDL). Each block in the high-level design is assigned to a group. A set of attributes is identical between the blocks in a group. For each group of blocks, a respective set of parameters having different values on subblocks of at least two blocks in the group is determined. An HDL specification is generated for each group. The HDL specification for a group has for each parameter in the set of parameters, a parameter input.

    摘要翻译: 将高级设计块翻译成硬件描述语言(HDL)的设计规范。 高级设计中的每个块都分配给一个组。 一组属性在组中的块之间是相同的。 对于每组块,确定组中至少两个块的子块上具有不同值的相应参数集合。 为每个组生成HDL规范。 组的HDL规范对参数集中的每个参数都有参数输入。

    Hardware and software implementation of an electronic design in a programmable logic device
    58.
    发明授权
    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上的硬件实现。 生成以从块之间的互连确定的顺序调用每个外围功能和每个执行功能的程序。

    Embedding an interpreter within an application written in a different programming language
    59.
    发明授权
    Embedding an interpreter within an application written in a different programming language 有权
    在用不同的编程语言编写的应用程序中嵌入一个解释器

    公开(公告)号:US07627852B1

    公开(公告)日:2009-12-01

    申请号:US11334133

    申请日:2006-01-17

    IPC分类号: G06F9/44 G06F9/45

    CPC分类号: G06F9/547

    摘要: A method of accessing, from a host application written in a first programming language, a subroutine written in a second programming language can include serializing input data expressed as an XTable formatted in a first programming language into a string representation of the input data. The method further can include de-serializing the string representation of the input data as an XTable formatted in the second programming language and executing the subroutine, wherein the XTable formatted in the second programming language is processed as input. Output data returned from the subroutine that is expressed as an XTable formatted in the second programming language can be serialized into a string representation of the output data. The string representation of the output data can be de-serialized into an XTable formatted in the first programming language.

    摘要翻译: 从以第一编程语言编写的主机应用程序访问以第二编程语言编写的子程序的方法可以包括将以第一编程语言格式化的表示为XTable的输入数据串行化为输入数据的字符串表示。 该方法还可以包括将输入数据的字符串表示反序列化为以第二编程语言格式化的XTable并执行子程序,其中以第二编程语言格式化的XTable被处理为输入。 从以第二种编程语言格式化的XTable表示的子程序返回的输出数据可以串行化为输出数据的字符串表示形式。 输出数据的字符串表示可以被解序列化为以第一种编程语言格式化的XTable。

    Component naming
    60.
    发明授权
    Component naming 有权
    组件命名

    公开(公告)号:US07536377B1

    公开(公告)日:2009-05-19

    申请号:US10740781

    申请日:2003-12-18

    IPC分类号: G06F7/00 G06F17/30

    CPC分类号: G06F17/3012 Y10S707/99932

    摘要: Method and apparatus for component naming is described. Parameters (305) for a target component are obtained (201). The parameters (305) are hashed (202) to provide a hash value (203). The hash value (203) is used to construct a name (205) of the target component.

    摘要翻译: 描述了用于组件命名的方法和装置。 获得目标成分的参数(305)(201)。 参数(305)被散列(202)以提供散列值(203)。 哈希值(203)用于构建目标分量的名称(205)。