Communication method of terminals and access point for uplink MU-MIMO channel access

Provided is a communication method of an access point and a plurality of terminals that are capable of enhancing a throughput of an overall network in a random access environment by enabling the access point to wait for additional terminals to transmit data through uplink communication during a predetermined waiting window.

CROSS-REFERENCE TO RELATED APPLICATION(S)

This application claims the benefit under 35 U.S.C. §119(a) of Korean Patent Application No. 10-2011-0018807, filed on Mar. 3, 2011, in the Korean Intellectual Property Office, the entire disclosure of which is incorporated herein by reference for all purposes.

BACKGROUND

The following description relates to a communication technology of an access point and terminals for an uplink multi-user multiple-input multiple-output (MU-MIMO) channel access.

2. Description of Related Art

As the number of users and the various applications such as voice, video streaming, and the like continue to increase in a short range communication network, throughput in the network must be improved. To enhance throughput, a scheme of increasing a usage bandwidth of a channel may be used. However, a limited frequency resource may hinder the usage bandwidth of a channel.

An access point may simultaneously transmit signals to multiple terminals during down-link communication, for example, using a multi-user multiple-input multiple-output (MU-MIMO) technology. In this example, if a relatively accurate time synchronization is maintained, the access point may transmit frames to multiple terminals.

However, during up-link communication, multiple terminals located at different positions may independently transmit frames to the access point. Accordingly, it may be difficult for the access point to receive each of the respective frames transmitted by multiple terminals with relatively accurate time synchronization.

Accordingly, there is a desire for a communication method that is capable of enhancing throughput while multiple terminals transmit uplink data with relatively accurate time synchronization in a random access communication environment in which multiple terminals independently access a channel, such as a wireless local area network (LAN) system.

SUMMARY

In one general aspect, there is provided a communication method of an access point, the method including receiving a first request frame from a first terminal requesting an uplink communication, transmitting a first response frame to the first terminal indicating whether the first request frame is received, waiting for at least one second request frame to be received from at least one second terminal during a predetermined waiting window, the second request frame indicating a request for uplink communication from the at least one second terminal, and permitting uplink communication of the at least one second terminal based on whether the at least one second request frame is received.

The permitting may comprise permitting simultaneous uplink communication of the first terminal and the at least one second terminal when the at least one second request frame is received during the predetermined waiting window, and permitting uplink communication of the first terminal and not permitting uplink communication of the at least one second terminal when the at least one second request frame is not received during the predetermined waiting window.

The first request frame may include information about an amount of data to be transmitted by the first terminal, information about a size of a transmission of the data to be transmitted by the first terminal, and information about a number of streams included in the data.

The first response frame may include information about the predetermined waiting window.

The method may further comprise transmitting a second response frame including information about assigning a resource to at least one of the first terminal and the at least one second terminal, and receiving data from at least one of the first terminal and the at least one second terminal based on the assigned resource.

The second response frame may include information for synchronizing a transmission time of the first terminal and the at least one second terminal through the uplink, information about an amount of data that is to be transmitted through the uplink, information about a size of a transmission that is to be transmitted through the uplink, or information about a power back-off of at least one of the first terminal and the at least one second terminal.

The method may further comprise determining whether the request for uplink communication received from the first terminal and the at least one second terminal exceeds a maximum number of users or streams supportable by uplink communication, and transmitting the second response frame to the first terminal and the at least one second terminal before the predetermined waiting window terminates, based on a determination result.

The method may further comprise adjusting a length of the predetermined waiting window.

In another aspect, there is provided a communication method of a terminal, the method including transmitting a first request frame, requesting uplink communication, to an access point, receiving a first response frame indicating whether the first request frame is received, from the access point, waiting a predetermined waiting window based on information included in the first response frame, receiving a second response frame from the access point, and transmitting data to the access point based on information included in the second response frame transmitted from the access point.

The first response frame may include information about an amount of data to be transmitted by the terminal, information about a transmission size of the data to be transmitted by the terminal, and information about a number of streams included in the data.

The second response frame may include information about assigning a resource with respect to the terminal and at least one other terminal depending on whether the access point receives at least one second request frame, indicating whether uplink communication is requested from the at least other terminal during the predetermined waiting window.

The second response frame may include information for synchronizing a transmission time of data to be transmitted by the terminal and the at least one other terminal through the uplink, information about an amount of data that is to be transmitted through the uplink, information about a size of a transmission that is to be transmitted through the uplink, and/or information about a power back-off of at least one of the terminal and the at least one other terminal.

In another aspect, there is provided a communication method of a second terminal to transmit data to an access point after the access point has received a first request to uplink data from a first terminal, the method including receiving a first response frame from an access point, the first response frame being in response to first request frame received by the access point from a first terminal requesting uplink communication, transmitting a second request frame indicating whether uplink communication is requested by the second terminal during a predetermined waiting window indicated by information included in the first response frame, receiving, from the access point, a second response frame including information about assigning a resource for the second terminal in uplink communication, and transmitting data to the access point based on the second response frame.

The second response frame may include information about assigning a resource with respect to at least one of the first terminal and the second terminal.

The second response frame may include information for synchronizing a transmission time of the first terminal and the second terminal through the uplink, information about an amount of data that is to be transmitted through the uplink, information about a size of a transmission that is to be transmitted through the uplink, and/or information about a power back-off of at least one of the first terminal and the at least one second terminal.

In another aspect, there is provided a computer-readable storage medium having stored therein program instructions to cause a processor to execute a communication method of an access point, the method including receiving a first request frame from a first terminal requesting an uplink communication, transmitting a first response frame to the first terminal indicating whether the first request frame is received, waiting for at least one second request frame to be received from at least one second terminal during a predetermined waiting window, the second request frame indicating a request for uplink communication from the at least one second terminal, and permitting uplink communication of the at least one second terminal based on whether the at least one second request frame is received.

In another aspect, there is provided a terminal including a transmitter configured to transmit a request to an access point to request to uplink data to the access point, a receiver configured to receive a response from the access point, and a controller configured to synchronize an uplink time of the terminal with an uplink time of a second terminal based on information included in the response, wherein the transmitter is configured to transmit the uplink data at the synchronized uplink time.

The transmitter may be configured to transmit a first request to uplink data to the access point, the receiver may be configured to receive a first response indicating a predetermined waiting period that the terminal is to wait to uplink the uplink data and to receive a second response indicating the second terminal that is to uplink data, and the controller may be configured to synchronize the uplink time of the terminal with the uplink time of the second terminal based on information included in the second response.

The receiver may be configured to receive a first response frame from the access point indicating receipt of a first request to uplink data from the second terminal and a predetermined waiting period, the transmitter may be configured to transmit a second request frame requesting to uplink data to the access point, the receiver may be configured to receive a second response frame in response to the second request frame, and the controller may be configured to synchronize the uplink time of the terminal with the uplink time of the second terminal based on information included in the second response.

DETAILED DESCRIPTION

Hereinafter, it should be appreciated that each of a first terminal and a second terminal may correspond to a single-user multiple-input multiple-output (SU-MIMO) terminal or a multi-user multiple-input multiple-output (MU-MIMO) terminal.

A wireless local area network (LAN) may support an access point with multiple transmission and reception antennas. A wireless LAN technology is being increasingly applied to a terminal such as a mobile phone. However, the terminal may not include a large number of antennas due to a limit in the size of the terminal.

Even though the access point may have a larger number of transmission antennas, a maximum number of transmissible streams may be limited to a number of reception ends, for example, the number of antennas of a receiving terminal. As a result, the MU-MIMO communication technology may be used.

In the MU-MIMO communication technology, a transmission end that has at least one antenna, for example, the access point may transmit a signal to at least one reception end that has at least one antenna, for example, at least one terminal. Thus, the MU-MIMO communication technology may be referred to as a multi-user multiple antennas technology.

FIG. 1illustrates an example of a network of an access point and multiple terminals transmitting a signal using an MU-MIMO technology.

Referring toFIG. 1, a single access point simultaneously exchanges signals with multiple terminals such as terminal C, terminal F, and terminal H.

In a random access communication environment such as a wireless LAN system in which multiple terminals independently access a channel, it may be difficult for the multiple terminals requesting uplink communication to be synchronized with each other. A wireless resource may be requested to be assigned to each terminal when there exists a limited number of streams that may be transmitted and received by each terminal.

In downlink communication, an access point may simultaneously transmit data to multiple terminals. In this example, even though each of the multiple terminals has a smaller number of antennas, the access point having a larger number of antennas may transmit a relatively large number of data streams simultaneously to the multiple terminals. An example of a data transmission in a downlink communication is described with reference toFIG. 2.

In uplink communication, in comparison to downlink communication, multiple terminals that have a smaller number of antennas may transmit data streams simultaneously to a single access point that has a larger number of reception antennas. An example of a data transmission in an uplink communication is described with reference toFIG. 3.

FIG. 2illustrates an example in which an access point201simultaneously transmits data streams to multiple terminals in a downlink using an MU-MIMO technology.

Referring toFIG. 2, the access point201may simultaneously transmit data streams (1)210, (2)220, and (3)230to three terminals such as terminal (1)202, terminal (2)203, and terminal (3)204, respectively. Each of the terminals (1)202, terminal (2)203, and terminal (3)204may receive a stream such as data stream (1)210, data stream (2)220, and data stream (3)230, respectively, which are simultaneously transmitted from the access point201. In this example, the data stream (1)210corresponds to a data stream transmitted to the terminal (1)202, the data stream (2)220corresponds to a data stream transmitted to the terminal (2)203, and the data stream (3)230corresponds to a data stream transmitted to the terminal (3)204.

Each of the terminals may decode a received data stream, and transmit acknowledgement (Ack) frames240,250, and260to the access point201.

In uplink communication, in comparison to downlink communication, different terminals may simultaneously transmit data when the MU-MIMO technology is used. In this example, frames simultaneously transmitted from each terminal may be received by the access point201at the same time as an exact time synchronization.

However, each terminal may independently access a channel in the random access communication environment. Thus, it may be difficult to synchronize a time with respect to a frame transmitted to access point201.

A magnitude of a signal received from each of multiple terminals may be appropriately aligned to enable the access point201to properly decode signals that are simultaneously received from the multiple terminals.

FIG. 3illustrates an example in which an access point receives data from terminals in an uplink using an MU-MIMO technology. Hereinafter, data may include a concept of a data frame.

A terminal that is initially accessing a channel such as terminal (1)302, may transmit a first request frame (RTX1)310requesting the access point to transmit data through uplink communication after a random back-off. The random back-off may be based on a carrier sense multiple access/collision avoidance (CSMA/CA) scheme.

In the CSMA/CA scheme, a terminal desiring to transmit data may check a channel state and may transmit data if a current channel state corresponds to an idle state. As another example, to reduce a probability that transmission frames collide, even though the channel is in the idle state, a frame may not be transmitted immediately but may be transmitted after a predetermined period of time during which a channel remains in the idle state. This is referred to as a channel back-off. For example, a channel back-off time during a transmission of each frame may be determined to be a predetermined value between “0” and a contention window.

A random back-off for a terminal that is initially accessing a channel, for example, terminal (1)302, may indicate a channel back-off operation.

The first request frame (RTX1)310may include information about an amount of data to be transmitted by the terminal (1)302, information about a transmission size of data to be transmitted by the terminal (1)302, and/or information about a number of streams included in the data.

In the example ofFIG. 3, the amount of data indicates a total amount of data to be transmitted to an access point301by the terminal (1)302, and the transmission size of data indicates a length with respect to data to be transmitted to the access point301by the terminal (1)302.

The access point301receiving the first request frame (RTX1)310may transmit a first response frame (CTX1)320indicating whether the access point301receives the first request frame (RTX1)310, to terminal (1)302, terminal (2)303, terminal (3)304, terminal (4)305, and terminal (5)306.

After the access point301transmits the first response frame (CTX1)320, the access point301and the terminal (1)302may wait a predetermined period of time, that is, a waiting window to transmit/receive an additional transmission request with respect to uplink communication. The first response frame (CTX1)320may include information about a length of the waiting window.

Other than the terminal (1)302initially accessing the channel and transmitting the first request frame (RTX1)310, terminals such as terminal (2)303and terminal (5)306transmit a second request frame (RTX2)330and a fifth request frame (RTX5)340, respectively, requesting data transmission through uplink communication within the waiting window. In this example, the second request frame (RTX2)330and the fifth request frame (RTX5)340may be transmitted through a channel access based on the CSMA/CA scheme.

After a period of time the waiting window terminates. The access point301may transmit a second response frame (CTX2)350with respect to the received request frames (RTX1)310, (RTX2)330, and (RTX5)340.

The second response frame (CTX2)350may correspond to the second request frame (RTX2)330and the fifth request frame (RTX5)340. For example, the second response frame (CTX2)350may include information for time synchronization of data to be transmitted by a terminal to the access point301through the uplink, information about an amount of data that is to be transmitted through the uplink, and information about a transmission size that is to be transmitted through the uplink. For example, the information about an amount of data that is to be transmitted through the uplink and information about a size of a transmission to be transmitted through the uplink may be referred to as information about assigning a resource.

The information about an amount of data that is to be transmitted through the uplink may indicate a number of streams to be transmitted by the terminal to the access point through the uplink. The information about a size of a transmission that is to be transmitted through the uplink may indicate a length of a frame to be transmitted by the terminal to the access point.

The second response frame (CTX2)350may include information about a power back-off in each of terminal (1)302, terminal (2)303, terminal (3)304, terminal (4)305, and terminal (5)306. The information about a power back-off may include information about adjusting a magnitude of a transmission signal by each terminal to adjust a magnitude of a frame received from the access point by each terminal.

If the access point301sufficiently receives a request for uplink communication before the waiting window terminates, the access point301may transmit the second response frame (CTX2)350to terminal (1)302, terminal (2)303, terminal (3)304, terminal (4)305, and terminal (5)306before the waiting window terminates.

An example in which the access point301sufficiently receives a request for uplink communication may correspond to a case in which a request for uplink communication received from each terminal by the access point exceeds a maximum number of users or streams supportable by uplink communication.

The terminal (1)302, terminal (2)303, and terminal (5)306receiving the second response frame (CTX2)350may transmit data360, data370, and data380, respectively, to the access point301based on information about assigning a resource and information about a power back-off included in the second response frame (CTX2)350.

For example, to enable data transmitted by each terminal to arrive at the access point301at the same time, each of terminal (1)302, terminal (2)303, and terminal (5)306may simultaneously transmit the data360, the data370, and the data380, respectively, after a predetermined time interval, in response to termination of receiving the second response frame (CTX2)350.

After a reception of data transmitted by each terminal terminates, the access point301may transmit acknowledgement (ACK) frames391,393, and395to each of terminal (1)302, terminal (2)303and terminal (5) transmitting a data frame with respect to appropriately decoded data.

FIG. 4illustrates an example of a communication method of an access point.FIG. 4illustrates a communication method based on whether at least one second request frame is received by the access point.

In410, the access point receives a first request frame from a first terminal requesting uplink communication. For example, the first terminal may be a terminal initially accessing a channel and requesting the access point to transmit data through uplink communication.

The first request frame may include information about an amount of data to be transmitted by the first terminal to the access point through uplink communication, information about a transmission size of the data to be transmitted by the first terminal, and information about a number of streams included in the data.

For example, the amount of data may correspond to an amount of total data to be transmitted by the first terminal to the access point, and the transmission size of the data may correspond to a length of a frame with respect to data to be transmitted to the access point by the first terminal.

In420, the access point transmits a first response frame, to the first terminal, indicating whether the first request frame is received. For example, the first response frame may include information about a predetermined waiting window.

In430, the access point waits for at least one second request frame, indicating whether uplink communication is requested from at least one second terminal, to be received during a predetermined waiting window.

The access point may permit uplink communication with respect to the first terminal immediately after transmitting the first response frame in response to the first request frame received from the first terminal. However, the access point may improve throughput of a network by waiting for a reception of a request for an additional uplink transmission from at least one other terminal, that is, at least a second terminal.

The access point may improve throughput by processing a request for data transmission from the first terminal with a request for data transmission from other terminals, when data transmission is requested from other terminals other than the first terminal during the predetermined waiting window.

In440, the access point determines whether at least one second request frame is received from at least one second terminal.

In450, if the at least one second request frame is received from the at least one second terminal, the access point permits uplink communication of the first terminal and the at least one second terminal. For example, the first terminal and the second terminal may be permitted to simultaneously perform the uplink communication.

In460, if a request frame is not received from at least one second terminal during the predetermined waiting window, the access point may permit uplink communication of the first terminal.

The access point may receive or may not receive the at least one second request frame from the at least one second terminal in the waiting window. If a second terminal does not request uplink communication during a predetermined waiting window, the access point may transmit a second response frame including information about assigning a resource with respect to only the first terminal.

If the at least one second request frame is received from the at least one second terminal during the waiting window, the access point may transmit the second response frame including information about assigning a resource with respect to each of the first terminal and the at least one second terminal, to the first terminal and the at least one second terminal.

FIG. 5illustrates another example of a communication method of an access point.FIG. 5illustrates a communication method in which the access point receives at least one second request frame from at least one second terminal.

In510, the access point receives a first request frame from a first terminal requesting uplink communication. For example, the first terminal may be a terminal initially accessing a channel and requesting the access point to transmit data through uplink communication.

The first request frame may include information about an amount of data to be transmitted by the first terminal to the access point through uplink communication, information about a size of a transmission of the data to be transmitted by the first terminal, and information about a number of streams included in the data.

The amount of data may correspond to an amount of total data to be transmitted to the access point by the first terminal, and the size of the transmission of the data may correspond to a length of a frame with respect to data to be transmitted to the access point by the first terminal.

In520, the access point transmits a first response frame to the first terminal indicating whether the first request frame is received. For example, the first response frame may include information about a predetermined waiting window.

In530, the access point waits for at least one second request frame indicating an uplink communication is requested from at least one second terminal during a predetermined waiting window. In the example ofFIG. 5, the access point receives a request for uplink communication from at least one second terminal.

The access point may wait during a predetermined period of time such as a waiting window, to receive a request for an additional uplink transmission from other terminals. The access point may improve throughput by processing a request for data transmission from the first terminal along with a request for data transmission of other terminals when data transmission is requested using a corresponding channel.

The access point may adjust a length of a predetermined waiting window. A scheme of adjusting the length of a predetermined waiting window by the access point may include the following examples. For example, the access point may adjust a length of a waiting window through communication between the access point and terminals during an association of the terminals, or may adjust a length of a waiting window according to information about past history recorded during an access to terminals.

In540, the access point determines whether the request for uplink communication received from the first terminal and the at least one second terminal exceeds a maximum number of users or streams supportable by uplink communication.

In550, if the request for uplink communication exceeds a maximum number of users or streams supportable by uplink communication as a result of the determination in540, the access point transmits a second response frame to the first terminal and the at least one second terminal before a predetermined waiting window terminates. In this example, the access point may transmit the second response frame to the first terminal and the at least one second terminal based on the at least one second request frame.

In contrast, if the request for uplink communication does not exceed a maximum number of users or streams supportable by uplink communication as a result of the determination in540, the access point transmits a second response frame including information about assigning a resource with respect to the first terminal and the at least one second terminal based on the at least one second request frame, in560.

In this example, the second response frame may include information for synchronizing data transmission through the uplink, information about an amount of data that is to be transmitted through the uplink, information about a size of a transmission size that is to be transmitted through the uplink, and/or information about a power back-off of at least one of the first terminal and the at least one second terminal.

In570, in response to a reception of the at least one second request frame during a waiting window, the access point receives data simultaneously from the first terminal and the at least one second terminal.

As another example, if the at least one second request frame is not received during a predetermined waiting window, in530, the access point may receive data only from the first terminal.

FIG. 6illustrates an example of a communication method of a first terminal.

In610, the first terminal transmits a first request frame, requesting uplink communication, to an access point. For example, the first request frame may include information about an amount of data to be transmitted by the first terminal, information about a transmission size of the data to be transmitted by the first terminal, and information about a number of streams included in the data.

In620, the first terminal receives a first response frame indicating whether the first request frame is received, from the access point.

In630, the first terminal waits during a predetermined waiting window based on information included in the first response frame.

In635, the first terminal receives a second response from the access point. The second response frame may include information synchronizing a time at which data is to be transmitted through the uplink, information about an amount of data that is to be transmitted through the uplink, information about a size of a transmission size that is to be transmitted through the uplink, and/or information about a power back-off of at least one of the first terminal and the at least one second terminal.

In640, the first terminal transmits data to the access point based on the information included in a second response frame transmitted from the access point.

For example, the first terminal may adjust the size of the transmission that is to be transmitted through the uplink and the power back-off according to information included in the second response frame. The first terminal may synchronize with the at least one second terminal based on the synchronization information with respect to data to be transmitted through the uplink included in the second response frame and may transmit data the access point.

In this example, the second response frame may be transmitted from the access point in response to the at least one request frame transmitted by the at least one second terminal during the predetermined waiting window. The second response frame may be transmitted to the access point to indicate whether the at least one second terminal requests uplink communication.

FIG. 7illustrates an example of a communication method of a second terminal

In710, the second terminal receives a first response frame from an access point. In this example, the first response frame may correspond to a response with respect to a first request frame received from a first terminal requesting uplink communication.

In720, the second terminal transmits a second request frame indicating whether uplink communication is requested by the second terminal in a predetermined waiting window indicated by information included in the first response frame.

In730, the second terminal receives, from the access point, a second response frame including information about assigning a resource for the second terminal in uplink communication in response to the second request frame.

The second response frame may include information about an amount of data that is to be transmitted through the uplink, information about a size of a transmission size that is to be transmitted through the uplink, or information about a power back-off of at least one of the first terminal and the at least one second terminal.

In740, the second terminal transmits data to the access point based on the information included in the second response frame.

The second terminal may transmit data to the access point in synchronization with the first terminal according to information for time synchronization with respect to data transmitted through the uplink, included in the second response frame.

FIG. 8illustrates an example of an access point and a plurality of terminals.

Referring toFIG. 8, access point800communicates with first terminal810and second terminal820. The access point800includes a receiver801, a controller802, and a transmitter803. The first terminal810includes a receiver811, a controller812, and a transmitter813. The second terminal820includes a receiver821, a controller822, and a transmitter823. In this example, there are two terminals, however, it should be appreciated that the access point800may communicate and perform the above examples with more than two terminals.

The transmitter802of the access point800may transmit data to the receiver811of the first terminal810and to the receiver821of the second terminal820. The transmitter813of the first terminal810may transmit data to the receiver801of the access point800. The transmitter823of the second terminal820may transmit data to the receiver801of the access point800.

The access point800may receive a first request frame from the first terminal810requesting uplink communication. For example, the first terminal810may be a terminal initially accessing a channel and requesting the access point800to transmit data through uplink communication. For example, the first request frame may include information about an amount of data to be transmitted by the first terminal810to the access point800through uplink communication, information about a size of a transmission of the data to be transmitted by the first terminal810, and information about a number of streams included in the data.

The access point800may transmit a first response frame to the first terminal810indicating whether the first request frame is received. For example, the first response frame may include information about a predetermined waiting window.

The access point800may wait for at least one second request frame indicating an uplink communication is requested from the second terminal820during a predetermined waiting window.

The access point800may wait during a predetermined period of time such as a waiting window, to receive a request for an additional uplink transmission from other terminals such as second terminal820. The access point800may improve throughput by processing a request for data transmission from the first terminal810along with a request for data transmission from the second terminal820.

After receiving the second request frame, the access point800may transmit a second response frame including information about assigning a resource with respect to the first terminal810and the second terminal820.

For example, the second response frame may include information for synchronizing data transmission of the first terminal810and the second terminal820through the uplink, information about an amount of data that is to be transmitted through the uplink, information about a size of a transmission size that is to be transmitted through the uplink, and/or information about a power back-off of at least one of the first terminal810and the second terminal820. Accordingly, the access point800may receive data simultaneously from the first terminal810and the second terminal820.

It should be appreciated that the examples described with reference toFIGS. 1-7are also applicable to the access point800, the first terminal810, and the second terminal820described in the example ofFIG. 8.

Program instructions to perform a method described herein, or one or more operations thereof, may be recorded, stored, or fixed in one or more computer-readable storage media. The program instructions may be implemented by a computer. For example, the computer may cause a processor to execute the program instructions. The media may include, alone or in combination with the program instructions, data files, data structures, and the like. Examples of computer-readable storage media include magnetic media, such as hard disks, floppy disks, and magnetic tape; optical media such as CD ROM disks and DVDs; magneto-optical media, such as optical disks; and hardware devices that are specially configured to store and perform program instructions, such as read-only memory (ROM), random access memory (RAM), flash memory, and the like. Examples of program instructions include machine code, such as produced by a compiler, and files containing higher level code that may be executed by the computer using an interpreter. The program instructions, that is, software, may be distributed over network coupled computer systems so that the software is stored and executed in a distributed fashion. For example, the software and data may be stored by one or more computer readable storage mediums. Also, functional programs, codes, and code segments for accomplishing the example embodiments disclosed herein can be easily construed by programmers skilled in the art to which the embodiments pertain based on and using the flow diagrams and block diagrams of the figures and their corresponding descriptions as provided herein. Also, the described unit to perform an operation or a method may be hardware, software, or some combination of hardware and software. For example, the unit may be a software package running on a computer or the computer on which that software is running.

As a non-exhaustive illustration only, a terminal/device/unit described herein may refer to mobile devices such as a cellular phone, a personal digital assistant (PDA), a digital camera, a portable game console, and an MP3 player, a portable/personal multimedia player (PMP), a handheld e-book, a portable lab-top PC, a global positioning system (GPS) navigation, a tablet, a sensor, and devices such as a desktop PC, a high definition television (HDTV), an optical disc player, a setup box, a home appliance, and the like that are capable of wireless communication or network communication consistent with that which is disclosed herein.

A computing system or a computer may include a microprocessor that is electrically connected with a bus, a user interface, and a memory controller. It may further include a flash memory device. The flash memory device may store N-bit data via the memory controller. The N-bit data is processed or will be processed by the microprocessor and N may be 1 or an integer greater than 1. Where the computing system or computer is a mobile apparatus, a battery may be additionally provided to supply operation voltage of the computing system or computer. It will be apparent to those of ordinary skill in the art that the computing system or computer may further include an application chipset, a camera image processor (CIS), a mobile Dynamic Random Access Memory (DRAM), and the like. The memory controller and the flash memory device may constitute a solid state drive/disk (SSD) that uses a non-volatile memory to store data.