This class provides, within an electrical computer or digital data processing system, for the following subject matter:
A. Processes and apparatus for addressing memory wherein the processes and apparatus involve significant address manipulating (e.g., combining, translating, or mapping and other techniques for formatting and modifying address data) and are combined with specific memory configurations or memory systems;
B. Processes and apparatus for accessing and controlling memory (e.g., transferring and modifying address data, selecting storage devices, scheduling access); and
C. Processes and apparatus for forming memory addresses (e.g., virtual memory addressing, address translating, translation-lookaside buffers (TLBs), boundary checking, and page mode).
SCOPE OF THE CLASS
(1) Note. In the instance where a peripheral is a memory, classification herein is proper.
(2) Note. Classification herein requires more than nominal recitation of addressing techniques or of memory accessing or controlling in combination with digital data processing systems or data processing. A nominal combination refers to a combination wherein one or more of the means or steps thereof are recited so broadly, and without details, as to constitute a mere identification rather than a description of each means or step.
(3) Note. Memory devices, per se, are classified in their respective device classes. More specifically, registers and data bearing records (e.g., smart cards) are classified elsewhere. Static memory devices including internal elements of memories are classified elsewhere. Display memory organizations and structures (i.e., selective visual display systems) such as memories defined by s:graphics processing systems and s:graphic processing that involves interfacing with memory are classified elsewhere. Devices (e.g., printers) that include memory for processing data for static presentation (i.e., for viewing on a fixed medium such as paper) are classified elsewhere. Dynamic magnetic information storage or retrieval devices (e.g., magnetic disks, tapes, drums, etc.) are classified elsewhere. Dynamic information storage or retrieval devices (e.g., optical disks, CD-ROMs, jukebox mechanics, and other storage devices having magnetic and mechanical components) are classified elsewhere. See the SEARCH CLASS notes below. (4) Note. Processes and apparatus for transferring data between memories of different computers directly (i.e., with minimum or no intervention from main processors of the computers) are classified elsewhere. See the SEARCH CLASS
notes below.
(5) Note. Processes and apparatus for direct memory access (DMA) (i.e., the transferring of data between peripherals and memories of a computer or digital data processing system with minimal or no intervention from the main processor of the computer or digital data processing system) are classified elsewhere. See the SEARCH CLASS notes below.
(6) Note. Processes and apparatus for accessing and retrieving instruction data of a fixed or variable length from a memory or buffer and for shifting such instruction data to align it with a physical memory or buffer boundary are classified elsewhere. See the SEARCH CLASS notes below.
REFERENCES TO OTHER CLASSES
SEE OR SEARCH CLASS
235, Registers, various subclasses for basic machines and associated indicating mechanisms for ascertaining the number of movements of various devices and machines; machines made from these basic machines alone (e.g., cash registers, voting machines) and in combination with various perfecting features such as printers and recording means; and various systems controlled by data bearing records (e.g., smart cards).
257, Active Solid-State Devices (e.g., Transistors, Solid-State Diodes),
202, for repeating geometric arrangement of individual structural elements of solid-state devices, and subclasses 368 and 390 for matrix or array of field effect transistors (FETs).
326, Electronic Digital Logic Circuitry,
37+, for multifunctional or programmable logic (e.g., gate arrays) and subclasses 52+ and 104+ for generic logic functions such as EXOR, AND, OR, NOT and decoding in general.
340, Communications: Electrical, 825+, for 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 subclass 825.02 for tree or cascade selective communication, subclasses 825.03+ for channel selection, subclass 825.05 for a plurality of controlled devices connected by a communication line in a closed series configuration, subclasses 825.06+ for communication systems where status of a controlled device is communicated, subclasses 825.2+ for synchronizing selective communication systems, subclasses 825.5+ for lockout or priority in selective communication systems, subclasses 825.52+ for selective communication addressing, subclasses
825.57+ for pulse responsive actuation; and subclasses 825.79+ for selective matrix which may be used for control or as a switching means.
341, Coded Data Generation or Conversion, various subclasses for electrical pulse and digit code converters (e.g., systems for originating or emitting a coded set of discrete signals or translating one code into another code wherein the meaning of the data remains the same but formats may differ).
1+, for visual display systems with selective electrical control including display memory organization and structure for storing image data and manipulating image data between a display memory and display peripheral, subclasses 507+ for memory organization and structure for storing images to be displayed, and subclass 521 for s:graphic processing that involves interfacing with memory.
353, Optics: Image Projectors,
25+, for selective data retrieval of stored information viewed by a projection means.
360, Dynamic Magnetic Information Storage or Retrieval (which is an integral part of Class 369 following
18, ), for record carriers and systems wherein data are stored and retrieved by interaction with a medium and there is relative motion between a medium and a transducer (e.g., magnetic disk drives, tapes, and drums and control thereof, per se), particularly subclasses 72.1+ for locating a specific area in storage.
361, Electricity: Electrical Systems and Devices,
684+, for computer storage component combined with housing or mounting arrangement having no data processing or calculating procedures.
364, Electrical Computers and Data Processing Systems, appropriate subclasses and particularly 130+, for data processing control systems; subclasses 400+ for computer and data processing system applications.
365, Static Information Storage and Retrieval, various subclasses for static memory devices including internal elements of the memory, particularly
189.01+, for read/write circuits and subclasses 230.01+ for addressing of addressable, static single storage elements or plural elements; subclass 189.05 for buffering or latching data being read from or written to memory; subclass 189.08 for logic devices in combination with memory systems;
subclasses 200 and 201 for testing of memory systems; and subclass 230.08 for buffering and latching address data being employed to access memory.
369, Dynamic Information Storage or Retrieval, various subclasses for record carriers and systems wherein data are stored and retrieved by interaction with a medium and there is relative motion between a medium and a transducer (e.g., optical disks, CD-ROMs, jukeboxes), particularly
30+, 69, and 176+ for designating or selecting storage media to be used for storage and retrieval.
370, Multiplex Communications, appropriate subclasses for multiplex switching techniques similar to addressing and the handling of memory information signals and for the simultaneous transmission of two or more signals over a common medium, particularly
351+, for time division multiplex (TDM) switching, subclasses 475+ for asynchronous TDM communications including addressing, and subclasses 498+ for time division bus transmission.
377, Electrical Pulse Counters, Pulse Dividers, or Shift Registers: Circuits and Systems,
64+, for shift registers.
380, Cryptography,
3+, for stored data access or copy prevention (e.g., software program protection or computer virus detection) in combination with data encryption, and subclasses 49+ for digital signal handling with shift register or memory. 395, Information Processing System Organization, appropriate subclasses and particularly
1, 3 through 77, 900, and 902 through 934 for artificial intelligence type computers and digital data processing systems; subclasses 115+ for process and apparatus (e.g., printer) that includes memory for processing data for static presentation (i.e., for viewing on a fixed medium such as paper); subclasses 200.3+ for transferring data between a plurality of computers, particularly subclass 200.42 for computer-to-computer direct memory accessing and subclasses 200.43+, wherein the transferring is via a shared memory.
701, Data Processing: Vehicles, Navigation, and Relative Location, appropriate subclasses for applications of computers in vehicular and navigational environments.
702, Data Processing: Measuring, Calibrating, or Testing,
80, for specified memory location generation for storage of an electrical signal parameter measurement.
704, Data Processing: Speech Signal Processing, Linguistics, Language Translation, and Audio Compression/Decompression,
1+, for applications of computers in linguistics, subclasses 200+ for applications of computers in speech signal processing, and subclasses 500 through 504 for applications of computers in audio compression/decompression.
705, Data Processing: Financial, Business Practice, Management, or Cost/Price Determination, appropriate subclasses for applications of computers and calculators in business and management environments.
707, Data Processing: Database and File Management, Data Structures, or Document Processing,
1+, 100+, and 200+ for data retrieval, file or database management, garbage collection, file configuration and initialization, and allocation.
708, Electrical Computers: Arithmetic Processing and Calculating, 1+, for electric hybrid computers; subclasses 100+ for electric digital calculating computers; and subclasses 800+ for electric analog computers.
710, Electrical Computers And Digital Data Processing Systems: Input/Output,
1+, for transferring data from one or more peripherals to one or more computers for the latter to process, store, or further transfer or for transferring data from the computers to the peripherals, particularly subclasses 22+ for direct memory access (DMA) (i.e., the transferring of data between peripherals and memories of a computer or digital data processing system with minimal or no intervention from the main processor of the computer or digital data processing system).
712, Electrical Computers And Digital Processing Systems: Processing Architectures and Instruction Processing (e.g., Processors),
1+, for processing architectures such as MIMD, vector, or array processors; subclass 204 for instruction alignment; subclasses 205+ for instruction fetching;and subclasses 200 through 248 for various instruction processing not involving I/O such as executing.
713, Electrical Computers and Digital Processing Systems: Support,
200+, for furthering the security of computers, digital data processing systems and peripherals.
714, Error Detection/Correction and Fault Detection/Recovery, various subclasses for detecting or correcting errors in generic electrical pulse or pulse coded data and for detecting and recovering from faults of computers, digital data processing systems, and logic level based systems, particularly
702, for memory access (e.g., address permutation); subclasses 710+ for replacement with spare memory components or portion thereof; subclasses 718+ for memory testing; and subclasses 763+ for memory access with error correction, error pointer, or error checking.
901, Robots, appropriate cross-reference art collections for reprogrammable, multifunction manipulators designed to move devices.
GLOSSARY: The terms below have been defined for purposes of classification in this class and are shown in underlined type when used in the class and subclass definitions. When these terms are not underlined in the definitions, the meaning is not restricted to the glossary definitions below.
ADDRESS DATA
Data that specify a location in a memory.
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. See ADDRESS DATA, INSTRUCTION DATA, STATUS DATA, and USER DATA in this glossary,
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.
INFORMATION
Meaning that a human being assigns to data by means of the
conventions applied to that data.
INSTRUCTION DATA
Data that represent an operation and identify its operands, if any.
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 (e.g., modems, keyboards, monitors, touch tablet, printers, joy stick, disk and tape drives, etc.).
PROCESSING
Methods or apparatus performing systematic operations upon data or information exemplified by functions such as data or information transferring, merging, sorting, and calculating (i.e., arithmetic operations or logical operations). 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.
STATUS DATA
Data that represent conditions of data, computers, peripherals, memory, etc.
USER DATA
Data other than address data, instruction data, or status data.