IP Library Granted Patent US 11,429,459
Granted Patent B2
US 11,429,459 · App. 16/994,444 · Granted Aug 30, 2022

Broadcasting event messages in a System on Chip using a crosslinked tree structure

Inventors: Callum Stewart (Livingston, GB); Iain Robertson (Bedfordshire, GB)
Assignee: SIEMENS INDUSTRY SOFTWARE INC.
G06F9/542G06F9/30058G06F9/3844G06F9/44505G06F11/0772
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 11,429,459
App. No.
16/994,444
Granted
Aug 30, 2022
Kind
B2
Abstract

A method of broadcasting event messages in a system-on-chip having system circuitry and monitoring circuitry for monitoring the system circuitry, the monitoring circuitry comprising units connected in a tree-based structure for routing communications through the system-on-chip, the tree-based structure comprising branches extending from a root unit, each branch comprising a plurality of units, each unit connected to a single unit above in the branch and a single unit below in the branch, whereby each unit routes communications to and from individually addressable entities above that unit in its branch, the tree-based structure further comprising crosslinks connecting corresponding units of adjacent branches, the method comprising: if an event is generated at an event unit or its local subsystem, routing an event message directly from that event unit to: any adjacent unit above the event unit in the event unit's branch, any adjacent unit below the event unit in the event unit's branch, and any corresponding unit of an adjacent branch to which the event unit is connected via a crosslink.

Claims (45)

1. A method of broadcasting event messages in a system-on-chip comprising system circuitry and monitoring circuitry configured to monitor the system circuitry, the monitoring circuitry comprising units connected in a tree-based structure configured to route communications through the system-on-chip, the tree-based structure comprising branches extending from a root unit, each branch comprising a plurality of units, each unit connected to a single unit above in the branch and a single unit below in the branch, whereby each unit routes the communications to and from individually addressable entities above that unit in its branch, the tree-based structure further comprising crosslinks connecting corresponding units of adjacent branches, the method comprising:

if an event is generated at an event unit or its local subsystem, routing an event message directly from that event unit to:

(i) any adjacent unit above the event unit in the event unit's branch,

(ii) any adjacent unit below the event unit in the event unit's branch, and

(iii) any corresponding unit of an adjacent branch to which the event unit is connected via a crosslink.

2. A method as claimed in claim 1 , further comprising, at a first unit in the system-on-chip:

receiving the event message from a second unit adjacent to and below the first unit in the first unit's branch;

routing the event message to any adjacent units above the first unit in the first unit's branch; and

routing the event message to any adjacent units below the first unit in the first unit's branch excluding the second unit.

3. A method as claimed in claim 1 , further comprising, at a third unit in the system-on-chip:

receiving the event message from a fourth unit adjacent to and above the third unit in the third unit's branch;

routing the event message to any adjacent units below the third unit in the third unit's branch; and

routing the event message to any adjacent units above the third unit in the third unit's branch excluding the fourth unit.

4. A method as claimed in claim 1 , further comprising, at a fifth unit in the system-on-chip:

receiving the event message from a crosslink connecting the fifth unit to a sixth unit;

routing the event message to any adjacent units above the fifth unit in the fifth unit's branch;

routing the event message to any adjacent units below the fifth unit in the fifth unit's branch;

routing the event message to any corresponding unit of an adjacent branch to which the fifth unit is connected via a crosslink excluding the crosslink connecting the fifth unit to the sixth unit.

5. A method as claimed in claim 1 , further comprising, at the event unit, setting a flag to be transmitted with the event message only to any adjacent units below the event unit in the event unit's branch.

6. A method as claimed in claim 5 , further comprising, at a seventh unit receiving an event message with the flag:

routing that event message with the flag only to any adjacent units below the seventh unit in the seventh unit's branch; and

routing that event message without the flag to adjacent units above the seventh unit in the seventh unit's branch excluding the unit that the seventh unit received the event message from.

7. A method as claimed in claim 5 , further comprising, at the root unit:

receiving the event message with the flag; and

routing the event message to a communicator.

8. A method as claimed in claim 7 , wherein the communicator routes the event message off-chip.

9. A method as claimed in claim 1 , further comprising, at the root unit:

receiving the event message with no set flag; and

preventing the event message from being routed to other units.

10. A method as claimed in claim 5 , wherein the flag is a single bit of the event message.

11. A method as claimed in claim 1 , further comprising:

determining that a unit is defective;

enabling a crosslink between an eighth unit in the same branch as the defective unit and a ninth unit in an adjacent branch;

reconfiguring the crosslink so as to cause subsequent non-event related communication to an individually addressable entity in the defective unit's branch to be routed from the root unit via the adjacent branch and the crosslink, thereby bypassing the defective unit.

12. A method as claimed in claim 11 , further comprising if a subsequent event is generated, treating the eighth unit as adjacent to and above the ninth unit in the same branch as the ninth unit for the claimed steps of routing the event message.

13. A method as claimed in claim 12 , further comprising if a subsequent event is generated, treating the ninth unit as adjacent to and below the eighth unit in the same branch as the eighth unit for the claimed steps of routing the event message.

14. A method as claimed in claim 13 , comprising at the eighth unit:

receiving an event message with a flag; and

routing that event message with the flag to the ninth unit via the crosslink.

15. A method as claimed in claim 13 , comprising at the ninth unit:

receiving the event message with the flag from the eighth unit via the crosslink; and

routing that event message with the flag only to any adjacent units below the ninth unit in the ninth unit's branch.

16. A method as claimed in claim 1 , wherein each unit which receives an event message, forwards that event message to that unit's local subsystem.

17. A method as claimed in claim 1 , wherein each unit is connected to the unit above in the branch by a non-configurable link, and is connected to the unit below in the branch by a non-configurable link.

18. A method as claimed in claim 1 , wherein each crosslink is configurable.

Assignments (3)
MERGER AND CHANGE OF NAME Recorded Oct 7, 2021
From: MENTOR GRAPHICS CORPORATION; SIEMENS INDUSTRY SOFTWARE INC.
To: SIEMENS INDUSTRY SOFTWARE INC.
Reel/Frame 057728/0573 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 23, 2020
From: ULTRASOC TECHNOLOGIES LTD.
To: MENTOR GRAPHICS CORPORATION
Reel/Frame 054736/0771 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 14, 2020
From: STEWART, CALLUM; ROBERTSON, IAIN
To: ULTRASOC TECHNOLOGIES LIMITED
Reel/Frame 053505/0076 →
Priority Claims (1)
GB 1911783 · Aug 16, 2019 · national
Continuity (1)
Related Publication 20210049055A1 · Feb 18, 2021