US5913022A - Loading hardware pattern memory in automatic test equipment for testing circuits - Google Patents
Loading hardware pattern memory in automatic test equipment for testing circuits Download PDFInfo
- Publication number
- US5913022A US5913022A US08/573,071 US57307195A US5913022A US 5913022 A US5913022 A US 5913022A US 57307195 A US57307195 A US 57307195A US 5913022 A US5913022 A US 5913022A
- Authority
- US
- United States
- Prior art keywords
- pattern
- database
- tester
- memory
- vector
- 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 - Lifetime
Links
Images
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/317—Testing of digital circuits
- G01R31/3181—Functional testing
- G01R31/319—Tester hardware, i.e. output processing circuits
- G01R31/31903—Tester hardware, i.e. output processing circuits tester configuration
- G01R31/31908—Tester set-up, e.g. configuring the tester to the device under test [DUT], down loading test patterns
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/317—Testing of digital circuits
- G01R31/3181—Functional testing
- G01R31/319—Tester hardware, i.e. output processing circuits
- G01R31/31917—Stimuli generation or application of test patterns to the device under test [DUT]
- G01R31/31919—Storing and outputting test patterns
Definitions
- the present invention relates to a software and hardware architecture for the loading and execution of test programs for automatic test equipment for testing circuits, such as integrated circuits or circuit boards. More particularly, the present invention relates to an object-oriented architecture for loading and managing test vectors and patterns of test vectors in a tester.
- ATE testers or, simply, “testers"
- the test hardware generally includes an embedded computer that performs higher-level data management and control functions for the tester.
- An example of automatic test equipment in which the invention may be used is the system described in U.S. Pat. No. 5,212,443 to West et al. for Event Sequencer For Automatic Test Equipment (“West”), the disclosure of which is incorporated herein by this reference.
- West Event Sequencer For Automatic Test Equipment
- a software architecture for the development and execution of test programs for such automatic test equipment is described in commonly-owned provisional U.S. patent application Ser. No. 60/003,010 for ATE TEST PROGRAMMING ARCHITECTURE, filed Aug. 31, 1995, the disclosure of which is incorporated herein by this reference.
- a test vector is a cycle of operations that applies data to all the pins of the device under test at the same time.
- Vectors generally include opcodes, operands, and format data for each pin definition.
- a pattern is a sequence of test vectors.
- Test programs on a tester generally include large patterns of test vectors, which in the aggregate may exceed one gigabit of data. Consequently, a major challenge for automatic test equipment is the loading and management of test vectors of large size with speed and flexibility.
- the invention provides a system for the execution of test programs including vector patterns for testing circuits.
- the system includes programmable tester having an embedded control computer on which a test program runs and a pattern memory for storing vector patterns; an object-oriented database management server process coupled to an object database; and a pattern memory manager object (PPMM) in the object database, the PPMM including encapsulated data describing the status of the tester's pattern memory.
- the PPMM of the system is a persistent object.
- the encapsulated data of the PPMM further includes contents of the tester's pattern memory.
- the encapsulated data of the PPMM also includes the identity, location, and status of each pattern in the tester's pattern memory.
- the object-oriented database management server process of the system runs on a second computer and the object database is stored on long-term mass storage media on the second computer, which media may be a hard disk.
- the test program running in the tester's embedded computer maintains an image copy of the PPMM.
- the system has a second object database and, in the second object database, a persistent vector pattern object encapsulating a vector pattern for loading into the tester's pattern memory, the vector pattern object also including member functions to modify the vector pattern and the vectors in the pattern.
- the system has a cache manager process running on the tester's embedded computer that provides functions invoked to maintain coherency in the copies of the PPMM.
- the invention provides a system for the execution of test programs including vector patterns for testing circuits.
- the system includes a programmable tester with an embedded control computer on which a test program runs and a pattern memory for storing vector patterns; an object-oriented database management server process coupled to an object database; and a persistent vector pattern object in the object database, the vector pattern object encapsulating a vector pattern for loading into the tester's pattern memory, the vector pattern object also having member functions to modify the vector pattern and the vectors in the pattern.
- the vector pattern encapsulated in the vector pattern object is in a compressed binary form.
- the invention has a number of advantages.
- the invention provides for the efficient storage and retrieval patterns of vectors.
- the invention also provides access to vector patterns in a way that makes the vectors and patterns easy to edit and debug during development.
- the invention also provides for the rapid loading of vector patterns into tester hardware. The invention can deal quickly and efficiently with very large vector patterns.
- a high-performance object database to store compressed pattern objects provides good performance both in time and space.
- ODB object database
- device-oriented vectors and patterns such as are provided in the West system
- use of a high-performance ODB to store compressed pattern objects also provides a common database server for both design and test environments. In such an environment, pattern objects can be retrieved efficiently, without undue data manipulation or translation, for loading into tester hardware.
- a common database server changes made by a user can be reflected instantaneously in the database without need for recompilation.
- tool performance is enhanced by fetching (without translation) on the relevant data from the pattern database server.
- the client-server distribution allows for optimization of resource use, independence of server sites, and increased concurrency.
- the invention allows the same vectors, viewed by different application objects, to be used in the design as well as in the test stage. This also makes it easy to build tools to visualize vectors and patterns in different ways.
- the invention enables the tester programming environment to avoid the time-consuming task of reloading into tester memory vector patterns that are already there. This is advantageous with a two-headed tester that shares vector pattern memory in the tester, as well as for reuse of patterns in separate, sequentially loaded test programs.
- the invention facilitates the replacement of patterns and vectors including the fast addition, modification, and deletion of patterns and vectors.
- FIG. 1 is a block diagram illustrating a test hardware environment.
- FIG. 2 is a block diagram of a software architecture for a tester in accordance with the present invention.
- a tester 100 operates under software control, including under the control of an embedded computer 200 executing a test program stored in a random access memory.
- the embedded computer may communicate with, and operate under control of, a console computer 110, such as an engineering workstation, that is part of the tester 100 or that is connected to the tester by a bus or by a network connection 112, such as an Ethernet connection.
- the tester 100 may be connected to other computers 114, including server computers 116 for storing test programs and test vector patterns on mass data stores 118.
- the tester 100 uses an interactive, object-oriented programming environment that provides a suite of software tools that interact with pre-defined data structures to control the tester.
- the tools include, for example, a ControlTool 202, which initializes the user interface and starts up tools requested (directly or indirectly) by the user; a SelectionTool (not shown), which allows the user to select a test program from a program database (not shown); a FlowTool (not shown), which allows the user to specify a sequence of tests and gives an overview of a complete test program; and a VectorTool 204, which allows the user to edit vectors and vector patterns.
- test programs can also be generated from source code that compilers (not shown) of the programming environment translate into the required forms of objects.
- Source code generation is useful whenever test programs would be generated automatically. For example, source code would be one natural form in which to receive vector output from a design simulation system.
- test vector patterns and other test program components make up test blocks. These blocks are programmed and stored as objects in an object-oriented database (such as ODBs 206 and 208) under an object-oriented database management system (OODBMS).
- object is used in the object-oriented programming sense: an object generally has member data and member functions, including encapsulated data and public member functions to perform operations with the encapsulated data.
- OODBMS object-oriented database management system
- ObjectStore is available from Object Design, Inc. of Boston, Mass.
- ObjectStore is an Object Database Management Group (ODMG) compliant object-oriented database management system.
- test program flow can easily be changed by changing the execution sequence of its test blocks.
- the programming in the tester's embedded computer 200 includes an interface to the application tools such as VectorTool 204; a runtime system that includes code to run the tester hardware and code to run test programs, including code to interpret the program components that are loaded as blocks; and test program blocks, which will differ from one test program to another.
- application tools such as VectorTool 204
- runtime system that includes code to run the tester hardware and code to run test programs, including code to interpret the program components that are loaded as blocks
- test program blocks which will differ from one test program to another.
- An individual test normally includes both event sequences and vector patterns.
- Vector patterns in the tester are stored in a set of memories that will be referred to in the aggregate as pattern memory 210. Because vector patterns can be very large, it is generally not desirable to store or manipulate patterns in text form.
- Vectors and patterns are normally stored in a compiled and compressed binary form to save space. The compressed form is decompressed by decompression hardware in the tester when vector patterns are loaded into the tester. Patterns are often loaded in sets defined by pattern lists.
- pattern services including the services provided by the object-oriented database (ODB) 206
- ODB object-oriented database
- applications served by the ODB 206 include the front-end application tools (described above) and the tester hardware itself--or, more precisely, processes, such as tool server 234, running on the tester's programmed embedded computer 200.
- the embedded computer 200 includes a precessor 201 to execute the instructions of such processes.
- a distributed architecture for the tester and programming environment follows the CORBA model.
- the CORBA Common Object Request Broker Architecture
- ODB Object Management Group
- CORBA object services for objects such as pattern objects in an ODB 206, provide the mechanisms by which objects transparently make and receive requests and responses.
- OMA Object Management Architecture
- the pattern loader pattern daemon 232
- ORB CORBA compliant Object Request Broker
- Application objects such as the VectorTool 204 are enabled in this architecture to communicate transparently with other application objects, such as the ControlTool 202, and object services, such as vector pattern objects in ODB 206.
- the VectorTool 204 has a graphical user interface in the OSF/Motif style and is written in C++. It is written using customized X Window System (X11) support for display.
- Vectors in a pattern contain data that may include opcodes, operands and format data for each pin definition.
- the user-scrollable information is divided into two data dimensions: the vectors and the pin definitions. Each data dimension is managed by a data interval manager that provides a window on the actual object data dimension. This manager also provides scrolling and other interface support. For any given display snapshot, only those data that are on the display are retrieved by the data interval manager.
- PPMM Persistent Pattern Memory Manager
- ODB 208 separates from the one on which vector pattern objects are stored.
- the ODB 208 runs under an ODB server process 216, typically on a programmer's workstation 218.
- the data portion of the PPMM includes a map of the pattern memory (i.e. what is in tester pattern memory, the "PM map").
- the member functions of the PPMM object provide information and services to the test program.
- PPMM objects and other aspects of the software architecture will be described in terms of their operation in a tester. However, these components operate in the same way when invoked to simulate a tester environment.
- the data contents of the PPMM object are memory mapped by the ODB server process 216 and ODB client process 220 into an image 224 in the addressing space of the test program 222 in the tester's embedded control computer 200. It will thus appear to the test program 222 that the PM map is part of the test program's data structures.
- the PPMM object is created, stored, and maintained on disk in ODB 208 through the ODB client 220 and server 216 software.
- the object is therefore persistent and retained even after its test program 222 is unloaded from the tester 100.
- the client process 220 for the ODBs 206 and 208 runs in the tester embedded computer 200. It typically, but optionally, maintains a local disk cache 226 of the ODB, for reasons of speed, and so is called the cache manager process.
- the PPMM object resides in, and remains persistent in, the ODB server workstation computer 218.
- a PPMM object is identified with its tester by name; that is, one of its attributes is the name of the tester to which it belongs.
- the illustrated host 212 and 218 are workstation computers having processors 213 and 219, respectively, to execute their respective processes.
- An ODB server process 216 or 217 runs on a server host 212 or 218 and communicates with the test program 222 and the user application tools, such as the VectorTool 204, through the cache manager process 220.
- the application tools determine which server to use, as there typically will be more than one. Both client and server processes are normally running and accessible, i.e., they are not normally terminated.
- an ODB server process 216 retrieves the PPMM object corresponding to the tester 100 (or to the tester being simulated, in the case of a simulation) and delivers it to the client process 220.
- a copy resides on the cache disk 226.
- the PPMM is also memory mapped into the test program for immediate, full speed access. However, this mapped copy is not persistent.
- PPMM is maintained by the cache disk manager and the ODB server process. The PM map and the tester pattern memory itself are maintained and modified only through pattern load support library 228 functions, or through the ODB client 220 or server 216 processes.
- a PPMM object represents the current contents of its test pattern memory 210, and the object contains the functions needed to access the representation. There is thus a one-to-one relationship between the physical hardware pattern memory 210 and its PPMM object.
- a separate ODB 208 is used to store each PPMM, one for each actual tester.
- the pattern memory 210 for a tester 100 has a well-defined content (including ⁇ invalid ⁇ ), which will be captured and maintained by the PPMM for the tester.
- each tester has one pattern memory, there is need for exactly one PPMM object for each tester, and each object can be stored in its own database.
- the database can thus conveniently be stored on the tester's console workstation disk.
- the ODB server process 216 software can also be run on the console workstation.
- the cached copy of the PPMM if not stored on a disk local to the tester embedded computer, can be stored anywhere on the local network to which the tester is connected.
- the PPMM can, as a selectable option, enable the reuse of patterns stored in pattern memory.
- a pattern may be reused (rather than reloaded) only if the full pattern name and date of the pattern identified in the load request match those of the pattern in pattern memory 210, the pattern memory image of the pattern has not been modified, and the user requesting reuse has access rights to the pattern.
- the pattern is marked as modified in the PPMM.
- the PPMM will keep the current location of the pattern in the pattern memory as long as the pattern does not grow into other used areas. When it does, the PPMM finds a new location for the pattern and has it moved.
- a task tracks the versions of software run on a tester and notifies the PPMM if an old version has been run and the PPMM data may no longer be valid.
- the software that runs in a tester's embedded processor runs on a workstation instead.
- the application tools would also be run on that workstation, and the ODB cache disk would be attached to it.
- the memory mapped image of the PPMM for the simulated tester exists, and the patterns may or may not be loaded into simulated pattern memory, depending on the simulation options.
- Each active simulation session requires one PPMM object and consequently, in the scheme described above, one ODB; however, one ODB server process can serve multiple simulation sessions.
- a PPMM is a container for maps, which are objects of type "ppmm -- map” (a class).
- a map is a list of handles, which are objects of type "ppmm -- handle” (a class).
- the PPMM may have multiple maps, one to keep track of each different kind of memory that is a part of the pattern memory of the tester.
- the handles in a map collectively represent the used portions of the tester pattern memory corresponding to the map, with each handle representing the state of a contiguous portion of that memory. Normally, a handle for a used portion of pattern memory will uniquely correspond to the entirety of one pattern stored there in the tester.
- the unused portions may also be represented in handles, as is the case in the embodiment described below.
- the members of ppmm -- map include the member data described in the following table. It also includes the member data and functions of its base type, a list of handles. (Data types and sizes are generally omitted in the tables below for the sake of brevity and clarity.)
- the ppmm -- map class has conventional public member functions to set and return the values of member data.
- the ppmm -- map member functions also include the functions described in the following table. (Function arguments are generally omitted in the tables below for the sake of brevity and clarity.)
- a handle object has member data describing a portion of tester memory, including the portion's location and size (user requested and physically allocated), a pointer to the corresponding pattern object, and internal flags, including flags as indicating the use being made of the tester memory.
- the ppmm -- handle class has conventional public member functions to set and return the values of the member data.
- ppmm -- pattern is the base class for pattern objects. All pattern objects inherit from classes derived from this class.
- the member data of ppmm -- pattern include the protected data described in the following table.
- the ppmm -- pattern class has conventional public member functions to set and return the values of the member data.
- the class also has virtual member functions to get and set handles for patterns.
- the virtual functions may include separate functions to get and set handles for each different kind of pattern memory in the tester.
- a pattern object may include multiple handles, one for each function (usage), and the member functions for the pattern object will include functions to get and set the corresponding handles. In this way, any form of tester memory organization can be supported with a structure of handles corresponding to he structure of test memory use.
- the ppmm -- pattern member functions also include the functions described in the following table. (Data types and sizes and function arguments are generally omitted for the sake of brevity and clarity.)
- Objects of the class "ppmm -- test -- program" are used to track test programs.
- the member data for this class includes identifiers for the test program and for its user and a list of the patterns loaded for the test program.
- the public member functions include conventional functions to get and set data, including the functions described in the following table.
- a PPMM is a container for maps. It is an object of type "ppmm -- pmm" (a class). Its member data includes pointers to the maps in the container, which would conveniently be one map for each kind of memory in the tester. It also includes a table of all the pattern instances in tester memory known to the PPMM, a list of all test programs in the tester, a version number, and flags. Its public member functions include conventional functions to get and set data and also the functions described in the following table.
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Tests Of Electronic Circuits (AREA)
Abstract
Description
______________________________________ Name Description ______________________________________ base first tester memory location represented by the map size tester memory size represented by the map used total memory used lock busy flag smallest.sub.-- block smallest block of tester memory that may be created (allocated) block.sub.-- alignment word boundary on which to create blocks parity.sub.-- errors list of parity errors bad.sub.-- memory list of bad memory locations ______________________________________
______________________________________ Name Description ______________________________________ first.sub.-- available.sub.-- handle returns a pointer to the first handle in the map whose size is greater or equal to the requested size, in the requested direction (up or down) count.sub.-- parity.sub.-- error logs parity error occurring at a location get.sub.-- handle.sub.-- at gets the handle at a specified location (a handle "at" a location is one that represents a range of memory in which the location is found) allocate.sub.-- handle.sub.-- in.sub.-- end allocates a new handle from the end (old.sub.-- handle, (in the specified direction) of a pointer.sub.-- to.sub.-- pattern, handle (old.sub.-- handle) for of the usage.sub.-- type, size, specified amount of tester memory for direction) the specified usage for tester memory carrying the specified pattern; the specified tester memory is reassigned from old.sub.-- handle to the new handle; old.sub.-- handle is removed if it now refers to no tester memory allocate.sub.-- handle.sub.-- in.sub.-- like allocate.sub.-- handle.sub.-- in.sub.-- end, only the middle (. . . , new handle is allocated for a mem.sub.-- addr) specified tester memory address that is in middle of old.sub.-- handle allocate.sub.-- handle finds the specified amount of memory in the free space (unused tester memory), allocates a new handle, and inserts the handle in the list of handles (before or after the free space) reallocate.sub.-- handle reallocates the size of the handle to the specified size; if the handle cannot be expanded to the new size, releases the handle and allocates a new one, so that the tester memory represented by the handle will change allocate.sub.-- handle.sub.-- at allocates a handle at a specified location, if possible; returns a pointer to the handle on success mark.sub.-- bad marks location of tester memory as bad mark.sub.-- good remove location from bad memory list combine.sub.-- handles combines two handles into one handle; deletes the second handle unallocate.sub.-- handle releases (frees) a handle in the map; combines it into other free handles, if possible ______________________________________
______________________________________ Name Description ______________________________________ name name of the pattern tp.sub.-- name.sub.-- initial.sub.-- load name of test program that initially loaded the pattern initial.sub.-- load.sub.-- time data and time pattern initially loaded package.sub.-- name name of the device package in which the circuit being tested is packaged curr.sub.-- pindef pin definition table with which this pattern was loaded labels labels defined within the pattern to identify relative addresses of vectors common pointer to the common pattern, if any, that is included by reference in this pattern (common pattern can be shared and used by the other patterns, like a parameter definition file, to hold vector definitions and pattern subroutines) group.sub.-- id code indicating whether, and with whom, sharing of the pattern is permitted pm.sub.-- image.sub.-- modified flag indicating whether image of pattern in tester has been modified ("dirty flag") compile.sub.-- time pattern's compile time and date interested.sub.-- tps the test programs "interested" in the pattern (an interested test program is one that has loaded the pattern) ______________________________________
______________________________________ Function Description ______________________________________ get.sub.-- interested.sub.-- returns the index'th "interested" test tp(index) program for this pattern resize.sub.-- handle resizes a handle; returns a pointer to the resized handle; the pointer may point to a different handle if the resized handle had to be reallocated at a different location unallocate.sub.-- all.sub.-- unallocate all handles for a pattern handles ______________________________________
______________________________________ Function Description ______________________________________ get.sub.-- pattern returns the first instance of the pattern having a specified name that is loaded for the test program get.sub.-- compile.sub.-- time gets date and time the specified pattern was compiled pattern.sub.-- reloaded called when a pattern is "reloaded": resets compile and load time data; resets memory image dirty flag unload.sub.-- pattern unloads the pattern for this test program: means program is no longer "interested" in the pattern; does not unallocate or remove pattern from tester memory unload unloads all patterns for this test program ______________________________________
______________________________________ Function Description ______________________________________ get.sub.-- map returns a pointer to the map object for a specified tester memory type usage.sub.-- get.sub.-- map returns a pointer to the map object for a specified type of handle (usage) allocate.sub.-- handle allocates a handle in the map for a specified pattern, size, and type of handle (usage) allocate.sub.-- pattern allocates a pattern object of the requested type of the specified size for the specified test program invalidate invalidates all of the patterns objects: resets all of the test program objects; unallocates all of the unused patterns; results in all patterns being unused unallocate.sub.-- pattern removes all information about a pattern in test memory; all of the related objects (such as pattern objects and handles) are deleted unallocate.sub.-- all.sub.-- unallocates all unused pattern unused.sub.-- patterns instances from a list of patterns (an unused pattern is one that is not loaded by any test program, that is, no test program is interested in it at this time) pattern.sub.-- already.sub.-- checks whether a pattern of a loaded specified name is loaded and can be reused; if so, returns a pointer to the pattern object and the specified test program is added to the programs interested in the pattern (a loaded pattern is reusable only if the requesting user is a member authorized to use it and if it has not been compiled or become dirty since loaded) load.sub.-- pattern actually loads a pattern of a specified name for a specified test program and with specified memory size, first checking for possible reuse; allocates all needed handles and registers the pattern for the test program ______________________________________
Claims (36)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US08/573,071 US5913022A (en) | 1995-08-31 | 1995-12-15 | Loading hardware pattern memory in automatic test equipment for testing circuits |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US301095P | 1995-08-31 | 1995-08-31 | |
US08/573,071 US5913022A (en) | 1995-08-31 | 1995-12-15 | Loading hardware pattern memory in automatic test equipment for testing circuits |
Publications (1)
Publication Number | Publication Date |
---|---|
US5913022A true US5913022A (en) | 1999-06-15 |
Family
ID=26671160
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US08/573,071 Expired - Lifetime US5913022A (en) | 1995-08-31 | 1995-12-15 | Loading hardware pattern memory in automatic test equipment for testing circuits |
Country Status (1)
Country | Link |
---|---|
US (1) | US5913022A (en) |
Cited By (32)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1999056190A1 (en) * | 1998-04-27 | 1999-11-04 | Credence Systems Corporation | Temperature tracking voltage-to-current converter |
US6170070B1 (en) * | 1997-05-28 | 2001-01-02 | Samsung Electronics Co. Ltd. | Test method of cache memory of multiprocessor system |
US20020035708A1 (en) * | 2000-06-08 | 2002-03-21 | Masahiro Ishida | Method and apparatus for generating test patterns used in testing semiconductor integrated ciruit |
US20020133749A1 (en) * | 2001-01-30 | 2002-09-19 | Petersen Michael B. | System and method for managing and implementing electronic equipment tests |
US20020174361A1 (en) * | 2001-03-02 | 2002-11-21 | Martin Hurich | Method of safeguarding program parts which are critical to safety against inadvertent execution, and a memory device for implementing the method |
US20030204503A1 (en) * | 2000-11-09 | 2003-10-30 | Lars Hammer | Connecting entities with general functionality in aspect patterns |
US6681351B1 (en) * | 1999-10-12 | 2004-01-20 | Teradyne, Inc. | Easy to program automatic test equipment |
US6748564B1 (en) | 2000-10-24 | 2004-06-08 | Nptest, Llc | Scan stream sequencing for testing integrated circuits |
US20040204887A1 (en) * | 2003-03-28 | 2004-10-14 | Mitsubishi Electric & Electronics U.S.A., Inc. | Method and apparatus for decreasing automatic test equipment setup time |
US20050261857A1 (en) * | 2004-05-21 | 2005-11-24 | Clark Jones | System and method for linking and loading compiled pattern data |
US6985840B1 (en) | 2000-07-31 | 2006-01-10 | Novas Software, Inc. | Circuit property verification system |
US20060085682A1 (en) * | 2004-09-24 | 2006-04-20 | Advantest Corporation | Test simulator, test simulation program and recording medium |
US20060107132A1 (en) * | 2004-10-29 | 2006-05-18 | Valerie Crump | System and method for testing a memory for a memory failure exhibited by a failing memory |
US7095718B1 (en) * | 2000-04-29 | 2006-08-22 | Hewlett-Packard Development Company, L.P. | Client/server scan software architecture |
US20070094087A1 (en) * | 2003-05-06 | 2007-04-26 | International Business Machines Corporation | System and method of handling product returns |
US20070220261A1 (en) * | 2006-03-15 | 2007-09-20 | Farrugia Augustin J | Optimized integrity verification procedures |
US7376917B1 (en) * | 2003-08-25 | 2008-05-20 | Xilinx, Inc. | Client-server semiconductor verification system |
US20090200210A1 (en) * | 2008-02-11 | 2009-08-13 | Hommema Scott E | Method Of Removing Solids From Bitumen Froth |
US20100126906A1 (en) * | 2007-05-03 | 2010-05-27 | Ken Sury | Process For Recovering Solvent From Ashphaltene Containing Tailings Resulting From A Separation Process |
US20100133150A1 (en) * | 2007-07-20 | 2010-06-03 | Tapantosh Chakrabarty | Use of A Fluorocarbon Polymer as A Surface Of A Vessel or Conduit Used In A Paraffinic Froth Treatment Process For Reducing Fouling |
US20100243535A1 (en) * | 2007-07-31 | 2010-09-30 | Tapantosh Chakrabary | Reducing Foulant Carry-Over or Build Up In A Paraffinic Froth Treatment Process |
US20100282277A1 (en) * | 2007-06-26 | 2010-11-11 | Tapantosh Chakrabarty | Method For Cleaning Fouled Vessels In The Parraffinic Froth Treatment Process |
US20100312517A1 (en) * | 2009-06-05 | 2010-12-09 | Mcnamara Patrick D | Test Method Using Memory Programmed with Tests and Protocol To Communicate between Device Under Test and Tester |
US20110011769A1 (en) * | 2009-07-14 | 2011-01-20 | Sutton Clay R | Feed Delivery System For A Solid-Liquid Separation Vessel |
US20110024128A1 (en) * | 2008-03-20 | 2011-02-03 | Kaminsky Robert D | Enhancing Emulsion Stability |
US8597504B2 (en) | 2008-06-27 | 2013-12-03 | Arun K. Sharma | Optimizing feed mixer performance in a paraffinic froth treatment process |
TWI421874B (en) * | 2009-07-08 | 2014-01-01 | Inventec Corp | Method of remotely assisting memory test |
US8725748B1 (en) * | 2004-08-27 | 2014-05-13 | Advanced Micro Devices, Inc. | Method and system for storing and retrieving semiconductor tester information |
US8949038B2 (en) | 2010-09-22 | 2015-02-03 | Exxonmobil Upstream Research Company | Controlling bitumen quality in solvent-assisted bitumen extraction |
US9222929B2 (en) | 2009-12-07 | 2015-12-29 | Exxonmobil Upstream Research Company | Solvent surveillance in solvent-based heavy oil recovery processes |
US9283499B2 (en) | 2011-03-29 | 2016-03-15 | Exxonmobil Upstream Research Company | Feedwell system for a separation vessel |
CN116417059A (en) * | 2023-03-17 | 2023-07-11 | 宁畅信息产业(北京)有限公司 | Memory batch test method and system |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4777355A (en) * | 1986-12-24 | 1988-10-11 | Mitsubishi Denki Kabushiki Kaisha | IC card and system for checking the functionality thereof |
US5157781A (en) * | 1990-01-02 | 1992-10-20 | Motorola, Inc. | Data processor test architecture |
US5521833A (en) * | 1991-11-28 | 1996-05-28 | Siemens Aktiengesellschaft | Method for programming programmable integrated circuits |
-
1995
- 1995-12-15 US US08/573,071 patent/US5913022A/en not_active Expired - Lifetime
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4777355A (en) * | 1986-12-24 | 1988-10-11 | Mitsubishi Denki Kabushiki Kaisha | IC card and system for checking the functionality thereof |
US5157781A (en) * | 1990-01-02 | 1992-10-20 | Motorola, Inc. | Data processor test architecture |
US5521833A (en) * | 1991-11-28 | 1996-05-28 | Siemens Aktiengesellschaft | Method for programming programmable integrated circuits |
Non-Patent Citations (2)
Title |
---|
Tinaztepe et al.; "OOP Comes to ATE"; Test & Measurement; Oct. 1992; Cahners Publishing Company. |
Tinaztepe et al.; OOP Comes to ATE ; Test & Measurement ; Oct. 1992; Cahners Publishing Company. * |
Cited By (60)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6170070B1 (en) * | 1997-05-28 | 2001-01-02 | Samsung Electronics Co. Ltd. | Test method of cache memory of multiprocessor system |
US6137346A (en) * | 1998-04-27 | 2000-10-24 | Credence Systems Corporation | Temperature tracking voltage to current converter |
WO1999056190A1 (en) * | 1998-04-27 | 1999-11-04 | Credence Systems Corporation | Temperature tracking voltage-to-current converter |
US6681351B1 (en) * | 1999-10-12 | 2004-01-20 | Teradyne, Inc. | Easy to program automatic test equipment |
US7095718B1 (en) * | 2000-04-29 | 2006-08-22 | Hewlett-Packard Development Company, L.P. | Client/server scan software architecture |
US7185254B2 (en) | 2000-06-08 | 2007-02-27 | Advantest Corporation | Method and apparatus for generating test patterns used in testing semiconductor integrated circuit |
US20060031731A1 (en) * | 2000-06-08 | 2006-02-09 | Advantest Corporation | Generating test patterns used in testing semiconductor integrated circuit |
US20020035708A1 (en) * | 2000-06-08 | 2002-03-21 | Masahiro Ishida | Method and apparatus for generating test patterns used in testing semiconductor integrated ciruit |
US7254764B2 (en) | 2000-06-08 | 2007-08-07 | Advantest Corporation | Generating test patterns used in testing semiconductor integrated circuit |
US7225378B2 (en) | 2000-06-08 | 2007-05-29 | Advantest Corporation | Generating test patterns used in testing semiconductor integrated circuit |
US7225377B2 (en) | 2000-06-08 | 2007-05-29 | Advantest Corporation | Generating test patterns used in testing semiconductor integrated circuit |
US20060041810A1 (en) * | 2000-06-08 | 2006-02-23 | Advantest Corporation | Generating test patterns used in testing semiconductor integrated circuit |
US20060031732A1 (en) * | 2000-06-08 | 2006-02-09 | Advantest Corporation | Generating test patterns used in testing semiconductor integrated circuit |
US6985840B1 (en) | 2000-07-31 | 2006-01-10 | Novas Software, Inc. | Circuit property verification system |
US7454678B2 (en) | 2000-10-24 | 2008-11-18 | Credence Systems Corporation | Scan stream sequencing for testing integrated circuits |
US6748564B1 (en) | 2000-10-24 | 2004-06-08 | Nptest, Llc | Scan stream sequencing for testing integrated circuits |
US20040255212A1 (en) * | 2000-10-24 | 2004-12-16 | Cullen Jamie S. | Scan stream sequencing for testing integrated circuits |
US20060005096A1 (en) * | 2000-10-24 | 2006-01-05 | Cullen Jamie S | Scan stream sequencing for testing integrated circuits |
US20030204503A1 (en) * | 2000-11-09 | 2003-10-30 | Lars Hammer | Connecting entities with general functionality in aspect patterns |
US20020133749A1 (en) * | 2001-01-30 | 2002-09-19 | Petersen Michael B. | System and method for managing and implementing electronic equipment tests |
US20060248589A1 (en) * | 2001-03-02 | 2006-11-02 | Martin Hurich | Memory device and an arrangement for protecting software programs against inadvertent execution |
US7096394B2 (en) * | 2001-03-02 | 2006-08-22 | Robert Bosch Gmbh | Method for protecting software programs from inadvertent execution |
US7725644B2 (en) | 2001-03-02 | 2010-05-25 | Robert Bosch Gmbh | Memory device and an arrangement for protecting software programs against inadvertent execution |
US20020174361A1 (en) * | 2001-03-02 | 2002-11-21 | Martin Hurich | Method of safeguarding program parts which are critical to safety against inadvertent execution, and a memory device for implementing the method |
US7024330B2 (en) | 2003-03-28 | 2006-04-04 | Mitsubishi Electric And Electronics U.S.A., Inc. | Method and apparatus for decreasing automatic test equipment setup time |
US20040204887A1 (en) * | 2003-03-28 | 2004-10-14 | Mitsubishi Electric & Electronics U.S.A., Inc. | Method and apparatus for decreasing automatic test equipment setup time |
US20070094087A1 (en) * | 2003-05-06 | 2007-04-26 | International Business Machines Corporation | System and method of handling product returns |
US20070094088A1 (en) * | 2003-05-06 | 2007-04-26 | International Business Machines Corporation | System and method of directly providing electronic receipts |
US7376917B1 (en) * | 2003-08-25 | 2008-05-20 | Xilinx, Inc. | Client-server semiconductor verification system |
US20050261857A1 (en) * | 2004-05-21 | 2005-11-24 | Clark Jones | System and method for linking and loading compiled pattern data |
US8725748B1 (en) * | 2004-08-27 | 2014-05-13 | Advanced Micro Devices, Inc. | Method and system for storing and retrieving semiconductor tester information |
US20060085682A1 (en) * | 2004-09-24 | 2006-04-20 | Advantest Corporation | Test simulator, test simulation program and recording medium |
US7502724B2 (en) * | 2004-09-24 | 2009-03-10 | Advantest Corporation | Test simulator, test simulation program and recording medium |
US7353437B2 (en) * | 2004-10-29 | 2008-04-01 | Micron Technology, Inc. | System and method for testing a memory for a memory failure exhibited by a failing memory |
US20060218453A1 (en) * | 2004-10-29 | 2006-09-28 | Valerie Crump | System and method for testing a memory for a memory failure exhibited by a failing memory |
US20060107132A1 (en) * | 2004-10-29 | 2006-05-18 | Valerie Crump | System and method for testing a memory for a memory failure exhibited by a failing memory |
US7484142B2 (en) * | 2004-10-29 | 2009-01-27 | Micron Technology, Inc. | System and method for testing a memory for a memory failure exhibited by a failing memory |
US8364965B2 (en) * | 2006-03-15 | 2013-01-29 | Apple Inc. | Optimized integrity verification procedures |
US20070220261A1 (en) * | 2006-03-15 | 2007-09-20 | Farrugia Augustin J | Optimized integrity verification procedures |
US8886947B2 (en) | 2006-03-15 | 2014-11-11 | Apple Inc. | Optimized integrity verification procedures |
US20100126906A1 (en) * | 2007-05-03 | 2010-05-27 | Ken Sury | Process For Recovering Solvent From Ashphaltene Containing Tailings Resulting From A Separation Process |
US20100282277A1 (en) * | 2007-06-26 | 2010-11-11 | Tapantosh Chakrabarty | Method For Cleaning Fouled Vessels In The Parraffinic Froth Treatment Process |
US20100133150A1 (en) * | 2007-07-20 | 2010-06-03 | Tapantosh Chakrabarty | Use of A Fluorocarbon Polymer as A Surface Of A Vessel or Conduit Used In A Paraffinic Froth Treatment Process For Reducing Fouling |
US20100243535A1 (en) * | 2007-07-31 | 2010-09-30 | Tapantosh Chakrabary | Reducing Foulant Carry-Over or Build Up In A Paraffinic Froth Treatment Process |
US8636897B2 (en) | 2007-07-31 | 2014-01-28 | Exxonmobil Upstream Research Company | Reducing foulant carry-over or build up in a paraffinic froth treatment process |
US20090200210A1 (en) * | 2008-02-11 | 2009-08-13 | Hommema Scott E | Method Of Removing Solids From Bitumen Froth |
US20110024128A1 (en) * | 2008-03-20 | 2011-02-03 | Kaminsky Robert D | Enhancing Emulsion Stability |
US8592351B2 (en) | 2008-03-20 | 2013-11-26 | Exxonmobil Upstream Research Company | Enhancing emulsion stability |
US8597504B2 (en) | 2008-06-27 | 2013-12-03 | Arun K. Sharma | Optimizing feed mixer performance in a paraffinic froth treatment process |
US8753486B2 (en) | 2008-06-27 | 2014-06-17 | Exxonmobil Upstream Research Company | Optimizing feed mixer performance in a paraffinic froth treatment process |
US8170828B2 (en) * | 2009-06-05 | 2012-05-01 | Apple Inc. | Test method using memory programmed with tests and protocol to communicate between device under test and tester |
US20100312517A1 (en) * | 2009-06-05 | 2010-12-09 | Mcnamara Patrick D | Test Method Using Memory Programmed with Tests and Protocol To Communicate between Device Under Test and Tester |
TWI421874B (en) * | 2009-07-08 | 2014-01-01 | Inventec Corp | Method of remotely assisting memory test |
US20110011769A1 (en) * | 2009-07-14 | 2011-01-20 | Sutton Clay R | Feed Delivery System For A Solid-Liquid Separation Vessel |
US8591724B2 (en) | 2009-07-14 | 2013-11-26 | Exxonmobil Upstream Research Company | Feed delivery system for a solid-liquid separation vessel |
US9089797B2 (en) | 2009-07-14 | 2015-07-28 | Exxonmobil Upstream Research Company | Feed delivery system for a solid-liquid separation vessel |
US9222929B2 (en) | 2009-12-07 | 2015-12-29 | Exxonmobil Upstream Research Company | Solvent surveillance in solvent-based heavy oil recovery processes |
US8949038B2 (en) | 2010-09-22 | 2015-02-03 | Exxonmobil Upstream Research Company | Controlling bitumen quality in solvent-assisted bitumen extraction |
US9283499B2 (en) | 2011-03-29 | 2016-03-15 | Exxonmobil Upstream Research Company | Feedwell system for a separation vessel |
CN116417059A (en) * | 2023-03-17 | 2023-07-11 | 宁畅信息产业(北京)有限公司 | Memory batch test method and system |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5913022A (en) | Loading hardware pattern memory in automatic test equipment for testing circuits | |
JP3550151B2 (en) | Load linking apparatus and method | |
Johnson et al. | Refactoring and aggregation | |
US5692183A (en) | Methods and apparatus for providing transparent persistence in a distributed object operating environment | |
CA2171571C (en) | System and method to control and administer distributed object servers using first class distributed objects | |
US6601072B1 (en) | Method and system for distribution of application data to distributed databases of dissimilar formats | |
US5421016A (en) | System and method for dynamically invoking object methods from an application designed for static method invocation | |
US5418964A (en) | System and method for parent class shadowing in a statically linked object hierarchy | |
US5581697A (en) | Method and apparatus for run-time error checking using dynamic patching | |
US20050086656A1 (en) | Methods and systems for inter-process copy sharing of data objects | |
US5915253A (en) | Method and system for implementing objects in a storage system | |
US7111280B2 (en) | System and method for implementing a project facility | |
US5692195A (en) | Parent class shadowing | |
EP0546794A2 (en) | Object oriented data processing system | |
US6792606B2 (en) | Method and apparatus for object persistence | |
US7036118B1 (en) | System for executing computer programs on a limited-memory computing machine | |
EP0844576A2 (en) | Computer system and method for performing design automation in a distributed computing environment | |
US6895581B1 (en) | Replaceable classes and virtual constructors for object-oriented programming languages | |
US5627998A (en) | System and method for mapping calls to functions in a first driver level library to a session-based instrumentation control driver level system | |
JPH02114335A (en) | Multi-procsssing system | |
CA2341114C (en) | Data definition language | |
US20210405982A1 (en) | Bytecode transformations using virtual artifacts | |
Atkinson et al. | Scalable and recoverable implementation of object evolution for the PJama1 platform | |
Heytens et al. | GESTALT: An expressive database programming system | |
EP1583103A1 (en) | Controlling the generation and selection of addresses to be used in a verification environment |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: SCHLUMBERGER TECHNOLOGIES, INC., CALIFORNIA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:TINAZTEPE, CIHAN;DANIALY, GIVARGIS A.;REEL/FRAME:007834/0635 Effective date: 19960216 |
|
STCF | Information on status: patent grant |
Free format text: PATENTED CASE |
|
PRDP | Patent reinstated due to the acceptance of a late maintenance fee |
Effective date: 19990903 |
|
CC | Certificate of correction | ||
FPAY | Fee payment |
Year of fee payment: 4 |
|
AS | Assignment |
Owner name: NPTEST, LLC, CALIFORNIA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:SCHLUMBERGER TECHNOLOGIES, INC.;REEL/FRAME:014268/0115 Effective date: 20020510 |
|
AS | Assignment |
Owner name: CREDENCE SYSTEMS CORPORATION, CALIFORNIA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:NPTEST, LLC;REEL/FRAME:015242/0574 Effective date: 20040713 |
|
FPAY | Fee payment |
Year of fee payment: 8 |
|
FPAY | Fee payment |
Year of fee payment: 12 |
|
AS | Assignment |
Owner name: SILICON VALLEY BANK, AS ADMINISTRATIVE AGENT, CALI Free format text: SECURITY AGREEMENT;ASSIGNORS:LTX-CREDENCE CORPORATION;EVERETT CHARLES TECHNOLOGIES LLC;REEL/FRAME:032086/0476 Effective date: 20131127 |
|
AS | Assignment |
Owner name: XCERRA CORPORATION, MASSACHUSETTS Free format text: CHANGE OF NAME;ASSIGNOR:LTX-CREDENCE CORPORATION;REEL/FRAME:033032/0768 Effective date: 20140520 |
|
AS | Assignment |
Owner name: XCERRA CORPORATION, MASSACHUSETTS Free format text: RELEASE OF SECURITY INTEREST IN UNITED STATES PATENTS;ASSIGNOR:SILICON VALLEY BANK, AS ADMINISTRATIVE AGENT;REEL/FRAME:034660/0394 Effective date: 20141215 Owner name: EVERETT CHARLES TECHNOLOGIES LLC, MASSACHUSETTS Free format text: RELEASE OF SECURITY INTEREST IN UNITED STATES PATENTS;ASSIGNOR:SILICON VALLEY BANK, AS ADMINISTRATIVE AGENT;REEL/FRAME:034660/0394 Effective date: 20141215 Owner name: SILICON VALLEY BANK, AS ADMINISTRATIVE AGENT, CALI Free format text: SECURITY AGREEMENT;ASSIGNORS:XCERRA CORPORATION;EVERETT CHARLES TECHNOLOGIES LLC;REEL/FRAME:034660/0188 Effective date: 20141215 |
|
AS | Assignment |
Owner name: SILICON VALLEY BANK, AS ADMINISTRATIVE AGENT, CALI Free format text: CORRECTIVE ASSIGNMENT TO CORRECT THE INCORRECT PATENT NUMBER 7261561 AND REPLACE WITH PATENT NUMBER 7231561 PREVIOUSLY RECORDED ON REEL 034660 FRAME 0188. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY AGREEMENT;ASSIGNORS:XCERRA CORPORATION;EVERETT CHARLES TECHNOLOGIES LLC;REEL/FRAME:037824/0372 Effective date: 20141215 |