System and method for implementing optimized multiplexing and power saving in a broadcast network
15 claims: 8 independent, 7 dependent
- 1Patent claims Zastrzeżenia patentowe 1. A method comprising:1. Sposób obejmujący: using at least one input buffer to buffer multiple input data streams;użycie co najmniej jednego bufora wejściowego do buforowania wielu strumieni danych wejściowych;planowanie części wielu strumieni danych wejściowych dla sygnalizacji w obrębie wielu ramek, przy czym każda z wielu ramek zawiera wiele szczelin do włączenia w nie części strumienia danych, przy czym rozmiar każdej szczeliny w każdej ramce jest zmienny;scheduling a portion of a plurality of input data streams for signaling within a plurality of frames, each of the plurality of frames including a plurality of slots for inclusion in portions of the data stream, the size of each slot in each frame being variable;adding optimal services to unallocated capacity with each frame;and generating a plurality of frames for signaling, the generating comprising adding a plurality of sync symbols to the plurality of frames, the sync symbols including relative timing information of a plurality of initial locations of a plurality of corresponding slots within each of the plurality of frames. dodawanie usług optymalnych do nieprzydzielonej pojemności z każdą ramką;i generowanie wielu ramek dla sygnalizacji, przy czym generowanie obejmuje dodawanie wielu symboli synchronizacji do wielu ramek, przy czym symbole synchronizacji obejmują informację o względnym taktowaniu wielu początkowych lokalizacji wielu odpowiednich szczelin w obrębie każdej z wielu ramek.
- 3The method according to p. 2, further includes, for each slot that does not have at least one timing signal, adding a corresponding slot start and end indication. 3. Sposób według zastrz. 2, ponadto obejmuje, dla każdej szczeliny, która nie ma co najmniej jednego sygnału synchronizacji, dodanie wskazania początku i końca odpowiedniej szczeliny.
- 4The method according to p. 1, further comprising adding real-time signaling information to the at least one sync symbol. 4. Sposób według zastrz. 1, ponadto obejmuje dodawanie informacji sygnalizacyjnych w czasie rzeczywistym do co najmniej jednego symbolu synchronizacji.
- 5The method according to p. 1, further comprising signaling the receiving apparatus, desynchronization information regarding each slot. 5. Sposób według zastrz. 1, ponadto obejmuje sygnalizowanie urządzeniu odbiorczemu informacji o rozsynchronizowaniu dotyczących każdej szczeliny.
- 9Device containing:9. Urządzenie zawierające: means for buffering the plurality of input data streams;środki do buforowania wielu strumieni danych wejściowych;means for scheduling portions of the plurality of input data streams for signaling across the plurality of frames, each of the plurality of frames including a plurality of slots for inclusion in portions of the data stream, the size of each slot in each frame being variable;środki do planowania części wielu strumieni danych wejściowych dla sygnalizacji w wielu ramkach, przy czym każda z wielu ramek zawiera wiele szczelin do włączenia w nie części strumienia danych, przy czym rozmiar każdej szczeliny w każdej ramce jest zmienny;means for adding optimal services to unallocated capacity with each frame;and means for generating a plurality of frames for signaling, the generating comprising adding a plurality of sync symbols to the plurality of frames, the symbols being środki do dodawania usług optymalnych do nieprzydzielonej pojemności z każdą ramką;i środki do generowania wielu ramek dla sygnalizacji, przy czym generowanie obejmuje dodawanie wielu symboli synchronizacji do wielu ramek, przy czym symbole - 17synchronizacji obejmują informację o względnym taktowaniu wielu początkowych lokalizacji wielu odpowiednich szczelin w obrębie każdej z wielu ramek. The syncs include information on the relative timing of a plurality of initial locations of a plurality of corresponding slots within each of the plurality of frames.
- 12A method comprising:12. Sposób obejmujący: odbieranie sygnalizowanych wielu ramek, przy czym każda ramka zawiera szczeliny zawierające dane z wielu strumieni danych wejściowych i wielu symboli synchronizacji, przy czym rozmiar każdej szczeliny w każdej ramce jest zmienny i przy czym symbole synchronizacji obejmują informację o względnym taktowaniu wielu początkowych lokalizacji wielu szczelin w każdej z wielu ramek;receiving signaled multiple frames, each frame including slots containing data from the plurality of input data streams and a plurality of sync symbols, the size of each slot in each frame being variable, and the sync symbols including the relative timing information of the plurality of initial locations of the plurality of slots in each from multiple frames;processing the plurality of sync symbols from the plurality of frames;and processing the plurality of frames using the information contained in the plurality of sync symbols. przetwarzanie wielu symboli synchronizacji z wielu ramek;i przetwarzanie wielu ramek z wykorzystaniem informacji zawartych w wielu symbolach synchronizacji.
- 13The method according to p. 12, further comprising processing the received jitter information regarding each slot, the jitter information being received from the sending device. 13. Sposób według zastrz. 12, ponadto obejmuje przetwarzanie odebranych informacji o rozsynchronizowaniu dotyczących każdej szczeliny, przy czym informacja o rozsynchronizowaniu jest odbierana z urządzenia wysyłającego.
- 15Device containing:15. Urządzenie zawierające: means for receiving signaled multiple frames, each frame including slots containing data from a plurality of input data streams and a plurality of sync symbols, the size of each slot in each frame being variable, and the sync symbols including the relative timing information of the plurality of initial multiple slot locations in each of a plurality of frames;środki do odbierania zasygnalizowanych wielu ramek, przy czym każda ramka zawiera szczeliny zawierające dane z wielu strumieni danych wejściowych i wielu symboli synchronizacji, przy czym rozmiar każdej szczeliny w każdej ramce jest zmienny i przy czym symbole synchronizacji obejmują informację o względnym taktowaniu wielu początkowych lokalizacji wielu szczelin w każdej z wielu ramek;means for processing a plurality of sync symbols from a plurality of frames;and means for processing the plurality of frames using the information contained in the plurality of sync symbols. środki do przetwarzania wielu symboli synchronizacji z wielu ramek;i środki do przetwarzania wielu ramek z wykorzystaniem informacji zawartych w wielu symbolach synchronizacji. - 18220 - 18220 FIG. 1 FIG. 1 Synch byte (8 bit) Synch byte (8 bitów) ;l id (8 bits) address (10 bits) .__ Fragmentation index 3 bits _ Last_fragment_indicator 1 bit / Content launch indicator 1 bit ;l id (8 bitów) address (10 bitów) .__ Fragmentation index 3 bity _ Last_fragment_indicator 1 bit / Wskaźnik uruchomienia zawartości 1 bit : Contents of l_n bits. :Zawartość l_n bitów. y Introduction O ... k bits y Wprowadzenie O...k bitów CRC CRC A AND FIG. 5 FIG. 5 CD CD FIG. 8 FIG. 8 FIG. 9 FIG. 9 -26FIG. 10 -26FIG. 10
Independent claims8
102 paragraphs in 5 sections, as filed
Description
FIELD OF THE INVENTION
[0001] The invention relates generally to broadcast / multicast services. More specifically, the invention relates to the multiplexing of broadcast / multicast services.
BACKGROUND OF THE INVENTION
[0002] This section is intended to provide the background or context of the invention as recited in the claims. The description in this document may contain applicable terms, but are not necessarily those previously invented or used. Therefore, unless otherwise stated in this document, what is described in this section is not prior art with respect to the description and claims of this application and is not admitted to the art by inclusion in this section.
[0003] The issue of energy consumption in portable devices such as mobile phones has become increasingly problematic in recent years and is likely to continue to be a problem in the future. In particular, the increased energy consumption of such terminals increases the end temperature. However, in many appliances the internal temperature has already reached its highest limit. Additionally, the increased power consumption reduces the useful life of the terminal, unless the battery capacity of the terminal is not increased accordingly. However, in recent years, terminals have become smaller and thinner and this trend is likely to continue. This trend has led to the disadvantage that terminal batteries have to be smaller at the same time as energy consumption increases.
[0004] In response to the above limitations, a number of different mechanisms have been developed for broadcast and multicast systems to reduce power consumption by broadcast / multicast receivers. In radiocommunication systems, the radio spectrum is a scarce resource and therefore should be used in the most efficient way possible.
[0005] In broadcast systems, the data rate of the input stream reaching the device is not exactly known at any given time. Instead, only the statistical behavior of the input stream is known. This can create a capacity allocation problem when several input streams with unknown characteristics (e.g. unknown rates) are multiplexed into one signal that will be transmitted by the broadcast / multicast system. Multiple systems have been implemented to fix the above issues. The energy consumption issue has traditionally been partially addressed, for example by using different time division multiplexing (TDM) systems. time division multiplexing). In these systems, the transmitter,
The receiver or both devices may disable parts according to a particular TDM system. Another option for solving the problem of energy consumption was to use frequency division. In frequency division circuits, the frequency band used is divided into smaller subbands and the transmitter or receiver uses only one or more of these subbands, leading to lower power consumption. US 2005/0111462 A1 discloses a scheduling of data units based on QoS.
SUMMARY OF THE INVENTION
[0006] Various embodiments provide an improved system for use in broadcasting and multicasting when a time division multiplexing system is required. In accordance with various embodiments, frame structures and slots are designed to adapt based on the change in bitrate of the input stream while not affecting the power consumption of the receiver as defined in the independent claims. After successful implementation, the implementation of various network embodiments allows for improved or optimized power utilization to be achieved, and at the same time to improve or optimize the terminal power saving.
[0007] These and other advantages and features of the invention, together with the organization and mode of operation thereof, will become apparent from the following detailed description in conjunction with the accompanying drawing figures, in which like elements have like reference numerals in the several drawing figures described below.
SHORT DESCRIPTION OF THE DRAWING FIGURES
[0008]
Fig. 1 is a representation showing an exemplary structure and syntax of a generic DSP packet;
Fig. 2 is a diagram showing an example of structure and relationship between superframes, frames, slots, and symbols;
Fig. 3 (a) is a representation of a conventional frame / slot structure in which the dimensions of the slot and the frame are constant and there are a predetermined number of slots in the frame; Fig. 3 (b) is a representation of a frame / slot structure in which a slot size is variable, a frame size is a fixed, and a number of slots in a frame; Fig. 3 (c) is a representation of a frame / slot structure, where the slot size is variable, the frame size is constant, and the number of slots in a frame is variable; and Fig. 3 (d) is a representation of a frame / slot structure, where the dimensions of the slots and frames are variable and the number of slots in the frame is variable;
Fig. 4 is a diagram illustrating flow of a transmitter in accordance with one embodiment of the invention;
Fig. 5 is a representation showing relationships between symbols, sub_slots, slots, and frames in accordance with various embodiments;
Fig. 6 is a representation of the initial buffering process of the receiver according to an embodiment;
Figs. 7 (a) and 7 (b) are representations of various mechanisms by which slot activation signaling may be implemented in accordance with various embodiments;
Fig. 8 is a perspective view of an electronic device that can be used in conjunction with the implementation of various embodiments;
Fig. 9 is a schematic representation of a circuitry that may be included in the electronic device of Fig. 8; and
Fig. 10 is a functional block diagram showing a system capable of implementing various embodiments.
DETAILED DESCRIPTION OF DIFFERENT EXAMPLES OF EXAMPLES
[0009] Various embodiments provide an improved system for use in broadcasting and multicasting when a time division multiplexing system is required. In accordance with various exemplary embodiments, the frame and slot structures are designed to adapt based on the change in bitrate of the input stream while not affecting the power consumption of the receiver. Upon successful implementation, a terminal implementing the various embodiments of the invention achieves better or optimized power utilization and at the same time improves or optimizes power saving.
[0010] Various embodiments may be used, for example, in Digital Video Broadband (DVB-H) or a next generation DVB-H network. Examples of other digital broadcasting standards that a digital broadband broadcasting system can use are DVB-T (Digital Video Broadcast - Terrestrial), ISDB-T ( Integrated Services Digital Broadcasting-Terrestrial, a standard for digital terrestrial television), data broadcast standard ATSC (Advanced Television Systems Committee, an organization developing standards for advanced television systems), DMB-T (Digital Multimedia Broadcast-Terrestrial, digital television standard broadcasting via terrestrial), T-DMB (Terrestrial Digital Multimedia Broadcasting), S-DMB (ang. Satellite Digital Multimedia Broadcasting, a satellite standard for digital mobile television), FLO (Forward Link Only), DAB (Digital Audio Broadcasting, a digital radio technology), and DRM (Digital Radio Mondiale, a digital broadcasting system) ). Other digital standards and techniques that are known or will be developed in the future can also be used. Subjects of the invention may also be applicable to other multi-carrier digital transmission systems such as TDAB, T / S-DMB, ISDB-T and ATSC, privately developed systems such as Qualcomm Media FLO / FLO, and non-traditional systems such as 3GPP MBMS (Multimedia Broadcast / Multicast Services, broadcast / multicast service)
-4 multimedia) and 3GPP2 BCMCS (Broadcast / Multicast Service).
[0011] Fig. 1 shows an exemplary data stream protocol (DSP) packet, together with the corresponding syntax for the packets. The "Synch byte" field detects the beginning of each DSP packet in the receiver and network. The "Payload_type_id" field identifies the type of content included in the content (e.g., Service Discovery Descriptor (SDD); adjacent service discovery descriptor (SDD); Neighboring Service Discovery Descriptor (NSDD); Internet Protocol (IP) or Reed Solomon (RS)). The "Logical_channel_id" field identifies the logical channel of the associated packet. The Logical_channel_id field is needed by the receiver to detect packets that are part of a specific logical channel (in case there are packets from more than one logical channel available in one slot). The "Physical_channel_id" field identifies the physical channel over which the associated DS packet is carried. This allows the network element to allocate DSP packets to the correct physical channels.
[0012] The "FEC_address" field is for mapping DS packets carrying application data with corresponding DS packets containing RS data when using FEC. If FEC is not used, this field can be ignored. The fragmentation_index field is a numerator for the content fragments included in the DSP packets. The fragmentation indicator allows the receiver to unpack the content in the correct order, for example in case of some packet loss. The "Last_fragment_indicator" field indicates the last fragment of the contained content. The "Payload_start_indicator" field indicates whether the current DSP packet is carrying the first piece of contained content. The "Stuffing" field is 0 ... n bits long and is added to the packet if the packet is not full in the embodiment where the DSP packet is of a fixed size. It should be noted that the sizes of the various fields depicted are exemplary only and may vary in different embodiments. Additionally, fields may also be defined and one or more of the fields illustrated herein may not be present in some embodiments.
[0013] The following is the syntax of the service discovery descriptor (SDD):
service_discovery_descriptor () {descriptor_tag2 version_number6
ESGproviderID8 descriptorjength8 service_loop_length8 for (j = O; j <N; j ++) {serviceID
-5reserved_future_use6 logical_channel_id8 physical_channel_id8 fec_indicator1 if (fec_indicator = 0x01) {frame_size7}
slot_loop_length8 for (k = 0; k <N; k ++) {slotid8}
frame_loop_length8 for (l = 0; l <N; l ++) {frame_id8
CRC3232}
[0014] In the above example, "descriptor_tag" indicates the type of the descriptor. For example, a value of 0x01 might indicate that the descriptor is the service_discovery_descriptor descriptor. "Version_number" indicates the version of the descriptor. This field can be used by the terminal to detect if there have been any changes to the descriptor since its last check. "ESGproviderID" identifies the electronic service guide (ESG) for the services advertised in the descriptor. All services listed in the descriptor are unique in the associated ESGproviderID. "Service_loop_length" indicates the length of the next loop.
[0015] "ServiceID" is a unique service identifier within one ESG provider (eg as defined in DVB-CBMS (Digital Video Broadcasting Convergence of Broadcast and Mobile Services) or OMA BCAST (Open Mobile Alliance Mobile Broadcast Services). One serviceID may be associated with one or more
- 6 IP streams (with each identifiable IP address). "Logical_channel_id" has a one-to-one mapping with serviceID. This identifies the logical channel of the associated serviceID. Logical_channel_id is required by the receiver to discover part of the packets of a specific logical channel in case there are packets from more than one logical channel available on one physical channel. "Physical_channel_id" is the physical channel identifier on which the associated logical channel is carried.
[0016] "Fec_indicator" indicates whether Forward Error Correcting (FEC) is being used for the associated service. If this pointer is set to 0x01, then FEC is used for the associated service. Other indicators can also be used. For example, 0x00 may indicate that there is no FEC. In addition, the indicator values may also indicate the FEC code used. For example, a value of 0x01 might indicate that the FEC is RS (191.255). "Frame_size" indicates the FEC frame size in case the FEC is equipped with an associated service. "Slot_loop_length" indicates the length of the next loop of slots. Each iteration of the slot loop corresponds to the same iteration within the framejoop. "Slot_id" identifies the slot where the associated service is carried. One service may be carried in multiple slots within one or more frames. "Frame_loop_length" indicates the length of the next frame loop. Each iteration of the slot loop corresponds to the same iteration within slotjoop. "Frame_id" is the frame ID. Each frame is associated with one or more slots.
[0017] The following is the syntax of the adjacent service discovery descriptor (NSDD):
neighboring_service_discovery_descriptor () {descriptor_tag2 version_number6 descriptorjength8 network_id8
ESGproviderID cell_loop_length8 for (i = 0; i <N; i ++) {reserved_future_use6 cell_id10 freąuency32 servi ce_l oop_l ength for (j = O; j <N; j ++) {
-7 serviceID16 logical_channel_id8 physical_channel_id8 fec_indicator1 if (fec_indicator = 0x01) {frame_size7}
slot_loop_length8 for (k = 0; k <N; k ++) {slotid8}
frame_loop_length8 for (l = 0; l <N; l ++) {frame_id8
CRC3232}
[0018] "Descriptor_tag" indicates the type of this descriptor. For example, in this situation, the value 0x02 might indicate neighbouring_service_discovery_descriptor. "Version_number" indicates the version of the descriptor. This field can be used by the terminal to detect changes within this descriptor since the last time it checked. "Network_id" indicates the network of elements described in this descriptor. "ESGproviderID" identifies the electronic service guide of the provided services under this descriptor. All services listed in this descriptor are unique in the associated ESGproviderID.
[0019] "Cell_loop_length" indicates the length of the following loops to CRC_32. "Cell_id" is the identifier of the cell. Each cell is unique within one network. "Frequency"
- 8 is the center frequency of the radio frequency channel of the signal for the coverage area of the associated cell. "Service_loop_length" indicates the length of the next loop.
[0020] "ServiceID" is a unique service identifier within the scope of one ESG provider (eg as defined in DVB-CBMS or OMA BCAST). One serviceID may be associated with one or more IP streams (each identified by an LP address). "Logical_channel_id" has a one-to-one mapping with serviceID. Logical_channel_id identifies the logical channel of the associated serviceID. This identifier is required by the receiver for detecting the packet parts of a specific logical channel in case there are packets from more than one logical channel available on one physical channel.
[0021] "Fec_indicator" indicates whether FEC is used for the associated service. If this pointer is set to 0x01, then FEC is used for the associated service. The size of the "frame_size" indicates the size of the FEC frame in case the FEC is equipped with an associated service. "Slot_loop_length" indicates the length of the next loop of slots. Each iteration of the slot loop corresponds to the same iteration within the framejoop. "Slot_id" identifies the slot where the associated service is carried. One service may be carried in multiple slots within one or more frames. "Frame_loop_length" indicates the length of the next frame loop. Each iteration of the frame loop corresponds to the same iteration within slotjoop. "Frame_id" is the frame ID. Each frame is associated with one or more slots.
[0022] In various embodiments, a guaranteed and common capacity is reserved for transmitted services. In these embodiments, the services are provided with a guaranteed capacity for each scheduled round. The common capacity is used to compensate for changes in the input stream rate. Compensation can be achieved by sharing this capacity in a contention reservation manner while also making sure that in the event that some input streams do not function properly, the streams cannot use all of the shared capacity. This is achieved in the scheduler by weighting each input stream based on the input buffer fill levels.
[0023] Typically not all regular capacity is used in all scheduling periods. Therefore, this capacity can be used for optimal services. "Best effort service" refers to a network service where the network provides no assurance that data is provided or that a guaranteed quality of service or priority is provided to the user. In an optimal type network, all users get the optimal service, which means they get an undefined variable throughput and delivery time depending on the current traffic load. By removing features such as recovering lost or corrupted data and pre-allocating resources, the network runs more efficiently and the network nodes are cheap. Optimal type services can be scheduled for services such as file downloads, carousels, or other services that do not require a constant bit rate. This layout is flexible as it can adapt to use the capacity when available. In a particular embodiment, such optimal type services may have a guaranteed bit rate. Examples of this type
-9 services are: Electronic service guide in DVB-H, teletext in digital television systems and terminal software download service in digital television systems. Moreover, a part of the system signaling may be placed to use the capacity marked with the optimal service. PSI / SI signaling in DVB-T / H is one example of such signaling.
Fig. 2 is a diagram showing the structure and relationship between superframes 200, frames 210, slots 220, and symbols 230. Each superframe 200 (whose length is identified as Tsf) includes a plurality of frames 210. Each frame 210 (of which the length is identified as Tf) includes a plurality of slots 220. Each slot 220 (whose length is identified as Tl) includes a plurality of symbols 230 (whose length is identified as Ts). Tsf and Tf are constant for one network configuration where Tl is variable. Ts may also differ in different gaps. For example, if slot 1 is used to transmit data for fixed high definition receivers, the maximum capacity is required and thus 8K or higher (16K or even 32K) mode is selected. In the same network, slot 2 can be used to transmit data to mobile devices. When seeking maximum mobile performance, 2K, 4K or 8K is selected for slot 2. This means that Ts is different in slots 1 and 2. Ts may, in some embodiments, be changed "on the fly" if greater for example the bit rate is needed immediately. Ts is configurable. If Ts is changed, Tl can be left unchanged by changing K (number of symbols). Each slot must form one or an integer of interleaving blocks. The slot size (in bits) determines the size of the interleaving block (or its integer part).
[0025] The physical channel (PHY_channel) is defined by a combination of a set of slot numbers ({si, S2, S3 ..., sr}, where 1 <R <L) and a set of frame numbers ({fi, fz, ffp}, where 1 <P <M). Thus, each physical channel must have at least one slot in one super frame. For example, slot_no = {4} and frame_no = {1} mean that PHY_channel has one slot (# 4) in one frame (# 1) during each superframe. Similarly, slot_no = {4} and frame_no = {1, 2, 3, ..., M} means that PHY_channel has one slot (# 4) in each frame during each superframe.
Figs. 3 (a) -3 (d) illustrate four variants of a transmission slot / frame structure in accordance with various embodiments of the invention. In general and in accordance with various embodiments, the number of slots in a frame may vary from frame to frame. This is shown in Figs. 3 (c) and 3 (d). Additionally, the size of the frame may vary as shown in Fig. 3 (d). This is in contrast to Fig. 3 (a), which shows the predetermined sizes of slots and frames and the fixed number of slots in the frame. For the purposes of the following, it is assumed that the number of slots is fixed in all frames and that each frame or larger "super-frame" is of a fixed length. This arrangement is shown in Fig. 3 (b). In this version the best service is used to fill the rest of the frame / superframe. In another embodiment, it is ensured that each frame / super frame is not overfilled by changing one, some, or all of the code rates (CR block code, CR inner code, or CR outer code) during a frame or slot.
[0027] Simple recurring scheduling can be used for scheduling. However, for each round, the slot sizes are calculated based on the change in input bit rate. Services with a longer interval (ie, services which only occur in every Nth frame) may be placed in front of the frame with a fixed size. Then it is enough to signal how many frames are between the slots and not how many symbols are included, thus using fewer bits.
[0028] In various embodiments, optimal energy savings are achieved by having sync symbols in the system to allow time to be synchronized as quickly as possible. These sync symbols can reside at least at the beginning of each frame. In addition, such timing symbols may also appear in frames. According to one embodiment, one or more sync symbols are immediately in front of each slot so that optimal timing can be obtained upon receipt of a series of slots. According to another embodiment of the invention, information is provided when the next slot is received in the plurality of slots. This information may be conveyed, for example, in synchronization symbols. The information includes, for example, an indication of the relative time or number of Orthogonal Frequency Division Multiplex (OFDM) blocks from the current symbol to the first synchronization symbol of the next slot in the same series of slots.
[0029] Fig. 4 is a diagram illustrating representative flow of a transmitter in accordance with one embodiment of the invention. As shown in Fig. 4, the input stream demultiplexer 400 is used to de-multiplex the inputted streams for an optional forward error correction (FEC) block based on a set of predetermined criteria.
[0030] A series of FEC units of the block is shown in position 410. One FEC unit of a block may include data for a portion of a service, for a whole service, or for several services. Incoming application data is written to the FEC frames of the blocks, and then the FEC is computed. Each FEC block unit 410 may have a unique code rate. In one embodiment, the left portion of the FEC unit 410 is reserved for incoming data packets and the right portion is reserved for the computed FEC. Moreover, in one embodiment, the left portion is first filled with incoming packets in a column, and then the FEC is calculated, e.g., using the Reed-Solomon code method. After calculating the FEC, read the data from the right column. The application data in the left column is also read in column, but in the embodiment, only a copy of the application data packets is written to the left part of the FEC unit, and the original application data is transferred without waiting for the FEC computation.
[0031] When a particular block FEC unit 410 finalizes the FEC calculations for one frame, it transmits the incoming FEC data and data to the input rate compensation buffer 420 (also referred to herein as "input buffers" and "baskets"). The size of each input rate compensation buffer 420 may be different from other such input buffers 420. Each input buffer 420 may contain FEC data and data from
One or optionally several FEC units 410 of blocks whose output, i.e., application data, and FEC data may be multiplexed into one buffer 425. The size of each input buffer 420 should be chosen so that there is enough space to buffer the data without risk overflows. Each input buffer 420 should provide its size and the current fill level for slot size calculation.
[0032] After the process is completed in input buffers 420, schedule and slot size computation is performed. This is represented generally as 430 in Fig. 4. The following is a simplified example of scheduling and filling frames:
For ever
Frame.size: = Frame.size (max) - New frame starting with an empty frame
For all slots - All slots are filled to the guaranteed level
While slot.size (N) <guaranteed size (N)
Slot (N): = bucket.sub_slot (N)
Frame.size: = Frame.size - bucket.sub_slot.size (N)
End While,
End for when the frame is not full or the recycle bin does not contain enough data for one sub_slot
- Continue until the frame is filled for all baskets except for the optimal service basket
Bucket.fill_rate (k): == Fill_level (k) / bucket_size (k) - Calculate fill_rate for all slots
End for
Output: == bucket (max [bucket.fill_rate (k)]) - Select the fullest basket
Slot (output): = bucket.sub_slot (output) - Reading data from the bin to the slot
Fill_level (output): == Fill.level (output) - bucket.sub_slot (output) - Delete the output from the bin,
If all baskets are empty
BE_slot: == Bucket.packet (BE_slot)
End if
End While
[0033] Fig. 5 is a representation showing relationships between symbols, sub_slots, slots and frames. Each sub_slot contains a total number of OFDM symbols. Each slot contains an integer sub_slot. The sub_slot size is selected in one
An embodiment such that it comprises data for one internal code block. These two constraints ensure that data from each received slot can be forwarded after receiving the entire slot, and the receiver's resources can be released to receive a different slot immediately after receiving each slot.
[0034] Overall buffer level tracking and bit rate matching is generally shown at 440 in Fig. 4. Optionally, the overall input buffer level may be monitored. This information can be used, in addition to changing the slot size, to compensate for changes in the input bit rate. Compensation may be achieved for a single slot when the fill level of a particular slot exceeds a predetermined threshold or exceeds a common threshold for several slots. When the buffers are empty enough, the transmission can be adapted to, for example, a more reliable mode and vice versa. The output bit rate may be modified to compensate for a change in the input bit rate with at least the following parameters:
1. Modulation parameters
[0035]. QPSK, 16-QAM, 64-QAM (example) • CR from internal encoder • CR from external encoder
[0036] An inner code and an outer encoder are shown in the block diagram of Fig. 10, which shows the framing structure, channel coding and modulation for digital terrestrial television.
2. FEC CR block
3. You can also provide feedback with audio / video encoders
[0037] Slot / frame generation is represented as 450 in Fig. 4. In this step, application data and FEC data, if in use, are mapped to symbols and sync symbols are added to the stream. The required real-time signaling information is added to the sync symbols. It should be noted that while sync symbols are discussed herein as being placed immediately before each slot, in some cases sync symbols are not added to the start of each slot. This can be done, for example, due to the need to save some capacity of the service sync symbols.
[0038] Regarding signaling, signaling in a variable slot situation is discussed below. Fig. 6 shows the initial receiver buffering process. In the series of slots # 4 in Fig. 6, since the dimensions of the slots are not fixed, the position of the slot start relative to the frame start varies depending on the behavior of the other slots. In Fig. 6 it can be seen that the frame 2, the slot 3 is significantly larger than the same slot in the frame 1. Therefore, slot 3 has slit 4 "pressed" forward for some time in frame 2. This amount of time is referred to as "slot fluctuation". In this situation, if the receiver starts
13 to consume slot 4 of frame 1 just after the end of the previous slot, the receiver will complete the desynchronization time of the slot data before receiving the new slot from the frame 2. However, if the receiver starts to consume the data from the frame 1 of the slot desynchronization time after the end of the slot, then it will have enough amount of data before new slot 4 of frame 2 arrives.
[0039] In the situation shown in Fig. 6, relatively simple formulas can be used to calculate the maximum gap jitter caused by the use of common capacity and varying gap sizes. Additionally, it should also be noted that there may be cases where slot capacity can only be guaranteed after N frames. This will also introduce a jitter.
[0040] If there are one or more sync symbols immediately before each slot, it is not necessary to add additional signaling to indicate the end of the slot. This is because in this situation the receiver knows that the burst has ended when a new sync symbol is received. When there are slots without sync symbols, the start and end of each slot may be indicated in the protocol header, as is usually done in DVB-H with real time parameters. This information may take the form of sync symbols. Here, the start and end indications may include, for example, the relative time from the synchronization symbol that carries the information.
[0041] Figs. 7 (a) and 7 (b) show a series of options by which slot start signaling may be performed. The first option, shown in Fig. 7 (a), includes the use of a (dynamic) delta-T_1 signal that represents the time from the start of the slot or the sync symbols preceding the slot in the first frame carrying the service to the start of the next frame or the sync symbols preceding the slot in the next frame. carrying the same service. In this case, no static data link layer (L2 in the open interconnection (OSI) model) is required. Delta-T_l would be as long as the time from the start of frame 1, slots 4 to the start of frame N, slots 4. The delta_t part can be optimized if the frame duration is constant and the slots use the same frames.
[0042] In a variant pair of this process shown in Fig. 7 (b), information on frames used by each slot (i.e. all frames, every other frame, frames (1 3 5 6) etc.) is signaled. The information can be in L2 signaling and can be provided for all slots. Since the frame length is fixed, the frame number will be sufficient information for the first frame slot. For other gaps, real-time signaling is required if optimal energy savings are sought. In the first of the two variants, the static target information slot_delay is signaled in L2. The current (dynamic) delta-T_3 information is also signaled. In this case, delta-T_3 indicates the difference (delay or advancement) compared to the static information. The second variant comprises (dynamic) delta-T_2 signaling from the start of the frame to the actual occurrence of the slot. In each case
- 14 sync symbols or L2 protocol headers (as in DVB-H) can be used to carry the dynamic part of the signaling.
[0043] The sync symbols can take many forms. For example, the sync symbols may include pilot and signaling symbols. Additionally, relative information about the timing and the end of the slot markings may also be added to one of the signaling symbols. While sync symbols may be included immediately before each slot, it is also possible that sync symbols are attached to each slot. In one particular embodiment, each slot begins with sync symbols. In other embodiments, however, such alignment is not necessary. For example, to conserve capacity, sync symbols may not be inserted into every slot. In such a case, the receiver must first boot in order to receive one set of sync symbols before receiving the desired slot.
[0044] Figures 8 and 9 show one representative electronic device 50 within which the invention may be embodied. However, it should be understood that the invention is not limited to one particular type of device. The electronic device 50 of Fig. 8 and 9 includes a housing 30, a liquid crystal display 32, a keyboard 34, a microphone 36, an earpiece 38, a battery 40, an infrared port 42, an antenna 44, a UICC smart card 46 according to one embodiment of the invention, a card reader 48, a circuit 52 radio interface, encoder circuit 54, controller 56 and memory 58. The various circuits and components are of the type well known in the art, for example in Nokia mobile phones.
[0045] The various embodiments described herein are described in the general context of steps or processes of a method that may be performed in one embodiment by a computer program product contained on a computer-readable medium, including computer executable instructions such as program code executed by computers. in network environments. Basically, program modules can contain procedures, programs, objects, components, data structures, etc. that perform specific tasks or implement certain abstract data types. Computer executable instructions, related data structures, and program modules represent program code examples for performing the steps of the methods disclosed herein. A specific sequence of such executable instructions or related data structures represents examples of suitable operations for performing the functions described in such steps or processes.
[0046] The particular and specific structures described in the above examples are to be understood as representative structures of means for performing the specific functions described in the following claims, although limitations in the claims should not be interpreted as limiting "means and functions" when the term "means and function" "Is not used in it. Furthermore, the use of the term "step" in the above description should not be used to interpret any specific limitation in the claims as "step and function" limitations. To the extent that individual references, including issued patents, patent applications and non-patent publications, are described or otherwise mentioned in this document, such references are
- 15 are not intended and should not be construed as limiting the scope of the following claims.
[0047] The software and web implementations of various embodiments of the invention may be implemented using standard programming techniques with rule-based logic and other logic to perform various database discovery steps or processes, correlation steps or processes, comparison steps or decision processes and steps, or processes. It should be noted that the words "component" and "module" as used herein and in the following claims are intended to include implementations using one or more lines of software code and / or hardware and / or hardware implementations for receiving manually input data.
[0048] The foregoing description of the embodiments has been presented for purposes of illustration and description. The foregoing description is not intended to be exhaustive or to limit the embodiments to the specific form disclosed, and modifications and variations are possible in light of the above information or can be obtained from the practice of the various embodiments. The embodiments discussed herein have been selected and described to clarify the principles and nature of the various embodiments and their practical application to enable those skilled in the art to use the invention in various embodiments and with various modifications that are suited to the particular application under consideration.
Contents5
26 sheets
Sheet 1 Sheet 2 Sheet 3 Sheet 4 Sheet 5 Sheet 6 Sheet 7 Sheet 8 Sheet 9 Sheet 10 Sheet 11 Sheet 12 Sheet 13 Sheet 14 Sheet 15 Sheet 16 Sheet 17 Sheet 18 Sheet 19 Sheet 20 Sheet 21 Sheet 22 Sheet 23 Sheet 24 Sheet 25 Sheet 26
16 members in 10 offices
Priority claims10
| Document | Office | Kind | Date |
|---|---|---|---|
| 89509807 | United States of America | P | |
| 89509807 | United States of America | P | |
| 08719684 | European Patent Office (EPO) | A | |
| 2008050931 | International Bureau of the World Intellectual Property Organization (WIPO) | W | |
| 2008050931 | International Bureau of the World Intellectual Property Organization (WIPO) | W | |
| 087196846 | – | – | – |
| 895098P | – | – | – |
| EP20080719684 | – | – | – |
| US20070895098P | – | – | – |
| WO2008IB50931 | – | – | – |
Members16
| Document | Office | Kind | |
|---|---|---|---|
| WO2008111006A1 | World Intellectual Property Organization (WIPO) | A1 | |
| TW200901664A | Taiwan Province of China | A | |
| US2009129302A1 | United States of America | A1 | |
| AR065768A1 | Argentina | A1 | |
| WO2008111006A9 | World Intellectual Property Organization (WIPO) | A9 | |
| EP2135388A1 | European Patent Office (EPO) | A1 | |
| CN101652961A | China | A | |
| RU2009137871A | Russian Federation | A | |
| RU2437234C2 | Russian Federation | C2 | |
| US8599884B2 | United States of America | B2 | |
| TWI424705B | Taiwan Province of China | B | |
| CN101652961B | China | B | |
| EP2135388B1 | European Patent Office (EPO) | B1 | |
| DK2135388T3 | Denmark | T3 | |
| ES2688473T3 | Spain | T3 | |
| PL2135388T3This record | Poland | T3 |
Numbers
- Publication
- 2135388
- Publication, DOCDB
- 2135388
- Publication, EPODOC
- PL2135388T
- Application
- 8719684
- Application, DOCDB
- 08719684
- Application, EPODOC
- PL20080719684T
Titles2
- English
- SYSTEM AND METHOD FOR IMPLEMENTING OPTIMIZED MULTIPLEXING AND POWER SAVING IN A BROADCAST NETWORK
- Polish
- System i sposób implementacji zoptymalizowanego multipleksowania i oszczędzania energii w sieci rozgłoszeniowej
Classification
- CPC, 7
- H04L1/0041
- H04W72/005
- H04W72/30
- H04L1/0075
- Y02D30/70
- H04W72/1257
- H04W72/535
- IPC, 3
- H04L1 00
- H04W72 00
- H04W72 12
