IP Library Granted Patent US 12,079,601
Granted Patent B2
US 12,079,601 · App. 18/066,308 · Granted Sep 3, 2024

Computer-implemented method for creating a hierarchical block diagram

Inventors: Heiko Kalte (Paderborn, DE); Dominik Lubeley (Paderborn, DE)
Assignee: DSPACE GMBH
G06F8/34G06F8/35
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 12,079,601
App. No.
18/066,308
Granted
Sep 3, 2024
Kind
B2
Abstract

A computer-implemented method for creating a hierarchical block diagram in a graphical development environment includes: automatically creating a hierarchical black box for a respective further subsystem block. The hierarchical black box is configured to resolve a corresponding hierarchical level when selected by a user. The automatic creation is carried out via a callback function. The hierarchical black box has the following features: at least one interface description and/or graphical representation of the inputs/outputs of the respective further subsystem block in its hierarchical level, which the respective further subsystem block previously also occupied; at least one reference to model content for the respective further subsystem block, comprising further black boxes for the further subsystem blocks in the subordinate hierarchical levels; parameters that the respective further subsystem block previously also had; and generated source code of the respective further subsystem block.

Claims (55)

1. A computer-implemented method for creating a hierarchical block diagram in a graphical development environment comprising at least one subsystem block, in which the at least one subsystem block is located on a first hierarchical level and further subsystem blocks of the at least one subsystem block are located on subordinate hierarchical levels, wherein the at least one subsystem block is parameterizable and has at least one callback function, wherein callback functions define commands that are executed in response to particular modeling activities, wherein, to reduce hierarchical levels of the at least one subsystem block, at least one hierarchical black box is created for the at least one subsystem block, wherein a reduction is carried out from the lowest hierarchical level upward, and wherein the method comprises:

automatically creating a hierarchical black box for a respective further subsystem block, wherein the hierarchical black box is configured to resolve a corresponding hierarchical level when selected by a user, wherein the automatic creation is carried out via a callback function, and wherein the hierarchical black box has the following features:

at least one interface description and/or graphical representation of the inputs/outputs of the respective further subsystem block in its hierarchical level, which the respective further subsystem block previously also occupied;

at least one reference to model content for the respective further subsystem block, comprising further black boxes for the further subsystem blocks in the subordinate hierarchical levels;

parameters that the respective further subsystem block previously also had; and

generated source code of the respective further subsystem block.

2. The computer-implemented method according to claim 1 , wherein automatically creating the hierarchical black box for the respective further subsystem block comprises:

generating the source code for the respective further subsystem block, wherein any wrapper code present around function code is removed; and

generating a system function block on the basis of the generated source code without any wrapper code, wherein the system function block enables access to system functions of the hierarchical block diagram, wherein the system functions specify how a block operates during different parts of a simulation, and wherein the system function block allows additional parameters to be directly transferred to the system functions.

3. The computer-implemented method according to claim 1 , wherein the source code is hardware description language (HDL) code, and wherein automatically creating the hierarchical black box for the respective further subsystem block comprises creating an HDL code black box by:

replacing virtual signal lines with inports and outports, and shifting these ports from lower hierarchical levels to the uppermost subsystem hierarchical level of the respective further subsystem block, and/or replacing inports and outports of the uppermost subsystem hierarchical levels of the respective further subsystem block with interface blocks of the code generator being used;

generating HDL code for the respective further subsystem block; and

generating the hierarchical black box based on the HDL code.

4. The computer-implemented method according to claim 3 , further comprising:

encrypting the HDL code.

5. The computer-implemented method according to claim 3 , further comprising:

storing a network list, wherein the network list is synthesized from the generated HDL code, wherein the synthesis comprises:

generating a synthesized network list;

storing the synthesized network list; and

integrating the synthesized network list in the hierarchical black box, wherein the HDL code is also used for an offline simulation, and the synthesized network list is used for generating the HDL code.

6. The computer-implemented method according to claim 5 , further comprising:

encrypting the network list.

7. The computer-implemented method according to claim 1 , wherein the hierarchical black box contains a reference to an implementation.

8. The computer-implemented method according to claim 1 , wherein the hierarchical black box comprises an original model, or the hierarchical black box comprises a created and referenced copy of the original model; and

wherein the method further comprises:

opening a further subsystem block via an opening callback function; and

restoring and displaying an editable original model of an uppermost black box hierarchical level.

9. The computer-implemented method according to claim 1 , wherein the hierarchical black box contains an offline simulation model.

10. The computer-implemented method according to claim 1 , wherein the hierarchical black box comprises, as parameters, a change frequency and/or a number of changes made.

11. The computer-implemented method according to claim 1 , further comprising:

regenerating the hierarchical black box based on at least one of the following conditions being satisfied:

it is detected in the model that individual subsystem blocks have not yet been reduced in the event of an opening callback function or closing callback function;

it is established that the respective further subsystem block has been modified while a subsystem block is being closed via a closing callback function;

library blocks that have been used in hierarchical black boxes are updated; or

input data types and/or input widths are changed.

12. The computer-implemented method according to claim 11 , wherein global conditions are taken into account in the callback functions in order to reduce the frequency of regenerations, wherein a regeneration is carried out further based on at least one of the following global conditions being fulfilled:

an amount of time since a last regeneration of the hierarchical black box is longer than a particular amount of time;

an amount of time since a last change is longer than a particular amount of time;

a change frequency is lower than a particular value; or

a number of changes exceeds a particular value.

13. A data processing device, comprising:

a processor; and

a memory having processor-executable instructions stored thereon;

wherein the processor is configured to execute the processor-executable instructions to facilitate the data processing device performing a method for creating a hierarchical block diagram in a graphical development environment comprising at least one subsystem block, in which the at least one subsystem block is located on a first hierarchical level and further subsystem blocks of the at least one subsystem block are located on subordinate hierarchical levels, wherein the at least one subsystem block is parameterizable and has at least one callback function, wherein callback functions define commands that are executed in response to particular modeling activities, wherein, to reduce hierarchical levels of the at least one subsystem block, at least one hierarchical black box is created for the at least one subsystem block, wherein a reduction is carried out from the lowest hierarchical level upward, and wherein the method comprises:

automatically creating a hierarchical black box for a respective further subsystem block, wherein the hierarchical black box is configured to resolve a corresponding hierarchical level when selected by a user, wherein the automatic creation is carried out via a callback function, and wherein the hierarchical black box has the following features:

at least one interface description and/or graphical representation of the inputs/outputs of the respective further subsystem block in its hierarchical level, which the respective further subsystem block previously also occupied;

at least one reference to model content for the respective further subsystem block, comprising further black boxes for the further subsystem blocks in the subordinate hierarchical levels;

parameters that the respective further subsystem block previously also had; and

generated source code of the respective further subsystem block.

14. A non-transitory computer-readable medium having processor-executable instructions stored thereon for creating a hierarchical block diagram in a graphical development environment comprising at least one subsystem block, in which the at least one subsystem block is located on a first hierarchical level and further subsystem blocks of the at least one subsystem block are located on subordinate hierarchical levels, wherein the at least one subsystem block is parameterizable and has at least one callback function, wherein callback functions define commands that are executed in response to particular modeling activities, wherein, to reduce hierarchical levels of the at least one subsystem block, at least one hierarchical black box is created for the at least one subsystem block, wherein a reduction is carried out from the lowest hierarchical level upward, and wherein the processor-executable instructions, when executed, facilitate:

automatically creating a hierarchical black box for a respective further subsystem block, wherein the hierarchical black box is configured to resolve a corresponding hierarchical level when selected by a user, wherein the automatic creation is carried out via a callback function, and wherein the hierarchical black box has the following features:

at least one interface description and/or graphical representation of the inputs/outputs of the respective further subsystem block in its hierarchical level, which the respective further subsystem block previously also occupied;

at least one reference to model content for the respective further subsystem block, comprising further black boxes for the further subsystem blocks in the subordinate hierarchical levels;

parameters that the respective further subsystem block previously also had; and

generated source code of the respective further subsystem block.

Assignments (2)
CHANGE OF NAME Recorded May 22, 2026
From: DSPACE GMBH
To: DSPACE SE & CO. KG
Reel/Frame 075622/0216 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 15, 2022
From: KALTE, HEIKO; LUBELEY, DOMINIK
To: DSPACE GMBH
Reel/Frame 062098/0695 →
Priority Claims (2)
DE 102021133736.4 · Dec 17, 2021 · national
EP 21215702 · Dec 17, 2021 · regional
Continuity (1)
Related Publication 20230195430A1 · Jun 22, 2023