System providing automatic source code generation for personalization and parameterization of user modules

Information

  • Patent Grant
  • 10698662
  • Patent Number
    10,698,662
  • Date Filed
    Friday, October 5, 2018
    7 years ago
  • Date Issued
    Tuesday, June 30, 2020
    5 years ago
Abstract
A method and system of automatically generating source code for configuring a programmable microcontroller. The method involves displaying virtual blocks in a computerized design system where the virtual blocks correspond to programmable circuit blocks in a microcontroller chip. The user selects a user module that defines a particular function to be performed on the microcontroller. The user assigns the virtual blocks to the user module. The design system then automatically generates source code for configuring the programmable blocks to perform the desired function. The source code can then be assembled, linked and loaded into the microcontroller's memory system. When executed on the microcontroller, the executable code will then set registers within the blocks to implement the function. Source code is automatically generated for: (1) realizing the user module in a hardware resource; and also (2) to configure the user module to behave in a prescribed manner.
Description
TECHNICAL FIELD

The present invention relates to the field of programming and configuring programmable electronic devices. More particularly, the present invention relates to using a design system for (1) displaying chokes for user-selected functions; (2) displaying choices for where and how to implement the selected function; and (3) automatically generating computer code, that when executed, will configure the electronic device to perform the selected function.


BACKGROUND

A microcontroller is an integrated circuit device (“chip”) composed of functional units or “blocks,” input/output pins, internal busses and programmable interconnections among these components. Many of these configurable components can be programmed to perform a specific function or connect to another specific sub-system by loading a particular bit pattern into a particular register in the actual chip. Recently, a microcontroller having programmable analog and digital blocks has been introduced.


In addition, a microcontroller also has a central processing unit (“CPU”) and a memory system for storing data and instructions. The CPU and the memory system can interact with a programmable block, e.g., a configurable component, by reading and writing registers associated with that component. The configurable blocks are therefore programmed by setting their configuration registers with certain values. Thus, by writing a program for the CPU, a user can specify the function the configurable component will perform as well as the connections among configurable components. The user can also write programs that interact with the configurable components once those components have been initialized. The programs also do this by reading and writing registers associated with the configurable components.


Configuring and programming a microcontroller requires specifying and setting an enormous number of bits. It is common for engineers who need to configure and program a microcontroller to develop and use software for that purpose such as design tools, databases, assemblers, compilers, linkers, and debuggers. However, conventional microcontroller programming and configuring requires that the engineer incorporate the literal binary codes and addresses associated with the configurable components into the microcontroller source code.


This conventional technique therefore requires many manual steps and is error-prone and tedious. In other words, if a designer wants to program a configurable block to implement a circuit, then the designer manually determines the configuration registers of the hardware resource. The circuit designer then manually develops code to program those registers in such a way to realize the circuit (e.g., an amplifier). The designer then has to manually write code to operate the circuit in the desired fashion, e.g., give the amplifier a specific gain, etc. When dealing with physical addresses of configuration registers and the specific configuration data needed to program them, the data and information are often expressed as a series of numbers in decimal and/or hexadecimal and/or binary formats. Unfortunately, these numbers and number formats are very complex and hard to read and remember. Any small error in syntax, or a typographical error, or a transposition error can be fatal for the overall program. Manual programming and mapping leads to such errors.


SUMMARY

Accordingly, what is needed is a design system for automatically generating source code that incorporates configuration information for the programming of hardware resources to implement and program circuits. What is needed is such a system that can be used to program programmable electronic devices, e.g., microcontrollers. What is needed yet is a system and method for automatically generating source code to program hardware resources once a designer selects a desired circuit design and a hardware resource to implement that circuit design. The present invention provides these advantages and others not specifically mentioned above but described in sections to follow.


A method and system of automatically generating assembly code (or other source code) for configuring a programmable microcontroller are presented. Source code files are automatically generated for: (1) realizing the user module in a hardware resource; and also (2) to configure the user module to behave in a prescribed manner.


The method involves displaying virtual blocks in a computerized design system where the virtual blocks correspond to programmable circuit blocks in a programmable electronic device, e.g., a microcontroller chip. The user selects a user module (e.g., a circuit design) that defines a particular function to be performed on the microcontroller. The user module is represented, in part, by XML data which defines the way in which configuration registers need to be programmed in order to implement the circuit design thereon. The user then assigns or allocates virtual blocks to the user module, e.g. “placement of the user module.” The programmable hardware resources include both programmable analog blocks and programmable digital blocks. A user module may span multiple blocks. The hardware resources are also represented, in part, by XML data defining the physical addresses of the configuration registers.


The design system then automatically generates source code for configuring the programmable blocks to perform the desired function. This process involves a mapping of the XML data from the user module and from the selected hardware resources. The source code can then be assembled, linked and loaded into the microcontroller's memory system. When executed on the microcontroller, the executable code will then set configuration registers within the blocks to implement the function.


Two different types of configuration are discussed herein with respect to the user module. Automatic generation of source code for “personalization” of a user module is the process (performed by embodiments of the present invention) of generating source code that sets configuration registers to implement or “realize” the circuit design in the hardware resource, e.g., to implement an amplifier circuit. On the other hand, automatic generation of source code for “parameterization” of a user module is the process (performed by embodiments of the present invention) of generating source code that sets configuration registers to cause an already implemented circuit design to behave in particular way, or to adopt some characteristic, e.g., to program the amplifier with a particular gain, etc., or to make some clocked digital circuit level sensitive or edge sensitive, etc.


More specifically, an embodiment of the present invention is directed to a method (and computer system) for generating assembly code to configure a microcontroller with programmable circuit blocks, the method comprising; displaying a collection of virtual blocks in a design system with each virtual block in the collection corresponding to a programmable block in the microcontroller; selecting a user module defining a function; assigning a virtual block taken from the collection to the user module; and automatically constructing a source code table file comprising configuration information for a programmable block of the microcontroller corresponding to the virtual block wherein the configuration information is used to cause the programmable block to implement the function.


Embodiments include the above and wherein the function can be a timer, a counter, an analog-to-digital converter, a digital-to-analog converter, a pulse-width modulator, a signal amplifier, or a serial communication unit.


Embodiments include the above and wherein the design system computes a register address for the programmable block corresponding to the virtual block assigned to the user module, devising a symbolic name for that register address and placing the symbolic name into a table file, an include file or an assembly code file.





BRIEF DESCRIPTION OF THE DRAWINGS


FIG. 1 is a general purpose computer system on which embodiments of the present invention may be implemented.



FIG. 2 illustrates the general architecture of a microcontroller with programmable blocks in accordance with an embodiment of the present invention.



FIG. 3 illustrates the relationship between a microcontroller, a system for programming a microcontroller, and a computer system for running a design system in accordance with an embodiment of the present invention.



FIG. 4 is a flow chart of steps of using a design system to automatically generate code in accordance with an embodiment of the present invention.



FIG. 5 is a screen display showing the user module choices in accordance with an embodiment of the present invention.



FIG. 6 is a screen display showing the assignment of a virtual block to a user module in accordance with an embodiment of the present invention.



FIG. 7 is a screen display showing the assignment of two virtual blocks to a user module in accordance with an embodiment of the present invention.



FIG. 8A is a data flow diagram showing the flow of information through the source generation process.



FIG. 8B is a flow chart showing the construction of source code files in accordance with an embodiment of the present invention.



FIG. 9 shows a portion of a template file with a generic name in accordance with an embodiment of the present invention.



FIG. 10 is a screen display showing a generated assembly code file in accordance with an embodiment of the present invention.



FIG. 11 illustrates the relationship of different code files to the design system and a microcontroller in accordance with an embodiment of the present invention.



FIG. 12 illustrates the relationship of an executing program to the programmable blocks in accordance with an embodiment of the present invention.



FIG. 13 shows a portion of an assembly code table file in accordance with an embodiment of the present invention.



FIG. 14 shows the use of a symbolic name as a register address in assembly code in accordance with an embodiment of the present invention.



FIG. 15 shows a portion of an assembly include file defining the symbolic name in accordance with an embodiment of the present invention.



FIG. 16 shows a portion of a generated exemplary C-header file defining procedural interfaces for managing a counter in accordance with an embodiment of the present invention.





DETAILED DESCRIPTION

In the following detailed description of the present invention, a design system providing automatic source code generation for personalization and parameterization of user modules, numerous specific details are set forth in order to provide a thorough understanding of the present invention. However, it will be obvious to one skilled in the art that the present invention may be practiced without these specific details. In other instances well known methods, procedures, components, and circuits have not been described in detail as not to unnecessarily obscure aspects of the present invention.


Notation and Nomenclature

Some portions of the detailed descriptions that follow are presented in terms of procedures, steps, logic blocks, processing, and other symbolic representations of operations on data bits that can be performed on computer memory. These descriptions and representations are the means used by those skilled in the data processing arts to most effectively convey the substance of their work to others skilled in the art. A procedure, computer executed step, logic block, process, etc., is here, and generally, conceived to be a self-consistent sequence of steps or instructions leading to a desired result. The steps are those utilizing physical manipulations of physical qualities. Usually, though not necessarily, these quantities take the form of electrical or magnetic signals capable of being stored, transferred, combined, compared, and otherwise manipulated in a computer system. It has proven convenient at times, principally for reasons of common usage, to refer to these signals as bits, values, elements, symbols, characters, terms, numbers, or the like. It should be borne in mind, however, that all of these and similar terms are to be associated with the appropriate physical quantities and are merely convenient labels applied to these quantities. Unless specifically stated otherwise as apparent from the following discussions it is appreciated that throughout the present invention, discussions utilizing terms such as “checking,” “comparing,” “accessing,” “processing,” “computing,” “suspending,” “resuming,” “translating,” “calculating,” “determining,” “scrolling,” “displaying,” “recognizing,” “executing,” or the like, refer to the action and processes of a computer system, or similar electronic computing device, that manipulates and transforms data represented as physical (electronic) quantities within the computer system's registers and memories into other data similarly represented as physical quantities within the computer system memories or registers or other such information storage, transmission or display devices.


Computer System 112

Aspects of the present invention, a design system for automatically generating assembly code to configure microcontroller, are discussed in terms of steps executed on a computer system. Although a variety of different computer systems can be used with the present invention, an exemplary computer system 112 is shown in FIG. 1.


Exemplary computer system 112 comprises an address/data bus 100 for communicating information, a central processor 101 coupled with the bus for processing information and instructions, a volatile memory 102 (e.g., random access memory) coupled with the bus 100 for storing information and instructions for the central processor 101 and a non-volatile memory 103 (e.g., read only memory) coupled with the bus 100 for storing static information and instructions for the processor 101. Computer system 112 also includes a data storage device 104 (“disk subsystem”) such as a magnetic or optical disk and disk drive coupled with the bus 100 for storing information and instructions and a display device 105 coupled to the bus 100 for displaying information to the computer user.


Also included in computer system 112 is an alphanumeric input device 106 including alphanumeric and function keys coupled to the bus 100 for communicating information and command selections to the central processor 101. Generally, alphanumeric input device 106 is called a keyboard or keypad. System 112 also includes a cursor control or directing device 107 coupled to the bus for communicating user input information and command selections to the central processor 101. Within the context of the present invention, the cursor directing device 107 can include a number of implementations including a mouse device, for example, a trackball device, a joystick, a finger pad (track pad), an electronic stylus, an optical beam directing device with optical receiver pad, an optical tracking device able to track the movement of a user's finger, etc., or any other device having a primary purpose of moving a displayed cursor across a display screen based on user displacements.


Computer system 112 of FIG. 1 can also include an optional signal generating device 108 coupled to the bus 100 for interfacing with other networked computer systems, e.g., over the Internet. The display device 105 of FIG. 1 utilized with the computer system 112 of the present invention may be a liquid crystal device, other flat panel display, cathode ray tube, or other display device suitable for creating graphic images and alphanumeric characters recognizable to the user.


Design System Providing Automatic Source Code Generation for Personalization and Parameterization of User Modules in Accordance with Embodiments of the Present Invention

In a preferred embodiment, a computer implemented design system provides the capability of automatically generating source code that, when compiled or assembled, linked and loaded, initializes, specifies and controls configurable elements within a programmable electronic device, e.g., a microcontroller to perform a user-selected function.


In a preferred embodiment of a microcontroller, some of the configurable elements are grouped into programmable blocks (“blocks”). The blocks can be grouped into families. Every block in the same family is substantially analogous. In a preferred embodiment, there is a family of blocks supporting analog functions and a family of blocks supporting digital functions. Each block has one or more registers. Each block can be programmed to perform different functions and connect to other blocks by specifying values for each configuration register in the block. This initial specification of the components is typically performed as soon as the microcontroller “boots-up”. This is referred to as “personalization” of the microcontroller to realize a user module design in selected hardware resources. In addition, a block can be configured to have registers that are used to adjust, control or measure the performance of the personalized block. This is referred to as “parameterization.”


US Patent Application entitled “Microcontroller Programmable System on a Chip,”, filed on Oct. 22, 2001, inventor Warren Snyder, is hereby incorporated herein by reference and describes such a programmable microcontroller.



FIG. 2 shows a generic architecture of a microcontroller 200 with a family of programmable blocks 220, 221, 222, 223, 224, 225, also called “hardware resources.” The microcontroller 200 has a microcontroller CPU 210 connected to a controller memory system 205 via a bus 215. The bus 215 also allows data from outside of microcontroller 200 to come into the controller memory system 205 via interface 240. The microcontroller CPU 210 defines the function performed by each block by setting the contents of configuration registers associated within each block by control bus 230. Control bus 230 may include logic. Each configuration register in the microcontroller has a distinct physical register address. By executing a “load register” instruction from controller memory system 205 register with a register address for a particular block, that block will be configured in accordance with the contents loaded. In some cases, to completely configure a block or to interconnect that block to other resources in the microcontroller 200, it may be necessary to load several configuration registers. The configuration registers may be located in a separate memory space within the microcontroller 200.



FIG. 3 shows the overall relationship of a design system 310 operating in a computer system 112 with a microcontroller 200 installed in controller programming system 300. The controller programming system 300 is connected to the computer system 112 by a communications link 305. Communications link 305 could be a serial line, a parallel line, a network connection or other comparable inter-computer communication mechanism. Controller programming system 300 could include in-circuit emulation capabilities. It is appreciated that the design system 310 can be used without the microcontroller 200 attached thereto in order to determine the information required to program the chip. However, when the final image is determined and it is time to program the device, the microcontroller needs to be attached to the programming device.


In general, the design system 310 models the actual configurable elements and blocks found in microcontroller 200 with corresponding virtual elements and blocks. In the discussion that follows, the term “block” as used in context of a design system means “virtual block” while the same term used in the context of a microcontroller means an actual block or “hardware resource.”



FIG. 4 shows a computer implemented flow chart for using a design system to automatically generate source code for both parameterization and personalization of a user module. In step 450, the user selects the desired functions in the form of user modules. Generally, a user module can be viewed as an integrated circuit design, e.g., an amplifier, a counter, a timer, a modem, etc. The user can select multiple instances of the same type of user module. In step 450, the user assigns blocks to a user module, e.g., “places” the user module. This step is repeated for each user module selected in step 450. In step 470, after assigning blocks, the design system then can automatically generate the assembly code for configuring the actual blocks.


More specifically, a user module is the collection of information necessary to implement a particular function using one or more generic blocks. This would include the specific values that need to be loaded into a block's registers to implement the circuit design. The design system can load the information about user modules from a file when the design system is initialized. In one embodiment, the information necessary to represent a user module is formatted using XML data.



FIG. 5 shows an exemplary screen display from a design system to allow the user to select user modules. The user modules are grouped according to function. In a preferred embodiment, the functions can include, for example, analog-to-digital converters 410, counters 411, digital to analog converters 412, amplifiers 413, pulse width modulators 414, serial communication units 415, and timers 416, etc. Almost any circuit design can be represented as a user module. The functions can also come in different sizes or capabilities, such as 8-bit counters or 16-bit counters, etc. An 8-bit counter user module 420 is being examined. A data sheet 430 describing the details of the examined user module is also displayed. The user can double click on the icon for examined user module to add it to a collection of selected user modules.



FIG. 6 shows an exemplary screen display from the design system for managing step 460. The collection of selected user modules selected is displayed in window 501. A second window 502 displays the available virtual blocks and other configurable elements. In one embodiment, there are analog blocks 530 and digital blocks 525, input bus 520, and output bus 521. The user places the user module (or, equivalently, assigns blocks to a particular user module) by choosing a specific user module 500 from the collection of selected user modules, and then pushing an advance placement button 503 to move through different candidate placements. Once a desired placement is found, the user then pushes a commit button 504. In this example, the user module only requires one digital block, which has been assigned to a specific virtual block 505. In some cases, a user module will require multiple blocks. A user module may use more than one block and may use both digital and analog blocks. Parameter window 510 displays additional user-specifiable information about the selected user module 500. It is appreciated that this information is used for parameterization of the user module. After assigning virtual blocks to all selected user modules, the user then presses a generate code button 507 to generate files in step 470.



FIG. 7 shows a screen display for a situation in which a user module uses more than one block (e.g., analog blocks 531 and 532) and is shown for a selected digital-to-analog converter 506. Parameter window 533 displays additional user-specifiable information about the selected user module 506. It is appreciated that this information is used for parameterization of the user module.



FIG. 8A shows the flow of information used in generating code in step 470. The code generation module 800 implements step 470. It obtains the details of how to generally configure a particular block to perform a specific function from user module definitions 805. The code generation module 800 obtains information about which virtual block to use for which user module and specific settings within a user module from the personalization and parameterization information 810 that is provided from the graphical user interface in the design system. The template files 815 are used to provide a starting point for building the code. Symbolic names derived from the user module definition 805 and the personalization and parameterization information 810 are substituted for generic names in copies of the template files 815. The code generation module 800 constructs source code files for personalizing the microcontroller 820 and source code files for parameterizing the microcontroller 825.



FIG. 8B shows a computer implemented flow chart providing more details for step 470. In step 700, the design system defines symbolic names for the register addresses for the assigned blocks in step 460. Symbolic names are also derived for the addresses of the various assembly routines that will be used to configure the actual blocks to implement the selected user modules. In one embodiment, the symbolic name is derived from the type of user module, the instance name, and the function associated with that register or routine. The register address for a particular function for a particular instance of a user module is determined from the block assigned to that instance of the user module and the register within a generic block specified by the user module for that particular function.


In step 710, one or more assembly code files are generated for each instance of a user module. Each file is constructed from a data file, e.g., a template file, by substituting the symbolic names constructed in step 700 for generic names in the template file. A sample portion of a template file is shown in FIG. 9 with a generic name 633.


In step 720, one or more assembly code files are generated that refer to all of the user modules (“global files”). These can include assembly code table files, include files, header files, as well as interrupt service routine code. These files can also be generated from a template file. FIG. 10 shows a screen display with a window 600 showing the various generated files. Window 611 displays the contents of a selected file 601.



FIG. 11 shows the relationship of template files, assembly code files, executable code files, and downloaded code to the design system 310 operating on a computer system 112 and a controller programming system 300. In general terms, the design system will read template files 320, and produce assembly, include and header files 325. The design system will compile, assemble and link the files together to produce an executable file 330. The design system then can download the executable file 330 to the microcontroller programming system 300, which in turn places it in the microcontroller memory system 205 as downloaded code block 340. As shown in FIG. 12, the CPU 210 executes code block 340 to configure various programmable blocks 220, 221.



FIG. 13 shows a portion of a generated assembly code table file where the configuration contents of the various registers is placed. The symbolic name 632 associated with a register is in a comment.



FIG. 14 shows a portion of a generated assembly code file where the symbolic name is used to specify the register that is being loaded with a new value.



FIG. 15 shows a portion of a generated assembly include file that defines the values associated with the generated symbolic names.



FIG. 16 shows a portion of a generated C language header file. Generated header files would allow a user to develop code in C that could manipulate the various registers specified by the user.


The preferred embodiment of the present invention, a system and method for automatically generating assembly code to configure programmable elements of a microcontroller, is thus described. While the present invention has been described in particular embodiments, it should appreciated that the present invention should not be construed as limited by such embodiments, but rather construed according to the below claims.

Claims
  • 1. A method for configuring a microcontroller, the method comprising: displaying a first graphical user interface on a display device of a computer system, the first graphical user interface comprising a collection of virtual blocks in a design system;receiving at the computer system a selection of a user module, wherein the user module comprises information for implementing a function using a programmable physical block, and wherein the user module is represented by first data that includes information defining how configuration registers for the microcontroller are to be programmed in order to implement the function, and wherein the programmable physical block is represented by second data that includes information defining physical addresses of the configuration registers;displaying on the display device a second graphical user interface operable for receiving user-specifiable information about the user module;assigning a first virtual block taken from the collection to the user module, wherein the first virtual block corresponds to the programmable physical block; andconstructing computer-generated source code, wherein constructing the computer-generated source code comprises:linking the first data and the second data;substituting the user-specifiable information comprising information specific to the user module, information specific to the function and information specific to a control parameter of the function for generic information in a template file to produce assembly, include and header files.
  • 2. The method of claim 1, wherein the receiving at the computer system of the selection of the user module includes receiving the selection of the user module comprising information for implementing a pulse width modulator using a programmable physical block.
  • 3. The method of claim 1, wherein the receiving at the computer system of the selection of the user module includes receiving the selection of the user module comprising information for implementing a one of a timer and a counter using a programmable physical block.
  • 4. The method of claim 1, wherein the receiving at the computer system of the selection of the user module includes receiving the selection of the user module comprising information for implementing one of an analog-to-digital converter and a digital-to-analog converter using a programmable physical block.
  • 5. The method of claim 1, wherein the receiving at the computer system of the selection of the user module includes receiving the selection of the user module comprising information for implementing a signal amplifier using a programmable physical block.
  • 6. The method of claim 1, wherein the receiving at the computer system of the selection of the user module includes receiving the selection of the user module comprising information for implementing serial communication using a programmable physical block.
  • 7. The method of claim 1, wherein the displaying the first graphical user interface comprising a collection of virtual blocks in a design system comprises displaying a two-dimensional array of programmable analog virtual blocks and programmable digital virtual blocks.
  • 8. The method of claim 1, further comprising assigning a second virtual block from the collection to the user module, wherein the second virtual block corresponds to another programmable physical block.
  • 9. The method of claim 1, wherein constructing the computer-generated source code comprises computer-generate source code including a symbolic name for a register address in the programmable physical block.
  • 10. The method of claim 9, wherein the symbolic name is derived from the function.
  • 11. The method of claim 1 wherein the constructing of the computer-generated source code further comprises: reading the template file;producing assembly, include, and header files from the template file, wherein the user-specifiable information comprises information specific to the user module, information specific to the function and information specific to a control parameter of the function;compiling the assembly, include and header files to produce an executable file;downloading the executable file as a code block to a memory of the microcontroller; andexecuting the code block to configure the programmable physical block.
  • 12. A method of configuring a microcontroller comprising a programmable physical block, the method comprising: receiving, at a computer system, a selection of a user module defining a circuit design, wherein the user module comprises information for implementing a function using the programmable physical block, wherein the user module is represented by first data that includes information defining how configuration registers for the microcontroller are to be programmed in order to implement the function and wherein the programmable physical block is represented by second data that includes information defining physical addresses of the configuration registers;displaying a graphical user interface on a display device of the computer system, the graphical user interface operable for receiving user-specifiable information about the user module, wherein the user-specifiable information comprises configuration information that is used to establish a value for a programmable characteristic of the programmable physical block;assigning a virtual block in a design system where the virtual block corresponds to the programmable physical block; andautomatically constructing assembly code comprising the configuration information for the programmable physical block to implement the circuit design, wherein automatically constructing the assembly code further comprises linking the first data and the second data, wherein the assembly code is constructed from template assembly code by substituting the user-specifiable information and information specific to the circuit design for generic information in the template assembly code, and wherein the assembly code contains configuration information for the programmable physical block, wherein the configuration information is based on the user-specifiable information and comprises information that when loaded into a register of the programmable physical block causes the programmable physical block to perform the function.
  • 13. The method of claim 12, wherein the automatically constructing further comprises: computing a register address for a register within the programmable physical block;determining a symbolic name for the register address, the symbolic name corresponding to the user module and the circuit design; andsubstituting the symbolic name for a generic name in the template assembly code.
  • 14. The method of claim 13, wherein the automatically constructing further comprises: reading template files;substituting the user-specifiable comprising information specific to the user module, information specific to the function and information specific to a control parameter of the function for generic information in the template files to produce assembly, include and header files;compiling the assembly, include and header files to produce an executable file;downloading the executable file as a code block to a memory of the microcontroller; andexecuting the code block to configure the programmable physical block.
  • 15. The method of claim 12, wherein the automatically constructing further comprises: determining a symbolic name corresponding to the user module and the circuit design;computing a register address for a register within the programmable physical block;assigning the symbolic name to the register address; andplacing the symbolic name into the assembly code in place of a generic name provided in the template assembly code.
  • 16. A computer system comprising a processor coupled to a bus, a display device coupled to the bus, and a memory coupled to the bus, the memory containing instructions to implement a method for configuring a microcontroller, the method comprising: displaying on the display device a first graphical user interface comprising a collection of virtual blocks in a design system;receiving at the computer system a selection of a user module, wherein the user module comprises information for implementing a function using a programmable physical block, the user module represented by first data that includes information defining how configuration registers for the microcontroller are to be programmed in order to implement the function, the programmable physical block represented by second data that includes information defining physical addresses of the configuration registers;displaying on the display device a second graphical user interface operable for receiving user-specifiable information about the user module;assigning a virtual block taken from the collection to the user module, wherein the virtual block corresponds to the programmable physical block; andautomatically constructing assembly code holding configuration information for the programmable physical block, wherein the configuration information is based on the user-specifiable information and comprises information that is loaded into a register of the programmable physical block to cause the programmable physical block to perform the function, the automatically constructing comprising:linking the first data and the second data;determining a symbolic name corresponding to the user module and the function;computing a register address for a register within the programmable physical block;assigning the symbolic name to the register address;placing the symbolic name into the assembly code;reading template files;substituting the user-specifiable information comprising the information specific to the user module, information specific to the function and information specific to a control parameter of the function for generic information in the template files to produce assembly, include and header files;compiling the assembly, include and header files to produce an executable file;downloading the executable file as a code block to a memory of the microcontroller; andexecuting the code block to configure the programmable physical block.
  • 17. The computer system of claim 16, comprising displaying the collection as a two-dimensional array.
  • 18. The computer system of claim 16, wherein the assigning further comprises assigning a second virtual block to the user module.
  • 19. The computer system of claim 16, wherein the assembly code further comprises a symbolic name for a register address in the programmable physical block.
  • 20. The computer system of claim 16, wherein the symbolic name is derived from the function.
RELATED APPLICATIONS

The present application is a continuation of U.S. Non-Provisional application Ser. No. 13/211,329, filed on Aug. 17, 2011, which is a continuation of U.S. Non-Provisional application Ser. No. 09/998,848, filed on Nov. 15, 2001, now U.S. Pat. No. 8,042,093, issued on Oct. 18, 2011, which is related to U.S. Non-Provisional application Ser. No. 10/033,027, filed on Oct. 22, 2001, now U.S. Pat. No. 8,176,296, issued on May 8, 2012, all of which are incorporated by reference herein in their entirety.

US Referenced Citations (1170)
Number Name Date Kind
3600690 Graham Aug 1971 A
3725804 Langan Apr 1973 A
3740588 Stratton et al. Jun 1973 A
3805245 Brooks et al. Apr 1974 A
3810036 Bloedom May 1974 A
3831113 Ahmed Aug 1974 A
3845328 Hollingsworth Oct 1974 A
3940760 Brokaw Feb 1976 A
4061987 Nagahama Dec 1977 A
4134073 MacGregor Jan 1979 A
4138671 Comer et al. Feb 1979 A
4176258 Jackson Nov 1979 A
4250464 Schade Feb 1981 A
4272760 Prazak et al. Jun 1981 A
4283713 Philipp Aug 1981 A
4326135 Jarrett et al. Apr 1982 A
4344067 Lee Aug 1982 A
4380083 Andersson et al. Apr 1983 A
4438404 Philipp Mar 1984 A
4475151 Philipp Oct 1984 A
4497575 Philipp Feb 1985 A
4604363 Newhouse et al. Aug 1986 A
4608502 Dijkmans et al. Aug 1986 A
4656603 Dunn Apr 1987 A
4670838 Kawata Jun 1987 A
4689740 Moelands et al. Aug 1987 A
4692718 Roza et al. Sep 1987 A
4701907 Collins Oct 1987 A
4727541 Mori et al. Feb 1988 A
4736097 Philipp Apr 1988 A
4740966 Goad Apr 1988 A
4755766 Metz Jul 1988 A
4773024 Faggin et al. Sep 1988 A
4794558 Thompson Dec 1988 A
4802103 Faggin et al. Jan 1989 A
4802119 Heene et al. Jan 1989 A
4807183 Kung et al. Feb 1989 A
4809345 Tabata et al. Feb 1989 A
4812684 Yamagiwa et al. Mar 1989 A
4813013 Dunn Mar 1989 A
4827401 Hrustich et al. May 1989 A
4831546 Mitsuta et al. May 1989 A
4833418 Quintus et al. May 1989 A
4868525 Dias Sep 1989 A
4876466 Kondou et al. Oct 1989 A
4876534 Mead et al. Oct 1989 A
4878200 Asghar et al. Oct 1989 A
4879461 Philipp Nov 1989 A
4879688 Turner et al. Nov 1989 A
4885484 Gray Dec 1989 A
4907121 Hrassky Mar 1990 A
4910417 Gamal et al. Mar 1990 A
4922492 Fasang et al. May 1990 A
4935702 Mead et al. Jun 1990 A
4939637 Pawloski Jul 1990 A
4942540 Black et al. Jul 1990 A
4947169 Smith et al. Aug 1990 A
4953928 Anderson et al. Sep 1990 A
4962342 Mead et al. Oct 1990 A
4964074 Suzuki et al. Oct 1990 A
4969087 Tanagawa et al. Nov 1990 A
4970408 Hanke et al. Nov 1990 A
4972372 Ueno Nov 1990 A
4977381 Main Dec 1990 A
4980652 Tarusawa et al. Dec 1990 A
4999519 Kitsukawa et al. Mar 1991 A
5043674 Bonaccio et al. Aug 1991 A
5049758 Mead et al. Sep 1991 A
5050168 Paterson Sep 1991 A
5053949 Allison et al. Oct 1991 A
5055827 Philipp Oct 1991 A
5059920 Anderson et al. Oct 1991 A
5068622 Mead et al. Nov 1991 A
5073759 Mead et al. Dec 1991 A
5083044 Mead et al. Jan 1992 A
5088822 Warren Feb 1992 A
5095284 Mead Mar 1992 A
5097305 Mead et al. Mar 1992 A
5099191 Galler et al. Mar 1992 A
5107146 El-Ayat Apr 1992 A
5107149 Platt et al. Apr 1992 A
5109261 Mead et al. Apr 1992 A
5119038 Anderson et al. Jun 1992 A
5120996 Mead et al. Jun 1992 A
5122800 Philipp Jun 1992 A
5126685 Platt et al. Jun 1992 A
5127103 Hill et al. Jun 1992 A
5128871 Schmitz Jul 1992 A
5136188 Ha et al. Aug 1992 A
5140197 Grider Aug 1992 A
5142247 Lada, Jr. et al. Aug 1992 A
5144582 Steele Sep 1992 A
5146106 Anderson et al. Sep 1992 A
5150079 Williams et al. Sep 1992 A
5155836 Jordan et al. Oct 1992 A
5159292 Canfield et al. Oct 1992 A
5159335 Veneruso Oct 1992 A
5160899 Anderson et al. Nov 1992 A
5161124 Love Nov 1992 A
5165054 Platt et al. Nov 1992 A
5166562 Allen et al. Nov 1992 A
5175884 Suarez Dec 1992 A
5179531 Yamaki Jan 1993 A
5184061 Lee et al. Feb 1993 A
5198817 Walden et al. Mar 1993 A
5200751 Smith Apr 1993 A
5202687 Distinti Apr 1993 A
5204549 Platt et al. Apr 1993 A
5206582 Ekstedt et al. Apr 1993 A
5220512 Watkins et al. Jun 1993 A
5225991 Dougherty Jul 1993 A
5230000 Mozingo et al. Jul 1993 A
5235617 Mallard, Jr. Aug 1993 A
5241492 Girardeau, Jr. Aug 1993 A
5243554 Allen et al. Sep 1993 A
5245262 Moody et al. Sep 1993 A
5248843 Billings Sep 1993 A
5248873 Allen et al. Sep 1993 A
5258760 Moody et al. Nov 1993 A
5260592 Mead et al. Nov 1993 A
5260979 Parker et al. Nov 1993 A
5270963 Allen et al. Dec 1993 A
5276407 Mead et al. Jan 1994 A
5276739 Krokstad et al. Jan 1994 A
5276890 Arai Jan 1994 A
5280199 Itakura Jan 1994 A
5280202 Chan et al. Jan 1994 A
5289023 Mead Feb 1994 A
5303329 Mead et al. Apr 1994 A
5304955 Atriss et al. Apr 1994 A
5305017 Gerpheide Apr 1994 A
5305312 Fornek et al. Apr 1994 A
5307381 Ahuja Apr 1994 A
5313618 Pawloski May 1994 A
5317202 Waizman May 1994 A
5319370 Signore et al. Jun 1994 A
5319771 Takeda Jun 1994 A
5321828 Phillips et al. Jun 1994 A
5324958 Mead et al. Jun 1994 A
5325512 Takahashi Jun 1994 A
5329471 Swoboda et al. Jul 1994 A
5331215 Allen et al. Jul 1994 A
5331315 Crosette Jul 1994 A
5331571 Aronoff et al. Jul 1994 A
5334952 Maddy et al. Aug 1994 A
5335342 Pope et al. Aug 1994 A
5336936 Allen et al. Aug 1994 A
5339213 O'Callaghan Aug 1994 A
5339262 Rostoker et al. Aug 1994 A
5341044 Ahanin et al. Aug 1994 A
5341267 Whitten et al. Aug 1994 A
5345195 Cordoba et al. Sep 1994 A
5349303 Gerpheide Sep 1994 A
5355097 Scott et al. Oct 1994 A
5357626 Johnson et al. Oct 1994 A
5361290 Akiyama Nov 1994 A
5371524 Herczeg et al. Dec 1994 A
5371860 Mura et al. Dec 1994 A
5371878 Coker Dec 1994 A
5371883 Gross et al. Dec 1994 A
5374787 Miller et al. Dec 1994 A
5377333 Nakagoshi et al. Dec 1994 A
5378935 Korhonen et al. Jan 1995 A
5381515 Platt et al. Jan 1995 A
5384467 Plimon et al. Jan 1995 A
5384745 Konishi et al. Jan 1995 A
5384910 Torres Jan 1995 A
5390173 Spinney et al. Feb 1995 A
5392784 Gudaitis Feb 1995 A
5394522 Sanchez-Frank et al. Feb 1995 A
5396245 Rempfer Mar 1995 A
5398261 Marbot Mar 1995 A
5399922 Kiani et al. Mar 1995 A
5408194 Steinbach et al. Apr 1995 A
5408235 Doyle et al. Apr 1995 A
5414308 Lee et al. May 1995 A
5414380 Floyd et al. May 1995 A
5416895 Anderson et al. May 1995 A
5422823 Agrawal et al. Jun 1995 A
5424689 Gillig et al. Jun 1995 A
5426378 Ong Jun 1995 A
5426384 May Jun 1995 A
5428319 Marvin et al. Jun 1995 A
5430395 Ichimaru Jul 1995 A
5430687 Hung et al. Jul 1995 A
5430734 Gilson Jul 1995 A
5432476 Tran Jul 1995 A
5438672 Dey Aug 1995 A
5440305 Signore et al. Aug 1995 A
5451887 El Avat et al. Sep 1995 A
5453904 Higashiyama et al. Sep 1995 A
5455525 Ho et al. Oct 1995 A
5455731 Parkinson Oct 1995 A
5455927 Huang Oct 1995 A
5457410 Ting Oct 1995 A
5457479 Cheng Oct 1995 A
5463591 Aimoto et al. Oct 1995 A
5479603 Stone et al. Dec 1995 A
5479643 Bhaskar et al. Dec 1995 A
5479652 Dreyer et al. Dec 1995 A
5481471 Naglestad et al. Jan 1996 A
5488204 Mead et al. Jan 1996 A
5491458 Mccune, Jr. et al. Feb 1996 A
5493246 Anderson Feb 1996 A
5493723 Beck et al. Feb 1996 A
5495077 Miller et al. Feb 1996 A
5495593 Elmer et al. Feb 1996 A
5495594 Mackenna et al. Feb 1996 A
5497119 Tedrow et al. Mar 1996 A
5499192 Knapp et al. Mar 1996 A
5500823 Martin et al. Mar 1996 A
5517198 Mcewan May 1996 A
5519854 Watt May 1996 A
5521529 Agrawal et al. May 1996 A
5530444 Tice et al. Jun 1996 A
5530673 Tobita et al. Jun 1996 A
5530813 Paulsen et al. Jun 1996 A
5537057 Leong et al. Jul 1996 A
5541878 LeMoncheck et al. Jul 1996 A
5542055 Amini et al. Jul 1996 A
5543588 Bisset et al. Aug 1996 A
5543590 Gillespie et al. Aug 1996 A
5543591 Gillespie et al. Aug 1996 A
5544067 Rostoker et al. Aug 1996 A
5544311 Harenberg et al. Aug 1996 A
5546433 Tran et al. Aug 1996 A
5546562 Patel Aug 1996 A
5552725 Ray et al. Sep 1996 A
5552748 O'Shaughnessy Sep 1996 A
5554951 Gough Sep 1996 A
5555452 Callaway et al. Sep 1996 A
5555907 Philipp Sep 1996 A
5557762 Okuaki et al. Sep 1996 A
5559502 Schutte Sep 1996 A
5559996 Fujioka Sep 1996 A
5563526 Hastings et al. Oct 1996 A
5563529 Seltzer et al. Oct 1996 A
5564010 Henry et al. Oct 1996 A
5564108 Hunsaker et al. Oct 1996 A
5565658 Gerpheide et al. Oct 1996 A
5566702 Philipp Oct 1996 A
5572665 Nakabayashi Nov 1996 A
5572719 Biesterfeldt Nov 1996 A
5574678 Gorecki Nov 1996 A
5574852 Bakker et al. Nov 1996 A
5574892 Christensen Nov 1996 A
5579353 Parmenter et al. Nov 1996 A
5587945 Lin et al. Dec 1996 A
5587957 Kowalczyk et al. Dec 1996 A
5590354 Klapproth et al. Dec 1996 A
5594388 O'Shaughnessy et al. Jan 1997 A
5594734 Worsley et al. Jan 1997 A
5594876 Getzlaff et al. Jan 1997 A
5594890 Yamaura et al. Jan 1997 A
5600262 Kolze Feb 1997 A
5604466 Dreps et al. Feb 1997 A
5608892 Wakerly Mar 1997 A
5614861 Harada Mar 1997 A
5625316 Chambers et al. Apr 1997 A
5625583 Hyatt Apr 1997 A
5629857 Brennan May 1997 A
5629891 LeMoncheck et al. May 1997 A
5630052 Shah May 1997 A
5630057 Hait May 1997 A
5630102 Johnson et al. May 1997 A
5631577 Freidin et al. May 1997 A
5633766 Hase et al. May 1997 A
5642295 Smayling Jun 1997 A
5646544 Iadanza Jul 1997 A
5646901 Sharpe-Geisler et al. Jul 1997 A
5648642 Miller et al. Jul 1997 A
5651035 Tozun et al. Jul 1997 A
5652893 Ben-Meir et al. Jul 1997 A
5661433 LaRosa et al. Aug 1997 A
5663900 Bhandari et al. Sep 1997 A
5663965 Seymour Sep 1997 A
5664199 Kuwahara Sep 1997 A
5666480 Leung et al. Sep 1997 A
5670915 Cooper et al. Sep 1997 A
5673198 Lawman et al. Sep 1997 A
5675825 Dreyer et al. Oct 1997 A
5677691 Hosticka et al. Oct 1997 A
5680070 Anderson et al. Oct 1997 A
5682032 Philipp Oct 1997 A
5684434 Mann et al. Nov 1997 A
5684952 Stein Nov 1997 A
5686844 Hull et al. Nov 1997 A
5687325 Chang Nov 1997 A
5689195 Cliff et al. Nov 1997 A
5689196 Schutte Nov 1997 A
5691664 Anderson et al. Nov 1997 A
5691898 Rosenberg et al. Nov 1997 A
5694063 Burlison et al. Dec 1997 A
5696952 Pontarelli Dec 1997 A
5699024 Manlove et al. Dec 1997 A
5703871 Pope et al. Dec 1997 A
5706453 Cheng et al. Jan 1998 A
5708589 Beauvais Jan 1998 A
5708798 Lynch et al. Jan 1998 A
5710906 Ghosh et al. Jan 1998 A
5712969 Zimmermann et al. Jan 1998 A
5721931 Gephardt et al. Feb 1998 A
5724009 Collins et al. Mar 1998 A
5727170 Mitchell et al. Mar 1998 A
5728933 Schultz et al. Mar 1998 A
5729704 Stone et al. Mar 1998 A
5730165 Philipp Mar 1998 A
5732277 Kodosky et al. Mar 1998 A
5734272 Belot et al. Mar 1998 A
5734334 Hsieh et al. Mar 1998 A
5737557 Sullivan Apr 1998 A
5737760 Grimmer et al. Apr 1998 A
5745011 Scott Apr 1998 A
5748048 Moyal May 1998 A
5748875 Tzori May 1998 A
5751164 Sharpe-Geisler et al. May 1998 A
5752013 Christensen et al. May 1998 A
5754552 Allmond et al. May 1998 A
5754826 Gamal et al. May 1998 A
5757368 Gerpheide et al. May 1998 A
5758058 Milburn May 1998 A
5761128 Watanabe Jun 1998 A
5763909 Mead et al. Jun 1998 A
5764714 Stansell et al. Jun 1998 A
5767457 Gerpheide et al. Jun 1998 A
5774704 Williams Jun 1998 A
5777399 Shibuya Jul 1998 A
5781030 Agrawal et al. Jul 1998 A
5781747 Smith et al. Jul 1998 A
5784545 Anderson et al. Jul 1998 A
5790957 Heidari Aug 1998 A
5796183 Hourmand Aug 1998 A
5797028 Gulick et al. Aug 1998 A
5799176 Kapusta et al. Aug 1998 A
5801958 Dangelo et al. Sep 1998 A
5802073 Platt Sep 1998 A
5802290 Casselman Sep 1998 A
5805792 Swoboda et al. Sep 1998 A
5805897 Glowny Sep 1998 A
5808883 Hawkes Sep 1998 A
5811987 Ashmore, Jr. et al. Sep 1998 A
5812698 Platt et al. Sep 1998 A
5818254 Agrawal et al. Oct 1998 A
5818444 Alimpich et al. Oct 1998 A
5818736 Leibold Oct 1998 A
5819028 Manghirmalani et al. Oct 1998 A
5822387 Mar Oct 1998 A
5822531 Gorczyca et al. Oct 1998 A
5828693 Mays et al. Oct 1998 A
5835405 Tsui et al. Nov 1998 A
5838583 Varadarajan et al. Nov 1998 A
5841078 Miller et al. Nov 1998 A
5841996 Nolan et al. Nov 1998 A
5844265 Mead et al. Dec 1998 A
5844404 Caser et al. Dec 1998 A
5848285 Kapusta et al. Dec 1998 A
5850156 Wittman Dec 1998 A
5852733 Chien et al. Dec 1998 A
5854625 Frisch et al. Dec 1998 A
5857109 Taylor Jan 1999 A
5861583 Schediwy et al. Jan 1999 A
5861875 Gerpheide Jan 1999 A
5864242 Allen et al. Jan 1999 A
5864392 Winklhofer et al. Jan 1999 A
5867046 Sugasawa Feb 1999 A
5867399 Rostoker et al. Feb 1999 A
5869979 Bocchino Feb 1999 A
5870004 Lu Feb 1999 A
5870309 Lawman Feb 1999 A
5870345 Stecker Feb 1999 A
5872464 Gradinariu Feb 1999 A
5874958 Ludolph Feb 1999 A
5875293 Bell et al. Feb 1999 A
5877656 Mann et al. Mar 1999 A
5878425 Redpath Mar 1999 A
5880411 Gillespie et al. Mar 1999 A
5880598 Duong Mar 1999 A
5883623 Cseri Mar 1999 A
5886582 Stansell Mar 1999 A
5887189 Birns et al. Mar 1999 A
5889236 Gillespie et al. Mar 1999 A
5889723 Pascucci Mar 1999 A
5889936 Chan Mar 1999 A
5889988 Held Mar 1999 A
5894226 Koyama Apr 1999 A
5894243 Hwang Apr 1999 A
5894565 Furtek et al. Apr 1999 A
5895494 Scalzi et al. Apr 1999 A
5896068 Moyal Apr 1999 A
5896330 Gibson Apr 1999 A
5898345 Namura et al. Apr 1999 A
5900780 Hirose et al. May 1999 A
5901062 Burch et al. May 1999 A
5903718 Marik May 1999 A
5905398 Todsen et al. May 1999 A
5909544 Anderson et al. Jun 1999 A
5911059 Profit, Jr. Jun 1999 A
5914465 Allen et al. Jun 1999 A
5914633 Comino et al. Jun 1999 A
5914708 LaGrange et al. Jun 1999 A
5917356 Casal et al. Jun 1999 A
5920310 Faggin et al. Jul 1999 A
5923264 Lavelle et al. Jul 1999 A
5926566 Wang et al. Jul 1999 A
5929710 Bien Jul 1999 A
5930148 Bjorksten et al. Jul 1999 A
5930150 Cohen et al. Jul 1999 A
5931959 Kwiat Aug 1999 A
5933023 Young Aug 1999 A
5933356 Rostoker et al. Aug 1999 A
5933816 Zeanah et al. Aug 1999 A
5935233 Jeddeloh Aug 1999 A
5935266 Thurnhofer et al. Aug 1999 A
5939904 Fetterman et al. Aug 1999 A
5939949 Olgaard et al. Aug 1999 A
5941991 Kageshima Aug 1999 A
5942733 Allen et al. Aug 1999 A
5943052 Allen et al. Aug 1999 A
5945878 Westwick et al. Aug 1999 A
5949632 Barreras, Sr. et al. Sep 1999 A
5952888 Scott Sep 1999 A
5956279 Mo et al. Sep 1999 A
5959871 Pierzchala et al. Sep 1999 A
5963075 Hiiragizawa Oct 1999 A
5963105 Nguyen Oct 1999 A
5963503 Lee Oct 1999 A
5964893 Circello et al. Oct 1999 A
5966027 Kapusta et al. Oct 1999 A
5966532 Mcdonald et al. Oct 1999 A
5968135 Teramoto et al. Oct 1999 A
5969513 Clark Oct 1999 A
5969632 Diamant et al. Oct 1999 A
5973368 Pearce et al. Oct 1999 A
5974235 Nunally et al. Oct 1999 A
5977791 Veenstra Nov 1999 A
5978584 Nishibata et al. Nov 1999 A
5978937 Miyamori et al. Nov 1999 A
5982105 Masters Nov 1999 A
5982229 Wong et al. Nov 1999 A
5982241 Nguyen et al. Nov 1999 A
5983277 Heile et al. Nov 1999 A
5986479 Mohan Nov 1999 A
5987246 Thomsen et al. Nov 1999 A
5988902 Holehan Nov 1999 A
5994939 Johnson et al. Nov 1999 A
5996032 Baker Nov 1999 A
5999725 Barbier et al. Dec 1999 A
6002268 Sasaki et al. Dec 1999 A
6002398 Wilson Dec 1999 A
6003054 Oshima et al. Dec 1999 A
6003107 Ranson et al. Dec 1999 A
6003133 Moughanni et al. Dec 1999 A
6005814 Mulholland et al. Dec 1999 A
6005904 Knapp et al. Dec 1999 A
6008685 Kunst Dec 1999 A
6008703 Perrott et al. Dec 1999 A
6009270 Mann Dec 1999 A
6009496 Tsai Dec 1999 A
6011407 New Jan 2000 A
6012835 Thompson et al. Jan 2000 A
6014135 Fernandes Jan 2000 A
6014509 Furtek et al. Jan 2000 A
6014723 Tremblay et al. Jan 2000 A
6016554 Skrovan et al. Jan 2000 A
6016563 Fleisher Jan 2000 A
6018559 Azegami et al. Jan 2000 A
6023422 Allen et al. Feb 2000 A
6023565 Lawman et al. Feb 2000 A
6026134 Duffy et al. Feb 2000 A
6026501 Hohl et al. Feb 2000 A
6028271 Gillespie et al. Feb 2000 A
6028959 Wang et al. Feb 2000 A
6031365 Sharpe-Geisler Feb 2000 A
6032268 Swoboda et al. Feb 2000 A
6034538 Abramovici Mar 2000 A
6034541 Kopec, Jr. et al. Mar 2000 A
6035320 Kiriaki et al. Mar 2000 A
6037807 Wu et al. Mar 2000 A
6038551 Barlow et al. Mar 2000 A
6041406 Mann Mar 2000 A
6043695 O'Sullivan Mar 2000 A
6043719 Lin et al. Mar 2000 A
6049223 Lytle et al. Apr 2000 A
6049225 Huang et al. Apr 2000 A
6051772 Cameron et al. Apr 2000 A
6052035 Nolan et al. Apr 2000 A
6052524 Pauna Apr 2000 A
6055584 Bridges et al. Apr 2000 A
6057705 Wojewoda et al. May 2000 A
6058263 Voth May 2000 A
6058452 Rangasayee et al. May 2000 A
6061511 Marantz et al. May 2000 A
6066961 Lee et al. May 2000 A
6070003 Gove et al. May 2000 A
6072803 Allmond et al. Jun 2000 A
6075941 Itoh et al. Jun 2000 A
6079985 Wohl et al. Jun 2000 A
6081140 King Jun 2000 A
6094730 Lopez et al. Jul 2000 A
6097211 Couts-Martin et al. Aug 2000 A
6097432 Mead et al. Aug 2000 A
6101457 Barch et al. Aug 2000 A
6101617 Burckhartt et al. Aug 2000 A
6104217 Magana Aug 2000 A
6104325 Liaw et al. Aug 2000 A
6107769 Saylor et al. Aug 2000 A
6107826 Young et al. Aug 2000 A
6107882 Gabara et al. Aug 2000 A
6110223 Southgate et al. Aug 2000 A
6111431 Estrada Aug 2000 A
6112264 Beasley et al. Aug 2000 A
6121791 Abbott Sep 2000 A
6121805 Thamsirianunt et al. Sep 2000 A
6121965 Kenney et al. Sep 2000 A
6125416 Warren Sep 2000 A
6130548 Koifman Oct 2000 A
6130551 Agrawal et al. Oct 2000 A
6130552 Jefferson et al. Oct 2000 A
6133773 Garlepp et al. Oct 2000 A
6134181 Landry Oct 2000 A
6134516 Wang et al. Oct 2000 A
6137308 Nayak Oct 2000 A
6140853 Lo Oct 2000 A
6141376 Shaw Oct 2000 A
6141764 Ezell Oct 2000 A
6144327 Distinti et al. Nov 2000 A
6148104 Wang et al. Nov 2000 A
6148441 Woodward Nov 2000 A
6149299 Aslan et al. Nov 2000 A
6150866 Eto et al. Nov 2000 A
6154055 Cliff et al. Nov 2000 A
6154064 Proebsting Nov 2000 A
6157024 Chapdelaine et al. Dec 2000 A
6157270 Tso Dec 2000 A
6161199 Szeto et al. Dec 2000 A
6166367 Cho Dec 2000 A
6166960 Marneweck et al. Dec 2000 A
6167077 Ducaroir et al. Dec 2000 A
6167364 Stellenberg et al. Dec 2000 A
6167559 Furtek et al. Dec 2000 A
6169383 Sabin et al. Jan 2001 B1
6172428 Jordan Jan 2001 B1
6172571 Moyal et al. Jan 2001 B1
6173419 Barnett Jan 2001 B1
6175914 Mann Jan 2001 B1
6175949 Gristede et al. Jan 2001 B1
6181163 Agrawal et al. Jan 2001 B1
6183131 Holloway et al. Feb 2001 B1
6185127 Myers et al. Feb 2001 B1
6185522 Bakker Feb 2001 B1
6185703 Guddat et al. Feb 2001 B1
6185732 Mann et al. Feb 2001 B1
6188228 Philipp Feb 2001 B1
6188241 Gauthier et al. Feb 2001 B1
6188381 Van Der et al. Feb 2001 B1
6188391 Seely et al. Feb 2001 B1
6188975 Gay Feb 2001 B1
6191603 Muradali et al. Feb 2001 B1
6191660 Mar et al. Feb 2001 B1
6191998 Reddy et al. Feb 2001 B1
6192431 Dabral et al. Feb 2001 B1
6198303 Rangasayee Mar 2001 B1
6201407 Kapusta et al. Mar 2001 B1
6201829 Schneider Mar 2001 B1
6202044 Tzori Mar 2001 B1
6204687 Schultz et al. Mar 2001 B1
6205574 Dellinger et al. Mar 2001 B1
6208572 Adams et al. Mar 2001 B1
6211708 Klemmer Apr 2001 B1
6211715 Terauchi Apr 2001 B1
6211741 Dalmia Apr 2001 B1
6215352 Sudo Apr 2001 B1
6216254 Pesce et al. Apr 2001 B1
6219729 Keats et al. Apr 2001 B1
6222528 Gerpheide et al. Apr 2001 B1
6223144 Barnett et al. Apr 2001 B1
6223147 Bowers Apr 2001 B1
6223272 Coehlo et al. Apr 2001 B1
RE37195 Kean May 2001 E
6225866 Kubota et al. May 2001 B1
6236242 Hedberg May 2001 B1
6236275 Dent May 2001 B1
6236278 Olgaard May 2001 B1
6236593 Hong et al. May 2001 B1
6239389 Allen et al. May 2001 B1
6239798 Ludolph et al. May 2001 B1
6240375 Sonoda May 2001 B1
6243654 Johnson et al. Jun 2001 B1
6246258 Lesea Jun 2001 B1
6246410 Bergeron et al. Jun 2001 B1
6249167 Oguchi et al. Jun 2001 B1
6249447 Boylan et al. Jun 2001 B1
6253250 Evans et al. Jun 2001 B1
6253754 Roohparvar Jul 2001 B1
6262717 Donohue et al. Jul 2001 B1
6263302 Hellestrand et al. Jul 2001 B1
6263339 Hirsch Jul 2001 B1
6263484 Yang Jul 2001 B1
6271679 Mcclintock et al. Aug 2001 B1
6272646 Rangasayee et al. Aug 2001 B1
6275117 Abugharbieh et al. Aug 2001 B1
6278568 Cloke et al. Aug 2001 B1
6280391 Olson et al. Aug 2001 B1
6281753 Corsi et al. Aug 2001 B1
6282547 Hirsch Aug 2001 B1
6282551 Anderson et al. Aug 2001 B1
6286127 King et al. Sep 2001 B1
6288707 Philipp Sep 2001 B1
6289300 Brannick et al. Sep 2001 B1
6289478 Kitagaki Sep 2001 B1
6289489 Bold et al. Sep 2001 B1
6292028 Tomita Sep 2001 B1
6294932 Watarai Sep 2001 B1
6294962 Mar Sep 2001 B1
6298320 Buckmaster et al. Oct 2001 B1
6304014 England et al. Oct 2001 B1
6304101 Nishihara Oct 2001 B1
6304790 Nakamura et al. Oct 2001 B1
6307413 Dalmia et al. Oct 2001 B1
6310521 Dalmia Oct 2001 B1
6310611 Caldwell Oct 2001 B1
6311149 Ryan et al. Oct 2001 B1
6314530 Mann Nov 2001 B1
6320184 Winklhofer et al. Nov 2001 B1
6320282 Caldwell Nov 2001 B1
6321369 Heile et al. Nov 2001 B1
6323846 Westerman et al. Nov 2001 B1
6324628 Chan Nov 2001 B1
6324672 Lawman et al. Nov 2001 B1
6326859 Goldman et al. Dec 2001 B1
6332137 Hori et al. Dec 2001 B1
6332201 Chin et al. Dec 2001 B1
6337579 Mochida Jan 2002 B1
6338109 Snyder et al. Jan 2002 B1
6339815 Feng et al. Jan 2002 B1
6342907 Petty et al. Jan 2002 B1
6345383 Ueki Feb 2002 B1
6347395 Payne et al. Feb 2002 B1
6351789 Green Feb 2002 B1
6353452 Hamada et al. Mar 2002 B1
6355980 Callahan Mar 2002 B1
6356862 Bailey Mar 2002 B2
6356958 Lin Mar 2002 B1
6356960 Jones et al. Mar 2002 B1
6359950 Gossmann et al. Mar 2002 B2
6362697 Pulvirenti Mar 2002 B1
6363463 Mattison Mar 2002 B1
6366174 Berry et al. Apr 2002 B1
6366300 Ohara et al. Apr 2002 B1
6366874 Lee et al. Apr 2002 B1
6366878 Grunert Apr 2002 B1
6369660 Wei et al. Apr 2002 B1
6371878 Bowen Apr 2002 B1
6373285 Konishi Apr 2002 B1
6373954 Malcolm, Jr. et al. Apr 2002 B1
6374370 Bockhaus et al. Apr 2002 B1
6377009 Philipp Apr 2002 B1
6377575 Mullaney et al. Apr 2002 B1
6377646 Sha Apr 2002 B1
6380811 Zarubinsky et al. Apr 2002 B1
6380929 Platt Apr 2002 B1
6380931 Gillespie et al. Apr 2002 B1
6384947 Ackerman et al. May 2002 B1
6385742 Kirsch et al. May 2002 B1
6388109 Schwarz et al. May 2002 B1
6388464 Lacey et al. May 2002 B1
6396302 New et al. May 2002 B2
6396657 Suzuki May 2002 B1
6397232 Cheng-Hung et al. May 2002 B1
6401230 Ahanessians et al. Jun 2002 B1
6404204 Farruggia et al. Jun 2002 B1
6404445 Galea et al. Jun 2002 B1
6407953 Cleeves Jun 2002 B1
6408432 Herrmann et al. Jun 2002 B1
6411665 Chan et al. Jun 2002 B1
6411974 Graham et al. Jun 2002 B1
6414671 Gillespie et al. Jul 2002 B1
6421698 Hong Jul 2002 B1
6421817 Mohan et al. Jul 2002 B1
6425109 Choukalos et al. Jul 2002 B1
6429882 Abdelnur et al. Aug 2002 B1
6430305 Decker Aug 2002 B1
6433645 Mann et al. Aug 2002 B1
6434187 Beard et al. Aug 2002 B1
6437805 Sojoodi et al. Aug 2002 B1
6438565 Ammirato et al. Aug 2002 B1
6438735 McElvain et al. Aug 2002 B1
6438738 Elayda Aug 2002 B1
6441073 Tanaka et al. Aug 2002 B1
6445211 Saripella Sep 2002 B1
6449628 Wasson Sep 2002 B1
6449755 Beausang et al. Sep 2002 B1
6449761 Greidinger et al. Sep 2002 B1
6452437 Takeuchi et al. Sep 2002 B1
6452514 Philipp Sep 2002 B1
6453175 Mizell et al. Sep 2002 B2
6453461 Chaiken Sep 2002 B1
6456304 Angiulo et al. Sep 2002 B1
6457355 Philipp Oct 2002 B1
6457479 Zhuang et al. Oct 2002 B1
6460172 Farre et al. Oct 2002 B1
6463488 San Juan Oct 2002 B1
6466036 Philipp Oct 2002 B1
6466078 Stiff Oct 2002 B1
6466898 Chan Oct 2002 B1
6473069 Gerpheide Oct 2002 B1
6473825 Worley et al. Oct 2002 B1
6477691 Bergamaschi et al. Nov 2002 B1
6480921 Mansoorian et al. Nov 2002 B1
6483343 Faith et al. Nov 2002 B1
6487700 Fukushima Nov 2002 B1
6489899 Ely et al. Dec 2002 B1
6490213 Mu et al. Dec 2002 B1
6492834 Lytle et al. Dec 2002 B1
6496969 Feng et al. Dec 2002 B2
6496971 Lesea et al. Dec 2002 B1
6498720 Glad Dec 2002 B2
6499134 Buffet et al. Dec 2002 B1
6499359 Washeleski et al. Dec 2002 B1
6504403 Bangs et al. Jan 2003 B2
6507214 Snyder Jan 2003 B1
6507215 Piasecki et al. Jan 2003 B1
6507857 Yalcinalp Jan 2003 B1
6509758 Piasecki et al. Jan 2003 B2
6512395 Lacey et al. Jan 2003 B1
6516428 Wenzel et al. Feb 2003 B2
6522128 Ely et al. Feb 2003 B1
6523416 Takagi et al. Feb 2003 B2
6525593 Mar Feb 2003 B1
6526556 Stoica et al. Feb 2003 B1
6529791 Takagi Mar 2003 B1
6530065 McDonald et al. Mar 2003 B1
6534970 Ely et al. Mar 2003 B1
6535061 Darmawaskita et al. Mar 2003 B2
6535200 Philipp Mar 2003 B2
6535946 Bryant et al. Mar 2003 B1
6536028 Katsioulas et al. Mar 2003 B1
6539534 Bennett Mar 2003 B1
6542025 Kutz et al. Apr 2003 B1
6542844 Hanna Apr 2003 B1
6542845 Grucci et al. Apr 2003 B1
6542998 Vorbach et al. Apr 2003 B1
6546297 Gaston et al. Apr 2003 B1
6552933 Roohparvar Apr 2003 B2
6553057 Sha et al. Apr 2003 B1
6554469 Thomson et al. Apr 2003 B1
6556044 Langhammer et al. Apr 2003 B2
6557164 Faustini Apr 2003 B1
6559685 Green May 2003 B2
6560306 Duffy et al. May 2003 B1
6560699 Konkle May 2003 B1
6563391 Mar May 2003 B1
6564179 Belhaj May 2003 B1
6564334 Zattiero et al. May 2003 B1
6566961 Dasgupta et al. May 2003 B2
6567426 van Hook et al. May 2003 B1
6567932 Edwards et al. May 2003 B2
6570557 Westerman et al. May 2003 B1
6571331 Henry et al. May 2003 B2
6571373 Devins et al. May 2003 B1
6574590 Kershaw et al. Jun 2003 B1
6574739 Kung et al. Jun 2003 B1
6575373 Nakano Jun 2003 B1
6577258 Ruha et al. Jun 2003 B2
6578174 Zizzo Jun 2003 B2
6580329 Sander Jun 2003 B2
6581191 Schubert et al. Jun 2003 B1
6587093 Shaw et al. Jul 2003 B1
6587995 Duboc et al. Jul 2003 B1
6588004 Southgate et al. Jul 2003 B1
6590422 Dillon Jul 2003 B1
6590517 Swanson Jul 2003 B1
6590589 Sluiman et al. Jul 2003 B1
6591369 Edwards et al. Jul 2003 B1
6592626 Bauchot et al. Jul 2003 B1
6594796 Chiang Jul 2003 B1
6594799 Robertson et al. Jul 2003 B1
6597212 Wang et al. Jul 2003 B1
6597824 Newberg et al. Jul 2003 B2
6598178 Yee et al. Jul 2003 B1
6600346 Macaluso Jul 2003 B1
6600351 Bisanti et al. Jul 2003 B2
6600575 Kohara Jul 2003 B1
6601189 Edwards et al. Jul 2003 B1
6601236 Curtis Jul 2003 B1
6603330 Snyder Aug 2003 B1
6603348 Preuss et al. Aug 2003 B1
6604179 Volk et al. Aug 2003 B2
6606731 Baum et al. Aug 2003 B1
6608472 Kutz et al. Aug 2003 B1
6610936 Gillespie et al. Aug 2003 B2
6611220 Snyder Aug 2003 B1
6611276 Muratori et al. Aug 2003 B1
6611856 Liao et al. Aug 2003 B1
6611952 Prakash et al. Aug 2003 B1
6613098 Sorge et al. Sep 2003 B1
6614260 Welch et al. Sep 2003 B1
6614320 Sullam et al. Sep 2003 B1
6614374 Gustavsson et al. Sep 2003 B1
6614458 Lambert et al. Sep 2003 B1
6615167 Devins et al. Sep 2003 B1
6617888 Volk Sep 2003 B2
6618854 Mann Sep 2003 B1
6621356 Gotz et al. Sep 2003 B2
6624640 Lund et al. Sep 2003 B2
6625765 Krishnan Sep 2003 B1
6628163 Dathe et al. Sep 2003 B2
6628311 Fang Sep 2003 B1
6631508 Williams Oct 2003 B1
6634009 Molson et al. Oct 2003 B1
6636096 Schaffer et al. Oct 2003 B2
6636169 Distinti et al. Oct 2003 B1
6637015 Ogami et al. Oct 2003 B1
6639586 Gerpheide Oct 2003 B2
6642857 Schediwy et al. Nov 2003 B1
6643151 Nebrigic et al. Nov 2003 B1
6643810 Whetsel Nov 2003 B2
6649924 Philipp et al. Nov 2003 B1
6650581 Hong et al. Nov 2003 B2
6658498 Carney et al. Dec 2003 B1
6658633 Devins et al. Dec 2003 B2
6661288 Morgan et al. Dec 2003 B2
6661410 Casebolt et al. Dec 2003 B2
6661724 Snyder et al. Dec 2003 B1
6664978 Kekic et al. Dec 2003 B1
6664991 Chew et al. Dec 2003 B1
6667642 Moyal Dec 2003 B1
6667740 Ely et al. Dec 2003 B2
6670852 Hauck Dec 2003 B1
6671869 Davidson et al. Dec 2003 B2
6673308 Hino et al. Jan 2004 B2
6677814 Low et al. Jan 2004 B2
6677932 Westerman Jan 2004 B1
6678645 Rajsuman et al. Jan 2004 B1
6678877 Perry et al. Jan 2004 B1
6680632 Meyers et al. Jan 2004 B1
6680731 Gerpheide et al. Jan 2004 B2
6681280 Miyake et al. Jan 2004 B1
6681359 Au et al. Jan 2004 B1
6683462 Shimizu Jan 2004 B2
6683930 Dalmia Jan 2004 B1
6686787 Ling Feb 2004 B2
6686860 Gulati et al. Feb 2004 B2
6690224 Moore Feb 2004 B1
6691193 Wang et al. Feb 2004 B1
6691301 Bowen Feb 2004 B2
6697754 Alexander Feb 2004 B1
6701340 Gorecki et al. Mar 2004 B1
6701487 Ogami et al. Mar 2004 B1
6701508 Bartz et al. Mar 2004 B1
6703961 Mueck et al. Mar 2004 B2
6704381 Moyal et al. Mar 2004 B1
6704879 Parrish Mar 2004 B1
6704889 Veenstra et al. Mar 2004 B2
6704893 Bauwens et al. Mar 2004 B1
6705511 Dames et al. Mar 2004 B1
6711226 Williams et al. Mar 2004 B1
6711731 Weiss Mar 2004 B2
6713897 Caldwell Mar 2004 B2
6714066 Gorecki et al. Mar 2004 B2
6714817 Daynes et al. Mar 2004 B2
6715132 Bartz et al. Mar 2004 B1
6717474 Chen et al. Apr 2004 B2
6718294 Bortfeld Apr 2004 B1
6718520 Merryman et al. Apr 2004 B1
6718533 Schneider et al. Apr 2004 B1
6724220 Snyder et al. Apr 2004 B1
6725441 Keller et al. Apr 2004 B1
6728900 Meli Apr 2004 B1
6728902 Kaiser et al. Apr 2004 B2
6730863 Gerpheide et al. May 2004 B1
6731552 Perner May 2004 B2
6732068 Sample et al. May 2004 B2
6732347 Camilleri et al. May 2004 B1
6738858 Fernald et al. May 2004 B1
6744323 Moyal et al. Jun 2004 B1
6745369 May et al. Jun 2004 B1
6748569 Brooke et al. Jun 2004 B1
6750852 Gillespie et al. Jun 2004 B2
6750876 Atsatt et al. Jun 2004 B1
6750889 Livingston Jun 2004 B1
6754101 Terzioglu et al. Jun 2004 B2
6754723 Kato Jun 2004 B2
6754765 Chang et al. Jun 2004 B1
6754849 Tamura Jun 2004 B2
6757882 Chen et al. Jun 2004 B2
6765407 Snyder Jul 2004 B1
6768337 Kohno et al. Jul 2004 B2
6768352 Maher et al. Jul 2004 B1
6769622 Tournemille et al. Aug 2004 B1
6771552 Fujisawa Aug 2004 B2
6781456 Pradhan Aug 2004 B2
6782068 Wilson et al. Aug 2004 B1
6784821 Lee Aug 2004 B1
6785881 Bartz et al. Aug 2004 B1
6788116 Cook et al. Sep 2004 B1
6788221 Ely et al. Sep 2004 B1
6791377 Ilchmann et al. Sep 2004 B2
6792584 Eneboe et al. Sep 2004 B1
6798218 Kasperkovitz Sep 2004 B2
6798299 Mar et al. Sep 2004 B1
6799198 Huboi et al. Sep 2004 B1
6806771 Hildebrant et al. Oct 2004 B1
6806782 Motoyoshi et al. Oct 2004 B2
6809275 Cheng et al. Oct 2004 B1
6809566 Kin-Leblanc Oct 2004 B1
6810442 Lin et al. Oct 2004 B1
6815979 Ooshita Nov 2004 B2
6816544 Bailey et al. Nov 2004 B1
6817005 Mason et al. Nov 2004 B2
6819142 Viehmann et al. Nov 2004 B2
6823282 Snyder Nov 2004 B1
6823497 Schubert et al. Nov 2004 B2
6825689 Snyder Nov 2004 B1
6825869 Bang Nov 2004 B2
6828824 Betz et al. Dec 2004 B2
6829727 Pawloski Dec 2004 B1
6834384 Fiorella, II et al. Dec 2004 B2
6836169 Richmond et al. Dec 2004 B2
6839774 Ahn et al. Jan 2005 B1
6842710 Gehring et al. Jan 2005 B1
6847203 Conti et al. Jan 2005 B1
6850117 Weber et al. Feb 2005 B2
6850554 Sha et al. Feb 2005 B1
6853598 Chevallier Feb 2005 B2
6854067 Kutz et al. Feb 2005 B1
6856433 Hatano et al. Feb 2005 B2
6859884 Sullam Feb 2005 B1
6862240 Burgan Mar 2005 B2
6864710 Lacey et al. Mar 2005 B1
6865429 Schneider et al. Mar 2005 B1
6865504 Larson et al. Mar 2005 B2
6868500 Kutz et al. Mar 2005 B1
6871253 Greeff et al. Mar 2005 B2
6871331 Bloom et al. Mar 2005 B1
6873203 Paul et al. Mar 2005 B1
6873210 Mulder et al. Mar 2005 B2
6876941 Nightingale Apr 2005 B2
6880086 Kidder et al. Apr 2005 B2
6888453 Lutz et al. May 2005 B2
6888538 Ely et al. May 2005 B2
6892310 Kutz et al. May 2005 B1
6892322 Snyder May 2005 B1
6893724 Lin et al. May 2005 B2
6894928 Owen May 2005 B2
6897390 Caldwell et al. May 2005 B2
6898703 Ogami et al. May 2005 B1
6900663 Roper et al. May 2005 B1
6901014 Son et al. May 2005 B2
6901563 Ogami et al. May 2005 B1
6903613 Mitchell et al. Jun 2005 B1
6910126 Mar et al. Jun 2005 B1
6911857 Stiff Jun 2005 B1
6917661 Scott et al. Jul 2005 B1
6922821 Nemecek Jul 2005 B1
6924668 Mueller et al. Aug 2005 B2
6934674 Douezy et al. Aug 2005 B1
6937075 Lim et al. Aug 2005 B2
6940356 Mcdonald, II et al. Sep 2005 B2
6941336 Mar Sep 2005 B1
6941538 Hwang et al. Sep 2005 B2
6944018 Caldwell Sep 2005 B2
6949984 Siniscalchi Sep 2005 B2
6950954 Sullam et al. Sep 2005 B1
6950990 Rajarajan et al. Sep 2005 B2
6952778 Snyder Oct 2005 B1
6954511 Tachimori Oct 2005 B2
6954904 White Oct 2005 B2
6956419 Mann et al. Oct 2005 B1
6957180 Nemecek Oct 2005 B1
6957242 Snyder Oct 2005 B1
6961686 Kodosky et al. Nov 2005 B2
6963233 Puccio et al. Nov 2005 B2
6963908 Lynch et al. Nov 2005 B1
6966039 Bartz et al. Nov 2005 B1
6967511 Sullam Nov 2005 B1
6967960 Bross et al. Nov 2005 B1
6968346 Hekmatpour Nov 2005 B2
6970844 Bierenbaum Nov 2005 B1
6971004 Pleis et al. Nov 2005 B1
6973400 Cahill-O'Brien et al. Dec 2005 B2
6980060 Boerstler et al. Dec 2005 B2
6981090 Kutz et al. Dec 2005 B1
6983047 Chadha et al. Jan 2006 B1
6988192 Snider Jan 2006 B2
6996799 Cismas et al. Feb 2006 B1
7005933 Shutt Feb 2006 B1
7009444 Scott Mar 2006 B1
7010773 Bartz et al. Mar 2006 B1
7015735 Kimura et al. Mar 2006 B2
7017145 Taylor Mar 2006 B2
7020854 Killian et al. Mar 2006 B2
7023257 Sullam Apr 2006 B1
7024636 Weed Apr 2006 B2
7024654 Bersch et al. Apr 2006 B2
7030656 Lo et al. Apr 2006 B2
7030688 Dosho et al. Apr 2006 B2
7034603 Brady et al. Apr 2006 B2
7042301 Sutardja May 2006 B2
7047166 Dancea May 2006 B2
7055035 Allison et al. May 2006 B2
7058921 Hwang et al. Jun 2006 B1
7073158 Mccubbrey Jul 2006 B2
7076420 Snyder et al. Jul 2006 B1
7079166 Hong Jul 2006 B1
7086014 Bartz et al. Aug 2006 B1
7088166 Reinschmidt et al. Aug 2006 B1
7089175 Nemecek et al. Aug 2006 B1
7091713 Erdelyi et al. Aug 2006 B2
7092980 Mar et al. Aug 2006 B1
7099818 Nemecek et al. Aug 2006 B1
7100133 Meiyappan et al. Aug 2006 B1
7103108 Beard Sep 2006 B1
7117485 Wilkinson et al. Oct 2006 B2
7119550 Kitano et al. Oct 2006 B2
7119602 Davis Oct 2006 B2
7123232 Edwards Oct 2006 B1
7124376 Zaidi et al. Oct 2006 B2
7127630 Snyder Oct 2006 B1
7129793 Gramegna Oct 2006 B2
7129873 Kawamura Oct 2006 B2
7132835 Arcus Nov 2006 B1
7138841 Li et al. Nov 2006 B1
7138868 Sanchez et al. Nov 2006 B2
7139530 Kusbel Nov 2006 B2
7149316 Kutz et al. Dec 2006 B1
7150002 Anderson et al. Dec 2006 B1
7152027 Andrade et al. Dec 2006 B2
7154294 Liu et al. Dec 2006 B2
7161936 Barrass et al. Jan 2007 B1
7162410 Nemecek et al. Jan 2007 B1
7171455 Gupta et al. Jan 2007 B1
7176701 Wachi et al. Feb 2007 B2
7178096 Rangan et al. Feb 2007 B2
7180342 Shutt et al. Feb 2007 B1
7185162 Snyder Feb 2007 B1
7185321 Roe et al. Feb 2007 B1
7188063 Snyder Mar 2007 B1
7193901 Ruby et al. Mar 2007 B2
7199783 Wenstrand et al. Apr 2007 B2
7200507 Chen et al. Apr 2007 B2
7206733 Nemecek Apr 2007 B1
7221187 Snyder et al. May 2007 B1
7227389 Gong et al. Jun 2007 B2
7236921 Nemecek et al. Jun 2007 B1
7250825 Wilson et al. Jul 2007 B2
7256588 Howard et al. Aug 2007 B2
7265633 Stiff Sep 2007 B1
7266768 Ferlitsch et al. Sep 2007 B2
7281846 Mcleod Oct 2007 B2
7282905 Chen et al. Oct 2007 B2
7283151 Nihei et al. Oct 2007 B2
7283410 Hsu et al. Oct 2007 B2
7287112 Pleis et al. Oct 2007 B1
7290244 Peck et al. Oct 2007 B2
7295049 Moyal et al. Nov 2007 B1
7301835 Joshi et al. Nov 2007 B2
7305510 Miller Dec 2007 B2
7307485 Snyder et al. Dec 2007 B1
7308608 Pleis et al. Dec 2007 B1
7312616 Snyder Dec 2007 B2
7323879 Kuo et al. Jan 2008 B2
7324380 Negut et al. Jan 2008 B2
7332976 Brennan Feb 2008 B1
7342405 Eldridge et al. Mar 2008 B2
7358714 Watanabe et al. Apr 2008 B2
7367017 Maddocks et al. Apr 2008 B2
7373437 Seigneret et al. May 2008 B2
7376001 Joshi et al. May 2008 B2
7376904 Cifra et al. May 2008 B2
7386740 Kutz et al. Jun 2008 B2
7392011 Jacomb-Hood Jun 2008 B1
7400183 Sivadasan et al. Jul 2008 B1
7406674 Ogami et al. Jul 2008 B1
7421251 Westwick et al. Sep 2008 B2
7461274 Merkin Dec 2008 B2
7542533 Jasa et al. Jun 2009 B2
7554847 Lee Jun 2009 B2
7616509 Qureshi et al. Nov 2009 B2
7672827 Schapiro et al. Mar 2010 B1
7809545 Ciolfi et al. Oct 2010 B2
7825688 Snyder et al. Nov 2010 B1
8042093 Ogami Oct 2011 B1
8176296 Snyder May 2012 B2
8358150 Snyder et al. Jan 2013 B1
8555032 Snyder Oct 2013 B2
8736303 Snyder et al. May 2014 B2
9286254 Snyder Mar 2016 B2
9766650 Snyder Sep 2017 B2
9843327 Snyder et al. Dec 2017 B1
10020810 Snyder et al. Jul 2018 B2
20010002129 Zimmerman et al. May 2001 A1
20010010083 Satoh Jul 2001 A1
20010038392 Humpleman et al. Nov 2001 A1
20010043081 Rees Nov 2001 A1
20010044927 Karniewicz Nov 2001 A1
20010045861 Bloodworth et al. Nov 2001 A1
20010047509 Mason et al. Nov 2001 A1
20020007467 Ma et al. Jan 2002 A1
20020010716 Mccartney et al. Jan 2002 A1
20020016706 Cooke et al. Feb 2002 A1
20020023110 Fortin et al. Feb 2002 A1
20020042696 Garcia et al. Apr 2002 A1
20020052729 Kyung et al. May 2002 A1
20020059543 Cheng et al. May 2002 A1
20020065646 Waldie et al. May 2002 A1
20020068989 Ebisawa et al. Jun 2002 A1
20020073119 Richard Jun 2002 A1
20020073380 Cooke Jun 2002 A1
20020080186 Frederiksen Jun 2002 A1
20020085020 Carroll Jul 2002 A1
20020099863 Comeau et al. Jul 2002 A1
20020108006 Snyder Aug 2002 A1
20020109722 Rogers et al. Aug 2002 A1
20020116168 Kim Aug 2002 A1
20020121679 Bazarjani et al. Sep 2002 A1
20020122060 Markel Sep 2002 A1
20020129334 Dane et al. Sep 2002 A1
20020133771 Barnett Sep 2002 A1
20020133794 Kanapathippillai et al. Sep 2002 A1
20020138516 Igra Sep 2002 A1
20020144099 Muro et al. Oct 2002 A1
20020145433 Morrise et al. Oct 2002 A1
20020152234 Estrada et al. Oct 2002 A1
20020152449 Lin Oct 2002 A1
20020156885 Thakkar Oct 2002 A1
20020156998 Casselman Oct 2002 A1
20020161802 Gabrick et al. Oct 2002 A1
20020166100 Meding Nov 2002 A1
20020174134 Goykhman Nov 2002 A1
20020174411 Feng et al. Nov 2002 A1
20030011639 Webb Jan 2003 A1
20030014447 White Jan 2003 A1
20030025734 Boose et al. Feb 2003 A1
20030033588 Alexander Feb 2003 A1
20030041235 Meyer Feb 2003 A1
20030056071 Triece et al. Mar 2003 A1
20030058469 Buis et al. Mar 2003 A1
20030061409 Rudusky Mar 2003 A1
20030061572 McClannahan et al. Mar 2003 A1
20030066057 RuDusky Apr 2003 A1
20030086300 Noyes et al. May 2003 A1
20030097640 Abrams et al. May 2003 A1
20030105620 Bowen Jun 2003 A1
20030126947 Margaria Jul 2003 A1
20030135842 Frey et al. Jul 2003 A1
20030149961 Kawai et al. Aug 2003 A1
20030229482 Cook et al. Dec 2003 A1
20040018711 Madurawe Jan 2004 A1
20040054821 Warren et al. Mar 2004 A1
20040153802 Kudo et al. Aug 2004 A1
20040205553 Hall et al. Oct 2004 A1
20040205617 Light Oct 2004 A1
20040205695 Fletcher Oct 2004 A1
20050066152 Garey Mar 2005 A1
20050143968 Odom et al. Jun 2005 A9
20050240917 Wu Oct 2005 A1
20050248534 Kehlstadt Nov 2005 A1
20050280453 Hsieh Dec 2005 A1
20060015862 Odom et al. Jan 2006 A1
20060031768 Shah et al. Feb 2006 A1
20070139074 Reblewski Jun 2007 A1
20070258458 Kapoor Nov 2007 A1
20080086668 Jefferson et al. Apr 2008 A1
20080095213 Lin et al. Apr 2008 A1
20080186052 Needham et al. Aug 2008 A1
20080259998 Venkataraman et al. Oct 2008 A1
20080294806 Swindle et al. Nov 2008 A1
20090066427 Brennan Mar 2009 A1
20090322305 De Dec 2009 A1
Foreign Referenced Citations (17)
Number Date Country
19710829 Sep 1998 DE
0308583 Mar 1989 EP
368398 May 1990 EP
0450863 Oct 1991 EP
0499383 Aug 1992 EP
0639816 Feb 1995 EP
1170671 Jan 2002 EP
1191423 Mar 2002 EP
1205848 May 2002 EP
405055842 Mar 1993 JP
06021732 Jan 1994 JP
404095408 Mar 2002 JP
4083405 Apr 2008 JP
9532478 Nov 1995 WO
9617305 Jun 1996 WO
9834376 Aug 1998 WO
9909712 Feb 1999 WO
Non-Patent Literature Citations (147)
Entry
USPTO Final Rejection for U.S. Appl. No. 09/998,848 dated Nov. 24, 2008; 15 pages.
USPTO Final Rejection for U.S. Appl. No. 09/998,848 dated Dec. 10, 2009; 16 pages.
USPTO Final Rejection for U.S. Appl. No. 10/033,027 dated Jun. 8, 2007; 8 pages.
USPTO Final Rejection for U.S. Appl. No. 10/033,027 dated Aug. 9, 2006; 6 pages.
USPTO Final Rejection for U.S. Appl. No. 10/033,027 dated Oct. 31, 2005; 24 pages.
USPTO Final Rejection for U.S. Appl. No. 11/799,439 dated Dec. 18, 2008; 6 pages.
USPTO Final Rejection for U.S. Appl. No. 13/211,329 dated Feb. 11, 2014; 11 pages.
USPTO Final Rejection for U.S. Appl. No. 13/211,329 dated May 9, 2018; 16 pages.
USPTO Final Rejection for U.S. Appl. No. 13/211,329 dated May 19, 2016; 11 pages.
USPTO Final Rejection for U.S. Appl. No. 13/211,329 dated Jun. 28, 2017; 15 pages.
USPTO Final Rejection for U.S. Appl. No. 13/211,329 dated Aug. 13, 2015; 11 pages.
USPTO Final Rejection for U.S. Appl. No. 13/211,329 dated Oct. 27, 2014; 11 pages.
USPTO Final Rejection for U.S. Appl. No. 13/328,385 dated Jul. 2, 2013; 5 pages.
USPTO Final Rejection for U.S. Appl. No. 15/453,493 dated Apr. 10, 2018; 11 pages.
USPTO Final Rejection for U.S. Appl. No. 10/033,027 dated Apr. 20, 2005; 20 pages.
USPTO Final Rejection for U.S. Appl. No. 10/033,027 dated Oct. 18, 2004; 17 pages.
USPTO Final Rejection for U.S. Appl. No. 13/328,385 dated Apr. 2, 2013; 8 pages.
USPTO Final Rejection for U.S. Appl. No. 15/453,492 dated Aug. 23, 2018; 6 pages.
USPTO Final Rejection for U.S. Appl. No. 15/455,393 dated Sep. 19, 2018; 10 pages.
USPTO Non-Final Rejection for U.S. Appl. No. 09/998,848 dated Jan. 26, 2006; 17 pages.
USPTO Non-Final Rejection for U.S. Appl. No. 09/998,848 dated Jan. 29, 2007; 13 pages.
USPTO Non-Final Rejection for U.S. Appl. No. 09/998,848 dated Feb. 22, 2008; 15 pages.
USPTO Non-Final Rejection for U.S. Appl. No. 09/998,848 dated May 12, 2009; 16 pages.
USPTO Non-Final Rejection for U.S. Appl. No. 09/998,848 dated Jun. 21, 2010; 15 pages.
USPTO Non-Final Rejection for U.S. Appl. No. 09/998,848 dated Dec. 21, 2004; 14 pages.
USPTO Non-Final Rejection for U.S. Appl. No. 10/033,027 dated Mar. 15, 2011; 6 pages.
USPTO Non-Final Rejection for U.S. Appl. No. 10/033,027 dated Apr. 26, 2006; 26 pages.
USPTO Non-Final Rejection for U.S. Appl. No. 10/033,027 dated Dec. 18, 2008; 5 pages.
USPTO Non-Final Rejection for U.S. Appl. No. 10/033,027 dated Dec. 21, 2006; 31 pages.
USPTO Non-Final Rejection for U.S. Appl. No. 10/803,030 dated Jun. 8, 2005; 4 pages.
USPTO Non-Final Rejection for U.S. Appl. No. 11/799,439 dated May 29, 2008; 8 pages.
USPTO Non-Final Rejection for U.S. Appl. No. 11/799,439 dated Nov. 2, 2007; 7 pages.
USPTO Non-Final Rejection for U.S. Appl. No. 12/902,137 dated Mar. 11, 2011; 9 pages.
USPTO Non-Final Rejection for U.S. Appl. No. 13/169,656 date Sep. 13, 2012; 11 pages.
USPTO Non-Final Rejection for U.S. Appl. No. 13/211,329 dated Jan. 14, 2016; 10 pages.
USPTO Non-Final Rejection for U.S. Appl. No. 13/211,329 dated Feb. 24, 2017; 13 pages.
USPTO Non-Final Rejection for U.S. Appl. No. 13/211,329 dated Mar. 26, 2015; 10 pages.
USPTO Non-Final Rejection for U.S. Appl. No. 13/211,329 dated Jun. 19, 2014; 12 pages.
USPTO Non-Final Rejection for U.S. Appl. No. 13/211,329 dated Oct. 5, 2016; 13 pages.
USPTO Non-Final Rejection for U.S. Appl. No. 13/211,329 dated Oct. 7, 2013; 7 pages.
USPTO Non-Final Rejection for U.S. Appl. No. 13/211,329 dated Dec. 19, 2017; 12 pages.
USPTO Non-Final Rejection for U.S. Appl. No. 14/283,888 dated Aug. 10, 2016; 7 pages.
USPTO Non-Final Rejection for U.S. Appl. No. 14/976,580 dated May 16, 2016; 6 pages.
USPTO Non-Final Rejection for U.S. Appl. No. 15/453,492 dated Sep. 22, 2017; 12 pages.
USPTO Non-Final Rejection for U.S. Appl. No. 15/455,393 dated Sep. 21, 2017; 11 pages.
USPTO Notice of Allowance for U.S. Appl. No. 09/998,848 dated Feb. 17, 2011; 7 pages.
USPTO Notice of Allowance for U.S. Appl. No. 09/998,848 dated Jun. 10, 2011; 8 pages.
USPTO Notice of Allowance for U.S. Appl. No. 09/998,848 dated Oct. 13, 2010; 4 pages.
USPTO Notice of Allowance for U.S. Appl. No. 10/033,027 dated Feb. 18, 2010; 4 pages.
USPTO Notice of Allowance for U.S. Appl. No. 10/033,027 dated Mar. 31, 2009; 7 pages.
USPTO Notice of Allowance for U.S. Appl. No. 15/455,393 dated Jan. 24, 2019; 5 pages.
USPTO Notice of Allowance for U.S. Appl. No. 10/033,027 dated Jun. 29, 2010; 4 pages.
USPTO Notice of Allowance for U.S. Appl. No. 10/033,027 dated Aug. 18, 2011; 5 pages.
USPTO Notice of Allowance for U.S. Appl. No. 10/033,027 dated Sep. 2, 2009; 4 pages.
USPTO Notice of Allowance for U.S. Appl. No. 10/033,027 dated Oct. 15, 2010; 4 pages.
USPTO Notice of Allowance for U.S. Appl. No. 10/033,027 dated Dec. 13, 2011; 5 pages.
USPTO Notice of Allowance for U.S. Appl. No. 10/803,030 dated Jan. 8, 2007; 6 pages.
USPTO Notice of Allowance for U.S. Appl. No. 11/799,439 dated Feb. 5, 2010; 4 pages.
USPTO Notice of Allowance for U.S. Appl. No. 11/799,439 dated Jun. 1, 2010; 4 pages.
USPTO Notice of Allowance for U.S. Appl. No. 11/799,439 dated Jun. 25, 2009; 6 pages.
USPTO Notice of Allowance for U.S. Appl. No. 11/799,439 dated Sep. 13, 2010; 4 pages.
USPTO Notice of Allowance for U.S. Appl. No. 11/799,439 dated Oct. 13, 2009; 4 pages.
USPTO Notice of Allowance for U.S. Appl. No. 12/902,137 dated Feb. 27, 2012; 5 pages.
USPTO Notice of Allowance for U.S. Appl. No. 12/902,137 dated Mar. 30, 2012; 5 pages.
USPTO Notice of Allowance for U.S. Appl. No. 12/902,137 dated Jun. 8, 2012; 5 pages.
USPTO Notice of Allowance for U.S. Appl. No. 12/902,137 dated Aug. 5, 2011; 7 pages.
USPTO Notice of Allowance for U.S. Appl. No. 12/902,137 dated Aug. 8, 2012; 7 pages.
USPTO Notice of Allowance for U.S. Appl. No. 12/902,137 dated Sep. 19, 2012; 6 pages.
USPTO Notice of Allowance for U.S. Appl. No. 12/902,137 dated Oct. 26, 2012; 5 pages.
USPTO Notice of Allowance for U.S. Appl. No. 12/902,137 dated Dec. 7, 2011; 5 pages.
USPTO Notice of Allowance for U.S. Appl. No. 13/169,656 dated Jan. 17, 2013; 7 pages.
USPTO Notice of Allowance for U.S. Appl. No. 13/169,656 dated Mar. 25, 2013; 6 pages.
USPTO Notice of Allowance for U.S. Appl. No. 13/169,656 dated Jul. 9, 2013; 9 pages.
USPTO Notice of Allowance for U.S. Appl. No. 13/328,385 dated Jan. 17, 2014; 5 pages.
USPTO Notice of Allowance for U.S. Appl. No. 13/328,385 dated Sep. 23, 2013; 8 pages.
USPTO Notice of Allowance for U.S. Appl. No. 13/328,385 dated Nov. 18, 2013; 7 pages.
USPTO Notice of Allowance for U.S. Appl. No. 13/966,028 dated Jun. 17, 2015; 9 pages.
USPTO Notice of Allowance for U.S. Appl. No. 13/966,028 dated Nov. 2, 2015; 5 pages.
USPTO Notice of Allowance for U.S. Appl. No. 14/283,888 dated Jan. 6, 2016; 6 pages.
USPTO Notice of Allowance for U.S. Appl. No. 14/283,888 dated Mar. 14, 2017; 5 pages.
USPTO Notice of Allowance for U.S. Appl. No. 14/283,888 dated Apr. 18, 2016; 6 pages.
USPTO Notice of Allowance for U.S. Appl. No. 14/283,888 dated May 7, 2015; 9 pages.
USPTO Notice of Allowance for U.S. Appl. No. 14/283,888 dated Jun. 28, 2017; 5 pages.
USPTO Notice of Allowance for U.S. Appl. No. 14/283,888 dated Sep. 10, 2015; 6 pages.
USPTO Notice of Allowance for U.S. Appl. No. 14/283,888 dated Nov. 16, 2016; 8 pages.
USPTO Notice of Allowance for U.S. Appl. No. 14/866,439 dated Jan. 23, 2017; 8 pages.
USPTO Notice of Allowance for U.S. Appl. No. 14/866,439 dated Jun. 1, 2017; 5 pages.
USPTO Notice of Allowance for U.S. Appl. No. 14/976,580 dated Mar. 15, 2017; 5 pages.
USPTO Notice of Allowance for U.S. Appl. No. 14/976,580 dated Jun. 27, 2017; 5 pages.
USPTO Notice of Allowance for U.S. Appl. No. 14/976,580 dated Aug. 17, 2016; 8 pages.
USPTO Notice of Allowance for U.S. Appl. No. 14/976,580 dated Oct. 27, 2017; 4 pages.
USPTO Notice of Allowance for U.S. Appl. No. 14/976,580 dated Nov. 30, 2016; 5 pages.
USPTO Notice of Allowance for U.S. Appl. No. 15/453,492 dated Nov. 13, 2018; 5 pages.
USPTO Notice of Allowance for U.S. Appl. No. 15/455,393 dated Mar. 1, 2018; 5 pages.
Xerox, “Mesa Debugger Documentation,” Apr. 1979; Xerox Systems Development Department; Version 5.0, pp. 1-30; 33 pages.
Yahoo Answers:, “What is the meaning of cascade connection in electrical engineering?” retrieved on Aug. 7, 2015 from https://answers.yahoo.com/question/index?, 1 page.
USPTO Non-Final Rejection for U.S. Appl. No. 15/995,409 dated Sep. 30, 2019; 9 pages.
“An Analog PPL-Based Clock and Data Recovery Circuit with High Input Jitter Tolerance,” Sun, Reprinted from IEEE Journal of Solid-State Circuits, 1989; 4 pages.
“Electronic Circuit Protector-Circuit Breaker,” IBM Technical Disclosure Bulletin; vol. 36, Issue 8, Aug. 1, 1993; 1 page.
“PSoC designer: Integrated development environment, getting started 25-minute tutorial, version 1.0,” Cypress Microsystems., Cypress Microsystems, Inc. CMS10006A, Jul. 3, 2001; 25 pages.
“PSoC technology complete changes 8-bit MCU system design”, Cypress Microsystems, Inc. retrieved from <http>://www.archive.org/web/20010219005250/http://cypressmicro.com-/t . . . >, Feb. 19, 2001; 21 pages.
Andrews, “Roadmap for Extending IEEE 1149.1 for Hierarchical Control of Locally-Stored, Standardized command Set, Test Programs,” IEEE, 1994; 7 pages.
U.S. Appl. No. 15/453,492: “Microcontroller Programmable System on a Chip,” Warren S. Snyder et al., filed Mar. 8, 2017; 128 pages.
U.S. Appl. No. 15/455,393: “Microcontroller Programmable System on a Chip,” Warren S. Snyder et al., filed Mar. 10, 2017; 128 pages.
U.S. Appl. No. 15/995,409: “Microcontroller Programmable System on a Chip,” Warren S. Snyder et al., filed Jun. 1, 2018; 128 pages.
Ashok Bindra, “Programmable SoC Delivers a New Level of System Flexibility”; Electronic Design; Nov. 6, 2000; 11 pages.
Atmel Corporation: AT9OSC Summary: “Secure Microcontrollers for Smart Cards,” Oct. 1999; 7 pages.
Azim et al., “A Custom DSP Chip to Implement a Robot Motion Controller Proceedings of the IEEE Custom Integrated Circuits Conference,” May 1988, pp. 8.7-1-8.7.5; 6 pages.
Catthoor et al., “Architectural Strategies for an Application-Specific Synchronous Multiprocessor Environment,” IEEE transactions on Acoustics, Speech, and Signal Processing; vol. 36, No. 2, Feb. 1988, pp. 265-284; 20 pages.
Ching et al., “An In-Curcuit-Emulator for TMS320C25,” IEEE, 1994, pp. 51-56; 6 pages.
Cypress MicroSystem, Inc. “Cypress Customer Forums” retrieved from <http://www.cypress.com/forums/messageview>; Nov. 30, 2004; 1 page.
Cypress MicroSystem, Inc. “PsoC Designer: Integrated Development Environment User Guide”; Rev. 1.18; Sep. 8, 2003; 193 pages.
Cypress MicroSystems, Inc. “Cypress MicroSystems Unveils Programmable System-On-A-Chip for Embedded Internet, Communications, and Consumer Systems” Nov. 13, 2000; 3 pages.
Dahl et al., “Emulation of the Sparcle Microprocessor with the MIT Virtual Wires Emulation System,” 1994, IEEE, pp. 14-22; 9 pages.
Durham et al., “Circuit Architectures for High Linearity Monolithic Continuous-Time Filtering,” IEEE, 1992; 7 pages.
Durham et al., “High-Linearity Conitnuous-Time Filter in 5-V VLSI CMOS,” IEEE, 1992; 8 pages.
Durham et al., “Integrated Continuous-Time Balanced Filters for 16-bit DSP Interfaces,” IEEE, 1993; 6 pages.
Duvvuru et al., “Evaluation of a Branch Target Address Cache,” 1995, IEEE, pp. 173-180; 8 pages.
Ebeling et al., “Validating VLSI Circuit Layout by Wirelist Comparison,” Sep. 1983, In the Proceedings of the IEEE International Conference on Computer Aided Design (ICCAD-83), pp. 172-173; 2 pages.
Ebling, “Gemini II: A Second Generation Layout Validation Program;” 1988; in proceedings of the IEEE International Conference on Computer Aided Design (ICCAD-88); 4 pages.
EPO Examination Report for Application No. 01125564.3-1221 dated May 18, 2018; 12 pages.
Frank Goodenough, “Analog Counterparts of FPGAS Ease System Design,” Electronic Design, Penton Publishing, Cleveland, OH, Oct. 14, 1994, vol. 42, No. 21, pp. 63-66, 68; 10 pages.
Haberl et al., “Self Testable Boards with Standard IEEE 1149.5 Module Test and Maintenance (MTM) Bus Interface,” IEEE, 1994; 6 pages.
Hamblen, “Rapid Prototyping Using Field-Programmable Logic Devices” Jun. 2000, IEEE; 9 pages.
Hintz et al., “Microcontrollers,” 1992, McGraw-Hill, pp. 29-37; 11 pages.
Karayiannis et al., “Using XML for Representation and Visualization of Elaborated VHDL-AMS Models,” Oct. 2000, IEEE, VHDL International Users Forum Fall Workshop, Proceedings, pp. 83-87.
Khan et al.; “FPGA Architectures for Asic Hardware Emulators”; IEEE 1993, pp. 336-340; 5 pages.
Miguel, “Implementation of a Universal Boot Monitor for an ARM-Based System,” May 2005, TU Berlin, Germany, Thesis, Chapter 4: pp. 53-100.
Ohlrich et al., “Sub-Gemini: Identifying Subcircuits using a Fast Subgraph Isomorphism Algorithm;” Jun. 1993; in proceedings of the 30th IEEE/ACM Design Automation Conference; 7 pages.
Pastermak et al.; “In-Circuit-Emulation in ASIC Architecture Core Designs,” IEEE, 1989, pp. P6-4.1-P6-4A; 4 pages.
Robert A. Blauschild, “WP 3.5: An Integrated Time Reference,” ISSCC94/Session 3, Analog Techniques/Paper WP 3.5, Feb. 1994, pp. 56-58; 4 pages.
Robinson, Gordon D., “Why 1149.1 (JTAG) Really Works”, May 1994, Conference Proceedings Electro/94 International, May 10-12, 1994, Combined Volumes, pp. 749-754; 6 pages.
Sedra, Adel S. et al., “Microelectronic Circuits,” 3rd Edition, Oxford University Press, pp. xiii-xx and 861-883, 1991; 20 pages.
Stephen Walters, “Computer-Aided Prototyping for ASIC-Based Systems,” 1991, IEEE Design & Test of Computers, vol. 8, Issue 2, pp. 4-10; 8 pages.
Texas Instruments, “TXS320C6000 Optimizing Compiler User's Guide,” Apr. 2001, Texas Instruments, Chapter 1: pp. 1-7 and Chapter 2: pp. 1-44.
USPTO Advisory Action for U.S. Appl. No. 09/998,848 dated Feb. 24, 2010; 3 pages.
USPTO Advisory Action for U.S. Appl. No. 09/998,848 dated Sep. 7, 2005; 3 pages.
USPTO Advisory Action for U.S. Appl. No. 11/799,439 dated Mar. 20, 2009; 3 pages.
USPTO Advisory Action for U.S. Appl. No. 13/211,329 dated Jan. 15, 2015; 2 pages.
USPTO Advisory Action for U.S. Appl. No. 13/211,329 dated May 1, 2014; 2 pages.
USPTO Advisory Action for U.S. Appl. No. 13/211,329 dated Aug. 6, 2018; 4 pages.
USPTO Advisory Action for U.S. Appl. No. 13/211,329 dated Aug. 8, 2016; 2 pages.
USPTO Advisory Action for U.S. Appl. No. 13/211,329 dated Sep. 14, 2017; 2 pages.
USPTO Advisory Action for U.S. Appl. No. 13/211,329 dated Oct. 29, 2015; 3 pages.
USPTO Final Rejection for U.S. Appl. No. 09/998,848 dated Jun. 14, 2005; 17 pages.
USPTO Final Rejection for U.S. Appl. No. 09/998,848 dated Jul. 25, 2006; 16 pages.
USPTO Final Rejection for U.S. Appl. No. 09/998,848 dated Aug. 10, 2007; 14 pages.
Related Publications (1)
Number Date Country
20190034175 A1 Jan 2019 US
Continuations (2)
Number Date Country
Parent 13211329 Aug 2011 US
Child 16152551 US
Parent 09998848 Nov 2001 US
Child 13211329 US