Type and range propagation through data-flow models
First Claim
1. A method for conducting an analysis of a data flow diagram, the method comprising:
- propagating range information, language independent representations, and data type information to one or more inputs of a functional block defined by a data flow diagram;
performing a predefined transformation to the input range information to determine an output range, language independent representation, and data type information for the functional block, wherein the predefined transformation is at least in part performed by applying specific mathematical and functional effects defined for the functional block; and
propagating the output range, language independent representation, and data type information to any subsequent block defined by the data flow diagram;
wherein the range information and data type information is computed for a parent block type functional block by recursively performing a range and hierarchical data type information computation on one or more sub-models that define the parent block type functional block, wherein the parent block type functional block is hierarchically decomposed into one or more sub-models to specify functions performed as part of the parent block type functional block;
wherein the hierarchical data type information computation determines at least one data type based on the internal structures of variables used by the one or more sub-models; and
wherein the range type information computation determines input and output ranges of the one or more sub-models.
1 Assignment
0 Petitions
Accused Products
Abstract
Systems and methods for type and range propagation through data flow models are provided. In one embodiment, a test generating system for processing data flow diagrams, the system comprises: a processor programmed to perform a test generation process; and at least one memory device coupled to the processor, the at least one memory device including a data flow diagram. The test generation process computes range information and data type information for outputs of one or more functional blocks defined by the data flow diagram by applying transformations to input range information for inputs of each of the one or more functional blocks. The transformations are at least in part performed by applying specific mathematical and functional effects that are pre-defined for each of the one or more functional blocks based on block type.
86 Citations
19 Claims
-
1. A method for conducting an analysis of a data flow diagram, the method comprising:
-
propagating range information, language independent representations, and data type information to one or more inputs of a functional block defined by a data flow diagram; performing a predefined transformation to the input range information to determine an output range, language independent representation, and data type information for the functional block, wherein the predefined transformation is at least in part performed by applying specific mathematical and functional effects defined for the functional block; and propagating the output range, language independent representation, and data type information to any subsequent block defined by the data flow diagram; wherein the range information and data type information is computed for a parent block type functional block by recursively performing a range and hierarchical data type information computation on one or more sub-models that define the parent block type functional block, wherein the parent block type functional block is hierarchically decomposed into one or more sub-models to specify functions performed as part of the parent block type functional block; wherein the hierarchical data type information computation determines at least one data type based on the internal structures of variables used by the one or more sub-models; and wherein the range type information computation determines input and output ranges of the one or more sub-models. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A test generating system for processing data flow diagrams, the system comprising:
-
a processor programmed to perform a test generation process; and at least one memory device coupled to the processor, the at least one memory device including a data flow diagram; wherein the test generation process determines range information, language independent representation, and data type information for outputs of one or more functional blocks defined by the data flow diagram by applying transformations to input range information for inputs of each of the one or more functional blocks, wherein the transformations propagate the range information, language independent representation, and data type information through the one or more functional blocks; wherein the transformations are at least in part performed by applying specific mathematical and functional effects that are pre-defined for each of the one or more functional blocks based on block type; and wherein the range information and data type information is computed for a parent block type functional block by recursively performing a range and data type information computation on one or more sub-models that define the parent block type functional block, wherein the parent block type functional block is hierarchically decomposed into one or more sub-models to specify functions performed as part of the parent block type functional block; wherein the data type information computation determines at least one data type based on the internal structures of variables used by the one or more sub-models; and wherein the range type information computation determines input and output ranges of the one or more sub-models. - View Dependent Claims (7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18)
-
-
19. A non-transitory computer readable media device having computer-executable instructions for performing range and type information transformation for functional blocks of a data flow diagram, the method comprising:
-
determining range information, language independent representations, and data type information for outputs of one or more functional blocks defined by the data flow diagram by applying transformations to input range information for inputs of each of the one or more functional blocks, wherein the transformations propagate the range information, language independent representations, and data type information through the one or more functional blocks, wherein the transformations are at least in part performed by applying specific mathematical and functional effects that are pre-defined for each of the one or more functional blocks based on block type; wherein the range information and data type information is computed for a parent block type functional block by recursively performing a range and data type information computation on one or more sub-models that define the parent block type functional block, wherein the parent block type functional block is hierarchically decomposed into one or more sub-models to specify functions performed as part of the parent block type functional block; wherein the data type information computation determines at least one data type based on the internal structures of variables used by the one or more sub-models; and wherein the range type information computation determines input and output ranges of the one or more sub-models.
-
Specification