Abstract: Method and apparatus for address filtering for a media access controller is described. An application specific integrated circuit block located in a programmable logic device includes a media access controller. The media access controller includes an address filter, which includes: address filter modules, a first logic tree coupled to each of the address filter modules and configured to provide a frame drop signal for delineation between a dropped frame and an address filtered frame; and a second logic tree coupled to each of the address filter modules to provide an address valid signal.
Abstract: Methods of compensating for power supply variations in an integrated circuit. During operation of the IC die, a power supply voltage level is monitored. When the power supply voltage level drops below a specified level, a performance compensation circuit in the IC is enabled, bringing a first delay (e.g., the rising delay) for a compensated circuit in the IC more closely into alignment with a second delay (e.g., a falling delay) for the circuit. When the power supply voltage level exceeds the specified level, the performance compensation circuit is disabled. When the IC is a programmable IC, for example, the compensated circuit can be a programmable interconnect multiplexer of the programmable IC. In these embodiments, the power supply voltage level for the pass transistors in the interconnect multiplexer can be monitored and compensated for as described above.
Abstract: Described are methods and systems for encrypting and decrypting configuration data for programmable logic devices. An encrypted bitstream of configuration data includes two or more portions, each of which may be encrypted using a different key. Prior to loading, the author of each portion calculates the byte count for his or her portion and loads the required decryption key and byte count into a key and count memory. The designs are then loaded together as a single bitstream. The PLD decrypts the first portions using the first password. At the start of the partial bitstream, configuration logic loads the count associated with the decryption key for the first portions into a decrementing counter. The counter then decrements for each byte decrypted, reaching a count of zero when the first portion is fully decrypted. The configuration logic then selects the subsequent decryption key and associated count for the next portion of the bitstream.
Abstract: An Electrostatic Discharge (ESD) protection device extends the protection range of an ESD clamp circuit through hysteresis of the associated ESD clamp control circuit. Once the ESD clamp circuit is activated, an adjustment circuit applies a trigger level adjustment signal to the ESD clamp control circuit. The trigger level adjustment signal effectively increases the magnitude of the deactivation signal that is required to deactivate the ESD clamp circuit. Since the deactivation signal increases over time, a longer activation time of the ESD protection device is provided, which allows an extended protection range.
Type:
Grant
Filed:
June 18, 2004
Date of Patent:
May 13, 2008
Assignee:
Xilinx, Inc.
Inventors:
Fu-Hing Ho, Patrick J. Crotty, Andy T. Nguyen
Abstract: A method for determining propagation delay differences for conductive lines of an integrated circuit is described. A first path is formed by coupling a first portion of conductive lines together. The first portion is associated with a first region of the integrated circuit. The first path is coupled in a ring oscillator, and a first delay is determined. A second path is formed by coupling a second portion of the conductive lines together. The second portion is the first portion except for at least a first conductive line in the first portion of the conductive lines being swapped for a second conductive line. The second conductive line is associated with a second region of the integrated circuit. The second path is coupled in the ring oscillator circuit. A second delay is determined, and an incremental difference between the first delay and the second delay may be determined.
Type:
Grant
Filed:
June 7, 2005
Date of Patent:
May 13, 2008
Assignee:
XILINX, Inc.
Inventors:
Tarek Eldin, Himanshu J. Verma, Feng Wang, Eric J Thorne
Abstract: A clock distribution network having: a main trunk configured to provide a differential clock signal; a plurality of branches coupled to the main trunk for distributing the differential clock signal to a plurality of circuit elements on the integrated circuit; and a plurality of switches coupling the main trunk to the plurality of branches.
Type:
Grant
Filed:
August 29, 2006
Date of Patent:
May 13, 2008
Assignee:
Xilinx, Inc.
Inventors:
Vasisht Mantra Vadi, Steven P. Young, Atul V. Ghia, Adebabay M. Bekele, Suresh M. Menon
Abstract: A system measures propagation delays in any number of test circuits, each having two asynchronous inputs and an output, without using their clock inputs to re-initialize the test circuits during measurement operations. The delay between one of the test circuit's asynchronous inputs and its output is measured by propagating a test signal from the one asynchronous input to the output, and the test circuit is re-initialized using the test circuit's other asynchronous input.
Type:
Grant
Filed:
December 8, 2004
Date of Patent:
May 13, 2008
Assignee:
Xilinx, Inc.
Inventors:
Christopher H. Kingsley, Kusuma Bathala, Richard D. J. Duce, Paul A. Swartz
Abstract: A method of partitioning a design across a plurality of integrated circuits can include creating a software construct for each one of the plurality of integrated circuits and assigning a plurality of instances to a selected software construct. Each of the plurality of instances can be from a different logic hierarchy. The method further can include automatically adding at least one input/output buffer and port to the selected software construct to accommodate the plurality of instances and creating nets connecting the plurality of instances and the at least one input/output buffer and port within the selected software construct.
Type:
Grant
Filed:
April 5, 2005
Date of Patent:
May 6, 2008
Assignee:
XILINX, Inc.
Inventors:
David A. Knol, Abhishek Ranjan, Salil R. Raje
Abstract: A low-leakage circuit design method involves determining a capacity of a power gating transistor using delay statistics, wherein the resulting power gating transistor has sufficient capacity to supply all of the current necessary to meet the demands of the powered design elements while minimizing an amount of chip space required to implement the power gating transistor. The capacity of the power gating transistor is determined by first estimating a capacity necessary to meet the demands of all design elements connected to the transistor. The design elements are then grouped according to input signal arrival time to determine an amount by which the estimated capacity of the gating transistor may be reduced without affecting operation of the design elements. Various grouping schemes are evaluated to determine an optimal grouping. The estimated transistor capacity is reduced according to the optimal grouping, and the power gating transistor is implemented accordingly.
Abstract: Programmable integrated circuits (ICs) that compensate for process variations and/or mask revisions in a programmable integrated circuit (IC). An exemplary IC includes two programming ports, two programmable circuits (e.g., digital and analog), a non-volatile memory, and a configuration control circuit coupled to the programmable circuits and non-volatile memory. In some embodiments, one port can be used for storing data in the non-volatile memory, while the other port can be used for providing a configuration bitstream to the configuration control circuit. The non-volatile memory can be used to store a value that identifies a process corner and/or mask revision for the programmable IC. The configuration control circuit monitors data arriving in the configuration bitstream, and selectively either ignores the data or uses the data to configure the IC (e.g., the analog circuit), based on a comparison of a code key in the bitstream with the value stored in the non-volatile memory.
Abstract: Address map generation is described. More particularly, static addresses are obtained. A system design at least a portion of which is for instantiation in configurable logic of an integrated circuit is obtained. The system design includes a processor. At least one predefined circuit block in the design is identified as a peripheral connected to a processor. The at least one predefined circuit block is for instantiation in the configurable logic of the integrated circuit. Assigned to the at least one predefined circuit block is a static address range which is obtained from the static addresses. An address map for the design is generated having the at least one predefined circuit block with the static address range. Thus, for example, independent designers designing separate systems having a same set of peripherals may map to the same static address ranges independent of software system builder tool version, board, or processor used.
Abstract: The present invention incorporates level-shifting functions within a multiplexer circuit that may be implemented in IC devices having low and high voltage domains. The multiplexer circuit utilizes pseudo-differential multiplexing architectures and employs level-shifting techniques to convert low-voltage signals received from the low-voltage domain into high-voltage signals more suitable for controlling the propagation of a selected input signal through the pass gates of the multiplexer circuit. For some embodiments, some of the select signals may be decoded to generate a number of decoded select signals that can be used to control the selective routing of signals through the multiplexer.
Abstract: Cross-correlation of delay line characteristics is described. An integrated circuit for cross-correlation testing includes: a first ring oscillator and a second ring oscillator. The first ring oscillator includes a first test circuit, and the second ring oscillator includes a second test circuit. The first test circuit is coupled via first programmable interconnects to first ring oscillator circuitry, and the second test circuit is coupled via second programmable interconnects to second ring oscillator circuitry. The first test circuit includes a first programmable delay line, and the second test circuit includes a second programmable delay line. The first test circuit and the second test circuit are configured to provide separately controllable outputs for cross-correlation as between the first programmable delay line and the second programmable delay line.
Type:
Grant
Filed:
February 25, 2005
Date of Patent:
May 6, 2008
Assignee:
XILINX, Inc.
Inventors:
Himanshu J. Verma, Ajay Dalvi, Paul A. Swartz
Abstract: A memory cell with a logic bit has a first one-time-programmable (“OTP”) memory element providing a first OTP memory element output and a second OTP memory element providing a second OTP memory element output. A logic operator coupled to the first OTP memory element output and to the second OTP memory element output and provides a binary memory output of the memory cell. In a particular embodiment, the first OTP memory element is a different type of OTP memory than the second OTP memory element.
Type:
Application
Filed:
October 27, 2006
Publication date:
May 1, 2008
Applicant:
Xilinx, Inc.
Inventors:
Sunhom Paak, Hsung Jai Im, Boon Yong Ang
Abstract: A method of circuit design for a programmable logic device (PLD) can include identifying a plurality of routing resources, wherein each of the plurality of routing resources is associated with a reliability measure, and selecting routing resources for use in routing a circuit design for the PLD according to, at least in part, the reliability measures. The circuit design for the PLD can be routed using the selected routing resources.
Type:
Grant
Filed:
June 29, 2005
Date of Patent:
April 29, 2008
Assignee:
Xilinx, Inc.
Inventors:
Prasanna Sundararajan, Carter Hamilton, Ian L. McEwen
Abstract: A method communicates data with efficient conversion between representations in a high-level modeling system. The data is communicated from a first block in a first external format and the data is communicated to a second block in a second external format. The first block has a first internal representation of the data and the second block has a second internal representation of the data. The first internal representation is converted to the second internal representation without intermediate representation in the first and second external formats in response to different first and second external formats or different first and second internal representations. Conversion between the representations of the data is bypassed in response to like first and second external formats and like first and second internal representations. A signal instance is created that communicates the data between the blocks. Converters between data representations are installed in the signal instance on demand.
Type:
Grant
Filed:
November 8, 2005
Date of Patent:
April 29, 2008
Assignee:
Xilinx, Inc.
Inventors:
Sean A. Kelly, Roger B. Milne, Jonathan B. Ballagh
Abstract: A circuit for buffering data is disclosed. The circuit comprises a first circuit which is coupled to receive a stream of data blocks using a first clock signal. The first circuit removes data blocks, such as idle data blocks or a sequence ordered set of a pair of consecutive sequence ordered sets, from the stream of data blocks to create a first modified data stream which is coupled to a memory device. Finally, a second circuit coupled to the memory device generates a second modified data stream using a second clock signal. The second modified data stream preferably comprises the data blocks of the first modified data stream and idle data blocks inserted among the data blocks of the first modified data stream. Methods of buffering data received in a first clock domain and output in a second clock domain are also disclosed.
Abstract: Described are programmable logic devices that decrypt proprietary configuration data using on-chip decryption keys. The keys are stored in a key memory that can be operated in a secure mode or a non-secure mode. The non-secure mode allows the decryption keys to be read or written freely; the secure mode bars read and write access to the decryption keys. The programmable logic device supports secure and non-secure modes on a key-by-key basis, allowing users to write, verify, and erase individual keys without affecting others.
Abstract: A charge pump circuit has a charge pump section and a replica charge pump section. The replica charge pump section produces a replica voltage at which the UP current will match the DOWN current. A comparator compares the replica voltage to the output voltage, and adjusts the bias to the charge pump section and replica charge pump section so that the voltage level produced by the replica charge pump section matches the output voltage.
Abstract: Multiplexer circuits that can be programmed to selectively balance the rising and falling delays through the circuits in the presence of process variations and/or variations in power levels. These multiplexer circuits can be used, for example, as programmable interconnect multiplexers in the interconnect structures of programmable logic devices (PLDs). A multiplexer circuit includes a multiplexer (e.g., driven by a plurality of interconnect lines in a PLD), a logic gate (e.g., an inverter) driven by the multiplexer, and a performance compensation circuit. The performance compensation circuit is coupled to the output terminal of the inverter, and has a compensation enable input terminal. The performance compensation circuit is coupled to adjust a trip point of the logic gate based on a value of a signal provided on the compensation enable input terminal.