1. Field of the Invention
The present invention relates to a technology for the fault diagnosis of an electronic device including an image forming apparatus.
2. Description of the Related Art
Synchronous data transmission (uni-directional) is known and can be faster relative to asynchronous data transmission (bi-directional). Japanese Patent Laid-Open No. 2002-230536 discloses a dedicated data transfer method, by which the data transfer is fixed in the one-way direction. This has the advantage that the serial bus reduces the number of signal lines and the physical connection between the devices becomes easy. Also, since the data transfer is in the one-way direction, the timing of an interface circuit is better designed.
Further, Japanese Patent Laid-Open No. 4-100446 discloses a data transfer system, wherein a network is switched to a backup network, and a faulty device is disconnected when a packet error is detected. The disadvantage is that for an image forming apparatus, one portion of the image forming apparatus is disconnected and is not used.
Furthermore, Japanese Patent Laid-Open No. 02-153655 discloses use of a loop-back communication test in a communication control integrated circuit to determine whether the communication control integrated circuit has a fault. To specify the fault portion, the loop-back communication test is needed for an internal portion as well as for an external portion, which results in complicated control circuitry. In an apparatus which does not communicate with the external portion, it is too difficult to specify the fault portion.
As mentioned above, synchronous communication is important for improving the speed of data transfer. When this data transfer mode is used, and devices are daisy chained in a loop, access to all the devices is cut off when a fault occurs. Therefore, a user can find only the existence of fault and, inconveniently, the extensive test using a dedicated measuring instrument is necessary for identifying the faulty portion.
A boundary scanning method is popular for fault diagnosis of devices in factories. However, the boundary scanning method is not suited to the self-diagnosis of devices for maintenance in the field. That is, the boundary scanning method needs a one-to-one correspondence between test data and the device and, upon changing the device, use of the test data must be changed accordingly. In self-diagnosis, the version of the device is checked and the test data suitable thereto is selected. However, since the device information is not readable because access to the device has been cut off, other ways such as using previously stored information is used. Since test data for boundary scanning is large (approximately 100 KB per LSI) pre-installing the test data is not cost effective.
Therefore, one advantage of the present invention is that it provides an electronic device in which, when a plurality of processors are connected in a loop, for example, by a one-way bus, a faulty portion in the structure is easily detected.
According to the present invention, there is provided an electronic device having connecting means for connecting, like a loop, a main control portion for controlling the electronic device and a plurality of sub-processing portions for executing specific functions, comprising: a signal line for transmitting a test signal from the main control portion to the sub-processing portions, different from the connecting means connected like the loop; a generating unit for generating predetermined packet data to the connecting means; sub-processing portions comprising a receiving and transmitting unit for receiving the packet data and transmitting it to the next portion; a determining unit for determining whether or not a fault exists at any portion in the electronic device in accordance with whether or not the sub-processing portion normally receives the packet data transmitted to the main control portion; a transmitting unit for transmitting the test signal to the sub-processing portions via the signal line in case that the determining unit determines that the fault exists; and a fault portion specifying unit for specifying a fault portion in the electronic device based on whether or not a test packet transferred via the connecting means is normally received, wherein the test packet is generated by the sub-processing portion in accordance with the test signal.
In addition, according to the present invention, there is provided an electronic device having connecting means for connecting, like a loop, a main control portion for controlling the electronic device and a plurality of sub-processing portions for executing specific functions, comprising: a signal line for transmitting a test signal from the sub-processing portions to the main control portion, different from the connecting means connected like the loop; a generating unit for generating predetermined packet data to the connecting means; sub-processing portions comprising a receiving and transmitting unit for receiving the packet data and transmitting it to the next portion; a determining unit for determining whether or not a fault exists at any portion in the electronic device in accordance with whether or not the sub-processing portion normally receives the packet data transmitted to the main control portion; a transmitting unit for transmitting a test packet to the connecting means in case that the determining unit determines that the fault exists; and a fault portion specifying unit for specifying a fault portion of the electronic device based on a state of the test signal transmitted via the corresponding signal line from the sub-processing portions in accordance with the test packet.
In addition, according to the present invention, there is provided an electronic device having connecting means a main control portion for controlling the device and a plurality of sub-processing portions for executing specific functions like a loop, comprising: a signal line for transferring a test signal, arranged between the sub-processing portion and the main control portion, different from the connecting means; a generating unit for generating predetermined packet data to the connecting means; sub-processing portions comprising a receiving and transmitting unit for receiving the packet data and transmitting it to the next portion; a determining unit for determining whether or not a fault exists at any portion in the electronic device in accordance with whether or not the sub-processing portion normally receives the packet data transmitted to the main control portion; and a fault portion specifying unit for specifying a fault portion in the electronic device via the corresponding signal line between the sub-processing portion and the main control portion in case that the determining unit determines that the fault exists.
Further, objects, features, and advantages of the present invention will become apparent from the following description of the preferred embodiments with reference to the attached drawings.
Hereinbelow, embodiments of the present invention will be described with reference to the drawings.
Referring to
Reference numeral 105 denotes a local area network (hereinafter, referred to as a LAN) in conformity to Ethernet (registered trademark), reference numeral 106 denotes an image output processor (hereinafter, referred to as a VO) which executes a function for outputting image data to a printer, and reference numeral 107 denotes a printer unit.
Reference numeral 108 an imaging processor (hereinafter, referred to as an IP) for the rotation of image, the enlargement and reduction of the image, and the color correction, reference numeral 109 denotes a synchronous dynamic memory (hereinafter, referred to as a RAM) having a function as a work memory for image processing in the IP 108, reference numeral 110 denotes an image input processor (hereinafter, referred to as a VI) having a function for inputting the image data from a scanner unit 111, and reference numeral 111 denotes a scanner unit.
The VO 106, IP 108, and VI 110 are sub-processors which execute the specific functions to the MAIN 101. The MAIN 101, the VO 106, the IP 108, and the VI 110 are connected like a loop by a one-way serial bus (hereinafter, simply referred to as a serial bus), and the data is transmitted between the processors. Referring to
According to the first embodiment, signal lines 113a, 113b, and 113c for transmitting test signals which will be described later are further connected from the MAIN 101 to the sub-processors, namely, to the VO 106, the IP 108, and the VI 110. The signal lines 113a to 113c are connected independently of the serial buses.
With the above structure, the MAIN 101 converts the image data held on the RAM 102 into packet data and transfers it to the VO 106, thus outputting the data by the printer unit 107 and forming the image. The image data held on the RAM 102 is transferred to the IP 108 and is subjected to the image processing, thereby rotating, enlarging, and reducing the image and correcting the color of the image. Further, the MAIN 101 receives scanning image data of the scanner unit 111 received by the VI 110 and stores it on the RAM 102. Furthermore, the MAIN 101 communicates, via the LAN 105, another device such as a computer on the network.
The MAIN 101, the VO 106, the IP 108, and the VI 110 are very-large-scale integrated circuits (VLSIs) and the detailed description is given of them hereinbelow.
The MAIN 101 has the internal structure as shown in
Reference numeral 201 denotes a CPU, reference numeral 202 denotes a cross bar switch (hereinafter, referred to as an XB), reference numeral 203 denotes a physical-layer interface (hereinafter, referred to as a PHY) for connection to a physical layer of Ethernet, reference numeral 204 denotes a LAN controller (hereinafter, referred to as an LANC) for communication on the local area network, reference numeral 205 denotes a memory controller (hereinafter, referred to as an MC), reference numeral 206 denotes a serial bus output interface (hereinafter, referred to as an SBO), reference numeral 207 denotes a serial bus input interface (hereinafter, referred to as an SBI), reference numeral 208 denotes a hard disk controller (hereinafter, referred to as an HDC), reference numeral 209 denotes an input/output port (hereinafter, referred to as an I/O), and reference numeral 210 denotes an interrupt controller (hereinafter, referred to as an IC).
The CPU 201 controls overall operation of the apparatus by executing program code held in the ROM 103 and the RAM 102. The ROM 103 stores the boot-up program, and the CPU 201 starts to execute contents of the ROM 103 upon starting the apparatus. A control program stored in the HD 104 is loaded to the RAM 102 and the boot-up program jumps the control program, thereby starting the execution of the control program.
The XB 202 transfers the data between the units in the MAIN 101 in accordance with address spaces allocated to the units. Further, the XB 202 has an arbitrating function upon the simultaneous access of a plurality of units.
The LANC 204 and the PHY 203 have a function for communication with another device via the network. The MC 205 controls the access to the RAM 102 and the ROM 103. The SBO 206 is an interface circuit for outputting data of the serial bus, converts the data stored in the RAM 102 into predetermined packet data, and transmits the converted packet data. The SBI 207 is a serial bus input interface, converts the received packet data into internal data, and transfers the converted data to a predetermined unit.
The HDC 208 is a control circuit for inputting and outputting data of the HD 104, and controls the hard disk by, e.g., an Ultra DMA method. The HD 104 has function for storing program data executed by the CPU 201 and storing the image data stored on the RAM 102. The I/O 209 is an input/output port and has three output ports for TEST1, TEST2, and TEST3 signals according to the first embodiment which are transferred via the signal lines 113a, 113b, and 113c. At the three output ports, the CPU 201 sets the logical level of the TEST1, TEST2, and TEST3 signals to the H/L level.
The IC 210 is a unit which processes the interrupt in the MAIN 101, collects information on the interrupts caused in the units of the portions and on an interrupt packet received by the SBI 207, and notifies the information to the CPU 201.
Referring to
The SBI 301 and the SBO 302 basically has the same functions as those incorporated in the MAIN 101. The PI 303 is a unit which determines which is the packet data received via the SBI 301 from the serial bus 102a, and determines whether the packet data is the command packet, the data packet, or the interrupt packet, as will be described later. The PI 303 determines whether or not the received packet data is for the VO 106 and further determines whether or not it is for the unit in the VO 106. When the received packet data is for another processor, the PI 303 promptly transmits the packet data from the SBO 302 to the serial bus 102b, and further transmits it to the next unit (namely, the IP 108).
When the received packet is a command packet indicating a command to a unit in the VI 301, the register in the unit reads/writes the data. When the received packet is the data packet for the PIP 303, the image data as contents of the data packet is transferred to the PIP 304. The PIP 304 converts the received image data into data suitable for the output by the printer unit 107, the PRC 305 transfers the data to the printer unit 107, and it executes the printing operation.
The PIP 304 has a function for converting a received RGB image into CMYK-color data and a γ curve converting function for correcting the property of the printer unit 107. The PRC 305 has functions for converting the image data into data at the operating speed of the printer unit 107 and outputting it. The UART 306 is a unit for communication with the printer unit 107, and detects a state of the printer unit 107 and instructs the printing operation.
An IC 307 detects an interrupt factor in the VO 106 and instructs the generation of the interrupt packet to the PI 303. The generated interrupt packet is transmitted to the next processor via the SBO 302. The interrupt factor of the IC 307 is cleared and is masked depending the command packet. The IC 307 receives the TEST1 signal from the MAIN 101 and, then, instructs the generation of an interrupt packet for test to the PI 303, which will be described later. Consequently, even in a state in which the data is not read/written to the registers of the units in the VO processor and the command packet is not received, the interrupt packet for test is generated and is transmitted to the serial bus. Therefore, in the case in which the abnormal state occurs in the VO processor and the command packet is not outputted to the IP 108, the VI 110, and the MAIN 101 at the latter stage, it is checked to see if the communication interface normally functions with the IP 108, the VI 110, and the MAIN 101 at the latter stage.
Reference numeral 401 denotes a serial bus input interface (hereinafter, referred to as an SBI), reference numeral 402 denotes a serial bus output interface (hereinafter, referred to as an SBO), reference numeral 403 denotes a packet interpreter (hereinafter, referred to as a PI), reference numeral 404 denotes an interrupt controller (hereinafter, referred to as an IC), reference numeral 405 denotes a resolution converting unit (hereinafter, referred to as an RSC), reference numeral 406 denotes a memory controller (hereinafter, referred to as an MC), reference numeral 407 denotes a binarizing unit (hereinafter, referred to as a BI), and reference numeral 408 denotes a rotating unit (hereinafter, referred to as an ROT).
The SBI 401, the SBO 402, and the PI 403 have the same functions as those of the VO 106. When the received packet data is the command packet for the unit in the IP 108, the PI 403 reads/writes the data in the register in the unit. When the received packet data is the data packet for the unit in the IP 108, the PI 403 transmits the data to the unit and further transmits, from the SBO 402, the data which is processed by the unit and is returned.
The RSC 405 converts the resolution of the data, thereby enlarging or reducing the data. The MC 406 is a unit which controls the access to the RAM 109, and enables the unit in the IP 108 to use the RAM 109 as a work area.
The BI 407 has a function for halftone processing of multi-value data and converting the processed data into binary data. The function of the BI 407 is mainly used upon binarizing the scanned image before transferring it to the computer.
The ROT 408 executes the rotation of the image, and has a function for rotating the input image data by an angle of 90° on the unit basis and generating a new packet.
The IC 404 detects the interrupt factor caused in the IP 108, and instructs the generation of the interrupt packet to the PI 403. The IC 404 receives the TEST2 signal from the MAIN 101 and, then, instructs the generation of the interrupt packet for test to the PI 403, which will be described later.
Consequently, even in a state in which the data is not read/written to the registers of the units in the IP processor and the command packet is not received, the interrupt packet for test is generated and is transmitted to the serial bus. Therefore, in the case in which the abnormal state occurs in the IP processor and the command packet is not outputted to the VI 110 and the MAIN 101 at the latter stage, it is checked to see if the communication interface normally functions with the VI 110 and the MAIN 101 at the latter stage.
Reference numeral 501 denotes a serial bus input interface (hereinafter, referred to as an SBI), reference numeral 502 denotes a serial bus output interface (hereinafter, referred to as an SBO), reference numeral 503 denotes a packet interpreter (hereinafter, referred to as a PI), reference numeral 504 denotes a scanner input interface (hereinafter, referred to as an SCC), reference numeral 505 denotes a serial communication controller (hereinafter, referred to as a UART), and reference numeral 506 denotes an interrupt controller (hereinafter, referred to as an IC).
The SBI 501, the SBO 502, the PI 503, and the IC 506 have the same functions as those of the VO 106. The SCC 504 is an interface which receives the image data transmitted from the scanner unit 111 and transmits it to the PI 503. The PI 503 converts the received data into the data packet, and transmits the converted data from the SBO 502. The UART 505 communicates with the scanner unit 111. The IC 506 receives the TEST3 signal from the MAIN 101 and, then, instructs the generation of the interrupt packet for test to the PI 503, which will be described later.
Consequently, even in a state in which the data is not read/written to the registers of the units in the VI processor and the command packet is not received, the interrupt packet for test is generated and is transmitted to the serial bus. Therefore, in the case in which the abnormal state occurs in the VI processor and the command packet is not outputted to the MAIN 101 at the latter stage, it is checked to see if the communication interface normally functions with the MAIN 101 at the latter stage.
Next, the structure of the serial bus will briefly be described.
Synchronously to a clock (hereinafter, referred to as a CLK) 60 (60 MHz), data having a 64-bit width is transmitted to the SBO 502 in the processor. The SBO 502 converts the CLK 60 into a CLK 480 (480 MHz) by multiplying the CLK 60 by eight and transmits the serial data having the data width on 8-bit unit basis. That is, the number of CLKs is eight times and the data width is ⅛ and, therefore, the data transfer speed in the processor is the same as that on the serial bus. A START signal is a signal indicating the head of the packet data.
The SBI 501 detects the START signal, then, fetches the data synchronously to the CLK 480, returns it to 64-bit data synchronous to the CLK 60 (60 MHz) therein, and transfers the 64-bit data to the processor. Referring to
Next, the format of packet data will be described.
Referring to
The packet type identifies the format of packet data. For example, reference numeral 00H denotes the data packet, reference numeral 01H denotes the command packet, and reference numeral 02H denotes the interrupt packet.
The chip ID indicates to which processor the packet data is addressed. Since the chip IDs are individually allocated to the processors, each processor determines that the packet data addressed thereto by checking the property of the chip ID.
The image type indicates the property of the image data included in the data packet, reference numeral 00H denotes an RGB color image having 24 bits, reference numeral 01H denotes a monochrome image having 8 bits, and reference numeral 02H denotes a YUV color image.
With respect to the job ID, upon dividing the large-sized data into a plurality of pieces of packet data and processing them, the same job ID is allocated to the same data so as to identify the same data.
The processing command indicates the property for prescribing which of the units in the processors performs which processing. For example, when the IP 108 executes the resolution conversion, the processing command designates the unit number and the processing mode of the RSC 405, thereby executing a predetermined operation.
The data length is a field indicating the actual data length after the header portion. The data length of the data packet is indicated by an integer multiple of 16 bytes, and the remainder is set as padding. The SBOs 206, 302, 402, and 502 in each processor performs the processing so that the data length is the multiple of 16 bytes by adding the data 00H.
In the case of the command packet shown in
The interrupt packet shown in
According to the first embodiment, the structure of the digital color copying machine is as mentioned above. Next, a detailed description is given of fault diagnosis processing of the digital color copying machine as the electronic device according to the first embodiment.
The MAIN 101 transmits the command packet addressed thereto from the SBO 206 to the serial bus 112a (step S1). In place thereof, the MAIN 101 may transmit the command packet for setting the chip ID which does not exist on the serial bus loop. When the circuit connection is not abnormal, the processor other than the MAIN 101 doesn't recognize the packet addressed thereto. Then, the packet data is transmitted to the next processor and, therefore, the packet data is to be returned to the SBI 207 of the MAIN 101.
It is determined whether or nor the transmitted packet data is normally returned (step S2). If the transmitted packet data is normally returned, it is determined that it is “no abnormal”, i.e. normal. If the transmitted packet data is not normally returned either because the packet data is broken, or a processor or the serial bus is faulty, then this case is abnormal. Note that as an example, the terms “normal” or “abnormal” relates to whether the transmitted packet is returned to the main processor within a predetermined time. Other examples of what relates to “normal” and “abnormal” are possible. In the abnormal case, the processing sequence of moves to step S3, where a test signal, TEST3 signal from the I/O port 209 is asserted to the VI 110 at the most downstream position of the serial bus loop starting from the MAIN 101 (step S3).
The IC 506 of the VI 110 receives the TEST3 signal and, then, instructs the PI 503 to generate the predetermined interrupt packet for test (hereinafter, simply referred to as a “test packet”) as mentioned above. As a result, the VI 110 transmits the test packet to the serial bus 112d.
The MAIN 101 determines whether or not the test packet is normally received from the VI 110 (for example, whether or not it is received for a predetermined time) (step S4). When the test packet is not received for the predetermined time, it is determined that the operation of the VI 110 or the connection between the MAIN 101 and the VI 110 is abnormal. When the test packet is received for the predetermined time, the chip ID and the unit ID of the interrupt packet is stored in the register of the IC 210. The data portion is stored at a predetermined address in the RAM 102. After that, the interrupt is notified to the CPU 201. The CPU 201 receives the interrupt packet and, then, checks the chip ID, the unit ID, and the data of the data portion of the processor in which the interrupt packet is caused. Thus, the CPU 201 confirms that the VI 110 normally transmits the interrupt packet for test and that at least the connection between the VI 110 and the MAIN 101 and the operation of the VI 110 is normal. In this case, the processing sequence advances to step S5.
In step S5, the TEST2 signal of the I/O 209 is asserted and, in accordance therewith, it is determined whether or not the test packet to be transferred from the IP 108 is received for a predetermined time (step S6). When it is determined that the test packet is not received for the predetermined time, it is determined that the operation of the IP 108 or the connection between the VI 110 and the IP 108 is abnormal. When it is determined that the test packet is received normally for the predetermined time, the operation of the IP 108 or the connection between the VI 110 and the IP 108 is not abnormal. The processing sequence advances to step S7.
In step S7, the TEST1 signal of the I/O 209 is asserted and, in accordance therewith, it is determined whether or not the test packet to be transferred from the VO 106 is received for a predetermined time (step S8). When it is determined that the test packet is not received for the predetermined time, it is determined that the operation of the VO 106 or the connection between the IP 108 and the VO 106 is abnormal. When it is determined that the test packet is received for the predetermined time, it is determined that the operation of the MAIN 101 or the connection between the VO 106 and the MAIN 101 is abnormal.
In the above-mentioned fault diagnosis processing, depending on whether or not to receive, for a predetermined time, the test packet to be transferred via the one-way serial bus from the sub-processor in accordance with the test signal transferred via the dedicated signal line from the main processor, the fault portion is specified in the electronic device. The test signal may be transmitted in any order. However, as mentioned above, it is efficient that the fault portion is specified by sequentially testing the sub-processors starting from one at the most downstream of the bus loop having the main processor at the start point.
Consequently, even in a state in which the sub-processor does not transmit the command packet from the MAIN 101 to the unit at the latter stage via the serial bus, the interrupt packet for test is generated in the sub-processor in accordance with the instruction of the MAIN 101 via the signal line and it is transmitted to the serial bus. Therefore, the interrupt packet for test is transmitted to the serial bus at the latter stage and thus it is checked to see if the communication interface normally functions with the processor at the latter stage and the abnormal state is specified.
According to the first embodiment, the sub-processors transmit the test packet to the serial bus in accordance with the test signal transferred via the dedicated signal line from the main processor. Advantageously, with a contrary relationship between the test signal from the main processor and the test packet from the sub-processor, the sub-processor transmits the test signal via the dedicated signal line to the main processor in accordance with the test packet transferred from the main processor to the serial bus.
The structure will be described in detail with reference to the drawings. In the following drawings, the same portions as those according to the first embodiment are designated by the same reference numerals, they are not described, and only different portions are described.
First, the MAIN 101 transmits the command packet addressed thereto from the SBO 206 to the serial bus 100a (step S21). When the circuit connection is normal, the MAIN 101 recognizes that another processor has the packet data having the chip ID different from that of the MAIN 101 and the packet data is transmitted to the next processor. Thus, the packet data is to be returned to the SBI 207 in the MAIN 101.
Then, it is determined whether or not the transmitted packet data is normally returned (step S22). If it is determined that the packet data is normally returned, it is determined that “no abnormal”. On the other hand, if it is determined that the packet data is not normally returned or that the packet data is broken, it is determined that any of the processors has a fault or the serial bus for connecting between the processors is abnormal. In this case, in the processing subsequent to step S23, the test packet is transmitted and, thereby, the transmission of the test signal from the sub-processors causes the test of the processors and of the connection between the processors. The MAIN 101 transmits the test packet with the structure shown in
The test packet is a specific packet for diagnosis which is defined by the packet type 04H in the header portion. The sub-processor receives the packet and, then, detects the test mode. Further, it is tested whether or not the test data portion matches the data which is previously stored. When it is confirmed that the test data portion is correctly received, the TEST signal is asserted and the test packet is transferred to the next processor.
The VO 106 receives the test packet and, then, the PI 303 instructs the I/O 308 to assert the TEST1 signal and transmits the test packet from the SBO 302 to the next IP 108. Similarly, the PI 403 of the IP 108 receives the test packet and, then, allows the I/O 409 to assert the TEST2 signal and transmits the test packet from the SBO 402. Further, the VI 110 receives the test packet and, then, the PI 503 allows the I/O 507 to assert the TEST3 signal and transmits the test packet from the SBO 502.
When the MAIN 101 transmits the test packet in step S23, it waits for a predetermined time (step S24). By checking the levels (statuses) of the TEST1, TEST2, and TEST3 signals from the input ports, it is determined whether or not the VO 106, the IP 108, and the VI 110 normally receive the packet data for test.
In step S25, it is checked to see if the TEST1 signal from the VO 106 has the high level (referred to as an HI). When the TEST1 signal does not have the HI, it is determined that the operation of the VO 106 or the connection between the MAIN 101 and the VO 106 is abnormal. When the TEST1 signal is HI, it is determined that at least the operation of the VO 106 or the connection between the MAIN 101 and the VO 106 is not abnormal. Then, the processing sequence advances to step S26.
In step S26, it is checked to see if the TEST2 signal from the IP 108 is HI. When it is determined that the TEST2 signal is not HI, the operation of the IP 108 or the connection between the VO 106 and the IP 108 is abnormal. When it is determined that TEST2 signal is HI, it is determined that at least the operation of the IP 108 or the connection between the VO 106 and the IP 108 is not abnormal and the processing sequence advances to step S27.
In step S27, it is determined whether or not the TEST3 signal from the VI 110 is HI. When it is determined that the TEST3 signal is not HI, it is determined that the operation of the VI 110 or the connection between the IP 108 to the VI 110 is abnormal. When it is determined that the TEST3 signal is HI, it is determined that the operation of the MAIN 101 or the connection between the VI 110 and the MAIN 101 is abnormal.
As mentioned above, according to the second embodiment, the fault portion is specified by determining whether or not the test signal is received from the sub-processor in accordance with the test packet for a predetermined time. Consequently, even in a state in which the sub-processor does not transmit the command packet from the MAIN 101 to the unit at the latter stage via the serial bus, the interrupt packet for test is generated in the sub-processor in accordance with the instruction of the MAIN 101 via the signal line and it is transmitted to the serial bus. Therefore, the interrupt packet for test is transmitted to the serial bus at the latter stage and thus it is checked to see if the communication interface normally functions with the processor at the latter stage and the abnormal state is specified.
A brief description is given of the fault diagnosis processing of the electronic device according to the second embodiment. That is, the electronic device comprises the main processor for entirely controlling the electronic device and the sub-processors for executing the specific functions, which are connected to each other like a loop by a one-way bus. Further, the electronic device comprises the signal line for transmitting the test signal from the sub-processors to the main processor, unlike the one-way bus. In the fault diagnosis processing, first, the main processor transmits the predetermined packet data to the one-way bus, and determines whether or not the fault exists at any portion in the electronic device in accordance with whether or not the packet data is normally returned to the main processor. Next, when it is determined that the fault exists, the test packet is transmitted to the one-way bus and the fault portion in the electronic device is specified based on the state of the test signal which is transmitted via the corresponding signal line from the sub-processor in accordance with the test packet.
According to the first and second embodiments, the digital color copying machine is described as the examples. However, the present invention is not limited to these, and can widely be applied to electronic devices including a computer device and various image processing apparatuses in which a plurality of processors realize a predetermined function in cooperation therewith.
The first and second embodiments of the present invention are described in detail as mentioned above. However, the present invention can be applied to a system comprising a plurality of devices or an apparatus comprising a single device. Further, the present invention can be applied to the fault diagnosis method of the electronic device.
The present invention is accomplished by directly or remotely supplying, to a system or an apparatus, the program (corresponding to the flowchart shown in
Therefore, the present invention is realized by the program code installed to the computer so as to realize the functions and processing of the present invention by the computer. That is, the claims of the present invention include the computer program for realizing the functions and the processing of the present invention.
In this case, any program format having the above functions can be used, e.g., object code, a program executed by an interpreter, script data supplied to an OS, etc.
As for a recording medium to supply the program, it is able to use a floppy disk, hard disk, optical disk, magneto-optical disk, MO, CD-ROM, CD-R, CD-RW, magnetic tape, nonvolatile memory card, ROM, DVD (DVD-ROM, DVD-R), and the like.
In addition, as a method for supplying the program, a homepage on the Internet is accessed by using a browser of a client computer, and the computer program of the present invention is supplied by the homepage or a compressed file including an automatic install function is loaded to the recording medium such as a hard disk. Further, the program code forming the program of the present invention is divided into a plurality of files and the files are downloaded from the different homepages. That is, the claims of the present invention include a WWW server which allows a plurality of users to download the program file for executing the functions and the processing of the present invention by the computer.
The program of the present invention is enciphered, is stored in a storage medium such as a CD-ROM, and is distributed to users. Key information for decipher on a homepage via the Internet is downloaded by the user which passes a predetermined condition, and the enciphered program is executed by using the key information and is installed to the computer.
The functions of the aforementioned embodiment can be effected not only by executing the program which is read out by the computer, but also by executing a part or all of the actual processing on the OS (Operating System) which operates on the computer based on the instruction of the program.
In addition, the functions according to the first and second embodiments are executed by the program read from the recording medium to a memory included in a function expansion board inserted in the computer or a function extension unit connected to the computer and by thereafter entirely or partly executing the actual processing based on the instruction of the program by the CPU of the function expansion board or the function extension unit.
According to the embodiments of the present invention, it is possible to provide the electronic device in which the portion having the fault is easily specified when a plurality of processors are connected like a loop by the one-way bus.
It is to be understood that the phraseology or terminology employed herein in for the purpose of description and not of limitation. While the invention has been described with reference to the structures disclosed herein, it is not confined to the details set forth and this application is intended to cover such modifications or changes as may come within the purposes of the improvements or the scope of the following claims.
Number | Date | Country | Kind |
---|---|---|---|
2002-304494 | Oct 2002 | JP | national |
This is a continuation of U.S. application Ser. No. 10/688,669 filed Oct. 16, 2003, which claims the benefit of Japanese Application 2002/304,494, filed Oct. 18, 2002, both of which are incorporated by reference herein in their entirety.
Number | Name | Date | Kind |
---|---|---|---|
4228496 | Katzman et al. | Oct 1980 | A |
4745593 | Stewart | May 1988 | A |
4777591 | Chang et al. | Oct 1988 | A |
4817091 | Katzman et al. | Mar 1989 | A |
5404465 | Novakovich et al. | Apr 1995 | A |
5457683 | Robins | Oct 1995 | A |
5689689 | Meyers et al. | Nov 1997 | A |
6665268 | Sato et al. | Dec 2003 | B1 |
6766482 | Yip et al. | Jul 2004 | B1 |
20030056153 | Beer et al. | Mar 2003 | A1 |
20030079165 | Ffrench et al. | Apr 2003 | A1 |
Number | Date | Country |
---|---|---|
02-153655 | Jun 1990 | JP |
04-100446 | Apr 1992 | JP |
2002-230536 | Aug 2002 | JP |
Number | Date | Country | |
---|---|---|---|
20070165711 A1 | Jul 2007 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 10688669 | Oct 2003 | US |
Child | 11689383 | US |