Claims
- 1. A memory medium comprising program instructions implementing a measurements expert system, wherein the expert system is operable to perform:
receiving a measurement task specification, wherein the measurement task specification specifies a measurement task; and analyzing the measurement task specification; and generating a run-time specification for the measurement task in response to said analyzing; wherein the run-time specification is useable to configure one or more measurement devices to perform the measurement task, and wherein the run-time specification is further useable to generate a run-time which is executable to perform the measurement task using the configured one or more measurement devices.
- 2. The memory medium of claim 1, wherein the expert system comprises a plurality of experts, and wherein the expert system is further operable to perform:
system configuration of one or more channels for the measurement task; task creation for the measurement task; task configuration for the measurement task; and task verification for the measurement task.
- 3. The memory medium of claim 2, wherein performing system configuration of channels comprises:
configuring the one or more channels with fully qualified channel paths specifying one or more of a terminal configuration, an expert associated with the terminal configuration, and capabilities of the expert; and setting one or more attributes for the one or more channels based upon installed measurement devices.
- 4. The memory medium of claim 2, wherein the plurality of experts comprises a plurality of device experts and a plurality of channel experts, and wherein performing task creation for the measurement task comprises:
building a device expert call tree based on the channel configuration, wherein the device expert call tree comprises one or more of the plurality of device experts, wherein the device expert call tree comprises one or more of the experts used to generate the run-time specification from the measurement task specification; initializing the one or more device experts with initialization information, wherein the initialization information for each device expert comprises one or more of the device expert's parent and children in the device expert call tree, information indicating the state of the measurement task, and hardware capabilities of the device; creating one or more channel experts for each of the one or more channels, wherein each device expert corresponds to at least a subset of the one or more channel experts, wherein said at least a subset of the one or more channel experts corresponds to the device expert; and restoring properties of the one or more channels and the measurement task specification from persistent storage.
- 5. The memory medium of claim 2, wherein performing task configuration for the measurement task comprises:
configuring one or more properties of the one or more channels; and configuring one or more timing properties of the measurement task specification.
- 6. The memory medium of claim 2, wherein performing task verification for the measurement task comprises:
invoking one or more device experts to analyze one or more channel properties of the measurement task specification; invoking the one or more device experts to analyze one or more timing properties of the measurement task specification; and compiling the measurement task specification to the run-time specification.
- 7. The memory medium of claim 6, wherein the plurality of experts comprises a plurality of device experts comprised in a device expert call tree;
wherein said invoking one or more device experts to analyze one or more channel properties of the measurement task specification comprises invoking one or more of the plurality of device experts starting at a corresponding leaf of the device expert call tree; wherein said invoking the one or more device experts to analyze one or more timing properties of the measurement task specification comprises invoking the one or more device experts starting at the root of the device expert call tree; and wherein compiling the measurement task specification to the run-time specification comprises invoking each of the device experts in the device expert call tree to compile an associated portion of the measurement task specification into the run-time specification starting at the root of the device expert call tree.
- 8. The memory medium of claim 1,
wherein, if the measurement task specification does not specify any product-specific properties, the measurement task specification may be compiled for different measurement systems without modification.
- 9. The memory medium of claim 1, wherein the expert system comprises a plurality of experts, wherein the expert system is operable to:
create a device expert call tree of one or more experts from the plurality of experts according to a user-specified measurement task configuration; manage the configuration of the measurement task specification; and verify the measurement task specification and compile the measurement task specification into the run-time specification.
- 10. The memory medium of claim 9, wherein the plurality of experts comprises a plurality of device experts and a plurality of channel experts, and wherein creating a device expert call tree comprises:
building the device expert call tree based on channel configuration information, wherein the device expert call tree comprises one or more of the plurality of device experts, and wherein the device expert call tree comprises one or more of the plurality of experts used to generate the run-time specification from the measurement task specification; initializing the one or more device experts with initialization information, wherein the initialization information for each device expert comprises one or more of the device expert's parent and children in the device expert call tree, information indicating the state of the measurement task, and hardware capabilities of the device; and creating one or more channel experts for each of the one or more channels, wherein each device expert corresponds to at least a subset of the one or more channel experts, wherein said at least a subset of the one or more channel experts corresponds to the device expert.
- 11. The memory medium of claim 9, wherein the plurality of experts comprises a plurality of device experts and a plurality of channel experts, and wherein managing the configuration of the measurement task specification comprises:
configuring one or more properties of one or more channels specified in the measurement task specification; and configuring one or more timing properties of the measurement task specification.
- 12. The memory medium of claim 9, wherein verifying the measurement task specification and compiling the measurement task specification into the run-time specification comprises:
invoking one or more device experts to analyze one or more channel properties of the measurement task specification; invoking the one or more device experts to analyze one or more timing properties of the measurement task specification; and compiling the measurement task specification to the run-time specification.
- 13. The memory medium of claim 12,
wherein the plurality of experts comprises a plurality of device experts comprised in a device expert call tree; wherein said invoking one or more device experts to analyze one or more channel properties of the measurement task specification comprises invoking one or more of the plurality of device experts starting at a corresponding leaf of the device expert call tree; wherein said invoking the one or more device experts to analyze one or more timing properties of the measurement task specification comprises invoking the one or more device experts starting at the root of the device expert call tree; and wherein compiling the measurement task specification to the run-time specification comprises invoking each of the device experts in the device expert call tree to compile an associated portion of the measurement task specification into the run-time specification starting at the root of the device expert call tree.
- 14. The memory medium of claim 1, wherein the expert system comprises a plurality of experts, including one or more of device experts, channel experts, timing experts, reader/writer experts, control experts, and streaming experts, wherein each expert is responsible for managing different aspects of the measurement task specification.
- 15. The memory medium of claim 1, wherein the expert system is further operable to validate the measurement task specification.
- 16. The memory medium of claim 1, wherein the measurement task comprises a plurality of measurement sub-tasks.
- 17. The memory medium of claim 1, wherein the measurement task comprises a complex measurement operation using a plurality of measurement devices.
- 18. The memory medium of claim 1, wherein at least one of the one or more measurement devices comprises a hardware measurement device.
- 19. The memory medium of claim 1, wherein at least one of the one or more measurement devices comprises a virtual measurement device.
- 20. A memory medium comprising program instructions implementing a measurements expert system, operable to:
receive a measurement task specification, wherein the measurement task specification specifies a measurement task; analyze the measurement task specification; validate the measurement task specification; and generate a run-time specification for the measurement task in response to said analysis; wherein the run-time specification is useable to configure one or more measurement devices to perform the measurement task, and wherein the run-time specification is further useable to generate a run-time which is executable to perform the measurement task using the configured one or more measurement devices.
- 21. A method for configuring a measurement system to perform a measurement task, the method comprising:
receiving a measurement task specification, wherein the measurement task specification specifies a measurement task; analyzing the measurement task specification; and generating a run-time specification for the measurement task in response to said analyzing; wherein the run-time specification is useable to configure one or more measurement devices to perform the measurement task, and wherein the run-time specification is further useable to generate a run-time which is executable to perform the measurement task using the configured one or more measurement devices.
- 22. The method of claim 21, wherein said generating a run-time specification for the measurement task in response to said analyzing comprises:
performing system configuration of one or more channels for the measurement task; performing task creation for the measurement task; performing task configuration for the measurement task; and performing task verification for the measurement task.
- 23. The method of claim 22, wherein said performing system configuration of channels comprises:
configuring the one or more channels with fully qualified channel paths specifying one or more of a terminal configuration, an expert associated with the terminal configuration, and capabilities of the expert; and setting one or more attributes for the one or more channels based upon installed measurement devices.
- 24. The method of claim 22, wherein said performing task creation for the measurement task comprises:
building a device expert call tree based on channel configuration information, wherein the device expert call tree comprises one or more of a plurality of device experts, wherein the device expert call tree comprises one or more experts used to generate the run-time specification from the measurement task specification; initializing the one or more device experts with initialization information, wherein the initialization information for each device expert comprises one or more of the device expert's parent and children in the device expert call tree, information indicating the state of the measurement task, and hardware capabilities of the device; creating one or more channel experts for each of the one or more channels, wherein each device expert corresponds to at least a subset of the one or more channel experts, wherein said at least a subset of the one or more channel experts corresponds to the device expert; and restoring properties of the one or more channels and the measurement task from persistent storage.
- 25. The method of claim 22, wherein said performing task configuration for the measurement task comprises:
configuring one or more properties of the one or more channels; and configuring one or more timing properties of the measurement task.
- 26. The method of claim 22, wherein performing task verification for the measurement task comprises:
invoking one or more device experts to analyze one or more channel properties of the measurement task; invoking the one or more device experts to analyze one or more timing properties of the measurement task; and compiling the measurement task specification to the run-time specification.
- 27. The method of claim 26, wherein said one or more device experts are comprised in a device expert call tree;
wherein said invoking one or more device experts to analyze one or more channel properties of the measurement task comprises invoking one or more of the plurality of device experts starting at a corresponding leaf of the device expert call tree; wherein said invoking the one or more device experts to analyze one or more timing properties of the measurement task comprises invoking the one or more device experts starting at the root of the device expert call tree; and wherein compiling the measurement task specification to the run-time specification comprises invoking each of the device experts in the device expert call tree to compile an associated portion of the measurement task specification into the run-time specification starting at the root of the device expert call tree.
- 28. The method of claim 22, wherein said generating a run-time specification for the measurement task in response to said analyzing comprises:
creating a device expert call tree of one or more experts from a plurality of experts according to a user-specified measurement task configuration; managing the configuration of the measurement task specification; and verifying the measurement task specification and compiling the measurement task specification into the run-time specification.
- 29. The method of claim 28, wherein said creating the device expert call tree comprises:
building the device expert call tree based on channel configuration information, wherein the device expert call tree comprises one or more of a plurality of device experts, and wherein the device expert call tree comprises one or more experts used to generate the run-time specification from the measurement task specification; initializing the one or more device experts with initialization information, wherein the initialization information for each device expert comprises one or more of the device expert's parent and children in the device expert call tree, information indicating the state of the measurement task, and hardware capabilities of the device; and creating one or more channel experts for each of the one or more channels, wherein each device expert corresponds to at least a subset of the one or more channel experts, wherein said at least a subset of the one or more channel experts corresponds to the device expert.
- 30. The method of claim 28, wherein managing the configuration of the measurement task specification comprises:
configuring one or more properties of one or more channels specified in the measurement task specification; and configuring one or more timing properties of the measurement task specification.
- 31. The method of claim 28, wherein verifying the measurement task specification and compiling the measurement task specification into the run-time specification comprises:
invoking one or more device experts to analyze one or more channel properties of the measurement task; invoking the one or more device experts to analyze one or more timing properties of the measurement task; and compiling the measurement task specification to the run-time specification.
- 32. The method of claim 31,
wherein the one or more device experts are comprised in a device expert call tree; wherein said invoking one or more device experts to analyze one or more channel properties of the measurement task comprises invoking one or more of the plurality of device experts starting at a corresponding leaf of the device expert call tree; wherein said invoking the one or more device experts to analyze one or more timing properties of the measurement task comprises invoking the one or more device experts starting at the root of the device expert call tree; and wherein compiling the measurement task specification to the run-time specification comprises invoking each of the device experts in the device expert call tree to compile an associated portion of the measurement task specification into the run-time specification starting at the root of the device expert call tree.
- 33. The method of claim 28, wherein the one or more experts includes one or more of device experts, channel experts, timing experts, reader/writer experts, control experts, and streaming experts, wherein each expert is responsible for managing different aspects of the measurement task specification.
- 34. The method of claim 21,
wherein the measurement task comprises a plurality of measurement sub-tasks.
- 35. The method of claim 21, wherein the measurement task comprises a complex measurement operation using a plurality of measurement devices.
- 36. The method of claim 21, wherein at least one of the one or more measurement devices comprises a measurement hardware device.
- 37. The method of claim 21, wherein at least one of the one or more measurement devices comprises a virtual measurement device.
- 38. The method of claim 21, further comprising:
a measurement task specifier generating the measurement task specification in response to user input prior to said receiving.
- 39. The method of claim 21, wherein the measurement task specification is generated in response to user input prior to said receiving.
- 40. The method of claim 21, further comprising:
generating the measurement task specification in response to user input prior to said receiving.
- 41. The method of claim 21, further comprising:
configuring the one or more measurement devices according to the run-time specification; and generating said run-time based on the run-time specification, wherein said run-time is executable to perform the measurement task using the configured one or more measurement devices.
- 42. The method of claim 21, further comprising:
receiving user input indicating system configuration parameters; and setting system configuration parameters for the one or more measurement devices in response to said receiving user input.
- 43. The method of claim 21, further comprising:
a system configuration tool receiving user input indicating system configuration parameters; and the system configuration tool setting system configuration parameters for the one or more measurement devices in response to said receiving user input.
- 44. An expert system for generating a measurement program specification, comprising:
a first software program operable to analyze a received measurement task specification; a validation software program operable to validate the measurement task specification; and a generation software program operable to generate the measurement program specification for the measurement task.
- 45. The expert system of claim 44,
wherein the measurement program specification is useable in generating an executable measurement program.
- 46. The expert system of claim 44,
wherein the measurement program specification is a run-time specification
- 47. The expert system of claim 44, further comprising a plurality of measurement expert software programs;
wherein the plurality of measurement expert software programs include the first software program.
- 48. An expert system for generating a measurement program specification, comprising:
a plurality of measurement expert software programs, wherein at least one of the plurality of measurement expert software programs is operable to analyze a received measurement task specification; a validation software program operable to validate the measurement task specification; and a generation software program operable to generate the measurement program specification for the measurement task.
- 49. A system for generating a measurement program, comprising:
a first software program operable to analyze a received measurement task specification; a validation software program operable to validate the measurement task specification; a generation software program operable to generate a measurement program specification for the measurement task; and a measurement program builder, operable to:
analyze the measurement program specification; configure one or more measurement devices according to the measurement program specification; and generate the measurement program, wherein the measurement program is executable to perform the measurement task.
- 50. The system of claim 44, wherein the system is operable to perform:
system configuration of one or more channels for the measurement task; task creation for the measurement task; task configuration for the measurement task; and task verification for the measurement task.
- 51. The system of claim 50, wherein the system further comprises a plurality of experts, and wherein performing system configuration of channels comprises:
configuring the one or more channels with fully qualified channel paths specifying one or more of a terminal configuration, an expert associated with the terminal configuration, and capabilities of the expert; and setting one or more attributes for the one or more channels based upon installed measurement devices.
- 52. The system of claim 50, wherein the system further comprises a plurality of experts, wherein the plurality of experts comprises a plurality of device experts and a plurality of channel experts, and wherein performing task creation for the measurement task comprises:
building a device expert call tree based on the channel configuration, wherein the device expert call tree comprises one or more of the plurality of device experts, wherein the device expert call tree comprises one or more of the experts used to generate the run-time specification from the measurement task specification; initializing the one or more device experts with initialization information, wherein the initialization information for each device expert comprises one or more of the device expert's parent and children in the device expert call tree, information indicating the state of the measurement task, and hardware capabilities of the device; creating one or more channel experts for each of the one or more channels, wherein each device expert corresponds to at least a subset of the one or more channel experts, wherein said at least a subset of the one or more channel experts corresponds to the device expert; and restoring properties of the one or more channels and the measurement task from persistent storage.
- 53. The system of claim 50, wherein performing task configuration for the measurement task comprises:
configuring one or more properties of the one or more channels; and configuring one or more timing properties of the measurement task.
- 54. The system of claim 50, wherein the system comprises a plurality of experts, wherein the plurality of experts comprises a plurality of device experts, and wherein performing task verification for the measurement task comprises:
invoking one or more of the device experts to analyze one or more channel properties of the measurement task; invoking the one or more device experts to analyze one or more timing properties of the measurement task; and compiling the measurement task specification to the run-time specification.
- 55. The system of claim 54,
wherein the plurality of experts comprises a plurality of device experts comprised in a device expert call tree; wherein said invoking one or more device experts to analyze one or more channel properties of the measurement task comprises invoking one or more of the plurality of device experts starting at a corresponding leaf of the device expert call tree; wherein said invoking the one or more device experts to analyze one or more timing properties of the measurement task comprises invoking the one or more device experts starting at the root of the device expert call tree; and wherein compiling the measurement task specification to the run-time specification comprises invoking each of the device experts in the device expert call tree to compile an associated portion of the measurement task specification into the run-time specification starting at the root of the device expert call tree.
- 56. The system of claim 50, wherein expert system further comprises a plurality of experts, wherein the expert system may be operable to:
create a device expert call tree of one or more experts from the plurality of experts according to a user-specified measurement task configuration; manage the configuration of the measurement task specification; and verify the measurement task specification and compile the measurement task specification into the run-time specification.
- 57. The system of claim 56, wherein verifying the measurement task specification and compiling the measurement task specification into the run-time specification comprises:
invoking one or more device experts to analyze one or more channel properties of the measurement task; invoking the one or more device experts to analyze one or more timing properties of the measurement task; and compiling the measurement task specification to the run-time specification.
- 58. The system of claim 57,
wherein the plurality of experts comprises a plurality of device experts comprised in a device expert call tree; wherein said invoking one or more device experts to analyze one or more channel properties of the measurement task comprises invoking one or more of the plurality of device experts starting at a corresponding leaf of the device expert call tree; wherein said invoking the one or more device experts to analyze one or more timing properties of the measurement task comprises invoking the one or more device experts starting at the root of the device expert call tree; and wherein compiling the measurement task specification to the run-time specification comprises invoking each of the device experts in the device expert call tree to compile an associated portion of the measurement task specification into the run-time specification starting at the root of the device expert call tree.
- 59. The system of claim 50, wherein the expert system comprises a plurality of experts, including one or more of device experts, channel experts, timing experts, reader/writer experts, control experts, and streaming experts, wherein each expert is responsible for managing different aspects of the measurement task specification.
PRIORITY CLAIM
[0001] This application claims benefit of priority of U.S. provisional application Serial No. 60/301,785 titled “Measurement System Software Architecture for Easily Creating High-Performance Measurement Applications” filed Jun. 29, 2001, whose inventors were Geoffrey Schmit, Brent Schwan, Jonathan Brumley, Tom Makowski and Chris Bartz.
Provisional Applications (1)
|
Number |
Date |
Country |
|
60301785 |
Jun 2001 |
US |