Method of and apparatus for extracting a string of bits from...

Electrical computers and digital processing systems: processing – Processing control – Logic operation instruction processing

Reexamination Certificate

Rate now

  [ 0.00 ] – not rated yet Voters 0   Comments 0

Details

C712S300000, C712S225000, C712S210000, C710S307000, C710S049000

Reexamination Certificate

active

06523108

ABSTRACT:

FIELD OF INVENTION
The present invention relates to the field of computer systems. More particularly, the present invention relates to instructions used to move data within a string from one location to another.
BACKGROUND OF THE INVENTION
The IEEE standard, “IEEE 1394 Standard For A High Performance Serial Bus,” Draft ratified in 1995, is an international standard for implementing an inexpensive high-speed serial bus architecture which supports both asynchronous and isochronous format data transfers. Isochronous data transfers are real-time transfers which deliver data on time without guaranteeing the integrity of the data. Each packet of data transferred isochronously is transferred in its own time period. The IEEE
1394-1995
standard bus architecture provides up to sixty-four (64) channels for isochronous data transfer between applications. A six bit channel number is broadcast with the data to ensure reception by the appropriate application. This allows multiple applications to simultaneously transmit isochronous data across the bus structure. Asynchronous transfers are traditional data transfer operations which guarantee the integrity of the data during delivery using an acknowledgement protocol.
The IEEE
1394-1995
standard provides a high-speed serial bus for interconnecting digital devices thereby providing a universal I/O connection. The IEEE
1394-1995
standard defines a digital interface for the applications thereby eliminating the need for an application to convert digital data to analog data before it is transmitted across the bus. Correspondingly, a receiving application will receive digital data from the bus, not analog data, and will therefore not be required to convert analog data to digital data. Devices can be added and removed from an IEEE
1394-1995
bus while the bus is active. If a device is so added or removed the bus will then automatically reconfigure itself for transmitting data between the then existing nodes. A node is considered a logical entity with a unique identification number on the bus structure. Each node provides an identification ROM, a standardized set of control registers and its own address space.
The IEEE
1394-1995
standard provides for up to sixty-four different isochronous implementations, certain 1394 devices are being built with the capability to only transmit and receive isochronous data over a subset of less than sixty-four channels. When receiving data on an isochronous channel, that data must be processed by the receiving device. This processing includes any or all of displaying, manipulating, forwarding and storing. Often, data received on different isochronous channels is processed differently, depending on the type of device from which the data is received, the type of data that is received and the desired use of the data. If data received on an isochronous channel is not received and processed efficiently, errors in the display or use of the data can result.
There are a wide variety of computer systems capable of processing digital data. A basic structure of a computer system is shown in FIG.
1
A. The heart of the computer system
1
is a central processing unit (“CPU”)
2
. Within a computer system
1
the CPU
2
is coupled to firmware
4
, data storage devices
5
, ports
3
, and random access memory (“RAM”)
6
by a bus structure
7
. Data storage devices
5
include hard drives, floppy drives, and CD-ROMs. Input/output (“I/O”) devices such as a display monitor
8
and an IEEE
1394-1995
device
10
, are coupled to the bus structure
7
through ports
3
. A keyboard
9
is also coupled to the CPU
2
through one of the ports
3
. Ports
3
, both serial or parallel, are used to connect the computer system
1
to modems, printers, and other devices, including other computer systems.
FIG. 1B
illustrates a computer system
1
coupled to a display monitor
8
and networked to an IEEE
1394-1995
device
10
, such as a video camera, through an IEEE
1394-1995
serial cable
11
.
In a computer system
1
, firmware
4
is used to seek out and load an operating system from one of the data storage devices
5
(usually the hard drive) when the computer system
1
is first turned on. Programs and applications used by the computer system
1
are generally stored on the hard drive and moved at least in part to the RAM
6
during use.
Common CPUs
2
included within a computer system
1
include reduced instruction set computation (“RISC”) processors or complex instruction set computation (“CISC”) processors. Examples of RISC processors are the PowerPC™ processor manufactured by International Business Machines Corporation and the G
3
processor manufactured by Motorola Corporation for Apple Computer Corporation personal computers. Examples of CISC processors are the model 80×86 processor and the Pentium™ processor, which are both available from Intel Corporation of Santa Clara, Calif.
A CPU
2
stores data in internal memory locations, registers, and memory. Registers are used during program execution to temporarily store intermediate results. The advantage of storing data in a register instead of a memory location is that the data within the register can be accessed much faster. Data that is not used during register operation is stored in memory. Memory associated with a processor (“associated memory”) is typically located within the CPU
2
itself as L
1
cache, nearby the CPU
2
as L
2
cache, or in an area separate from the CPU
2
.
The location in which data is stored in the registers and memory is identified by an address. A read operation is used to access data found at a specific address. A write operation is used to store data at a specific address. Writing a value to a specific address will erase the value previously found at that address.
Computer systems are controlled by instructions. Instructions are statements specifying an operation to be performed and what data operands are to be processed by the computer system. A queue of pre-selected and sequenced instructions make up each computer program. Each instruction includes an operation code (“opcode”) and operands. The opcode is the part of the instruction that identifies the operation to be performed. Typical operations are ADD, SUBTRACT, and MOVE.
Operands describe the data to be processed as the operation specified by the opcode is carried out. The instruction's operands may be an address location or actual data. Placing actual data within the instruction typically results in faster execution of the instruction. Limitation in the instruction's size, however, usually dictates that most operands are address locations for data stored in memory or registers.
A collection of instructions to be used by a particular computer system
1
are referred to as an instruction set. In RISC architectures, the instructions are of uniform length. In ×86 CISC processors, the length of instructions varies widely. The minimum instruction consists of a single opcode byte and is 8 bits long. A long instruction that includes a prefix byte is as long as 104 bits. Longer instructions containing more than a single prefix byte are also possible.
One common instruction completed by the CPU
2
is a shift instruction. Shifting is the process of moving data that is stored in a storage device relative to the boundaries of the device, as opposed to moving data in or out of the device. The storage device is often a register designed specifically for shifting (“shift register”). The direction of the shift is either left or right. Vacated bit positions (on the leftmost for shift right operations and on the rightmost for shift left operations) are filled with logical ZEROs. Shift operations are often used in field alignments, packing and unpacking of data items into storage units, and high-speed multiplication and division. Simple shift registers shift data only one space per shift. More advanced shift registers shift data any arbitrary number of spaces per individual shift.
An operation very similar to shifting is rotation. Rotation differs from shifting in that, in a le

LandOfFree

Say what you really think

Search LandOfFree.com for the USA inventors and patents. Rate them and share your experience with other people.

Rating

Method of and apparatus for extracting a string of bits from... does not yet have a rating. At this time, there are no reviews or comments for this patent.

If you have personal experience with Method of and apparatus for extracting a string of bits from..., we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Method of and apparatus for extracting a string of bits from... will most certainly appreciate the feedback.

Rate now

     

Profile ID: LFUS-PAI-O-3179344

  Search
All data on this website is collected from public sources. Our data reflects the most accurate information available at the time of publication.