System and method for automatically configuring a debug system
First Claim
1. A method for configuring a software system for interaction with a hardware system, comprising:
- executing the software system on a host processor interconnected with the hardware system;
accessing a database to obtain a description of a set of functional components present within the hardware system;
creating a software representation of the capabilities of each functional component by using the description of the set of functional components;
interrogating the software representation to determine a set of operational capabilities of the hardware system;
operating the software system in a manner that is responsive to the set of operational capabilities of the hardware system;
wherein the software system is a software development system and the hardware system comprises a target system;
wherein the step of interrogating the software representation determines a set of debug capabilities of the target system; and
further comprising the steps of;
selecting a first set of debug activities in accordance with the set of debug capabilities from a plurality of debug activities included within the software development system; and
configuring a user interface of the software development system to present a first set of debug activities, such that remaining debug activities of the plurality of debug activities cannot be supported by the target system are not included in the user interface.
1 Assignment
0 Petitions
Accused Products
Abstract
The invention relates to a software system and method for configuring a software system for interaction with a hardware system. In this method, the software system (140) is executed on a host processor interconnected with the hardware system (103). A database (152) is accessed to obtain a description of a set of functional components present within the hardware system (103). A software representation (154) of the capabilities of each functional component is created by using the description of the set of functional components. Then, the software representation (154) is interrogated to determine a set of operational capabilities of the hardware system (103). The software system (140) is then operated in a manner that is responsive to the set of operational capabilities of the hardware system (103).
-
Citations
15 Claims
-
1. A method for configuring a software system for interaction with a hardware system, comprising:
-
executing the software system on a host processor interconnected with the hardware system;
accessing a database to obtain a description of a set of functional components present within the hardware system;
creating a software representation of the capabilities of each functional component by using the description of the set of functional components;
interrogating the software representation to determine a set of operational capabilities of the hardware system;
operating the software system in a manner that is responsive to the set of operational capabilities of the hardware system;
wherein the software system is a software development system and the hardware system comprises a target system;
wherein the step of interrogating the software representation determines a set of debug capabilities of the target system; and
further comprising the steps of;
selecting a first set of debug activities in accordance with the set of debug capabilities from a plurality of debug activities included within the software development system; and
configuring a user interface of the software development system to present a first set of debug activities, such that remaining debug activities of the plurality of debug activities cannot be supported by the target system are not included in the user interface. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
receiving a user request to perform a first activity;
interrogating the software representation to determine if a first set of functional components are available to perform the first activity;
initializing the first set of functional components and then performing the first activity; and
repeating the steps of receiving, interrogating, initializing and performing other user requests.
-
-
4. The method of claim 3, further comprising:
-
receiving a user request to perform a second activity;
interrogating the software representation to determine if a second set of functional components are available to perform the second activity; and
indicating that the second activity cannot be performed if the step of interrogating determines a second set of functional components is not available to perform the second activity.
-
-
5. The method of claim 3, further comprising:
-
updating the set of software representations to indicate that one or more corresponding functional components are present but not available because it is being used to perform the first activity;
receiving a user request to perform a third activity;
interrogating the software representation to determine if a third set of functional components are available to perform the third activity; and
indicating that the third activity cannot be performed currently if the step of interrogating determines a third set of functional components is present to perform the third activity, but that a portion of the third set of functional components is currently not available.
-
-
6. The method of claim 3, further comprising updating the software representation to indicate that one or more corresponding functional components are present but not available because it is being reserved to perform another activity.
-
7. The method of claim 3, wherein the initializing the first set of functional components comprises the step of sending a command to the hardware system to enable a first mode of operation.
-
8. The method of claim 1, wherein the creating the software representation forms a set of software components wherein each of the software components corresponds to a single unique functional component of the hardware system.
-
9. The method of claim 1 further comprising:
-
receiving a user request to perform a first debug activity;
interrogating the software representation to determine if a first set of functional debug components are available in the target system to perform the first debug activity;
initializing the first set of functional debug components by sending a first debug command to the target system;
performing the first debug activity after initializing the first set of functional debug components; and
repeating the steps of receiving, interrogating, initializing and performing other user requests.
-
-
10. A digital system comprising:
-
a microprocessor connected to a memory module for holding a software program, the microprocessor operable to execute the software program;
a set of functional debug components connected to the microprocessor for monitoring at least a first parameter during execution of the software program, the set of functional debug components being configurable in response to a debug command;
a test port connected to the set of functional debug components, the test port operable to receive debug commands from a software development system on a host processor; and
wherein the digital system performs the steps of;
executing the software system on the host processor interconnected with the microprocessor;
accessing a database to obtain a description of a set of functional components present within the microprocessor;
creating a software representation of the capabilities of each functional component by using the description of the set of functional components;
interrogating the software representation to determine a set of operational capabilities of the microprocessor;
operating the software system in a manner that is responsive to the set of operational capabilities of the microprocessor; and
wherein the microprocessor system comprises a target system;
wherein the step of interrogating the software representation determines a set of debug capabilities of the target system; and
further comprising the steps of;
selecting a first set of debug activities in accordance with the set of debug capabilities from a plurality of debug activities included within the software development system;
configuring a user interface of the software development system to present a first set of debug activities, such that remaining debug activities of the plurality of debug activities cannot be supported by the target system are not-included in the user interface;
receiving a user request to perform a first debug activity;
interrogating the software representation to determine if a first set of functional debug components are available in the target system to perform the first debug activity;
initializing the first set of functional debug components by sending a first debug command to the target system;
performing the first debug activity after initializing the first set of functional debug components; and
repeating the steps of receiving, interrogating, initializing and performing other user requests.
-
-
11. A method for configuring a software debug system for interaction with a hardware system, comprising:
-
executing the software debug system on a host processor interconnected with the hardware system;
accessing a database to obtain a description of a set of functional debug components present within the hardware system;
creating a software representation of the capabilities of each functional debug component by using the description of the set of functional components;
interrogating the software representation to determine a set of debug capabilities of the hardware system; and
selecting a first set of debug activities in accordance with the set of debug capabilities from a plurality of debug activities included within the software development system; and
configuring a user interface of the software development system to present the first set of debug activities, such that remaining debug activities of the plurality of debug activities that cannot be supported by the target system are not included in the user interface. - View Dependent Claims (12, 13)
receiving a user request to perform a first software debug activity;
interrogating the software representation to determine if a first set of functional debug components are available in the hardware system to perform the first software debug activity;
performing the first software debug activity if the first set of functional debug components is available; and
repeating the steps of receiving, interrogating, and performing other user requests.
-
-
13. The method of claim 12, further comprising initializing the first set of functional debug components by sending a first debug command to the hardware system before the step of performing the first software debug activity.
-
14. A software development system, comprising:
-
a memory storage system holding a software development tool program;
a host computer connected to the memory storage system, the host computer operable to execute the software development tool program;
an access mechanism for connecting to a hardware system, the hardware system being operable to execute an application program; and
wherein the software development tool is operable to configure itself for interaction with a first hardware system connected to the access mechanism, comprising;
accessing a database to obtain a description of a set of functional debug components present within the first hardware system;
creating a software representation of the capabilities of each functional debug component by using the description of the set of functional components;
interrogating the software representation to determine a set of debug capabilities of the first hardware system; and
selecting a first set of debug activities in accordance with the set of debug capabilities from a plurality of debug activities included within the software development system; and
configuring a user interface of the software development system to present the first set of debug activities, such that remaining debug activities of the plurality of debug activities that cannot be supported by the target system are not included in the user interface.- View Dependent Claims (15)
-
Specification