Communication system and communication terminal

The present communication system has a communication terminal (100) and a communication terminal (200) that are respectively provided with a memory for writing and reading using error correction coding/decoding. The communication terminal (100) transmits data to the communication terminal (200) in a high speed mode or normal mode. In high speed mode, the communication terminal (100) reads coded data written in a first memory (112) and transmits the coded data to the communication terminal (200) without decoding. The receiving-side communication terminal (200) writes the received data in a second memory (212) without coding, and decodes the data when said data is read.

FIELD

Embodiments described herein relates to a communication system having a storage function.

BACKGROUND

A wireless communication system includes a system for making communication between communication terminals comprising a storing means such as NANDFLASH memory. For example, data written in a NANDFLASH memory is read when being transmitted, and is exchanged between communication terminals in data communication between cell phones or in data communication between a cell phone and a personal computer. A communication terminal receiving the data writes the data in the NANDFLASH memory.

An error can occur in writing and reading data in and from the storing means such as NANDFLASH memory. Thus, error correction coding/decoding needs to be conducted on the data when the data is written in and read from the storing means.

On the other hand, there is known a technique using an advanced error correction decoding method for better effects at a low coding rate. There is further a technique for changing an error correction coding system or decoding algorithm depending on error situation (See Patent Literature 1, for example).

However, since a complicated error correction decoding method is used for a high error correction capability in a conventional art, an error correction decode processing requires much time, which causes an increase in a processing time for reading and decoding data from a memory, that is an increase in a latency when data is read from the memory.

According to the communication system of the present invention, there is provided a communication system capable of reducing latency when data is read from a memory.

DETAILED DESCRIPTION

According to an embodiment, a communication system comprise:

a first communication terminal, in either a first communication mode or a second communication mode; and

a second communication terminal, in either the first communication mode or the second communication mode; the first communication terminal comprising: a first coding unit configured to code data to generate first coded data, a first memory to store the first coded data therein, a first decoding unit configured to decode the first coded data to generate first decoded data in the first communication mode, and a first communication unit configured to transmit the first decoded data in the first communication mode and to transmit the first coded data in the second communication mode, and
the second communication terminal comprising: a second communication unit configured to receive the first coded data or the first decoded data, a second coding unit configured to code the first decoded data to generate second coded data in the first communication mode, and a second memory to store the second coded data in the first communication mode and to store the first coded data in the second communication mode.

First Embodiment

FIG. 1is a diagram showing an outline of a communication system according to a first embodiment. The communication system has communication terminals100,200. The communication terminal100and the communication terminal200make peer-to-peer communication. The communication terminal100and the communication terminal200exchange data in either a first communication mode or a second communication mode.

The communication terminal100comprises a coding unit A106for coding data to be transmitted and generating first coded data, a first memory112for storing the first coded data, a decoding unit A107for decoding the first coded data read from the first memory112and generating first decoded data in the first communication mode, and a communication unit103for transmitting the first decoded data in the first communication mode and transmitting the first coded data read from the first memory112in the second communication mode. InFIG. 1, a device including the coding unit A106and the decoding unit A107is referred to as an error correction coding/decoding device1A. A detailed structure of the error correction coding/decoding device1A will be described below.

An error can occur in writing and reading data in and from the first memory112such as NANDFLASH memory.

The communication terminal100is a cell phone, PDA or laptop PC, for example, and has a host system104for controlling peripheral devices such as display. Data to be transmitted is passed from the host system104to the error correction coding/decoding device1A or the communication unit103. The communication unit103performs a signal processing such as modulation or up-conversion on the first decoded data or the first coded data thereby to generate a radio frequency (RF) signal, and transmits the RF signal via an antenna105.

The communication terminal100may include a communication device for making communication with a cell phone base station, for example, in addition to the communication unit103. In this case, the communication device is controlled by the host system104.

The communication terminal200has a communication unit203for receiving a RF signal. The communication unit203performs a signal processing such as demodulation or down-conversion on the received RF signal thereby to generate first coded data or first decoded data. The communication terminal200has a coding unit A206for coding the first decoded data to generate second coded data in the first communication mode, a second memory212for storing the second coded data in the first communication mode and storing the first coded data in the second communication mode, and a decoding unit A207for decoding the first coded data and the second coded data. InFIG. 1, the coding unit A206and the decoding unit A207are collectively referred to as an error correction coding/decoding device2A. A detailed structure of the error correction coding/decoding device2A will be described below.

The communication terminal200is a cell phone, PDA or laptop PC, for example, and has a host system204for controlling peripheral devices such as display. The communication unit203performs the signal processing such as down-conversion or demodulation on the RF signal received from the communication terminal100via an antenna205thereby to generate the first coded data or the first decoded data. The communication unit203passes the first decoded data to the error correction coding/decoding device2A. The communication unit203passes the first coded data to the second memory212. An error can occur in writing and reading data in and from the second memory212such as NANDFLASH memory.

The communication terminal200may include a communication device for making communication with a cell phone base station, for example, in addition to the communication unit203. In this case, the communication device is controlled by the host system204.

FIG. 2is a block diagram showing the detailed structures of the communication terminals100,200according to the first embodiment.

The structure of the communication terminal100will be described first.

The communication unit103is connected to the host system104and a memory system101via an internal bus102. The memory system101has the first memory112and the error correction coding/decoding device1A. The error correction coding/decoding device1A has the coding unit A106, the decoding unit A107and switches108to111.

The first memory112has a write port115and a read port116. The write port115is connected to the internal bus102via the switches108and109, or is connected to the coding unit A106via the switch109. The read port116is connected to the internal bus102via the switches110and111, or is connected to the decoding unit A107via the switch111.

The structure of the communication terminal200will be described below.

The communication unit203is connected to the host system204and a memory system201via an internal bus202. The memory system201has the second memory212and the error correction coding/decoding device2A. The error correction coding/decoding device2A has the coding unit A206, the decoding unit A207, and switches208to211.

The second memory212has a write port215and a read port216. The write port215is connected to the internal bus202via the switches208and209, or is connected to the coding unit A206via the switch209. The read port216is connected to the internal bus202via the switches210and211, or is connected to the decoding unit A207via the switch211.

The communication unit103controls the switches108to111such that the first memory112is connected to the coding unit A106and the decoding unit A107, when the communication terminals100,200make communication in the first communication mode. The communication unit203also controls the switches208to211such that the second memory212is connected to the coding unit A206and the decoding unit A207. The first communication mode will be referred to as normal mode below. On the other hand, the communication unit103controls the switches110and111such that the first memory112is connected to the communication unit103via the internal bus102, when the communication terminals100,200make communication in the second communication mode. The communication unit203controls the switches208,209such that the second memory212is connected to the communication unit203via the internal bus202. The second communication mode will be referred to as high speed mode below.

A basic operation of the communication system will be described below. An explanation will be made assuming that the communication terminal100transmits data to the communication terminal200.

The communication terminal100and the communication terminal200perform a connection establishment processing for establishing connection prior to exchanging data. In the present embodiment, the communication terminals100,200confirm which of the normal mode and the high speed mode the communication terminals100,200correspond to, in addition to the normal connection establishment processing.

FIG. 3is a sequence chart showing the connection establishment processing performed by the communication terminal100and the communication terminal200according to the first embodiment. An explanation will be made assuming that data is transmitted from the communication terminal100to the communication terminal200.

It is assumed that a data transmission start request is made in the communication terminal100when the host system104generates data destined for the communication terminal200, such as in response to a data transmission instruction from an application operating on the host system104(S10). The data transmission start request is made also when the communication terminal100detects an approach of the communication terminal200as a communication party by a sensor or the like.

The host system104notifies that data destined for the communication terminal200is generated to the communication unit103, and writes the data in the first memory112via the coding unit106. When receiving the notification from the host system104, the communication unit transmits a communication start request to the communication terminal200(S11).

The communication terminal200receives the communication start request. When being ready to communicate with the communication terminal100, the communication terminal200transmits a communication start response (S12).

When receiving the communication start response, the communication terminal100transmits a communication mode confirmation signal for asking whether the communication terminal200is adapted to reception in the high speed mode (S13).

Two conditions are present for making data communication in the high speed mode. The first condition is that the communication terminal100and the communication terminal200can perform error correction coding/decoding by use of the same coding system. Specifically, it means that the coding unit A106and the decoding unit A107, and the coding unit A206and the decoding unit A207can perform coding or decoding using the same error correction coding system.

The second condition is that when writing and reading data in and from the first memory112, both the communication terminal100and the communication terminal200can switch between a mode of performing error correction coding/decoding and a mode of not performing error correction coding/decoding. Specifically, it is required that the communication terminal100can switch between coding and not-coding by the coding unit A106, and between decoding and not-decoding by the decoding unit A107, and the communication terminal200can switch between coding and not-coding by the coding unit A206, and between decoding and not-decoding by the decoding unit A207.

For example, the communication terminal100transmits, to the communication terminal200, first information indicating a coding system usable by the communication terminal100and second information indicating whether the mode of performing error correction coding/decoding and the mode of not performing the same can be switched, as the communication mode confirmation signal. It is assumed that the first information and the second information are managed by the communication unit103. It is assumed that the communication unit203in the communication terminal200manages similar information. When receiving the communication mode confirmation signal, the communication terminal200uses the first information and the second information contained in the communication mode confirmation signal to confirm whether the coding system of the communication terminal200matches with the coding system of the communication terminal100, and whether both the communication terminal100and the communication terminal200can switch the mode (normal mode) of performing error correction coding/decoding and the mode (high speed mode) of not performing the same. When the coding system of the communication terminal200matches with the coding system of the communication terminal100and can switch between the normal mode and the high speed mode, the communication terminal200notifies that communication is possible in the high speed mode to the communication terminal100.

Information contained in the communication mode confirmation signal and a communication mode confirmation response signal is not limited to the example. For example, the communication mode confirmation response signal may contain information on the coding system usable by the communication terminal200and information indicating whether the mode of performing error correction coding/decoding and the mode of not performing the same can be switched. In this case, the communication terminal100compares the information contained in the communication mode confirmation response signal with the information on the coding system usable by the communication terminal100and information on whether the mode of performing error correction coding/decoding and the mode of not performing the same can be switched, and determines whether communication is possible in the high speed mode.

Further, it is possible that the error correction coding system used in the high speed mode and how to address the mode switching is previously defined as part of the communication system, and that whether to address the high speed mode is indicated by a signal of 1 bit to several bits and may be contained in the communication start request and response as the communication mode confirmation signal. Whether to address the high speed mode may be contained as part of capability list converted on the communication start.

When receiving the communication mode confirmation signal, the communication terminal200confirms whether the memory system201corresponds to the switching between the normal mode and the high speed mode. When the memory system201can correspond to the switching between the normal mode and the high speed mode, a determination is made as to whether the system of the error correction processing (error correction system) performed by the coding unit A206and the decoding unit A207is the same as the system contained in the communication mode confirmation signal. When the systems are the same, the communication terminal200transmits the communication mode confirmation response signal containing the fact that communication is possible in the high speed mode to the communication terminal100. On the other hand, when the memory system201cannot correspond to the switching between the normal mode and the high speed mode, or the error correction system is different from that contained in the communication mode confirmation signal, the communication terminal100transmits the communication mode confirmation response signal containing the fact that communication is not possible in the high speed mode or the fact that the normal mode is desired to the communication terminal100(S14). The communication terminal100transmitting the communication mode confirmation response signal determines the communication mode to either the high speed mode or the normal mode based on the information contained in the communication mode confirmation response signal.

The communication terminal100determines the communication mode depending on the communication mode confirmation response signal. When the communication terminal200can make communication in the high speed mode, the communication terminal100determines to transmit data in the high speed mode. On the other hand, when the communication terminal200cannot make communication in the high speed mode or desires the normal mode, the communication terminal100determines to transmit data in the normal mode (S15).

When the communication mode is determined, data is transmitted in the determined communication mode from the communication terminal100to the communication terminal200(S17). When the communication mode is determined, the communication units103,203in the communication terminal100and the communication terminal200notify a control signal of notifying whether the communication mode is the high speed mode or the normal mode to the memory systems101,201, respectively. In response to the control signal, the communication terminals100and200switch the switches108to111and the switches208to211to operate in the normal mode or the high speed mode.

A data communication method in each mode will be described below.FIG. 4is a flowchart showing the operations of the communication terminals100and200in each mode.

According to the sequence ofFIG. 3, the following operations are performed depending on the data transmitting-side device or the data receiving-side device, when a communication start processing is performed between the communication terminal100and the communication terminal200(S101), the communication mode is confirmed (S102), and when the communication mode is determined (S103).

An explanation will be made first assuming that the communication terminals100,200make communication in the normal mode (NO in S103).

Since the communication terminal100is the transmitting-side device (YES in S104), the host system104in the communication terminal100passes data to be transmitted to the coding unit A106. When receiving the data from the host system104, the coding unit A106performs error correction coding on the data and thereby generates first coded data. The coding unit A106writes the first coded data in the first memory112(S105).

When communication with the communication terminal200is established, the communication unit103instructs the decoding unit A107to read the data from the first memory112. The decoding unit A107reads the first coded data from the first memory112. The decoding unit A107performs the error correction decode processing on the first coded data and thereby generates first decoded data. The first decoded data has the same information as the data output by the host system104. The communication unit103performs a signal processing such as modulation or up-conversion on the first decoded data to generate a RF signal. The communication unit103transmits the RF signal to the communication terminal200via the antenna (S106).

The communication terminal200is the receiving-side device (NO in S105). When receiving the RF signal via the antenna205, the communication unit203in the communication terminal200performs a signal processing such as demodulation or down-conversion on the RF signal to generate first decoded data. The communication unit203outputs the first decoded data to the coding unit A206. The coding unit A206performs an error correction code processing on the first decoded data to generate second coded data. The coding unit A206writes the second coded data in the second memory212(S107).

The decoding unit A207reads the second coded data from the second memory212in response to an instruction of the host system204, for example. The decoding unit A207performs the error correction decode processing on the read second coded data to generate data, and outputs the data to the host system204(S108).

An explanation will be made assuming that the communication terminals100,200make communication in the high speed mode (YES in S103).

Since the communication terminal100is the transmitting-side device (YES in S109), the host system104in the communication terminal100outputs data to be transmitted to the communication terminal200to the coding unit A106. When receiving the data from the host system104, the coding unit A106performs error correction coding on the data to generate first coded data. The coding unit A106writes the first coded data in the first memory112(S110).

When communication with the communication terminal200is established, the communication unit103reads the first coded data from the first memory112. The communication unit103performs a signal processing such as modulation or up-conversion on the first coded data to generate a RF signal. The communication unit103transmits the RF signal to the communication terminal200via the antenna105(S111).

The communication terminal200is the receiving-side device (NO in S109). When receiving the RF signal via the antenna205, the communication unit203in the communication terminal200performs a signal processing such as demodulation or down-conversion on the RF signal to generate first coded data. The communication unit203writes the first coded data in the second memory212(S112). The decoding unit A207performs an error correction decode processing on the first coded data in response to an instruction of the host system204, for example, to generate data, and outputs the data to the host system204(S113).

When the data transmission is completed, the communication terminal100transmits a communication end notification to the communication terminal200.

In the above operation flow, when performing the transmitting-side processing, the communication terminal100writes the data from the host system104in the first memory112(S106, S110) after the communication start processing (S101) and the communication mode confirmation and communication mode determination processing (S102, S103). However, the data from the host system104may be written in the first memory112before the communication start processing (S101) and the communication mode confirmation and communication mode determination processing (S102, S103). Thereby, the data transmission speed can be further enhanced from the communication start.

In the above example, the communication start request and the communication mode confirmation signal are assumed as individual messages, but the communication mode confirmation signal may be contained in the communication start request. Similarly, the communication mode confirmation response signal may be contained in the communication start response.

In the communication system according to the present embodiment, the data communication between the communication terminals100and200is made in the high speed mode in which the error correction decode processing is not performed on the transmitting side when data is read from the first memory112and the error correction code processing is not performed on the receiving side when data is written in the first memory112, thereby enhancing the data reading speed of the transmitting-side communication terminal and enhancing the data writing speed on the receiving side. Thereby, the speed of the data communication between the communication terminals100and200can be enhanced. Further, in the high speed mode, the error correction decode processing on the transmitting side is omitted and the error correction code processing is omitted on the receiving side when data is written, thereby reducing power consumption necessary for the error correction code/decode processing.

The error correction coding and the error correction decoding in the communication unit103and the communication unit203have not been described in the present embodiment. However, the communication unit103in the transmitting-side communication terminal100may perform error correction coding on data thereby to transmit the data. At this time, the communication unit203in the receiving-side communication terminal200performs error correction decoding on the received data. With the coding and decoding, an error occurring in the communication path between the communication terminal100and the communication terminal200can be addressed in a robust manner.

The present embodiment has been described assuming that the communication terminal100is on the transmitting side and the communication terminal200is on the receiving side. However, the communication terminal100is operable on the receiving side and the communication terminal200is operable on the transmitting side. In other words, the communication terminal100has the functions of the communication terminal200and the communication terminal200has the functions of the communication terminal100.

The condition under which the communication terminals100,200make communication in the high speed mode is that the coding units A106, A206and the decoding units A107, A207have the same error correction coding/decoding system, but the coding unit A106in the communication terminal100and the decoding unit A207in the communication terminal200have only to use the same error correction coding/decoding system. That is, the first coded data transmitted by the communication terminal100in the high speed mode has only to be correctly decoded in the communication terminal200. The communication terminals100,200may prepare the coding units and the decoding units used for transmission in the normal mode and the coding units and the decoding units used for transmission in the high speed mode, respectively.

There has been described that communication in the high speed mode is made when both the communication terminals100and200can switch between coding and not-coding and between decoding and not-decoding, but communication in the high speed mode may be made when the communication terminal100can switch between decoding and not-decoding and the communication terminal200can switch between coding and not-coding.

In this case, the communication terminal100transmits, as the communication mode confirmation signal, the first information indicating the coding system usable by the coding unit106A in the communication terminal100and the second information indicating that the decoding unit A107can switch between decoding and not-decoding to the communication terminal200. When receiving the communication mode confirmation signal, the communication terminal200uses the first information and the second information contained in the communication mode confirmation signal, and determines that communication is possible in the high speed mode when the coding system of the coding unit106A in the communication terminal100matches with the coding system of the decoding unit A207in the communication terminal200, the decoding unit A107in the communication terminal100can switch between decoding and not-decoding, and the coding unit A206in the communication terminal200can switch between coding and not-coding. The communication terminal200transmits a signal indicating whether communication is possible in the high speed mode as a response to the communication mode confirmation signal.

Second Embodiment

A communication system according to a second embodiment will be described below. The communication system has the communication terminal100and a communication terminal2000.

FIG. 5is a block diagram showing a structure of the communication terminal2000according to the second embodiment.FIG. 6is a flowchart showing the operations of the communication terminal2000according to the second embodiment.

A memory system2001in the communication terminal2000has a write-back control unit2002in addition to the structure of the communication terminal200. Other structures of the communication terminal2000are the same as those of the communication terminal200and thus an explanation thereof will be omitted.

The write-back control unit2002is connected at one end to the switch108and is connected at the other end to the switch110. When performing a write-back processing, the write-back control unit2002controls the switches108to111to connect the first memory112and the decoding unit A107, to connect the decoding unit A107and the coding unit A106, and to connect the coding unit A106and the first memory112. For the write-back processing, the write-back control unit2002controls the first memory112, the decoding unit A107and the coding A106such that the data stored in the first memory112is decoded while being read and the decoded data is written in the first memory112while being coded.

The write-back control unit2002is provided between the switches108and110inFIG. 5, but there may be configured such that a switch is provided instead of the write-back control unit2002and the write-back control unit2002controls the switch thereby to switch connection and release between the decoding unit A107and the coding unit A106.

When receiving the first coded data in the high speed mode, the communication unit103writes the first coded data in the first memory112without the code processing. When the first coded data received in the high speed mode is stored in the first memory112, the write-back control unit2002controls the switches110,111and the decoding unit A107, such that the decoding unit A107performs the error correction decode processing on the first coded data thereby to generate second decoded data. The write-back control unit2002controls the switches108,109and the coding unit A106, such that the error correction code processing is performed on the second decoded data thereby to generate second coded data. The coding unit A106writes the second coded data in the first memory112.

The operations of the communication terminal2000will be described below. The processing between the reception of the data in the high speed mode and the write in the first memory112are the same as those inFIG. 4and thus an explanation thereof will be omitted.

The communication terminal2000writes the first coded data received by the communication unit103in the first memory112(S201).

When receiving a communication end notification from the transmitting-side communication terminal, the communication unit103notifies the communication end notification to the write-back control unit2002. When receiving the communication end notification, the write-back control unit2002reads the first coded data written in the first memory112, performs the error correction decode processing on the first coded data, and controls the decoding unit A107thereby to generate second decoded data (S202).

The write-back control unit2002performs the error correction code processing on the second decoded data to generate third coded data, and controls the coding unit A106to write back the third coded data in the first memory112(S203). The communication terminal2000returns to step S111inFIG. 4to perform the transmission processing When the data written back in the first memory112is transmitted in the high speed mode (YES in S204). The communication terminal returns to step S106inFIG. 4to perform the transmission processing when the data written back in the first memory112is transmitted in the normal mode (YES in S205). When reading the data from the first memory112for using the data, the host system104reads the data while the decoding unit A107is performing the error correction decode processing on the third coded data (S206).

As described above, in the communication terminal2000and the communication system according to the second embodiment, similar effects to those of the first embodiment can be obtained, and an error occurring in writing and reading data in and from the first memory112can be prevented from propagating when the communication terminal receiving data in the communication in the high speed mode transmits the data in the communication in the high speed mode.

Third Embodiment

A communication system according to a third embodiment will be described with reference toFIG. 7. The communication system according to the present embodiment has a communication terminal300and a communication terminal400. The communication system according to the present embodiment is different in the coding system between the normal mode and the high speed mode.

FIG. 7is a block diagram showing a structure of the communication terminal300according to the third embodiment.

A structure will be described below, which is different from that of the communication100according to the first embodiment. An explanation of the constituents will be omitted, which have the same structures and functions as those of the communication terminal100.

The communication terminal300has a coding unit A306A, a coding unit B306B, and a decoding unit A307A. The coding unit A306A performs error correction coding on data received from the host system104according to a coding system A to generate first coded data, and writes it in the first memory112. The coding unit B306B performs error correction coding on data received from the host system104according to a coding system B to generate second coded data, and writes it in the first memory112. The first memory112stores the first coded data and the second coded data therein. The decoding unit307A reads the first coded data from the first memory112, and decodes the first coded data according to the coding system A to generate first decoded data.

It is assumed that the coding system B has a higher error correction capability than the coding system A. For example, it is assumed that the coding system B has a lower coding rate than the coding system A. As a coding rate setting method, there is a method for setting the coding rates of the coding system A and the coding system B such that an error rate obtained by performing error correction decoding on data having an error rate r according to the coding system A when the read/write processing by the first memory112is performed once is as much as an error rate obtained by performing error correction decoding on data having an error rate r′ according to the coding system B when the read/write processing by the first memory112is performed twice.

As a method for enhancing the error correction capability, there is a method in which a correction capability for bit missing of the coding system B is enhanced as compared with the coding system A. Here, the bit missing is an error that 0/1 is completely reversed irrespective of a value written in the cells of the first memory112. For example, when a convolution code is used for the coding system A, a convolution code for inner code and a Reed-Solomon code for outer code are used in the coding system B, thereby enhancing the bit missing correction capability.

Switches308and309select the connection between the write port115and the internal bus102via the coding unit A306A or via the coding unit B306B. A switch310and a switch311select the connection between the read port116and the internal bus102via the decoding unit A307A or the direct connection between the read port116and the internal bus102.

A structure of the communication terminal400will be described below with reference toFIG. 7. A structure difference from that of the communication terminal200according to the first embodiment will be described. An explanation of the constituents will be omitted, which have the same structures and functions as those of the communication terminal200.

The communication terminal400has a coding unit A406A, a decoding unit A407A and a decoding unit B407B. The coding unit A406A performs error correction coding on the first decoded data received from the communication unit203according to the coding system A thereby to generate third coded data. The coding unit A406A writes the third coded data in the second memory212.

The decoding unit407A reads the third coded data from the second memory212, and performs error correction decoding on the third coded data according to the coding system A thereby to generate third decoded data. The decoding unit407A passes the third decoded data to the host system204. The decoding unit407B reads the second coded data from the second memory212, and performs error correction decoding on the second coded data according to the coding system B thereby to generate second decoded data. The decoding unit407B passes the second decoded data to the host system204.

Switches408and409select the connection between the write port215and the internal bus202via the coding unit A406A or the direct connection between the write port215and the internal bus202. A switch410and a switch411select the connection between the read port216and the internal bus202via the decoding unit A407A or via the decoding unit B407B.

The operations of the communication system according to the present embodiment will be described below.FIG. 8is a flowchart showing the operations of the communication system. The same operations as those ofFIG. 4are denoted with the same reference numerals, and an explanation thereof will be omitted.

An explanation will be made first assuming that the communication terminals300and400communicate in the normal mode.

Since the communication terminal300is the transmitting-side device, the host system104in the communication terminal300passes data to be transmitted to the coding unit A306A. The coding unit A306A performs error correction coding on data generated by the host system104according to the coding system A thereby to generate first coded data. The coding unit A306A writes the first coded data in the first memory112(S301). At this time, the switches308and309are connected to the coding unit A306A side. The communication unit103instructs the decoding unit A307A to read the data from the first memory112. The decoding unit A307A reads the first coded data from the first memory112, performs the error correction decode processing on the first coded data according to the coding system A to generate first decoded data, and transfers the first decoded data to the communication unit103(S302). At this time, the switches310and311are connected to the decoding unit307A side. The communication unit104performs a signal processing on the first coded data to generate a RF signal, and transmits the RF signal to the communication terminal400.

The communication terminal400is the receiving-side device. When receiving the RF signal via the antenna205, the communication unit203in the communication terminal400performs a signal processing on the RF signal to generate first decoded data. The coding unit A406A performs the error correction code processing on the first decoded data according to the coding system A to generate third coded data. The coding unit A406A writes the third coded data in the second memory212(S303). At this time, the switches408and409are connected to the coding unit406A side. The decoding unit A407A reads the third coded data from the second memory212in response to an instruction from the host system204. The decoding unit A407A performs error correction decoding on the read third coded data according to the coding system A to generate data, and outputs the data to the host system204(S304). At this time, the switches410and411are connected to the decoding unit A407A side.

An explanation will be made below assuming that the communication terminals300communicate with400in the high speed mode.

Since the communication terminal300is the transmitting-side device, the host system104in the communication terminal300passes data to be transmitted to the coding unit306B. The coding unit306B performs error correction coding on the data generated by the host system104according to the coding system B to generate second coded data. The coding unit306B writes the second coded data in the first memory112(S305). At this time, the switches308and309are connected to the coding unit306B side. The communication unit103reads the second coded data from the first memory112without decoding it (S306). The communication unit103performs a signal processing on the second coded data to generate a RF signal, and transmits the RF signal to the communication terminal400. At this time, the switches310and311directly connect the read port116and the internal bus102.

The communication terminal400is the receiving-side device. When receiving the RF signal via the antenna205, the communication unit203in the communication terminal400performs a signal processing on the RF signal to generate second coded data. The communication unit202writes the received second coded data in the second memory212(S307). At this time, the switches408and409directly connect the write port215and the internal bus202. The decoding unit407B reads the second coded data from the second memory212in response to an instruction from the host system204. The decoding unit407B performs error correction decoding on the read second coded data according to the coding system B to generate data, and outputs the data to the host system204(S308). At this time, the switches410and411are connected to the decoding unit B407B side.

In the above operation flow, when the communication terminal300performs the transmitting-side processing, the data from the host system104is written in the first memory112(S301, S307) after the communication start processing (S101) and the communication mode confirmation and communication mode determination processing (S102, S103). However, the data from the host system104may be written in the first memory112before the communication start processing (S101) and the communication mode confirmation and communication mode determination processing (S102, S103). Thereby, the speed of the data transmission can be enhanced from the communication start.

At this time, until the communication mode is determined, a coding system for writing the data from the host system104in the first memory112cannot be determined as the coding system A or the coding system B. Thus, for example, this case is addressed by performing the code processing to write the data in the first memory112in both the coding system A and the coding system B, and then reading the data coded by either the coding system A or B depending on the results of the communication mode confirmation and communication mode determination processing (S102, S103).

In the communication system using the communication terminal300according to the third embodiment, similar effects to those according to the first embodiment can be obtained, and the coding system having a high error correction capability is used to perform coding and decoding in the high speed mode, thereby reducing a data error rate. Thus, according to the communication terminal300, the data transmission speed can be enhanced due to the reduced data error rate and the reduced latency on reading. Further, a decrease in power consumption can be achieved.

The present embodiment has been described assuming that the communication terminal300is on the transmitting side and the communication terminal400is on the receiving side, but one communication terminal may be configured to both transmit and receive data. An exemplary communication terminal500capable of both transmitting and receiving data is shown inFIG. 9.

The communication terminal500is a cell phone, PDA, or laptop PC, for example. The communication terminal500has a host system504for controlling peripheral devices such as liquid crystal display. The host system504generates transmission data to be transmitted by the communication terminal500. The communication terminal500has a coding unit A506A for coding the transmission data generated by the host system504or reception data received from a communication party according to the coding system A and thereby generating first coded data, and the coding unit B306B for coding the transmission data according to the coding system B thereby to generate second coded data. The first and second coded data generated by the coding units A506A, B306B are written in the first memory112.

The communication terminal500has a decoding unit507A for decoding the first coded data stored in the first memory112according to the coding system A thereby to generate first decoded data, and the decoding unit B407B for decoding the second coded data according to the coding system B thereby to generate second decoded data. The decoding unit A507A passes the first decoded data to the host system504or a communication unit503described later. The decoding unit B507B passes the second decoded data to the host system504. The host system504displays the received first decoded data or second decoded data on a liquid crystal display (not shown), for example, and uses the first decoded data or the second decoded data to control the peripheral devices.

The communication terminal500has the communication unit503for performing a signal processing on the first decoded data or the second coded data to generate a RF signal and transmitting the RF signal via an antenna505. The communication unit503performs a signal processing on the RF signal received via the antenna505to generate reception data.

The communication terminal505has switches508to511. The switches508to511select the connection between the first memory112and the internal bus102in response to an instruction of the communication unit503. Specifically, when connecting the write port115of the first memory112and the internal bus102, the switches508,509select the direct connection between the write port115, the internal bus102via the coding unit A506A or the connection via the coding unit B306B. The switches508,509are connectively referred to as first switch. When connecting the read port116of the first memory112and the internal bus102, the switches510,511select the direct connection between the read port116and the internal bus102, the connection via the decoding unit A507A or the connection via the decoding unit B407B. The switches510,511are collectively referred to as second switch.

The coding unit A506A operates as the coding unit A306A ofFIG. 7when the communication terminal505operates as the transmitting-side device, and operates as the coding unit A406A ofFIG. 7when the communication terminal505operates as the receiving-side device. The decoding unit507A operates as the decoding unit A307A ofFIG. 7when the communication terminal505operates as the transmitting-side device, and operates as the decoding unit A407A when the communication terminal505operates as the receiving-side device.

Thus, when the communication terminal500transmits transmission data in the normal mode, the switches508,509operate to connect the write port115and the internal bus102via the coding unit A506A. The switches510,511operate to connect the read port116and the internal bus102via the decoding unit A507A. When the communication terminal500transmits transmission data in the high speed mode, the switches508,509operate to connect the write port115and the internal bus102via the coding unit B306B. The switches510,511operate to directly connect the read port116and the internal bus102.

When the communication terminal500receives reception data in the normal mode, the switches508,509operate to connect the write port115and the internal bus102via the coding unit A506A. The switches510,511operate to connect the read port116and the internal bus102via the decoding unit A507A. When the communication terminal500receives reception data in the high speed mode, the switches508,509operate to directly connect the write port115and the internal bus102. The switches510,511operate to connect the read port116and the internal bus102via the decoding unit407B. Other operations are the same as those of the communication terminal300ofFIG. 7when the communication terminal500operates as the transmitting-side device and those of the communication terminal400ofFIG. 7when the communication terminal500operates as the receiving-side device.

Fourth Embodiment

A communication system according to a fourth embodiment will be described with reference toFIG. 10. The communication system according to the present embodiment has a communication terminal600and a communication terminal700.

FIG. 10is a block diagram showing a structure of the communication terminal600according to the fourth embodiment.

A structure according to the fourth embodiment will be described below, which is different from that of the communication terminal300. An explanation of the constituents will be omitted, which have the same structures and functions as those of the communication terminal300.

The communication terminal600has a decoding unit A′607A′ in addition to the structure of the communication terminal300as shown inFIG. 7. The communication terminal600neither has the coding unit306B nor the switches corresponding to the switches308and309. It has switches610,611instead of the switches310and311.

The decoding unit A′607A′ performs a second decode processing A′ on first coded data to generate second decoded data according to the coding system A. The decoding unit307A and the decoding unit A′607A′ are the same in the coding system but different in a decode processing. This is because the decoding unit A307A and the decoding unit A′607A′ may apply a different algorithm. For example, even when the decoding unit A307A and the decoding unit A′607A′ correspond to a convolution coding system, the decoding unit A307A may apply maximum likelihood decoding algorithm and the decoding unit A′607A′ may apply Viterbi decoding algorithm. In this case, even when the decoding unit A307A and the decoding unit A′607A′ employ the same coding system, a first decode processing A performed by the decoding unit A307A is different from the second decode processing A′ performed by the decoding unit A′607A′. Further, even when the same algorithm is applied, the first decode processing A performed by the decoding unit A307A is different from the second decode processing A′ performed by the decoding unit A′607A′ due to the number of repetition processing or a difference between soft decision and hard decision.

It is assumed that the second decode processing A′ has shorter processing time and more simplified configuration than the first decode processing A.

For example, when both the first decode processing A and the second decode processing A′ correspond to the convolution coding system, the first decode processing A applies the maximum likelihood decoding algorithm and the second decode processing A′ applies the Viterbi decoding algorithm. As another example, the first decode processing A assumes a soft decision value as input, and the second decode processing A′ assumes a hard decision value as input. As still another example, the first decode processing A and the second decode processing A′ need a repetition processing, and the second decode processing A′ has less number of repetition times than the first decode processing A. The decode processing necessary for the repetition processing is a decode processing for turbo coding and a decode processing for LDPC coding, for example.

The switches610,611select the connection between the read port116and the internal bus102via the decoding unit A307A or the connection via the decoding unit A′607A′ depending on a difference between the normal mode and the high speed mode.

There is provided below a block diagram showing a structure of the communication terminal700according to the fourth embodiment inFIG. 10. A structure will be described below, which is different from that of the communication terminal400according to the third embodiment. An explanation of the constituents will be omitted, which has the same structures and functions as those of the communication terminal400.

The communication terminal700has a coding unit B706B in addition to the structure of the communication terminal400shown inFIG. 7. The communication terminal700has switches708,709instead of the switches408,409.

The coding unit B706B performs error correction coding on the second decoded data received by the communication unit203via the antenna205according to the coding system B to generate second coded data.

It is assumed that the coding system B has higher in the error correction capability than the coding system A. A method for enhancing the error correction capability is preferably a method for enhancing the coding system B in the correction capability for bit missing as compared with the coding system A.

The switches708,709select the connection between the write port215and the internal bus202via the coding unit A406A or the connection via the coding unit B706B in response to an instruction of the communication unit203.

The operations of the communication system according to the present embodiment will be described below.FIG. 11is a flowchart showing the operations of the communication system according to the present embodiment. The same operations as those ofFIG. 4are denoted with the same reference numerals, and an explanation thereof will be omitted. The operations in the normal mode are the same as the operations of the communication system shown inFIG. 8, and thus an explanation thereof will be omitted.

An explanation will be made assuming that the communication terminals600,700make communication in the high speed mode.

Since the communication terminal600is the transmitting-side device, the host system104in the communication terminal600passes data to be transmitted to the coding unit A306A. The coding unit A306A performs error correction coding on the data received from the host system104according to the coding system A to generate first coded data. The coding unit A306A writes the first coded data in the first memory112(S402). The decoding unit A′607′ reads the first coded data from the first memory112in response to an instruction from the communication unit103, and performs error correction decoding on the first coded data according to the coding system A to generate second decoded data (S403). The communication unit103performs a signal processing on the second decoded data to generate a RF signal, and transmits the RF signal to the communication terminal700. The switches601,611connect the read port116to the internal bus102via the decoding unit A′607A′ at this time.

The communication terminal700is the receiving-side device. When receiving the RF signal via the antenna205, the communication unit203in the communication terminal700performs a signal processing on the RF signal to generate second decoded data.

The coding unit B706B performs error correction coding on the second decoded data according to the coding system B to generate second coded data. The coding unit B706B writes the second coded data in the second memory212(S404). At this time, the switches708,709connect the write port215and the internal bus202via the coding unit B706B.

The decoding unit B407B reads the second coded data from the second memory212in response to an instruction from the host system204. The decoding unit B407B performs error correction decoding on the read second coded data according to the coding system B to generate data, and outputs the data to the host system204(S405). At this time, the switches410and411are connected to the decoding unit B407B.

In the above operation flow, when the communication terminal400performs the transmitting-side processing, the data from the host system104is written in the first memory112(S301, S402) after the communication start processing (S101) and the communication mode confirmation and communication mode determination processing (S401, S103). However, the data from the host system104may be written in the first memory112before the communication start processing (S101) and the communication mode confirmation and communication mode determination processing (S401, S103). Thus, the speed of the data transmission can be enhanced from the communications start.

In the communication system according to the fourth embodiment, the error correction coding is performed in writing data in the high speed mode, thereby reducing the data error rate, and the decode processing performed in reading data is made shorter in the processing time in transmitting data, thereby enhancing the data transmission speed. Further, the coding system having a high error correction capability is used to perform coding and decoding in receiving data, thereby reducing the data error rate. Thus, when the communication terminal600makes communication, the data error rate can be reduced and the data transmission speed can be enhanced. The transmitting-side communication terminal simplifies the decode processing performed in reading data to be short in the processing time in the high speed mode, thereby achieving a decrease in power consumption.

The present embodiment has been described assuming that the communication terminal600is on the transmitting side and the communication terminal700is on the receiving side, but a single common communication terminal may be configured to both transmit and receive data. An exemplary communication device800capable of both transmitting and receiving data is shown inFIG. 12. The same constituents as those of the communication terminal500are denoted with the same reference numerals, and an explanation thereof will be omitted.

The communication terminal800has switches808to811. The switches808to811select the connection between the first memory112and the internal bus102in response to an instruction of the communication unit503. Specifically, in order to connect the write port115of the first memory112and the internal bus102, the switches808,809select the connection between the write port115and the internal bus102via the coding unit A506A or the connection via the coding unit B706B. The switches808,809are connectively referred to as first switch.

When connecting the read port116of the first memory112and the internal bus102, the switches810,811select the connection between the read port116and the internal bus102via the decoding unit A507A, the connection via the decoding unit A′607A′, or the connection via the decoding unit B407B. The switches810,811are collectively referred to as second switch.

When the communication terminal800transmits transmission data in the normal mode, the switches808,809operate to connect the write port115and the internal bus102via the coding unit A506A. The switches810,811operate to connect the read port116and the internal bus102via the decoding unit A507A. When the communication terminal800transmits transmission data in the high speed mode, the switches808,809operate to connect the write port115and the internal bus102via the coding unit A506A. The switch810and811connect the read port116with the internal bus102via the decoding unit A′607A′.

When the communication terminal800receives reception data in the normal mode, the switches808,809operate to connect the write port115and the internal bus102via the coding unit A506A. The switches810,811operate to connect the read port116and the internal bus102via the decoding unit A507A.

When the communication terminal800receives reception data in the high speed mode, the switches808,809operate to connect the write port115and the internal bus102via the coding unit B706B. The switches510,511operate to connect the read port116and the internal bus102via the decoding unit B407B. Other operations are the same as those of the communication terminal600ofFIG. 10when the communication terminal800operates as the transmitting-side device and those of the communication terminal700ofFIG. 10when the communication terminal800operates as the receiving-side device.

There has been described in the first to fourth embodiments the example in which the transmitting-side communication terminal and the receiving-side communication terminal use the same coding system to perform coding and decoding in the normal mode. However, the transmitting-side communication terminal and the receiving-side communication terminal may use different coding systems to perform coding and decoding in the normal mode, respectively.

There has been described in the first to fourth embodiments the example in which the communication terminal has a host system, but a host system may not be provided. In this case, a communication terminal not including a host system may operate by being connected to a cell phone or the like comprising a host system.

The present invention is not limited to the above embodiments, and the constituents thereof may be modified without departing from the spirit of the present invention. A plurality of constituents disclosed in the above embodiments may be appropriately combined to form various inventions. For example, some constituents may be deleted from all the constituents indicated in the embodiments. Further, constituents in different embodiments may be appropriately combined.