Data communication apparatus for stabilizing the connection of a communication line between data communication apparatuses and program therefor

A data communication apparatus 1 has a processing section (CPU) 10 that executes at least a part of communication processing of a communication controller 2 and that executes processing other than the communication processing, whereinThe data communication apparatus 1 has an interrupt request blocking section 20 that blocks, during execution of a processing relevant to information exchange concerning a communication condition for the communication controller 2 to carry out a communication processing, an interrupt request to the processing section 10 with priority over the processing relevant to information exchange. With this arrangement, even when additional operation is carried out to execute an interrupt processing during execution of a processing concerning a communication condition such as a modulation system of a modem and a communication speed, the processing can be executed securely and a stable connection of a communication line can be maintained.

CROSS-REFERENCE TO RELATED APPLICATION

This application claims priority from, and incorporates by reference the entire disclosure of, Japanese Patent Application (1) No. 2004-338883, filed on Nov. 24, 2004.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to a processing controller, a data communication apparatus such as a personal computer, and a program for the controller and apparatus. Particularly, the invention relates to a processing controller, a data communication apparatus that incorporates a software modem to stabilize a connection of a communication line between data communication apparatuses, and a program for the controller and apparatus.

2. Description of the Related Art

In order to maintain a stable operation of a communication line while the communication line is being connected to a bulletin board system (BBS) or other data communication apparatus, telecommunication equipment such as a modem always monitors line quality, and automatically resets communication functions and performance such as a communication speed and a modulation system (i.e., retraining, and rate renegotiation). With the increase in the operating speed of CPUs in recent years, software is being developed for telecommunication equipment such as modems. The bulletin board system conventionally refers to the whole of personal computer communication services, and nowadays refers to a data communication apparatus provided in a Web site mode on the Internet. The retraining refers to a negotiation operation that two sets of telecommunication equipment (i.e., modem) carry out to determine the setting of communication functions and performance by mutually exchanging information about communication speed, modulation system, error correction function, and data compression procedure, to establish communications. Particularly, negotiation to reset a communication speed is called rate renegotiation. The retraining is the processing to renegotiate communication functions and performance currently in use, without re-connecting the mutually-connected two modems. The retraining occurs when a line state changes as a result of increase in the amount of static electricity on the line, for example. Usually, this processing takes a few seconds.

Patent literature 1 discloses an information processor that restricts power consumption of a CPU by variably controlling the clock frequency of the CPU using a software modem, that is, a software system for a computer main body to execute a part of the functions of a modem that connects between the computer and an analog communication line. The patent literature 1 also discloses an information processor that restricts communication errors such as a connection refusal and a timeout, by variably controlling the clock frequency following a necessary CPU load that changes according to a negotiation state.

Patent literature 2 discloses a software modem for a data communication apparatus, in which, when there is an instruction to process a specific application with a higher processing priority than that of a modem processing of resetting communication functions and performance, the software modem starts processing this specific application even when the modem processing is being carried out. In order to properly execute the modem processing while properly executing the processing of other applications, the software modem changes a communication speed according to the number of applications being started, the state of the load of the applications being started on the CPU, and the time required for the modem processing.

Usually, the modem operates in a quiet mode after the line is connected. A user does not recognize that communication is now being reset. The modem executes a reset to stably operate communication. The software modem is most unstable during the resetting of communication such as a resetting of a modulation system and a communication speed. The load on the CPU is largest during this resetting. If, while the CPU is being applied with large load, the CPU receives an interrupt request to process a specific application having a higher priority than that of a retraining processing and, for example, when there is an interrupt request to start a word processor or reproduce a DVD that applies large load on the CPU, the CPU usually executes the interrupt processing with priority over the retraining processing. Therefore, the retraining processing is not executed. When this processing continues for a long time based on the interrupt request, the CPU cannot communicate with the other communication apparatus to reset communication. Consequently, the retraining processing cannot be carried out normally, and the line is disconnected.

The information processor described in the patent literature 1 variably controls the clock frequency following the necessary load on the CPU that changes based on the negotiation state. On the other hand, the software modem described in the patent literature 2 changes the communication speed according to the number of applications being started, the state of the load of the applications being started on the CPU, and the time required for the modem processing. However, the above operations do not solve a problem of a line disconnection that occurs when the CPU executes the interrupt processing with priority over the retraining processing during the resetting of communication functions and performance which applies a large load to the CPU.

SUMMARY OF THE INVENTION

In order to solve the above problem, the present invention provides a processing controller, a data communication apparatus incorporating a software modem, and a program for these apparatuses that can securely reset communication functions and performance such as a modulation system and a communication speed and can maintain stable connection of a communication line, even when a CPU is instructed to execute interrupt processing that has priority over retraining processing during the resetting operation.

In order to achieve the above object of the invention, there is provided a processing controller for a data communication apparatus having a processing section that executes at least a part of communication processing of a communication controller and that executes processing other than the communication processing. The processing controller has an interrupt request blocking section that blocks, during execution of a processing relevant to information exchange concerning a communication condition for the communication controller to carry out a communication processing, an interrupt request to the processing section with priority over the processing relevant to information exchange.

In order to achieve the above object of the invention, there is provided a data communication apparatus having a processing section that executes at least a part of communication processing of a communication controller and that executes processing other than the communication processing. The data communication apparatus has an interrupt request blocking section that blocks, during execution of a processing relevant to information exchange concerning a communication condition for the communication controller to carry out communication processing, an interrupt request to the processing section with priority over the processing relevant to information exchange.

In the data communication apparatus, an input device carries out the interrupt request to the processing section with priority over the processing relevant to information exchange during the execution of this processing.

The data communication apparatus displays a message to the effect that the operation carried out by the input device is invalid during the execution of the processing relevant to information exchange.

In order to achieve the above object of the invention, there is provided a program that is executed in a data communication apparatus having a processing section that executes at least a part of communication processing of a communication controller and that executes processing other than the communication processing. The program functions as an interrupt request blocking section that blocks, during execution of a processing relevant to information exchange concerning a communication condition for the communication controller to carry out a communication processing, an interrupt request to the processing section with priority over the processing relevant to information exchange.

According to the processing controller, the data communication apparatus, and software of the present invention, operation that gives a large load to the CPU can be blocked while the software modem is resetting communication functions and performance such as a modulation system and a communication speed. Therefore, the communication functions and performance can be reset securely, and stable connection of a communication line can be maintained.

DESCRIPTION OF THE PREFERRED EMBODIMENTS

Embodiments of the present invention are explained in detail below with reference to the appended drawings.

FIG. 1is a block configuration diagram showing main parts of a data communication apparatus according to a first embodiment of the present invention. A data communication apparatus1shown inFIG. 1is a personal computer, for example. The personal computer1incorporates a modem2, and a mother board100that is connected to an input device such as a keyboard3, a mouse4, and a scanner and a light pen not shown. The data communication apparatus1is connected to another data communication apparatus via the modem2, and a communication line such as a telephone circuit, to thereby carry out communications. An interrupt request blocking section20is provided in the mother board100. The interrupt request blocking section20has a function of blocking the CPU provided in the mother board100of the data communication apparatus1from executing an interrupt processing having priority over retraining processing while the modem2is resetting communication functions and performance such as a modulation system and a communication speed.

FIG. 2is a block configuration diagram showing functions of a modem shown inFIG. 1. The modem2converts (modulates) digital data transmitted from a data communication apparatus into an analog audio signal, and sends the signal to a telephone circuit. The modem2also converts (demodulates) an analog audio signal transmitted through a telephone circuit into digital data. According to the recommendations (V series) of the International Telecommunication Union (ITU) concerning a modem, 33.6 kbps is a maximum communication speed of a vertical symmetric type for which a communication speed in the direction from a subscriber to a telephone office is the same as a communication speed in the direction from a telephone office to a subscriber. For a vertical asynchronous type of which communication speeds are different between both directions, a maximum communication speed is 33.6 kbps for an up direction, and 56 kbps for a down direction, respectively.

The modem2is always monitoring the quality of a telephone circuit. The modem2has a function of resetting a circuit speed, a protocol, an error correction, and a data compression system at any time when noise is mixed into the telephone circuit or when a reception level or an S/N ratio becomes low, to maintain the throughput and the line connection (This is prescribed in the recommendations of the ITU-T V.90 and the ITU-T V.34). A controller22reads the information of a line interface21to monitor the quality of the telephone circuit. Noise includes power source noise, noise of electromagnetic waves of a microwave oven, and noise of an inverter of an air conditioner. According to a modem currently available, software, that is, driver software that operates on the operating system, plays the main roles of the controller22and a modulator/demodulator23, based on the speeding up of the CPU provided on the data communication apparatus on which the modem is mounted. Therefore, this modem is called a software modem.

FIG. 3is a block configuration diagram of the mother board shown inFIG. 1. The mother board100that is incorporated in the data communication apparatus1is mounted with a CPU100, and various items that are connected to the CPU10via a bus line, including a modem chip12, a keyboard chip13, a mouse chip14, a video chip15, an audio chip16, a hard disk drive (HDD)17such as a magnetic disk and a magnetic optical disk as an external storage, a CD-ROM drive18, and a memory19such as a RAM as an internal storage. The CD-ROM drive18can be replaced by a DVD-ROM drive. The modem chip12, the keyboard chip13, the mouse chip14, the video chip15, and the audio chip16respectively have interface functions to take interface between the CPU10and the modem2, the keyboard3, the mouse4, a display not shown, and a speaker not shown, respectively in this order. The interrupt request blocking section20is provided on the mother board100. The CPU10carries out communication control processing to realize the software modem, and executes the operating system as other software, and various programs of a word processor, DVD reproduction, etc.

The interrupt request blocking section20has a relay21that is excited/non-excited by the modem chip12. Based on the excitation/non-excitation of the relay21, the bus line that connects the CPU10with the keyboard chip13and the mouse chip14that are connected to the input device (i.e., the keyboard3and the mouse4) is blocked or the block is cancelled for a predetermined time. The relay21is usually in a non-excited state. When the input device is operated to prepare a new document, for example, the CPU10receives this instruction, and executes interrupt processing. This interrupt processing refers to making access to an application stored in the hard disk not shown via the HDD17to write into the memory19, or rewriting the screen of the display unit not shown by the video chip15, for example. The CPU10executes this processing with priority over the resetting processing carried out by the modem2.

A program for a modem processing routine that is used for the software modem is written into the memory19directly or via a recording medium. Alternatively, the program is downloaded from another computer connected via a communication line, and is written into the memory19. The program is then stored into the own hard disk. The CPU10executes the program by writing it into the memory19according to need.

FIG. 4is a flowchart showing the modem processing routine according to the present invention. The driver software of the modem2executes this routine in a predetermined cycle.

At step401, the modem2monitors the quality of the telephone circuit. The controller22reads the information of the line interface21, and decides whether there is a request for resetting (retraining) communication functions and performance such as a modulation system and a communication speed. When it is decided that there is a request for resetting communication functions and performance, the process proceeds to step402. When it is decided that there is no request for resetting, the present routine is finished.

At step402, the modem2displays, on the screen of the display unit not shown, a message “the input device is invalid” that indicates that it is not possible to make the CPU10execute an interrupt processing with priority over the retraining processing. At the same time, the modem chip12excites the relay within the interrupt request blocking section20to open the relay contact. As a result, the bus line that connects the CPU10with the keyboard switch13and the mouse chip14connected to the input device (i.e., the keyboard3and the mouse4) is blocked. Consequently, a signal input from the input device to the CPU10is blocked. With this arrangement, a user is persuaded not to carry out additional operation during the resetting. During the execution of the resetting, voice can be output as well as the message “the input device is invalid” is displayed on the screen. In other words, during the resetting, the sound volume of the modem is increased to inform the user of the data communication apparatus, by voice, that the communication functions and performance are being reset.

At step403, the resetting is started.

At step404, it is decided whether the resetting has ended. When it is decided that the resetting has ended, the process proceeds to step405. When it is decided that the resetting has not ended yet, the present routine is finished.

At step405, a message “the input device invalidation is cancelled” is displayed on the screen of the display unit to indicate that the CPU10can restart operation of executing an interrupt processing with priority over the retraining processing. At the same time, the modem chip12de-excites the relay within the interrupt request blocking section20to close the relay contact. As a result, the blocking of the bus line that connects the CPU10with the keyboard switch13and the mouse chip14connected to the input device (i.e., the keyboard3and the mouse4) is cancelled. Consequently, a signal is normally input again from the input device to the CPU10.

At step406, it is decided whether a predetermined time has passed since the start of the execution of the processing at step405. When a predetermined time has passed, the process proceeds to step407. When a predetermined time has not passed, the present routine is finished. At step407, the message “the input device invalidation is cancelled” that is displayed on the screen of the display unit is cancelled.

During the resetting, the operation of the input device can be stored in the memory19of the CPU10. After the resetting, the operation stored in the memory19can be executed.