WikiPatents - Community Patent Review
Create Free Account  |  License or Sell Your Patent  |  WikiPatents Marketplace  |  WikiPatents Blog
Username:  Password:  
    
Advanced Search
I/O structure for information processing system    
United States Patent5101478   
Link to this pagehttp://www.wikipatents.com/5101478.html
Inventor(s)Fu; Andrew N. (Lexington, MA); Kibler; Tom R. (Groton, MA); MacDonald; James B. (Lowell, MA); Nash; Robert C. (Chelmsford, MA); Olson; Stephen W. (Wilmington, MA); Patel; Bhikoo J. (Lowell, MA); Trottier; Robert R. (Lowell, MA); Mahoney; Kevin T. (Tewksbury, MA); Whipple; David L. (Braintree, MA); Morrison; Peter A. (Framinghamm, MA)
AbstractAn I/O structure for use in a digital data processing system of the type in which system components including a processor and a system memory are connected by a system bus. The I/O structure includes a system bus interface connected to the system bus, a synchronous satellite processing unit (SPU) bus connected to the system bus interface, one or more satellite processing units (SPUs) connected to the SPU bus, and peripheral devices attached to the satellite processing units. Each SPU has three main components: control logic including a microprocessor for controlling the SPU, a device adapter specific to the peripheral device for controlling the peripheral device and transferring data between the peripheral device and the SPU, and an interface unit connected to the control logic and the device adapter for providing I/O communications to the SPU bus and responding to I/O communications on the SPU bus. The I/O communications fall into two classes: communications to SPUs and communications to system components. The communications to SPUs all require a single SPU bus cycle; the communications to system components require one or more cycles. The system bus interface translates communications to system components into communications on the system bus and translates communications on the system bus intended for a SPU into communications to SPUs. The SPU bus includes first lines for carrying an I/O command and an identifier for an SPU involved in the communication and second lines for carrying the contents of the communication. In multicycle communications, the I/O command and identifier remain on the first lines for all cycles, but the information on the second lines varies from cycle to cycle.
   














 Title Information Submit all comments and votes
 
Patent Text Patent PDF Print Page Summary File History
Plain text PDF images Print Summary File History
Drawing from US Patent 5101478
I/O structure for information processing system - US Patent 5101478 Drawing
I/O structure for information processing system
Inventor     Fu; Andrew N. (Lexington, MA); Kibler; Tom R. (Groton, MA); MacDonald; James B. (Lowell, MA); Nash; Robert C. (Chelmsford, MA); Olson; Stephen W. (Wilmington, MA); Patel; Bhikoo J. (Lowell, MA); Trottier; Robert R. (Lowell, MA); Mahoney; Kevin T. (Tewksbury, MA); Whipple; David L. (Braintree, MA); Morrison; Peter A. (Framinghamm, MA)
Owner/Assignee     Wang Laboratories, Inc. (Lowell, MA)
Patent assignment
All assignments
Publication Date     March 31, 1992
Application Number     07/228,768
PAIR File History     Application Data   Transaction History
Image File Wrapper   Patent Term   Fees
Litigation
Filing Date     August 4, 1988
US Classification     710/1
Int'l Classification     G06F 013/00
Examiner     Shaw; Gareth D.
Assistant Examiner     Fagan; Matthew C.
Attorney/Law Firm     Shanahan; Michael H. Peterson; Scott K. ,
Address
Parent Case     This is a continuation of co-pending application Ser. No. 750,112 filed on June 28, 1985, now abandoned.
Priority Data    
USPTO Field of Search     364/200 364/900
Patent Tags     i/o information processing
   
Enter a comma (,) or semicolon (;) between multiple tag words/phrases.
Describe this patent:
 Amusing   
 Clever   
 Complex   
 Efficient   
 Historic   
 Important   
 Innovative   
 Interesting   
 Practical   
 Simple   
[no votes]
Patent WIKI

Share information and news about this patent, including information and news about the technology, inventors, company, ligation and licensing.

 References Submit all comments and votes
 
*references marked with an asterisk below are user-added references
 U.S. References
 
Add a new US reference:  
ReferenceRelevancyCommentsReferenceRelevancyComments
4635192
Ceccon
710/301
Jan,1987

[0 after 0 votes]
4623886
Livingston
340/825.5
Nov,1986

[0 after 0 votes]
4620275
Wallach
712/6
Oct,1986

[0 after 0 votes]
4608631
Stiffler
710/113
Aug,1986

[0 after 0 votes]
4586128
DeWoskin
710/113
Apr,1986

[0 after 0 votes]
4543627
Schwab
709/212
Sep,1985

[0 after 0 votes]
4536838
Ringel
710/109
Aug,1985

[0 after 0 votes]
4504927
Callan
710/2
Mar,1985

[0 after 0 votes]
4494185
Gunderson
709/252
Jan,1985

[0 after 0 votes]
4493021
Agrawal
709/236
Jan,1985

[0 after 0 votes]
4486826
Wolff
714/9
Dec,1984

[0 after 0 votes]
4484275
Katzman
710/40
Nov,1984

[0 after 0 votes]
4480307
Budde
710/100
Oct,1984

[0 after 0 votes]
4428043
Catiller
709/250
Jan,1984

[0 after 0 votes]
4418386
Vrielink
713/501
Nov,1983

[0 after 0 votes]
4414620
Tsuchimoto
709/217
Nov,1983

[0 after 0 votes]
4396995
Grau
714/49
Aug,1983

[0 after 0 votes]
4388686
Haid
709/208
Jun,1983

[0 after 0 votes]
4371932
Dinwiddie, Jr.
710/21
Feb,1983

[0 after 0 votes]
4363094
Kaul
710/113
Dec,1982

[0 after 0 votes]
4348725
Farrell
700/5
Sep,1982

[0 after 0 votes]
4323967
Peters
710/107
Apr,1982

[0 after 0 votes]
4320452
Kempf
710/107
Mar,1982

[0 after 0 votes]
4214305
Tokita
710/113
Jul,1980

[0 after 0 votes]
3710324
Cohen
710/40
Jan,1973

[0 after 0 votes]
 Foreign References
 Other References
 Market Review Submit all comments and votes
   
Market Size
Estimate the gross annual revenues of the relevant market sector:
> $10B
$5B - $10B
$2B - $5B
$500M - $2B
$100M - $500M
$10M - $100M
$1M - $10M
$500K - $1M
$100K - $500K
< $100K
[No votes]
$0
 
$0   $2.5B   $5B   $7.5B   $10B
Market Share
Estimate the percentage of the relevant market sector this invention will capture:
75% - 100%
50% - 74.99%
25% - 49.99%
10 - 24.99%
5 - 9.99%
2 - 4.99%
1 - 1.99%
< 1%
[No votes]
0.0%
 
0%   25%   50%   75%   100%
Reasonable Royalty
What percentage of gross sales should the inventor or assignee be paid?
75% - 100%
50% - 74.99%
25% - 49.99%
10 - 24.99%
5 - 9.99%
2 - 4.99%
1 - 1.99%
< 1%
[No votes]
0.0%
 
0%   25%   50%   75%   100%
Public's "Guesstimation" of Royalty Value
Market SizeN/A[No votes]
xMarket ShareN/A[No votes]
xReasonable RoyaltyN/A[No votes]

N/A

License Availablity
If you are NOT the owner or assignee, answer here:
Yes, license is available for purchase

No, license is not currently available



[No votes]
License Availablity
If you ARE the owner or assignee, answer here:
Yes, license is available for purchase

No, license is not currently available



[No votes]
Competitive Advantage
Does this invention have a significant competitive advantage over similar technologies?
Yes

No



[No votes]
Most helpful competitive advantage comment
[No comments]

Commercial Alternatives
Are there viable commercial alternatives for this invention?
Yes

No



[No votes]
Most helpful commercial alternative comment
[No comments]

 Technical Review Submit all comments and votes
 Claims Submit all comments and votes
 


What is claimed is:

1. An I/O subsystem component for coupling a peripheral device to an I/O subsystem of a digital data processing system, the I/O subsystem including one or more I/O subsystem components and a synchronous I/O subsystem bus for carrying I/O communications, which require one or more I/O subsystem bus cycles, and which include I/O subsystem communications that have I/O subsystem components as destinations and I/O system communications that have components of the digital data processing system outside of the I/O subsystem as destinations, the I/O subsystem component comprising:

control means for controlling the I/O subsystem component to originate and provide I/O communications, and responding to an incoming message;

device adapter means coupled to the peripheral device and controlled by the control means for transferring outgoing data from the peripheral device for inclusion in certain of the I/O communications and transferring incoming data intended for the peripheral device to the peripheral device; and

interface means coupled to the I/O subsystem bus, to the control means, and to the device adapter means for responding to the control means when the I/O subsystem component is providing an I/O communication to the I/O subsystem bus by receiving I/O communication information for the I/O communication from at least one of the control means and the device adapter means and outputting the I/O communication to the I/O subsystem bus as required for the I/O communication and responding to the I/O subsystem bus by monitoring I/O communications on the I/O subsystem bus and responding thereto only when the I/O communication is one of the I/O subsystem communications and has the I/O subsystem component as its destination by receiving the I/O communication and providing any incoming message to the control means and any incoming data intended for the device adapter means to the device adapter means.

2. The I/O subsystem component as set forth in claim 1 and wherein:

the I/O subsystem bus includes

a first plurality of lines for carrying an I/O command belonging to the I/O communication during all of the I/O subsystem bus cycles required for the I/O communication;

a second plurality of lines for carrying a target identification which belongs to the I/O communication and which identifies an I/O subsystem component involved in the I/O communication during all of the I/O subsystem bus cycles required for the I/O communication; and

a third plurality of lines which carries other information belonging to the I/O communication; and

when the I/O subsystem component is providing an I/O communication to the I/O subsystem bus, the control means provides the I/O command and the target identification to the interface means, and

the interface means outputs the I/O command to the first plurality of lines and the target identification to the second plurality of lines for all of the I/O subsystem bus cycles required for the I/O communication and outputs the other I/O information as required for the I/O communication to the third plurality of lines; and

when the I/O subsystem component is responding to an I/O communication, the interface means responds to an I/O command belonging to one of the I/O subsystem communications on the first plurality of lines and a target identification specifying the I/O subsystem component on the second plurality of lines by receiving the other information on the third plurality of lines.

3. The I/O subsystem component set forth in claim 1 wherein:

certain of the I/O system communications and certain of the I/O subsystem communications each includes a message; and

when the control means controls the I/O subsystem component to originate and provide one of the certain I/O system communications or the certain I/O subsystem communications, the control means provides a message for inclusion in the provided communication.

4. The I/O subsystem component as set forth in claim 1 and wherein:

the digital data processing system includes memory means which are indirectly coupled to the I/O subsystem bus;

the I/O system communications include an I/O memory write communication which specifies an operation in which data is written from the I/O subsystem component to the memory means and which includes the data to be written and the I/O subsystem communications include an I/O subsystem data return communication which specifies an operation in which data is provided to the I/O subsystem component and which includes the data to be provided;

the control means includes means for specifying a direct memory access operation; and

when the direct memory access operation has been specified and the I/O subsystem component is providing the I/O memory write communication, the device adapter means provides outgoing data to the interface means and when the direct memory access operation has been specified and the I/O subsystem component is responding to the I/O subsystem data return communication, the device adapter means takes incoming data from the interface means.

5. The I/O subsystem component as set forth in claim 4 and wherein:

the I/O memory write communication further includes a memory address of the data to be written;

the interface means includes memory address incrementing means and when the direct memory access operation has been specified, the control means provides a start address for a first one of a sequence of I/O memory write communications and the interface means employs the address incrementing means to provide memory addresses for the remaining I/O memory write communications in the sequence.

6. An I/O subsystem system component of a digital data processing system for transferring data to or from one or more peripheral devices in the digital data processing system, the I/O subsystem system component and other system components being coupled to a system bus which transfers system communications among the I/O subsystem system component and the other system components, the I/O subsystem system component comprising:

a synchronous I/O subsystem bus for transferring a plurality of I/O communications which require one or more I/O subsystem bus cycles, the I/O communications including I/O system communications which have system components as their destinations and I/O subsystem communications which have I/O subsystem components within the I/O subsystem system component as their destinations, the I/O subsystem bus comprising

a first plurality of lines for carrying an I/O command portion of one of the I/O communications, the I/O command portion specifying the one I/O communication during all of the I/O subsystem bus cycles required to transfer the one I/O communication,

a second plurality of lines for carrying, during all of the I/O subsystem bus cycles required to transfer the one I/O communication, a target identification portion of the one I/O communication, the target identification identifying the I/O subsystem component which is the source of the one I/O communication when the one I/O communication is an I/O system communication and identifying the I/O subsystem component which is the destination of the one I/O communication when the one I/O communication is an I/O subsystem communication, and

a third plurality of lines which carries an other information portion of the one I/O communication;

one or more I/O subsystem components, each I/O subsystem component being coupled between a given one of the peripheral devices and the I/O subsystem bus for originating I/O communications and providing the I/O communications to the I/O subsystem bus (at least some of these I/O communications including data from the peripheral device) and for responding only to I/O subsystem communications (at least some of these I/O communications including data to the peripheral device); and

system bus interface means which are coupled between the system bus and the I/O subsystem bus for responding to an I/O system communication, on the I/O subsystem bus, by providing a corresponding system communication on the system bus and for responding to a system communication, on the system bus, specifying an operation to be performed in the I/O subsystem system component by providing a corresponding I/O subsystem communication on the I/O subsystem bus.

7. In a digital data processing system wherein system components are connected to a system bus which carries system communications including system interprocessor communications and includes a busy line for carrying a busy signal which indicates to a system component which is a source of a system communication that the system communication cannot presently be sent, the system components include an I/O subsystem system component including an I/O subsystem bus which carries I/O subsystem communications including I/O subsystem interprocessor communications and which has an IPC not ready line for carrying an IPC not ready signal and a system bus interface connected between the I/O subsystem bus and the system bus which converts system interprocessor communications destined for an I/O subsystem component of the I/O subsystem system component into corresponding I/O subsystem interprocessor communications and I/O subsystem communications destined for other system components into corresponding system communications, an I/O subsystem component (for coupling a

peripheral device to the I/O subsystem bus) comprising:

control means for controlling the I/O subsystem component to originate and provide I/O subsystem communications to the I/O subsystem bus and for responding to incoming messages received in I/O subsystem interprocessor communications and

interface means coupled to the I/O subsystem bus, to the control means, and to the peripheral device for responding to the control means when the I/O subsystem component is providing an I/O subsystem communication to the I/O subsystem bus by receiving I/O subsystem communication information for the I/O subsystem communication and outputting the I/O subsystem communication to the I/O subsystem bus, for responding to the I/O subsystem bus by monitoring I/O subsystem communications on the I/O subsystem bus and responding to an I/O subsystem communication that has the I/O subsystem component as its destination by receiving the I/O subsystem communication and providing any incoming message to the control means and any incoming data intended for the peripheral device to the peripheral device, and for responding to the control means when the I/O subsystem component is unable to respond to a system interprocessor communication destined for the I/O subsystem component by providing the IPC not ready signal to the IPC not ready line,

the system bus interface responding to the IPC not ready signal and to a system interprocessor communication destined for the I/O subsystem component by not converting the system interprocessor communication to a corresponding I/O subsystem interprocessor communication and by outputting the busy signal on the busy line,

whereby the system bus immediately becomes available for any system communication other than a system interprocessor communication destined for the I/O subsystem component.

8. The I/O subsystem component set forth in claim 7 wherein:

the I/O subsystem component is one of a plurality thereof coupled to the I/O subsystem bus, and the I/O subsystem bus includes a separate IPC not ready line for each I/O subsystem component coupled to the I/O subsystem bus;

an I/O subsystem component of the plurality is further a source of certain I/O subsystem interprocessor communications; and

the interface means of an I/O subsystem component of the plurality whose IPC not ready line is carrying the IPC not ready signal and which is not currently a source of an I/O subsystem interprocessor communication remains responsive to an I/O subsystem interprocessor communication whose source is not a system component.

9. An I/O subsystem system component of a digital data processing system for transferring data to or from one or more peripheral devices in the digital data processing system, the I/O subsystem system component and other system components being coupled to a system bus which transfers system communications among the I/O subsystem system component and the other system components, the I/O subsystem system component comprising:

a synchronous I/O subsystem bus for transferring a plurality of I/O communications which require one or more I/O subsystem bus cycles, the I/O communications including I/O system communications which have system components as their destinations and I/O subsystem communications which have I/O subsystem components within the I/O subsystem system component as their destinations,

one or more I/O subsystem components, each I/O subsystem component being coupled between a given one of the peripheral devices and the I/O subsystem bus for originating I/O communications and providing the I/O communications to the I/O subsystem bus (at least some of these I/O communications including data from the peripheral device) and for responding only to I/O subsystem communications (at least some of these I/O communications including data from the peripheral device); and

system bus interface means which are coupled between the system bus and the I/O subsystem bus for responding to an I/O system communication, on the I/O subsystem bus, by providing a corresponding system communication on the system bus and for responding to a system communication, on the system bus, specifying an operation to be performed in the I/O subsystem system component by providing a corresponding I/O subsystem communication on the I/O subsystem bus

and wherein

at least one of the system components is a memory means;

the system communications include a system memory read communication which specifies an operation in which data read from the memory means is returned to the system component which is the source of the memory read communication and a system memory write communication which specifies data and an operation in which the data provided by the system component which is the source of the system memory write communication is written to the memory means;

a system component can perform a lock operation in which system components other than a system component presently having access to the system bus are inhibited from having access thereto and an unlock operation in which other system components are given access to the system bus;

the I/O system communications include a memory test and set communication specifying an operation in which an I/O subsystem component specifies data in the memory means which is to be read and modified;

the I/O subsystem communications include an I/O subsystem data return communication which specifies data and an operation in which the data is returned to an I/O subsystem component; and

the system bus interface means responds to an I/O memory test and set communication by performing the lock operation, producing a system memory read communication on the system bus, then, upon receipt of data from the memory means, producing an I/O subsystem data return communication which includes the received data on the I/O subsystem bus, modifying the received data, producing a system memory write communication which includes the modified data, and performing the unlock operation.

10. Interface apparatus for interfacing an I/O subsystem component of an I/O subsystem system component of a digital data processing system to an I/O subsystem bus, the I/O subsystem system component including at least one I/O subsystem component and the digital data processing system including memory means and other system components which are coupled indirectly to the I/O subsystem bus, the I/O subsystem component being connected to a peripheral device for performing operations as required to transfer data to or from the peripheral device, the operations being specified on the I/O subsystem bus by a plurality of I/O communications which require one or more I/O subsystem bus cycles and which include an I/O memory write communication specifying an operation in which data is transferred from the I/O subsystem component to the memory means, an I/O subsystem message communication specifying an operation in which a message is transferred to an I/O subsystem component, and an I/O subsystem data return communication specifying an operation in which data is returned to an I/O subsystem component, and the I/O subsystem bus including a first plurality of lines for carrying an I/O command specifying one of the I/O communications during all of the I/O subsystem bus cycles required to transfer the specified communication, a second plurality of lines for carrying a target identification identifying an I/O subsystem component involved in the specified communication during all of the I/O subsystem bus cycles required to transfer the specified communication, and a third plurality of lines which carries a memory address during a first I/O subsystem bus cycle and data during a second I/O subsystem bus cycle of the I/O memory write communication, which carries the message during transfer of the I/O subsystem message communication, and which carries data during transfer of the I/O subsystem data return communication, the interface apparatus comprising:

I/O command output means coupled to the first plurality of lines for outputting the I/O command of an I/O communication to the first plurality of lines during all of the I/O subsystem bus cycles required by the I/O subsystem component originating the I/O communication to output the I/O communication;

first output means coupled to the second plurality of lines for outputting an identification of an I/O subsystem component involved in the I/O communication during all I/O subsystem bus cycles required by the I/O subsystem component originating the I/O communication to output the I/O communication;

second output means coupled to the third plurality of lines for outputting a memory address to the third plurality of lines during the first I/O subsystem bus cycle of the memory write communication;

third output means coupled to the third plurality of lines for outputting data to the third plurality of lines during the second I/O subsystem bus cycle of the memory write communication;

target identification receiving means coupled to the second plurality of lines for receiving the target identification of an I/O communication on the I/O subsystem bus and determining whether the received target identification matches an identification of the I/O subsystem component;

I/O command receiving and decoding means coupled to the first plurality of lines for responding to a match detected by the target identification receiving means by receiving and decoding the I/O command of the I/O communication on the first plurality of lines;

message receiving means coupled to the third plurality of lines and responsive to the I/O command decoding means for receiving the message on the third plurality of lines when the target identification and the I/O command indicate that the I/O communication is an I/O subsystem message communication intended for the I/O subsystem component; and

data receiving means coupled to the third plurality of lines and responsive to the I/O command decoding means for receiving data on the third plurality of lines when the target identification and the I/O command indicate that the I/O communication is in I/O subsystem data return communication intended for the I/O subsystem component.

11. The interface apparatus as set forth in claim 10 and wherein:

the data receiving means includes a first data receiving means and a second data receiving means;

the I/O communications further include a plurality of I/O subsystem data return communications including a first data return communication which specifies that data be returned to the first data receiving means and a second data return communication which specifies that data be returned to the second data receiving means; and

when the I/O subsystem component receives a first data return communication intended for the I/O subsystem component, the first data receiving means receives the data and when the I/O subsystem component receives a second data return communication intended for the I/O subsystem component, the second data receiving means receives the data.

12. The interface apparatus set forth in claim 10 wherein:

the I/O communications further include a system component message communication having a type and specifying an operation in which a message is transferred from the I/O subsystem component to a non-memory system component;

the third plurality of lines further carries a control word during a first I/O subsystem bus cycle and a message during a second I/O subsystem bus cycle of the system component message communication, the control word identifying the type of system component message communication and identifying the system component to which the message is to be transferred; and

the second output means further outputs the control word during the first I/O subsystem bus cycle of the system component message communication.

13. The interface apparatus set forth in claim 10 wherein:

the system components are connected by a system bus which carries system communications including system component message communications and includes a busy line for carrying a busy signal which indicates to a system component which was the source of a system component message communication that the system component message communication cannot presently be sent;

the I/O subsystem bus further includes a system component message not ready line and is coupled to the system bus by means of a system bus interface which converts a system component message communication destined for the I/O subsystem component to a corresponding I/O subsystem message communication and an I/O subsystem message communication destined for a system component to a corresponding system component message communication; and

the interface apparatus further includes system component message not ready signal output means connected to the system component message not ready line for outputting a system component message not ready signal when the I/O subsystem component cannot respond to a system component message communication destined for the I/O subsystem component, the system bus interface means responding to the system component message not ready signal and to a system component message communication destined for the I/O subsystem component by not converting the system component message communication to the corresponding I/O subsystem message communication and setting the busy line to indicate that the I/O subsystem system component is busy,

whereby the system bus immediately becomes ava