Embodiments of the invention will be described, by way of example only, with reference to the drawings, in which
The following description focuses on embodiments of the invention applicable to health monitoring and test reporting for a TCA hardware assembly. However, it will be appreciated that the invention is not limited to this application but may be applied to many other systems.
In
Specifically, the unit under test 103 is coupled to a test processor 105 of the test system 101 through a Joint Test Action Group (JTAG) interface connection.
The test processor 105 comprises functionality for performing various test operations on the unit under test 103. Specifically, the test processor 105 can perform JTAG test operations on the unit under test 103 in accordance with the IEEE standard no. 1149.1 “Standard Test Access Port and Boundary-Scan Architecture” defined by the Joint Test Action Group. This test approach allows detailed hardware level testing including boundary scan testing, programmable device upgrades and fault insertion testing. Boundary scan testing is typically performed at the time of board assembly but can also be performed in-deployment.
Thus, in the example of
The test processor 105 can specifically determine an operational status of the unit under test 103. Thus, the test processor 105 can perform tests, such as boundary scan tests, on the unit under test 103 to determine an operational status.
In a simple embodiment, the operational status may simply correspond to a binary fault status for each of the subsystems or modules. For example, the test processor 105 can sequentially perform a boundary scan test of each module of the TCA assembly. If the boundary scan test for a given module indicates that the module is operating correctly, the fault status indication for this module is set to indicate a fault free status. However, if the boundary scan test detects a fault, the fault status indication is set to indicate a faulty status.
A fault status indication for the whole TCA assembly can be generated by combining the fault status indications for each of the tested modules into a single fault status indication. This combined fault status indication can include the individual indications thereby allowing an identification of each individual faulty module or may additionally or alternatively comprise a single status indication for the whole TCA assembly. For example, a simple OR or AND operation may be used to generate a total fault status indication which indicates a fault free status only if all the fault status indications of the individual modules indicate a fault free status.
It will be appreciated that in other embodiments, other and more complex operational status indications may be used. For example, a more detailed fault status indication may include an indication of the nature of the fault. Also, it will be appreciated that the operational status is not necessarily a fault status indication but may additionally or alternatively be a status indication for e.g. one or more current operational parameters or characteristics. For example, the generated status indication can reflect a current mode of operation for each module and/or current electrical characteristics, such as e.g. a current power consumption or temperature a level.
The test processor 105 is coupled to a presence processor 107 which comprises a presence agent that is arranged to generate a presence message in response to the operational status indication received from the test processor 105. The presence agent can for example be a software or firmware routine and/or hardware logic such as field programmable logic. However, it will be appreciated that any means of implementing the function of generating a presence message in response to the operational status can be used.
The presence processor 107 is coupled to a communication controller 109 which is arranged to transmit the presence message to a remote network element of a communication network. Specifically, the communication controller 109 is coupled to an external interface 111 which interfaces to an external network.
Thus, the test system 101 can determine an operational status for the unit under test 103 and can generate a presence message which reflects the determined operational status. The presence message can then be communicated to an external monitoring device using existing user presence systems. This may allow an efficient communication of status information while allowing a high degree of reusability of existing network infrastructure and functionality as well as a possible reuse of standard devices.
The presence message which is generated by the presence processor 107 is specifically generated to comply with a user presence message protocol. Thus, the presence message generated by the test system can, possibly apart from the payload data, be indistinguishable from a presence message used to indicate a user presence. Hence, the test system 101 can effectively disguise itself as a user and may for the presence infrastructure be indistinguishable from a presence agent operated for a human user.
In a presence system, presence information is typically generated by software routines associated with the communication system users to convey a presentity's availability and willingness to communicate. An agent software routine (such as e.g. a presence client routine) publishes presence information to other systems' users—sometimes called watchers or subscribers—to convey its communication state. Presence information has wide application in voice over IP and instant messaging where it is used to further provide communication assistance by providing a real time indication of a user's availability to other users.
In many communication systems, infrastructure has been developed and deployed to support presence information and thereby to provide an enhanced communication experience to the individual user. The test system 101 of
In some embodiments, the external interface 111 may be able to communicate directly with a monitoring device. For example, the external interface 111 may comprise a WiFi™ transceiver which can transmit the user presence message directly to a monitoring device also comprising a WiFi™ transceiver. However, in contrast to conventional monitoring systems which use dedicated and vendor specific functionality for status reporting, the monitoring device can in this example fully or partially reuse functionality developed in support of a presence service. Thus, the approach may allow a standard device with no dedicated status reporting functionality to be used to present the determined operational status for the unit under test 103.
Alternatively or additionally, the test system 101 of
In the communication system 200 the test system 101 is coupled to the Internet 201. Thus, the external interface 111 comprises an interface to the Internet 201.
The Internet 201 is coupled to a Gateway 203 that provides an interworking function between the Internet 201 and a cellular communication network 205 which may for example be a GSM or UMTS cellular communication system. The cellular communication network 205 is specifically coupled to a base station 207 which is arranged to communicate with remote stations over the air interface of the cellular communication system. Specifically, the base station 207 can communicate with a mobile station 209 over the air interface.
In the example, the test system 101 uses a presence and instant messaging service of the Internet to provide status reporting to the mobile station 209. Specifically, the Internet 201 is coupled to an instant messaging server 211 which also comprises a presence server.
Instant messaging is generally used for instant (real time) message communication between two or more people over a network such as the Internet. Instant messaging can for example be based on text messages and examples of instant messaging services include MSN Messenger and Skype™ messaging. Recently, many instant messaging services have begun to offer video conferencing features, Voice over IP (VoIP) and web conferencing services.
Instant messaging typically boosts communication and allows easy collaboration. In contrast to e-mails or conventional telephone systems, presence functionality is typically included to let the parties know whether the peer is available. Most systems allow the user to set an online status or away message so peers get notified whenever the user is available, busy, or away from the computer. On the other hand, people are not forced to reply immediately to incoming messages.
In a typical presence system, a presence user agent (or presentity) logs online/offline status with a centralized presence server such as that included in the instant messaging server 211. A watcher can subscribe with the presence server to be notified of state changes i.e. the user coming online, going offline etc.
In the system of
Specifically, the test processor 105 can perform a boundary scan test of the unit under test 103 at regular intervals.
The fault status determined from the test is then fed to the presence processor 107 which detects if any change has occurred since the previous test was performed. If no change has been identified since the last user presence message was transmitted to the instant messaging server 211, the presence processor 107 ignores the status indication and does not take any further action. However, if the presence processor 107 detects that a change has occurred in the status indication, it proceeds to generate a new user presence message. For example, if the boundary scan test detects a previously undetected fault on one of the modules of the TCA assembly, a new presence message is generated.
The presence processor 107 specifically encapsulates status data into a standardized SIMPLE message which is fed to the communication controller 109. The communication controller 109 then transmits the message to the instant messaging server 211 using the standard SIP and IP protocols. Specifically, the status update can be communicated in a SIP NOTIFY message as defined in RFC 3265.
The instant messaging server 211 receives the status update message from the test system 101. The message may for the instant messaging server 211 be indistinguishable from a standard user presence message and can be processed like a conventional user presence message.
Specifically, the instant messaging server 211 can comprise a processor which determines which monitoring devices are associated with the identity of the test system 101. Thus, this controller determines the identity of the watchers that are authorised to receive a presence status update for the test system 101.
The instant messaging server 211 furthermore comprises a distribution controller which then transmits a presence indication message to the identified device(s). The communication of this message to the destination device is also achieved using standard SIP and SIMPLE mechanisms.
In a specific example, when the instant messaging server 211 receives a presence message from the test system 101 it identifies the mobile station 201 as an authorised watcher for the test system 101. Accordingly, it encapsulates the payload data of the received presence message in a new presence indication message which is transmitted to the mobile station 209 via the Internet 201, the Gateway 203, the cellular communication network 205 and the base station 207. The presence indication message can specifically be a SIP NOTIFY message as defined in RFC 3265.
When the mobile station 209 receives the present indication message from the instant messaging server 211 it proceeds to extract the status information and to present this to the user in a suitable format. For example, the mobile station 209 can present the status information on a display of the mobile station.
Thus, the system of
Furthermore, by building on the IETF SIP and SIMPLE standards, it is relatively straightforward to implement a system that allows the test system 101 to be added as a presence entity, such as an instant messaging contact. This may e.g. allow a remote test operator to be alerted of state changes on a regular mobile handset.
The approach may e.g. provide a user friendly graphical representation of the individual elements of a TCA assembly or platform. The visual representation may furthermore be arranged such that it provides an easy visual representation of the platform (or assembly) components in a manner that is easy to comprehend on small hand held devices such as a regular mobile phone size display.
The described functionality can be implemented using low-complexity and low cost approaches. Specifically, very low cost devices supporting the SIP, TCP and IP protocols are available and can be used in the test system 101.
The described system allows anyone with presence capability on a fixed/mobile device (with appropriate access rights) to monitor the health of deployed equipment anywhere using a simple and general purpose terminal such as a small mobile terminal (e.g, a Personal Digital Assistant (PDA) or a mobile phone).
It will be appreciated that in some embodiments, the presence processor 107 can include data in the presence message which is specific to the test system. This data can be forwarded to the monitoring device which can comprise dedicated functionality for extracting this data and for presenting it to the user of a suitable fashion.
However, in other embodiments the presence message generated by the test system 101 can comprise a presence indication which refers to a user rather than to a hardware element. In this case, a standard device may be used to monitor the health of the unit under test 103 by the device interpreting the presence indication from the test system 101 as relating to a user. For example, the test system 101 may simply generate a presence message which indicates whether the system is online or offline. A standard user presence device receiving such a message can simply indicate whether a virtual user associated with the test system identity is offline or online. This can be interpreted by a test operator to indicate whether the test system is online corresponding to a normal fault free operation or whether it is offline corresponding to a fault being present. Thus, a user related indication can be used to provide status information for a hardware system.
In such a system, the presence processor 107 may simply select the presence indication for the presence message from a predetermined set of presence indications where each of the presence indications corresponds to a user presence indication. In the specific example, the set of presence indications thus comprise an offline presence indication and an offline presence indication.
The test system 101 of
The received instant messages are fed from the instant message receiver 113 to a test controller 115 which is furthermore coupled to the test processor 105. The test controller 115 can control the test operations performed by the test processor 105 in response to the received instant messages. For example, a user of the mobile station 209 may generate an instant message which instructs the test system 101 to perform a specific test. When this message is received by the test controller 115 it instructs the test processor 105 to begin the specified test.
Thus, the system of
The method initiates in step 401 wherein an operational status is determined for a unit under test.
Step 401 is followed by step 403 wherein a presence message is generated in response to the operational status. The presence message is in accordance with a user presence message protocol.
Step 403 is followed by step 405 wherein the presence message is transmitted to a remote network element of a communication network.
It will be appreciated that the above description for clarity has described embodiments of the invention with reference to different functional units and processors. However, it will be apparent that any suitable distribution of functionality between different functional units or processors may be used without detracting from the invention. For example, functionality illustrated to be performed by separate processors or controllers may be performed by the same processor or controllers. Hence, references to specific functional units are only to be seen as references to suitable means for providing the described functionality rather than indicative of a strict logical or physical structure or organization.
The invention can be implemented in any suitable form including hardware, software, firmware or any combination of these. The invention may optionally be implemented at least partly as computer software running on one or more data processors and/or digital signal processors. The elements and components of an embodiment of the invention may be physically, functionally and logically implemented in any suitable way. Indeed the functionality may be implemented in a single unit, in a plurality of units or as part of other functional units. As such, the invention may be implemented in a single unit or may be physically and functionally distributed between different units and processors.
Although the present invention has been described in connection with some embodiments, it is not intended to be limited to the specific form set forth herein. Rather, the scope of the present invention is limited only by the accompanying claims. Additionally, although a feature may appear to be described in connection with particular embodiments, one skilled in the art would recognize that various features of the described embodiments may be combined in accordance with the invention. In the claims, the term comprising does not exclude the presence of other elements or steps.
Furthermore, although individually listed, a plurality of means, elements or method steps may be implemented by e.g. a single unit or processor. Additionally, although individual features may be included in different claims, these may possibly be advantageously combined, and the inclusion in different claims does not imply that a combination of features is not feasible and/or advantageous. Also the inclusion of a feature in one category of claims does not imply a limitation to this category but rather indicates that the feature is equally applicable to other claim categories as appropriate. Furthermore, the order of features in the claims does not imply any specific order in which the features must be worked and in particular the order of individual steps in a method claim does not imply that the steps must be performed in this order. Rather, the steps may be performed in any suitable order.