Queued serial peripheral interface for use in a data processing system
First Claim
1. A microcomputer comprising a central processing unit and a serial data communication apparatus, the serial data communication apparatus further comprising:
- a first memory coupled to the central processing unit, said first memory having a first predetermined number of storage locations;
transfer means coupled to said first memory for executing serial data transfers between the serial data communication apparatus and at least one other device coupled thereto, the transfer means further comprising;
means for retrieving data from said first memory at a first one of said first predetermined number of storage locations;
means for transmitting said retrieved data to said at least one other device;
means for receiving data from said at least one other device; and
means for storing said received data in said first memory at a second one of said first predetermined number of storage locations;
a second memory coupled to the central processing unit, said second memory having a second predetermined number of storage locations;
queue pointer means coupled to said first memory means for maintaining a queue pointer value which specifies said first one of said first predetermined number of storage locations; and
control means coupled to said central processing unit, said transfer means, said first and second memories and said queue pointer means for responding to a first state of an enable bit stored in said second memory at a first one of said second predetermined number of storage locations by directing said transfer means to execute one of said serial data transfers and by incrementing said queue pointer value and for responding to a second state of said enable bit by disabling said transfer means;
the serial data communication apparatus is characterized in that;
said control means is further responsive to the central processing unit, while said enable bit is in said first state, to modify said queue pointer value by replacing said queue pointer value with a new queue pointer value provided by the central processing unit instead of incrementing said queue pointer value.
3 Assignments
0 Petitions
Accused Products
Abstract
A serial peripheral interface achieves compatibility with devices having previous such interfaces while singificantly reducing the amount of intervention required on the part of the controlling data processing device. Many serial transfers are written to a memory by the controlling device together with command and control information. The interface then executes the stored, or queued, transfers autonomously. Features such as programmable transfer length, programmable chip selects, an alterable queue pointer, and others contribute to the flexibility and usefulness of the interface.
98 Citations
18 Claims
-
1. A microcomputer comprising a central processing unit and a serial data communication apparatus, the serial data communication apparatus further comprising:
-
a first memory coupled to the central processing unit, said first memory having a first predetermined number of storage locations; transfer means coupled to said first memory for executing serial data transfers between the serial data communication apparatus and at least one other device coupled thereto, the transfer means further comprising; means for retrieving data from said first memory at a first one of said first predetermined number of storage locations; means for transmitting said retrieved data to said at least one other device; means for receiving data from said at least one other device; and means for storing said received data in said first memory at a second one of said first predetermined number of storage locations; a second memory coupled to the central processing unit, said second memory having a second predetermined number of storage locations; queue pointer means coupled to said first memory means for maintaining a queue pointer value which specifies said first one of said first predetermined number of storage locations; and control means coupled to said central processing unit, said transfer means, said first and second memories and said queue pointer means for responding to a first state of an enable bit stored in said second memory at a first one of said second predetermined number of storage locations by directing said transfer means to execute one of said serial data transfers and by incrementing said queue pointer value and for responding to a second state of said enable bit by disabling said transfer means; the serial data communication apparatus is characterized in that; said control means is further responsive to the central processing unit, while said enable bit is in said first state, to modify said queue pointer value by replacing said queue pointer value with a new queue pointer value provided by the central processing unit instead of incrementing said queue pointer value. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A microcomputer comprising a central processing unit and a serial data communication apparatus, the serial data communication apparatus further comprising:
-
a first memory coupled to the central processing unit, said first memory having a first predetermined number of storage locations; transfer means coupled to said first memory for executing serial data transfers between the serial data communication apparatus and at least one other device coupled thereto, the transfer means further comprising; means for retrieving data from said first memory at a first one of said first predetermined number of storage locations; means for transmitting said retrieved data to said at least one other device; means for receiving data from said at least one other device; and means for storing said received data in said first memory at a second one of said first predetermined number of storage locations; a second memory coupled to the central processing unit, said second memory having a second predetermined number of storage locations; queue pointer means coupled to said first memory means for maintaining a queue pointer value which specifies said first one of said first predetermined number of storage locations; control means coupled to said central processing unit, said transfer means, said first and second memories and said queue pointer means for responding to a first state of an enable bit stored in said second memory at a first one of said second predetermined number of storage locations by directing said transfer means to execute one of said serial data transfers and by incrementing said queue pointer value and for responding to a second state of said enable bit by disabling said transfer means; and select means coupled to said control means for retrieving data from said first memory at a third one of said first predetermined number of storage locations and for selecting one of said at least one other device in accordance with said retrieved data; the serial data communication apparatus is characterized in that; said queue pointer value also specifies said third one of said first predetermined number of storage locations. - View Dependent Claims (8, 9, 10, 11, 12)
-
-
13. A microcomputer comprising a central processing unit and a serial data communication apparatus, the serial data communication apparatus further comprising:
-
a first memory coupled to the central processing unit, said first memory having a first predetermined number of storage locations; transfer means coupled to said first memory for executing serial data transfers between the serial data communication apparatus and at least one other device coupled thereto, the transfer means further comprising; means for retrieving data from said first memory at a first one of said first predetermined number of storage locations; means for transmitting said retrieved data to said at least one other device; means for receiving data from said at least one other device; and means for storing said received data in said first memory at a second one of said first predetermined number of storage locations; a second memory coupled to the central processing unit, said second memory having a second predetermined number of storage locations; queue pointer means coupled to said first memory means for maintaining a queue pointer value which specifies said first one of said first predetermined number of storage locations; and control means coupled to said central processing unit said transfer means, said first and second memories and said queue pointer means for responding to a first state of an enable bit stored in said second memory at a first one of said second predetermined number of storage locations by directing said transfer means to execute one of said serial data transfers and by incrementing said queue pointer value and for responding to a second state of said enable bit by disabling said transfer means; the serial data communication apparatus is characterized in that; said control means is further responsive to a value of an end queue pointer bit field stored in said second memory at a second one of said second predetermined number of locations by disabling said transfer means. - View Dependent Claims (14, 15, 16, 17, 18)
-
Specification