IP Library Granted Patent US 10,148,593
Granted Patent B2
US 10,148,593 · App. 15/118,823 · Granted Dec 4, 2018

Directional allocation of communication links based on data traffic loads

Inventors: Avinash Karanth Kodi (Athens, OH); Dominic Ditomaso (Athens, OH); Ahmed Louri (Tuscon, AZ)
Assignees: Ohio University; Arizona Board of Regents on Behalf of the University of Arizona
H04L49/109H04L49/50
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,148,593
App. No.
15/118,823
Granted
Dec 4, 2018
Kind
B2
Abstract

A first example provides a circuit configured to operate in four modes. A first mode includes propagating data from a first terminal of the circuit to a second terminal of the circuit. A second mode includes propagating data from the second terminal of the circuit to the first terminal of the circuit. A third mode includes storing data received by the first terminal. A fourth mode includes storing data received by the second terminal. A second example provides a circuit configured to cause one or more communication links to operate in one of two modes based on data traffic detected on the one or more communication links. The first mode includes propagating data from a first router to a second router. The second mode includes propagating data to the first router from the second router.

Claims (85)

1. A circuit comprising;

a first terminal;

a second terminal;

a three-state buffer including an input terminal and an output terminal and configured to:

operate in a propagation mode that propagates data from the input terminal to the output terminal in response to receiving a first control signal corresponding to a first mode or a second control signal corresponding to a second mode, and

operate in an isolation mode that electrically isolates the output terminal in response to receiving a third control signal corresponding to a third mode or a fourth control signal corresponding to a fourth mode;

a storage module; and

a control module configured to:

in response to receiving the first control signal or the third control signal, couple the first terminal to the input terminal and the second terminal to the output terminal,

in response to receiving the second control signal or the fourth control signal, couple the second terminal to the input terminal and the first terminal to the output terminal, and

cause the circuit to operate in:

the first mode in response to receiving the first control signal, wherein operating in the first mode comprises propagating data received by the first terminal to the second terminal,

the second mode in response to receiving the second control signal, wherein operating in the second mode comprises propagating data received by the second terminal to the first terminal,

the third mode in response to receiving the third control signal, wherein operating in the third mode comprises the storage module storing data received by the first terminal, and

the fourth mode in response to receiving the fourth control signal, wherein operating in the fourth mode comprises the storage module storing data received by the second terminal.

2. The circuit of claim 1 , wherein:

the circuit is part of a communication link that communicatively couples a first router of a network-on-chip architecture with a second router of the network-on-chip architecture,

operating in the first mode further comprises:

the first terminal receiving first data transmitted by the first router, and

the second terminal transmitting the first data to the second router;

operating in the second mode further comprises:

the second terminal receiving second data transmitted by the second router, and

the first terminal transmitting the second data to the first router;

operating in the third mode further comprises:

the first terminal receiving third data transmitted by the first router, and

the storage module storing the third data; and

operating in the fourth mode further comprises:

the second terminal receiving fourth data transmitted by the second router, and

the storage module storing the fourth data.

3. The circuit of claim 1 , wherein:

coupling the first terminal to the input terminal comprises providing a conductive path between the first terminal and the input terminal; and

coupling the second terminal to the output terminal comprises providing a conductive path between the second terminal and the output terminal.

4. The circuit of claim 1 , wherein:

coupling the first terminal to the output terminal comprises providing a conductive path between the first terminal and the output terminal; and

coupling the second terminal to the input terminal comprises providing a conductive path between the second terminal and the input terminal.

5. The circuit of claim 1 , wherein the control module comprises a switch that is configured to:

open to electrically isolate the first terminal from the input terminal; and

close to create a conductive path between the first terminal and the input terminal.

6. The circuit of claim 1 , wherein the control module comprises a switch that is configured to:

open to electrically isolate the second terminal from the output terminal; and

close to create a conductive path between the second terminal and the output terminal.

7. The circuit of claim 1 , wherein the control module comprises a switch that is configured to:

open to electrically isolate the second terminal from the input terminal; and

close to create a conductive path between the second terminal and the input terminal.

8. The circuit of claim 1 , wherein the control module comprises a switch that is configured to:

open to electrically isolate the first terminal from the output terminal; and

close to create a conductive path between the first terminal and the output terminal.

9. The circuit of claim 1 , wherein storing the data received by the first terminal comprises the output terminal storing the data received by the first terminal.

10. The circuit of claim 1 , wherein storing the data received by the second terminal comprises the output terminal storing the data received by the second terminal.

11. A method performed by a circuit including a first terminal and a second terminal, the method comprising:

operating a three-state buffer including an input terminal and an output terminal in a propagation mode that propagates data from the input terminal to the output terminal in response to receiving a first control signal corresponding to a first mode or a second control signal corresponding to a second mode;

operating the three-state buffer in an isolation mode that electrically isolates the output terminal in response to receiving a third control signal corresponding to a third mode or a fourth control signal corresponding to a fourth mode;

in response to receiving the first control signal or the third control signal, coupling the first terminal to the input terminal and the second terminal to the output terminal;

in response to receiving the second control signal or the fourth control signal, coupling the second terminal to the input terminal and the first terminal to the output terminal;

in response to receiving the first control signal, propagating data received by the first terminal to the second terminal;

in response to receiving the second control signal, propagating data received by the second terminal to the first terminal;

in response to receiving the third control signal, storing data received by the first terminal; and

in response to receiving the fourth control signal, storing data received by the second terminal.

12. The method of claim 11 , wherein the circuit is part of a communication link that communicatively couples a first router of a network-on-chip architecture with a second router of the network-on-chip architecture, the method further comprising:

receiving first data transmitted by the first router at the first terminal;

in response to receiving the first control signal, transmitting the first data to the second router from the second terminal;

receiving second data transmitted by the second router at the second terminal;

in response to receiving the second control signal, transmitting the second data to the first router from the first terminal;

receiving third data transmitted by the first router at the first terminal;

in response to receiving the third control signal, storing the third data in a storage module of the circuit;

receiving fourth data transmitted by the second router at the second terminal; and

in response to receiving the fourth control signal, storing the fourth data in the storage module.

13. The method of claim 11 wherein:

coupling the first terminal of the circuit to the input terminal of the three-state buffer comprises providing a conductive path between the first terminal and the input terminal; and

coupling the second terminal of the circuit to the output terminal of the three-state buffer comprises providing a conductive path between the second terminal and the output terminal.

14. The method of claim 11 wherein:

coupling the first terminal of the circuit to the output terminal of the three-state buffer comprises providing a conductive path between the first terminal and the output terminal; and

coupling the second terminal of the circuit to the input terminal of the three-state buffer comprises providing a conductive path between the second terminal and the input terminal.

15. A method for controlling a plurality of reversible unidirectional communication links including one or more forward communication links that communicatively couple data from a first router of a network-on-chip architecture to a second router of the network-on-chip architecture, and one or more backward communication links that communicatively couple data from the second router to the first router, the method comprising:

determining whether, during a given time period, a first amount of data sent by the first router via the one or more forward communication links is greater than a second amount of data received by the first router via the one or more backward communication links; and

in response to determining the first amount of data is greater than the second amount of data, switching at least one of the one or more backward communication links from operating as a backward communication link to operating as a forward communication link;

wherein operating as the forward communication link comprises propagating data from the first router to the second router, and

wherein operating as the backward communication link comprises propagating data to the first router from the second router.

16. A circuit of a network-on-chip architecture, the circuit comprising:

a first router and a second router; and

a plurality of reversible unidirectional communication links including one or more forward communication links that communicatively couple data from the first router to the second router, and one or more backward communication links that communicatively couple data from the second router to the first router, wherein the circuit is configured to:

determine whether, during a given time period, a first amount of data sent by the first router via the one or more forward communication links is greater than a second amount of data received by the first router via the one or more backward communication links; and

in response to determining the first amount of data is greater than the second amount of data, switch at least one of the one or more backward communication links from operating as a backward communication link to operating as a forward communication link;

wherein operating as the forward communication link comprises propagating data from the first router to the second router, and

wherein operating as the backward communication link comprises propagating data to the first router from the second router.

Assignments (3)
CONFIRMATORY LICENSE Recorded Oct 10, 2017
From: UNIVERSITY OF ARIZONA
To: NATIONAL SCIENCE FOUNDATION
Reel/Frame 044166/0839 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 17, 2016
From: LOURI, AHMED
To: THE ARIZONA BOARD OF REGENTS ON BEHALF OF THE UNIVERSITY OF ARIZONA
Reel/Frame 039469/0300 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 17, 2016
From: KODI, AVINASH KARANTH; DITOMASO, DOMINIC
To: OHIO UNIVERSITY
Reel/Frame 039469/0327 →
Continuity (2)
Provisional Application 61940035 · Feb 14, 2014
Related Publication 20170048166A1 · Feb 16, 2017