Abstract:
A debug control system and method thereof which includes a debug device and a wireless communication module. The debug device is configured to communicate electrical data with a target device via a first signal transmission interface. The wireless communication module is configured to communicate electrical data with the debug device via a second communication interface, and is configured to communicate electrical data with a host device. Electrical data exchanged between the debug control system and the target device is configured to debug or update firmware residing on the target device.

Description:
CLAIM OF PRIORITY 
       [0001]    This patent application claims priority to Taiwanese patent application 101132077, filed Sep. 3, 2012, entitled “Debug Control System and Method Thereof,” invented by Chia Chien Chuang, the contents of which are hereby incorporated by reference in their entity for all purposes as if fully set forth herein. 
       FIELD OF THE INVENTION 
       [0002]    The present invention generally relates to wirelessly debugging and/or updating firmware. 
       BACKGROUND 
       [0003]    Currently, to debug firmware resident on a first device from a second device, it is necessary to connect the first device and the second device using a physical cable. This is so because a bi-directional electronic data exchange tunnel is necessary for firmware, such as BIOS, to allow another machine to debug the firmware. 
         [0004]    However, due to the differences of data transmission interfaces, (e.g., Parallel Ports and Serial Ports), there are difficulties in establishing the bi-directional electronic data exchange tunnel. Moreover, the host machine may not be able to debug the target device with a cable due to the limitations of geographical environments. 
       SUMMARY 
       [0005]    In accordance with one embodiment of the present invention, a debug control system comprises a debug device and a wireless communication module. The debug device is configured to exchange electrical data with a target device via a first signal transmission interface. The wireless communication module is configured to exchange electrical data with the debug control device via a second signal transmission interface, and to exchange electrical data with a host machine via a wireless communication protocol. 
         [0006]    In accordance with one embodiment of the present invention, a method of the debug control comprises the steps of generating a first probing signal to detect a protocol type of a wireless communication module, broadcasting a handshake signal, establishing a wireless data exchange tunnel, and debugging a target device via the wireless communication tunnel. The wireless communication tunnel is established between a host machine and a debug device. 
         [0007]    In order to provide further understanding of the techniques, means, and effects of the current disclosure, the following detailed description and drawings are hereby presented, such that the purposes, features and aspects of the current disclosure may be thoroughly and concretely appreciated; however, the drawings are provided solely for reference and illustration, without any intention to be used for limiting the current disclosure. 
     
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         [0008]    The objectives and advantages of the present invention are illustrated with the following description and upon reference to the accompanying drawings in which: 
           [0009]      FIG. 1  is a schematic view of a function block diagram showing a debug control system of one embodiment of the present invention; 
           [0010]      FIG. 2  is a schematic view of a detailed function block diagram of the debug device of one embodiment of the present invention; 
           [0011]      FIG. 3  is a flow chart of the electronic data processing of one embodiment of the present invention; 
           [0012]      FIG. 4  a flow chart of the electronic data processing of one embodiment of the present invention; and 
           [0013]      FIG. 5  is a flow chart of a method of a debug control of one embodiment of the present invention. 
       
    
    
     DETAILED DESCRIPTION 
       [0014]    Embodiments of the invention are directed towards a debug control system and a method thereof.  FIG. 1  is a schematic view of a function block diagram showing a debug control system  10  of one embodiment of the present invention. 
         [0015]    In one embodiment of the present invention, the debug control system  10  comprises a host machine  11 , a wireless communication module  13 , a debug device  15  and a target device  17 . The debug device  15  further comprises a first signal transmission interface  151 , a second signal transmission interface  153 , a core module  19 , a first micro-control unit  155 , and a second micro-control unit  157 . 
         [0016]    The debug device  15  is configured to exchange electrical data with the target device  17  via the first signal transmission interface  151 . The wireless communication module  13  is configured to exchange electrical data with the debug control device  15  via the second signal transmission interface  153  and to exchange electrical data with the host machine  11  via a wireless communication protocol. The wireless communication module  13  may include a firmware that is stored in the core module  19  of the debug device  15 . Moreover, the firmware may include a BIOS (Basic Input/Output System). 
         [0017]    In addition, the first signal transmission interface  151  may include a USB (Universal Serial Bus), an I 2 C (Inter-Integrated Circuit), a UART (Universal Asynchronous Receiver-Transmitter), an SPI (Serial Peripheral Interface) or a PS/ 2  connector, and the like. The first signal transmission interface  151  of one embodiment of the present invention may include a combination of said interfaces. 
         [0018]    The second signal transmission interface  153  may include an I 2 C, a UART or an SPI. The second transmission interface  153  of one embodiment of the present invention may include a combination of said interfaces. 
         [0019]    The host machine  11  may correspond to any type of computer, such as a portable electronic device or a desktop computer. Other examples of host machine  11  include a PDA, a laptop, a tablet PC, and a smart phone. 
         [0020]    The wireless communication protocol in which wireless communication module  13  communicates with host machine  11  may include a variety of different wireless protocols, including Bluetooth and IEEE 802.11. The wireless communication protocol of one embodiment of the present invention may include a combination of said protocols. 
         [0021]    A wireless data exchange tunnel may need to be established before the debug device  15  starts exchanging electronic data with the target device  17  and the wireless communication module  13 . Furthermore, the wireless data exchange tunnel may meet the requirements of the wireless communication protocol. 
         [0022]    When the wireless data exchange tunnel has been established, the debug device  15  may generate a first probing signal to detect a protocol type and the firmware version of the wireless communication module  13 . If the firmware version of the wireless communication module  13  is not up-to-date, the firmware of the wireless communication module  15  may be updated. 
         [0023]    Meanwhile, the debug control system  10  may enter into a crisis mode and all work in operation may be stopped. Therefore, the updating of the firmware may be achieved by the wireless communication module  13 , the wireless data exchange tunnel, and the host machine  11 . 
         [0024]    Furthermore, if the firmware of the wireless communication module  13  is up-to-date, the host machine  13  may be capable of debugging the target device via the wireless data exchange tunnel, the wireless communication module  13 , and the debug device  15 . 
         [0025]      FIG. 2  is a schematic view of a detailed function block diagram of the debug device  15  of one embodiment of the present invention. As shown in  FIG. 2 , in one embodiment of present invention, the first micro-control unit  155  may further include a first data receiving module  21 , a first data transmission module  25 , and a data decoding module  23 . The second micro-control unit  157  may further include a second data receiving module  22 , a second data transmitting module  24  and a data processing module  26 . 
         [0026]      FIG. 3  is a flow chart of the electronic data processing of one embodiment of the present invention. As shown in  FIG. 3 , the first data receiving module  21  is configured to receive a first electronic data, via the first signal transmission module  151 , from the target device  17 . If the transmission format of the first electronic data does not meet the requirements of the transmission format of the first transmission interface  151 , the first data receiving module  21  may refuse to receive the first electronic data. 
         [0027]    If the transmission format of the first electronic data meets the requirements of the transmission format of the first transmission interface  151 , the first data receiving module  21  may transmit the first electronic data to the data processing module  26 . The data processing module  26  may transmit the first electronic data, (for example, using an 8-bit data BUS and the like), to the data decoding module  23  for decoding the first electronic data in order to generate second electronic data which is readable by the data processing module  26 . Next, the data decoding module  23  may transmit the second electronic data back to the data processing module  26 . After the data processing module  26  has done the processing work of the second electronic data, the second electronic data may be converted to third electronic data. The third electronic data may have a transmission format which meets the requirements of the transmission format of the second transmission interface  153 . Moreover, the third electronic data may be transmitted to the wireless communication module  13  via the second signal transmission interface  153 . Next, the third electronic data may be transmitted to the host machine  11  with a transmission format which meets the requirements of the wireless communication protocol. 
         [0028]      FIG. 4  is a flow chart of the electronic data processing of one embodiment of the present invention. As shown in  FIG. 4 , the second signal receiving module  22  is configured to receive fourth electronic data which is sent from the second signal transmission interface  153 . The fourth electronic data is transmitted to the wireless communication module  13  with a transmission format which meets the requirements of the wireless communication protocol. Next, the wireless communication module  13  may convert the transmission format of the fourth electronic data to a transmission format which meets the requirements of the second signal transmission interface. If the transmission format of the fourth electronic data does not meet the requirements of the second transmission interface  153 , the second data receiving module  22  may refuse to receive the fourth electronic data. 
         [0029]    If the transmission format of the fourth electronic data meets the requirements of the second transmission interface  153 , the second data receiving module  22  may transmit the fourth electronic data to the data processing module  26 . The data processing module  26  may transmit the fourth electronic data (for example, using an 8-bit data BUS and the like) to the data decoding module  23  for decoding the fourth electronic data in order to generate fifth electronic data which is readable to the data processing module  26 . Next, the data decoding module  23  may transmit the fifth electronic data back to the data processing module  26 . After the data processing module  26  has done the processing work on the fifth electronic data, the fifth electronic data may be converted to a sixth electronic data. The sixth electronic data may have a transmission format which meets the requirements of the first transmission interface  151 . Moreover, the sixth electronic data may be transmitted to the target device  17  via the first signal transmission interface  151 . 
         [0030]    One embodiment of the present invention corresponds to a method for debugging firmware wirelessly.  FIG. 5  is a flow chart of wirelessly debugging firmware accordingly to an embodiment of the present invention. As shown in  FIG. 5 , in step S 501 , when the debug device  15  is respectively coupled to the target device  17  by the first signal transmission interface  151  and to the wireless communication module  13  by the second signal transmission interface  153 , the debug device may generate a first probing signal to detect a protocol-type of the wireless communication module  13 . In step S 503 , the debug device  15  and the host machine  11  may broadcast a wireless handshake signal, respectively. In step S 505 , the debug device  15  and the host machine  11  may generate an acknowledge signal for establishing a wireless data exchange tunnel, respectively. If the wireless data exchange tunnel cannot be established, the host machine  11  cannot debug the target device  17  via the wireless communication module  13  and the debug device  15 . 
         [0031]    If the wireless data exchange tunnel is established, step S 507  may be performed. In step S 507 , the firmware of the wireless communication module  13  may be identified. At this point, if the firmware of the debug device  15  is not up-to-date, the debug control system may enter into a crisis mode and all work of the debug control system may be stopped and step S 509  may be performed. The firmware of the wireless communication module  13  may be updated by the host machine  11  via the wireless data exchange tunnel. 
         [0032]    After step S 509  is performed, step S 510  may be performed. In step S 510 , the host machine  11  may be able to exchange electronic data with the wireless communication module  13  via the wireless data exchange tunnel, which means the host machine may be able to debug the target device  17  via a path formed with the wireless data exchange tunnel, the wireless communication module and the debug device  15 . 
         [0033]    If the firmware of the debug device  15  is up-to-date, step S 510  may be performed. Therefore, the host machine  11  may be able to exchange electronic data with the wireless communication module  13  via the wireless data exchange tunnel, which means the host machine may be able to debug the target device  17  via a path formed with the wireless data exchange tunnel, the wireless communication module and the debug device  15 . 
         [0034]    Although the present invention and its objectives have been described in detail, it should be understood that various changes, substitutions and alterations can be made herein without departing from the spirit and scope of the invention as defined by the appended claims. For example, many of the processes discussed above can be implemented using different methodologies, replaced by other processes, or a combination thereof. 
         [0035]    Moreover, the scope of the present application is not intended to be limited to the particular embodiments of the process, machine, manufacture, composition of matter, means, methods and steps described in the specification. As one of ordinary skill in the art will readily appreciate from the disclosure of the present invention, processes, machines, manufacture, compositions of matter, means, methods, or steps, presently existing or later to be developed, that perform substantially the same function or achieve substantially the same result as the corresponding embodiments described herein may be utilized according to the present invention. Accordingly, the appended claims are intended to include within their scope such processes, machines, manufacture, compositions of matter, means, methods, or steps.