PATENTS   
Patents > Guidance, Tools, and Manuals >> Classification >>> Class Definition
    Class Numbers & Titles   | Class Numbers Only   | USPC Index   | International   | HELP  
You are viewing a Class definition.

 [Search a list of Patent Appplications for class 712]   CLASS 712,ELECTRICAL COMPUTERS AND DIGITAL DATA PROCESSING SYSTEMS: PROCESSING ARCHITECTURES AND INSTRUCTION PROCESSING (E.G., PROCESSORS)
Click here for a printable version of this file

SECTION I - CLASS DEFINITION

This class provides, within a computer or digital data processing system, for subject matter represented by a particular arrangement that includes at least one of the following means: A) components of an individual complete processor, which may be formed on a single integrated circuit (IC); B) components of a complete digital data processing system; C) plural processors; or D) plural digital data processing systems; wherein the particular arrangement further includes at least one of the following functions:

1) processing instruction data for specific processor architectures;

2) accessing or retrieving instruction data of a fixed or variable length from a buffer or other memory and shifting the instruction data to align it with a physical boundary of a buffer or other memory;

3) locating and retrieving instruction data for processing;

4) determining via internal hardware, firmware or software operations the meaning of operation codes, control bits, or operands of instruction data;

5) dispatching instruction data for execution (e.g., designating a register after resolving data conflicts);

6) dynamically testing instruction data and operands to assess conflicts related to data or hardware-resource availability (e.g., identifying data dependencies or utilization conflicts, attempting to resolve such dependencies or conflicts, or both); and

7) dynamically controlling the execution, processing, or sequencing of instruction data within a processor.

SECTION II - NOTES TO THE CLASS DEFINITION

(1) Note. Instruction data are defined in the glossary for this class to be data representative of an operation and identifying its operands, if any.
(2) Note. Process and apparatus for processing instruction data that are classified herein are predicated on a particular, identifiable architecture of a computer or digital data processing system that directs the nature of the processing. Multiple computer and process coordinating (e.g., task management, task control) is classified elsewhere. See SEE OR SEARCH CLASS notes below.
(3) Note. Register level transactions at the level of the arithmetic logic unit (ALU-level) or functional unit (FU-level) and logic for realizing such transactions are often a part of instruction processing, per se. General purpose, digital logic circuits, however, are classified elsewhere. See SEE OR SEARCH CLASS notes below.
(4) Note. Exceptions, interrupts, and traps classified herein recite the details of the internal operation of the hardware or the microcode of the processor with only nominal recitation of the stimulus resulting in the exception, interrupt or trap. Process and apparatus for queuing or scheduling interrupts or signals in a computer or digital data processing system are classified elsewhere. See SEE OR SEARCH CLASS notes below. Process and apparatus directed to reliability and testing utilizing halts, interrupts, and traps are also classified elsewhere. See SEE OR SEARCH CLASS notes below.
(5) Note. Virtual machine or virtual processor is classified elsewhere. See SEE OR SEARCH CLASS notes below.
(6) Note. Process and apparatus for dynamically aligning instruction data are classified herein. Process and apparatus for shifting memory spaces, such as, boundary alignment related to memory addressing and page mapping are classified elsewhere. See SEE OR SEARCH CLASS notes below. Compilers performing static alignment are classified elsewhere. See SEE OR SEARCH CLASS notes below. Process and apparatus for aligning for data entry or compacting in cache memory typically are classified elsewhere. See SEE OR SEARCH CLASS notes below.
(7) Note. Emulation for decoding instruction data for execution is classified herein; however, emulation of system component for compatibility is classified elsewhere. See SEE OR SEARCH CLASS notes below. Emulation directed to testing is also classified elsewhere. See SEE OR SEARCH CLASS notes below.
(8) Note. Process and apparatus for locating and retrieving instruction data in direct support of an instruction pipeline are classified herein; however, process and apparatus for accessing and controlling memory at other higher levels (e.g., cache memory, disk memory, and shared memory) are classified elsewhere. See SEE OR SEARCH CLASS notes below.
(9) Note. Process and apparatus nominally reciting addressing schemes and address data generation may be classified herein; however, process and apparatus for generalized address forming, addressing operands, generating addresses in response to microinstructions, and addressing in combination with particular memory systems are classified elsewhere. See SEE OR SEARCH CLASS notes below.
(10) Note. Process and apparatus for decoding instruction data to determine their meaning for subsequent execution or decision making are classified herein; however, generic decoding circuits, methods, and programs are classified elsewhere. See SEE OR SEARCH CLASS notes below.
(11) Note. Process and apparatus for issuing or dispatching of instruction data to hardware elements internal to a processor for decoding or executing are classified herein; however, process and apparatus for dispatching in the field of process control for task management dealing with process scheduling, load balancing, etc., are classified elsewhere. See SEE OR SEARCH CLASS notes below.
(12) Note. Process and apparatus for dynamically controlling the issuance or execution of instruction data based on analysis of hardware-resource availability, hardware-resource utilization, and data dependency are classified herein; however, processes and apparatus for task resource management are classified elsewhere. See SEE OR SEARCH CLASS notes below. Dependency checking performed by a compiler is classified elsewhere. See SEE OR SEARCH CLASS notes below. Process and apparatus for enhancing the reliability and availability of functional units that include determining a fault condition are classified elsewhere. See SEE OR SEARCH CLASS notes below.
(13) Note. Process and apparatus for dealing with resource management problems within a stream of instruction data, generally at the ALU/functional-unit level are classified herein; however, process and apparatus for resource management in a manufacturing environment are classified elsewhere. See the SEE OR SEARCH CLASS notes below.
(14) Note. Process and apparatus for reserving the use of functional units at the instruction level of a computer or digital data processing system are classified herein; however, processes and apparatus for reserving seats for travel, entertainment, etc. are classified elsewhere. See SEE OR SEARCH CLASS notes below.
(15) Note. Process and apparatus utilizing hardware or microcode for processing and executing instruction data are classified herein; however, instruction processing being performed by a compiler, by an interpreter, or by an operating system is classified elsewhere. See SEE OR SEARCH CLASS notes below. Process and apparatus for high-level processing of input/output commands are classified elsewhere. See SEE OR SEARCH CLASS notes below. Process and apparatus for the sequencing common in computerized numerical controllers (CNC), industrial controllers, computer driven machining, etc., is classified elsewhere. See SEE OR SEARCH CLASS notes below.
(16) Note. Hardwired sequencers are also often referred to as sequential state machines in the art. They are appropriately classified herein when they are performing control or sequencing of instruction data within a processor.
(17) Note. Process and apparatus for graphic command processing are classified elsewhere. See SEE OR SEARCH CLASS notes below.

SECTION III - REFERENCES TO OTHER CLASSES

SEE OR SEARCH CLASS:

326Electronic Digital Logic Circuitry,   appropriate subclasses for generic digital logic devices, circuitry, and subcombinations thereof, wherein nonarithmetical operations are performed upon discrete electrical signals representing a value normally described by numerical digits, particularly subclasses 37+ for programmable circuits such as Programmable Logic Arrays (PLA) and subclasses 105+ for decoding circuitry.
340Communications: Electrical,   subclasses 1.1 through 16.1for controlling one or more devices to obtain a plurality of results by transmission of a designated one of plural distinctive control signals over a smaller number of communication lines or channels, particularly subclasses 2.1-2.8 for path selection, subclass 2.81 for tree or cascade selective communication, subclasses 3.1-3.9 for communication systems where status of a controlled device is communicated, subclasses 4.1-4.14 for synchronizing selective communication systems, subclasses 9.1-9.17 for selective communication addressing, subclasses 12.1-12.55 for pulse responsive actuation, and subclasses 14.1-14.69 for selective decoder matrix.
345Computer Graphics Processing and Selective Visual Display Systems,   particularly subclasses 502+ for a computer graphic processor system which includes plural graphics processors, subclass 522 for graphic command processing
370Multiplex Communications,   appropriate subclasses for the simultaneous transmission of two or more signals over a common medium, particularly subclasses 254+ for network configuration determination, subclasses 351+ for path finding or routing including packet switching, circuit switching, ATM switching, and subclasses 465+ for adaptive communication protocol.
377Electrical Pulse Counters, Pulse Dividers, or Shift Registers: Circuits and Systems,   various subclasses for generic circuits for pulse counting.
380Cryptography,   appropriate subclasses for cryptographic apparatus or process in general which includes electric signal modification.
381Electrical Audio Signal Processing Systems and Devices,   various subclasses for wired one-way audio systems, per se.
700Data Processing: Generic Control Systems or Specific Applications,   subclasses 1 through 89for generic data processing control systems and subclasses 90-306 for specific data processing application.
701Data Processing: Vehicles, Navigation, and Relative Location,   subclasses 1+ for vehicle control, guidance, operation, or indication, subclasses 400-541 for navigation, and subclasses 300+ for relative location determination.
702Data Processing: Measuring, Calibrating or Testing,   appropriate subclasses for testing measuring or calibrating, particularly subclass 186 for computer and peripheral benchmarking.
703Data Processing: Structural Design, Modeling, Simulation, and Emulation,   appropriate subclasses.
704Data Processing: Speech Signal Processing, Linguistics, Language Translation, and Audio Compression/Decompression,   subclasses 1+ for linguistics; subclasses 200+ for speech audio processing, subclasses 500 through 504 for audio signal time or bandwidth compression or expansion.
705Data Processing: Financial, Business Practice, Management, or Cost/Price Determination,   particularly subclasses 5+ for reservation, check-in, and booking for reserving space, subclasses 7.13 through 7.26 for scheduling and allocating resources for administrative functions, and subclasses 64 through 79 for a cryptographically protected EFT transaction.
706Data Processing: Artificial Intelligence,   subclasses 1+ for fuzzy logic hardware; subclass 10 for plural processing intelligence systems, subclass 11 for artificial intelligence system having particular user interface; subclasses 12+ for machine learning system, subclass 14 for adaptive system; subclasses 15+ for neural network; and subclasses 45+ for knowledge processing system.
707Data Processing: Database, Data Mining, and File Management or Data Structures,   particularly subclasses 781 through 789for access control to a database or file in a computer environment and subclasses 790 through 812 for database design including data structures and data structure management and subclasses 813 through 820 for garbage collection in database environments and subclasses 821 through 831 for file management, file systems and file directory structures.
708Electrical Computers: Arithmetic Processing and Calculating,   subclasses 1+ for electrical hybrid calculating computer, subclasses 100+ for electrical digital calculating computer, and subclasses 800+ for electrical analog calculating computer.
709Electrical Computers and Digital Processing Systems: Multicomputer Data Transferring,   appropriate subclassesfor transferring data between plural, spatially distributed computers or digital data processing systems.
710Electrical Computers and Digital Data Processing Systems: Input/Output,   appropriate subclasses for interconnecting or transferring data among processors, memories, and peripherals for of computers or digital data processing systems particularly subclasses 260+ for interrupt processing.
711Electrical Computers and Digital Processing Systems: Memory,   subclasses 1+ for addressing in combination with particular memory systems; particularly subclass 2 for addressing extended or expanded memory; subclass 5 for addressing multiple memory modules; subclasses 101+ for accessing and control of specific memory compositions; subclasses 118+ for cache memory; subclasses 147+ for shared memory access and control; subclass 159 for memory entry replacement strategies; subclass 201 for address generation directed to slip control, misalignment, and boundary alignment; subclass 209 for page address generation processing; and subclass 212 for address generation by varying bit-length or size; subclass 214 for operand address generation; and subclass 215 for address formation in response to a microinstruction;
713Electrical Computers and Digital Processing Systems: Support,   subclasses 1 and 2 for computer initialization or configuration; subclass 100 for reconfiguration; subclasses 150-181 for multiple computer communication protection by cryptography; subclass 187 for computer program modification detection by cryptography, subclass 188 for computer virus detection by cryptography; subclasses 300-340 for computer power control; and subclasses 400-601 for synchronization or clock control in a digital data processing.
714Error Detection/Correction and Fault Detection /Recovery,   particularly subclass 707 for synchronization control using an error rate; subclass 731 for a reference timing function or a clock pulse generator in a scan path testing system; subclass 744 for clock or synchronization in digital logic testing using a test pattern generator; and subclass 798 for error detection for synchronization control.
715Data Processing: Presentation Processing of Document, Operator Interface Processing, and Screen Saver Display Processing,   appropriate subclassesfor document presentation processing.
716Computer-Aided Design and Analysis of Circuits and Semiconductor Masks,   appropriate subclasses.
717Data Processing: Software Development, Installation, and Management,   appropriate subclasses for a software development tool, particularly, subclasses 140 through 161for compilers and compiler-related dependency checking.
718Electrical Computers and Digital Processing Systems: Virtual Machine Task or Process Management or Task Management/Control,   appropriate subclasses for task management or task control, particularly subclass 106 for dependency based cooperative processing of multiple programs working together to accomplish a larger task.
726Information Security,   subclasses 1 through 36for information security in computers or digital processing system.

SECTION IV - GLOSSARY

BUS

A conductor used for transferring data, signals, or power.

COMPUTER

A machine that inputs data, processes data, stores data, and outputs data.

DATA

Representation of information in a coded manner suitable for communication, interpretation, or processing.

Address data-Data that represent or identify a source or destination.

Instruction data-Data that represent an operation and identify its operands, if any.

Status data-Data that represent conditions of data, digital data processing systems, computers, peripherals, memory, etc.

User data-Data other than address data, instruction data, or status data.

DATA PROCESSING

See PROCESSING, below.

DIGITAL DATA PROCESSING SYSTEM

An arrangement of processor(s) in combination with either memory or peripherals, or both, performing data processing.

ERROR

Manifestation of a fault as an undesired event that occurs when actual behavior deviates from the behavior that is required by initial specifications.

FAILURE

Manifestation of an error as a nonperformance of an expected system service as required by the initial specifications.

FAULT

A flaw in a functional unit (hardware or software).

INFORMATION

Meaning that a human being assigns to data by means of the conventions applied to that data.

MEMORY

A functional unit to which data can be stored and from which data can be retrieved.

PERIPHERAL

A functional unit that transmits data to or receives data from a computer to which it is coupled.

PROCESSING

Methods or apparatus performing systematic operations upon data or information exemplified by functions such as data or information transferring, merging, sorting, and computing (i.e., arithmetic operations or logical operations).

(1) Note.In this class, the glossary term data is used to modify processing in the term data processing; whereas the term digital data processing system refers to a machine performing data processing.
(2) Note.In an effort to avoid redundant constructions, in this class, where appropriate, the term address data processing is used in place of address data data processing.

PROCESSOR

A functional unit that interprets and executes instruction data.

RECOVERY

Responding to a fault in a system by either returning a system to a previous level of correct operation, achieving a degraded level of correct operation, or safely shutting down the system.

SECURITY

Extent of protection for system hardware, software, or data from maliciously caused destruction, unauthorized modification, or unauthorized disclosure.

SUBCLASSES

[List of Patents for class 712 subclass 1]    1PROCESSING ARCHITECTURE:
 This subclass is indented under the class definition.  Subject matter comprising a particular arrangement of (a) elements of an individual complete processor which may be formed on a single integrated chip, (b) components of a complete digital data processing system, (c) plural processing elements, (d) plural processors, or (e) plural digital data processing systems where processing is performed on a generic instruction or process.
(1) Note. This subclass and its indents require more than nominal recitation of the architecture of processing elements or operations.
(2) Note. Implementation of a generic instruction within a particular instruction set is classified here.
(3) Note. Architecture based instruction processing including specific instruction implementation, such as, branching, store multiple, etc. are classified elsewhere. See SEE OR SEARCH THIS CLASS, SUBCLASS notes below.

SEE OR SEARCH THIS CLASS, SUBCLASS:

200+,for architecture based instruction processing including specific instruction implementation, such as, branching, store multiple, etc.

SEE OR SEARCH CLASS:

340Communications: Electrical,   subclasses 1.1 through 16.1for controlling one or more devices to obtain a plurality of results by transmission of a designated one of plural distinctive control signals over a smaller number of communication lines or channels, particularly subclasses 2.1-2.8 for path selection, subclass 2.81 for tree or cascade selective communication, subclasses 3.1-3.9 for communication systems where status of a controlled device is communicated, subclasses 4.1-4.14 for synchronizing selective communication systems, subclasses 9.1-9.17 for selective communication addressing, subclasses 14.1-14.69 for selective decoder matrix, and subclasses 12.1-12.55 for pulse responsive actuation.
345Computer Graphics Processing and Selective Visual Display Systems,   subclasses 502+ , for a computer graphic processor system which includes plural graphics processors.
370Multiplex Communications,   for the simultaneous transmission of two or more signals over a common medium where the transmitted data is generic to the transmission activity, particularly subclasses 351+ for time division multiplex (TDM) switching, subclasses 475 for asynchronous TDM communications including addressing, and subclasses 498+ for time division bus transmission.
700Data Processing: Generic Control Systems or Specific Applications,   subclass 249 for plural processor robot control.
708Electrical Computers: Arithmetic Processing and Calculating,   subclasses 100+ and particularly subclasses 200+ for an electric digital calculating computer which may utilize processor structure similar to that contained herein.
709Electrical Computers and Digital Processing Systems: Multicomputer Data Transferring,   appropriate subclassesfor data transfer between plural spatially distributed computers or digital data processing systems.
710Electrical Computers and Digital Data Processing Systems: Input/Output,   subclasses 100+ for particular intrasystem connecting (e.g., bus transaction processing) not included in a particular processing architecture, and subclasses 260+ for general interrupt processing.
717Data Processing: Software Development, Installation, and Management,   subclasses 149 and 150 for program code translating or compiling for multiprocessor system.
  
[List of Patents for class 712 subclass 2]    2Vector processor:
 This subclass is indented under subclass 1.  Subject matter including specificadaptation of the architecture or structure which operates on one-dimensional data arrays.

SEE OR SEARCH THIS CLASS, SUBCLASS:

10+,for array processor architecture, in general.

SEE OR SEARCH CLASS:

708Electrical Computers: Arithmetic Processing and Calculating,   subclasses 100+ and particularly subclasses 200+ for an electric digital calculating computer which may utilize processor structure similar to that contained herein.
  
[List of Patents for class 712 subclass 3]    3Scalar/vector processor interface:
 This subclass is indented under subclass 2.  Subject matter which includes an intermediate structure linking a scalar processor with a vector processor.
  
[List of Patents for class 712 subclass 4]    4Distributing of vector data to vector registers:
 This subclass is indented under subclass 2.  Subject matter involving structure providing vector data transfer to vector registers.

SEE OR SEARCH CLASS:

709Electrical Computers and Digital Processing Systems: Multicomputer Data Transferring,   appropriate subclassesfor data transfer between plural complete spatially distributed computers or digital data processing systems.
  
[List of Patents for class 712 subclass 5]    5Masking to control an access to data in vector register:
 This subclass is indented under subclass 4.  Subject matter which is directed to specific structure or operation to screen out access to a particular location in a vector register.
  
[List of Patents for class 712 subclass 6]    6Controlling access to external vector data:
 This subclass is indented under subclass 2.  Subject matter wherein access to external vector processing data is regulated.
  
[List of Patents for class 712 subclass 7]    7Vector processor operation:
 This subclass is indented under subclass 2.  Subject matter wherein functioning of the vector processor is specified.
  
[List of Patents for class 712 subclass 8]    8Sequential:
 This subclass is indented under subclass 7.  Subject matter wherein a vector processing is performed in program order.
  
[List of Patents for class 712 subclass 9]    9Concurrent:
 This subclass is indented under subclass 7.  Subject matter wherein multiple vector instructions are issued simultaneously.
  
[List of Patents for class 712 subclass 10]    10Array processor:
 This subclass is indented under subclass 1.  Subject matter comprising four or more identical processing elements (e.g., cells) joined in a two-dimensional or higher arrangement.

SEE OR SEARCH CLASS:

708Electrical Computers: Arithmetic Processing and Calculating,   subclasses 100+ and particularly subclasses 200+ for an electric digital calculating computer which may utilize processor structure similar to that contained herein.
  
[List of Patents for class 712 subclass 11]    11Array processor element interconnection:
 This subclass is indented under subclass 10.  Subject matter including details of a structure which mutually joins the identical processing elements.

SEE OR SEARCH CLASS:

710Electrical Computers and Digital Data Processing Systems: Input/Output,   subclasses 100+ for particular intrasystem connecting (e.g., bus transaction processing) not included in a particular array processing architecture.
  
[List of Patents for class 712 subclass 12]    12Cube or hypercube:
 This subclass is indented under subclass 11.  Subject matter wherein the identical processing elements are joined in a 3-or - greater dimensional pattern.
  
[List of Patents for class 712 subclass 13]    13Partitioning:
 This subclass is indented under subclass 11.  Subject matter which controls the structure joining the processing elements by partitioning the array into groups of processing elements.

SEE OR SEARCH CLASS:

711Electrical Computers and Digital Processing Systems: Memory,   subclass 129 for partitioned cache accessing and control.
  
[List of Patents for class 712 subclass 14]    14Processing element memory:
 This subclass is indented under subclass 11.  Subject matter which controls the structure joining the memory within an individual array processor element or associated with an individual array processor element.
  
[List of Patents for class 712 subclass 15]    15Reconfiguring:
 This subclass is indented under subclass 11.  Subject matter wherein an existing structure joining the array processing elements is modified.

SEE OR SEARCH CLASS:

709Electrical Computers and Digital Processing Systems: Multicomputer Data Transferring,   subclasses 221+ for reconfiguring in a multi-computer data transfer network.
710Electrical Computers and Digital Data Processing Systems: Input/Output,   subclass 104 for intra-system configuring not included in a particular processing architecture.
713Electrical Computers and Digital Processing Systems: Support,   subclass 100 for reconfiguring (e.g., changing system setting) in a digital data processing system.
  
[List of Patents for class 712 subclass 16]    16Array processor operation:
 This subclass is indented under subclass 10.  Subject matter wherein a specific function or process performed by the array processor is specified.
  
[List of Patents for class 712 subclass 17]    17Application specific:
 This subclass is indented under subclass 16.  Subject matter wherein overall operation or process of the array processor is directed toward a particular purpose.
(1) Note. Included here, for example, is generic pattern matching not elsewhere provided for.
(2) Note. Pattern matching for image processing is classified elsewhere.

SEE OR SEARCH CLASS:

382Image Analysis,   appropriate subclasses and particularly subclasses 181+ for image analysis pattern recognition.
  
[List of Patents for class 712 subclass 18]    18Data flow array processor:
 This subclass is indented under subclass 16.  Subject matter wherein the array processor performs a calculation when all required data is present (data-driven).
(1) Note. This would include a wavefront array processor.

SEE OR SEARCH THIS CLASS, SUBCLASS:

25,for a generic data flow processor.
201,for architecture based data flow instruction processing including specific instruction implementation.
  
[List of Patents for class 712 subclass 19]    19Systolic array processor:
 This subclass is indented under subclass 16.  Subject matter wherein data moves between the identical processing elements in accordance with a global reference timing signal.
  
[List of Patents for class 712 subclass 20]    20Multimode (e.g., MIMD to SIMD, etc.):
 This subclass is indented under subclass 16.  Subject matter wherein the array processor may switch between plural operating modes.
(1) Note. This might include, for example, an initial MIMD mode which subsequently changes to an SIMD mode.
  
[List of Patents for class 712 subclass 21]    21Multiple instruction, multiple data (MIMD):
 This subclass is indented under subclass 16.  Subject matter wherein the array processor operates in a multiple instruction, multiple data mode.
  
[List of Patents for class 712 subclass 22]    22SIMD:
 This subclass is indented under subclass 16.  Subject matter wherein the array processor operates in a single instruction, multiple data mode.
  
[List of Patents for class 712 subclass 23]    23Superscalar:
 This subclass is indented under subclass 1.  Subject matter comprising an architecture which determines a group of upcoming instructions which do not mutually interfere with each other and issues or dispatches this group simultaneously.
(1) Note. Excluded herein is specific instruction implementation such as branching, store multiple, etc. See SEE OR SEARCH THIS CLASS, SUBCLASS: notes below.
(2) Note. Implementation of a generic instruction within a particular instruction set is classified here.

SEE OR SEARCH THIS CLASS, SUBCLASS:

215,for simultaneous issuance of multiple instructions including specific instruction implementation.
  
[List of Patents for class 712 subclass 24]    24Long instruction word:
 This subclass is indented under subclass 1.  Subject matter comprising an architecture which includes compiler scheduled issuing of multiple opcodes per instruction.
(1) Note. Excluded herein is the specifics of the compiler.

SEE OR SEARCH THIS CLASS, SUBCLASS:

215,for simultaneous issuance of multiple instructions including specific instruction

SEE OR SEARCH CLASS:

717Data Processing: Software Development, Installation, and Management,   subclasses 140 through 161for a compiler in a software development system.
  
[List of Patents for class 712 subclass 25]    25Data driven or demand driven processor:
 This subclass is indented under subclass 1.  Subject matter wherein a plural processor structure performs a calculation when all required data is present (data-driven) or when other processors request a calculation result (demand-driven).

SEE OR SEARCH THIS CLASS, SUBCLASS:

18,for data flow array processor.
201,for architecture based data flow instruction processing including specific instruction implementation.
  
[List of Patents for class 712 subclass 26]    26Detection/pairing based on destination, ID tag, or data:
 This subclass is indented under subclass 25.  Subject matter which is directed to specific structure or operation to perform detecting or pairing dependent upon intended destination, a particular identification tag or data itself.
  
[List of Patents for class 712 subclass 27]    27Particular data driven memory structure:
 This subclass is indented under subclass 25.  Subject matter including a data driven interface with specific memory structure to enhance the data flow capability of the processor.

SEE OR SEARCH CLASS:

711Electrical Computers and Digital Processing Systems: Memory,   subclasses 100+ for particular storage accessing and control.
  
[List of Patents for class 712 subclass 28]    28Distributed processing system:
 This subclass is indented under subclass 1.  Subject matter including a particular architecture having two or more physically separate processors performing different tasks with shared resources such that their combined work contribute to a common goal.
(1) Note. Subject matter including a distributed processing system having significant multicomputer data transfer is classified elsewhere. See SEE OR SEARCH CLASS below.
(2) Note. Subject matter including a computer task management or control system having significant process scheduling is classified elsewhere. See SEE OR SEARCH CLASS below.

SEE OR SEARCH CLASS:

709Electrical Computers and Digital Processing Systems: Multicomputer Data Transferring,   subclass 201 for distributed data processing having significant multicomputer data transfer.
718Electrical Computers and Digital Processing Systems: Virtual Machine Task or Process Management or Task Management/Control,   subclasses 102 through 108for process scheduling in a computer task management or control system.
  
[List of Patents for class 712 subclass 29]    29Interface:
 This subclass is indented under subclass 28.  Subject matter wherein details of an interconnection which mutually joins the processors are provided.
  
[List of Patents for class 712 subclass 30]    30Operation:
 This subclass is indented under subclass 28.  Subject matter wherein functioning of the processors is specified.
  
[List of Patents for class 712 subclass 31]    31Master/slave:
 This subclass is indented under subclass 30.  Subject matter wherein the physically separate processors include a primary processor (master) controlling the operation of a secondary processor (slave).
(1) Note. Controlling of data transfer between master/slave processors is classified elsewhere.

SEE OR SEARCH CLASS:

345Computer Graphics Processing and Selective Visual Display Systems,   subclass 504 for a computer graphic processing system including master/slave processors.
709Electrical Computers and Digital Processing Systems: Multicomputer Data Transferring,   subclasses 208+ for specific data transferring in a master/slave computer.
710Electrical Computers and Digital Data Processing Systems: Input/Output,   subclass 110 for bus master/slave controlling.
  
[List of Patents for class 712 subclass 32]    32Microprocessor or multichip or multimodule processor having sequential program control:
 This subclass is indented under subclass 1.  Subject matter comprising a CPU on a single integrated circuit chip or on plural integrated chips or in plural discrete units which provide serial processing.

SEE OR SEARCH CLASS:

345Computer Graphic Processing and Selective Visual Display Systems,   subclass 519 for a computer graphic processing system on integrated chip.
708Electrical Computers: Arithmetic Processing and Calculating,   subclasses 100+ and particularly subclasses 200+ for an electric digital calculating computer which may utilize processor structure similar to that contained herein.
  
[List of Patents for class 712 subclass 33]    33Having multiple internal buses:
 This subclass is indented under subclass 32.  Subject matter comprising an internal structure having plural buses.
  
[List of Patents for class 712 subclass 34]    34Including coprocessor:
 This subclass is indented under subclass 32.  Subject matter including an auxiliary processor which provides a supplemental function for or other assistance to a primary processor.
(1) Note. Details of the application or algorithm performed on the coprocessor are classified elsewhere. See, for example, SEE OR SEARCH CLASS below.

SEE OR SEARCH CLASS:

345Computer Graphics Processing and Selective Visual Display Systems,   subclass 503 for a computer graphic processing system which includes a coprocessor.
  
[List of Patents for class 712 subclass 35]    35Digital Signal Processor:
 This subclass is indented under subclass 34.  Subject matter wherein the auxiliary processor is particularly configured to perform high speed data manipulations.
(1) Note. Details of the application or algorithm performed on the Digital Signal Processor are classified elsewhere. See, for example, SEE OR SEARCH CLASS below.

SEE OR SEARCH CLASS:

708Electrical Computers: Arithmetic Processing and Calculating,   subclasses 100+ for an electric digital calculating computer.
  
[List of Patents for class 712 subclass 36]    36Application specific:
 This subclass is indented under subclass 32.  Subject matter wherein the processor is generically adapted for a particular purpose.
(1) Note. Details of the application or algorithm performed on the processor are classified elsewhere.
  
[List of Patents for class 712 subclass 37]    37Programmable (e.g., EPROM):
 This subclass is indented under subclass 32.  Subject matter wherein operation of the processor may be externally modifiable.

SEE OR SEARCH CLASS:

713Electrical Computers and Digital Processing Systems: Support,   subclasses 1+ for digital data processing system initialization and configuration.
  
[List of Patents for class 712 subclass 38]    38Offchip interface:
 This subclass is indented under subclass 32.  Subject matter wherein particular internal structure of the processor is provided which allows interfacing from the processor to an external device.

SEE OR SEARCH CLASS:

710Electrical Computers and Digital Data Processing Systems: Input/Output,   subclass 1 for input/output data processing and subclasses 305-317 for interface architecture intra-system connection.
  
[List of Patents for class 712 subclass 39]    39Externally controlled internal mode switching via pin:
 This subclass is indented under subclass 38.  Subject matter wherein an internal processor mode may be changed by an external means connected to the processor by an electrical contact.
  
[List of Patents for class 712 subclass 40]    40External sync or interrupt signal:
 This subclass is indented under subclass 38.  Subject matter wherein the processor receives a synchronization or interrupt signal from an outside source.

SEE OR SEARCH CLASS:

710Electrical Computers and Digital Data Processing Systems: Input/Output,   subclasses 260+ for interrupt processing in general.
713Electrical Computers and Digital Processing Systems: Support,   subclass 375 for synchronization of plural processors.
  
[List of Patents for class 712 subclass 41]    41RISC:
 This subclass is indented under subclass 32.  Subject matter wherein the set of processing instructions available is relatively small and rapidly executable (i.e., Reduced Instruction Set Computing) and a new instruction is fetched during the time when a previous instruction is executed.
  
[List of Patents for class 712 subclass 42]    42Operation:
 This subclass is indented under subclass 32.  Subject matter wherein specific functioning of the processor is recited.
  
[List of Patents for class 712 subclass 43]    43Mode switching:
 This subclass is indented under subclass 42.  Subject matter wherein an ability to change between multiple processor operating modes is recited.
  
[List of Patents for class 712 subclass 200]    200ARCHITECTURE BASED INSTRUCTION PROCESSING:
 This subclass is indented under the class definition.  Subject matter including instruction data processing for particular processor architectures.
(1) Note. Instruction data are defined in the glossary for this class to be data representative of an operation and identifying its operands, if any.
(2) Note. Instruction processing classified here is predicated on a particular identifiable digital data processing system architecture directing the nature of the instruction processing. Processing control, however, is classified elsewhere. See SEARCH THIS CLASS,SUBCLASS below.
(3) Note. This subclass is for instruction processing forced in a certain direction by an overall processing architecture. Digital data processing system architectures and computer architectures, per se, are classified elsewhere. See SEE OR SEARCH THIS CLASS, SUBCLASS: below.
(4) Note. Register level transactions at the arithmetic logic unit level (ALU-level) or functional unit level (FU-level) and logic for realizing such transactions are often a part of instruction processing, per se. However, general purpose digital logic circuits are classified elsewhere. See SEE OR SEARCH CLASS below.
(5) Note. This subclass represents a "special" category of instruction processing dictated by an architectural construct. Instruction data processing in support of data transferring including special software interrupts, traps, and halts; non-logic and non-arithmetic functions are classified elsewhere. See SEE OR SEARCH THIS CLASS, SUBCLASS: below.

SEE OR SEARCH THIS CLASS, SUBCLASS:

1+,for digital data processing system architectures and computer architectures per se.
25,for instruction data processing in support of data transferring.
220+,for processing control, per se.
227,for special instruction data processing in support of testing, debugging, or emulation.
244,for software interrupts and traps.

SEE OR SEARCH CLASS:

326Electronic Digital Logic Circuitry,   appropriate subclasses for general purpose digital logic circuitry including programmable logic arrays (PLA).
708Electrical Computers: Arithmetic Processing and Calculating,   subclasses 100+ for details of logic circuits for performing arithmetic operations.
714Error Detection/Correction and Fault Detection/Recovery,   subclass 34 for fault locating using a halt, subclass 35 for fault locating using a substituted or added instruction.
717Data Processing: Software Development, Installation, and Management,   subclasses 100 through 173for software development environments and tools, per se.
  
[List of Patents for class 712 subclass 201]    201Data flow based system:
 This subclass is indented under subclass 200.  Subject matter wherein initiation of instruction execution is driven by availability of data required by the instruction.
(1) Note. This subclass is for data flow computing which generally utilizes tokens for asynchronous passing of instructions or data for execution by the appropriate unit.

SEE OR SEARCH THIS CLASS, SUBCLASS:

18,for data flow array processor.
25,for data flow computer architectures, per se.

SEE OR SEARCH CLASS:

709Electrical Computers and Digital Processing Systems: Multicomputer Data Transferring,   appropriate subclassesfor use of tokens in certain multi-computer arrangements.
  
[List of Patents for class 712 subclass 202]    202Stack based computer:
 This subclass is indented under subclass 200.  Subject matter wherein the architecture"s processor is based upon a stack model and all instruction data processing occurs through use of the stack.
(1) Note. The stack based computer includes, for example, HP 3000 computer.

SEE OR SEARCH THIS CLASS, SUBCLASS:

228,for context preservation.

SEE OR SEARCH CLASS:

709Electrical Computers and Digital Processing Systems: Multicomputer Data Transferring,   for pertinent subclass(es) as determined by schedule review.
  
[List of Patents for class 712 subclass 203]    203Multiprocessor instruction:
 This subclass is indented under subclass 200.  Subject matter including processing of an instruction specific for a plural processor computer architecture.

SEE OR SEARCH THIS CLASS, SUBCLASS:

28+,for a distributed processing system.
32+,for microprocessor or multichip or multimodule processor having sequential
  
[List of Patents for class 712 subclass 204]    204INSTRUCTION ALIGNMENT:
 This subclass is indented under the class definition.  Subject matter including accessing and retrieval of instruction data of a fixed or variable length from a memory or buffer and for shifting of such instruction data to align it with a physical memory or buffer boundary.
(1) Note. This subclass is for alignment of instruction data. Subject matter directed to the big endian/ little endian problem is properly classified here. Generic byte word order rearranging is classified elsewhere. See SEE OR SEARCH THIS CLASS, SUBCLASS below.
(2) Note. This subclass accepts shifting instruction data for alignment purposes. Shifting of memory spaces, such as boundary alignment related to memory addressing and page mapping, is classified elsewhere. See SEE OR SEARCH CLASS below.
(3) Note. Emulation techniques often rely on instruction alignment as part of an overall combination. This subclass accepts only nominal recitations to emulation in combination with instruction aligning. Emulation systems, per se, are classified elsewhere. See SEE OR SEARCH CLASS below.
(4) Note. This subclass accepts only nominal recitations to digital data processing system architectures and computer architectures, per se, where realignment of an instruction is occurring. Architecture-based instruction data processing in, for example, a superscalar processor is classified elsewhere. See SEE OR SEARCH THIS CLASS, SUBCLASS below.
(5) Note. Dynamic aligning of instruction data is proper for this subclass. Compilers performing "static" alignment functions are classified with software development tools. See SEE OR SEARCH CLASS below.
(6) Note. This subclass is directed to aligning instruction data. Aligning other data in, for example, cache memory is typically found elsewhere. See SEE OR SEARCH CLASS below.

SEE OR SEARCH THIS CLASS, SUBCLASS:

23,for superscalar processor.
200+,for architecture based instruction data processing.
210,for variable length instruction data decoding.
300,for generic byte-word order rearranging, bit-field insertion and extraction, and string length and sequence detecting.

SEE OR SEARCH CLASS:

703Data Processing: Structural Design, Modeling, Simulation, and Emulation,   appropriate subclasses.
711Electrical Computers and Digital Processing Systems: Memory,   subclass 2 for addressing extended or expanded memory, subclass 5 for addressing multiple memory modules, subclass 118 for cache memory accessing and control, per se, subclass 133 for cache memory entry replacement strategies, subclass 201 for address generation directed to slip control, misaligning and boundary alignment, subclass 209 for page address generation processing, subclass 212 for address generation by varying bit-length or size.
716Computer-Aided Design and Analysis of Circuits and Semiconductor Masks,   appropriate subclasses.
717Data Processing: Software Development, Installation, and Management,   subclasses 140 through 161for compilers, per se.
  
[List of Patents for class 712 subclass 205]    205INSTRUCTION FETCHING:
 This subclass is indented under the class definition.  Subject matter directed to locating and retrieval of instruction data for processing.
(1) Note. This subclass is concerned with locating and retrieving instruction data indirect support of an instruction pipeline. Memory accessing and control at other higher levels, such as, cache memory, disk memory and shared memory are classified elsewhere. See SEE OR SEARCH CLASS below.
(2) Note. This subclass only accepts nominal recitation of addressing schemes and address data generation. Address formation, addressing of operands, and address generation in response to a microinstruction is elsewhere. See SEE OR SEARCH CLASS below.
(3) Note. This subclass only accepts nominal recitation of addressing schemes and address data generation. Generalized address formation and addressing in combination with particular memory systems is classified elsewhere. See SEE OR SEARCH CLASS below.

SEE OR SEARCH CLASS:

710Electrical Computers and Digital Data Processing Systems: Input/Output,   subclasses 5+ for Input/Output data processing macro language and command processing
711Electrical Computers and Digital Processing Systems: Memory,   subclasses 1+ for addressing combined with specific memory configuration or system, subclasses 101+ for accessing and control of specific memory compositions, subclasses 118+ for cache memory, and subclasses 147+ for shared memory access and control, subclass 214 for operand address generation, and subclass 215 for address formation in response to a microinstruction.
  
[List of Patents for class 712 subclass 206]    206Of multiple instructions simultaneously:
 This subclass is indented under subclass 205.  Subject matter for causing a fetch of a plurality of instruction data to occur at the same time.
  
[List of Patents for class 712 subclass 207]    207Prefetching:
 This subclass is indented under subclass 205.  Subject matter including fetching of a given instruction or variable before it is utilized.
(1) Note. This subclass provides for advance fetching of instruction data. pipelining is classified elsewhere. Memory access
(2) Note. This subclass is for the fetching of instruction data. Generating of addresses for implementing a prefetch is classified elsewhere.
(3) Note. Prefetching for branch target addressing is classified elsewhere.

SEE OR SEARCH THIS CLASS, SUBCLASS:

237,for branch target instruction addressing.

SEE OR SEARCH CLASS:

711Electrical Computers and Digital Processing Systems: Memory,   subclass 169 for memory access pipelining, and subclass 213 for formation or generation of prefetch addresses.
  
[List of Patents for class 712 subclass 208]    208INSTRUCTION DECODING (E.G., BY MICROINSTRUCTION, START ADDRESS GENERATOR, HARDWIRED):
 This subclass is indented under the class definition.  Subject matter including an internal hardware, firmware, or software operation by which a computer system determines the meaning of an instruction"s operation code, control bits, and operands.
(1) Note. This subclass is for decoding instruction data to determine its meaning for subsequent execution or decision making. Generic decoding circuits and methods and decoder circuits and methods are classified elsewhere. See SEE OR SEARCH CLASS below.

SEE OR SEARCH CLASS:

326Electronic Digital Logic Circuitry,   subclasses 105+ for decoding circuitry.
  
[List of Patents for class 712 subclass 209]    209Decoding instruction to accommodate plural instruction interpretations (e.g., different dialects, languages, emulation, etc.):
 This subclass is indented under subclass 208.  Subject matter including means or steps for decoding a same instruction identifier to mean a different operation depending on a particular state or condition within the system.
(1) Note. This subclass is for instruction decoding for plural interpretations. Emulation, per se, is classified elsewhere. See SEE OR SEARCH CLASS note below.

SEE OR SEARCH CLASS:

703Data Processing: Structural Design, Modeling, Simulation, and Emulation,   appropriate subclasses.
704Data Processing: Speech Signal Processing, Linguistics, Language Translation, and Audio Compression/Decompression,   subclasses 2+ for translation machine, subclass 9 for natural language translation.
716Computer-Aided Design and Analysis of Circuits and Semiconductor Masks,   appropriate subclasses.
717Data Processing: Software Development, Installation, and Management,   subclasses 140 through 161for compilers, per se.
  
[List of Patents for class 712 subclass 210]    210Decoding instruction to accommodate variable length instruction or operand:
 This subclass is indented under subclass 208.  Subject matter including means or steps for decoding instruction data whose length varies.
(1) Note. This subclass is for decoding instructions whose lengths vary. Alignment of instructions to a boundary is classified elsewhere. See SEE OR SEARCH THIS CLASS, SUBCLASS note below.

SEE OR SEARCH THIS CLASS, SUBCLASS:

204,for alignment of instruction data.
  
[List of Patents for class 712 subclass 211]    211Decoding instruction to generate an address of a microroutine:
 This subclass is indented under subclass 208.  Subject matter including means or steps for utilizing instruction data to develop a starting or initial address of a microroutine responsible for controlling execution of the instruction.

SEE OR SEARCH CLASS:

711Electrical Computers and Digital Processing Systems: Memory,   subclass 215 for generation of a memory address in response to a microroutine.
  
[List of Patents for class 712 subclass 212]    212Decoding by plural parallel decoders:
 This subclass is indented under subclass 208.  Subject matter including means or steps for decoding an instruction in parallel steps by plural decoding elements.

SEE OR SEARCH THIS CLASS, SUBCLASS:

1+,for parallel computer architecture.
  
[List of Patents for class 712 subclass 213]    213Predecoding of instruction component:
 This subclass is indented under subclass 208.  Subject matter for decoding part of an instruction at an earlier processor cycle than the remainder of the instruction.
(1) Note. This subclass will accept only nominal recitations of instruction caching in regards to pre-decoding. Caching, per se, is classified elsewhere.
(2) Note. This technique is often used in combination with branch instruction processing in order to prefetch for anticipated branch execution and in parallel processing. This subclass accepts only significant recitations of pre-decoding in overall combinations directed to prefetching, branch instruction processing, and parallel processing. Prefetching, branch instruction processing, and parallel processing, per se, are classified elsewhere. See SEE OR SEARCH THIS CLASS, SUBCLASS: below.

SEE OR SEARCH THIS CLASS, SUBCLASS:

207,for instruction prefetching.
215,for decoding for data dependency processing for parallel issuance.
233+,for branching.
  
[List of Patents for class 712 subclass 214]    214INSTRUCTION ISSUING:
 This subclass is indented under the class definition.  Subject matter including means or steps for dispatching an instruction for execution (e.g., designating a register after resolving data conflicts).
(1) Note. Dispatching in the field of process control for task management dealing with process scheduling, load balancing, etc., is classified elsewhere. See SEE OR SEARCH CLASS below.

SEE OR SEARCH THIS CLASS, SUBCLASS:

201,for data flow architecture based instruction processing system.

SEE OR SEARCH CLASS:

718Electrical Computers and Digital Processing Systems: Virtual Machine Task or Process Management or Task Management/Control,   appropriate subclassesfor task management or task control.
  
[List of Patents for class 712 subclass 215]    215Simultaneous issuance of multiple instructions:
 This subclass is indented under subclass 214.  Subject matter including means or steps for issuing plural instructions in parallel (e.g., superscalar, very long instruction word (VLIW)).
(1) Note. This subclass provides for dynamic, hardware-based multiple instruction issuance or scheduling. Static instruction scheduling by a compiler or an assembler is classified elsewhere.

SEE OR SEARCH THIS CLASS, SUBCLASS:

23,for superscalar processing architecture.
24,for long instruction word processing architecture.

SEE OR SEARCH CLASS:

717Data Processing: Software Development, Installation, and Management,   subclasses 140 through 161for compilers, per se.
  
[List of Patents for class 712 subclass 216]    216DYNAMIC INSTRUCTION DEPENDENCY CHECKING, MONITORING, OR CONFLICT RESOLUTION:
 This subclass is indented under the class definition.  Subject matter including means or steps for on-the-fly testing of instructions and operands to assess conflicts related to data or functional unit availability (e.g., identifying dependencies, attempting to resolve dependencies, or both).
(1) Note. This subclass is directed to means and steps for controlling instruction issuing or executing which takes into account readiness of the instruction processing resource(s). Task resource management is classified elsewhere.
(2) Note. This subclass is also for dynamic hardware based dependency checking. Dependency checking performed by a compiler is classified elsewhere.
(3) Note. Reliability and availability of functional units include the determination of a fault condition and are classified elsewhere.
(4) Note. This subclass includes dealing with resource management problems within the instruction stream, generally at the ALU functional unit level. Resource management in a manufacturing environment is classified elsewhere.
(5) Note. This subclass deals with reserving use of functional units at the instruction level of a digital data processing system. Reservations for seat assignment for travel or entertainment are classified elsewhere.

SEE OR SEARCH CLASS:

700Data Processing: Generic Control Systems or Specific Applications,   subclasses 99 through 102for manufacturing environment resource allocation.
705Data Processing: Financial, Business Practice, Management, or Cost/Price Determination,   particularly subclasses 5+ for reservation, check-in, and booking for reserving space, subclasses 7.13 through 7.26 for scheduling and allocating resources for administrative functions in a business environment.
711Electrical Computers and Digital Processing Systems: Memory,   subclass 125 for instruction data caching and subclass 169 for memory access pipelining.
714Error Detection/Correction and Fault Detection/Recovery,   subclasses 1+ for reliability and availability.
717Data Processing: Software Development, Installation, and Management,   subclasses 140 through 161for compilers, per se, and dependency checking.
718Electrical Computers and Digital Processing Systems: Virtual Machine Task or Process Management or Task Management/Control,   subclass 106 for dependency based cooperative processing of multiple programs working together to accomplish a larger task.
  
[List of Patents for class 712 subclass 217]    217Scoreboarding, reservation station, or aliasing:
 This subclass is indented under subclass 216.  Subject matter utilizing scoreboarding, reservation stations, aliasing (i.e., renaming), or combinations thereof for dependency checking and resolution.
(1) Note. This subclass is for use of a hardware-based scoreboard, reservation station, or alias table for determining or resolving instruction data dependencies. File maintenance (e.g., renaming) is classified elsewhere. Task management, per se, is classified elsewhere.

SEE OR SEARCH CLASS:

707Data Processing: Database, Data Mining, and File Management or Data Structures,   subclasses 609 through 686for database maintenance including synchronizing, archiving, backing up and recovering databases; subclasses 687 through 704 for data integrity in databases; subclasses 781 through 789 for access control to a database or file in a computer environment; subclasses 790 through 812 for database design including data structures and data structure management; subclasses 813 through 820 for garbage collection in database environments, and subclasses 821 through 831 for file management, file systems and file directory structures.
718Electrical Computers and Digital Processing Systems: Virtual Machine Task or Process Management or Task Management/Control,   appropriate subclassesfor task management.
  
[List of Patents for class 712 subclass 218]    218Commitment control or register bypass:
 This subclass is indented under subclass 216.  Subject matter including means or steps for controlling the writing of results to registers and for bypassing results around registers to eliminate or alleviate data availability conflicts.
(1) Note. This subclass provides for systems that control the commitment of results to the register file and for bypassing results around the register file to functional units to alleviate data dependency, for example, as in getting data to a functional unit in deeply pipelined or superscalar systems. Data consistency in a cache or cache by-pass is classified elsewhere.
(2) Note. This subclass provides for out-of - order execution but assures in order commitment of results to the register file. However, memory accessing techniques, per se, are classified elsewhere. See SEE OR SEARCH CLASS note below.
(3) Note. Context preserving, per se, is classified elsewhere. See SEARCH THIS CLASS, SUBCLASS note below.

SEE OR SEARCH THIS CLASS, SUBCLASS:

228,for context preservation.

SEE OR SEARCH CLASS:

711Electrical Computers and Digital Processing Systems: Memory,   subclass 3 for addressing cache memory; subclass 203 for virtual addressing 141+ for cache coherency, in particular subclass 142 for write through and 143 for write back; and subclass 155 for read-modify-write technique.
  
[List of Patents for class 712 subclass 219]    219Reducing an impact of a stall or pipeline bubble:
 This subclass is indented under subclass 216.  Subject matter including means or steps for allowing an instruction execution to catch up with other instruction in a pipeline without flushing that execution pipeline.
(1) Note. This subclass is directed to reducing a time penalty of pipeline stalls or pipeline bubbles due to data hazards or instruction hazards. Conditional branching creates similar data hazards and pipeline stalls. How ever, pipeline stall or pipeline bubble due to branching are classified elsewhere. See SEE OR SEARCH THIS CLASS, SUBCLASS note below.

SEE OR SEARCH THIS CLASS, SUBCLASS:

233+,for branching when an instruction hazard exists.

SEE OR SEARCH CLASS:

711Electrical Computers and Digital Processing Systems: Memory,   subclass 140 for data hazards related caching and subclass 169 for memory access pipelining.
  
[List of Patents for class 712 subclass 220]    220PROCESSING CONTROL:
 This subclass is indented under the class definition.  Subject matter including a dynamic control of execution, processing, or sequencing of instruction data within a processor.
(1) Note. This subclass provides for generic micro-sequencing control or hardware sequencing control of instruction data within a processor. Specialized architecture-based instruction processing is classified elsewhere. See SEE OR SEARCH THIS CLASS, SUBCLASS note below.
(2) Note. This subclass is directed to instruction processing and machine level Instruction execution. However, instruction sequence control within a compiler, by a compiler, or by an operating system is classified elsewhere. See SEE OR SEARCH CLASS note below.
(3) Note. This subclass is for processing instructions. Sequencing as is common in computerized numerical controllers (CNC), industrial controllers, computer driven machining, etc., is classified elsewhere. See SEE OR SEARCH CLASS note below.
(4) Note. Hardwired sequencers are also often referred to as "sequential state machines" in the art. They are appropriately classified here when they are performing control or sequencing of instruction data within a processor.
(5) Note. Graphic command processing is classified elsewhere. See SEE OR SEARCH CLASS note below.

SEE OR SEARCH THIS CLASS, SUBCLASS:

200+,for architecture-based instruction processing.

SEE OR SEARCH CLASS:

345Computer Graphic Processing and Selective Visual Display Systems,   subclass 522 for graphic command processing.
700Data Processing: Generic Control Systems or Specific Applications,   subclasses 1 through 89for general purpose computer control systems; subclasses 95-212 for manufacturing control systems; and particularly subclasses 159-195 for machine tool control systems.
717Data Processing: Software Development, Installation, and Management,   subclasses 140 through 161for a compiler in a software development system.
718Electrical Computers and Digital Processing Systems: Virtual Machine Task or Process Management or Task Management/Control,   appropriate subclassesfor operating system task management and control.
  
[List of Patents for class 712 subclass 221]    221Arithmetic operation instruction processing:
 This subclass is indented under subclass 220.  Subject matter for control of execution or processing of instruction data peculiar to arithmetic operation (e.g., add, subtract, multiply, etc.).
(1) Note. This subclass is directed to control of execution or processing of an instruction peculiar to arithmetic operation. Arithmetic functional units, that is, machines which carry out arithmetical calculations, per se, are classified elsewhere. See SEE OR SEARCH CLASS below.

SEE OR SEARCH CLASS:

708Electrical Computers: Arithmetic Processing and Calculating,   subclasses 100+ for electrical calculators; subclasses 200+ for specialized functions performed by an electrical digital calculating computer such as function generation and filtering; subclasses 400+ for transforms (e.g., Fourier); subclasses 440+ for trigonometric functions; and subclasses 490+ for arithmetic operations, per se.
  
[List of Patents for class 712 subclass 222]    222Floating point or vector:
 This subclass is indented under subclass 221.  Subject matter for control of execution or processing of instruction data peculiar to a floating point or vector operation.

SEE OR SEARCH CLASS:

708Electrical Computers: Arithmetic Processing and Calculating,   subclasses 495+ for floating point arithmetical operations.
  
[List of Patents for class 712 subclass 223]    223Logic operation instruction processing:
 This subclass is indented under subclass 220.  Subject matter for control of execution or processing of instruction data peculiar to logic operation (e.g., AND, OR, exclusive OR, etc.).
(1) Note. This subclass provides for the control of execution of instruction data peculiar to logical operations. Digital logic, per se, (e.g., AND gates, OR gates, combinations of gates, etc.) is classified elsewhere. See SEE OR SEARCH CLASS note below.
(2) Note. This subclass is concerned with processing instruction data within a processor. Processing of pixels using logical operation in the field of computer graphics processing, however, are classified elsewhere. See SEE OR SEARCH CLASS note below.

SEE OR SEARCH CLASS:

326Electronic Digital Logic Circuitry,   appropriate subclasses for logic circuit and interface, per se.
345Computer Graphic Processing and Selective Visual Display Systems,   subclasses 523+ for logical operations in computer graphics.
  
[List of Patents for class 712 subclass 224]    224Masking:
 This subclass is indented under subclass 223.  Subject matter for control of execution or processing of instruction data peculiar to blocking and passing data elements contained within memory words or processor registers.
(1) Note. This subclass provides for control of execution of instruction data which is peculiar to masking. Generic masking of digital words in a digital data processing system is classified elsewhere.
(2) Note. Masking is a generic technique for stripping, passing, eliminating, or blocking a part of a digital word. Masking used as a subcombination to an overall combination such as, for example, to enable or disable interrupts or to enable or disable a status line is classified elsewhere.

SEE OR SEARCH THIS CLASS, SUBCLASS:

5,for masking to control an access to data in vector register of a vector processor.
300,for generic masking of digital data.

SEE OR SEARCH CLASS:

710Electrical Computers and Digital Processing Systems: Input/Output,   subclasses 262+ for interrupt processing in relation to masking.
714Error Detection/Correction and Fault Detection/Recovery,   subclasses 3+ for masking in relation to fault recovery.
  
[List of Patents for class 712 subclass 225]    225Processing control for data transfer:
 This subclass is indented under subclass 220.  Subject matter including means or steps for processing instruction data that specifically support or perform a data transfer operation.
(1) Note. This subclass provides for processing instruction data that performs data transfer. Data transfer, per se, is classified elsewhere.

SEE OR SEARCH CLASS:

370Multiplex Communications,   appropriate subclasses for multiplex communications, per se.
375Pulse or Digital Communications,   appropriate subclasses for pulse or digital communications, per se.
709Electrical Computers and Digital Processing Systems: Multicomputer Data Transferring,   appropriate subclassesfor multicomputer data transferring .
710Electrical Computers and Digital Data Processing Systems: Input/Output,   subclasses 5+ for I/O command processing, subclass 33 for I/O data transfer specifying.
711Electrical Computers and Digital Processing Systems: Memory,   subclass 214 for operand address generation and subclass 215 for microinstruction address generation.
  
[List of Patents for class 712 subclass 226]    226Instruction modification based on condition:
 This subclass is indented under subclass 220.  Subject matter including means or steps for changing the operation of an instruction based upon some condition by substituting or changing the instruction in some manner.
(1) Note. This subclass also provides for modification of microinstruction in order to perform a different operation.
(2) Note. This subclass provides for modification of an instruction to change its operation or data usage. Modification of instruction address for the purpose of branching is classified elsewhere.
(3) Note. Instruction substitution or modification in support of tracing or fault locating is classified elsewhere.

SEE OR SEARCH THIS CLASS, SUBCLASS:

233+,for branching, per se.

SEE OR SEARCH CLASS:

714Error Detection/Correction and Fault Detection/Recovery,   subclass 34 for instruction substitution in support of fault locating.
717Data Processing: Software Development, Installation, and Management,   subclasses 100 through 167for software development tools.
  
[List of Patents for class 712 subclass 227]    227Specialized instruction processing in support of testing, debugging, emulation:
 This subclass is indented under subclass 220.  Subject matter including means or steps for execution or sequencing of instruction data that support testing, debugging, or emulation.
(1) Note. Classification in this subclass requires more than nominal recitation of execution of an instruction. Specific means or steps involved in the specific execution of the instruction itself are properly classified in this subclass.
(2) Note. This subclass is directed to instruction level processing for debugging. A software development environment for compilers is classified elsewhere.
(3) Note. This subclass is distinguished from the related topics under data processing system reliability and availability. There, a fault condition must be encountered and the fault is either detected, located, or recovered from, and nominal instruction data processing may be claimed. For classification here, a fault may be nominally recited but substantial instruction processing must be claimed.
(4) Note. This subclass is distinguished from emulation, per se. There, nominal instruction data processing may be claimed. For classification here, an emulation may be nominally recited, but substantial instruction processing must be claimed.

SEE OR SEARCH CLASS:

703Data Processing: Structural Design, Modeling, Simulation, and Emulation,   appropriate subclasses.
714Error Detection/Correction and Fault Detection/Recovery,   appropriate subclasses, particularly subclasses 35+ for debugging and fault locating.
716Computer-Aided Design and Analysis of Circuits and Semiconductor Masks,   appropriate subclasses.
717Data Processing: Software Development, Installation, and Management,   subclasses 124 through 135for software testing or debugging and subclasses 140-161 for compilers, per se.
718Electrical Computers and Digital Processing Systems: Virtual Machine Task or Process Management or Task Management/Control,   appropriate subclassesfor task management.
  
[List of Patents for class 712 subclass 228]    228Context preserving (e.g., context swapping, check-pointing, register windowing):
 This subclass is indented under subclass 220.  Subject matter including means for storing volatile data contained in processor registers such that the volatile data can be restored at some point later in time.
(1) Note. This subclass is directed to the register level transactions necessary for preserving the context of an instruction or an instruction pipeline. Multitasking, context switching, and context swapping at the task or operating system level are classified elsewhere.
(2) Note. This subclass concerns itself with data in the pipeline at a point in time when a context swap is to be performed. The control of the commitment of results to a register file or for bypassing results around a register file to functional units to alleviate data dependency is classified elsewhere.
(3) Note. Transactions with higher level memory in a digital data processing system memory hierarchy such as page swapping or write-back is classified elsewhere with the memory accessing and controlling art.
(4) Note. The term "windowing" also applies to operator interfaces and often includes logical operations at the register level. However, register windowing here is for instruction registers and instruction pipelines. Windowing for operator interfaces is classified elsewhere.

SEE OR SEARCH THIS CLASS, SUBCLASS:

218,for commitment control or register bypass.

SEE OR SEARCH CLASS:

345Computer Graphics Processing and Selective Visual Display Systems,   subclasses 581 through 618for a display attribute controller.
711Electrical Computers and Digital Processing Systems: Memory,   subclass 3 for addressing cache memory; subclasses 141+ for cache coherency, specifically subclass 142 for cache write-through, subclass 143 for cache write-back, and subclasses 203+ for virtual addressing techniques.
715Data Processing: Presentation Processing of Document, Operator Interface Processing, and Screen Saver Display Processing,   subclasses 781 through 807for operator interface windowing.
718Electrical Computers and Digital Processing Systems: Virtual Machine Task or Process Management or Task Management/Control,   subclass 108 for context switching at the task or operating system level.
  
[List of Patents for class 712 subclass 229]    229Mode switch or change:
 This subclass is indented under subclass 220.  Subject matter including means or steps for changing a mode of processing an instruction (e.g., sequential processing to parallel processing, etc.).
(1) Note. A digital data processing system can have a variety of mode changes. In general, substantial recitation of a mode change type in combination with nominal recitation of instruction processing is classified with the mode change type. More than nominal recitation of instruction data execution is required for classification herein.

SEE OR SEARCH CLASS:

380Cryptography,   appropriate subclasses for security, per se.
713Electrical Computers and Digital Processing Systems: Support,   subclasses 2 and 100 for mode changing by booting or reconfiguring.
718Electrical Computers and Digital Processing Systems: Virtual Machine Task or Process Management or Task Management/Control,   subclass 108 for context switching at the task or operating system level.
726Information Security,   subclasses 1 through 36for information security in computers or digital processing system.
  
[List of Patents for class 712 subclass 230]    230Generating next microinstruction address:
 This subclass is indented under subclass 220.  Subject matter including means or steps for generating an address of a next microinstruction in sequence to be processed.
(1) Note. This subclass provides for details of generating a next microinstruction address. Generation of a next microinstruction address is classified elsewhere. Similarly, generation of a next address for a data element, per se, is classified elsewhere.

SEE OR SEARCH THIS CLASS, SUBCLASS:

207,for prefetch of instruction data.
233+,for branching.

SEE OR SEARCH CLASS:

711Electrical Computers and Digital Processing Systems: Memory,   subclasses 200+ for address formation.
  
[List of Patents for class 712 subclass 231]    231Detecting end or completion of microprogram:
 This subclass is indented under subclass 220.  Subject matter including means or steps for detecting or sensing a completion or end of a microprogram routine.
(1) Note. This subclass provides for detection of the completion of execution of a microprogram routine. Macroprogram branching and microprogram branching are classified elsewhere.
(2) Note. Interruption of the end of a microprogram routine is classified elsewhere.

SEE OR SEARCH THIS CLASS, SUBCLASS:

233+,for macroprogram branching and microprogram branching.
244,for exception processing or interrupt processing.
  
[List of Patents for class 712 subclass 232]    232Hardwired controller:
 This subclass is indented under subclass 220.  Subject matter utilizing a sequential state machine, hardwired logic, or both for sequencing a flow of instruction data.
(1) Note. Controlling and sequencing are common functions of digital data processing systems. This subclass provides for details of a processor"s internal operation and sequencing of instruction data. Numerical controllers and sequencers, per se, are common in industrial control and are classified elsewhere.
(2) Note. Hardwired controllers and sequencers are commonly used for their inherent speed advantage. This subclass provides for details of a processor"s internal operation and sequencing of instruction data. Hardwired controllers directed to application specific data processing or ASICs (application specific integrated circuits) for specific application, per se, such as digital filtering, graphics data processing, and arithmetic data processing, are classified with the application art area.

SEE OR SEARCH CLASS:

326Electronic Digital Logic Circuitry,   subclasses 37+ for multifunctional circuits including finite state machines.
345Computer Graphics Processing and Selective Visual Display Systems,   subclass 522 for graphic command processing,
377Electrical Pulse Counters, Pulse Dividers, or Shift Registers: Circuits and Systems,   subclasses 27+ for circuit or device that includes more than a counter or register but is not sufficient for classification with a particular art device; and subclasses 118+ for pulse counting or dividing chains.
700Data Processing: Generic Control Systems or Specific Applications,   subclasses 1 through 89for industrial controllers and numerical controllers, and subclasses 95-212 for continuous material processing and machine tool control.
703Data Processing: Structural Design, Modeling, Simulation, and Emulation,   appropriate subclasses.
708Electrical Computers: Arithmetic Processing and Calculating,   subclasses 200+ for specialized function performed, particularly subclasses 300+ for digital filtering and subclasses 490+ for arithmetical processing.
716Computer-Aided Design and Analysis of Circuits and Semiconductor Masks,   appropriate subclasses.
  
[List of Patents for class 712 subclass 233]    233Branching (e.g., delayed branch, loop control, branch predict, interrupt):
 This subclass is indented under subclass 220.  Subject matter including means or steps for performing a change in instruction data flow brought about by instruction data execution or external stimuli.
(1) Note. This subclass provides for instruction data flow changes. Program execution flow changes for the purpose of task management and control related to process or job execution is classified elsewhere.
(2) Note. Address generation for branching is classified elsewhere.

SEE OR SEARCH CLASS:

711Electrical Computers and Digital Processing Systems: Memory,   subclass 125 for instruction data caching, subclass 169 for memory access pipelining, and subclass 213 for address generation for branching.
714Error Detection/Correction and Fault Detection/Recovery,   appropriate subclasses, particularly subclasses 50+ for a state out of sequence error detection.
718Electrical Computers and Digital Processing Systems: Virtual Machine Task or Process Management or Task Management/Control,   appropriate subclasses for task management and control related to process or job execution, particularly subclasses 102 through 108for process scheduling.
  
[List of Patents for class 712 subclass 234]    234Conditional branching:
 This subclass is indented under subclass 233.  Subject matter including means or steps for supporting changes in program execution flow based upon some condition within the processor (e.g., branch if equal, branch if zero, etc.).
  
[List of Patents for class 712 subclass 235]    235Simultaneous parallel fetching or executing of branch and fall-through path:
 This subclass is indented under subclass 234.  Subject matter including systems which execute in parallel both the branch taken and branch failure paths of a conditional branch until such time as the outcome of the conditional branch is known.
  
[List of Patents for class 712 subclass 236]    236Evaluation of multiple conditions or multiway branching:
 This subclass is indented under subclass 234.  Subject matter including means or steps for evaluating more than a single condition in one instruction or for choosing to branch to at least one of multiple destinations.
  
[List of Patents for class 712 subclass 237]    237Prefetching a branch target (i.e., look ahead):
 This subclass is indented under subclass 234.  Subject matter including means or steps for prefetching an instruction from the target of a branch in anticipation of the branch being taken.
(1) Note. This subclass provides for prefetch in relation to a conditional branch. Generic prefetching is classified elsewhere.
(2) Note. Address generation for prefetching is classified elsewhere.

SEE OR SEARCH THIS CLASS, SUBCLASS:

207,for generic prefetch of instruction data.

SEE OR SEARCH CLASS:

711Electrical Computers and Digital Processing Systems: Memory,   subclass 213 for address generation for prefetching.
  
[List of Patents for class 712 subclass 238]    238Branch target buffer:
 This subclass is indented under subclass 237.  Subject matter including means or steps for memorizing or holding the last several branch target addresses so that if a branch is encountered again, the target address does not have to be recalculated.
  
[List of Patents for class 712 subclass 239]    239Branch prediction:
 This subclass is indented under subclass 234.  Subject matter including means or steps for attempting to theorize or guess an outcome of a branch before such outcome can be determined.

SEE OR SEARCH CLASS:

711Electrical Computers and Digital Processing Systems: Memory,   subclasses 204+ for address mapping by prediction or look-ahead.
  
[List of Patents for class 712 subclass 240]    240History table:
 This subclass is indented under subclass 239.  Subject matter including means or steps for memorizing an outcome of the last several branch instructions encountered and use that to more accurately predict an outcome of that same branch instructions if they are encountered again in the future.
  
[List of Patents for class 712 subclass 241]    241Loop execution:
 This subclass is indented under subclass 233.  Subject matter including means or steps for controlling an execution of a program loop.
(1) Note. This subclass provides for details of an internal control of a processor and sequencing of instruction data for a performance of loops. Programming of loops and compiling of loop statements are classified elsewhere.
(2) Note. Subroutine calling and returning is classified elsewhere.
(3) Note. Interrupt service and return is classified elsewhere.

SEE OR SEARCH THIS CLASS, SUBCLASS:

242,for macroinstruction routine.
243,for microinstruction subroutine.
244,for exception processing (interrupts and traps).

SEE OR SEARCH CLASS:

703Data Processing: Structural Design, Modeling, Simulation, and Emulation,   appropriate subclasses.
710Electrical Computers and Digital Data Processing Systems: Input/Output,   subclasses 260+ for interrupt service and interrupt return processing in a digital data processing system.
716Computer-Aided Design and Analysis of Circuits and Semiconductor Masks,   appropriate subclasses.
717Data Processing: Software Development, Installation, and Management,   subclasses 124 through 135for software testing or debugging and subclasses 140-161 for compilers, per se.
718Electrical Computers and Digital Processing Systems: Virtual Machine Task or Process Management or Task Management/Control,   appropriate subclasses for task management and control related to process or job execution, particularly subclasses 102 through 108for process scheduling.
  
[List of Patents for class 712 subclass 242]    242To macro-instruction routine:
 This subclass is indented under subclass 233.  Subject matter including means or steps for accessing and performing a particular predefined routine.
(1) Note. This subclass provides for the details of the internal sequencing and processing of instruction data for performing routines not otherwise provided for. For example, graphic command processing, arithmetic operation command processing, and logic operation command processing are classified elsewhere.
(2) Note. The combination of an applications art area with macroinstruction or command processing is classified in the art area. For example, graphic command processing, emulators, compilers, and natural language processing are classified elsewhere.

SEE OR SEARCH CLASS:

345Computer Graphics Processing and Selective Visual Display Systems,   subclass 522 for graphic command processing,
703Data Processing: Structural Design, Modeling, Simulation, and Emulation,   appropriate subclasses.
704Data Processing: Speech Signal Processing, Linguistic, Language Translation, and Audio Compression/Decompression,   subclass 9 for natural language translation.
716Computer-Aided Design and Analysis of Circuits and Semiconductor Masks,   appropriate subclasses.
717Data Processing: Software Development, Installation, and Management,   subclasses 136 through 161for compilers or translators.
  
[List of Patents for class 712 subclass 243]    243To microinstruction subroutine:
 This subclass is indented under subclass 233.  Subject matter including means or steps for calling microcode subroutine from another microroutine.
(1) Note. Subroutine for industrial control or numerical control is classified elsewhere.

SEE OR SEARCH CLASS:

700Data Processing: Generic Control Systems or Specific Applications,   subclasses 1 through 89for generic industrial or numerical controllers.
  
[List of Patents for class 712 subclass 244]    244Exception processing (e.g., interrupts and traps):
 This subclass is indented under subclass 233.  Subject matter including means or steps for handling asynchronous or unexpected changes in instruction data flow.
(1) Note. This subclass provides for details of the internal operation of a processor for responding to an interrupt by the processor. Subject matter directed to queuing interrupts, prioritizing interrupts or signals in a digital data processing system is classified elsewhere.
(2) Note. Details of interrupt processing for the purposes of task management or multitasking are classified elsewhere.

SEE OR SEARCH THIS CLASS, SUBCLASS:

40,for an external sync or interrupt signal in a processing architecture having sequential program control.

SEE OR SEARCH CLASS:

710Electrical Computers and Digital Data Processing Systems: Input/Output,   subclasses 260+ for interrupt queuing and prioritizing.
718Electrical Computers and Digital Processing Systems: Virtual Machine Task or Process Management or Task Management/Control,   subclasses 107 through 108for multitasking, time sharing.
  
[List of Patents for class 712 subclass 245]    245Processing sequence control (i.e., microsequencing):
 This subclass is indented under subclass 220.  Subject matter including means or steps for controlling a sequencing of an execution of a microinstruction.
  
[List of Patents for class 712 subclass 246]    246Plural microsequencers (e.g., dual microsequencers):
 This subclass is indented under subclass 245.  Subject matter including two or more microsequencers for sequencing through microroutines.
  
[List of Patents for class 712 subclass 247]    247Multilevel microcontroller (e.g., dual-level control store):
 This subclass is indented under subclass 245.  Subject matter including means or steps for sequencing microinstruction processing utilizing a multilevel (e.g., dual level) microcode (i.e., a first level microcode addresses and controls a retrieval of a second or subsequent level microcode.).
  
[List of Patents for class 712 subclass 248]    248Writable/changeable control store architecture:
 This subclass is indented under subclass 245.  Subject matter having a microprogram storage that is writable/changeable so that a different microprogram may be installed.
(1) Note. This subclass includes details of an arrangement of the micromemory within a microsequencer.
(2) Note. Writable control store architectures are properly classified here. Also a product by process PLA operating as a microprogram ASIC could go here. However, transistor level or logic gate level chip design is classified elsewhere.
(3) Note. Classification herein requires more than nominal recitation of microcode in combination with writable control store. Memory accessing and memory addressing are classified elsewhere.

SEE OR SEARCH THIS CLASS, SUBCLASS:

37,for a specific sequence control processing architecture with nominal recitation of EPROM.

SEE OR SEARCH CLASS:

326Electronic Digital Logic Circuitry,   subclasses 37+ for multifunctional or programmable logic including PLA, PAL, PLD, etc.
365Static Information Storage and Retrieval,   appropriate subclasses for details of memory design at the transistor or gate level.
703Data Processing: Structural Design, Modeling, Simulation, and Emulation,   appropriate subclasses.
711Electrical Computers and Digital Processing Systems: Memory,   subclasses 100+ for memory accessing and control.
716Computer-Aided Design and Analysis of Circuits and Semiconductor Masks,   appropriate subclasses.
  
[List of Patents for class 712 subclass 300]    300BYTE -WORD ORDER REARRANGING, BIT -FIELD INSERTION OR EXTRACTION, STRING LENGTH DETECTING, OR SEQUENCE DETECTING:
 This subclass is indented under the class definition.  Subject matter having means or step for shuffling, adding, removing of bit or for recognizing a sequence of bytes in a larger string of bytes not provided for by the subclasses above.
(1) Note. This subclass is for generic processing of digital words including sorting, list processing and bit or byte operations at the word level. Instruction processing for logical operations on digital words and digital logic, per se, is classified elsewhere.
(2) Note. This subclass does not accept generic processing of digital words for the expressed purpose of converting one code to another code (e.g., BCD =>BINARY). These teachings are classified elsewhere. Nor does this subclass accept encryption. Encryption is classified elsewhere.
(3) Note. Processing of digital words to an expressed filtering effect on acquired signals or an arithmetic operation on a series of digital words is classified elsewhere.
(4) Note. Searching and sorting in databases, files, and word processing applications are not classified here and instead are classified with the respective application art areas.

SEE OR SEARCH THIS CLASS, SUBCLASS:

220+,for specialized instruction data processing (e.g., for debugging, for logic operations, for context preserving, etc.).

SEE OR SEARCH CLASS:

341Coded Data Generation or Conversion,   appropriate subclasses for analog-to-digital converters and digital-to-digital code converters.
380Cryptography,   subclasses 6+ for electrical signal masking, subclasses 9+ for electrical signal modification (e.g., scrambling).
707Data Processing: Database, Data Mining, and File Management or Data Structures,   subclasses 609 through 686for database maintenance including synchronizing, archiving, backing up and recovering databases; subclasses 758 through 780 for record, file and data search and comparison; subclasses 687 through 704 for data integrity in databases; subclasses 781 through 789 for access control to a database or file in a computer environment; subclasses 790 through 812 for database design including data structures and data structure management; subclasses 813 through 820 for garbage collection in database environments, and subclasses 821 through 831 for file management, file systems and file directory structures.
708Electrical Computers: Arithmetic Processing and Calculating,   subclasses 300+ for digital filtering and subclasses 490+ for arithmetical processing.
  

E-SUBCLASSES

E-subclasses in USPC Class 712/E9.001-E9.086 were created as duplicates of EPO groups in G06F 9/00 and its indents. With the implementation of CPC, these E-subclasses should no longer be used. Instead, use CPC groups in G06F 9/00 and its indents.

The E-subclasses in U.S. Class 712 provide for arrangements for program to control the execution, processing, or sequencing of instruction data within a processor such as Micro-control or micro-program arrangements; arrangements for executing machine-instructions; arrangements for executing sub-programs, i.e. combinations of several instructions; etc.

[List of Patents for class 712 subclass E9.001]    E9.001ARRANGEMENTS FOR PROGRAM CONTROL, E.G., CONTROL UNIT:
 This main group provides for the control of execution, processing, or sequencing of instruction data within a processor. This subclass is substantially the same in scope as ECLA classification G06F9/00.
  
[List of Patents for class 712 subclass E9.002]    E9.002Using wired connections, e.g., plugboard:
 This subclass is indented under subclass E9.001. This sub class is substantially the same in scope as ECLA classification G06F9/02.
  
[List of Patents for class 712 subclass E9.003]    E9.003Using stored program, i.e., using internal store of processing:
 This subclass is indented under subclass E9.001. This subclass is substantially the same in scope as ECLA classification G06F9/06.
  
[List of Patents for class 712 subclass E9.004]    E9.004Micro-control or micro-program arrangements:
 This subclass is indented under subclass E9.003. This subclass is substantially the same in scope as ECLA classification G06F9/22.
  
[List of Patents for class 712 subclass E9.005]    E9.005Execution means for micro-instructions irrespective of the micro-instruction function, e.g., decoding of micro-instructions and nano-instructions; timing of micro instructions; programmable logic arrays; delays and fan-out problems:
 This subclass is indented under subclass E9.004. This subclass is substantially the same in scope as ECLA classification G06F9/22D.
  
[List of Patents for class 712 subclass E9.006]    E9.006Micro instruction function e.g., input/output micro-instruction; diagnostic micro-instruction; micro-instruction format:
 This subclass is indented under subclass E9.004. This subclass is substantially the same in scope as ECLA classification G06F9/22F.
  
[List of Patents for class 712 subclass E9.007]    E9.007Loading of the micro-program:
 This subclass is indented under subclass E9.004. This subclass is substantially the same in scope as ECLA classification G06F9/24.
  
[List of Patents for class 712 subclass E9.008]    E9.008Enhancement of operational speed, e.g., by using several micro-control devices operating in parallel:
 This subclass is indented under subclass E9.004. This subclass is substantially the same in scope as ECLA classification G06F9/28.
  
[List of Patents for class 712 subclass E9.009]    E9.009Address formation of the next micro-instruction:
 This subclass is indented under subclass E9.004. This subclass is substantially the same in scope as ECLA classification G06F 9/26.
(1) Note. This subgroup includes microprogram storage or retrieval arrangements.
  
[List of Patents for class 712 subclass E9.01]    E9.01Micro-instruction address formation:
 This subclass is indented under subclass E9.009. This subclass is substantially the same in scope as ECLA classification G06F9/26F.
  
[List of Patents for class 712 subclass E9.011]    E9.011Arrangements for next micro-instruction selection:
 This subclass is indented under subclass E.009. This subclass is substantially the same in scope as ECLA classification G06F9/26N.
  
[List of Patents for class 712 subclass E9.012]    E9.012Micro-instruction selection based on results of processing:
 This subclass is indented under subclass E9.011. This subclass is substantially the same in scope as ECLA classification G06F9/26N1.
  
[List of Patents for class 712 subclass E9.013]    E9.013By address selection on input of storage:
 This subclass is indented under subclass E9.012. This subclass is substantially the same in scope as ECLA classification G06F9/26N1E.
  
[List of Patents for class 712 subclass E9.014]    E9.014By instruction selection on output of storage:
 This subclass is indented under subclass E9.012. This subclass is substantially the same in scope as ECLA classification G06F9/26N1S.
  
[List of Patents for class 712 subclass E9.015]    E9.015Micro-instruction selection not based on processing results, e.g., interrupt, patch, first cycle store, diagnostic programs:
 This subclass is indented under subclass E9.011. This subclass is substantially the same in scope as ECLA classification G06F9/26N2.
  
[List of Patents for class 712 subclass E9.016]    E9.016Arrangements for executing machine-instructions, e.g., instruction decode:
 This subclass is indented under subclass E9.003. This subclass is substantially the same in scope as ECLA classification G06F9/30.

SEE OR SEARCH THIS CLASS, SUBCLASS:

E9.004,for executing micro-instructions.
E9.082,for executing subprograms.
  
[List of Patents for class 712 subclass E9.017]    E9.017Controlling the executing of arithmetic operations:
 This subclass is indented under subclass E9.016. This subclass is substantially the same in scope as ECLA classification G06F9/302.
  
[List of Patents for class 712 subclass E9.018]    E9.018Controlling the executing of logical operations:
 This subclass is indented under subclass E9.016. This subclass is substantially the same in scope as ECLA classification G06F9/305.
  
[List of Patents for class 712 subclass E9.019]    E9.019Controlling single bit operations:
 This subclass is indented under subclass E9.016. This subclass is substantially the same in scope as ECLA classification G06F9/308.
  
[List of Patents for class 712 subclass E9.02]    E9.02For comparing:
 This subclass is indented under subclass E9.016. This subclass is substantially the same in scope as ECLA classification G06F9/30C.
  
[List of Patents for class 712 subclass E9.021]    E9.021For format conversion:
 This subclass is indented under subclass E9.016. This subclass is substantially the same in scope as ECLA classification G06F9/30F.
  
[List of Patents for class 712 subclass E9.022]    E9.022Using storage based on relative movement between record carrier and transducer:
 This subclass is indented under subclass E9.016. This subclass is substantially the same in scope as ECLA classification G06F9/30Q.
  
[List of Patents for class 712 subclass E9.023]    E9.023Register arrangements, e.g., register files, special registers:
 This subclass is indented under subclass E9.016. This subclass is substantially the same in scope as ECLA classification G06F9/30R.
  
[List of Patents for class 712 subclass E9.024]    E9.024Special purpose registers, e.g., segment register, profile register:
 This subclass is indented under subclass E9.023. This subclass is substantially the same in scope as ECLA classification G06F9/30R2.
  
[List of Patents for class 712 subclass E9.025]    E9.025Register structure, e.g., multigauged registers:
 This subclass is indented under subclass E9.023. This subclass is substantially the same in scope as ECLA classification G06F9/30R4.
  
[List of Patents for class 712 subclass E9.026]    E9.026Implementation provisions thereof, e.g., ports, bypass paths:
 This subclass is indented under subclass E9.025. This subclass is substantially the same in scope as ECLA classification G06F9/30R4P.
  
[List of Patents for class 712 subclass E9.027]    E9.027Organization of register space, e.g., distributed register files, register banks:
 This subclass is indented under subclass E9.025. This subclass is substantially the same in scope as ECLA classification G06F9/30R4S.
  
[List of Patents for class 712 subclass E9.028]    E9.028Instruction analysis, e.g., decoding, instruction word fields:
 This subclass is indented under subclass E9.016. This subclass is substantially the same in scope as ECLA classification G06F9/30T.
  
[List of Patents for class 712 subclass E9.029]    E9.029Variable length instructions or constant length instructions whereby the relative length of operation and operand part is variable:
 This subclass is indented under subclass E9.028. This subclass is substantially the same in scope as ECLA classification G06F9/30T2.
  
[List of Patents for class 712 subclass E9.03]    E9.03Decoding the operand specifier, e.g., specifier format:
 This subclass is indented under subclass E9.028. This subclass is substantially the same in scope as ECLA classification 0G06F9/30T4.
  
[List of Patents for class 712 subclass E9.031]    E9.031With implied specifier, e.g., top of stack:
 This subclass is indented under subclass E9.028. This subclass is substantially the same in scope as ECLA classification G06F9/30T4S.
  
[List of Patents for class 712 subclass E9.032]    E9.032For specific instructions not covered by the preceding groups, e.g., halt, synchronize:
 This subclass is indented under subclass E9.016. This subclass is substantially the same in scope as ECLA classification G06F9/30Z.
  
[List of Patents for class 712 subclass E9.033]    E9.033Controlling loading, storing, or clearing operations:
 This subclass is indented under subclass E9.016. This subclass is substantially the same in scope as ECLA classification G06F9/312.
  
[List of Patents for class 712 subclass E9.034]    E9.034Controlling moving, shifting, or rotation operations:
 This subclass is indented under subclass E9.016. This subclass is substantially the same in scope as ECLA classification G06F9/315.
  
[List of Patents for class 712 subclass E9.035]    E9.035With operation extension or modification:
 This subclass is indented under subclass E9.016. This subclass is substantially the same in scope as ECLA classification G06F9/318.
  
[List of Patents for class 712 subclass E9.036]    E9.036Using data descriptors, e.g., dynamic data typing:
 This subclass is indented under subclass E9.035. This subclass is substantially the same in scope as ECLA classification G06F9/318D.
  
[List of Patents for class 712 subclass E9.037]    E9.037Using run time instruction translation:
 This subclass is indented under subclass E9.035. This subclass is substantially the same in scope as ECLA classification G06F9/318T.
  
[List of Patents for class 712 subclass E9.038]    E9.038Addressing or accessing the instruction operand or the result:
 This subclass is indented under subclass E9.016. This subclass is substantially the same in scope as ECLA classification G06F9/34.
  
[List of Patents for class 712 subclass E9.039]    E9.039Of multiple operands or results:
 This subclass is indented under subclass E9.038. This subclass is substantially the same in scope as ECLA classification G06F9/345.
  
[List of Patents for class 712 subclass E9.04]    E9.04Indirect addressing:
 This subclass is indented under subclass E9.038. This subclass is substantially the same in scope as ECLA classification G06F9/35.
(1) Note: Subject matter of this subgroup type includes using a single address operand, e.g., address register.
  
[List of Patents for class 712 subclass E9.041]    E9.041Indexed addressing:
 This subclass is indented under subclass E9.038. This subclass is substantially the same in scope as ECLA classification G06F9/355.
(1) Note: Subject matter of this subgroup type includes using more than one address operand.
  
[List of Patents for class 712 subclass E9.042]    E9.042Using index register, e.g., adding index to base address:
 This subclass is indented under subclass E9.041. This subclass is substantially the same in scope as ECLA classification G06F9/355A.
  
[List of Patents for class 712 subclass E9.043]    E9.043Using wraparound, e.g., modulo or circular addressing:
 This subclass is indented under subclass E9.042. This subclass is substantially the same in scope as ECLA classification G06F9/355A2.
  
[List of Patents for class 712 subclass E9.044]    E9.044Using scaling, e.g., multiplication of index:
 This subclass is indented under subclass E9.042. This subclass is substantially the same in scope as ECLA classification G06F9/355A4.
  
[List of Patents for class 712 subclass E9.045]    E9.045Concurrent instruction execution, e.g., pipeline, look ahead:
 This subclass is indented under subclass E9.016. This subclass is substantially the same in scope as ECLA classification G06F9/38.
  
[List of Patents for class 712 subclass E9.046]    E9.046Data or operand accessing, e.g., operand prefetch, operand bypass:
 This subclass is indented under subclass E9.045. This subclass is substantially the same in scope as ECLA classification G06F9/38D.
  
[List of Patents for class 712 subclass E9.047]    E9.047Operand prefetch, e.g., prefetch instruction, address prediction:
 This subclass is indented under subclass E9.046. This subclass is substantially the same in scope as ECLA classification G06F9/38D2.
  
[List of Patents for class 712 subclass E9.048]    E9.048Maintaining memory consistency:
 This subclass is indented under subclass E9.046. This subclass is substantially the same in scope as ECLA classification G06F9/38D4.
  
[List of Patents for class 712 subclass E9.049]    E9.049Instruction issuing, e.g., dynamic instruction scheduling, out of order instruction execution:
 This subclass is indented under subclass E9.045. This subclass is substantially the same in scope as ECLA classification G06F9/38E.
  
[List of Patents for class 712 subclass E9.05]    E9.05Speculative instruction execution, e.g., conditional execution, procedural dependencies, instruction invalidation:
 This subclass is indented under subclass E9.049. This subclass is substantially the same in scope as ECLA classification G06F9/38E2.
  
[List of Patents for class 712 subclass E9.051]    E9.051Using dynamic prediction, e.g., branch history table:
 This subclass is indented under subclass E9.05. This subclass is substantially the same in scope as ECLA classification G06F9/38E2D.
  
[List of Patents for class 712 subclass E9.052]    E9.052Using static prediction, e.g., branch taken strategy:
 This subclass is indented under subclass E9.05. This subclass is substantially the same in scope as ECLA classification G06F9/38E2S.
  
[List of Patents for class 712 subclass E9.053]    E9.053From multiple instruction streams, e.g., multistreaming:
 This subclass is indented under subclass E9.049. This subclass is substantially the same in scope as ECLA classification G06F9/38E4.
  
[List of Patents for class 712 subclass E9.054]    E9.054Of compound instructions:
 This subclass is indented under subclass E9.049. This subclass is substantially the same in scope as ECLA classification G06F9/38E6.
  
[List of Patents for class 712 subclass E9.055]    E9.055Instruction prefetch, e.g., instruction buffer:
 This subclass is indented under subclass E9.045. This subclass is substantially the same in scope as ECLA classification G06F9/38F.
  
[List of Patents for class 712 subclass E9.056]    E9.056For branches, e.g., hedging branch folding:
 This subclass is indented under subclass E9.055. This subclass is substantially the same in scope as ECLA classification G06F9/38F2.
  
[List of Patents for class 712 subclass E9.057]    E9.057Using address buffers, e.g., return stack:
 This subclass is indented under subclass E9.056. This subclass is substantially the same in scope as ECLA classification G06F9/38F2B.
  
[List of Patents for class 712 subclass E9.058]    E9.058For loops, e.g., loop buffer:
 This subclass is indented under subclass E9.055. This subclass is substantially the same in scope as ECLA classification G06F9/38F4.
  
[List of Patents for class 712 subclass E9.059]    E9.059With instruction modification, e.g., store into instruction stream:
 This subclass is indented under subclass E9.055. This subclass is substantially the same in scope as ECLA classification G06F9/38F6.
  
[List of Patents for class 712 subclass E9.06]    E9.06Recovery, e.g., branch miss-prediction, exception handling:
 This subclass is indented under subclass E9.045. This subclass is substantially the same in scope as ECLA classification G06F9/38H.
  
[List of Patents for class 712 subclass E9.061]    E9.061Using multiple copies of the architectural state, e.g., shadow registers:
 This subclass is indented under subclass E9 .06. This subclass is substantially the same in scope as ECLA classification G06F9/38H2.
  
[List of Patents for class 712 subclass E9.062]    E9.062Using instruction pipelines:
 This subclass is indented under subclass E9.045. This subclass is substantially the same in scope as ECLA classification G06F9/38P.
  
[List of Patents for class 712 subclass E9.063]    E9.063Synchronization, e.g., clock skew:
 This subclass is indented under subclass E9 .062. This subclass is substantially the same in scope as ECLA classification G06F9/38P2.
  
[List of Patents for class 712 subclass E9.064]    E9.064Technology-related problems thereof, e.g., GaAs pipelines:
 This subclass is indented under subclass E9 .062. This subclass is substantially the same in scope as ECLA classification G06F9/38P4.
  
[List of Patents for class 712 subclass E9.065]    E9.065Pipelining a single stage, e.g., superpipelining:
 This subclass is indented under subclass E9 .062. This subclass is substantially the same in scope as ECLA classification G06F9/38P6.
  
[List of Patents for class 712 subclass E9.066]    E9.066Using a slave processor, e.g., coprocessor:
 This subclass is indented under subclass E9.045. This subclass is substantially the same in scope as ECLA classification G06F9/38S.
  
[List of Patents for class 712 subclass E9.067]    E9.067Which is not visible to the instruction set architecture, e.g., using memory mapping, illegal opcodes:
 This subclass is indented under subclass E9.066. This subclass is substantially the same in scope as ECLA classification G06F9/38S4.
  
[List of Patents for class 712 subclass E9.068]    E9.068For non-native instruction set architecture:
 This subclass is indented under subclass E9.067. This subclass is substantially the same in scope as ECLA classification G06F9/38S4L.
  
[List of Patents for class 712 subclass E9.069]    E9.069Which is visible to the instruction set architecture:
 This subclass is indented under subclass E9.066. This subclass is substantially the same in scope as ECLA classification G06F9/38S6.
  
[List of Patents for class 712 subclass E9.07]    E9.07Having access to instruction memory:
 This subclass is indented under subclass E9.069. This subclass is substantially the same in scope as ECLA classification G06F9/38S6C.
  
[List of Patents for class 712 subclass E9.071]    E9.071Using a plurality of independent parallel functional units:
 This subclass is indented under subclass E9.045. This subclass is substantially the same in scope as ECLA classification G06F9/38T.
  
[List of Patents for class 712 subclass E9.072]    E9.072Decoding:
 This subclass is indented under subclass E9.071. This subclass is substantially the same in scope as ECLA classification G06F9/38T2.
  
[List of Patents for class 712 subclass E9.073]    E9.073Address formation of the next instruction, e.g., incrementing the instruction counter, jump:
 This subclass is indented under subclass E9 .016. This subclass is substantially the same in scope as ECLA classification G06F9/32.

SEE OR SEARCH THIS CLASS, SUBCLASS:

E9.083,for sub-program jumps.
  
[List of Patents for class 712 subclass E9.074]    E9.074Program or instruction counter, e.g., incrementing:
 This subclass is indented under subclass E9 .073. This subclass is substantially the same in scope as ECLA classification G06F9/32A.
  
[List of Patents for class 712 subclass E9.075]    E9.075Branch or jump to non-sequential address:
 This subclass is indented under subclass E9 .073. This subclass is substantially the same in scope as ECLA classification G06F9/32B.
  
[List of Patents for class 712 subclass E9.076]    E9.076Unconditional, e.g., indirect jump:
 This subclass is indented under subclass E9 .075. This subclass is substantially the same in scope as ECLA classification G06F9/32B2.
  
[List of Patents for class 712 subclass E9.077]    E9.077Conditional:
 This subclass is indented under subclass E9 .075. This subclass is substantially the same in scope as ECLA classification G06F9/32B4.
  
[List of Patents for class 712 subclass E9.078]    E9.078For cyclically repeating instructions, e.g., iterative operation, loop counter:
 This subclass is indented under subclass E9 .075. This subclass is substantially the same in scope as ECLA classification G06F9/32B6.
  
[List of Patents for class 712 subclass E9.079]    E9.079Condition code generation, e.g., status register:
 This subclass is indented under subclass E9 .073. This subclass is substantially the same in scope as ECLA classification G06F9/32C.
  
[List of Patents for class 712 subclass E9.08]    E9.08Selective instruction skip or conditional execution, e.g., dummy cycle:
 This subclass is indented under subclass E9 .073. This subclass is substantially the same in scope as ECLA classification G06F9/32S.
  
[List of Patents for class 712 subclass E9.081]    E9.081Sequential commutation, e.g., ring counter, cyclical pulse distribution:
 This subclass is indented under subclass E9 .073. This subclass is substantially the same in scope as ECLA classification G06F9/32T.
  
[List of Patents for class 712 subclass E9.082]    E9.082Arrangements for executing sub-programs, i.e., combinations of several instructions:
 This subclass is indented under subclass E9.003. This subclass is substantially the same in scope as ECLA classification G06F9/40.
  
[List of Patents for class 712 subclass E9.083]    E9.083Formation of sub-program jump address or of return address:
 This subclass is indented under subclass E9 .082. This subclass is substantially the same in scope as ECLA classification G06F9/42.

SEE OR SEARCH THIS CLASS, SUBCLASS:

E9.051,and E9.052 for branch prediction in a pipelined system.
  
[List of Patents for class 712 subclass E9.084]    E9.084Object Oriented Method Invocation:
 This subclass is indented under subclass E9 .083. This subclass is substantially the same in scope as ECLA classification G06F9/42M.
  
[List of Patents for class 712 subclass E9.085]    E9.085Optimizing for Receiver Type:
 This subclass is indented under subclass E9 .084. This subclass is substantially the same in scope as ECLA classification G06F9/42M1.
  
[List of Patents for class 712 subclass E9.086]    E9.086Using record carriers containing only program instructions:
 This subclass is indented under subclass E9.001. This subclass is substantially the same in scope as ECLA classification G06F9/04.
  

This page is produced by the Office of Classification Support (Office of Patent Classification) for the Reference Tools Project.

Please send questions and comments to usptoinfo@uspto.gov .

Note: The Patent and Trademark Depository Library Program (PTDLP) administers a nationwide network of public, state and academic libraries designated as Patent and Trademark Depository Libraries authorized by 35 U.S.C. 13 to: Disseminate Patent and Trademark Information Support Diverse Intellectual Property Needs of the Public. PTDL Contact Information

Note: For information/comments on electronic information products, such as purchasing USPTO data, or to discuss system requirements for magnetic tape products, contact:

     Information Products Division -- U.S. Patent and Trademark Office Information Products Division Contact Information
     Or, browse their on-line catalog.

KEY: e Biz=online business system fees=fees forms=formshelp=help laws and regs=laws/regulations definition=definition (glossary)

The Inventors Assistance Center is available to help you on patent matters.Send questions about USPTO programs and services to the USPTO Contact Center (UCC). You can suggest USPTO webpages or material you would like featured on this section by E-mail to the webmaster@uspto.gov. While we cannot promise to accommodate all requests, your suggestions will be considered and may lead to other improvements on the website.


|.HOME | SITE INDEX| SEARCH | eBUSINESS | HELP | PRIVACY POLICY