CN1815628B - 用于配置可编程设备的方法和电路 - Google Patents

用于配置可编程设备的方法和电路 Download PDF

Info

Publication number
CN1815628B
CN1815628B CN2005101287616A CN200510128761A CN1815628B CN 1815628 B CN1815628 B CN 1815628B CN 2005101287616 A CN2005101287616 A CN 2005101287616A CN 200510128761 A CN200510128761 A CN 200510128761A CN 1815628 B CN1815628 B CN 1815628B
Authority
CN
China
Prior art keywords
circuit
programmable
piece
configuration
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CN2005101287616A
Other languages
English (en)
Other versions
CN1815628A (zh
Inventor
R·卡马罗塔
I·拉希姆
B·J·昂
T·P·宗
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Altera Corp
Original Assignee
Altera Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Altera Corp filed Critical Altera Corp
Publication of CN1815628A publication Critical patent/CN1815628A/zh
Application granted granted Critical
Publication of CN1815628B publication Critical patent/CN1815628B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/78Architectures of general purpose stored program computers comprising a single central processing unit
    • G06F15/7867Architectures of general purpose stored program computers comprising a single central processing unit with reconfigurable architecture
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/02Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
    • H03K19/173Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
    • H03K19/177Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form
    • H03K19/17724Structural details of logic blocks
    • H03K19/17732Macroblocks
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/02Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
    • H03K19/173Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
    • H03K19/177Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form
    • H03K19/17748Structural details of configuration resources
    • H03K19/17758Structural details of configuration resources for speeding up configuration or reconfiguration
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/02Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
    • H03K19/173Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
    • H03K19/177Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form
    • H03K19/17748Structural details of configuration resources
    • H03K19/1776Structural details of configuration resources for memories
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/02Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
    • H03K19/173Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
    • H03K19/177Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form
    • H03K19/17748Structural details of configuration resources
    • H03K19/17768Structural details of configuration resources for security
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/02Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
    • H03K19/173Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
    • H03K19/177Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form
    • H03K19/17748Structural details of configuration resources
    • H03K19/17772Structural details of configuration resources for powering on or off

Abstract

提供了用于将易失性和非易失性可编程逻辑组合入一个集成电路(IC)的技术。IC被分成两部分。第一可编程逻辑块由片载非易失性存储器中存储的比特配置。第二可编程逻辑块由非片载存储器中存储的比特配置。IC上IO存储体的功能在IC的两个逻辑块之间被多路复用。在可配置第二块中的可编程逻辑的一小部分时间中第一块中的可编程逻辑被配置且完全功能化。第一块中的可编程逻辑可配置足够块并具有足够的独立性,以帮助第二块的配置。非易失性存储器还可向用户设计提供安全特点,诸如加密。

Description

用于配置可编程设备的方法和电路
发明背景
本发明提供了用于在集成电路(IC)上组合易失性和非易失性可编程逻辑的技术,尤其提供了用于提供具有由非片载存储器配置的可编程逻辑的一部分和由片载非易失性存储器配置的可编程逻辑的另一部分的IC技术。
包含片载易失性存储器块的较大的现场可编程门阵列(FPGA)通常在加电时需要配置相当的时间量,因为配置数据要从外部存储器芯片加载到芯片上。例如,外部存储器芯片可以是串行只读存储器(SROM)。
诸如Altera的MAX系列CPLD的较小的复杂可编程逻辑装置(CPLD)包含片载的非易失性存储器。配置数据被存入该片载的非易失性存储器。加电时,可以快速地从片载的非易失性存储器将配置数据载入可编程逻辑。非易失性CPLD实际上是加电时瞬时接通的,且不需要外部配置数据。但,制造具有所有非易失性存储器的较大FPGA在面积方面是禁止的并会限制过程选择。
许多较大的易失性FPGA具有伴随CPLD以配合加电和配置过程。CPLD还可在被发送给FPGA前加密配置数据,以防止该配置数据被截取和复制。但,该技术更加复杂,因为它使得较大的FPGA成为包括FPGA、SROM和CPLD的三个装置解决方案。美国专利US7190190公开了一种带有芯片内非易失性用户存储器的可编程逻辑装置。
因此,期望提供更快速的技术来配置现场可编程门阵列。还期望向用户提供在配置过程期间适当确保它们设计的方法。
发明内容
本发明提供了用于将易失性和非易失性可编程逻辑组合入一个集成电路(IC)的技术。本发明的IC被分成两部分。一部分IC包含第一可编程逻辑块,它由片载非易失性存储器块中存储的比特配置。另一部分IC包含由非片载存储器装置中存储的比特配置的第二可编程逻辑块。
在可配置易失性部分中的逻辑的一小部分时间内,IC的非易失性部分中的逻辑可被配置和完全功能化。非易失性部分中的逻辑可配置得足够快并具有足够的独立性,以帮助IC的易失性部分中的配置。非易失性存储器还可向用户设计提供安全特点,诸如加密和解密。
考虑以下的详细描述和附图,本发明的其它目的、特点和优点将变得显而易见,其中相同的标号在所有附图中表示类似元件。
附图说明
图1示出了根据本发明第一实施例的包含由片载非易失性存储器配置的可编程逻辑块和由非片载存储器配置的可编程逻辑块的IC。
图2示出了根据本发明第二实施例的具有片载非易失性存储器块的图1所示IC,该片载非易失性存储器块足以存储用户和制造商的配置数据。
图3A示出了根据本发明第三实施例的具有向HIP块提供编程能力的可编程寄存器组的可编程逻辑IC上的硬智权(intellectual property)(HIP)块。
图3B示出了根据本发明第四实施例的包含图3A的可编程HIP块和由非片载存储器配置的可编程逻辑块的IC。
图4是可与本发明的技术一起使用的可编程逻辑装置的简化框图。
图5是可实现本发明实施例的电子系统的框图。
具体实施方式
图1示出了根据本发明第一实施例设计的可编程逻辑集成电路(IC)的部分100。部分100包括可编程逻辑的非易失性可编程逻辑块110和易失性可编程逻辑块130。非易失性可编程逻辑块110和易失性可编程逻辑块130都包含可编程逻辑电路。例如,可编程逻辑电路可以是基于查找表格或基于产品项(product term)的逻辑单元。可编程逻辑块110和130中的可编程逻辑阵列的架构可相同或不同。可编程逻辑块110和130还可包括存储器。可编程逻辑块110和130中的存储器例如可以是诸如SRAM单元的易失性存储器。
可编程逻辑块110中的可编程逻辑由非易失性存储器112中存储的配置比特进行配置。配置比特可由制造商或用户存入非易失性存储器112。通电复位(POR)配置块111将配置比特从非易失性存储器112传送入可编程逻辑块110内的存储器。
可编程逻辑块130中的可编程逻辑由外部存储装置中存储的配置比特配置。外部存储器装置例如可以是闪存装置或串行ROM(SROM)存储器装置。配置比特可从I/O端口103通过多路复用器118被载入可编程逻辑块130以及系统中配置(ISC)块131。
如上所述,许多大FPGA都需要加电时相当的配置时间。另一方面,小非易失性CPLD实际上是加电时瞬时接通的且不需要外部配置数据。但,需要太多管芯面积来放置足够的片载非易失性存储器于大FPGA上,以配置所有FPGA的可编程逻辑电路。
本发明通过提供两个可编程逻辑块(110和130)解决了这些问题。在通电期间通过从非易失性存储器块112加载配置数据可快速配置可编程逻辑块110中的可编程逻辑。可编程逻辑块110优选包含足够的可编程逻辑以在配置可编程逻辑块130前执行加电阶段期间需要执行的某些重要功能。通过从外部源加载的配置数据较缓慢地配置可编程逻辑块130。
根据一实施例,IC上的多数可编程逻辑驻留在易失性可编程逻辑块130中。该实施例中,非易失性存储器块112仅需要足够大,以便为可编程逻辑块110中的可编程逻辑存储配置数据。如果可编程逻辑块110相对较小,则非易失性存储器块112的尺寸可相对较小。该要求使IC上的非易失性存储器块112的管芯面积影响最小。例如,可编程逻辑块130可在加电后执行所有FPGA功能。
如果非易失性存储器块112尺寸更小,就可展开更多实现可能。例如,用于整个FPGA的大非易失性存储器块需要最先进的EEPROM或FLASH工艺。仅提供用于小部分FPGA的配置数据的小的非易失性存储器块112可使用诸如多熔(polyfuse)阵列和磁阻ROM的存储器技术。
现在讨论可编程逻辑块110可执行的功能的特定示例。在配置和全面功能化FPGA前需要控制系统复位和临界信号。大FPGA在其系统中起中心作用。如果FPGA驱动临界信号、复位或总线,则它将在配置之前不能有效或正确地驱动信号。通电和配置之间的不活动会阻止系统适当地通电。为了解决这些问题,可编程逻辑块110可在通电期间控制临界信号。
在配置FPGA之前和之后,可编程逻辑块110还可控制配置和顺序复位。可编程逻辑块110能在不使用外部IO信号的情况下直接驱动易失性FPGA块复位。
作为另一示例,可编程逻辑块110可用于保护发送到可编程逻辑块130的配置数据。可编程逻辑块110可像CPLD那样被保护地读取,并可具有到达系统中配置(ISC)块131的内部旁路。可编程逻辑块110可执行外部引线不可达的附加数据加密/解密。
例如,可编程逻辑块110中的逻辑可在通电时被配置,以基于非易失性存储器块112中存储的加密算法执行解密方案。随后,用于可编程逻辑块130的配置数据通过I/O端口103载入可编程逻辑块110并被解密。随后,解密的配置数据从可编程逻辑块110载入可编程逻辑块130(例如,直接或经过多路复用器118)。
可编程逻辑块110可为每个客户个人化加密方案,以增加安全性和舒适性。因此,客户可选择他们需要的加密方案。如果加密算法由黑客破解,则客户可通过将新算法载入非易失性存储器块112而容易地改变加密方案。可编程逻辑块110还可用于加密或解密客户选择的非配置数据流。
当用于FPGA的配置数据没有从专用的SROM加载时,它通常从标准FLASH装置或处理器总线加载。在配置FPGA前,任一解决方案都需要通电时有效的某些逻辑。该逻辑排序并将数据从非易失性数据源传送到FPGA配置引线(ISC端口)。该逻辑受益于FPGA内部的实现,因为它可容纳包括处理器的较宽范围的非易失性存储装置以及较宽范围的FPGA配置模式。
参考图1,IC的部分100包括六个区域101-106。六个区域101-106中的每一个都包括分开的通电复位电路(POR1-POR6)。通电复位电路监控来自一个或多个电源轨(或电源网)的电源电压。通电复位电路产生输出信号,它指示来自响应电源轨的电源电压何时达到预定电平。预定电源电压电平指示IC的特定区域何时可安全地开始起作用。例如,通电复位电路POR1产生一输出信号,它指示电源电压在通电后何时增加到适合于区域101中的电路以开始运作的最小电压电平。
图1所示的电路区域可分成两部分。第一部分包括区域101-104。区域101-104与非易失性存储器块112和可编程逻辑块110相关联。区域105-106与可编程逻辑块130相关联。
POR配置块111控制和监控通电复位电路POR1-POR6。只要通电复位电路POR1-POR4指示电源电压已达到区域101-104中的可接受电平,POR配置块111就将非易失性存储器块112中存储的配置数据传送到非易失性可编程逻辑块110。
因此,只要区域101-104中的电源已达到预定电平,POR1-POR4就允许可编程逻辑块110中的可编程逻辑予以配置,而不用等待区域105-106通电。该实施例向通电期间可编程逻辑块110的配置提供了附加速度。
一旦通电复位电路POR5-POR6指示电源已达到区域105-106中的可接受电平,则系统中配置数据可从外部源经过多路复用器118和ISC块131载入可编程逻辑块130。POR配置块111或可编程逻辑块110中的可编程逻辑可控制多路复用器118的选择输入。
在图1所示的FPGA实施例中,区域103中的系统中配置(ISC)I/O端口与非易失性可编程逻辑块110和易失性可编程逻辑块130接口。
或者,ISC数据可被载入非易失性可编程逻辑块110,随后载入可编程逻辑块130。ISC配置数据可直接从可编程逻辑块110或者经过多路复用器118和ISC块131加载到可编程逻辑块130,如图1中的箭头所示。在它被载入可编程逻辑块130之前,可编程逻辑块110中的可编程逻辑可加密ISC配置数据,以保护客户的电路设计。
在去电时,非易失性存储器块112不损失其数据模式。例如,非易失性存储器块112可用于保持FPGA配置文件和易失性FPGA冗余信息。非易失性存储器块112可按许多方式实现。例如,非易失性存储器块112可以是具有一次可编程存储器单元的金属熔丝存储器。非易失性存储器块112的其它示例包括可编程的抗熔阵列、金属或多掩模可编程阵列、闪存阵列、EEPROM存储器阵列、LASER编程熔丝阵列、磁阻存储器阵列(MRAM)和铁电存储器阵列(FeRAM)。非易失性存储器块112的较小尺寸增加了其密度可能性。
非易失性存储器块112可通过区域102中的JTAG I/O测试端口或者区域103中的ISC端口进行编程。如果I/O端口不控制可编程逻辑块110,非易失性可编程逻辑块110还可通过区域103中的ISC I/O端口进行编程。非易失性可编程逻辑块110可存取通用IO的较小子集、所有ISC IO、内部复位和时钟总线的子集以及某些通用内部路由互连线。
区域102包括联合测试行动组(JTAG)IO端口和有关电路。区域102中的电路根据公知技术解码编程非易失性存储器块112的JTAG命令。区域103包括系统中配置(ISC)IO端口和有关电路,它在通电时配置易失性可编程逻辑块130。ISCIO端口还可用于重新配置易失性可编程逻辑块130配置SRAM。此外,在定义一次可编程非易失性存储器程序前,区域103中的ISC IO端口和电路可用于编程可编程逻辑块130中的非易失性配置SRAM。重要的是,编程解决方案是可用的,而在可编程逻辑块110或112的配置上没有任何先决条件。
POR配置块111还控制区域104中的IO以及配置和ISC源多路复用器121和122。POR配置块111可通过多路复用器122将来自非易失性存储器块112的配置数据载入区域104中的I/O存储体,以配置区域104中的IO端口。此外,若POR配置块111允许,易失性ISC块131可对POR4IO块104进行重新配置。
POR配置块111可将区域104中I/O存储体的控制交给非易失性可编程逻辑块110。一旦可编程逻辑块110中的可编程逻辑已被配置,则可编程逻辑确定多路复用器121的控制。多路复用器121在区域104中的I/O端口和非易失性可编程逻辑块110或易失性可编程逻辑块130之间路由信号。因此,输入和输出信号可通过控制多路复用器121被路由经过区域104中的I/O端口到达可编程逻辑块110或130中的可编程逻辑。
图2示出本发明的第二实施例。根据该实施例,可将两组配置数据存入非易失性存储器块112。第一组配置数据是引导模式,它由制造商编程以便为所有客户提供FPGA标准功能,诸如ASSP。该实施例的优点在于允许FPGA制造商通过对输出制造测试流的简单改变而随时间改变产品定义。
一旦用户已定义一应用,则用户可将附加配置数据写入非易失性存储器块112。例如,用户可将用于按诊断模式操作FPGA以测试各种信号的配置数据存入非易失性存储器块112。
在OTP型非易失性存储器中,在非易失性存储器块112中需要两个分区。一个分区用于存储制造商的缺省引导配置数据,且一个分区用于存储用户配置数据,以更好地满足用户的特殊需要。图2中示出了用于非易失性存储器块112的分区。若在用户分区中检测出有效数据,则配置逻辑可跳过引导配置。
在图2的实施例中,非易失性存储器块112具有足够的存储器,以使它能存储用于可编程逻辑块110的两组配置数据。根据本发明的其它实施例,非易失性存储器块112能存储用于可编程逻辑块110的超过两组配置数据。图2中的非易失性存储器块112可存储图1中非易失性存储器块112的N倍数据,其中N是配置可编程逻辑块110所需的配置数据组的数量。
图3A示出了本发明的另一实施例。许多现今的可编程逻辑集成电路都具有硬智权(HIP)块。HIP块是被硬接线以执行预定功能的专用集成电路(ASIC)的一部分。当大量客户需要相同功能时,制造商将HIP块添加到可编程逻辑IC。在执行特殊功能时,ASIC通常比FPGA更有效。但,ASIC的灵活性远不如FPGA,因为它们只能执行由掩模组硬接线的功能。
通常,FPGA客户具有对特定类型电路功能的类似(但非一致)要求。在这些实例中,期望对FPGA提供某些内置编程能力的HIP块。图3A所示的实施例以可编程寄存器组的形式提供了HIP块中的内置编程能力,这将在以下详细描述。可编程寄存器组提升了HIP块的灵活性。
图3A示出了可编程逻辑IC上的HIP块301中CRAM初始化的寄存器组的框图。图3A的框图示出了可在用户模式期间被重新配置的用户模式配置接口320,用于FPGA配置初始化的配置RAM(CRAM)312,以及将模式设定输出到IP逻辑335的可编程寄存器组330。
IP逻辑335包含HIP块301中的逻辑电路,它被硬接线以执行特殊功能。可编程寄存器组330将某些编程能力提供给IP逻辑335执行的功能。例如,可编程寄存器组330可控制IP逻辑335中的多路复用器或计数器以提供逻辑功能方面的多个选项。
可编程寄存器组330可在FPGA的用户模式期间被编程并可具有通电时的固定功能。可编程寄存器组330可由来自User_Mode信号、CRAM312中存储的比特或来自用户模式配置接口320的用户模式配置数据加以编程。写入逻辑322经过多路复用器325将该用户模式配置数据发送到可编程寄存器组330。来自CRAM312的配置数据也可直接通过多路复用器325传送到可编程寄存器组330。
通电时,缺省化写入逻辑322,以使多路复用器325通过将CRAM_n_Config设定为‘1’并将Write_En设定为‘1’选择CRAM接口312。在FPGA配置周期期间,加载可编程IC CRAM比特。在进入用户模式时,可编程IC核心断言(assert)User_Mode信号,且时钟信号开始切换(toggle)。基于User_Mode信号断言的同步自计时电路可在写入逻辑322内实现,以保证CRAM值被采样入可编程寄存器组330作为缺省设定。
写入逻辑322可通过将CRAM_n_Config设定为‘0’来切换多路复用器325,以选择用户模式配置接口320。用户模式期间,通过将来自用户模式配置控制器310的数据通过用户模式配置接口320载入可编程寄存器组330,可编程寄存器组330的输出值可通过(总线协议方案的)写入周期改变。用户模式配置控制器310(在FPGA核心302中示出)通常被实现为根据配置数据组配置的可编程逻辑块。可编程寄存器组330通常实现为存储器映射的寄存器。
寄存器组330输出值可通过读取逻辑321和配置接口320被读回,用于监控、调试和测试的用途。对于测试用途,用户模式配置接口320允许可编程寄存器组330中存储的设定被读回以校验设定是正确的。通过使用本实施例的配置接口,可验证从CRAM312到HIP块301的连接,用于更好的测试覆盖。
寄存器组330最好不要由CRAM异步初始化。如果可编程寄存器组330支持异步设置和异步复位,这种实现对竞态状态是灵敏的。为避免竞态状态,可添加额外的逻辑。但,与上述同步初始化方案相比,添加这种逻辑的总成本更昂贵。
图3A的实施例有几项优点。例如,该实施例对从CRAM到寄存器组的连接提供了更好测试覆盖。与其中正确的CRAM设定仅通过运行IP功能测试矢量校验的常规IP功能测试方案相比,由于测试的结构性质,还减少了测试时间。但,从管芯面积成本的观点看来,该实施例不适合于非常大的寄存器组。
根据本发明的另一实施例,可编程HIP块301可取代图1或图2中的可编程逻辑块110。图3B示出了该实施例。图3B允许可编程HIP块301工作与易失性可编程逻辑块310无关。
图3B还仅用少量编程最大化HIP块301的瞬时接通的能力。因为图3B中的HIP块301仅需要存储在非易失性存储器块112中的少量配置数据,所以可以用许多类型的存储器(例如,多熔、磁阻ROM等)实现存非易失性存储器块112。
图3B的实施例示出可编程HIP块301和130的架构不需要一致。可编程HIP块301和130的架构仅需要具有相同水平的编程能力。还期望(但非必要),可编程HIP块301需要明显少于可编程逻辑块130的配置比特。可编程HIP块301的面积和复杂性通常不必更小。
图4是可包括本发明各方面的PLD400的一示例的简化部分框图。虽然主要在PLD和FPGA的环境中讨论本发明,但应理解本发明可应用于许多类型的可编程集成电路。PLD400是其它可实现本发明的技术的可编程集成电路的示例。PLD400包括可编程逻辑阵列块(或LAB)402的二维阵列,它们由变化长度和速度的行和列互连的网络相互连接。LAB402包括多个(例如,10个)逻辑单元(或LE)。
LE是提供用于用户定义的逻辑功能的有效实现的可编程逻辑块。PLD具有许多逻辑单元,它们可配置成实现各种组合和顺序功能。逻辑单元具有通向可编程互连结构。可编程互连结构可被编程,以互连几乎任何期望配置中的逻辑单元。
PLD400还包括分布存储器结构,它包括遍及阵列提供的可变大小的RAM块。例如,该RAM块包括512比特块404、4K块406和提供512K比特RAM的块408。这些存储器块还可包括移位寄存器和FIFO缓冲器。
PLD400还包括数字信号处理(DSP)块410,它例如可实现具有加或减特点的乘法器。在该例中设置于装置外围附近的I/O元件(IOE)412支持许多单端和差分I/O标准。应理解,这里描述PLD400是仅为了说明目的,且本发明可在许多不同类型的PLD、FPGA等中实现。
虽然图4所示类型的PLD提供了实现系统等级解决方案所需的许多资源,但本发明也有助于其中PLD是几个组件之一的系统。图5示出了其中可体现本发明的示例性数字系统500的框图。示例性数字系统500可以是编程的数字计算机系统、数字信号处理系统、特殊数字切换网络或其它处理系统。此外,这种系统可设计用于各种应用,诸如电信系统、汽车系统、控制系统、消费电子产品、个人计算机、因特网通信和连网等。此外,示例性数字系统500可设置于单个板上、多个板上或多个封装内。
示例性数字系统500包括通过一个或多个总线互连在一起的处理单元502、存储器504和I/O单元506。根据该示例性实施例,可编程逻辑装置(PLD)508嵌入处理单元502中。PLD508可在图5的系统内用于许多不同用途。PLD508例如可以是处理单元502的逻辑构建块,支持其内部和外部操作。PLD508被编程以实现在系统操作中进行其特殊作用所必需的逻辑功能。PLD508可通过连接510专门耦合到存储器504并通过连接512耦合到I/O 506。
处理单元502可将数据引导到合适的系统组件用于处理或存储,执行存储器504中存储的程序或经由I/O单元506接收和发送数据,或其它类似功能。处理单元502可以是中央处理单元(CPU)、微处理器、浮点协处理器、图形协处理器、硬件控制器、微控制器、编程用作控制器的可编程逻辑装置、网络控制器等。此外,在许多实施例中,常不需要CPU。
例如,一个或多个PLD508可代替CPU控制系统的逻辑操作。在一实施例中,PLD508用作可重新配置的处理器,它可按需要被重新编程以处理特定的计算任务。或者,可编程逻辑装置508可自身包括嵌入的微处理器。存储器单元504可以是随机存取存储器(RAM)、只读存储器(ROM)、固定或柔性盘媒介、PC卡闪盘存储器、磁带或任何其它存储装置,或这些存储装置的组合。
虽然这里已参考其特殊实施例描述了本发明,但本发明中包含了修改、各种变化和替换的范围。在某些实例中,可在不相应使用其它特点的情况下采用本发明的特点,而不背离所述本发明的范围。因此,可进行许多修改以适应所揭示的特殊配置或方法,而不背离本发明的基本精神和范围。本发明旨在不限于所揭示的特殊实施例,本发明将包含属于权利要求书范围内的所有实施例和等效物。

Claims (23)

1.一种集成电路,包括:
可编程逻辑块;以及
部分可编程的硬智权块,它包括可编程寄存器组和专用电路并且与所述可编程逻辑块相耦合,其中可编程寄存器组被配置成控制所述专用电路的子集的功能;
其中,所述部分可编程的硬智权块中的逻辑电路接收配置数据并将所述配置数据载入所述可编程寄存器组。
2.如权利要求1所述的集成电路,其特征在于,在所述集成电路通电期间,所述逻辑电路将所述配置数据从配置随机存取存储器载入所述可编程寄存器组。
3.如权利要求1所述的集成电路,其特征在于,所述逻辑电路将所述配置数据从用户模式配置控制器通过用户模式配置接口载入所述可编程寄存器组。
4.一种集成电路设备,包括:
非易失性存储器;
第一电路,它包括可由所述非易失性存储器中存储的数据来配置的可编程逻辑;以及
第二电路,其中当配置所述第一电路的可编程逻辑时,所述第一电路协助所述第二电路的可编程逻辑的配置,其中所述第二电路的可编程逻辑的配置用来自所述集成电路设备的外部源的其它数据完成。
5.如权利要求4所述的集成电路设备,其特征在于,所述第一电路包括部分可编程的硬智权块,该硬智权块包括可编程寄存器组和专用电路。
6.如权利要求4所述的集成电路设备,其特征在于,所述第一电路用于通过将所述其它数据经过所述第一电路传送给所述第二电路来协助所述第二电路的可编程逻辑的配置。
7.如权利要求4所述的集成电路设备,其特征在于,还包括:
第一I/O块;
第一多路复用器,它具有耦合到所述第一I/O块的第一输入端子、耦合到所述第一电路的第二输入端子、耦合到系统中配置块的输出端子以及耦合到所述第一电路的选择输入。
8.如权利要求7所述的集成电路设备,其特征在于,还包括:
第二I/O块;以及
第二多路复用器,具有耦合到所述第二I/O块的输出端子、耦合到所述第一电路的第一输入端子和耦合到所述第二电路的第二输入端子。
9.一种集成电路,包括
第一可编程逻辑块;
第一通电复位电路,它向所述第一可编程逻辑块提供第一输出信号,以指示所述第一可编程逻辑块可以开始工作;
第二可编程逻辑块;以及
第二通电复位电路,它向所述第二可编程逻辑块提供第二输出信号,以指示所述第二可编程逻辑块可以开始工作,其中,所述第一通电复位电路与所述第二通电复位电路分开,其中所述第一可编程逻辑块在所述第二可编程逻辑块之前开始工作。
10.如权利要求9所述的集成电路,其特征在于,所述第一可编程逻辑块可用比所述第二可编程逻辑块更少的时间进行配置。
11.如权利要求9所述的集成电路,其特征在于,所述第一可编程逻辑块小于所述第二可编程逻辑块。
12.一种配置集成电路设备的方法,包括:
当所述集成电路设备中的第一可编程电路块处于全功率时,产生第一信号;
当所述集成电路设备中的第二可编程电路块处于全功率时,产生第二信号;
在产生所述第一信号之后,配置所述第一可编程电路块,其中所述第一可编程电路块通过从所述集成电路设备内的非易失性存储器块接收的数据进行配置;以及
在产生所述第二信号并且配置所述第一可编程电路块之后,配置所述第二可编程电路块,其中所述第二可编程电路块通过从所述集成电路设备的外部源接收的数据进行配置,并且所述第一可编程电路块用于配置所述第二可编程电路块。
13.一种配置集成电路设备的方法,包括:
从所述集成电路设备中的非易失性存储器块取回第一数据;
用所述第一数据对所述集成电路设备中的第一可编程电路块进行配置;
从所述集成电路设备的外部源接收第二数据;以及
使用经配置的所述第一可编程电路块,用所述第二数据对所述集成电路设备中的第二可编程电路块进行配置。
14.一种集成电路,包括:
可编程电路;以及
非易失性存储器,其中,所述非易失性存储器在第一部分中存储缺省引导模式的配置数据,并可配置为在第二部分中存储用户配置数据,其中,当未在所述第二部分中检测到有效数据时,所述缺省引导模式控制所述可编程电路的配置,并且其中当在所述第二部分中检测到有效数据时,使用所述有效数据配置所述可编程电路。
15.一种操作集成电路的方法,包括:
确定所述集成电路中的非易失性存储器块的第一分区是否存储了有效的用户数据;
当在所述第一分区中存储了有效的用户数据时,用该有效的用户数据配置所述集成电路中的第一可编程电路块;以及
当所述第一分区中没有存储有效的用户数据时,用存储在所述非易失性存储器块的第二分区中的缺省引导模式的配置数据来配置所述第一可编程电路块。
16.如权利要求15所述的方法,其特征在于,还包括:
使用所配置的第一可编程电路块来配置所述集成电路中的第二可编程电路块。
17.一种操作集成电路的方法,包括:
在所述集成电路中非易失性存储器块的第一分区中存入提供标准功能的引导模式的配置数据;
从用户处接收用户配置数据;
在所述集成电路中非易失性存储器块的第二分区中存入所述用户配置数据;以及
用所述引导模式的配置数据和所述用户配置数据对所述集成电路中的第一可编程电路块进行配置。
18.如权利要求17所述的方法,其特征在于,还包括:
使用所配置的第一可编程电路块来配置所述集成电路中的第二可编程电路块。
19.一种集成电路,包括:
可编程逻辑;以及
部分可编程的硬智权块,它包括可编程寄存器组和专用电路,其中所述可编程寄存器组可被配置成控制所述专用电路的功能,且其中,所述可编程逻辑中的电路用于接收配置数据并将所述配置数据载入所述可编程寄存器组,其中在所述集成电路通电期间,所述配置数据被载入所述可编程寄存器组。
20.如权利要求19所述的集成电路,其特征在于,用于将配置数据载入所述可编程寄存器组的在所述可编程逻辑中的电路包括用来存储所述配置数据的非易失性存储器。
21.如权利要求19所述的集成电路,其特征在于,所述配置数据从所述集成电路的外部源取回。
22.如权利要求19所述的集成电路,其特征在于,用于将配置数据载入所述可编程寄存器组的在所述可编程逻辑中的电路包括用户模式配置控制器,该用户模式配置控制器在所述部分可编程的硬智权块中通过用户模式配置接口传输所述配置数据。
23.如权利要求22所述的集成电路,其特征在于,用于将配置数据载入所述可编程寄存器组的在所述可编程逻辑中的电路还包括配置随机存取存储器,其中,所述部分可编程的电路还包括多路复用器,用于在所述用户模式配置接口和配置随机存取存储器之间进行选择,以将配置数据载入所述可编程寄存器组。
CN2005101287616A 2004-12-02 2005-12-02 用于配置可编程设备的方法和电路 Expired - Fee Related CN1815628B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/003,586 2004-12-02
US11/003,586 US7242218B2 (en) 2004-12-02 2004-12-02 Techniques for combining volatile and non-volatile programmable logic on an integrated circuit

Publications (2)

Publication Number Publication Date
CN1815628A CN1815628A (zh) 2006-08-09
CN1815628B true CN1815628B (zh) 2010-10-27

Family

ID=36078904

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2005101287616A Expired - Fee Related CN1815628B (zh) 2004-12-02 2005-12-02 用于配置可编程设备的方法和电路

Country Status (4)

Country Link
US (1) US7242218B2 (zh)
EP (1) EP1667327A3 (zh)
JP (1) JP4249745B2 (zh)
CN (1) CN1815628B (zh)

Families Citing this family (57)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7190190B1 (en) * 2004-01-09 2007-03-13 Altera Corporation Programmable logic device with on-chip nonvolatile user memory
US7689726B1 (en) * 2004-10-01 2010-03-30 Xilinx, Inc. Bootable integrated circuit device for readback encoding of configuration data
US20080061817A1 (en) * 2004-12-17 2008-03-13 International Business Machines Corporation Changing Chip Function Based on Fuse States
US7442583B2 (en) * 2004-12-17 2008-10-28 International Business Machines Corporation Using electrically programmable fuses to hide architecture, prevent reverse engineering, and make a device inoperable
US20060136858A1 (en) * 2004-12-17 2006-06-22 International Business Machines Corporation Utilizing fuses to store control parameters for external system components
US7919979B1 (en) * 2005-01-21 2011-04-05 Actel Corporation Field programmable gate array including a non-volatile user memory and method for programming
US20060194603A1 (en) * 2005-02-28 2006-08-31 Rudelic John C Architecture partitioning of a nonvolatile memory
US8395426B2 (en) * 2005-05-19 2013-03-12 Broadcom Corporation Digital power-on reset controller
US7538577B2 (en) * 2005-06-29 2009-05-26 Thomas Bollinger System and method for configuring a field programmable gate array
US7403051B1 (en) * 2006-01-26 2008-07-22 Xilinx, Inc. Determining voltage level validity for a power-on reset condition
JP2007251329A (ja) * 2006-03-14 2007-09-27 Matsushita Electric Ind Co Ltd プログラマブルロジックデバイス
US7327595B2 (en) * 2006-05-09 2008-02-05 Analog Devices, Inc. Dynamically read fuse cell
US7495970B1 (en) * 2006-06-02 2009-02-24 Lattice Semiconductor Corporation Flexible memory architectures for programmable logic devices
US7378873B1 (en) * 2006-06-02 2008-05-27 Lattice Semiconductor Corporation Programmable logic device providing a serial peripheral interface
US7570078B1 (en) 2006-06-02 2009-08-04 Lattice Semiconductor Corporation Programmable logic device providing serial peripheral interfaces
US7368940B1 (en) * 2006-06-08 2008-05-06 Xilinx, Inc. Programmable integrated circuit with selective programming to compensate for process variations and/or mask revisions
US7365563B1 (en) 2006-06-08 2008-04-29 Xilinx, Inc. Integrated circuit with performance compensation for process variation
US7362129B1 (en) 2006-06-08 2008-04-22 Xilinx, Inc. Methods of providing performance compensation for process variations in integrated circuits
US7529993B1 (en) 2006-06-08 2009-05-05 Xilinx, Inc. Method of selectively programming integrated circuits to compensate for process variations and/or mask revisions
US7375546B1 (en) 2006-06-08 2008-05-20 Xilinx, Inc. Methods of providing performance compensation for supply voltage variations in integrated circuits
US20080306723A1 (en) * 2007-06-08 2008-12-11 Luca De Ambroggi Emulated Combination Memory Device
US7576561B1 (en) * 2007-11-13 2009-08-18 Xilinx, Inc. Device and method of configuring a device having programmable logic
US7795909B1 (en) * 2008-04-15 2010-09-14 Altera Corporation High speed programming of programmable logic devices
JP5273152B2 (ja) 2008-10-01 2013-08-28 富士通株式会社 半導体装置、情報処理装置及び半導体装置の構築方法
WO2010070736A1 (ja) * 2008-12-16 2010-06-24 株式会社島津製作所 プログラマブルデバイス制御装置およびその方法
US7888965B2 (en) * 2009-01-29 2011-02-15 Texas Instruments Incorporated Defining a default configuration for configurable circuitry in an integrated circuit
EP2224344A1 (en) * 2009-02-27 2010-09-01 Panasonic Corporation A combined processing and non-volatile memory unit array
US8433950B2 (en) * 2009-03-17 2013-04-30 International Business Machines Corporation System to determine fault tolerance in an integrated circuit and associated methods
US8174287B2 (en) * 2009-09-23 2012-05-08 Avaya Inc. Processor programmable PLD device
US8417874B2 (en) * 2010-01-21 2013-04-09 Spansion Llc High speed memory having a programmable read preamble
US8358553B2 (en) * 2010-06-07 2013-01-22 Xilinx, Inc. Input/output bank architecture for an integrated circuit
US9543956B2 (en) * 2011-05-09 2017-01-10 Intel Corporation Systems and methods for configuring an SOPC without a need to use an external memory
US8625345B2 (en) * 2011-07-27 2014-01-07 Micron Technology, Inc. Determining and transferring data from a memory array
US8611138B1 (en) 2012-01-20 2013-12-17 Altera Corporation Circuits and methods for hardening volatile memory circuits through one time programming
US9342259B2 (en) 2012-09-10 2016-05-17 Texas Instruments Incorporated Nonvolatile logic array and power domain segmentation in processing device
US9547034B2 (en) * 2013-07-03 2017-01-17 Xilinx, Inc. Monolithic integrated circuit die having modular die regions stitched together
US10691838B2 (en) 2014-06-20 2020-06-23 Cypress Semiconductor Corporation Encryption for XIP and MMIO external memories
US10192062B2 (en) * 2014-06-20 2019-01-29 Cypress Semiconductor Corporation Encryption for XIP and MMIO external memories
US10169618B2 (en) 2014-06-20 2019-01-01 Cypress Semiconductor Corporation Encryption method for execute-in-place memories
DE102015110729A1 (de) * 2014-07-21 2016-01-21 Dspace Digital Signal Processing And Control Engineering Gmbh Anordnung zur teilweisen Freigabe einer Debuggingschnittstelle
CN105632567B (zh) * 2014-10-27 2019-01-01 阿尔特拉公司 具有嵌入式可编程逻辑的集成电路器件
EP3218827B1 (en) * 2014-11-12 2020-05-27 Xilinx, Inc. Heterogeneous multiprocessor program compilation targeting programmable integrated circuits
US9847783B1 (en) * 2015-10-13 2017-12-19 Altera Corporation Scalable architecture for IP block integration
GB2567215B (en) 2017-10-06 2020-04-01 Advanced Risc Mach Ltd Reconfigurable circuit architecture
US10956241B1 (en) 2017-12-20 2021-03-23 Xilinx, Inc. Unified container for hardware and software binaries
KR102440799B1 (ko) * 2019-04-23 2022-09-06 아르보 컴퍼니 엘엘엘피 이중 기능 셀 어레이를 재구성하기 위한 시스템 및 방법
US10782759B1 (en) 2019-04-23 2020-09-22 Arbor Company, Lllp Systems and methods for integrating batteries with stacked integrated circuit die elements
US10587270B2 (en) 2019-06-12 2020-03-10 Intel Corporation Coarse-grain programmable routing network for logic devices
US10949204B2 (en) * 2019-06-20 2021-03-16 Microchip Technology Incorporated Microcontroller with configurable logic peripheral
US20210011732A1 (en) * 2019-07-09 2021-01-14 MemryX Inc. Matrix Data Reuse Techniques in Processing Systems
US10749528B2 (en) 2019-08-20 2020-08-18 Intel Corporation Stacked programmable integrated circuitry with smart memory
US10992299B1 (en) * 2020-03-09 2021-04-27 Gowin Semiconductor Corporation Method and system for providing word addressable nonvolatile memory in a programmable logic device
CN116097109B (zh) 2020-06-29 2023-11-24 乔木有限责任合伙公司 使用3d管芯堆叠的可重新配置的处理器模块和独立于处理器的5g调制解调器的移动iot边缘装置
US11468220B2 (en) * 2020-07-24 2022-10-11 Gowin Semiconductor Corporation Method and system for enhancing programmability of a field-programmable gate array via a dual-mode port
US11662923B2 (en) 2020-07-24 2023-05-30 Gowin Semiconductor Corporation Method and system for enhancing programmability of a field-programmable gate array
US11829480B2 (en) * 2022-04-20 2023-11-28 Quanta Computer Inc. Remote access of system register configuration
US20240104280A1 (en) * 2022-09-22 2024-03-28 Apple Inc. Functional Circuit Block Harvesting in Integrated Circuits

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1144964A (zh) * 1994-08-01 1997-03-12 精工电子工业株式会社 集成逻辑电路和电可擦可编程只读存储器
US5784313A (en) * 1995-08-18 1998-07-21 Xilinx, Inc. Programmable logic device including configuration data or user data memory slices
US6052309A (en) * 1996-03-14 2000-04-18 Altera Corporation Nonvolatile configuration cells and cell arrays
US6107821A (en) * 1999-02-08 2000-08-22 Xilinx, Inc. On-chip logic analysis and method for using the same
US20030020512A1 (en) * 2001-07-30 2003-01-30 Paul Mantey System and method for in-system programming through an on-system JTAG bridge of programmable logic devices on multiple circuit boards of a system
CN1462945A (zh) * 2003-06-18 2003-12-24 上海北大方正科技电脑系统有限公司 用可编程门阵列对打印机控制器进行硬件逻辑配置的方法
CN1512591A (zh) * 2002-12-30 2004-07-14 ����ʿ�뵼�����޹�˾ 非易失性存储器件
CN1523510A (zh) * 2003-02-18 2004-08-25 明基电通股份有限公司 可重复下载数据至现场可编程门阵列的方法及装置

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5548228A (en) * 1994-09-28 1996-08-20 Altera Corporation Reconfigurable programmable logic device having static and non-volatile memory
US5734868A (en) * 1995-08-09 1998-03-31 Curd; Derek R. Efficient in-system programming structure and method for non-volatile programmable logic devices
US6097211A (en) * 1996-07-18 2000-08-01 Altera Corporation Configuration memory integrated circuit
US5970142A (en) * 1996-08-26 1999-10-19 Xilinx, Inc. Configuration stream encryption
US5825202A (en) 1996-09-26 1998-10-20 Xilinx, Inc. Integrated circuit with field programmable and application specific logic areas
US5874834A (en) 1997-03-04 1999-02-23 Xilinx, Inc. Field programmable gate array with distributed gate-array functionality
US6102963A (en) * 1997-12-29 2000-08-15 Vantis Corporation Electrically erasable and reprogrammable, nonvolatile integrated storage device with in-system programming and verification (ISPAV) capabilities for supporting in-system reconfiguring of PLD's
US6145020A (en) * 1998-05-14 2000-11-07 Advanced Technology Materials, Inc. Microcontroller incorporating an enhanced peripheral controller for automatic updating the configuration date of multiple peripherals by using a ferroelectric memory array
US6260087B1 (en) * 1999-03-03 2001-07-10 Web Chang Embedded configurable logic ASIC
JP3754221B2 (ja) * 1999-03-05 2006-03-08 ローム株式会社 マルチチップ型半導体装置
US6490707B1 (en) 2000-07-13 2002-12-03 Xilinx, Inc. Method for converting programmable logic devices into standard cell devices
US6515509B1 (en) 2000-07-13 2003-02-04 Xilinx, Inc. Programmable logic device structures in standard cell devices
US6526563B1 (en) 2000-07-13 2003-02-25 Xilinx, Inc. Method for improving area in reduced programmable logic devices
US6538468B1 (en) * 2000-07-31 2003-03-25 Cypress Semiconductor Corporation Method and apparatus for multiple boot-up functionalities for a programmable logic device (PLD)
US6441641B1 (en) * 2000-11-28 2002-08-27 Xilinx, Inc. Programmable logic device with partial battery backup
WO2002057921A1 (en) * 2001-01-19 2002-07-25 Hitachi,Ltd Electronic circuit device
JP3904859B2 (ja) * 2001-07-30 2007-04-11 シャープ株式会社 パワーオンリセット回路およびこれを備えたicカード
US6766406B1 (en) * 2001-10-08 2004-07-20 Lsi Logic Corporation Field programmable universal serial bus application specific integrated circuit and method of operation thereof
US6842034B1 (en) * 2003-07-01 2005-01-11 Altera Corporation Selectable dynamic reconfiguration of programmable embedded IP
US7170315B2 (en) * 2003-07-31 2007-01-30 Actel Corporation Programmable system on a chip
US7030646B1 (en) * 2003-09-02 2006-04-18 Altera Corporation Functional pre-configuration of a programmable logic device
US20050102573A1 (en) * 2003-11-03 2005-05-12 Macronix International Co., Ltd. In-circuit configuration architecture for embedded configurable logic array
US20050093572A1 (en) * 2003-11-03 2005-05-05 Macronix International Co., Ltd. In-circuit configuration architecture with configuration on initialization function for embedded configurable logic array

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1144964A (zh) * 1994-08-01 1997-03-12 精工电子工业株式会社 集成逻辑电路和电可擦可编程只读存储器
US5784313A (en) * 1995-08-18 1998-07-21 Xilinx, Inc. Programmable logic device including configuration data or user data memory slices
US6263430B1 (en) * 1995-08-18 2001-07-17 Xilinx, Inc. Method of time multiplexing a programmable logic device
US6052309A (en) * 1996-03-14 2000-04-18 Altera Corporation Nonvolatile configuration cells and cell arrays
US6107821A (en) * 1999-02-08 2000-08-22 Xilinx, Inc. On-chip logic analysis and method for using the same
US20030020512A1 (en) * 2001-07-30 2003-01-30 Paul Mantey System and method for in-system programming through an on-system JTAG bridge of programmable logic devices on multiple circuit boards of a system
CN1512591A (zh) * 2002-12-30 2004-07-14 ����ʿ�뵼�����޹�˾ 非易失性存储器件
CN1523510A (zh) * 2003-02-18 2004-08-25 明基电通股份有限公司 可重复下载数据至现场可编程门阵列的方法及装置
CN1462945A (zh) * 2003-06-18 2003-12-24 上海北大方正科技电脑系统有限公司 用可编程门阵列对打印机控制器进行硬件逻辑配置的方法

Also Published As

Publication number Publication date
US7242218B2 (en) 2007-07-10
CN1815628A (zh) 2006-08-09
EP1667327A3 (en) 2010-05-19
EP1667327A2 (en) 2006-06-07
JP4249745B2 (ja) 2009-04-08
US20060119384A1 (en) 2006-06-08
JP2006166430A (ja) 2006-06-22

Similar Documents

Publication Publication Date Title
CN1815628B (zh) 用于配置可编程设备的方法和电路
US7919979B1 (en) Field programmable gate array including a non-volatile user memory and method for programming
US6057705A (en) Programmable pin designation for semiconductor devices
US6097211A (en) Configuration memory integrated circuit
US6828823B1 (en) Non-volatile and reconfigurable programmable logic devices
US8627105B2 (en) Method and apparatus for securing programming data of a programmable device
US7154297B1 (en) Programmable logic with programmable volatility
US10855285B2 (en) Field programmable transistor arrays
JP6530358B2 (ja) プログラム可能な論理チップのコンフィギュレーションを変更する方法
US6029236A (en) Field programmable gate array with high speed SRAM based configurable function block configurable as high performance logic or block of SRAM
US7683663B1 (en) Authorization of an implementation of a user design in a programmable integrated circuit
EP0227329A2 (en) Programmable logic device
US11362662B2 (en) Field programmable transistor arrays
US8601306B1 (en) Decryption of configuration data for multi-die integrated circuits
US6680871B1 (en) Method and apparatus for testing memory embedded in mask-programmable logic device
CN103633993A (zh) 一种包含可定制熔丝配置模块的可编程逻辑电路
US8327194B1 (en) Nonvolatile recording of integrated circuit-related data
US8941408B2 (en) Configuring data registers to program a programmable device with a configuration bit stream without phantom bits
US6567970B1 (en) PLD configuration architecture
JP3857691B2 (ja) 再構成可能なディジタル論理ユニット
US7830171B1 (en) Method and apparatus for initializing an integrated circuit
Simek et al. Reconfigurable Platform with Polymorphic Digital Gates and Partial Reconfiguration Feature
Honarmand et al. High Level Synthesis of Degradable ASICs Using Virtual Binding
JP2006072842A (ja) 半導体装置並びにその再構成方法及びそのプログラミング方法
JP2004072353A (ja) 半導体装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20101027

Termination date: 20181202

CF01 Termination of patent right due to non-payment of annual fee