[go: up one dir, main page]

WO2010072030A1 - Mobile terminal multimedia broadcast driving interface and realizing method - Google Patents

Mobile terminal multimedia broadcast driving interface and realizing method Download PDF

Info

Publication number
WO2010072030A1
WO2010072030A1 PCT/CN2008/073724 CN2008073724W WO2010072030A1 WO 2010072030 A1 WO2010072030 A1 WO 2010072030A1 CN 2008073724 W CN2008073724 W CN 2008073724W WO 2010072030 A1 WO2010072030 A1 WO 2010072030A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
interface
read
control information
channel
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Ceased
Application number
PCT/CN2008/073724
Other languages
French (fr)
Chinese (zh)
Inventor
秋林
阮美思
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
ZTE Corp
Original Assignee
ZTE Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ZTE Corp filed Critical ZTE Corp
Priority to PCT/CN2008/073724 priority Critical patent/WO2010072030A1/en
Priority to CN200880132423.1A priority patent/CN102257811B/en
Publication of WO2010072030A1 publication Critical patent/WO2010072030A1/en
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/414Specialised client platforms, e.g. receiver in car or embedded in a mobile appliance
    • H04N21/41407Specialised client platforms, e.g. receiver in car or embedded in a mobile appliance embedded in a portable device, e.g. video client on a mobile phone, PDA, laptop
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/414Specialised client platforms, e.g. receiver in car or embedded in a mobile appliance

Definitions

  • the present invention relates to an embedded system applied to a mobile terminal, and more particularly to a multimedia broadcast driver interface and a method for implementing the mobile terminal.
  • CMMB China Mobile Multimedia Broadcasting
  • CMMB is a mobile multimedia broadcast TV technology with independent intellectual property rights promulgated by the State Administration of Radio, Film and Television. It is mainly used to provide digital audio, video and information to various portable terminal devices through wireless broadcast television coverage networks.
  • Service; CMMB has the advantage of being able to solve the problem of unsmooth signal of mobile terminal (mobile TV) by means of satellite communication.
  • CMMB is managed by the State Administration of Radio, Film and Television, and it is responsible for the film, television and radio program carriers. TV show resources.
  • CMMB application To implement the CMMB application on the handheld terminal, it is necessary to call the driver interface of the terminal chip to read the multiplexed frame and part of the control information, and uplink to the application, and also need to write some control information of the downlink to control the behavior of the chip. .
  • CMMB terminal chips there are many types of CMMB terminal chips on the market, and the solutions are not the same. For example, in some chips, multiplexed frames and control information are transmitted on the same data bus; in others, the two are transmitted separately.
  • the data needs to be packaged accordingly when writing data (that is, the chip just needs to write the data);
  • data is fetched (that is, when data is needed)
  • the data needs to be separated, which directly increases the complexity of the program and leads to an extended development cycle.
  • the technical problem to be solved by the present invention is to provide a multimedia broadcast driver interface and implementation method for a mobile terminal, which can provide a unified interface suitable for any type of chip for a terminal multimedia broadcast upper layer application.
  • the present invention provides a method for implementing a multimedia broadcast driver interface of a mobile terminal, comprising: configuring a logical interface between a read interface of a bottom layer of the terminal and an application program interface of an upper layer; When the multimedia broadcast data is stored, the multimedia broadcast data read from the read interface is separated from the payload data and the control information through a logical interface, and buffered to different channels respectively, and the application program reads through the application program interface.
  • the logical interface buffers the separated payload data into the payload data channel, and buffers the separated control information into the uplink control information channel.
  • the logical interface is further connected to the bottom write interface of the terminal.
  • the control information that needs to be written is buffered to the downlink control information channel through the application program interface, and then the logic is passed.
  • the interface sends control information read from the downlink control information channel from the write interface to the data bus of the terminal.
  • the logical interface separates the payload data and the control information according to a protocol agreed by the terminal and the corresponding multimedia broadcast system.
  • the payload data channel and the uplink control information channel in the logical interface are respectively implemented by creating and maintaining a first instance and a second instance of a first-in first-out FIFO pair column; or, downlink control information in the logical interface
  • the channel is implemented by creating and maintaining a third instance of the FIFO pair column; wherein the payload data channel is used for read-only, and the uplink control information channel or the downlink control information channel is used for reading and writing.
  • the FIFO pair column is implemented by the first cache list and the second cache list; the first cache list is used to arrange the cache block in the use of the cached data, and the second cache list is used to arrange the empty block of the uncached data or has been Take a reusable block of data; Initializing the first cache list and the second cache list before the corresponding channel caches the data, that is, setting the first cache list to be empty, and adding a certain number of cache blocks to the second cache list one by one;
  • the second cache list When there is data to be cached to the corresponding channel, if the second cache list is not empty, the first cache block is requested in the second cache list for data caching, and the first cache block is moved into the first cache list. The last item, then the cache operation ends normally; if the second cache list is empty, wait until the second cache list is not empty and waits for no timeout, continue the data cache and its subsequent operations, if the waiting timeout then the cache operation ends abnormally ;
  • the first cache list When the data is to be read from the corresponding channel, if the first cache list is not empty, the first cache block is taken from the first cache list, and the first cache block is moved to the first after the data is read. The second item of the second cache list, and then the read operation ends normally; if the first cache list is empty, then wait until the first cache list is not empty and wait for no timeout, continue data reading and subsequent operations, if waiting for timeout Then the read operation ends abnormally.
  • the present invention provides a mobile terminal multimedia broadcast driver interface, which is a logical interface configured between a bottom read interface of the terminal and an upper application interface, and the logical interface is at least applied.
  • the program needs to read the multimedia broadcast data stored by the terminal, the work is triggered by the application program interface, and the multimedia broadcast data read from the read interface is separated from the payload data and the control information, and buffered to different channels respectively, to be applied.
  • the program is read through the application interface.
  • the logical interface includes an interconnected read/write distribution module and a data channel module, where: a data channel module, configured to at least create and maintain a payload data channel and an uplink control information channel;
  • the read/write distribution module is connected to the read interface, and is configured to buffer the separated payload data into the payload data channel through the data channel module, and buffer the separated control information into the uplink control information channel through the data channel module, and then to the application interface. Returns a data readable indication.
  • the logic interface triggers the work through the application program interface when the application is to write the control information to the terminal;
  • the data channel module is also used to create and maintain a downlink control information channel;
  • the read/write distribution module is further connected to the underlying write interface of the terminal, and is configured to buffer the control information to be written to the terminal to the downlink control information channel through the application program interface, and then use the data channel module to control the information channel from the downlink.
  • the read control information is sent from the write interface to the data bus of the terminal, and then the data written indication is returned to the application interface.
  • the payload data channel is used for read-only, and the uplink control information channel or the downlink control information channel is used for reading or writing;
  • the payload data channel, the uplink control information channel, and the downlink control information channel each have a respective first buffer area.
  • a respective second buffer area wherein: the first buffer area is used by the data channel module when receiving the data read request from the application interface when one or more cache blocks in use of the cached data are arranged Reading the data of the first cache block and carrying the data in a normal response to the data returned to the application interface; meanwhile, the first cache block of the read data is placed by the data channel module The last item of the second buffer of the corresponding channel;
  • a second buffer area configured to be requested by the data channel module when receiving a data cache request from the read-write distribution module when an empty cache block having uncached data or a reusable cache block having data taken out is arranged
  • the data carried in the cache is cached in the first cache block, and the first cache block of the write data is placed by the data channel module in the last entry of the first buffer of the corresponding channel.
  • the terminal developer can only develop a set of applications for the motherboards of different types of CMMB chips.
  • the program while simplifying the logic of the upper application as much as possible, simplifies the development process and shortens the development cycle. At the same time, the production line no longer needs to determine the version of the application to download by judging the type of motherboard, thereby reducing production costs.
  • FIG. 1 is a structural block diagram of an embodiment of a CMMB terminal driving interface of the present invention
  • FIG. 2 is a flow chart of the data read/write distribution operation of the CMMB terminal drive interface of the present invention
  • FIG. 3 is a flow chart of the data channel initialization and write operation of the CMMB terminal drive interface of the present invention
  • Figure 4 is a flow diagram of a data channel read operation for the CMMB terminal application interface of the present invention. Preferred embodiment of the invention
  • the core point of the multimedia broadcast driver interface and implementation method of the mobile terminal provided by the present invention is: adding a device-independent logical interface between the read/write operation interface of the bottom layer of the chip and the application interface of the upper layer, the logical interface includes at least reading Writing a distribution module, a payload data channel, and an uplink control information channel; when the application needs to read data, the read/write distribution module separates the multimedia broadcast data stream read from the read interface of the read/write operation interface into the payload data. And the control information is respectively placed in the payload data channel and the uplink control information channel to be read by the application program.
  • FIG. 1 is a block diagram showing the structure of a CMMB terminal multimedia broadcast driver interface provided by the present invention.
  • the drive interface is actually a device-independent logical interface 100 added between the bottom-level read/write operation interface of the chip and the upper application interface, and includes an interconnected read-write distribution module. 110 and data channel module 120; wherein:
  • the read/write operation interface includes a read interface and a write interface, and the read interface is used at least to read the multimedia broadcast data stream received by the chip from the terminal memory; the write interface is at least used to send the downlink control information of the application to be written to the chip to the data bus.
  • the read/write distribution module 110 is also respectively connected to the application program interface, and is connected to the read interface and the write interface, and is used to invoke the program interface when the application needs to read and write data; when the application wants to read the data, it is called.
  • the multiplexed frame payload data and the uplink control information separated in the data stream read by the read interface are respectively placed into the multiplexed frame channel and the uplink channel by the data channel module 120, and returned to the application interface.
  • Data can be read instructions; when the application wants to write data is When called, the downlink control information acquired from the downlink channel by the data channel module 120 is sent from the write interface to the data bus, and the data written indication is returned to the application program interface;
  • the data channel module 120 is configured to separately create and maintain a multiplexed frame channel, an uplink channel, and a downlink channel of the buffer multiplexed frame data, the uplink control information, and the downlink control information;
  • An application interface configured to invoke the read-write distribution module 110 when the application is to read data, and read and reuse the multiplexing frame channel and the uplink channel by the data channel module 120 after receiving the data readable indication.
  • the frame payload data and the uplink control information when the application needs to write data, the downlink control information to be written into the chip is first written into the downlink channel, and the read/write distribution module 110 is called to write the downlink control information.
  • the data channel module 120 creates and maintains a multiplexed frame channel, an upstream channel, and a downstream channel by creating and maintaining three instances of a first-in first-out queue FIFO pair column.
  • the multiplexed frame channel is used for read-only, and the upstream channel and the downstream channel can be used for reading and writing.
  • Creating and maintaining a first-in first-out queue FIFO pair column is accomplished by creating and maintaining two lists of FIFO pairs, the first list is used to arrange the list of cached blocks in use, and second A list is an empty block used to arrange uncached data or a reusable block list ( unused list) from which data has been fetched.
  • the data channel module Before the read/write distribution module caches data to the corresponding channel, the data channel module first initializes two lists, that is, sets the used list to null, and allocates a certain number of cache blocks to the unused list one by one.
  • the read/write distribution module When the read/write distribution module is to buffer data to the corresponding channel, issue a data cache request to the data channel module, and return a data readable indication after receiving the normal cache response returned by the data channel module; After receiving the data readable instruction, the interface sends a data read request to the data channel module, and obtains corresponding data by reading the normal response of the data returned by the data channel module; after receiving the data cache request, the data channel module receives the data cache request If it is determined that the unused list is not empty, the data carried in the request is cached in the first cache block of the unused list, and the first cache block is moved into the last item of the used list, and then the read-write distribution module is Return to the normal cache response; if it is judged that the unused list is empty, wait until the unused list is not empty and wait for no timeout, continue Data cache and its subsequent operations, and return a normal cache response; if waiting for timeout, return an exception cache response to the read-write distribution module; the read-write distribution module
  • a flow chart of data read/write distribution operation of the mobile terminal multimedia broadcast driver interface of the present invention is performed by the application program interface when the upper layer application needs to read and write data, and includes the following steps:
  • step 220 Determine whether it is a read operation, if yes, go to step 230, otherwise go to step 250;
  • the protocol here for example for the CMMB system, is expressed by multiplexing the information in the frame header.
  • Other multimedia broadcasting systems will also have corresponding protocol statements, which are no longer described.
  • the multiplexed frame payload and the uplink control information are separately distributed to the multiplexed frame channel and the control information uplink channel, which are implemented by the initialization and write operation flow shown in FIG. 3, where the process includes The following steps:
  • step 301 determining whether the write operation needs to be initialized, if yes, executing step 302, otherwise executing the step
  • 302 Create a used list and an unused list of the FIFO pair column, and set the used list to be empty; 303: add the allocated cache block one by one to the unused list;
  • step 305 Determine whether the unused list is empty, if yes, go to step 308, otherwise go to step 306;
  • 306 write data to the first cache block in the unused list, and move the first cache block to the last one of the used list.
  • step 309 Determine whether the waiting timeout occurs, if yes, go to step 310, otherwise go back to step 305; 310: Set the abnormal return code, and return.
  • the application program interface performs the reading of the multiplexed frame payload data or the uplink control information through the flow of the data channel read operation shown in FIG. 4, including the following steps:
  • step 401 Determine whether the used list of the corresponding data channel is empty, if yes, go to step 404, otherwise go to step 402;
  • step 405 Determine whether the waiting timeout is performed, if yes, go to step 406, otherwise return to step 401 to execute;
  • the multimedia broadcast driver interface of the mobile terminal provides a unified interface for different types of terminal chips by separating the multiplexing frame from the control information, and simplifies by simplifying the logic of the upper application.
  • the production version of the application to be downloaded for the motherboard type is unified and the production cost is reduced.
  • the present invention can provide a uniform interface for different types of terminal chips, and at the same time, can simplify the development process and shorten the development cycle, thereby reducing the production cost of the product.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • General Engineering & Computer Science (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Telephone Function (AREA)
  • Time-Division Multiplex Systems (AREA)

Abstract

The present invention discloses a mobile terminal multimedia broadcast driving interface and a realizing method, wherein the driving interface is a logic interface set between a lower read interface and a upper application interface of a terminal, and the logic interface is triggered via the application interface to work at least when the application needs to read the multimedia broadcast data stored in the terminal, and the logic interface is used for separating the payload data and the control information from the multimedia broadcast data read from the read interface, and buffering them to different channels respectively for read by the application via the application interface. The present invention provides an uniform interface for different types of the terminal chips, meanwhile the developing flow is simplified, and the developing period is shorten, thereby the producing cost of a product is reduced.

Description

移动终端多媒体广播驱动接口及实现方法  Mobile terminal multimedia broadcast driver interface and implementation method

技术领域 Technical field

本发明涉及应用于移动终端的嵌入式系统, 尤其涉及移动终端多媒体广 播驱动接口及实现方法。  The present invention relates to an embedded system applied to a mobile terminal, and more particularly to a multimedia broadcast driver interface and a method for implementing the mobile terminal.

背景技术 Background technique

中国移动多媒体广播 ( CMMB, China Mobile Multimedia Broadcasting ) 是国家广电总局颁布的具有自主知识产权的移动多媒体广播电视技术, 主要 用来通过无线广播电视覆盖网向各种便携式终端设备提供数字音视频和信息 服务; CMMB的优势在于, 能够借助卫星通信, 极好地解决移动终端(手机 电视)信号不流畅的问题, 同时目前 CMMB由国家广电总局管理, 其负责的 电影、 电视及广播节目载体, 具有丰富的电视节目资源。  China Mobile Multimedia Broadcasting (CMMB) is a mobile multimedia broadcast TV technology with independent intellectual property rights promulgated by the State Administration of Radio, Film and Television. It is mainly used to provide digital audio, video and information to various portable terminal devices through wireless broadcast television coverage networks. Service; CMMB has the advantage of being able to solve the problem of unsmooth signal of mobile terminal (mobile TV) by means of satellite communication. At present, CMMB is managed by the State Administration of Radio, Film and Television, and it is responsible for the film, television and radio program carriers. TV show resources.

在手持终端上实现 CMMB的应用程序,需要通过调用终端芯片的驱动接 口去读取复用帧以及部分控制信息, 上行给应用程序, 同时还需要下行写入 芯片一些控制信息, 来控制芯片的行为。  To implement the CMMB application on the handheld terminal, it is necessary to call the driver interface of the terminal chip to read the multiplexed frame and part of the control information, and uplink to the application, and also need to write some control information of the downlink to control the behavior of the chip. .

目前市场上的 CMMB终端芯片类型比较多, 解决方案不尽相同。 譬如, 在一些芯片内, 将复用帧和控制信息在同一个数据总线上传送; 而在另外一 些芯片内, 将两者分开传送。  At present, there are many types of CMMB terminal chips on the market, and the solutions are not the same. For example, in some chips, multiplexed frames and control information are transmitted on the same data bus; in others, the two are transmitted separately.

因此, 如果芯片的驱动程序仅仅是驱动芯片, 对接收的数据不加任何处 理地转发给上层应用程序, 就会引发两个问题:  Therefore, if the driver of the chip is only the driver chip, and the received data is forwarded to the upper application without any treatment, two problems are caused:

一是对于那些将复用帧与控制信息合在同一总线上传送的芯片来说, 在 写数据(即芯片刚接收到数据需要写入) 时需要对数据做相应的打包处理; 在应用程序读取数据时 (即当需要使用数据时)需要对数据进行分离, 由此 直接增加了程序的复杂性, 导致开发周期延长。  First, for those chips that combine the multiplexed frame and control information on the same bus, the data needs to be packaged accordingly when writing data (that is, the chip just needs to write the data); When data is fetched (that is, when data is needed), the data needs to be separated, which directly increases the complexity of the program and leads to an extended development cycle.

二是由于又存在复用帧和控制信息分开传送的芯片, 破坏了驱动接口的 统一性和通用性, 导致应用程序必须有两套逻辑, 甚至有时需要针对两种芯 片开发两个不同版本, 这同样会导致开发周期延长。 由此可见, 需要对现有的移动终端多媒体广播驱动接口进行改进, 使其 能够统一应用于多种类型终端芯片的驱动。 Second, because there are separate chips for multiplexing frames and control information, which breaks the uniformity and versatility of the driver interface, the application must have two sets of logic, and sometimes it is necessary to develop two different versions for the two chips. It also leads to an extended development cycle. It can be seen that the existing mobile terminal multimedia broadcast driver interface needs to be improved, so that it can be uniformly applied to the driving of multiple types of terminal chips.

发明内容 Summary of the invention

本发明所要解决的技术问题是提供一种移动终端多媒体广播驱动接口及 实现方法, 能够为终端多媒体广播上层应用程序提供适用于任何类型芯片的 统一接口。  The technical problem to be solved by the present invention is to provide a multimedia broadcast driver interface and implementation method for a mobile terminal, which can provide a unified interface suitable for any type of chip for a terminal multimedia broadcast upper layer application.

为了解决上述技术问题, 本发明提供了一种移动终端多媒体广播驱动接 口实现方法, 包括: 在终端的底层的读接口与上层的应用程序接口之间配置 一个逻辑接口; 在应用程序需要读取终端存储的多媒体广播数据时, 通过逻 辑接口将从读接口读取的多媒体广播数据分离出净荷数据和控制信息, 并分 别緩存到不同的通道, 待应用程序通过所述应用程序接口读取。  In order to solve the above technical problem, the present invention provides a method for implementing a multimedia broadcast driver interface of a mobile terminal, comprising: configuring a logical interface between a read interface of a bottom layer of the terminal and an application program interface of an upper layer; When the multimedia broadcast data is stored, the multimedia broadcast data read from the read interface is separated from the payload data and the control information through a logical interface, and buffered to different channels respectively, and the application program reads through the application program interface.

进一步地, 该逻辑接口将分离的净荷数据緩存到净荷数据通道, 并将分 离的控制信息緩存到上行控制信息通道。  Further, the logical interface buffers the separated payload data into the payload data channel, and buffers the separated control information into the uplink control information channel.

进一步地, 该逻辑接口还与终端的底层的写接口相连, 在应用程序需要 向终端写入控制信息时, 通过应用程序接口将需要写入的控制信息緩存到下 行控制信息通道, 然后通过该逻辑接口将从下行控制信息通道读取的控制信 息, 从写接口发至终端的数据总线上。  Further, the logical interface is further connected to the bottom write interface of the terminal. When the application needs to write the control information to the terminal, the control information that needs to be written is buffered to the downlink control information channel through the application program interface, and then the logic is passed. The interface sends control information read from the downlink control information channel from the write interface to the data bus of the terminal.

进一步地, 该逻辑接口根据终端与相应的多媒体广播系统约定的协议, 进行净荷数据和控制信息的分离。  Further, the logical interface separates the payload data and the control information according to a protocol agreed by the terminal and the corresponding multimedia broadcast system.

进一步地, 该逻辑接口中的净荷数据通道和上行控制信息通道, 分别通 过创建和维护一个先入先出 FIFO对列的第一实例和第二实例实现; 或者,该 逻辑接口中的下行控制信息通道, 通过创建和维护 FIFO对列的第三实例实 现; 其中, 净荷数据通道用于只读, 上行控制信息通道或下行控制信息通道 均用于读写。  Further, the payload data channel and the uplink control information channel in the logical interface are respectively implemented by creating and maintaining a first instance and a second instance of a first-in first-out FIFO pair column; or, downlink control information in the logical interface The channel is implemented by creating and maintaining a third instance of the FIFO pair column; wherein the payload data channel is used for read-only, and the uplink control information channel or the downlink control information channel is used for reading and writing.

进一步地, FIFO对列通过第一緩存列表和第二緩存列表实现; 第一緩存 列表用来排列正在緩存数据使用中的緩存块, 第二緩存列表用来排列未緩存 数据的空块或已被取走数据的可再用块; 在相应的通道緩存数据前, 初始化第一緩存列表和第二緩存列表, 亦即 将第一緩存列表设置为空, 并将分配一定数量的緩存块逐一加入第二緩存列 表; Further, the FIFO pair column is implemented by the first cache list and the second cache list; the first cache list is used to arrange the cache block in the use of the cached data, and the second cache list is used to arrange the empty block of the uncached data or has been Take a reusable block of data; Initializing the first cache list and the second cache list before the corresponding channel caches the data, that is, setting the first cache list to be empty, and adding a certain number of cache blocks to the second cache list one by one;

当有数据要緩存到相应的通道时, 如果第二緩存列表不为空, 则在第二 緩存列表中申请第一项緩存块进行数据緩存, 并将第一项緩存块移入第一緩 存列表的最后一项, 然后緩存操作正常结束; 如果第二緩存列表为空, 则等 候至第二緩存列表不为空且等候未超时, 继续进行数据緩存及其后续操作, 若等候超时则緩存操作异常结束;  When there is data to be cached to the corresponding channel, if the second cache list is not empty, the first cache block is requested in the second cache list for data caching, and the first cache block is moved into the first cache list. The last item, then the cache operation ends normally; if the second cache list is empty, wait until the second cache list is not empty and waits for no timeout, continue the data cache and its subsequent operations, if the waiting timeout then the cache operation ends abnormally ;

当要从相应的通道读取数据时, 如果第一緩存列表不为空, 则从第一緩 存列表中取出第一项緩存块, 并在数据读取后将该第一项緩存块移入至第二 緩存列表的最后一项, 然后读操作正常结束; 如果第一緩存列表为空, 则等 候至第一緩存列表不为空且等候未超时, 继续进行数据读取及其后续操作, 若等候超时则读操作异常结束。  When the data is to be read from the corresponding channel, if the first cache list is not empty, the first cache block is taken from the first cache list, and the first cache block is moved to the first after the data is read. The second item of the second cache list, and then the read operation ends normally; if the first cache list is empty, then wait until the first cache list is not empty and wait for no timeout, continue data reading and subsequent operations, if waiting for timeout Then the read operation ends abnormally.

为了解决上述技术问题, 本发明提供了一种移动终端多媒体广播驱动接 口, 该驱动接口是配置在终端的底层的读接口与上层的应用程序接口之间的 一个逻辑接口, 该逻辑接口至少在应用程序需要读取终端存储的多媒体广播 数据时, 通过应用程序接口触发工作, 用于将从读接口读取的多媒体广播数 据分离出净荷数据和控制信息, 并分别緩存到不同的通道, 待应用程序通过 应用程序接口读取。 In order to solve the above technical problem, the present invention provides a mobile terminal multimedia broadcast driver interface, which is a logical interface configured between a bottom read interface of the terminal and an upper application interface, and the logical interface is at least applied. When the program needs to read the multimedia broadcast data stored by the terminal, the work is triggered by the application program interface, and the multimedia broadcast data read from the read interface is separated from the payload data and the control information, and buffered to different channels respectively, to be applied. The program is read through the application interface.

进一步地, 该逻辑接口包括互连的读写分发模块和数据通道模块, 其中: 数据通道模块, 用于至少创建及维护净荷数据通道以及上行控制信息通 道;  Further, the logical interface includes an interconnected read/write distribution module and a data channel module, where: a data channel module, configured to at least create and maintain a payload data channel and an uplink control information channel;

读写分发模块与读接口连接, 用于将分离的净荷数据通过数据通道模块 緩存到净荷数据通道, 并将分离的控制信息通过数据通道模块緩存到上行控 制信息通道, 然后向应用程序接口返回数据可读取指示。  The read/write distribution module is connected to the read interface, and is configured to buffer the separated payload data into the payload data channel through the data channel module, and buffer the separated control information into the uplink control information channel through the data channel module, and then to the application interface. Returns a data readable indication.

进一步地, 该逻辑接口还在应用程序要向终端写入控制信息时, 通过应 用程序接口触发工作; 数据通道模块还用于创建及维护下行控制信息通道; Further, the logic interface triggers the work through the application program interface when the application is to write the control information to the terminal; The data channel module is also used to create and maintain a downlink control information channel;

读写分发模块还与终端的底层的写接口连接, 用于在应用程序通过应用 程序接口将要写入终端的所述控制信息緩存到下行控制信息通道后, 将通过 数据通道模块从下行控制信息通道读取的控制信息, 并从写接口发至终端的 数据总线, 然后, 向应用程序接口返回数据已写入指示。  The read/write distribution module is further connected to the underlying write interface of the terminal, and is configured to buffer the control information to be written to the terminal to the downlink control information channel through the application program interface, and then use the data channel module to control the information channel from the downlink. The read control information is sent from the write interface to the data bus of the terminal, and then the data written indication is returned to the application interface.

进一步地, 净荷数据通道用于只读, 上行控制信息通道或下行控制信息 通道均用于读或写; 净荷数据通道、 上行控制信息通道以及下行控制信息通 道均含有各自的第一緩存区和各自的第二緩存区, 其中: 第一緩存区,用于在排列有正在緩存数据使用中的一个或多个緩存块时, 由数据通道模块在从应用程序接口收到数据读取请求时, 读取第一项緩存块 的数据, 并将该数据携带在向应用程序接口返回的数据读取正常的响应中; 同时, 被读取数据的该第一项緩存块由数据通道模块置于相应通道的第二緩 存区的最后一项;  Further, the payload data channel is used for read-only, and the uplink control information channel or the downlink control information channel is used for reading or writing; the payload data channel, the uplink control information channel, and the downlink control information channel each have a respective first buffer area. And a respective second buffer area, wherein: the first buffer area is used by the data channel module when receiving the data read request from the application interface when one or more cache blocks in use of the cached data are arranged Reading the data of the first cache block and carrying the data in a normal response to the data returned to the application interface; meanwhile, the first cache block of the read data is placed by the data channel module The last item of the second buffer of the corresponding channel;

第二緩存区, 用于在排列有未緩存数据的空緩存块或已被取走数据的可 再用緩存块时, 由数据通道模块在从读写分发模块收到数据緩存请求时, 将 请求中携带的数据緩存在第一项緩存块, 同时, 写入数据的该第一项緩存块 由数据通道模块置于相应通道的第一緩存区的最后一项。  a second buffer area, configured to be requested by the data channel module when receiving a data cache request from the read-write distribution module when an empty cache block having uncached data or a reusable cache block having data taken out is arranged The data carried in the cache is cached in the first cache block, and the first cache block of the write data is placed by the data channel module in the last entry of the first buffer of the corresponding channel.

釆用本发明提供的驱动接口及方法, 通过将复用帧与控制信息相分离, 且通过使用读写双通道技术, 能够使得终端开发人员针对不同类型的 CMMB 芯片的主板只需要开发一套应用程序, 同时能够尽可能地简化上层应用程序 的逻辑, 故简化了开发流程及缩短了开发周期。 与此同时, 生产线上不再需 要通过判断主板类型来决定要下载的应用程序版本, 由此减少了生产成本。 By using the driving interface and method provided by the present invention, by separating the multiplexing frame from the control information, and by using the read-write dual channel technology, the terminal developer can only develop a set of applications for the motherboards of different types of CMMB chips. The program, while simplifying the logic of the upper application as much as possible, simplifies the development process and shortens the development cycle. At the same time, the production line no longer needs to determine the version of the application to download by judging the type of motherboard, thereby reducing production costs.

附图概述 BRIEF abstract

图 1是本发明的 CMMB终端驱动接口实施例的结构框图;  1 is a structural block diagram of an embodiment of a CMMB terminal driving interface of the present invention;

图 2是本发明 CMMB终端驱动接口进行数据读写分发操作的流程图; 图 3是本发明 CMMB终端驱动接口进行数据通道初始化、写操作的流程 图; 2 is a flow chart of the data read/write distribution operation of the CMMB terminal drive interface of the present invention; FIG. 3 is a flow chart of the data channel initialization and write operation of the CMMB terminal drive interface of the present invention; Figure

图 4是本发明供 CMMB 终端应用程序接口进行数据通道读操作的流程 图。 本发明的较佳实施方式  Figure 4 is a flow diagram of a data channel read operation for the CMMB terminal application interface of the present invention. Preferred embodiment of the invention

本发明提供的移动终端多媒体广播驱动接口及实现方法,其核心要点是: 在芯片底层的读写操作接口与上层的应用程序接口之间添加一个与设备无关 的逻辑接口, 该逻辑接口至少包括读写分发模块、 净荷数据通道以及上行控 制信息通道; 当应用程序需要读取数据时, 通过该读写分发模块将从读写操 作接口的读接口读取的多媒体广播数据流分离出净荷数据和控制信息, 分别 置入净荷数据通道和上行控制信息通道, 以供应用程序读取。 以下结合附图,并以 CMMB终端为优选实施例,将本发明的上述技术方 案进行详细地解释和说明。 在此, 以 CMMB终端为实施例, 仅仅是为了说明 和解释本发明, 而不是为了限制本发明。 本发明可以应用在各种多媒体广播 系统的终端中。  The core point of the multimedia broadcast driver interface and implementation method of the mobile terminal provided by the present invention is: adding a device-independent logical interface between the read/write operation interface of the bottom layer of the chip and the application interface of the upper layer, the logical interface includes at least reading Writing a distribution module, a payload data channel, and an uplink control information channel; when the application needs to read data, the read/write distribution module separates the multimedia broadcast data stream read from the read interface of the read/write operation interface into the payload data. And the control information is respectively placed in the payload data channel and the uplink control information channel to be read by the application program. The above technical solution of the present invention will be explained and explained in detail below with reference to the accompanying drawings and with a CMMB terminal as a preferred embodiment. Here, the CMMB terminal is taken as an embodiment for the purpose of illustrating and explaining the invention, and is not intended to limit the invention. The present invention can be applied to terminals of various multimedia broadcasting systems.

图 1表示出了本发明提供的 CMMB终端多媒体广播驱动接口的结构框 图。 如图 1所示, 该驱动接口实际上是本发明在芯片最底层的读写操作接口 与上层的应用程序接口之间添加的一个与设备无关的逻辑接口 100, 包括相 互连接的读写分发模块 110和数据通道模块 120; 其中: 1 is a block diagram showing the structure of a CMMB terminal multimedia broadcast driver interface provided by the present invention. As shown in FIG. 1, the drive interface is actually a device-independent logical interface 100 added between the bottom-level read/write operation interface of the chip and the upper application interface, and includes an interconnected read-write distribution module. 110 and data channel module 120; wherein:

读写操作接口包括读接口和写接口, 读接口至少用于从终端存储器里读 取芯片接收的多媒体广播数据流; 写接口至少用于将应用程序要写入芯片的 下行控制信息发至数据总线上;  The read/write operation interface includes a read interface and a write interface, and the read interface is used at least to read the multimedia broadcast data stream received by the chip from the terminal memory; the write interface is at least used to send the downlink control information of the application to be written to the chip to the data bus. Upper

读写分发模块 110, 还分别上与应用程序接口连接, 下与读接口和写接 口连接, 用于在应用程序需要读写数据时, 供应用程序接口调用; 当应用程 序要读数据而被调用时, 将通过读接口读取的数据流中分离出的复用帧净荷 数据和上行控制信息, 通过数据通道模块 120分别置入其中的复用帧通道和 上行通道, 并向应用程序接口返回数据可读取指示; 当应用程序要写数据被 调用时, 将通过数据通道模块 120从下行通道获取的下行控制信息, 从写接 口发至数据总线上, 并向应用程序接口返回数据已写入指示; The read/write distribution module 110 is also respectively connected to the application program interface, and is connected to the read interface and the write interface, and is used to invoke the program interface when the application needs to read and write data; when the application wants to read the data, it is called. The multiplexed frame payload data and the uplink control information separated in the data stream read by the read interface are respectively placed into the multiplexed frame channel and the uplink channel by the data channel module 120, and returned to the application interface. Data can be read instructions; when the application wants to write data is When called, the downlink control information acquired from the downlink channel by the data channel module 120 is sent from the write interface to the data bus, and the data written indication is returned to the application program interface;

数据通道模块 120 , 用于分别创建和维护緩存复用帧数据、 上行控制信 息及下行控制信息的复用帧通道、 上行通道以及下行通道;  The data channel module 120 is configured to separately create and maintain a multiplexed frame channel, an uplink channel, and a downlink channel of the buffer multiplexed frame data, the uplink control information, and the downlink control information;

应用程序接口, 用于在应用程序要读数据时, 调用读写分发模块 110, 并在收到数据可读取指示后, 通过数据通道模块 120分别从复用帧通道和上 行通道读取复用帧净荷数据和上行控制信息; 在应用程序需要写数据时, 先 将要写入芯片的下行控制信息写入下行通道, 并调用读写分发模块 110写入 下行控制信息。  An application interface, configured to invoke the read-write distribution module 110 when the application is to read data, and read and reuse the multiplexing frame channel and the uplink channel by the data channel module 120 after receiving the data readable indication. The frame payload data and the uplink control information; when the application needs to write data, the downlink control information to be written into the chip is first written into the downlink channel, and the read/write distribution module 110 is called to write the downlink control information.

数据通道模块 120创建和维护复用帧通道、 上行通道以及下行通道, 是 通过创建和维护一个先入先出队列 FIFO对列的三个实例实现的。其中, 复用 帧通道用于只读, 上行通道以及下行通道均可用于读写。  The data channel module 120 creates and maintains a multiplexed frame channel, an upstream channel, and a downstream channel by creating and maintaining three instances of a first-in first-out queue FIFO pair column. Among them, the multiplexed frame channel is used for read-only, and the upstream channel and the downstream channel can be used for reading and writing.

创建和维护一个先入先出队列 FIFO对列, 则是通过创建和维护 FIFO对 列的两个列表实现, 第一列表是用来排列正在緩存数据使用中的緩存块列表 ( used list ) , 第二列表是用来排列未緩存数据的空块或已被取走数据的可再 用块列表 ( unused list ) 。  Creating and maintaining a first-in first-out queue FIFO pair column is accomplished by creating and maintaining two lists of FIFO pairs, the first list is used to arrange the list of cached blocks in use, and second A list is an empty block used to arrange uncached data or a reusable block list ( unused list) from which data has been fetched.

在读写分发模块向相应的通道緩存数据前, 数据通道模块首先初始化两 个列表,亦即将 used list设置为空,将分配一定数量的緩存块逐一加入 unused list。  Before the read/write distribution module caches data to the corresponding channel, the data channel module first initializes two lists, that is, sets the used list to null, and allocates a certain number of cache blocks to the unused list one by one.

当读写分发模块要向所述相应的所述通道緩存数据时, 向数据通道模块 发出数据緩存请求, 并在收到数据通道模块返回的正常緩存响应后, 返回数 据可读取指示; 应用程序接口在收到该数据可读取指示后, 向数据通道模块发出数据读 取请求, 并通过数据通道模块返回的数据读取正常的响应获取相应的数据; 数据通道模块在收到数据緩存请求后, 如果判断 unused list不为空, 则 将请求中携带的数据緩存在 unused list的第一项緩存块中, 并将该第一项緩 存块移入 used list的最后一项, 然后向读写分发模块返回正常緩存响应; 如 果判断 unused list为空, 则等候至 unused list不为空且等候未超时, 继续进行 数据緩存及其后续操作, 并返回正常緩存响应; 若等候超时则向读写分发模 块返回异常緩存响应;读写分发模块将该异常緩存响应传递给应用程序接口; 数据通道模块在收到数据读取请求时, 如果判断 used list不为空, 则将 从 used list中第一项緩存块读取的数据携带在向应用程序接口返回的数据读 取正常的响应中, 同时, 将该第一项緩存块移入至 unused list的最后一项; 如果判断 used list为空, 则等候至 used list不为空且等候未超时, 继续进行数 据读取及其后续操作, 并返回数据读取正常的响应; 若等候超时则向应用程 序接口返回数据读取异常响应。 When the read/write distribution module is to buffer data to the corresponding channel, issue a data cache request to the data channel module, and return a data readable indication after receiving the normal cache response returned by the data channel module; After receiving the data readable instruction, the interface sends a data read request to the data channel module, and obtains corresponding data by reading the normal response of the data returned by the data channel module; after receiving the data cache request, the data channel module receives the data cache request If it is determined that the unused list is not empty, the data carried in the request is cached in the first cache block of the unused list, and the first cache block is moved into the last item of the used list, and then the read-write distribution module is Return to the normal cache response; if it is judged that the unused list is empty, wait until the unused list is not empty and wait for no timeout, continue Data cache and its subsequent operations, and return a normal cache response; if waiting for timeout, return an exception cache response to the read-write distribution module; the read-write distribution module passes the exception cache response to the application interface; the data channel module receives the data read When the request is fetched, if it is judged that the used list is not empty, the data read from the first cache block in the used list is carried in the normal response of the data returned to the application interface, and the first item is The cache block is moved to the last item of the unused list; if it is judged that the used list is empty, it waits until the used list is not empty and waits for no timeout, continues data reading and subsequent operations, and returns a normal response of the data reading; If waiting for a timeout, return a data read exception response to the application interface.

如图 2所示, 为本发明的移动终端多媒体广播驱动接口进行数据读写分 发操作的流程图, 是在上层应用程序需要读写数据时, 通过应用程序接口调 用执行的, 包括如下步骤: As shown in FIG. 2, a flow chart of data read/write distribution operation of the mobile terminal multimedia broadcast driver interface of the present invention is performed by the application program interface when the upper layer application needs to read and write data, and includes the following steps:

210:分别实例化复用帧通道、控制信息上行通道以及控制信息下行通道; 210: Instantiate a multiplexing frame channel, a control information uplink channel, and a control information downlink channel respectively;

220: 判断是否为读操作, 是则执行步骤 230, 否则执行步骤 250; 220: Determine whether it is a read operation, if yes, go to step 230, otherwise go to step 250;

230: 调用读接口读取多媒体广播数据;  230: Calling the read interface to read the multimedia broadcast data;

240: 根据协议分离读取的数据, 并将分离的复用帧净荷、 上行控制信息 分别分发至复用帧通道和控制信息上行通道, 然后结束流程;  240: Separating the read data according to the protocol, and distributing the separated multiplex frame payload and the uplink control information to the multiplexing frame channel and the control information uplink channel, respectively, and then ending the process;

这里协议, 譬如对于 CMMB系统, 是通过复用帧头中的信息表述的。 其 它多媒体广播系统也会有相应的协议表述, 此不再——赘述。  The protocol here, for example for the CMMB system, is expressed by multiplexing the information in the frame header. Other multimedia broadcasting systems will also have corresponding protocol statements, which are no longer described.

250: 从下行通道获取应用程序要写入的下行控制信息数据;  250: Obtain downlink control information data to be written by the application from the downlink channel;

260: 调用写接口, 将控制信息发至数据总线上, 然后结束流程。  260: Call the write interface, send control information to the data bus, and then end the process.

步骤 240中所述的将分离的复用帧净荷、 上行控制信息分别分发至复用 帧通道和控制信息上行通道, 具体是通过图 3所示的初始化、 写操作流程实 现的, 该流程包括如下步骤: The multiplexed frame payload and the uplink control information are separately distributed to the multiplexed frame channel and the control information uplink channel, which are implemented by the initialization and write operation flow shown in FIG. 3, where the process includes The following steps:

301 : 判断本次写操作是否需初始化, 是则执行步骤 302, 否则执行步骤 301: determining whether the write operation needs to be initialized, if yes, executing step 302, otherwise executing the step

305; 302: 创建 FIFO对列的 used list和 unused list, 并将 used list设置为空; 303: 将分配的緩存块逐一添至 unused list; 305; 302: Create a used list and an unused list of the FIFO pair column, and set the used list to be empty; 303: add the allocated cache block one by one to the unused list;

304: 从 unused list中申请緩存块;  304: Applying a cache block from the unused list;

305: 判断 unused list是否为空, 是则执行步骤 308, 否则执行步骤 306; 306: 将数据写入 unused list中第一项緩存块, 并将该第一项緩存块移入 至 used list的最后一项;  305: Determine whether the unused list is empty, if yes, go to step 308, otherwise go to step 306; 306: write data to the first cache block in the unused list, and move the first cache block to the last one of the used list. Item

307: 设置正常返回码, 并返回;  307: Set the normal return code, and return;

308: 写数据进程阻塞, 等待;  308: The write data process is blocked, waiting;

309: 判断等待是否超时, 是则执行步骤 310, 否则返回步骤 305执行; 310: 设置异常返回码, 并返回。  309: Determine whether the waiting timeout occurs, if yes, go to step 310, otherwise go back to step 305; 310: Set the abnormal return code, and return.

在上述流程通过正常返回码返回时, 应用程序接口便通过图 4所示的数 据通道读操作的流程进行复用帧净荷数据或上行控制信息的读取, 包括如下 步骤: When the above process returns through the normal return code, the application program interface performs the reading of the multiplexed frame payload data or the uplink control information through the flow of the data channel read operation shown in FIG. 4, including the following steps:

401 : 判断相应数据通道的 used list是否为空, 是则执行步骤 404, 否则 执行步骤 402;  401: Determine whether the used list of the corresponding data channel is empty, if yes, go to step 404, otherwise go to step 402;

402: 取 used list中的第一项緩存块, 读取数据后将该第一项緩存块移入 至 unused list的最后一项;  402: Take the first cache block in the used list, and read the data and move the first cache block to the last item of the unused list;

403: 设置正常返回码, 并返回;  403: Set the normal return code, and return;

404: 读数据进程阻塞, 等待;  404: The read data process is blocked, waiting;

405: 判断等待是否超时, 是则执行步骤 406, 否则返回步骤 401执行; 405: Determine whether the waiting timeout is performed, if yes, go to step 406, otherwise return to step 401 to execute;

406: 设置异常返回码, 并返回。 406: Set the exception return code and return.

综上所述, 本发明提供的移动终端多媒体广播驱动接口, 通过将复用帧 与控制信息相分离, 为不同类型的终端芯片提供出统一的接口, 同时由于简 化上层应用程序的逻辑, 而简化了开发流程及缩短了开发周期。 并且, 由于 生产线上针对主板类型要下载的应用程序版本统一而减少了生产成本。 In summary, the multimedia broadcast driver interface of the mobile terminal provides a unified interface for different types of terminal chips by separating the multiplexing frame from the control information, and simplifies by simplifying the logic of the upper application. The development process and shortened the development cycle. And because The production version of the application to be downloaded for the motherboard type is unified and the production cost is reduced.

当然, 本发明还可有其它多种实施例, 在不背离本发明精神及其实质的 但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。 It is a matter of course that the invention may be embodied in various other forms and modifications without departing from the spirit and scope of the invention.

工业实用性 本发明能够为不同类型的终端芯片提供出统一的接口, 同时能够简化开 发流程及缩短开发周期, 由此, 能够减少产品的生产成本。 Industrial Applicability The present invention can provide a uniform interface for different types of terminal chips, and at the same time, can simplify the development process and shorten the development cycle, thereby reducing the production cost of the product.

Claims

权 利 要 求 书 Claim 1、 一种移动终端多媒体广播驱动接口实现方法, 包括: 在所述终端的 底层的读接口与上层的应用程序接口之间配置一个逻辑接口;在应用程序需要 读取所述终端存储的多媒体广播数据时,通过所述逻辑接口将从所述读接口读 取的所述多媒体广播数据分离出净荷数据和控制信息,并分别緩存到不同的通 道, 待所述应用程序通过所述应用程序接口读取。 A method for implementing a multimedia broadcast driver interface of a mobile terminal, comprising: configuring a logical interface between a bottom read interface of the terminal and an upper application interface; and the application needs to read the multimedia broadcast stored by the terminal Data, the multimedia broadcast data read from the read interface is separated from the payload data and the control information by the logical interface, and respectively cached to different channels, and the application is passed through the application program interface. Read. 2、 按照权利要求 1所述的方法, 其特征在于, 所述逻辑接口将分离的 所述净荷数据緩存到净荷数据通道,并将分离的所述控制信息緩存到上行控制 信息通道。 The method according to claim 1, wherein the logical interface buffers the separated payload data into a payload data channel, and buffers the separated control information into an uplink control information channel. 3、 按照权利要求 1或 2所述的方法, 其特征在于, 所述逻辑接口还与 所述终端的底层的写接口相连,在所述应用程序需要向所述终端写入控制信息 时, 通过所述应用程序接口将需要写入的控制信息緩存到下行控制信息通道, 然后通过所述逻辑接口将从所述下行控制信息通道读取的所述控制信息,从所 述写接口发至所述终端的数据总线上。 The method according to claim 1 or 2, wherein the logical interface is further connected to a write interface of the bottom layer of the terminal, and when the application needs to write control information to the terminal, The application program interface buffers the control information to be written to the downlink control information channel, and then sends the control information read from the downlink control information channel from the write interface to the On the data bus of the terminal. 4、 按照权利要求 1所述的方法, 其特征在于, 所述逻辑接口根据所述 终端与相应的多媒体广播系统约定的协议,进行所述净荷数据和所述控制信息 的分离。 The method according to claim 1, wherein the logical interface separates the payload data from the control information according to a protocol agreed by the terminal and a corresponding multimedia broadcast system. 5、 按照权利要求 3所述的方法, 其特征在于, 所述逻辑接口中的所述 净荷数据通道和所述上行控制信息通道, 分别通过创建和维护一个先入先出 FIFO对列的第一实例和第二实例实现; 或者, 所述逻辑接口中的所述下行控 制信息通道, 通过创建和维护所述 FIFO对列的第三实例实现; 其中, 所述净 荷数据通道用于只读,所述上行控制信息通道或所述下行控制信息通道均用于 读写。 The method according to claim 3, wherein the payload data channel and the uplink control information channel in the logical interface are respectively created and maintained by a first-in first-out FIFO pair column The example and the second instance are implemented; or the downlink control information channel in the logical interface is implemented by creating and maintaining a third instance of the FIFO pair column; wherein the payload data channel is used for read-only The uplink control information channel or the downlink control information channel is used for reading and writing. 6、 按照权利要求 5所述的方法, 其特征在于, 所述 FIFO对列通过第 一緩存列表和第二緩存列表实现;所述第一緩存列表用来排列正在緩存数据使 用中的緩存块,所述第二緩存列表用来排列未緩存数据的空块或已被取走数据 的可再用块; 在相应的所述通道緩存数据前, 初始化所述第一緩存列表和所述第二緩 存列表, 亦即将所述第一緩存列表设置为空, 并将分配一定数量的緩存块逐 一加入所述第二緩存列表; 6. The method according to claim 5, wherein the FIFO pair column is implemented by using a first cache list and a second cache list; and the first cache list is used to arrange a cache block in use of the cached data. The second cache list is used to arrange empty blocks of uncached data or reusable blocks of data that have been taken away; Initializing the first cache list and the second cache list before buffering data of the corresponding channel, that is, setting the first cache list to be empty, and adding a certain number of cache blocks one by one to the first Two cache list; 当有数据要緩存到相应的通道时, 如果所述第二緩存列表不为空, 则在 所述第二緩存列表中申请第一项緩存块进行数据緩存, 并将所述第一项緩存 块移入所述第一緩存列表的最后一项, 然后緩存操作正常结束; 如果所述第 二緩存列表为空, 则等候至所述第二緩存列表不为空且等候未超时, 继续进 行所述数据緩存及其后续操作 , 若等候超时则所述緩存操作异常结束;  When there is data to be cached to the corresponding channel, if the second cache list is not empty, the first cache block is requested in the second cache list for data caching, and the first cache block is Moving into the last item of the first cache list, and then the cache operation ends normally; if the second cache list is empty, waiting until the second cache list is not empty and waiting for no timeout, continuing the data The cache and its subsequent operations, the cache operation ends abnormally if waiting for a timeout; 当要从相应的通道读取数据时, 如果所述第一緩存列表不为空, 则从所 述第一緩存列表中取出第一项緩存块, 并在数据读取后将该第一项緩存块移 入至所述第二緩存列表的最后一项, 然后读操作正常结束; 如果所述第一緩 存列表为空, 则等候至所述第一緩存列表不为空且等候未超时, 继续进行所 述数据读取及其后续操作 , 若等候超时则所述读操作异常结束。  When the data is to be read from the corresponding channel, if the first cache list is not empty, the first cache block is taken from the first cache list, and the first item is cached after the data is read. The block moves to the last item of the second cache list, and then the read operation ends normally; if the first cache list is empty, waiting until the first cache list is not empty and waiting for no timeout, proceeding The data read and its subsequent operations, the read operation ends abnormally if waiting for a timeout. 7、 一种移动终端多媒体广播驱动接口, 其特征在于, 所述驱动接口是 配置在所述终端的底层的读接口与上层的应用程序接口之间的一个逻辑接口, 所述逻辑接口至少在应用程序需要读取所述终端存储的多媒体广播数据时,通 过所述应用程序接口触发工作,用于将从所述读接口读取的所述多媒体广播数 据分离出净荷数据和控制信息,并分别緩存到不同的通道,待所述应用程序通 过所述应用程序接口读取。  A mobile terminal multimedia broadcast driver interface, wherein the drive interface is a logical interface configured between a read interface of an underlying layer of the terminal and an application interface of an upper layer, where the logical interface is at least in an application. When the program needs to read the multimedia broadcast data stored by the terminal, triggering work by the application program interface, for separating the multimedia broadcast data read from the read interface, and downloading payload data and control information, respectively Cache to a different channel to be read by the application through the application interface. 8、 按照权利要求 7所述的驱动接口, 其特征在于, 所述逻辑接口包括 互连的读写分发模块和数据通道模块, 其中:  8. The drive interface of claim 7, wherein the logical interface comprises an interconnected read-write distribution module and a data channel module, wherein: 所述数据通道模块, 用于至少创建及维护净荷数据通道以及上行控制信 息通道;  The data channel module is configured to create and maintain at least a payload data channel and an uplink control information channel; 所述读写分发模块与所述读接口连接, 用于将分离的所述净荷数据通过 所述数据通道模块緩存到所述净荷数据通道, 并将分离的所述控制信息通过 所述数据通道模块緩存到所述上行控制信息通道, 然后向所述应用程序接口 返回数据可读取指示。  The read-write distribution module is connected to the read interface, configured to buffer the separated payload data into the payload data channel by using the data channel module, and pass the separated control information through the data. The channel module buffers to the upstream control information channel and then returns a data readable indication to the application interface. 9、 按照权利要求 8所述的驱动接口, 其特征在于, 所述逻辑接口还在 所述应用程序要向所述终端写入控制信息时, 通过所述应用程序接口触发工 作; 9. The drive interface of claim 8 wherein said logical interface is still When the application writes control information to the terminal, triggering the work through the application program interface; 所述数据通道模块还用于创建及维护下行控制信息通道;  The data channel module is further configured to create and maintain a downlink control information channel; 所述读写分发模块还与所述终端的底层的写接口连接, 用于在所述应用 程序通过所述应用程序接口将要写入所述终端的所述控制信息緩存到所述下 行控制信息通道后, 将通过所述数据通道模块从所述下行控制信息通道读取 的所述控制信息, 并从所述写接口发至所述终端的数据总线, 然后, 向所述 应用程序接口返回数据已写入指示。  The read/write distribution module is further connected to the bottom write interface of the terminal, and configured to cache, by the application program, the control information to be written into the terminal to the downlink control information channel by using the application program interface. Afterwards, the control information read from the downlink control information channel by the data channel module is sent from the write interface to the data bus of the terminal, and then the data is returned to the application interface. Write instructions. 10、 按照权利要求 9所述的驱动接口, 其特征在于, 所述净荷数据通道 用于只读,所述上行控制信息通道或所述下行控制信息通道均用于读或写; 所 述净荷数据通道、所述上行控制信息通道以及所述下行控制信息通道均含有各 自的第一緩存区和各自的第二緩存区, 其中:  The drive interface according to claim 9, wherein the payload data channel is used for read-only, and the uplink control information channel or the downlink control information channel is used for reading or writing; The load data channel, the uplink control information channel, and the downlink control information channel each include a respective first buffer area and a respective second buffer area, where: 所述第一緩存区, 用于在排列有正在緩存数据使用中的一个或多个緩存 块时, 由所述数据通道模块在从所述应用程序接口收到数据读取请求时, 读 取第一项緩存块的数据, 并将该数据携带在向所述应用程序接口返回的所述 数据读取正常的响应中; 同时, 被读取数据的该第一项緩存块由所述数据通 道模块置于相应通道的所述第二緩存区的最后一项;  The first buffer area is configured to read, by the data channel module, a data read request from the application interface when the one or more cache blocks in use of the cached data are arranged Cache the data of the block and carry the data in a normal response to the data returned to the application interface; meanwhile, the first cache block of the read data is used by the data channel module a last item placed in the second buffer area of the corresponding channel; 所述第二緩存区, 用于在排列有未緩存数据的空緩存块或已被取走数据 的可再用緩存块时, 由所述数据通道模块在从所述读写分发模块收到数据緩 存请求时, 将所述请求中携带的数据緩存在第一项緩存块, 同时, 写入数据 的该第一项緩存块由所述数据通道模块置于相应通道的所述第一緩存区的最 后一项。  The second buffer area is configured to receive data from the read/write distribution module by the data channel module when an empty cache block with uncached data or a reusable cache block for which data has been taken is arranged When the request is cached, the data carried in the request is cached in the first cache block, and the first cache block of the write data is placed in the first cache area of the corresponding channel by the data channel module. The last one.
PCT/CN2008/073724 2008-12-25 2008-12-25 Mobile terminal multimedia broadcast driving interface and realizing method Ceased WO2010072030A1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
PCT/CN2008/073724 WO2010072030A1 (en) 2008-12-25 2008-12-25 Mobile terminal multimedia broadcast driving interface and realizing method
CN200880132423.1A CN102257811B (en) 2008-12-25 2008-12-25 Mobile terminal multimedia broadcast driving interface and realizing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2008/073724 WO2010072030A1 (en) 2008-12-25 2008-12-25 Mobile terminal multimedia broadcast driving interface and realizing method

Publications (1)

Publication Number Publication Date
WO2010072030A1 true WO2010072030A1 (en) 2010-07-01

Family

ID=42286851

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2008/073724 Ceased WO2010072030A1 (en) 2008-12-25 2008-12-25 Mobile terminal multimedia broadcast driving interface and realizing method

Country Status (2)

Country Link
CN (1) CN102257811B (en)
WO (1) WO2010072030A1 (en)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10574482B2 (en) 2015-04-07 2020-02-25 Umbra Technologies Ltd. Multi-perimeter firewall in the cloud
US10630505B2 (en) 2015-01-28 2020-04-21 Umbra Technologies Ltd. System and method for a global virtual network
US10841360B2 (en) 2014-12-08 2020-11-17 Umbra Technologies Ltd. System and method for content retrieval from remote network regions
US10922286B2 (en) 2016-04-26 2021-02-16 UMBRA Technologies Limited Network Slinghop via tapestry slingshot
US11360945B2 (en) 2015-12-11 2022-06-14 Umbra Technologies Ltd. System and method for information slingshot over a network tapestry and granularity of a tick
US11558347B2 (en) 2015-06-11 2023-01-17 Umbra Technologies Ltd. System and method for network tapestry multiprotocol integration
US11711346B2 (en) 2015-01-06 2023-07-25 Umbra Technologies Ltd. System and method for neutral application programming interface

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20010022787A1 (en) * 2000-02-24 2001-09-20 Mchale David F. Controller and method for controlling interfacing to a data link
US20040193763A1 (en) * 2003-03-28 2004-09-30 Fujitsu Limited Inter-bus communication interface device and data security device
CN1558674A (en) * 2004-01-19 2004-12-29 大唐电信科技股份有限公司光通信分公 multimedia terminal
CN101075930A (en) * 2006-05-16 2007-11-21 汤姆森许可贸易公司 Network storage device

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20010022787A1 (en) * 2000-02-24 2001-09-20 Mchale David F. Controller and method for controlling interfacing to a data link
US20040193763A1 (en) * 2003-03-28 2004-09-30 Fujitsu Limited Inter-bus communication interface device and data security device
CN1558674A (en) * 2004-01-19 2004-12-29 大唐电信科技股份有限公司光通信分公 multimedia terminal
CN101075930A (en) * 2006-05-16 2007-11-21 汤姆森许可贸易公司 Network storage device

Cited By (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11503105B2 (en) 2014-12-08 2022-11-15 Umbra Technologies Ltd. System and method for content retrieval from remote network regions
US12335329B2 (en) 2014-12-08 2025-06-17 Umbra Technologies Ltd. (Uk) System and method for content retrieval from remote network regions
US10841360B2 (en) 2014-12-08 2020-11-17 Umbra Technologies Ltd. System and method for content retrieval from remote network regions
US12126671B2 (en) 2014-12-08 2024-10-22 Umbra Technologies Ltd. System and method for content retrieval from remote network regions
US11711346B2 (en) 2015-01-06 2023-07-25 Umbra Technologies Ltd. System and method for neutral application programming interface
US10630505B2 (en) 2015-01-28 2020-04-21 Umbra Technologies Ltd. System and method for a global virtual network
US12289183B2 (en) 2015-01-28 2025-04-29 Umbra Technologies Ltd. System and method for a global virtual network
US11881964B2 (en) 2015-01-28 2024-01-23 Umbra Technologies Ltd. System and method for a global virtual network
US11240064B2 (en) 2015-01-28 2022-02-01 Umbra Technologies Ltd. System and method for a global virtual network
US12184451B2 (en) 2015-04-07 2024-12-31 Umbra Technologies Ltd. Systems and methods for providing a global virtual network (GVN)
US12160328B2 (en) 2015-04-07 2024-12-03 Umbra Technologies Ltd. Multi-perimeter firewall in the cloud
US12341706B2 (en) 2015-04-07 2025-06-24 Umbra Technologies Ltd. System and method for virtual interfaces and advanced smart routing in a global virtual network
US10659256B2 (en) 2015-04-07 2020-05-19 Umbra Technologies Ltd. System and method for virtual interfaces and advanced smart routing in a global virtual network
US12316554B2 (en) 2015-04-07 2025-05-27 Umbra Technologies Ltd. Multi-perimeter firewall in the cloud
US11271778B2 (en) 2015-04-07 2022-03-08 Umbra Technologies Ltd. Multi-perimeter firewall in the cloud
US12309001B2 (en) 2015-04-07 2025-05-20 Umbra Technologies Ltd. Systems and methods for providing a global virtual network (GVN)
US11750419B2 (en) 2015-04-07 2023-09-05 Umbra Technologies Ltd. Systems and methods for providing a global virtual network (GVN)
US10756929B2 (en) 2015-04-07 2020-08-25 Umbra Technologies Ltd. Systems and methods for providing a global virtual network (GVN)
US11799687B2 (en) 2015-04-07 2023-10-24 Umbra Technologies Ltd. System and method for virtual interfaces and advanced smart routing in a global virtual network
US11418366B2 (en) 2015-04-07 2022-08-16 Umbra Technologies Ltd. Systems and methods for providing a global virtual network (GVN)
US10574482B2 (en) 2015-04-07 2020-02-25 Umbra Technologies Ltd. Multi-perimeter firewall in the cloud
US11558347B2 (en) 2015-06-11 2023-01-17 Umbra Technologies Ltd. System and method for network tapestry multiprotocol integration
US12229088B2 (en) 2015-12-11 2025-02-18 Umbra Technologies Ltd. System and method for information slingshot over a network tapestry and granularity of a tick
US11681665B2 (en) 2015-12-11 2023-06-20 Umbra Technologies Ltd. System and method for information slingshot over a network tapestry and granularity of a tick
US11360945B2 (en) 2015-12-11 2022-06-14 Umbra Technologies Ltd. System and method for information slingshot over a network tapestry and granularity of a tick
US10922286B2 (en) 2016-04-26 2021-02-16 UMBRA Technologies Limited Network Slinghop via tapestry slingshot
US12105680B2 (en) 2016-04-26 2024-10-01 Umbra Technologies Ltd. Network slinghop via tapestry slingshot
US11146632B2 (en) 2016-04-26 2021-10-12 Umbra Technologies Ltd. Data beacon pulser(s) powered by information slingshot
US12271348B2 (en) 2016-04-26 2025-04-08 Umbra Technologies Ltd. Network slinghop via tapestry slingshot
US11789910B2 (en) 2016-04-26 2023-10-17 Umbra Technologies Ltd. Data beacon pulser(s) powered by information slingshot
US11743332B2 (en) 2016-04-26 2023-08-29 Umbra Technologies Ltd. Systems and methods for routing data to a parallel file system
US11630811B2 (en) 2016-04-26 2023-04-18 Umbra Technologies Ltd. Network Slinghop via tapestry slingshot
US12450201B2 (en) 2016-04-26 2025-10-21 Umbra Technologies Ltd. Systems and methods for routing data to a parallel file system

Also Published As

Publication number Publication date
CN102257811B (en) 2013-03-20
CN102257811A (en) 2011-11-23

Similar Documents

Publication Publication Date Title
WO2010072030A1 (en) Mobile terminal multimedia broadcast driving interface and realizing method
CN112995753B (en) A media stream distribution method, CDN node server, CDN system and readable storage medium
JP6427692B2 (en) Method and apparatus for providing multi-view streaming service
CN111934894B (en) Method and system for managing wireless network interface based on DPDK
JP2011505755A5 (en)
WO2019184572A1 (en) Webpage video playback method and apparatus, electronic device and storage medium
JP5389861B2 (en) Method and system for speeding up device operation by logical separation of control information
US6557052B1 (en) DMA transfer device
US20230261975A1 (en) In-vehicle communication system, and communication control method in in-vehicle communication system
US20140222960A1 (en) Method and Apparatus for Rapid Data Distribution
US20190158890A1 (en) Methods and apparatus to reduce audio streaming latency between audio and gigabit ethernet subsystems
WO2014092551A1 (en) System and method for optimal memory management between cpu and fpga unit
US8769255B2 (en) Information processing system and method of executing firmware
JP2025100826A (en) Intra-server data transfer device, intra-server data transfer method and program
JP2010044799A (en) Application manager with variable managing instruction set
US6247071B1 (en) System for receiving an isochronous data stream at a computer using a main memory buffer
CN107888876B (en) In-vehicle infotainment system and method of early image display
KR20060085670A (en) Micro Control Architecture for System On Chip
JP2004504773A (en) Communication control method and apparatus
WO2020122024A1 (en) Network interface card, computer, circuit information rewriting method and program
CN107770623A (en) A kind of upgrade method and device of system for TV set software
CN107770567B (en) A kind of method and apparatus of live streaming
CN114339349A (en) Display device, data transmission method and storage medium
US20050143843A1 (en) Command pacing
CN115904602B (en) Multi-window projection method and system applied to multi-operating system and vehicle

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 200880132423.1

Country of ref document: CN

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 08879072

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 08879072

Country of ref document: EP

Kind code of ref document: A1