Abstract: An invention is provided for managing non-volatile memory having a plurality of memory blocks and a plurality of error values associated with the memory blocks. The method includes recording an error value indicating a number of errors occurring in a memory block during an operation accessing the memory block. The error values can then be aggregated to calculate an overall health of the memory, or used individually, for example, by selecting a memory block for a memory operation based on the associated error value. In general, the error value is updated when the most recent number of errors occurring in the memory block during an operation accessing the memory block is greater than a current recorded value.
Abstract: A system, method, and software program for facilitating the assignment of cell specifications to a plurality of cells of a system design. The methods include generating a plurality of candidate cell specifications that meet the specification for the system design. In one embodiment, the method entails using information related to intra-range preference for cell specifications to generate a set of alternative system pareto-optimal solutions which define a boundary of a region of candidate cell specifications. In another embodiment, the method entails generating a substantially uniform set of candidate cell specifications using a prediction-based performance model, such as support vector regression model or cluster-weighted model, an optimizing algorithm such as conjugate-gradient or Markov Chain Monte Carlo Method, and a sample density model.
Type:
Grant
Filed:
December 18, 2007
Date of Patent:
April 26, 2011
Assignee:
Cadence Design Systems, Inc.
Inventors:
Stephen McCracken, Enis Aykut Dengi, Xuejin Wang
Abstract: Systems and methods of semiconductor device fabrication and layout generation are disclosed. An exemplary method includes processes of depositing a layer of a first material and patterning the layer to form an initial pattern, wherein the initial pattern defines critical features of the layout elements using a single exposure; depositing spacer material over the first pattern on the substrate and etching the spacer material such that the spacer material is removed from horizontal surfaces of the substrate and the first pattern but remains adjacent to vertical surfaces of the first pattern; removing the initial pattern from the substrate while leaving the spacer material in a spacer pattern; filling the spacer pattern with final material; and trimming the filled pattern to remove portions of the final material beyond dimensions of the layout elements.
Abstract: Operations are performed in EDA tools that operate upon partitions or discrete portions of an electronic design, in which the partitions or discrete portions of the design are expanded to account for effects to/from other areas in the design. Identification is made of the portions of the design that are external to the partitions, and depending upon the type of expected effects, would then be considered during optimization and analysis of the partitions. This is implemented by logically expanding the partition to include consideration of the external portions during timing optimization and analysis. By considering an expanded partition for timing optimization and analysis, it is possible to identify unintended problems caused by the timing optimization at an earlier stage of the design process.
Type:
Grant
Filed:
December 26, 2007
Date of Patent:
April 19, 2011
Assignee:
Cadence Design Systems, Inc.
Inventors:
Oleg Levitsky, Kit Lam Cheong, Wilson Chan, Dongzi Liu
Abstract: A method is provided to improve the usability of Design-For-Testability Synthesis (DFTS) tools and to increase the design process productivity. The method comprises receiving a list of testability and design impact analysis functions, to be performed on the circuit, also referred to as a device under test (DUT). The impact analysis leads to the creation of logical transformations, which can be selected by a user with one or more available transformation methods from a list including, but not limited to, boundary scan test logic insertion, scan test logic insertion, memory BIST (built-in-self-test) logic insertion, and logic BIST logic insertion, and scan test data compression insertion logic insertion.
Type:
Grant
Filed:
December 6, 2007
Date of Patent:
April 12, 2011
Assignee:
Cadence Design Systems, Inc.
Inventors:
Nitin Parimi, Patrick Gallagher, Brian Foutz, Vivek Chickermane
Abstract: A method and system for pattern-driven routing are disclosed. Embodiments of pattern-driven routing are disclosed for creating a representation for at least a portion of an initial routing solution, comparing the representation for at least the portion of the initial routing solution with a pattern, and determining whether the initial routing solution has lithographic issues based on the comparison.
Abstract: A system and method of designing an integrated circuit capable of deriving timing constraints for individual block-level circuits of an integrated circuit that are derived from the chip-level timing constraints and analysis. The block-level timing constraints are in the form of one or more logical timing constraint points at the input and output ports of block-level circuits. Each logical timing constraint points specifies a clock source used to clock data through the port, a delay parameter specifying data propagation delay backward from an input port and forward from an output port, and any timing exception associated with the data path. Using the logical timing constraint point, the circuit design system performs independent timing analysis and optimization of each block-level circuit. The system then reassembles the block-level circuits into a modified chip-level circuit for which timing closure can be achieved.
Abstract: Systems and methods of semiconductor device optimization include a system and method to determine a dataset for a layer of the semiconductor device, where the operation includes receiving a dataset defining a plurality of original patterns of sacrificial material in a layer of a semiconductor device, wherein the original patterns of sacrificial material are used to define placement of spacer material to define patterning of circuit elements for the semiconductor device; determining densities of the plurality of original patterns of sacrificial material in areas across a portion of the layer of the semiconductor device; and augmenting the dataset to include an additional pattern of sacrificial material in an area of the layer having a density lower than a threshold density.
Abstract: A scan technique using linear matrix to drive scan chains is used, along with an ATPG, to constraint scan test vectors to be generated through the linear matrix. The linear matrix scan technique reduces the test application time and the amount of test vector data by several orders of magnitude over conventional techniques, without reducing fault coverage.
Abstract: The present invention provides a system and method for generating circuit schematic that includes extracting connectivity data of a plurality of devices from a netlist, categorizing the plurality of devices into groups, placing Schematic Analog Placement Constraints on all the instances by identifying instances among the groups that match with a circuit template (in-built as well as user-specified), creating a BFS instance tree of tree instances, creating a two terminal device clusters and creating instance attachments. Using the constraints during grid based placement and eventually generated schematic which look like analog schematic.
Type:
Grant
Filed:
May 9, 2008
Date of Patent:
March 29, 2011
Assignee:
Cadence Design Systems, Inc.
Inventors:
Balvinder Singh, Donald O'Riordan, Bogdan George Arsintescu, Alka Goel, Devendra Ramakant Deshpande
Abstract: According to various embodiments of the invention systems and methods for multiple pattern lithography, wherein a target layout pattern that is not capable of being printed in one lithography step is decomposed into multiple patterns that are printable in one lithography operation and, when appropriate, a continuous junction is utilized for where patterns overlap. In a further embodiment, where a continuous junction is not utilized, a splice is utilized at overlap locations. In yet another embodiment, where splices are utilized for overlap locations, identifying where critical nets are located in the target layout pattern, determining how close a component of the critical net is to a splice, and changing the target layout pattern as to avoid the condition of a component of the critical net being in proximity to a splice. In another embodiment of the invention, where splices are utilized at overlap locations, placing a landing pad of contacts or vias at the same location as the splice.
Type:
Grant
Filed:
February 21, 2008
Date of Patent:
March 22, 2011
Assignee:
Cadence Design Systems, Inc.
Inventors:
Michiel Victor Paul Kruger, Bayram Yenikaya, Anwei Liu, Abdurrahman Sezginer, Wolf Staud
Abstract: A method is provided that includes: determining a minimum clock cycle that can be used to propagate a signal about the critical cycle in a circuit design; wherein the critical cycle is a cycle in the design that has a highest proportionality of delay to number of registers; determining for a circuit element in the circuit design, sequential slack associated with the circuit element; wherein the sequential slack represents a minimum delay from among respective maximum delays that can be added to respective structural cycles of which the circuit element is a constituent, based upon the determined limit upon clock cycle duration; using the sequential slack to ascertain sequential optimization based design flexibility throughout multiple stages of a design flow.
Type:
Grant
Filed:
May 2, 2007
Date of Patent:
March 22, 2011
Assignee:
Cadence Design Systems, Inc.
Inventors:
Christoph Albrecht, Philip Chong, Andreas Kuehlmann, Ellen Sentovich, Roberto Passerone
Abstract: In one embodiment of the invention, a method is disclosed including receiving a netlist of an integrated circuit design; executing a first copy of an integrated circuit design program with a first processor associated with a first memory space to independently perform work on a first portion of the integrated circuit design; and executing a second copy of the integrated circuit design program with a second processor associated with a second memory space to independently perform work on a second portion of the integrated circuit design; wherein the second memory space is independent of the first memory space.
Abstract: An improved method and mechanism for data partitioning for a DRC tool is disclosed that efficiently and effectively allows parallelization and multithreading to occur for DRC analysis of the IC design. Data partitioning is performed to allow some of the data to be processed in parallel by distributed processing units, while allowing other of the data to be processed in parallel by multiple threads. This can be accomplished by identifying different types of rules and data, and having different types of processing for the different types of rules and data. Certain types of rules/data will be processed with multi-threaded processing and other types of rules/data will be processed in parallel using distributed processing units.
Abstract: To reduce cross-talk, an integrated circuit may include a uniform signal trace for a first signal; and a pair of non-uniform signal traces forming a differential pair for a differential signal. The pair of non-uniform signal traces near the uniform signal trace.
Abstract: A user specifies layout styles for devices in a circuit schematic, where the layout styles capture features of device arrangements and device correlations. The resulting layout can be simulated by using a computer so that one or more performance metrics can be evaluated for the circuit. In some cases, test chips may be used to determine device correlations for arrangements corresponding to different layout styles.
Type:
Application
Filed:
September 17, 2009
Publication date:
March 17, 2011
Applicant:
Cadence Design Systems, Inc.
Inventors:
Donald J. O'RIORDAN, Arthur Schaldenbrand, Richard J. O'Donovan
Abstract: A method and apparatus for emulating a hardware design comprising an instruction execution unit for executing at least one instruction, a memory for providing data to the instruction execution unit for processing into an output bit, and a write enable logic for controlling writing the output bit from the instruction execution unit to the memory. In this manner, the output bit produced by the instruction execution unit executing an instruction may be selectably stored in memory to facilitate efficient processing of conditional emulation operations.
Abstract: Disclosed is an improved approach for organizing, analyzing, and operating upon polygon data which significantly reduces the amount of data required for processing while keeping elements non-interfacing with each other. According to one approach, clusters of elements are extracted which are then handled separately. In some approaches, a set of polygons forms a cluster if for any two polygons from the set of polygons there exists a sequence of polygons from the set such that the distance between any sequential polygons are less than or equal to a given threshold number. Rather than analyzing each and every polygon in the design, repetitive unique patterns are analyzed once, which are then replicated for all clusters which have the same repetitive pattern.
Type:
Grant
Filed:
January 17, 2007
Date of Patent:
March 15, 2011
Assignee:
Cadence Design Systems, Inc.
Inventors:
Anwar Irmatov, Alexander Belousov, Eitan Cadouri, Andrei Gratchev, Alexander Ryjov, Laurent Thenie
Abstract: Disclosed is an improved method and system for processing the tasks performed by an EDA tool in parallel. The IC layout is divided into a plurality of layout windows and one or more of the layout windows are processed in parallel. Sampling of one or more windows may be performed to provide dynamic performance estimation.
Type:
Grant
Filed:
September 12, 2005
Date of Patent:
March 8, 2011
Assignee:
Cadence Design Systems, Inc.
Inventors:
Eitan Cadouri, Krzysztof A. Kozminski, Haifang Liao, Kenneth Mednick, Roland Ruehl, Mark A. Snowden
Abstract: A hardware emulator having a variable input emulation group is described. Each emulation group comprises two or more processors, where one of the processors (a first processor) is coupled to a data input selector and another one of the processors (a second processor) processes a first amount of data received from a data array. The data input selector receives the first amount of data and a second amount of data from the data array, and selects a third amount of data from among the first and second amounts of data. The third amount of data is provided to the first processor for evaluation.
Type:
Grant
Filed:
November 6, 2006
Date of Patent:
March 8, 2011
Assignee:
Cadence Design Systems, Inc.
Inventors:
William F. Beausoleil, Beshara G. Elmufdi, Mitchell G. Poplack, Tai Su