← Back to Patent Explorer
US4419728A Expired / Lapsed US ⏱️ 0.0 years remaining

Channel interface circuit providing virtual channel number translation and direct memory access

Assignee: AT&T Inc
•
Filing: 1981-06-22
•
Granted: 1983-12-06
•
Expires: 2001-06-22
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract The subject channel interface circuit functions to provide a high speed interface between a processor and a data link, which link carries data messages having virtual addresses. The message handler is programmable and serves to translate the header portion of the data message from a virtual address into a hardware memory address, which is used to activate a specific location in the processor memory. The data portion of the data message is then directly inputted to this memory location (i.e., DMA) and the appropriate file pointers are reset. When a complete file is received and stored in memory, the message handler generates a processor interrupt. Thus, the subject message handler performs all the data receiving tasks, including file storage and linking, without requiring the involvement of the associated processor. All known prior art message handler circuits require extensive processor involvement in the data storage operation and thereby significantly reduce the effective data transfer capabilities of the link.

Inventors

  • 👤 Allen L. Larson

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-25 14:07
CPC Classifications
G; G06; G06F; G06F13/00; G06F13/14; G06F13/20; G06F13/28; G06F15/00; G06F15/16; G06F15/161; G06F15/163; G06F15/167; G06F12/00; G06F12/02; G06F12/0223; G06F12/0292

Claims Analysis

Total Claims: 18
Claim 1
Independent Claim 264 words
In a data communication system wherein a communication channel (120) carries data messages, each of which contains a header field having a destination address and a virtual channel number, a processor (101) having data, address and control busses and an associated memory (102) connected to said data, address and control busses, a channel interface circuit (100) for interconnecting said data, address and control busses with said communication channel (120) comprising: interface means (119, 201, 204, 205) connected to said communication channel (120) and responsive to a data message appearing thereon for receiving said data message when said destination address identifies said processor (101); wherein said interface means (119, 201, 204, 205) includes incoming state controller means (201) responsive to said received data message for seizing said data, address and control busses; channel control memory means (212, 213) connected to said interface means (119, 201, 204, 205) and responsive to said received data message for translating said virtual channel number to a hardware address identifying a memory storage location in said processor memory (102); driver means (206) connected to both said channel control memory means (212, 213) and to said address bus and responsive to said hardware address for placing said hardware address on said address bus to activate said identified memory store location in said processor memory (102); and wherein said interface means (119, 201, 204, 205) is also connected to said data bus and is responsive to said received data message for directly storing the data portion of said data message as received in said activated memory store location via said data bus.
Claim 2
Dependent Claim 264 words
In a data communication system wherein a communication channel (120) carries data messages, each of which contains a header field having a destination address and a virtual channel number, a processor (101) having data, address and control busses and an associated memory (102) connected to said data, address and control busses, a channel interface circuit (100) for interconnecting said data, address and control busses with said communication channel (120) comprising: interface means (119, 201, 204, 205) connected to said communication channel (120) and responsive to a data message appearing thereon for receiving said data message when said destination address identifies said processor (101); wherein said interface means (119, 201, 204, 205) includes incoming state controller means (201) responsive to said received data message for seizing said data, address and control busses; channel control memory means (212, 213) connected to said interface means (119, 201, 204, 205) and responsive to said received data message for translating said virtual channel number to a hardware address identifying a memory storage location in said processor memory (102); driver means (206) connected to both said channel control memory means (212, 213) and to said address bus and responsive to said hardware address for placing said hardware address on said address bus to activate said identified memory store location in said processor memory (102); and wherein said interface means (119, 201, 204, 205) is also connected to said data bus and is responsive to said received data message for directly storing the data portion of said data message as received in said activated memory store location via said data bus.
Claim 3
Dependent Claim 123 words
The invention of claim 1 wherein: said channel control memory means (212, 213) is additionally connected to said data, address and control busses and is responsive to said processor (101) applying said virtual channel number to said address bus for storing memory gueue data identifying available processor memory (102) space output by said processor (101) on said data bus; and wherein said channel interface circuit (100) includes: comparison means (208-210) connected to said channel control memory means (212, 213) and said driver means (206) and responsive to said received data message for applying said hardware address to said driver means (206) when said memory queue data indicates that sufficient space is available in said processor memory (102) to store said received data message.
Claim 4
Dependent Claim 59 words
The invention of claims 1 or 2 wherein said channel interface circuit (100) includes: word count means (207) connected to said driver means (206) and said interface means (119, 201, 204, 205) and responsive to said received data message for incrementing said hardware address stored in said driver means (206) in synchronization with the receipt of said data message.
Claim 5
Dependent Claim 42 words
The invention of claim 3 wherein said word count means (207) is responsive to said received data message for generating an end of word indication when all of said data message has been received by said interface means (119, 201, 204, 205).
Claim 6
Dependent Claim 42 words
The invention of claim 4 wherein said interface means (119, 201, 204, 205) is responsive to said end of word indication for updating the information stored in said channel control memory means (212, 213) via said processor data, address and control busses.
Claim 7
Dependent Claim 62 words
The invention of claim 3 wherein said interface means (119, 201, 204, 205) includes: data buffer means (205) connected to said data bus and said interface means (119, 201, 204, 205) and responsive to said interface means (119, 201, 204, 205) for storing said received data message and for applying said received data message on a byte-by-byte basis to said data bus.
Claim 8
Dependent Claim 220 words
The invention of claim 1 wherein said channel interface circuit (100) includes: outgoing register means (106, 108, 110, 111) connected to said data, address and control busses and responsive to said processor (101) applying said virtual channel number to said address bus for storing outgoing memory queue data identifying the location of an outgoing message in processor memory (102) applied to said data bus by said processor (101); outgoing comparator means (107) connected to said outgoing register means (106, 108, 110, 111) and responsive to said outgoing memory queue data stored therein for generating a message available signal if said outgoing memory queue data indicates that an outgoing data message is stored in said processor memory (102); outgoing control means (103-105) connected to said outgoing register means (106, 108, 110, 111), said outgoing comparator means (107), said address and control busses, and responsive to said message available signal for transferring a hardware address from said outgoing memory queue data identifying a memory storage location in said processor memory (102) to said address bus to read said data message out of said processor memory (102); and wherein said interface means (119) is connected to said outgoing control means (103-105) and is responsive to same for outputting said data message which appears on said data bus on to said communication channel (120).
Claim 9
Dependent Claim 93 words
The invention of claim 7 wherein: said outgoing register means (106, 108, 110, 111) includes read pointer register means (110) for storing said hardware address identifying said memory storage location in said processor memory (102) containing said outgoing data message; and said outgoing control means (103-105) includes DMA address buffer means (104) connected to said read pointer register means (110) and to said address bus wherein said outgoing control means (103-105) is responsive to said message available signal for transferring said hardware address from said read pointer register (110) to said address bus.
Claim 10
Dependent Claim 41 words
The invention of claim 7 wherein said interface means (119, 201, 204, 205) and said outgoing control means (103-105) include processor means (201, 103) responsive to a control algorithm stored therein for regulating the operation of said channel interface circuit (100).
Claim 11
Dependent Claim 275 words
In a data communication system wherein a communication channel (120) carries data messages, each of which contains a header field having a destination address and a virtual channel number, a processor (101) having data, address and control busses and an associated memory connected to said data, address and control busses, a channel interface circuit (100) for interconnecting said data, address and control busses with said communication channel (120) comprising: interface means (119, 201, 204, 205) connected to said communication channel (120) and responsive to a data message appearing thereon for storing said data message when said destination address identifies said processor (101); wherein said interface means (119, 201, 204, 205) includes incoming state controller means (201) responsive to said received data message for seizing said data, address and control busses; channel control memory means (212, 213) connected to said interface means (119, 201, 204, 205) and responsive to said received data message for translating said virtual channel number to a hardware address identifying a memory storage location in said processor memory (102); driver means (206) connected to both said channel control memory means (212, 213) and to said processor address bus and responsive to said hardware address for placing said hardware address on said processor address bus to activate said identified memory store location in said processor memory (102); and wherein said interface means (119, 201, 204, 205) is also connected to said data bus and is responsive to said received data message for transferring the data portion of said data message from said interface means (119, 201, 204, 205) to said activated memory store location in said processor memory (102) via said data bus.
Claim 12
Dependent Claim 275 words
In a data communication system wherein a communication channel (120) carries data messages, each of which contains a header field having a destination address and a virtual channel number, a processor (101) having data, address and control busses and an associated memory connected to said data, address and control busses, a channel interface circuit (100) for interconnecting said data, address and control busses with said communication channel (120) comprising: interface means (119, 201, 204, 205) connected to said communication channel (120) and responsive to a data message appearing thereon for storing said data message when said destination address identifies said processor (101); wherein said interface means (119, 201, 204, 205) includes incoming state controller means (201) responsive to said received data message for seizing said data, address and control busses; channel control memory means (212, 213) connected to said interface means (119, 201, 204, 205) and responsive to said received data message for translating said virtual channel number to a hardware address identifying a memory storage location in said processor memory (102); driver means (206) connected to both said channel control memory means (212, 213) and to said processor address bus and responsive to said hardware address for placing said hardware address on said processor address bus to activate said identified memory store location in said processor memory (102); and wherein said interface means (119, 201, 204, 205) is also connected to said data bus and is responsive to said received data message for transferring the data portion of said data message from said interface means (119, 201, 204, 205) to said activated memory store location in said processor memory (102) via said data bus.
Claim 13
Dependent Claim 116 words
The invention of claim 10 wherein: said channel control memory means (212, 213) is additionally connected to said data, address and control busses and is responsive to said processor (101) applying said virtual channel number to said address bus for storing memory queue data output by said processor or said data bus; and wherein said channel interface circuit (100) includes: comparison means (208-210) connected to said channel control memory means (212, 213) and said driver means (206) and responsive to said received data message for applying said hardware address to said driver means (206) when said memory queue data indicates that sufficient space is available in said processor memory (102) to store said received data message.
Claim 14
Dependent Claim 67 words
The invention of claim 10 or 11 wherein said channel interface circuit (100) includes: word count means (207) connected to said driver means (206) and said interface means (119, 201, 204, 205) and responsive to said received data message for incrementing said hardware address stored in said driver means as said data message is output from said interface means (119, 201, 204, 205) to said data bus.
Claim 15
Dependent Claim 42 words
The invention of claim 12 wherein said word count means (207) is responsive to said received data message for generating an end of word indication when all of said data message has been received by said interface means (119, 201, 204, 205).
Claim 16
Dependent Claim 42 words
The invention of claim 13 wherein said interface means (119, 201, 204, 205) is responsive to said end of word indication for updating the information stored in said channel control memory means (212, 213) via said processor data, address and control busses.
Claim 17
Dependent Claim 434 words
In a data communication system wherein a communication channel (120) carries data messages, each of which contains a header field having a destination address and a virtual channel number, a processor (101) having data, address and control busses and an associated memory (102) connected to said data, address and control busses, a channel interface circuit (100) for interconnecting said data, address and control busses with said communication channel (120) comprising: interface means (119, 201, 204, 205) connected to said communication channel (120) and responsive to a data message appearing thereon for receiving said data message when said destination address identifies said processor (101); wherein said interface means (119, 201, 204, 205) includes incoming state controller means (201) responsive to said received data message for seizing said data, address and control busses; wherein said interface means (119, 201, 204, 205) includes data buffer means (205) responsive to said received data message for storing said data message as received; channel control memory means (212, 213) connected to said interface means (119, 201, 204, 205) and responsive to said received data message for translating said virtual channel number to a hardware address identifying a memory storage location in said processor memory (102); wherein said channel control memory means (212, 213) is additionally connected to said data, address and control busses and is responsive to said processor (101) applying said virtual channel number to said address bus for storing memory queue data output by said processor (101) on said data bus; comparison means (208-210) connected to said channel control memory means (212, 213) and responsive to said received data message for outputting said hardware address if said memory queue data indicates that sufficient space is available in said processor memory (120) to store said data message; driver means (206) connected to both said comparison means (208-210) and to said address bus and responsive to said hardware address for placing said hardware address on said address bus to activate said identified memory store location in said processor memory (120); word count means (207) connected to said driver means (206) and said interface means (119, 201, 204, 205) and responsive to said received data message for incrementing said hardware address stored in said driver means (206) in synchronization with the storage of said data message in said data buffer means (205); and wherein said data buffer means (205) is also connected to said data bus and is responsive to said word count means (207) incrementing said hardware address for directly storing the data portion of said data message as received in said activated memory store location via said data bus.
Claim 18
Dependent Claim 434 words
In a data communication system wherein a communication channel (120) carries data messages, each of which contains a header field having a destination address and a virtual channel number, a processor (101) having data, address and control busses and an associated memory (102) connected to said data, address and control busses, a channel interface circuit (100) for interconnecting said data, address and control busses with said communication channel (120) comprising: interface means (119, 201, 204, 205) connected to said communication channel (120) and responsive to a data message appearing thereon for receiving said data message when said destination address identifies said processor (101); wherein said interface means (119, 201, 204, 205) includes incoming state controller means (201) responsive to said received data message for seizing said data, address and control busses; wherein said interface means (119, 201, 204, 205) includes data buffer means (205) responsive to said received data message for storing said data message as received; channel control memory means (212, 213) connected to said interface means (119, 201, 204, 205) and responsive to said received data message for translating said virtual channel number to a hardware address identifying a memory storage location in said processor memory (102); wherein said channel control memory means (212, 213) is additionally connected to said data, address and control busses and is responsive to said processor (101) applying said virtual channel number to said address bus for storing memory queue data output by said processor (101) on said data bus; comparison means (208-210) connected to said channel control memory means (212, 213) and responsive to said received data message for outputting said hardware address if said memory queue data indicates that sufficient space is available in said processor memory (120) to store said data message; driver means (206) connected to both said comparison means (208-210) and to said address bus and responsive to said hardware address for placing said hardware address on said address bus to activate said identified memory store location in said processor memory (120); word count means (207) connected to said driver means (206) and said interface means (119, 201, 204, 205) and responsive to said received data message for incrementing said hardware address stored in said driver means (206) in synchronization with the storage of said data message in said data buffer means (205); and wherein said data buffer means (205) is also connected to said data bus and is responsive to said word count means (207) incrementing said hardware address for directly storing the data portion of said data message as received in said activated memory store location via said data bus.

References Cited (Backward Citations)

US3588831A Cited
US4093981A Cited
US4228496A Cited
US4092715A Cited
US4189769A Cited
US4133030A Cited
US4156907A Cited
US4155119A Cited
US4225919A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1986-12-05 1987-06-06 1987-12-06 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 1990-12-05 1991-06-06 1991-12-06 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 1994-12-05 1995-06-06 1995-12-06 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag