The invention relates generally to communications networks. More specifically, the invention relates to communications networks in which variable bit rate services are mapped into fixed bit rate time division multiplexed slots.
Digital broadband broadcast networks enable end users to receive digital content including video, audio, data, and so forth. Using a mobile terminal, a user may receive digital content over a wireless digital broadcast network.
The capacity of a wireless transmission channel, in a broadcasting system, for example, can be divided between different services by using time-division multiplexing (TDM). Each service reserves a slot in a TDM frame, which results in a fixed bit rate. The bit rate is determined by the size of the slot and the frame interval. Some services, such as a real-time video service, can have a variable bit rate.
TDM capacity has typically been reserved according to the maximum bit rate of the video service in order to guarantee that the stream always fits into the reserved slot. Most of the time, however, the reserved slots are not completely filled resulting in wasted transmission capacity.
The unused capacity can be decreased by sending several services in one slot (assuming that the bit rate variations for services are independent). This, however, requires the receiver to receive other services in addition to the one that is consumed, which is an inefficient use of resources, including, but not limited to, battery power of a mobile terminal.
Improved techniques for more completely filling reserved TDM slots thereby reducing wasted transmission capacity would be advancement in the art.
The following presents a simplified summary in order to provide a basic understanding of some aspects of the invention. The summary is not an extensive overview of the invention. It is neither intended to identify key or critical elements of the invention nor to delineate the scope of the invention. The following summary merely presents some concepts of the invention in a simplified form as a prelude to the more detailed description below.
In accordance with at least one embodiment, fixed TDM slot/frame structure and statistical multiplexing are combined. A TDM slot, which is fixed (in size and position) is reserved for a variable bit rate service such that the bit rate of the TDM slot/channel is below the average rate of the service. Such a reserved TDM slot may be referred to as a service specific slot. Since the service specific slot is reserved with a bit rate below the average rate of the service, additional capacity is reserved from a rate matching slot, which may be common for multiple services. In this rate matching slot, the capacity may be shared between services according to any suitable strategy for allotting services to portions of the rate matching slot, including, but not limited to, a statistical multiplexing algorithm.
A more complete understanding of the present invention and the advantages thereof may be acquired by referring to the following description in consideration of the accompanying drawings, in which like reference numbers indicate like features, and wherein:
In the following description of the various embodiments, reference is made to the accompanying drawings, which form a part hereof, and in which is shown by way of illustration various embodiments in which the invention may be practiced. It is to be understood that other embodiments may be utilized and structural and functional modifications may be made without departing from the scope and spirit of the present invention.
Digital content may be created and/or provided by digital content sources 104 and may include video signals, audio signals, data, and so forth. Digital content sources 104 may provide content to digital broadcast transmitter 103 in the form of digital packets, e.g., Internet Protocol (IP) packets. A group of related IP packets sharing a certain unique IP address or other source identifier is sometimes described as an IP stream. Digital broadcast transmitter 103 may receive, process, and forward for transmission multiple IP streams from multiple digital content sources 104. The processed digital content may then be passed to digital broadcast tower 105 (or other physical transmission component) for wireless transmission. Ultimately, mobile terminals or devices 112 may selectively receive and consume digital content originating from digital content sources 104.
As shown in
Computer executable instructions and data used by processor 128 and other components within mobile device 112 may be stored in a computer readable memory 134. The memory may be implemented with any combination of read only memory modules or random access memory modules, optionally including both volatile and nonvolatile memory. Software 140 may be stored within memory 134 and/or storage to provide instructions to processor 128 for enabling mobile device 112 to perform various functions. Alternatively, some or all of mobile device 112 computer executable instructions may be embodied in hardware or firmware (not shown).
Mobile device 112 may be configured to receive, decode and process digital broadband broadcast transmissions that are based, for example, on the Digital Video Broadcast (DVB) standard, such as DVB-H or DVB-T through a specific DVB receiver 141. The mobile device may also be provided with other types of receivers for digital broadband broadcast transmissions. Additionally, receiver device 112 may also be configured to receive, decode and process transmissions through FM/AM Radio receiver 142, WLAN transceiver 143, and telecommunications transceiver 144. In one aspect of the invention, mobile device 112 may receive radio data stream (RDS) messages.
In an example of the DVB standard, one DVB 10 Mbit/s transmission may have 200, 50 kbit/s audio program channels or 50, 200 kbit/s video (TV) program channels. The mobile device 112 may be configured to receive, decode, and process transmission based on the Digital Video Broadcast-Handheld (DVB-H) standard or other DVB standards, such as DVB-Satellite (DVB-S), or DVB-Terrestrial (DVB-T). Similarly, other digital transmission formats may alternatively be used to deliver content and information of availability of supplemental services, such as ATSC (Advanced Television Systems Committee), NTSC (National Television System Committee), ISDB-T (Integrated Services Digital Broadcasting-Terrestrial), DAB (Digital Audio Broadcasting), DMB (Digital Multimedia Broadcasting), FLO (Forward Link Only) or DIRECTV. Additionally, the digital transmission may be time sliced, such as in DVB-H technology. Time-slicing may reduce the average power consumption of a mobile terminal and may enable smooth and seamless handover. Time-slicing entails sending data in bursts using a higher instantaneous bit rate as compared to the bit rate required if the data were transmitted using a traditional streaming mechanism. In this case, the mobile device 112 may have one or more buffer memories for storing the decoded time sliced transmission before presentation.
In addition, an electronic service guide may be used to provide program or service related information. Generally, an Electronic Service Guide (ESG) enables a terminal to communicate what services are available to end users and how the services may be accessed. The ESG includes independently existing pieces of ESG fragments. Traditionally, ESG fragments include XML and/or binary documents, but more recently they have encompassed a vast array of items, such as for example, a SDP (Session Description Protocol) description, textual file, or an image. The ESG fragments describe one or several aspects of currently available (or future) service or broadcast program. Such aspects may include for example: free text description, schedule, geographical availability, price, purchase method, genre, and supplementary information such as preview images or clips. Audio, video and other types of data including the ESG fragments may be transmitted through a variety of types of networks according to many different protocols. For example, data can be transmitted through a collection of networks usually referred to as the “Internet” using protocols of the Internet protocol suite, such as Internet Protocol (IP) and User Datagram Protocol (UDP). Data is often transmitted through the Internet addressed to a single user. It can, however, be addressed to a group of users, commonly known as multicasting. In the case in which the data is addressed to all users it is called broadcasting.
One way of broadcasting data is to use an IP datacasting (IPDC) network. IPDC is a combination of digital broadcast and Internet Protocol. Through such an IP-based broadcasting network, one or more service providers can supply different types of IP services including on-line newspapers, radio, and television. These IP services are organized into one or more media streams in the form of audio, video and/or other types of data. To determine when and where these streams occur, users refer to an electronic service guide (ESG). One type of DVB is Digital Video Broadcasting-Handheld (DVB-H). The DVB-H is designed to deliver 10 Mbps of data to a battery-powered terminal device.
DVB transport streams deliver compressed audio and video and data to a user via third party delivery networks. Moving Picture Expert Group (MPEG) has defined a technology by which encoded video, audio, and data within a single program or service is multiplexed, with other programs, into a transport stream (TS). The TS is a packetized data stream, with fixed length packets, including a header. The individual elements of a service, audio and video, are each carried within packets having a packet identification (PID) that may be unique for the service or to the components of the service. To enable a receiver device to locate the different programs and elements of a particular program within the TS, Program Specific Information (PSI) and Service Information (SI), which are embedded into the TS, are supplied. PSI/SI enables a receiver device to correctly process the data contained within the TS.
As stated above, the ESG fragments may be transported by IPDC over a network, such as for example, DVB-H to destination devices. DVB-H network may be used to transmit for example audio, video, and data streams. The destination device then determines the ordering of the ESG fragments and assembles them into useful information.
In a typical communication system, a cell may define a geographical area that may be covered by a transmitter or group of transmitters. The cell may be of any size and may have neighboring cells.
Communication between network components may be accomplished via the Open Systems Interconnection (OSI) standard. The OSI framework of the process for communication between different network components may be structured as seven layers or categories as described by the OSI reference model.
Statistical multiplexing generally deals with sharing fixed capacity among variable bit rate streams. It usually schedules data packets in such a way that they appear in the stream in random places. If statistical multiplexing of TDM slots was performed, it would prevent switching off digital broadcast receiver for power saving, because the location of the next slot would be unknown.
In accordance with at least one embodiment, fixed TDM slot/frame structure and statistical multiplexing are combined. A TDM slot, which is fixed (in size and position) is reserved for a variable bit rate service such that the bit rate of the TDM slot/channel is below the average rate of the service. Such a reserved TDM slot may be referred to as a service specific slot.
Since the service specific slot is reserved with a bit rate below the average rate of the service, additional capacity is reserved from a rate matching slot, which may be common for multiple services. In this rate matching slot, the capacity may be shared between services according to any suitable strategy for allotting services to portions of the rate matching slot, including, but not limited to, a statistical multiplexing algorithm.
In this way, it likely that the service specific slots will be fully utilized (or substantially fully utilized). Any unused capacity is collected into the rate matching slots. The amount of unused capacity will typically be smaller as compared to the case where the services are mapped into dedicated slots only without using common rate matching slots. This happens because the averaging of the bit rates of the services is now done over multiple services resulting in a lower bit rate variation and thus making it possible to reserve less extra capacity. It is still possible to further reduce the bit rate variation by using transmitter buffering.
Using rate matching slots, in accordance with an aspect of the invention, facilitates utilization of the unused capacity because the unused capacity is not scattered among multiple slots. Instead, the unused capacity is in one specific slot, the rate matching slot. In accordance with an aspect of the invention, the unused capacity may be allocated to one or more non-real time best-effort services.
Slot 2 illustrates a case where data from two services is multiplexed into one slot. Data for services A and B are mapped to the carriers so that they alternate in the time dimension (i.e., symbol numbering). The alternating pattern may take various forms such that data for service A is mapped to two (or more) consecutive symbol positions, and data for service B is mapped to next two (or more) symbol positions. The pattern may, in some embodiments, be different for different subcarriers. Also, in this embodiment, symbols not carrying data for either service may be in any position within the slot. In some embodiments, more than two services may be multiplexed into a single slot.
Slot 3 illustrates a case in which symbols not carrying data (as indicated by an O in
Slot 4 illustrates a case in which data from two services is multiplexed into one slot so that the data for the first service, service A, occupies selected first symbol positions, and data for the second service, service B, occupies next consecutive symbol positions on each subcarrier.
Slot 5 illustrates a further case in which data from two (or more) services is multiplexed into one slot such that each subcarrier that carries data does so for only one service. In this case, an empty symbol, O, may appear at any position within the slot.
In the examples of
In accordance with embodiments that include rate matching slots, the receiver stays on to receive data from the service specific slot and from the common rate matching slot. This may increase the power consumption of the receiver. To address that situation, one or more of the following techniques may be used. The service specific slot may include information configured to specify whether the rate matching slot includes data from one or more particular services. The beginning of the rate matching slot may signal what services it carries, which would enable a receiver to check only the selected signals, as opposed to receive the whole slot. If a system contains some type of block Forward Error Correction (FEC) like Multi-Protocol Encapsulation FEC (MPE-FEC), FEC, or part of FEC, could be transmitted in the common rate matching slot. Then, if a receiver detects that it received slot 3 Service C without errors, it does not need to receive the common rate matching slot. Services for which power saving is more difficult to achieve (e.g. low bit rate services) may be placed adjacent to the rate matching slot requiring only one switch on and synchronization per frame. Services may be placed relative to one another in the common rate matching slot such that they are located closely to corresponding service-specific slots. For example, with reference to
TDM systems enable using slot specific (or service specific) modulation and code rate (CR). However, these parameters will typically be the same for services within the rate matching slot. Therefore, the service data may be set using different CR and modulation depending on whether the data is sent in a service specific slot or a common rate matching slot. If there are different QoS classes (i.e., services with different modulation and code rate), respective rate matching slots may be used for each QoS class. Further, to distinguish between various services for which data is carried in a rate matching slot, any suitable identification strategy may be used, including, but not limited to, at least one of a service identifier and a physical channel identifier being carried in the headers of data packets, for example.
A Data Stream Protocol (DSP), in accordance with at least one aspect of the invention, allows different types of data to be carried within fixed length data stream (DS) packets.
Synchronization field 1402 enables detection of the beginning of each DSP packet within a receiver and a network. In accordance with at least one aspect of the invention, synchronization field contains 8 bits. As is the case with other fields and parameters disclosed herein having a particular number of bits, the synchronization field may contain any other suitable number of bits.
Payload type identifier 1404 (e.g., payload_type_id) may be used for identifying the payload type encapsulated within the payload. For example, payload type identifier may specify a payload type including, but not limited service discovery descriptor, (SDD), neighboring service discovery descriptor (NSDD), Internet Protocol (IP), Reed-Solomon (RS) and the like.
Logical channel identifier 1406 (e.g., logical_channel_id) may be used for identifying a logical channel of an associated packet. This identifier may be used by a receiver for discovering the packets part of specific logical channel when there are packets from more than one logical channel available within a particular slot.
Physical channel identifier 1408 (e.g., physical_channel_id) may be used for identifying a physical channel in which an associated DS packet is carried. A physical channel identifier enables a network element to allocate DSP packets into correct physical channels.
Forward Error Correction address 1410 (e.g., FEC_address) may be used for mapping DS packets carrying application data with corresponding DS packets carrying RS data when FEC is used. If FEC is not used, this field can be ignored.
Fragmentation index 1412 (e.g., Fragmentation_index) is a counter for the payload fragments encapsulated within DSP packets. Fragmentation index 1412 enables a receiver to decapsulate the payload in the correct order, e.g., in case some of the packets are lost.
Last fragment indicator 1414 (e.g., last_fragment_indicator) may be used for indicating a last fragment of an encapsulated payload.
Payload start indicator 1416 (e.g., Payload_start_indicator) may be used for indicating whether a current DSP packet carries the first fragment of an encapsulated payload. Payload 1516 is the payload of a DSP packet.
Stuffing 1420 are bits that may be added if a packet is not full. And Cyclic Redundancy Check (CRC) 1522 is a well known way for checking that a received block of data is free from errors.
In accordance with at least one aspect of the invention, DSP packets have a fixed size. The size of the packet may be determined based on an error correction code, the length of the interleaver, and the length of a symbol.
A determination is made, as shown at 1502, with respect to whether a desired logical and physical channel is known. If they are not known, then the “no” branch from 1502 loops back to 1502 until they are known. Otherwise, if the desired logical and physical channel are known, then the yes branch from 1502 is followed.
DSP packets are received on the requested physical channel as shown at 1504. The payload type and the logical channel identifier of the received packet are inspected, as shown at 1506. A determination is then made, as shown at 1508, with respect to whether the requested logical channel has been found. If the requested logical channel has not been found, the “no” branch from 1508 will be followed to 1504. Otherwise, if the requested logical channel has been found, then the “yes” branch from 1508 will be followed. The DSP packet with the selected logical channel identifier will then be decapsulated, or the packet may be stored to memory for later processing, as shown at 1510. Processing then loops back to 1504. The fragmentation index and/or the last fragment indicator may be used to ensure that payload is decapsulated in an appropriate order.
One or more aspects of the invention may be embodied in computer-executable instructions, such as in one or more program modules, executed by one or more computers or other devices. Generally, program modules include routines, programs, objects, components, data structures, etc. that perform particular tasks or implement particular abstract data types when executed by a processor in a computer or other device. The computer executable instructions may be stored on a computer readable medium such as a hard disk, optical disk, removable storage media, solid state memory, RAM, etc. As will be appreciated by one of skill in the art, the functionality of the program modules may be combined or distributed as desired in various embodiments. In addition, the functionality may be embodied in whole or in part in firmware or hardware equivalents such as integrated circuits, field programmable gate arrays (FPGA), application specific integrated circuits (ASIC) and the like.
Embodiments of the invention include any novel feature or combination of features disclosed herein either explicitly or any generalization thereof. While embodiments of the invention have been described with respect to specific examples including presently preferred modes of carrying out the invention, those skilled in the art will appreciate that there are numerous variations and permutations of the above described systems and techniques. Thus, the spirit and scope of the invention should be construed broadly as set forth in the appended claims.