Method for watermarking a register-based programmable logic device core
    1.
    发明授权
    Method for watermarking a register-based programmable logic device core 有权
    一种基于寄存器的可编程逻辑器件核心的水印方法

    公开(公告)号:US06525557B1

    公开(公告)日:2003-02-25

    申请号:US10053415

    申请日:2001-11-02

    IPC分类号: H03K1900

    摘要: A core for a register-based programmable logic device includes a register configured to provide a hidden identifier in response to a secret unlock operation. The identifier is inaccessible during normal operation of the core implementation. The unlock operation is selected to be an action or set of actions that would typically not be performed during normal use of the core implementation. The logic associated with providing the hidden identifier in response to the unlock operation is configured to not interfere with normal operation of the core implementation. Therefore, the presence of this source identification capability is transparent to regular users (and unauthorized copyists) of the core implementation. The availability of the secondary identifier can be limited in duration to minimize the chances of accidental, or even intentional, discovery.

    摘要翻译: 用于基于寄存器的可编程逻辑器件的核心包括配置为响应于秘密解锁操作来提供隐藏标识符的寄存器。 标识符在核心实现的正常操作期间是不可访问的。 解锁操作被选择为在正常使用核心实现期间通常不执行的动作或动作集合。 响应于解锁操作提供隐藏标识符相关联的逻辑被配置为不干扰核心实现的正常操作。 因此,这种源识别能力的存在对于核心实现的普通用户(和未经授权的复制者)是透明的。 次要标识符的可用性可以在持续时间内受到限制,以最小化偶然或甚至故意发现的机会。

    FPGA customizable to accept selected macros
    2.
    发明授权
    FPGA customizable to accept selected macros 有权
    FPGA可自定义接受选定的宏

    公开(公告)号:US06381732B1

    公开(公告)日:2002-04-30

    申请号:US09924357

    申请日:2001-08-07

    IPC分类号: H03K19177

    CPC分类号: G06F21/76

    摘要: A field programmable gate array (FPGA) is provided that can selectively accept or reject selected software (macros). Specifically, configuration data for the FPGA is passed through a configuration port to a decoder. The decoder processes the configuration data to detect locked macros. If a locked macro is detected, the decoder attempts to unlock the locked macro using one or more keys stored in a key table of the FGPA. If an appropriate key is in the key table, the decoder unlocks the locked macro to configure the FPGA. The keys can be pre-programmed into the FGPA by the macro vendor. If configuration data containing a locked macro is used with an FPGA without the appropriate key, configuration of the FPGA fails.

    摘要翻译: 提供了可选择性地接受或拒绝所选软件(宏)的现场可编程门阵列(FPGA)。 具体来说,FPGA的配置数据通过配置端口传递给解码器。 解码器处理配置数据以检测锁定的宏。 如果检测到锁定的宏,则解码器尝试使用存储在FGPA的密钥表中的一个或多个密钥解锁锁定的宏。 如果密钥表中有一个相应的密钥,解码器解锁锁定的宏以配置FPGA。 密钥可以由宏供应商预编程到FGPA中。 如果包含锁定宏的配置数据在没有适当键的情况下与FPGA一起使用,则FPGA的配置将失败。

    Methods to securely configure an FPGA to accept selected macros
    3.
    发明授权
    Methods to securely configure an FPGA to accept selected macros 有权
    安全配置FPGA以接受选定宏的方法

    公开(公告)号:US06357037B1

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

    申请号:US09232022

    申请日:1999-01-14

    IPC分类号: G06F1750

    CPC分类号: G06F21/76 G06F17/5054

    摘要: A method is provided for configuring an FPGA to accept or reject selected software (macros). Specifically, if an end user desires to use a locked macro from a first macro vendor a locked macro from a second macro vendor in the same FPGA, a key manager prepares a keyed FPGA for the end user by pre-programming an FPGA with a first key, which is configured to unlock the first locked macro, and a second key, which is configured to unlock the second locked macro. The key manager obtains the first key from the first macro vendor and the second key from the second macro vendor. The keys are stored in a key table of the FPGA that is write-only from outside the FPGA. The end user pays a fee to the key manager for the keyed macro, but is not given access to the keys. The key manager apportions the fee from the end user and distributes appropriate licensing fees to the first macro vendor and the second macro vendor.

    摘要翻译: 提供了一种用于配置FPGA以接受或拒绝所选软件(宏)的方法。 具体来说,如果终端用户希望使用来自第一宏供应商的锁定宏来自同一FPGA中的第二宏供应商的锁定宏,则密钥管理器通过对第一个FPGA的预编程来为最终用户准备一个带键的FPGA 键,其被配置为解锁第一锁定宏,以及第二键,其被配置为解锁第二锁定宏。 密钥管理器从第一个宏供应商获取第一个密钥,从第二个宏供应商获取第二个密钥。 密钥存储在FPGA的关键表中,FPGA的外部是只写的。 最终用户向键控宏的密钥管理者支付费用,但是不能访问密钥。 主要经理从最终用户分配费用,并向第一个宏供应商和第二个宏供应商分配适当的许可费用。

    FPGA customizable to accept selected macros
    4.
    发明授权
    FPGA customizable to accept selected macros 有权
    FPGA可自定义接受选定的宏

    公开(公告)号:US06324676B1

    公开(公告)日:2001-11-27

    申请号:US09232021

    申请日:1999-01-14

    IPC分类号: G06F1750

    CPC分类号: G06F21/76

    摘要: A field programmable gate array (FPGA) is provided that can selectively accept or reject selected software (macros). Specifically, configuration data for the FPGA is passed through a configuration port to a decoder. The decoder processes the configuration data to detect locked macros. If a locked macro is detected, the decoder attempts to unlock the locked macro using one or more keys stored in a key table of the FGPA. If an appropriate key is in the key table, the decoder unlocks the locked macro to configure the FPGA. The keys can be pre-programmed into the FGPA by the macro vendor. If configuration data containing a locked macro is used with an FPGA without the appropriate key, configuration of the FPGA fails.

    摘要翻译: 提供了可选择性地接受或拒绝所选软件(宏)的现场可编程门阵列(FPGA)。 具体来说,FPGA的配置数据通过配置端口传递给解码器。 解码器处理配置数据以检测锁定的宏。 如果检测到锁定的宏,则解码器尝试使用存储在FGPA的密钥表中的一个或多个密钥解锁锁定的宏。 如果密钥表中有一个相应的密钥,解码器解锁锁定的宏以配置FPGA。 密钥可以由宏供应商预编程到FGPA中。 如果包含锁定宏的配置数据在没有适当键的情况下与FPGA一起使用,则FPGA的配置将失败。

    Methods to securely configure an FPGA using encrypted macros
    5.
    发明授权
    Methods to securely configure an FPGA using encrypted macros 有权
    使用加密宏安全配置FPGA的方法

    公开(公告)号:US06305005B1

    公开(公告)日:2001-10-16

    申请号:US09231528

    申请日:1999-01-14

    申请人: James L. Burnham

    发明人: James L. Burnham

    IPC分类号: G06F1750

    CPC分类号: G06F21/10 G06F17/5054

    摘要: A method is provided for securely configuring an FPGA with macros. Specifically, if an end user desires to use a macro from a macro vendor, the end user creates a design file containing an encrypted macro received from the macro vendor rather than the actual macro. The end user uses a FPGA programming tool to convert the design file into configuration data. Specifically, the FPGA programming tool processes the design file to detect encrypted macros. If an encrypted macro is detected, the FPGA programming tool requests authorization over a secured medium to decrypt the encrypted macro from the macro vendor. If authorization is received, the FPGA programming tool decrypts the encrypted macro and converts the design file into configuration data incorporating the macro.

    摘要翻译: 提供了一种用于使用宏安全配置FPGA的方法。 具体来说,如果最终用户希望使用来自宏供应商的宏,则最终用户创建包含从宏供应商而不是实际宏接收的加密宏的设计文件。 最终用户使用FPGA编程工具将设计文件转换为配置数据。 具体来说,FPGA编程工具处理设计文件以检测加密的宏。 如果检测到加密的宏,则FPGA编程工具通过安全介质请求授权,以从宏供应商解密加密的宏。 如果接收到授权,则FPGA编程工具解密加密的宏,并将设计文件转换为并入宏的配置数据。

    Methods and systems for providing logic cores from third party logic core providers
    6.
    发明授权
    Methods and systems for providing logic cores from third party logic core providers 有权
    从第三方逻辑核心供应商提供逻辑核心的方法和系统

    公开(公告)号:US06581186B1

    公开(公告)日:2003-06-17

    申请号:US09588116

    申请日:2000-05-31

    IPC分类号: G06F1750

    CPC分类号: G06F17/5045

    摘要: Methods and systems are provided in which logic cores from different third party core providers can be integrated for use with a single logic core generator. Core information from the various core providers is collected and formatted into a format that can be utilized by the single logic core generator. The information that is collected comprises at least one, and typically a number of different files. In some embodiments, the relevant core information is captured through the use of a graphical user interface (GUI) that guides particular core providers through a series of dialogs that capture the information. A formatting computer then takes the information and formats it into a form that can be utilized by the particular logic core generator. In the described embodiment, the information is formatted into at least one XCD file, which can then be utilized by the logic core generator. The newly-formatted cores can then be distributed to particular users for use with the core generator.

    摘要翻译: 提供了方法和系统,其中可以集成来自不同第三方核心提供商的逻辑核以与单个逻辑核心发生器一起使用。 来自各种核心提供商的核心信息被收集并格式化为可由单个逻辑核心生成器使用的格式。 收集的信息包括至少一个,并且通常是多个不同的文件。 在一些实施例中,通过使用图形用户界面(GUI)来捕获相关的核心信息,图形用户界面(GUI)通过捕获信息的一系列对话来指导特定的核心提供商。 然后,格式化计算机将信息并且将其格式化为特定逻辑核心发生器可以利用的形式。 在所描述的实施例中,将信息格式化成至少一个XCD文件,然后可以由逻辑核心生成器利用该文件。 然后可以将新格式化的核心分配给特定用户以与核心生成器一起使用。

    Methods to securely configure an FPGA using macro markers
    7.
    发明授权
    Methods to securely configure an FPGA using macro markers 有权
    使用宏标记安全配置FPGA的方法

    公开(公告)号:US06301695B1

    公开(公告)日:2001-10-09

    申请号:US09231912

    申请日:1999-01-14

    IPC分类号: G06F1750

    CPC分类号: G06F21/76 G06F17/5054

    摘要: A method is provided for securely configuring an FPGA with macros. Specifically, if an end user desires to use a macro from a macro vendor, the end user creates a marked design file containing a macro marker rather than the actual macro. The marked design file is converted into configuration data by a macro manager. Specifically, the macro manager obtains the macro from the macro vendor and replaces the macro marker with the macro prior to converting the design file into configuration data. The macro manager provides the configuration data to the end user. Because only the macro manager has access to the macro, the possibility of unlicensed use of the macro is diminished.

    摘要翻译: 提供了一种用于使用宏安全配置FPGA的方法。 具体来说,如果最终用户希望使用来自宏供应商的宏,则最终用户创建包含宏标记而不是实际宏的标记设计文件。 标记的设计文件由宏管理器转换为配置数据。 具体来说,宏管理器从宏供应商处获取宏,并在将设计文件转换成配置数据之前用宏替换宏标记。 宏管理器向最终用户提供配置数据。 由于只有宏管理器可以访问宏,所以无法使用宏的可能性就会减弱。

    Integrated circuit with selectively disabled logic blocks
    8.
    发明授权
    Integrated circuit with selectively disabled logic blocks 有权
    具有选择性禁止的逻辑块的集成电路

    公开(公告)号:US6160418A

    公开(公告)日:2000-12-12

    申请号:US231532

    申请日:1999-01-14

    申请人: James L. Burnham

    发明人: James L. Burnham

    IPC分类号: H03K19/177

    CPC分类号: H03K19/177

    摘要: A method and circuit is provided for creating multiple product lines from a single silicon implementation of an integrated circuit (IC). Specifically, logic blocks within the IC are selectively disabled after manufacturing the IC to create various ICs of different functionality from a single silicon implementation of the IC. In one embodiment, a first logic block of the IC is coupled to a disable circuit by a first disable line and a second logic block of the IC is coupled to the disable circuit by a second disable line. The disable circuit can disable the first logic block by driving the first disable line to a disable logic state. Similarly, the disable circuit can disable the second logic block by driving the second disable circuit to the disable logic state. In an FPGA embodiment of the present invention, the first logic block is a row of configurable logic blocks (CLBs) and the second logic block is a column of CLBs.

    摘要翻译: 提供了一种用于从集成电路(IC)的单个硅实现创建多个产品线的方法和电路。 具体来说,在制造IC之后,IC内的逻辑块被选择性地禁止,以从IC的单个硅实现创建不同功能的各种IC。 在一个实施例中,IC的第一逻辑块通过第一禁用线耦合到禁用电路,并且IC的第二逻辑块通过第二禁用线耦合到禁用电路。 禁用电路可以通过将第一禁用线驱动到禁用逻辑状态来禁用第一逻辑块。 类似地,禁用电路可以通过将第二禁止电路驱动到禁用逻辑状态来禁用第二逻辑块。 在本发明的FPGA实施例中,第一逻辑块是一排可配置逻辑块(CLB),第二逻辑块是CLB列。

    Method of watermarking configuration data in an FPGA by embedding the watermark corresponding to a macro obtained upon encountering a first watermark tag from the macro
    9.
    发明授权
    Method of watermarking configuration data in an FPGA by embedding the watermark corresponding to a macro obtained upon encountering a first watermark tag from the macro 有权
    通过嵌入与从宏中遇到第一水印标签获得的宏相对应的水印来对FPGA中的配置数据进行水印加密的方法

    公开(公告)号:US06711674B1

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

    申请号:US09513230

    申请日:2000-02-24

    申请人: James L. Burnham

    发明人: James L. Burnham

    IPC分类号: G06F900

    CPC分类号: G06T1/0021

    摘要: A method is provided for watermarking FPGA configuration data. Specifically, if an end user desires to use a macro from a macro vendor, the end user creates a design file containing a marked macro received from the macro vendor, rather than the actual macro. The end user then uses an FPGA programming tool to convert the design file into configuration data. Specifically, the FPGA programming tool processes the design file to detect marked macros. If a marked macro is detected, the FPGA programming tool embeds a watermark corresponding to the macro within the configuration data.

    摘要翻译: 提供了一种用于对FPGA配置数据进行水印处理的方法。 具体来说,如果最终用户希望使用来自宏供应商的宏,则最终用户创建包含从宏供应商接收的标记宏而不是实际宏的设计文件。 然后,最终用户使用FPGA编程工具将设计文件转换为配置数据。 具体来说,FPGA编程工具处理设计文件以检测标记的宏。 如果检测到标记的宏,则FPGA编程工具在配置数据中嵌入与宏对应的水印。

    System and method for PLD bitstream encryption
    10.
    发明授权
    System and method for PLD bitstream encryption 失效
    用于PLD比特流加密的系统和方法

    公开(公告)号:US6118869A

    公开(公告)日:2000-09-12

    申请号:US38800

    申请日:1998-03-11

    摘要: A decryption scheme is provided for encrypted configuration bitstreams in a programmable logic device. One embodiment includes circuitry for altering a decryption key for a plurality of encrypted bitstream portions, thereby providing a high level of security of the circuit layout embodied in the bitstream.

    摘要翻译: 为可编程逻辑器件中的加密配置比特流提供解密方案。 一个实施例包括用于改变多个加密的比特流部分的解密密钥的电路,从而提供在比特流中体现的电路布局的高水平的安全性。