Patent Description:
The narrow band Internet of Things (NB-IOT) is designed to enhance the coverage by 20dB (unit of power gain) on the basis of global system for mobile communications (GSM). Taking 144dB as the maximum coupling path loss of the GSM, the maximum coupling loss (MCL) of the NB-IOT design is 164dB, and the downlink obtain coverage enhancement mainly by increasing the maximum retransmission times of each channel. In the 3rd generation partnership project (3GPP) standard, the maximum number of repetitions may be up to <NUM>.

The value of the maximum number of repetitions (Rmax) in search space configuration in a narrow band (NB) may be set up to <NUM>, so the calculation amount required to calculate an end position based on a starting point or calculate the number of subframes between two points (starting point and current point) is quite large. It is similar when calculating the start time and end time of a narrowband physical downlink shared channel (NPDSCH). The start time of the NPDSCH is calculated based on an end subframe of a narrowband physical downlink control channel (NPDCCH) plus a configured delay time, and the maximum delay time may be configured to be <NUM>. The maximum number of repetitions of the NPDSCH may be configured to be <NUM>, and the maximum number of subframes of the NPDSCH may be <NUM>. In this way, the calculation amount required to calculate the end subframe of the NPDSCH based on a start subframe of the NPDSCH may be quite large.

In view of the problems of large calculation amount, complex operation, etc. existing in determining the positions of the start subframe and the end subframe of the subframes (such as NPDCCH and NPDSCH) in the related art, no effective technical solutions has been proposed yet.

Another example can be found in patent document <CIT>.

The drawings described herein are used to provide an understanding of the present disclosure, which constitute a part of the present disclosure. The illustrative embodiments and descriptions of the present disclosure are used to explain the present disclosure, but do not constitute an improper limit to the present disclosure. In the accompanying drawings:.

The present disclosure will be illustrated below with reference to the accompanying drawings and in combination with embodiments. The terms "first", "second", etc. in the specification and claims of the present disclosure and the above drawings are used to distinguish similar objects, but not necessarily used to describe the specified order or sequence.

Some embodiments of the present disclosure relate to calculation of start time and end time of a NB physical downlink control channel (NPDCCH) and start time and end time of a NB physical downlink shared channel (NPDSCH) by a physical (PHY) layer in a NB-IoT coverage enhancement scenario.

Some method embodiments provided by embodiments of the present disclosure may be executed in a computer terminal or similar computing apparatus. Taking running on the computer terminal as an example, <FIG> is a block diagram illustrating a hardware structure of a computer terminal performing a subframe position determination method according to an embodiment of the present disclosure. As shown in <FIG>, a computer terminal <NUM> may include one or more (only one is shown in <FIG>) processors <NUM> (the processors <NUM> may include, but are not limited to, processing devices such as a microcontroller unit (MCU) or a field programmable gate array (FPGA)) and a memory <NUM> configured to store data. Optionally, the mobile terminal may further include a transmission device <NUM> configured to perform communication and an input/output device <NUM>. Those having ordinary skill in the art may understand that the structure shown in <FIG> is only for illustration but does not limit the structure of the terminal. For example, the mobile terminal <NUM> may further include more or fewer components than those shown in <FIG>, or have different configurations with equivalent functions or more functions than those shown in <FIG>.

The memory <NUM> may be configured to store computer programs, for example, a software program and a module for application software, such as a computer program corresponding to the subframe position determination method in the embodiment of the present disclosure. The processor <NUM> executes a variety of functional applications and performs data processing by running the computer programs stored in the memory <NUM>, that is, realizes the above-mentioned method. The memory <NUM> may include a high-speed random access memory, and may also include a non-volatile memory, such as one or more magnetic storage devices, a flash memory, or other non-volatile solid-state memory. In some examples, the memory <NUM> may further include memories remotely provided from the processor <NUM>, and these remote memories may be connected to the terminal <NUM> through a network. Examples of the aforementioned networks include, but are not limited to, the Internet, a corporate intranet, a local area network, a mobile communication network, and combinations thereof.

The transmission device <NUM> is configured to receive or transmit data via a network. The example of the foregoing network may include a wireless network provided by a communication provider of the terminal <NUM>. In an example, the transmission device <NUM> includes a network interface controller (NIC), which may be connected with other network devices through a base station so as to communicate with the Internet. In an example, the transmission device <NUM> may be a radio frequency (RF) module, and the RF module is configured to wirelessly communicate with the Internet.

Some embodiments of the present disclosure provide a subframe position determination method running on the terminal shown in <FIG>. <FIG> is a flowchart illustrating an optional subframe position determination method according to an embodiment of the present disclosure. As shown in <FIG>, the method includes the following steps:.

at step S202, determining static intervals and semi-static intervals of a search space corresponding to a current subframe according to a position of the current subframe.

at step S204, determining a number of invalid subframes in the static intervals and the semi-static intervals, and determining a number of valid subframes in the static intervals and the semi-static intervals according to the number of invalid subframes.

at step S206, determining a start subframe position and an end subframe position corresponding to the position of the current subframe according to the number of invalid subframes and the number of valid subframes.

According to the above technical scheme, the static intervals and the semi-static intervals of the search space corresponding to the current subframe is determined according to the position of the current subframe. The number of invalid subframes in the static intervals and the semi-static intervals is determined, and the number of valid subframes in the static intervals and the semi-static intervals is determined according to the number of invalid subframes. Further, the start subframe position and the end subframe position corresponding to the position of the current subframe are determined. By adopting the technical solution, the problems of large calculation amount, complex operation, etc. existing in determining the positions of the start subframe and the end subframe of the subframes (such as NPDCCH and NPDSCH) in the related art are solved. The present disclosure provides a scheme to determine the start subframe position and end subframe position of the subframe with a small amount of calculation and simple operation.

Optionally, the step S202 may be implemented in multiple ways. In an optional implementation, the maximum number of repetitions of subframe is preconfigured and obtained. A position of a temporary end subframe of the current subframe is obtained by adding the maximum number of repetitions to the position of the current subframe; the static intervals and the semi-static intervals are determined according to the position of the current subframe and the position of the temporary end subframe. Determining the static intervals and the semi-static intervals according to the position of the current subframe and the position of the temporary end subframe may be performed based on a preset cycle. The preconfigured maximum number of repetitions of subframe is obtained. The position of a temporary end subframe of the current subframe is obtained by adding the maximum number of repetitions to the position of the current subframe. The static intervals and the semi-static intervals are determined according to the position of the current subframe and the position of the temporary end subframe. Determining the static intervals and the semi-static intervals according to the position of the current subframe and the position of the temporarily end subframe may include determining the static intervals and the semi-static intervals between the position of the current subframe and the position of the temporary end subframe according to a preset cycle.

After the static intervals and semi-static intervals are determined, determining the number of invalid subframes in the static intervals and the semi-static intervals and determining the number of valid subframes in the static intervals and the semi-static intervals according to the number of invalid subframes may be achieved by the following technical solution in the embodiment of the present disclosure. A number of invalid subframes in the static intervals is determined, and a number of invalid subframes in the semi-static intervals is determined by traversing the semi-static intervals. After the number of invalid subframes in the static intervals and the number of invalid subframes in the semi-static intervals are determined, the number of valid subframes in the static intervals and the semi-static intervals is determined according to the number of invalid subframes in the static intervals and the number of invalid subframes in the semi-static intervals.

In a claimed embodiment, determining the number of invalid subframes in the static intervals and the semi-static intervals is achieved by the following technical scheme. A number of invalid subframes in first static intervals is determined according to a cycle of the static intervals and a type of the invalid subframes, and the number of invalid subframes in the first static intervals is taken as the number of invalid subframes in the static intervals. The semi-static intervals are divided into N second static intervals and M first semi-static intervals, where the M and the N are positive integers. A number of invalid subframes in the N second static intervals is determined according to a cycle of the N second static intervals and the type of the invalid subframes. A number of invalid subframes in the M first semi-static intervals is determined by traversing the semi-static intervals.

In the embodiment of the present disclosure, the sequence of steps of determining the number of invalid subframes in the first static intervals, determining the number of invalid subframes in the N second static intervals and determining the number of invalid subframes in the M first semi-static intervals is not limited.

Determining the number of valid subframes in the static intervals and the semi-static intervals according to the number of invalid subframes may be achieved by the following technical scheme. The number of valid subframes in the static intervals and the semi-static intervals is determined according to the number of invalid subframes in the first static intervals, the number of invalid subframes in the N second static intervals and the number of invalid subframes in the M first semi-static intervals.

The technical scheme of the embodiment of the present disclosure mainly relates to a time-domain scheduling calculation of the NPDCCH and NPDSCH of the physical layer PHY downlink. When calculating a NPDCCH search space, a NPDCCH start time and a hybrid automatic repeat request (HARQ) feedback time, it is determined to monitor positions of a start subframe and an end subframe of the NPDCCH or the NPDCCH are determined. In addition, it is further required to determine how many effective downlink subframes exist between the current subframe and the start subframe (the so-called effective downlink subframes are downlink subframes except a synchronization subframe, a system information block <NUM> (SIB1) subframe, a system information (SI) subframe, a GAP subframe and an invalid subframe indicated by a mask bitmap).

Through the description of the above embodiments, those having ordinary skill in the art may understand that the method according to the above embodiments may be implemented by means of software plus a general hardware platform, and certainly, it may also be realized by hardware. Based on such understanding, the technical solution of the present disclosure may be embodied in the form of a software product. The computer software product is stored in a storage medium (such as a read-only memory (ROM)/ a random access memory (RAM), a magnetic disk, an optical disk) and includes a plurality of instructions to make a terminal device (which may be a mobile phone, a personal computer, a server, or a network device, etc.) to execute the method described in multiple embodiments of the present disclosure.

Some embodiments of the present disclosure further provide a subframe position determination apparatus, which is used to implement the above embodiments and optional implementations, and the description thereof may not be repeated if it has been described. As used below, the term "module" may be a combination of software and hardware that realizes a predetermined function. Although the apparatus described in the following embodiments may be implemented in software, the implementation by hardware or a combination of software and hardware is also possible and contemplated.

<FIG> is a structural block diagram illustrating an optional subframe position determination apparatus according to an embodiment of the present disclosure. As shown in <FIG>, the apparatus includes a first determining module 30configured to determine static intervals and semi-static intervals of a search space corresponding to a current subframe according to a position of the current subframe; a second determining module 32configured to determine a number of invalid subframes in the static intervals and the semi-static intervals, and determine a number of valid subframes in the static intervals and the semi-static intervals according to the number of invalid subframes; and a third determining module <NUM> configured to determine a start subframe position and an end subframe position corresponding to the position of the current subframe according to the number of invalid subframes and the number of valid subframes.

In the embodiment of the present disclosure, the first determining module <NUM> is configured to obtain a preconfigured maximum number of repetitions of subframe; obtain a position of a temporary end subframe of the current subframe by adding the maximum number of repetitions to the position of the current subframe; and determine the static intervals and the semi-static intervals according to the position of the current subframe and the position of the temporary end subframe.

In the embodiment of the present disclosure, the first determining module <NUM> is configured to determine the static intervals and the semi-static intervals according to the position of the current subframe and the position of the temporary end subframe in the following way. The static intervals and the semi-static intervals are determined between the position of the current subframe and the position of the end subframe according to a preset cycle.

In the embodiment of the present disclosure, the second determining module <NUM> is configured to determine a number of invalid subframes in the static intervals and determine a number of invalid subframes in the semi-static intervals by traversing the semi-static intervals; and determine the number of valid subframes in the static intervals and the semi-static intervals according to the number of invalid subframes in the static intervals and the number of invalid subframes in the semi-static intervals.

In the claimed embodiment of the present disclosure, the second determining module <NUM> is configured to determine the number of invalid subframes in the static intervals and the semi-static intervals in the following way. A number of invalid subframes in first static intervals is determined according to a cycle of the static intervals and a type of the invalid subframes, and the number of invalid subframes in the first static intervals is taken as the number of invalid subframes in the static intervals. The semi-static intervals are divided into N second static intervals and M first semi-static intervals, where the M and the N are positive integers. A number of invalid subframes in the N second static intervals is determined according to a cycle of the N second static intervals and the type of the invalid subframes. A number of invalid subframes in the M first semi-static intervals is determined by traversing the first semi-static intervals.

In the embodiment of the present disclosure, the second determining module <NUM> is configured to determine the number of valid subframes in the static intervals and semi-static intervals according to the number of invalid subframes in the following way. The number of valid subframes in the static intervals and the semi-static intervals is determined according to the number of invalid subframes in the first static intervals, the number of invalid subframes in the N second static intervals and the number of invalid subframes in the M first semi-static intervals.

In the embodiment of the present disclosure of the present disclosure, since NB has a repetitive function, for the computer terminal, if NPDCCH data or NPDSCH data may be obtained in advance, there is no need to continue to receive downlink data so as to save the power. Therefore, it is required to calculate the end time in advance. A conventional way for determining the valid subframes is performed subframe by subframe, so that the more subframes, the longer it takes. However, timing in the downlink processing is quite limit, and many complex processes need to be completed within <NUM>, especially in a dual HARQ scheduling scenario. If the subframe-by-subframe determination method is adopted, the timing does not meet the requirements. For a base station side, a space-for-time method may be used to calculate the validity of all subframes in a superframe (<NUM> subframes) in advance. However, a terminal side also has high requirements for space, so the space-for-time method may not be adopted.

Through the above technical schemes of the embodiment of the present disclosure, the calculation efficiency is greatly improved to meet the requirements of downlink processing on the terminal side.

There are two types of so-called invalid subframes defined by a protocol. The first type is static (which has a fixed position), such as a subframe <NUM> of a physical broadcast channel (PBCH), a subframe <NUM> of a primary synchronization signal (PSS), and a subframe <NUM> of an even frame of a secondary synchronization signal (SSS).

The second type is semi-static (the position of which is related to configuration), such as a SIB <NUM> subframe, a SI subframe, a GAP subframe and an invalid subframe indicated by a bitmap.

Semi-static scenarios are also regular, that is, cyclic, and configuration parameters have a specified range.

In the embodiment of the present disclosure, for both determining the end subframe position and calculating the number of valid subframes from the current subframe to the start subframe, only the number of valid subframes is required to obtain, and there is no need to accurately obtain the specific function of each subframe. Therefore, the embodiment of the present disclosure utilizes the cyclicity of invalid downlink subframes to simplify the calculation, and changes the way of traversing all intervals to a few designated semi-static intervals for calculation, while the number of invalid subframes in the static intervals can be quickly obtained. Finally, the number of traversals is reduced.

Actually, for the so-called static intervals, the number of valid downlink subframes in these intervals may be determined quickly. The invalid downlink subframes herein are subframes with another characteristic, such as the SIB1 subframe. The occurrence times and positions of the invalid downlink subframes are fixed in a cycle. Therefore, the number of the invalid subframes may be determined, and it will not change with different configuration parameters and thus may be quickly obtained by multiplication.

In this way, the calculation of a large interval to be may be decomposed into calculations of at most one large static interval and two small semi-static intervals. Each of the two semi-static intervals has one static boundary, that is, only one boundary is required to be calculated according to the configuration. Finally, the amount of calculation for a large interval is simplified to a single-boundary calculation for two small intervals, and other calculation for static intervals may be obtained by the most basic multiplication.

The following describes the determination process of the subframe position by way of illustration. As shown in <FIG>, the SIB1 is taken as an invalid subframe. According to the current configuration, a physical cell identity (PCID) is <NUM>, and a repeated configuration of the SIB1 is <NUM> subframes; Rmax is configured as <NUM> subframes. The current time is subframe <NUM>, and the position of the ending subframe is calculated (i.e., counting from the current subframe to the time when the valid subframe is <NUM>).

Based on the subframe <NUM> at the current time, an initial value of the temporary end subframe is calculated as <NUM> (<NUM>+<NUM>) subframe first. In a first round, the number of the SIB1 subframes in this interval is calculated, and the rest are all valid subframes. The position shown in <FIG> may be obtained by the operation of division and modulo.

There are stable cycles [<NUM>, <NUM>] and [<NUM>, <NUM>] between the subframe <NUM> and a subframe <NUM> with a cycle of <NUM>. The number of SIB1 subframes in this interval is <NUM> (<NUM>*<NUM>, there are two schedules of a total of 16frames in <FIG>), thus reducing1280 times for traversing, i.e. the traversing the interval [<NUM>, <NUM>] is avoided. The remaining intervals to be determined become [<NUM>, <NUM>] and [<NUM>, <NUM>].

In the interval [<NUM>, <NUM>], there is a subframe <NUM> in the <NUM> subframe under the current SIB1 configuration. The location is different for different PCIDs. Taking PCID=<NUM> as an example, a valid subframe range of the PCID is [<NUM>, <NUM>], that is, the number of SIB1 subframe between [<NUM>, <NUM>] is <NUM>, and thus the times for traversing is reduced by <NUM>.

In the interval [<NUM>, <NUM>], there are <NUM> frames in the subframe [<NUM>,<NUM>] carrying the SIB1. The division and modulo are performed again by taking <NUM> subframes as an interval. A simplified analysis is performed on the intervals [<NUM>, <NUM>], [<NUM><NUM>]. [<NUM>,<NUM>] is a complete interval, and there are <NUM> SIB1 subframes whether it is an odd frame or an even frame.

A remaining interval for analysis is [<NUM>, <NUM>]. The SIB1 is fixedly carried by a <NUM> subframe. When the PCID is <NUM>, a position where the SIB1 is carried in this interval is subframe <NUM>, so there is no SIB1 subframe in the interval [<NUM>, <NUM>].

In this way, the SIB1 subframes between the subframe <NUM> and the subframe <NUM> are quickly calculated, that is, the number of invalid subframes is <NUM> (<NUM>+<NUM>+<NUM>+<NUM>). The temporary initial values established in the first round are all based on valid values, so that a second round of calculation is required. The number of invalid subframes obtained in the first round is added to the end position of the previous round as a new end position. The interval of this round is [<NUM>, <NUM> (<NUM>+<NUM>)]. It can be seen that an interval length of the second round has been much shorter. This round of interval calculation may be performed by traversing the interval. If the interval length is still large after the second round, a quick determination similar to that of the first round continues to be used. After each round of determination, the interval required to be studied may be exponentially reduced, greatly reducing the amount of calculation.

The algorithms for the SI subframe, the GAP subframe and the invalid subframe indicated by the bitmap are similar to that for SIB1. If these invalid subframes are configured, the determination on these invalid subframes may be made synchronously.

By adopting the above technical solution, the calculation efficiency can be greatly improved, and the efficiency increases as the interval for calculation becomes greater. When the Rmax is configured to be <NUM>, consumption on the instruction for calculating the end time can be reduced to <NUM>/<NUM>, which fully meets the timing requirements for each subframe processing. With this method, the end subframe position can be calculated in advance while ensuring that the current processing is normal. In this way, an energy-saving mode can be entered early and the effect of power saving can be achieved.

Some embodiments of the present disclosure further provide a computer-readable storage medium including a program stored therein. Herein, when running on the computer, the program executes the method described in any one of the above.

Optionally, in this embodiment, the storage medium may be set to store program codes for executing the following steps. In step S1, static intervals and semi-static intervals of a search space corresponding to a current subframe is determined according to a position of the current subframe. In step S2, a number of invalid subframes in the static intervals and the semi-static intervals is determined, and a number of valid subframes in the static intervals and the semi-static intervals is determined according to the number of invalid subframes. In step S3, a start subframe position and an end subframe position corresponding to the position of the current subframe are determined according to the number of invalid subframes and the number of valid subframes.

Optionally, in this embodiment, the storage medium may include but is not limited to a USB flash disk, a ROM, a RAM, a mobile hard disk, a magnetic disk or an optical disk, and other media that may store the program code.

Some embodiments of the present disclosure further provide an electronic apparatus including a memory and a processor. A computer program is stored in the memory, and the processor is configured to run the computer program to execute the steps in any of the above method embodiments.

Optionally, the electronic apparatus may further include a transmission device and an input/output device, where the transmission device is connected with the processor and the input/output device is connected with the processor.

Optionally, in this embodiment, the processor may be configured to execute the following steps through the computer program. In step S1, static intervals and semi-static intervals of a search space corresponding to a current subframe is determined according to a position of the current subframe. In step S2, a number of invalid subframes in the static intervals and the semi-static intervals is determined, and a number of valid subframes in the static intervals and the semi-static intervalsis determined according to the number of invalid subframes. In step S3, a start subframe position and an end subframe position corresponding to the position of the current subframe are determined according to the number of invalid subframes and the number of valid subframes.

Claim 1:
A subframe position determination method, comprising:
determining static intervals and semi-static intervals of a search space corresponding to a current subframe according to a position of the current subframe (S202);
determining a number of invalid subframes in the static intervals and the semi-static intervals, and determining a number of valid subframes in the static intervals and the semi-static intervals according to the number of invalid subframes (S204); and
determining a start subframe position and an end subframe position corresponding to the position of the current subframe according to the number of invalid subframes and the number of valid subframes (S206);
wherein determining the number of invalid subframes in the static intervals and the semi-static intervals comprises:
determining a number of invalid subframes in first static intervals according to a cycle of the static intervals and a type of the invalid subframes, and taking the number of invalid subframes in the first static intervals as a number of invalid subframes in the static intervals;
dividing the semi-static intervals into N second static intervals and M first semi-static intervals, wherein M and N are positive integers respectively;
determining a number of invalid subframes in the N second static intervals according to a cycle of the N second static intervals and the type of the invalid subframes; and
determining a number of invalid subframes in the M first semi-static intervals by traversing the first semi-static intervals.