Register move instruction for section select of source operand
First Claim
1. A data processing apparatus comprising:
- a data register file including a plurality of data registers for storing data;
an execution unit having an input connected to said data register file, a multiplexer having a plurality of inputs receiving data from bits of corresponding equally sized sections of contiguous bits of said input, an output and a select input, said multiplexer coupling data from a selected one of said plurality of inputs corresponding to said select input to said output, and an output having a contiguous section of least significant bits connected to said output of said multiplexer; and
an instruction decode unit responsive to received instructions, said instruction decode unit responsive to a received section select register move instruction to supply data from an instruction specified one of said plurality of data registers to said input of said execution unit, supply an instruction specified select input of said multiplexer, and store data at said output of said execution unit in an instruction specified one of said plurality of data registers.
1 Assignment
0 Petitions
Accused Products
Abstract
A data processing apparatus execution unit includes a multiplexer having inputs receiving data from sections of a source data register or registers. The multiplexer selects data from one section to store in a destination data register. The execution unit may zero extend or sign extend the remaining most significant bits of the destination data. In an alternative embodiment, the execution unit includes plural multiplexers, one for each section of the destination data. Each multiplexer received data from each section of the source data register or registers. Special codes in the sections of the second source data register may select 0 fill, 1 fill or sign extension from the next most significant section for each multiplexer.
-
Citations
42 Claims
-
1. A data processing apparatus comprising:
-
a data register file including a plurality of data registers for storing data;
an execution unit having an input connected to said data register file, a multiplexer having a plurality of inputs receiving data from bits of corresponding equally sized sections of contiguous bits of said input, an output and a select input, said multiplexer coupling data from a selected one of said plurality of inputs corresponding to said select input to said output, and an output having a contiguous section of least significant bits connected to said output of said multiplexer; and
an instruction decode unit responsive to received instructions, said instruction decode unit responsive to a received section select register move instruction to supply data from an instruction specified one of said plurality of data registers to said input of said execution unit, supply an instruction specified select input of said multiplexer, and store data at said output of said execution unit in an instruction specified one of said plurality of data registers. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. A data processing apparatus comprising:
-
a data register file including a plurality of data registers for storing data;
an execution unit having a first input connected to said data register file, a second input connected to said data register file, a multiplexer having a plurality of inputs receiving data from bits of corresponding equally sized sections of contiguous bits of said first and second input, an output and a select input, said multiplexer coupling data from a selected one of said plurality of inputs corresponding to said select input to said output, and an output having a contiguous section of least significant bits connected to said output of said multiplexer; and
an instruction decode unit responsive to received instructions, said instruction decode unit responsive to a received section select register move instruction to supply data from a first instruction specified one of said plurality of data registers to said first input of said execution unit, supply data from a second instruction specified one of said plurality of data registers to said second input of said execution unit, supply an instruction specified select input of said multiplexer, and store data at said output of said execution unit in an instruction specified one of said plurality of data registers. - View Dependent Claims (13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23)
-
-
24. A data processing apparatus comprising:
-
a data register file including a plurality of data registers for storing data;
an execution unit having an input connected to said data register file, an output, and a plurality of multiplexers, each having a plurality of inputs receiving data from bits of corresponding equally sized sections of contiguous bits of said input, an output and a select input, each multiplexer coupling data from a selected one of said plurality of inputs corresponding to said select input to a corresponding section of contiguous bits of said output, and an instruction decode unit responsive to received instructions, said instruction decode unit responsive to a received multiple section select register move instruction to supply data from an instruction specified one of said plurality of data registers to said input of said execution unit, supply an instruction specified select input of each of said plurality of multiplexers, and store data at said output said execution unit in an instruction specified one of said plurality of data registers. - View Dependent Claims (25, 26, 27, 28, 29, 30, 31, 32)
-
-
33. A data processing apparatus comprising:
-
a data register file including a plurality of data registers for storing data;
an execution unit having a first input connected to said data register file, a second input connected to said data register file, an output, and a plurality of multiplexers, each having a plurality of inputs receiving data from bits of corresponding equally sized sections of contiguous bits of said first and second inputs, an output and a select input, each multiplexer coupling data from a selected one of said plurality of inputs corresponding to said select input to a corresponding section of contiguous bits of said output, and an instruction decode unit responsive to received instructions, said instruction decode unit responsive to a received multiple section select register move instruction to supply data from a first instruction specified one of said plurality of data registers to said first input of said execution unit, supply data from a second instruction specified one of said plurality of data registers to said second input of said execution unit, supply an instruction specified select input to each of said plurality of multiplexers, and store data at said output of said execution unit in an instruction specified one of said plurality of data registers. - View Dependent Claims (34, 35, 36, 37, 38, 39, 40, 41, 42)
-
Specification