GB2315964A - Transmitting fixed length data blocks containing variable length sub-blocks - Google Patents
Transmitting fixed length data blocks containing variable length sub-blocks Download PDFInfo
- Publication number
- GB2315964A GB2315964A GB9716206A GB9716206A GB2315964A GB 2315964 A GB2315964 A GB 2315964A GB 9716206 A GB9716206 A GB 9716206A GB 9716206 A GB9716206 A GB 9716206A GB 2315964 A GB2315964 A GB 2315964A
- Authority
- GB
- United Kingdom
- Prior art keywords
- block
- data
- fixed
- length
- error
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0056—Systems characterized by the type of code used
- H04L1/0057—Block codes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L25/00—Baseband systems
- H04L25/38—Synchronous or start-stop systems, e.g. for Baudot code
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0056—Systems characterized by the type of code used
- H04L1/0061—Error detection codes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0056—Systems characterized by the type of code used
- H04L1/0067—Rate matching
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/0078—Avoidance of errors by organising the transmitted data in a format specifically designed to deal with errors, e.g. location
- H04L1/0083—Formatting with frames or packets; Protocol or part of protocol for error control
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/08—Arrangements for detecting or preventing errors in the information received by repeating transmission, e.g. Verdan system
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/12—Arrangements for detecting or preventing errors in the information received by using return channel
- H04L1/16—Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
- H04L1/18—Automatic repetition systems, e.g. Van Duuren systems
- H04L1/1829—Arrangements specially adapted for the receiver end
- H04L1/1835—Buffer management
- H04L1/1845—Combining techniques, e.g. code combining
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/12—Arrangements for detecting or preventing errors in the information received by using return channel
- H04L1/16—Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
- H04L1/18—Automatic repetition systems, e.g. Van Duuren systems
- H04L1/1829—Arrangements specially adapted for the receiver end
- H04L1/1848—Time-out mechanisms
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/12—Arrangements for detecting or preventing errors in the information received by using return channel
- H04L1/16—Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
- H04L1/18—Automatic repetition systems, e.g. Van Duuren systems
- H04L1/1867—Arrangements specially adapted for the transmitter end
- H04L1/188—Time-out mechanisms
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/30—Definitions, standards or architectural aspects of layered protocol stacks
- H04L69/32—Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
- H04L69/322—Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
- H04L69/324—Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the data link layer [OSI layer 2], e.g. HDLC
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Detection And Prevention Of Errors In Transmission (AREA)
- Communication Control (AREA)
Abstract
A data communication system comprises a transmitter for transmitting a fixed-length block of information, and a receiver for receiving the block. The fixed length block includes a plurality of sub-blocks, each having a variable length depending upon the data. When an amount of transmission data has a size less than that of the fixed-length data block the transmitter repeatedly arranges the information within the same fixed-length block in order to form the block. Thus the unused portion of the fixed-length block is effectively utilized to increase the reliability of the data communication. Additionally, error check codes may be stored within the data area to further increase reliability.
Description
DATA COMMUNICATION SYSTEM AND METHOD
THEREFOR
DESCRIPTION
BACKGROUND OF THE INVENTION
Field of the Invention
This invention relates to a data communication system and method therefor, and more particularly to a serial-type data communication system and method in which a fixed length block is used, and the block is divided into a plurality of subblocks in response to the length of each portion of data to be transmitted.
Description of the Related Art
A conventional data communication system is used for data transmission, or to control a data transmission device. The communication system operates over a wired (or wireless) communication system between, for example, personal computers or portable information terminals. Such data communication systems have been devised for various types of systems as described in "New Protocol
Handbook" edited by Takashi Iida, published by Asahi Newspaper Co., Ltd. on
October 5, 1994, pp. 200-206.
An Xmodem method is a basic method used in conventional data communication systems, wherein transmitted data is divided into fixed length blocks at the transmitting side, and all the blocks are separately transmitted to the receiving side.
Figure 10 illustrates the structure of a block used in the Xmodem method. A leading code (SOH) indicating a "start of heading", is placed at the leading end of the block. Next, a byte block number (BLK) indicates the logical order of the blocks (e.g., the order in which the blocks should be reassembled at the receiving side) and its complement (represented by a bar over BLK) is positioned after the
BLK portion. After the block complement, a DATA portion having data situated therein, is provided. A checksum code (SUM) is located at the end portion of the block, and is for indicating whether the block contains an error.
Figure 11 schematically illustrates the data transmission side (and its operations) and the data receiving side (and its operations) in the Xmodem system.
First, the data receiving side (e.g., the right side in Figure 11) transmits an abnormal receiving code (NAK) (also referred to as a "negative acknowledgment") having a length of 1-byte (step S101) indicating that the receiving side is ready to receive a block (or another block) of data.
Then, the data transmitting side (e.g., the left side in Figure 11) transmits a first block of data (step S102). The format of the first block of data is the same as that shown in Figure 10 (or Figure 12 discussed below). The data receiving side receives this data, and checks the same for errors using the checksum code. Errorchecking using a sum code is well-known to those ordinarily skilled in the art, and thus, for brevity, the details thereof will not be discussed herein.
When no error exists, the received data is stored, and a 1-byte normal received code (ACK) (also referred to as an "acknowledgment) is sent back to the transmission side (steps S103 and S107) to indicate an acknowledgment of receiving and storing the data. If an error is detected, the received data is canceled, and the
NAK signal is sent back to the transmission side (step S105) from the receiving side.
The next block of data is transmitted from the transmission side to the receiving side when the next ACK signal is received (step S104). If the NAK signal is received, the same block is transmitted again (step S106) by the transmitting side until an ACK signal is received.
This procedure repeats, until the data transmission side transmits a 1-byte ending code (EOT) indicating an end of transmission, after the final block is transmitted (step S108). When the data receiving side receives the EOT signal, the receiving side issues an ACK signal to the transmission side, and the processing is completed (step S109).
In other communication systems, such as a Ymodem method/system or a
Zmodem method/system, a more complex procedure is used. Such systems can accommodate large amounts of data and many files or the like.
However, there are several problems associated with conventional communication systems such as the Xmodem method/system.
First, when the length of the data to be transmitted is greater than the size of the block in a communication system using a fixed length block, such as the
Xmodem system, multiple blocks and portions of blocks must be utilized. When portions of blocks are utilized, the remaining unused section (portion) of the block must be filled with a supplementary code (SUB) (also referred to as a "substitute code"), and must be transmitted as shown in Fig. 12. Similarly, when the length of the data to be transmitted is less than the fixed length of the block, the unused portions of the fixed length block must be filled in (e.g., completed) with a supplementary code. The supplementary code wastes space that could otherwise be used to transmit useful data, but it is necessary to allow the fixed length block to be transmitted and received integrally.
A second problem of the conventional communication systems is the potential use of long (e.g., extended length) blocks with fixed length block systems.
A conventional fixed length block system using long fixed length blocks has a reduced transfer efficiency because such a system requires more frequent retransmission processing. The process of extending the length of the block may cause an error, resulting in a greater likelihood that a retransmission will be necessary. For example, the error results from transmission error due to lengthening of the blocks, and thereby resulting in an increased likelihood of transmission noise. Generally, the longer the length of the block size, the more noise the block will encounter.
A third problem exists with fixed length block systems which reduce the block size (e.g., a system having small blocks). Such systems transmit data slowly when a large amount of data is transferred, because, when a system transmits with a smaller block size, the number of blocks required to transmit the same amount of data increases. Since each block must be formatted and acknowledged, the time needed to transmit a large number of small blocks is greater than the time needed to transmit a smaller number of large blocks, for a given quantity of data.
A fourth problem, for systems which use variable length blocks, is that the processing associated with such systems is very complicated. Communication systems using variable length blocks require a complex procedure for defining a block length between the transmission side and the receiving side, thereby decreasing communication speed and increasing the likelihood of errors.
Further, the Ymodem and Zmodem methods have problems. For example, the Ymodem method has many of the same problems as the Xmodem method described above, because it uses a fixed block length protocol similarly to the
Xmodem method.
Further, while the Zmodem method utilizes a variable block length protocol
and thus does not require supplementary code, it is a very complicated protocol and
thus is undesirable.
Thus, the conventional methods/systems have many problems.
SUMMARY OF THE INVENTION
In view of the foregoing problems of the conventional systems and methods, an object of at least the preferred embodiments of the present invention is to provide a structure and method for a data communication system for effectively utilizing unused space within fixed blocks while maintaining highly reliable data transmission.
In a first aspect, a serial data communication system for transmitting data according to the present invention, includes a transmitter for transmitting a fixedlength block of information and a receiver for receiving the fixed-length block from the transmitter. The fixed-length block includes a plurality of sub-blocks, each subblock having a variable length depending upon the data.
With the unique and unobvious structure and method provided by the present invention, a data communication system is provided in which serial data communication is performed through a fixed-length data block, wherein when an amount of data to be transmitted is smaller than the size of the fixed-length block, the invention repeatedly arranges the transmission data within the block to completely utilize the fixed-length block. Thus, efficiency increases since there is no (or less) unused portion of the block, and the likelihood of errors decreases.
According to the invention, the data block may contain either a data error discriminating code (e.g., a checksum code or the like) or an error correction code.
Normally, one code is sufficient (e.g., only one of the error cancelling systems is employed), since multi-error cancelling systems/methods are complicated and have poor efficiency.
Additionally, with the invention, data which does not contain errors (or contains errors which can be corrected) is preferentially selected. When such preferentially selected data is received by the receiving side, a response code is transmitted to the transmission side. Conversely, when the response code is not received by the transmission side, the data is retransmitted.
Therefore, with the invention, only a minimum amount of supplementary code is utilized, and either the data error discriminating code or an error correction code is added to the transmitted data. Then, at the data receiving side, data having no error (or an error which can be corrected) is preferentially selected from the received data block at the data receiving side. If the data contains an error, a request for retransmission of the block is performed.
In another aspect of the invention, the probability of a block error in the second block is lower than conventional methods (e.g., an Xmodem method) since, when a data file is oversized, a second block includes a redundant data portion (e.g., a redundant "File (2/2)"). The second block of, for example, the conventional Xmodem method has no such redundant data portion, and an error is more likely as compared to the second embodiment of the present invention.
BRIEF DESCRIPTION OF THE DRAWINGS
The foregoing and other objects, aspects and advantages will be better understood from the following detailed description of a preferred embodiment of the invention with reference to the drawings, in which:
Figure 1 is a schematic block diagram of a data communication system according to the present invention;
Figure 2 is a schematic diagram of data block fields preferably used with the data communication system according to the present invention;
Figure 3 is a schematic diagram of a data area of a data block used with the data communication system according to the present invention;
Figure 4 is a schematic diagram of another example of a data area of a data block used with the data communication system according to the present invention;
Figure 5 is a schematic diagram of yet another example of a data area of a block used with the data communication system according to the present invention;
Figure 6 is a flowchart of an operation procedure occurring at a data transmission side of the data communication system according to the present invention;
Figure 7 is a flowchart of an operation procedure occurring at a data receiving side of the data communication system according to the present invention;
Figure 8 is a schematic diagram of a word used with the data communication system according to the present invention;
Figure 9A illustrates a second embodiment of the present invention for transmission when data (e.g., a file) is larger than the block size, and, as a basis for comparison, Figure 9B illustrates such a transmission when using a conventional
Xmodem system;
Figure 10 is a schematic diagram of a data block of the conventional
Xmodem system;
Figure 11 is a schematic diagram of an operating procedure of the conventional Xmodem system; and
Figure 12 is a schematic diagram of a data block of the conventional
Xmodem system.
DETAILED DESCRIPTION OF PREFERRED
EMBODIMENTS OF THE INVENTION
Referring now to the drawings, a preferred embodiment of the present invention will be described by way of example only.. F4pre 1 illustrates a structure of a preferred esxxamant of the present invention.
In Figure 1, a random access memory (RAM) 2 is divided into a data storing area 21 and a communication buffer area 22. The area 21 is for the data to be transmitted or received, so the size of the area is preferably not fixed. Preferably, the size of area 21 is dynamically adjusted. The area 22 is for the communication buffer so that size of this area is equal to the size of a block. Data to be transmitted and received is stored in the data storing area 21. The communication buffer area 22 is a temporary data storing memory capable of continuously transmitting or receiving data corresponding to one block.
A read-only memory (ROM) 3 stores a program for the data communication system, and includes a transmission software storing area 31 for storing transmission software and a receiving software storing area 32 for storing receiving software.
A serial-parallel (S/P) data converter 4 converts parallel data used in a
Central Processing Unit (CPU) 1 into serial data (used in serial communications), or to convert serial data into parallel data, respectively. Based on the programs contained in ROM 3, CPU 1 controls the data transmission operation among ROM 3, RAM 2 and S/P data converter 4, each connected together by a common system bus 5.
In a transmission operation, data is input to the data storing area 21 by an external input device (not illustrated). One block of the data within data storing area 21 is placed in the communication buffer area 22. It is noted that the block size is not fixed, but instead the user can select the block size suitably in advance based on design requirements and considerations. However, as known by one of ordinary skill in the art in the field, the transmitter and the receiver must choose the same size together in advance.
Transmission software within the transmission software storing area 31 processes the block of data within the communication buffer area 22, and outputs the data to the S/P converter 4. The converter 4 converts the data and outputs the data to the receiving side.
In a receiving operation, a block of data is received and converted by the S/P converter 4. Receiving software in receiving software storing area 32 controls the operation to store the block of data in communication buffer area 22. If the block of data is received without error (e.g., as determined by the checksum code or other error discriminating code such as CRC) or error correction code, an acknowledgment signal (ACK) is sent to the transmitting unit to allow a subsequent block to be sent. The blocks from the communication buffer area 22 are combined in the data storing area 21. Once the data transmission is complete, the accumulated data within the data storing area 21 is output to an output device (not illustrated).
Figure 2 is a block diagram illustrating an exemplary transmission data block used in the data communication system of the present invention.
First, a 1-byte leading code (SOH) is positioned at the leading end of the block to indicate the beginning ("start of heading") of the data block. In the next adjacent position, a one-byte block (BLK) indicates the logical order of the blocks (e.g., the numbered order in which all the blocks should be reassembled by the receiving side).
Adjacent to the BLK block is a one-byte data length code (BLL) which represents the length (e.g., the number of bytes) of the data being transmitted. In the above-described preferred embodiment, the length of data to be transmitted in 1 block is less than 256 bytes. Obviously, while, in the embodiment described above, the data area in the block has a maximum of 256 bytes, it is possible to set this value higher. The BLL variable could be multiple bytes in length. For example, if
BLL has 2 bytes, the data area may be increased up to 65536 bytes.
A three-byte check sum code (SUM1) is positioned after the SOH, BLK and
BLL bytes. N-bytes of data to be transmitted are positioned after the SUMI code.
With the arrangement discussed above, the total number of bytes in one block becomes N + 4 (e.g., SOH, BLK, BLL, SUM1), where N is the number of bytes of data to be transmitted. Specifically, N represents the fixed length of the data block.
Figure 3 illustrates the N-byte data area in greater detail. The data area includes data to be transmitted (DATA) in BLL bytes and a one-byte checksum code (SUM2).
The DATA and SUM2 fields form a sub-block, as shown in Figure 3.
Therefore, the number of bytes in the sub-block is (BLL + 1) bytes. A number of bytes equal to (N - BLL - 1) bytes of the supplementary code (SUB) are inserted at the unused portion of the data area following the SUM2 field. Conversely, if the number of bytes in the sub-block is equal to the fixed length of the data area (i.e., (BLL + 1) = N), the supplementary code is not required, as shown in Figure 4.
Figure 5 illustrates an example of the block configuration where the size of the data length code BLL (e.g., for each sub-block) is at least two bytes smaller than one-half the size of the data area (i.e., BLL 5 (N - 2)/2). For example, assuming N (total bytes) is equal to 6, if DATA (BLL) is equal to 3, the equation is not satisfied since (6-2)/2 is equal to 2. However, if N is equal to 6 and DATA is equal to 2 (e.g., for each sub-block), then the equation is satisfied. For DATA (BLL) equal to 3, N would be equal to 8. Such a configuration allows a plurality of sub-blocks to be placed in a single data area such that the number of bytes of supplementary code (SUB) is minimized.
The check sum codes are used to verify the data transmitted in a conventional manner as is known by those ordinarily skilled in the art. Specifically, the check sum codes are provided to detect an error in the data. For example,
SUM1 is selected such that a summation of the total value of SOH + BLK + BLL + SUM 1 is equal to 0. The reason is that such a summation identifies the presence (e.g., when not equal to 0) or absence (e.g., when equal to 0) of errors in transmission.
Similarly, when the value of SUM2 is one byte less than a total value of each of the data in the data area, SUM2 becomes 0. This is a conventional check sequence. SUM2 is a check sum code for the data in the data area (e.g., total BLL bytes).
Hereinbelow, the operation of the preferred embodiment of the present invention is described with reference to the flowcharts of Figures 6-7, which illustrate the operations at the data transmission side and at the data receiving side, respectively.
Operation at the Data Transmission Side
With regard to the transmission side operations, referring to Figure 6, the procedure begins in step S01, and thereafter an applied variable V1 is initialized to 0, and BLK is initialized to 1 (step S02). As discussed in further detail below, when the last data transmitted has a length less than N bytes (e.g., when the block is a final block), V1 is set to 1. Otherwise, V1 isO. As discussed above, BLK is the block order number and is added to each block.
In step S03, it is determined whether V1 is 1. If V1 is 1, an end of transmission signal (EOT) is transmitted (step S04) and the processing finishes normally (step S05).
If the value of V1 isO (e.g., a "NO" in step S03), then processing continues to step S06. In Step S06, it is determined whether the remaining transmission data (e.g., data block(s) remaining of the total data to be transferred) is less than N (e.g., the length of the data is less than the size of the data area (N bytes)) (step S06).
More specifically, subsequent blocks are processed until the last block. The final block is then examined as to whether it is less than N.
When the remaining transmission data is less than N bytes, that block becomes a final block, so that the variable V1 is set to 1 (step S07), and the variable
BLL is set to the remaining byte number of the transmitted data (step S08). Then, the BLL byte is output from the data area (e.g., data storing area 21 of Figure 1) to the buffer (e.g., communication buffer area 22 of Figure 1), and is used for calculating SUM1 and SUM2 (at step S10). The BLL byte affects the check sum values, as described above
The invention further reduces (e.g., minimizes) the number of supplementary codes (SUB) required by determining how many sub-blocks can be placed in a single data area.
Specifically, a variable V2 is set equal to the integer quotient of N/(BLL + 1) (e.g., (INT (N/(BLL + 1))) (step Sol). Then, the block is formed with multiple sub-blocks in the buffer 22 (step S12).
Conversely, in step S06, when the remaining value is more than N bytes,
BLL is initially set to the number of bytes in the data area (e.g., N - 1; step S13).
The BLL byte is input from the data area 21 to the buffer 22 (step S14), and is used to calculate SUM1 and SUM2 (step S15). Then, the block is formed from the information within the buffer 22 (step S16).
Upon completion of the block configuration, the block is transmitted. A variable V3 which is used to count the number of retransmission times is set to 0 (step S17). Such a feature can be implemented as an incremental counter either in hardware and/or software, and is believed to be well-known to one of ordinary skill in the art. Thus, for brevity, the structure and operation thereof will not be discussed in detail herein.
Then, one block is transmitted (step S18), and V3 is incremented by one (step S19). Then, the transmission side waits a predetermined time T1 to receive a response code from the receiving side (step S20).
If the receiving side returns an ACK code to the transmission side (step S21) and if the value of BLK is 256 (step S22), the BLK is set to 0 (step S23).
Conversely, if the receiving side returns an ACK code to the transmission side (step S21) but the value of BLK is not 256 (as determined in step S22), BLK is incremented by 1 (step S24) and the operation returns to step S03 for further processing. When the response code is not an ACK code, the operation returns to step S18 for a block retransmission operation.
If a response code from the receiving side is not detected in step S20, but the predetermined time period T1 following the transmission has not elapsed (step 25), the operation returns again to the response code receiving determination step (step
S20). If time T1 has elapsed but there have not been M (e.g., 3) attempted transmissions (step S26), then the processing returns to the transmitting operation (step S18) to retransmit the block. If the time T1 elapses and there have been M (e.g., 3) attempts at transmission of the same block, then the processing finishes in an abnormal state (step S27) and is deemed to be abnormally terminated.
Thus, the time period T1 is a time for waiting for the response code from the receiving side. If the response code is not detected when T1 elapses, a block retransmission is performed. The variable M is the maximum allowable number of times for block transmission (e.g., set to 3 in the above example; specifically, the block is transmitted once and then retransmitted up to two more times for a total of 3 block transmissions). When the response code is not detected and the transmission is performed M times, the processing terminates abnormally.
The variables T1 and M are predetermined values and are set in advance at the transmission side and the receiving side, respectively, depending upon the designer's requirements and constraints. Thus, T1 and M may be any suitable values as determined by the designer taking into consideration the designer's requirements.
Operations at the Data Receiving Side
Referring to the flowchart in Figure 7, which illustrates the operation at the data receiving side, the process begins at step S28. Initially, variables V6 and V5 are initialized to 0 (steps S29 and S30). Variable V5 is used to store the number of times the response code is transmitted, and V6 is used to store the block number of the previously received block.
The receiving buffer 22 is cleared (step S31), and the variable V5 is incremented by 1 (step S32). Then, the operation waits for the detection of data transmitted from the transmission side (step S33) (e.g., the data receiving side waits to receive data).
When a data transmission is detected, the first byte of the transmission is checked to determine if it is an EOT code (step S34). If the byte is an EOT code, the receiving side transmits an ACK code (step S35) to the transmission side, and the processing completes normally (step S36).
Conversely, in step S34 if it is determined that the first byte is not the EOT code and data is not detected, a receiving operation is performed, and it is determined whether a full block (N + 4 bytes) has been received (step S37). Such a determination may be made, for example, by the receiving side having the same
EOT code as the transmitting side and performing a comparison upon receipt of the transmission. If the first byte is not an EOT, the transmitter will transmit a full block, so that the receiver will receive a ful block.
In the event that receiving the one block is not completed, the time period Ti is measured from when the response code is transmitted (step S38) (e.g., it is determined whether T1 elapses after starting the data receiving operation). If Ti has not elapsed, the operation subsequently returns to the receiving operation (step
S33) to receive data. When T1 elapses, the variable V5 is compared with a predetermined value M (step S39). M is the maximum allowable number of times the response code can be transmitted.
If V5 is less than M, a negative acknowledgment (NAK) is sent from the data receiving side to the transmission side (step S53), and the operation returns again to the buffer clearing operation (step S31) to again perform a receiving operation. If T1 elapses and V5 is equal to M, the processing is stopped abnormally (step S40) (e.g., an "abnormal termination").
The time period T1 is for waiting for the data block from the transmission side. If the data block is not received within the time period T1, the inventive method again performs a response code transmitting operation (e.g., a retransmitting operation). When the data block is not received within time period T1 and the acknowledgment code is transmitted M times, the processing is terminated and judged to be an abnormal termination. The values T1 and M are predetermined values, and are set in advance at both the transmission side and the receiving side.
It is noted that T1 and M are the same at both the transmission side and the receiving side.
When a block (e.g., one block) has been received, SUM1 is calculated (step
S41) and it is determined whether SOH, BLK and BLL are correct (step S42) by using the summing equation described above (e.g., determine whether SOH + BLK
+ BLL + SUM1 = 0). If SOH, BLK and BLL are not correct, all data in this block is not reliable. Thus, preferably it is determined first whether these codes are correct.
If an error is detected in step S42, a negative acknowledgment (NAK) is transmitted from the receiving side to the transmission side (step S53), and the operation returns to the buffer clearing operation (step S31) and to perform again the receiving operation.
If SUM1 is normal (e.g., "OK" in step S42), then variable BLK is checked to determine whether BLK = V6 or BLK = V6 + 1 (step S43). If BLK = V6, then it is determined that the data block is a retransmitted data block. If BLK = V6
+ 1, then it is determined that the block is a next block subsequent (adjacent) to the previously received block.
Since either of the above two determinations represents normal procedures, the variable V6 is set to BLK (step S45), and the operation advances to the next step. However, if BLK is other than V6 or V6 +1, it is determined that a contradiction (e.g., error) in the communication procedure has occurred, and the operation is terminated abnormally (step S44).
In step S46, the number of sub-blocks included in the received block is calcu
S48), V4 is reduced by 1 (step S51), and a similar operation is performed for the next sub-block. This operation is repeated until V4 = 0 and a determination is made as to whether the data of all the sub-blocks are correct (step S52).
When the data in one or more of the sub-blocks is incorrect, a negative acknowledgment (NAK) is transmitted by the receiving side to the transmission side (step S53), and the operation returns to the buffer clearing operation (step S31) and performs another receiving operation.
If the transmission side and the receiving side are operated together in accordance with the aforesaid procedure and both the transmitting side and the receiving side terminate normally, it is judged that the data has been transferred correctly to the receiving side.
While, in the preferred embodiment described above, the checksum has been utilized as the data error discriminating code for each sub-block, it is also possible to use a data error correcting code. For example, a method may be provided in which the data error correcting code is divided into a data section (X bits), an error correcting code section (BCH code) (Y bits), and a parity bit section (1 bit) in a unit of 1 word (4 bytes) could be included in the sub-block, as shown in Figure 8. If the data section X = 21 bits and the error correction code Y = 10 bits, a data error of 2 bits may be corrected in the data section. Since use of the error correcting codes (ECC) is well-known, for brevity it will not be described in detail herein.
Specifically, in the data error correction procedure, first the transmission data is converted into a word (e.g., as shown in Figure 8) at the transmission side so as to represent the sub-block with this word.
If an error exists, then the receiving side performs an error correction on the sub-block based on the word, and recovers the otherwise erroneous data. If the error correction cannot be performed (e.g., a word is contained in the sub-block in which error correction cannot be performed), then the sub-block is not usable. As discussed above, if one of the sub-blocks includes an error, a request to retransmit the data will be sent to the transmission side. Thus, as long as the data in all the sub-blocks repeatedly arranged in one block cannot be used, a request for retransferring is performed with respect to the transmitting side.
As can be understood from the foregoing description, according to the data communication system of the present invention, a highly reliable and more efficient communication procedure can be performed, even when the data to be transmitted has a length smaller than the fixed block length. Further, the invention uses a simple communication protocol associated with the fixed length block communication. The inventive method and structure improve communication response and reduce power consumption.
Specifically, the present invention is much less complicated than the variable length block method described in the background section. Generally, the protocol using variable length block needs BOF (Beginning of Field), EOF (End of Field) and CE (Control Escape) and so forth. Processing these codes is complicated. The invention provides a much simpler and easier protocol.
Since multiple sub-blocks are present in one block, a retransmitting operation is unnecessary so long as the data in all the sub-blocks are free of error, thereby resulting in a reduction of the number of fixed length block transmissions.
Second Embodiment
It is noted that, while the foregoing describes a situation where the block size is less than one-half the length of the fixed-length data field, it also could be applied to an oversized block size which is larger than the fixed-length data field.
Specifically, a second embodiment of the invention deals with such a situation in which a file which is larger than the block size, as shown in Figure 9A.
In contrast, the conventional Xmodem method treats such a situation as shown in
Figure 9B. Such Figures clearly show the advantages of the second embodiment of the present invention.
In Figure 9A, in the first block the block has a fixed length, and utilizes PRE and SUM1 at the beginning of the block and SUM2 at the end of the block. The
data (e.g., "File (1/2)") is therebetween. The PRE section includes SOH + BLK
+ BLL.
In the second block of Figure 9A, the transfer protocol is shown which
includes PRE and SUM1 before a first file (e.g., "File (2/2)") portion and SUM2
immediately thereafter, followed by a second (redundant) "File (2/2)" portion and
another SUM2 code. The transmission is completed with a SUB code. Thus, the
second block of Figure 9A includes a double (redundant) "File (2/2)", and hence
the probability of a block error is lower than the conventional Xmodem method
illustrated in Figure 9B.
Specifically, in Figure 9B showing the conventional Xmodem system, a PRE code and a SUM code are at first and second ends, respectively, of a "File (1/2)" portion of a first block. In a second block, a PRE code is followed by a "File (2/2)" portion, followed by a large SUB code portion and a SUM code.
Thus, with the second embodiment of the present invention, the probability of a block error in the second block is lower since the second block of 9A includes a redundant "File (2/2)". In contrast, the second block of the conventional Xmodem method, as illustrated in Figure 9B, has no such redundant "File (2/2)", and thus an error is more likely.
While the invention has been described with reference to preferred embodiments described above, it is not limited thereto and includes all variations falling within X claims.
Each feature disclosed in this specification (which term includes the claims) and/or shown in the drawings may be incorporated in the invention independently of other disclosed and/or illustrated features.
The text of the abstract filed herewith is repeated here in full as part of the specification.
A data communication system and method for transmitting serial data, includes a transmitter for transmitting a fixed-length block of information, and a receiver for receiving the fixed-length block from the transmitter. The fixed-length block includes a plurality of sub-blocks, and the plurality of sub-blocks each have a variable length depending upon the data. When an amount of transmission data has a size less than that of the fixed-length data block at a transmitter side, the information is repeatedly arranged within a same block in a range not exceeding the block size so as to form the block. Thus, in the data communication system having a fixed-length data block, the unused portion of the fixed-length block is effectively utilized in a highly reliable data communication. If the data transmitted has a size less than that of the data area of the fixed-length data block, multiple sub-blocks and an error check code are stored within the data area. With such an arrangement, errorfree data is preferentially received so as to improve reliability and data transmission efficiency.
Claims (19)
1. A data communication system for transmitting serial data, comprising:
a transmitter for transmitting a fixed-length block of information; and
a receiver for receiving said fixed-length block from said transmitter,
wherein said fixed-length block includes a plurality of sub-blocks, and said plurality of sub-blocks each have a variable length depending upon said data,
wherein when an amount of transmission data has a size less than that of said fixed-length data block at a transmitter side, said information is repeatedly arranged within a same block in a range not exceeding said block size so as to form said block.
2. The data communication system as set forth in claim 1, wherein said fixedlength block includes one of a data error discriminating code and an error correcting code.
3. The data communication system as set forth in claim 2, said receiver further comprising means for correcting an error based on said error correcting code, said receiver preferentially accepting data free of error.
4. The data communication system as set forth in claim 3, wherein when said receiver accepts error-free data, said receiver transmits to said transmitter a response code representing that the data is received.
5. A data communication system as set forth in claim 4, wherein when said response code is not received by said transmitter, said data is transmitted again to said receiver.
6. The data communication system according to claim 1, wherein said transmitter includes:
means for determining whether a response code has been received from said receiver after transmission of data; and
means for determining whether a predetermined time period has elapsed after said transmission of data, wherein, after said predetermined time period has elapsed and said means for determining determines that no response code has been received, said data is transmitted again to said receiver.
7. A data communication system according to claim 1, wherein said receiver requests said transmitter to retransmit a received block only when each sub-block contained in the received block contains an error.
8. A method for serial data communication, comprising steps of:
determining a maximum number of sub-blocks that a fixed-length block can accommodate;
storing at least two said sub-blocks in said fixed-length block; and
transmitting said fixed-length block.
9. The method as in claim 8, further comprising a step of:
determining a size of said fixed-length block.
10. The method as in claim 8, further comprising a step of:
storing one of a data error discriminating code and an error correcting code in said fixed-length block before said transmitting step.
11. The method as in claim 8, further comprising steps of:
receiving said fixed-length block;
checking said fixed-length block for an error; and
if said fixed-length block contains an error, correcting said error.
12. The method as in claim 8, further comprising steps of:
receiving said fixed-length block;
checking said fixed-length block for an error; and
if said error cannot be corrected, requesting a retransmission of said fixedlength data block.
13. The method as in claim 8, further comprising steps of:
receiving said fixed-length block;
checking said fixed-length for an error;
if said fixed-length does not contain error, transmitting an acknowledgment representing an error-free receipt of said fixed-length block; and
retransmitting said fixed-length block if said acknowledgment is not transmitted.
14. The method according to claim 8, wherein when an amount of transmission data has a size less than that of said fixed-length data block at a transmitter side, said information is repeatedly arranged within a same block in a range not exceeding said block size so as to form said block.
15. The method according to claim 8, further comprising steps of:
determining whether a response code has been received from a receiver side after transmission of data; and
determining whether a predetermined time period has elapsed after said transmission of data, wherein, after said predetermined time period has elapsed and it is determined that no response code has been received, said data is re-transmitted.
16. The method according to claim 8, further comprising steps of:
receiving said fixed-length block as a received block at a receiving side;
determining whether each sub-block in said received block includes an error; and
retransmitting a received block only when each sub-block contained in the received block contains an error.
17. A data communication system for communicating serial data, comprising:
a transmitter including means for arranging said data in a fixed-length data block; and
a receiver for receiving said data transmitted,
wherein when the data transmitted has a size less than that of the data area of the fixed-length data block, a plurality of sub-blocks and an error checking code are stored within the data area.
18. The data communication system according to claim 17, wherein said receiver requests said transmitter to retransmit a received block only when each sub-block contained in the received block contains an error.
19. A data communication method or a data communication system substantially
as herein described with reference to any of Figures 1 to 9A of the accompanying
drawings.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB9820107A GB2338382B (en) | 1996-07-31 | 1997-07-31 | Method of serial data communication |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP08200874A JP3139737B2 (en) | 1996-07-31 | 1996-07-31 | Data communication system |
Publications (3)
Publication Number | Publication Date |
---|---|
GB9716206D0 GB9716206D0 (en) | 1997-10-08 |
GB2315964A true GB2315964A (en) | 1998-02-11 |
GB2315964B GB2315964B (en) | 2000-11-15 |
Family
ID=16431680
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
GB9716206A Expired - Fee Related GB2315964B (en) | 1996-07-31 | 1997-07-31 | Data communication system and method therefor |
Country Status (4)
Country | Link |
---|---|
JP (1) | JP3139737B2 (en) |
KR (1) | KR100224048B1 (en) |
CN (1) | CN1176548A (en) |
GB (1) | GB2315964B (en) |
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1999014963A2 (en) * | 1997-09-12 | 1999-03-25 | Nokia Networks Oy | Data transmission method in gprs |
WO1999057848A2 (en) * | 1998-05-06 | 1999-11-11 | Siemens Aktiengesellschaft | Method for transmitting useful data in telecommunication systems |
EP1059757A1 (en) * | 1999-06-11 | 2000-12-13 | Alcatel | Method of block coding an ATM cell using a product code |
EP1145455A1 (en) * | 1999-01-07 | 2001-10-17 | Samsung Electronics Co., Ltd. | A data communication device and method in a cdma communication system |
WO2002001784A2 (en) * | 2000-06-26 | 2002-01-03 | Telefonaktiebolaget Lm Ericsson (Publ) | Error correction of important fields in data packet communications in a digital mobile radio network |
WO2003017691A2 (en) * | 2001-08-16 | 2003-02-27 | Qualcomm, Incorporated | Method and apparatus for message segmentation in a wireless communication system |
EP1548989A2 (en) * | 2003-12-24 | 2005-06-29 | Agere Systems, Inc. | Packet sub-frame structure for selective acknowledgment |
WO2007132196A1 (en) * | 2006-05-12 | 2007-11-22 | The University Court Of The University Of Edinburgh | A low power media access control protocol |
US7489688B2 (en) | 2003-12-23 | 2009-02-10 | Agere Systems Inc. | Frame aggregation |
US7590118B2 (en) | 2003-12-23 | 2009-09-15 | Agere Systems Inc. | Frame aggregation format |
EP2103052A1 (en) * | 2006-12-28 | 2009-09-23 | Research in Motion Limited | Methods and apparatus for increasing data throughput by grouping data packets into maximum transmissible units |
US7633970B2 (en) | 2004-05-07 | 2009-12-15 | Agere Systems Inc. | MAC header compression for use with frame aggregation |
US8171300B2 (en) | 2002-04-30 | 2012-05-01 | Qualcomm Incorporated | Security method and apparatus |
US8208388B2 (en) | 2001-08-16 | 2012-06-26 | Qualcomm Incorporated | Method and apparatus for time-based reception of transmissions in a wireless communication system |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6574770B1 (en) * | 2000-06-29 | 2003-06-03 | Lucent Technologies Inc. | Error-correcting communication method for transmitting data packets in a network communication system |
KR100857777B1 (en) * | 2001-03-26 | 2008-09-09 | 엘지전자 주식회사 | Method for transmitting and receiving packet having variable length using hybrid automatic repeat request |
JP4930024B2 (en) * | 2006-12-08 | 2012-05-09 | 富士通株式会社 | Transmitting apparatus, receiving apparatus, and data transmission method |
JP5207756B2 (en) * | 2007-03-07 | 2013-06-12 | キヤノン株式会社 | COMMUNICATION SYSTEM, COMMUNICATION DEVICE, AND CONTROL METHOD THEREOF |
JP2009118244A (en) * | 2007-11-07 | 2009-05-28 | Internatl Business Mach Corp <Ibm> | Technology for transmitting data whose regeneration unit is variable |
JP5840632B2 (en) * | 2013-01-18 | 2016-01-06 | 京セラドキュメントソリューションズ株式会社 | Image forming apparatus |
CN105357693A (en) * | 2015-09-28 | 2016-02-24 | 深圳市江波龙科技有限公司 | Method and system for network configuration of WiFi equipment |
CN109640302A (en) * | 2018-12-06 | 2019-04-16 | 上海荣泰健康科技股份有限公司 | Method for updating program, electronic equipment and mobile terminal based on BLE bluetooth |
JP7175944B2 (en) * | 2020-08-31 | 2022-11-21 | 楽天グループ株式会社 | Communication system, transmitter, receiver, communication method, and program |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5079548A (en) * | 1989-09-20 | 1992-01-07 | Fujitsu Limited | Data packing circuit in variable length coder |
EP0503768A1 (en) * | 1991-03-08 | 1992-09-16 | International Business Machines Corporation | Method and means for accessing arrays of DASDS |
US5410308A (en) * | 1990-10-24 | 1995-04-25 | Deutsche Thomson-Brandt Gmbh | System for processing a digital signal including auxiliary data to facilitate data reconstitution at a decoder |
-
1996
- 1996-07-31 JP JP08200874A patent/JP3139737B2/en not_active Expired - Fee Related
-
1997
- 1997-07-31 GB GB9716206A patent/GB2315964B/en not_active Expired - Fee Related
- 1997-07-31 KR KR1019970036352A patent/KR100224048B1/en not_active IP Right Cessation
- 1997-07-31 CN CN97115090A patent/CN1176548A/en active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5079548A (en) * | 1989-09-20 | 1992-01-07 | Fujitsu Limited | Data packing circuit in variable length coder |
US5410308A (en) * | 1990-10-24 | 1995-04-25 | Deutsche Thomson-Brandt Gmbh | System for processing a digital signal including auxiliary data to facilitate data reconstitution at a decoder |
EP0503768A1 (en) * | 1991-03-08 | 1992-09-16 | International Business Machines Corporation | Method and means for accessing arrays of DASDS |
Cited By (34)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6671287B1 (en) | 1997-09-12 | 2003-12-30 | Nokia Corporation | Data transmission method in GPRS |
WO1999014963A3 (en) * | 1997-09-12 | 1999-05-06 | Nokia Telecommunications Oy | Data transmission method in gprs |
AU745814B2 (en) * | 1997-09-12 | 2002-04-11 | Nokia Technologies Oy | Data transmission method in GPRS |
WO1999014963A2 (en) * | 1997-09-12 | 1999-03-25 | Nokia Networks Oy | Data transmission method in gprs |
EP1489793A1 (en) * | 1997-09-12 | 2004-12-22 | Nokia Corporation | Network part and subscriber terminal of cellular network using GPRS |
WO1999057848A2 (en) * | 1998-05-06 | 1999-11-11 | Siemens Aktiengesellschaft | Method for transmitting useful data in telecommunication systems |
WO1999057848A3 (en) * | 1998-05-06 | 2000-01-06 | Siemens Ag | Method for transmitting useful data in telecommunication systems |
US6963751B1 (en) | 1998-05-06 | 2005-11-08 | Siemens Aktiengesellschaft | Method for transmitting service data in telecommunication systems with wireless telecommunication based on a predefined radio interface protocol between telecommunication devices, especially voice data and/or packet data in dect systems |
EP1145455A1 (en) * | 1999-01-07 | 2001-10-17 | Samsung Electronics Co., Ltd. | A data communication device and method in a cdma communication system |
EP1145455A4 (en) * | 1999-01-07 | 2007-05-30 | Samsung Electronics Co Ltd | A data communication device and method in a cdma communication system |
EP1059757A1 (en) * | 1999-06-11 | 2000-12-13 | Alcatel | Method of block coding an ATM cell using a product code |
WO2002001784A3 (en) * | 2000-06-26 | 2002-04-25 | Telfonaktiebolaget Lm Ericsson | Error correction of important fields in data packet communications in a digital mobile radio network |
WO2002001784A2 (en) * | 2000-06-26 | 2002-01-03 | Telefonaktiebolaget Lm Ericsson (Publ) | Error correction of important fields in data packet communications in a digital mobile radio network |
US8208388B2 (en) | 2001-08-16 | 2012-06-26 | Qualcomm Incorporated | Method and apparatus for time-based reception of transmissions in a wireless communication system |
WO2003017691A2 (en) * | 2001-08-16 | 2003-02-27 | Qualcomm, Incorporated | Method and apparatus for message segmentation in a wireless communication system |
WO2003017691A3 (en) * | 2001-08-16 | 2003-11-06 | Qualcomm Inc | Method and apparatus for message segmentation in a wireless communication system |
US7542482B2 (en) | 2001-08-16 | 2009-06-02 | Qualcomm Incorporated | Method and apparatus for message segmentation in a wireless communication system |
US8171300B2 (en) | 2002-04-30 | 2012-05-01 | Qualcomm Incorporated | Security method and apparatus |
US8762732B2 (en) | 2002-04-30 | 2014-06-24 | Qualcomm Incorporated | Security method and apparatus |
US7590118B2 (en) | 2003-12-23 | 2009-09-15 | Agere Systems Inc. | Frame aggregation format |
US7489688B2 (en) | 2003-12-23 | 2009-02-10 | Agere Systems Inc. | Frame aggregation |
US8396064B2 (en) | 2003-12-23 | 2013-03-12 | Agere Systems Llc | Frame aggregation |
EP1548989A3 (en) * | 2003-12-24 | 2007-01-24 | Agere Systems, Inc. | Packet sub-frame structure for selective acknowledgment |
US7586948B2 (en) | 2003-12-24 | 2009-09-08 | Agere Systems Inc. | Packet sub-frame structure for selective acknowledgment |
EP1548989A2 (en) * | 2003-12-24 | 2005-06-29 | Agere Systems, Inc. | Packet sub-frame structure for selective acknowledgment |
US7633970B2 (en) | 2004-05-07 | 2009-12-15 | Agere Systems Inc. | MAC header compression for use with frame aggregation |
WO2007132196A1 (en) * | 2006-05-12 | 2007-11-22 | The University Court Of The University Of Edinburgh | A low power media access control protocol |
GB2451979B (en) * | 2006-05-12 | 2012-02-01 | Univ Edinburgh | A low power media access control protocol |
GB2451979A (en) * | 2006-05-12 | 2009-02-18 | Univ Edinburgh | A low power media access control protocol |
US8787389B2 (en) | 2006-05-12 | 2014-07-22 | The University Court Of The University Of Edinburgh | Low power media access control protocol |
US8081588B2 (en) | 2006-12-28 | 2011-12-20 | Research In Motion Limited | Methods and apparatus for increasing data throughput by grouping data packets into maximum transmissible units |
EP2103052A4 (en) * | 2006-12-28 | 2010-03-24 | Research In Motion Ltd | Methods and apparatus for increasing data throughput by grouping data packets into maximum transmissible units |
EP2103052A1 (en) * | 2006-12-28 | 2009-09-23 | Research in Motion Limited | Methods and apparatus for increasing data throughput by grouping data packets into maximum transmissible units |
US8953611B2 (en) | 2006-12-28 | 2015-02-10 | Blackberry Limited | Methods and apparatus for increasing data throughput by grouping data packets into maximum transmissible units |
Also Published As
Publication number | Publication date |
---|---|
KR980013158A (en) | 1998-04-30 |
JPH1051509A (en) | 1998-02-20 |
GB9716206D0 (en) | 1997-10-08 |
GB2315964B (en) | 2000-11-15 |
KR100224048B1 (en) | 1999-10-15 |
JP3139737B2 (en) | 2001-03-05 |
CN1176548A (en) | 1998-03-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
GB2315964A (en) | Transmitting fixed length data blocks containing variable length sub-blocks | |
JP3775800B2 (en) | Method and apparatus for data recovery of ARQ equipment | |
EP0917777B1 (en) | Method, apparatus and packet transmission system using error correction of data packets | |
US5629948A (en) | Data transmission scheme with automatic repeat request | |
EP0707394B1 (en) | System for re-transmission in data communication | |
JP3583677B2 (en) | Method and apparatus for transmitting packet data with high reliability | |
US4803685A (en) | Method and device for the transmission of digital data by messages organized in frames | |
US5548598A (en) | In a data communications systems a method of forward error correction | |
HU219941B (en) | Method and system for transmitting and receiving data messages as well as a secondary station for the system | |
US5896394A (en) | Data structure, data communication method, apparatus and communication terminal apparatus | |
EP1408639A1 (en) | Transmission apparatus and reception apparatus | |
KR100309885B1 (en) | Method and apparatus for performing error correction processing in small capacity | |
JPH09247132A (en) | Radio packet communication equipment and transmitting device | |
GB2338382A (en) | Transmitting fixed length data blocks containing sub-blocks | |
US5191585A (en) | Computer networking method | |
RU2216868C2 (en) | System and method for automatic hybrid request to repeat using parity check combination | |
JP2861895B2 (en) | Data communication retransmission method and apparatus | |
US6948110B2 (en) | Transmission data loss detection system | |
JP3377420B2 (en) | Communication processing device | |
US6661998B1 (en) | Mobile station to base station communication and signal acknowledgement | |
JP3344930B2 (en) | Error compensation method and apparatus, and medium storing error compensation program | |
JPH06177910A (en) | Exchange method for variable length packet and its data communication equipment | |
JPH11234249A (en) | Data communication equipment | |
CN116684035A (en) | Method, system, equipment and storage medium for updating target code | |
JPH0496534A (en) | Selection retransmission system for hold |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PCNP | Patent ceased through non-payment of renewal fee |
Effective date: 20030731 |