IP Library Granted Patent US 7,987,448
Granted Patent B2
US 7,987,448 · App. 12/426,359 · Granted Jul 26, 2011

Conversion of a first diagram having states and transitions to a graphical data flow program using an intermediate XML representation

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 7,987,448
App. No.
12/426,359
Granted
Jul 26, 2011
Kind
B2
Abstract

A system and method for programmatically generating a graphical program in response to state diagram information. The state diagram information may specify a plurality of states and state transitions, wherein each state transition specifies a transition from a first state to a second state. A graphical program generation program (GPG program), may receive the state diagram information and automatically, i.e., programmatically, generate a graphical program (or graphical program portion) based on the state diagram information.

Claims (46)

1. A computer-accessible memory medium storing program instructions executable by a processor to:

receive a first diagram, wherein the first diagram specifies one or more states and one or more transitions between the states, wherein the first diagram specifies first functionality;

store an extensible markup language (XML) representation based on the first diagram, wherein the XML representation specifies the first functionality; and

automatically generate a graphical data flow program based on the XML representation, wherein the graphical data flow program specifies a plurality of nodes and interconnections between the nodes, and wherein the graphical data flow program is executable by a processor to perform the first functionality.

2. The memory medium of claim 1 , wherein the program instructions are further executable to:

automatically generate the XML representation based on the first diagram.

3. The memory medium of claim 1 , wherein the program instructions are further executable to:

display the graphical data flow program on a display after said automatically generating the graphical data flow program.

4. The memory medium of claim 1 , wherein the first diagram is a state diagram.

5. The memory medium of claim 1 , wherein, for at least one state of the one or more states, the first diagram comprises program code associated with the at least one state;

wherein the graphical data flow program comprises the specified program code.

6. The memory medium of claim 1 , wherein, for at least one state, the first diagram comprises program code associated with the state;

wherein the graphical data flow program is operable to invoke the specified program code.

7. The memory medium of claim 1 , wherein the graphical data flow program comprises at least one placeholder for at least one state transition of the one or more transitions.

8. The memory medium of claim 7 , wherein the program instructions are further executable to:

for the one or more state transitions, receive user input specifying a Boolean condition associated with each state transition.

9. The memory medium of claim 1 , wherein the plurality of nodes comprises at least a first node that represents control flow of data among one or more of the plurality of nodes.

10. The memory medium of claim 1 , wherein the program instructions are further executable to:

automatically generate a hardware description based on the graphical data flow program, wherein the hardware description specifies a hardware implementation of the graphical data flow program, and wherein the hardware description is usable to configure a programmable hardware element to implement the first functionality.

11. A method, comprising:

receiving, by a computer system, a first diagram, wherein the first diagram specifies one or more states and one or more transitions between the states, wherein the first diagram specifies first functionality;

automatically generating, by the computer system, an extensible markup language (XML) representation based on the first diagram, wherein the XML representation specifies the first functionality; and

automatically generating a data flow diagram based on the XML representation, wherein the data flow diagram specifies a plurality of nodes and interconnections between the nodes, and wherein the data flow diagram is executable by a processor to perform the first functionality.

12. The method of claim 11 , further comprising:

displaying the data flow diagram on a display after said automatically generating the data flow diagram.

13. The method of claim 11 , wherein the first diagram is a state diagram.

14. The method of claim 11 , wherein, for at least one state of the one or more states, the first diagram comprises program code associated with the at least one state;

wherein the data flow diagram comprises the specified program code.

15. The method of claim 11 , wherein, for at least one state, the first diagram comprises program code associated with the state;

wherein the data flow diagram is operable to invoke the specified program code.

16. The method of claim 11 , wherein the data flow diagram comprises at least one placeholder for at least one state transition of the one or more transitions.

17. The method of claim 16 , further comprising:

for the one or more state transitions, receiving user input specifying a Boolean condition associated with each state transition.

18. The method of claim 11 , wherein the plurality of nodes comprises at least a first node that represents control flow of data among one or more of the plurality of nodes.

19. The method of claim 11 , further comprising:

automatically generating a hardware description based on the data flow diagram, wherein the hardware description specifies a hardware implementation of the data flow diagram, and wherein the hardware description is usable to configure a programmable hardware element to implement the first functionality.

20. A system, comprising:

a processor; and

a memory medium coupled to the processor, wherein the memory medium stores program instructions executable by the processor to:

receive a first diagram, wherein the first diagram specifies one or more states and one or more transitions between the states, wherein the first diagram specifies first functionality;

store an extensible markup language (XML) representation based on the first diagram, wherein the XML representation specifies the first functionality; and

automatically generate a data flow program based on the XML representation, wherein the data flow program specifies a plurality of nodes and interconnections between the nodes, and wherein the data flow program is executable by a processor to perform the first functionality.

21. A system, comprising:

means for receiving a first diagram, wherein the first diagram specifies one or more states and one or more transitions between the states, wherein the first diagram specifies first functionality;

means for automatically generating an extensible markup language (XML) representation based on the first diagram, wherein the XML representation specifies the first functionality; and

means for automatically generating a data flow program based on the XML representation, wherein the data flow program specifies a plurality of nodes and interconnections between the nodes, and wherein the data flow program is executable by a processor to perform the first functionality.

Assignments (2)
RELEASE OF SECURITY INTEREST IN PATENTS (REEL/FRAME 052935/0001) Recorded Oct 13, 2023
From: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS ADMINISTRATIVE AGENT
To: NATIONAL INSTRUMENTS CORPORATION; PHASE MATRIX, INC.
Reel/Frame 065653/0463 →
SECURITY INTEREST Recorded Jun 14, 2020
From: NATIONAL INSTRUMENTS CORPORATION; PHASE MATRIX, INC.
To: WELLS FARGO BANK, NATIONAL ASSOCIATION
Reel/Frame 052935/0001 →