Patent ID: 7606950

Claim:
A computer-implemented method for communicating between programs executing respectively on a controller and a programmable hardware element, the method comprising: creating a first graphical program in response to first user input, wherein the first graphical program comprises a first plurality of interconnected nodes that visually indicate functionality of the first graphical program, wherein the first graphical program includes a first node that represents a direct memory access (DMA) structure; creating a second graphical program in response to second user input, wherein the second graphical program comprises a second plurality of interconnected nodes that visually indicate functionality of the second graphical program, wherein the second graphical program includes a second node that provides an interface to the DMA structure; automatically generating at least a portion of DMA logic in response to said including the first node and in accordance with configuration information for the DMA structure, wherein the at least a portion of DMA logic is deployable to the programmable hardware element to implement data transfer functionality for the DMA structure; deploying the first graphical program to the programmable hardware element; deploying the at least a portion of DMA logic to the programmable hardware element, wherein said executing the first graphical program on the programmable hardware element further comprises executing the at least a portion of the DMA logic to facilitate communications between the first and second graphical programs; deploying the second graphical program to the controller; wherein the first graphical program and the second graphical program are executable to communicate via the DMA structure to cooperatively perform a specified task.