CN1188790C - 调制解调器的控制方法及设备 - Google Patents

调制解调器的控制方法及设备 Download PDF

Info

Publication number
CN1188790C
CN1188790C CNB988118262A CN98811826A CN1188790C CN 1188790 C CN1188790 C CN 1188790C CN B988118262 A CNB988118262 A CN B988118262A CN 98811826 A CN98811826 A CN 98811826A CN 1188790 C CN1188790 C CN 1188790C
Authority
CN
China
Prior art keywords
data pattern
device driver
order
data
message
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.)
Expired - Lifetime
Application number
CNB988118262A
Other languages
English (en)
Other versions
CN1280685A (zh
Inventor
J·梅里克
J·-B·G·M·伯奎
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.)
Thomson Licensing SAS
Original Assignee
Canal Plus SA
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 Canal Plus SA filed Critical Canal Plus SA
Publication of CN1280685A publication Critical patent/CN1280685A/zh
Application granted granted Critical
Publication of CN1188790C publication Critical patent/CN1188790C/zh
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/10Program control for peripheral devices
    • G06F13/102Program control for peripheral devices where the programme performs an interfacing function, e.g. device driver
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/382Information transfer, e.g. on bus using universal interface adapter
    • G06F13/385Information transfer, e.g. on bus using universal interface adapter for adaptation of a particular data processing system to different peripheral devices

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Communication Control (AREA)
  • Ultra Sonic Daignosis Equipment (AREA)
  • Spectrometry And Color Measurement (AREA)
  • Selective Calling Equipment (AREA)
  • Interface Circuits In Exchanges (AREA)
  • Maintenance And Management Of Digital Transmission (AREA)
  • Circuits Of Receivers In General (AREA)
  • Electronic Switches (AREA)
  • Information Transfer Systems (AREA)

Abstract

一种设备驱动器用于在数字广播系统中的接收机/解码器。该接收机/解码器包括多个连到外部单元的接口和用于接入的逻辑驱动器设备。一个用于控制调制解调器接入的设备驱动器包括用于接收消息的缓冲存储器,用于保存数据模式的控制存储器,和用于控制设备驱动器和消息流的逻辑单元。该逻辑单元包括一个用于将保存在控制存储器中的事件,肯定的确认,否定的确认数据模式与保存在缓冲存储器中的消息末尾进行匹配比较的比较器。

Description

调制解调器的控制方法及设备
技术领域
本发明涉及调制解调器,更具体地,涉及调制解调器的远程控制。在数字传输系统的接收机/解调器的上下文中特别但非限制性地描述了一个在将应用程序接入物理设备中的特殊应用。
背景技术
这里所用的术语“接收机/解调器”可指用于接收编码或为编码信号,例如,可能是由一些其他装置广播或发射的电视和/或无线电信号,的接收机。术语还可以指用于将所接收的信号解码的解码器。这种接收机/解码器的实施例可以包括用于将所接收信号解码的,与接收机集成在,例如“机顶盒”,中的解码器,诸如与物理分离的接收机相结合工作的解码器,或包括附加功能,诸如万维网浏览器(webbrowser),视频记录器,或电视的解码器。
主要是用于广播电视信号数字传输系统,特殊但非限制性的卫星电视系统的到来已经打开了将这种系统用于其他目的的可能性。其中一个目的是提供与终端用户的交互。
如这里所用的,术语“数字传输系统”包括任何用于传输或广播例如主要为音视频或多媒体数字信号的任何系统。在本发明特别对于广播数字电视系统可用的同时,本发明还可用于多媒体互联网应用的固定电信网络,可用于闭路电路电视,等。术语“数字电视系统”包括例如,任何卫星,陆上,电缆和其他系统。
发明内容
本发明发现在广播数字电视系统中的特定应用,其中,所接收的信号通过一个接收机来到接收机/解调器,然后进入电视机。该接收机/解调器(还被称为机顶盒或STB)将一个压缩的MPEG-类型信号解码为用于电视机的电视信号。它可以由一个远程控制器手机通过一个在接收机/解调器中的接口来控制。
提供所述交互性的一种方式是运行在电视信号通过它被接收的接收机/解调器上的一个应用程序。我们希望可以使得各种应用以一种透明方式与各种物理设备来连通。本申请的一个共同未决申请PCT/EP97/02115和PCT/EP97/02116描述了其中一个或多个应用可以通过机顶盒(STB)下载并与在STB中的诸如串行接口和智能卡阅读器的物理设备通过对于每个设备的设备驱动器和一个总的设备管理器来连通的系统。
根据本发明,它已提出为机顶盒提供与诸如调制解调器,串行信道,并行信道,一个MPEG(压缩和编码的视频信号)信道,刷卡读卡器等的不同信号信道相连接的能力。机顶盒包括一个虚拟机,该虚拟机包括一个运行期引擎。虚拟机被连接到设备管理器,该设备管理器依次又经由设备和设备管理器连接到各个信道的物理接口上。
术语MPEG指由国际标准组织工作组“运动图像专家组”所开发的数据传输标准,具体地,而非限制性地,指为数字电视应用所开发和在ISO13818-1,ISO13818-2,ISO13818-3和ISO13818-4中所陈述的MPEG-2标准。在本发明申请的上下文中,该术语包括可应用与数字数据传输领域的MPEG格式的所有变型,改进或发展。
如上所述,一个信道优选为一个调制解调器。本发明的主要目的是提供对这种调制解调器的改进的控制。这可以通过提供一个用于控制该调制解调器的改进的设备驱动器来实现。为此目的,在设备与设备驱动器之间的任何区别的精确特性都不重要,而在此使用的术语“设备驱动器”应被解释为包括在硬件和一个应用程序之间的任何形式的接口,除非上下文另外要求。
根据本发明,这里配置了一个用于控制调制解调器和与之连通的设备驱动器,包括一个用于接收和保存来自调制解调器的消息和缓存,一个用于保存控制参数的控制存储器,和一个用于控制设备驱动器和消息流的逻辑电路,其中逻辑电路包括一个比较器,用于将保存在控制存储器中的数据模式(pattern)与保存在缓存中的消息进行匹配比较以产生一个被发送到连接于设备驱动器的设备管理器的信号。
设备管理器通常被配置来控制多个设备驱动器,并在设备驱动器和一个或多个应用程序之间传送消息,但术语“设备管理器”意欲包含控制该设备驱动器的任何实体;它可以控制应用程序本身。本发明更明显的特征将通过随后的发明详述和权利要求变得更清楚。
该装置最优选地作为在例如对于在我们的共同未决申请PCT/EP97/02106-2117中所述的数字传输系统的接收机/解调器中的设备驱动器来实现。在这种实现方式中,该设备驱动器可以在一个经由设备管理器来提供意欲控制设备驱动器的方便和灵活的配置的应用程序的控制下工作。本申请优选地以一个解释语言来运行而该设备驱动器优选地是被编译的。
优选地,比较器将所保存的数据模式与预定最终长度的消息进行比较。
数据模式可以是多种类型的,而这可以有多个相同类型的数据模式。这种数据模式类型可以包括Event,ACK(肯定的确认),NACK(否定的确认),所产生的信号指示所匹配的数据模式类型。
该设备驱动器可以被配置来通过将信号加到通过调制解调器接收的消息上来发送信号到设备管理器。指令可以调用(Call)的形式在设备驱动器和设备管理器之间传输,该调用可以设置在设备驱动器,发送信号和数据到设备驱动器中的IOs以及发送数据模式检测或消息接收或传输问题到设备管理器的Event中的参数。调用指令的一个形式包括至少一个用于定义一个或多个将被比较器搜索的数据模式设置指令。
这里优选地有3个子类型的用于定义将要被搜索的数据模式的数据模式设置指令,一个数据模式设置指令对应每一个数据模式类型。这或至少一个数据模式设置指令可被配置来定义多个经被匹配的数据模式,每个数据模式具有一个将基于相应数据模式的检测而被产生的有关事件信号。
将被搜索的数据模式可以保存在控制存储器的相应子区域。可选地,这些将被搜索的数据模式可以保存在控制存储器的单个连续区域。
在一个实施例中,基于多个匹配的产生,只有最后一个匹配起作用。可选地,基于多个匹配的产生,该类型根据在不同类型的匹配之间的预定优先级序列来指示。
设备驱动器的功能可以在硬件中实现,例如在一个专用集成电路中实现;这可以增加操作速度。优选地,然而至少一些设备驱动器以软件实现,优选地,通过运行应用程序的处理装置来运行;这允许了更大的灵活性,要求较少的组件,并允许设备驱动器更容易地更新。
本发明延伸地涉及一种通过使用包括缓冲存储器和控制存储器的设备驱动器来控制一个调制解调器和与之连通的方法,所述方法包括步骤:
接收来自调制解调器的消息和并将其保存在所述缓存中;
将控制参数保存在所述控制存储器中,和
将保存在控制存储器中的数据模式与保存在缓存中的消息相比以产生一个信号,用以发送给连接到设备驱动器的设备管理器。
任何上述特征可以相互组合为任何合适的组合。装置特征可以适用于方法方面,反之亦然。
附图说明
现在将参照附图,纯粹以举例方式,描述本发明的优选特征。
图1为该接收机/解码器的接口的原理示意图;
图2为接收机/解码器的功能性框图;
图3显示了本设备驱动器的一般逻辑组成结构;
图4更详细地显示了本设备驱动器的数据模式管理方面的逻辑组成结构;
图5显示了消息结构和存储器。
具体实施方式
接收机/解码器基础
为有助于理解本设备驱动器,其上运行设备驱动器的优选平台,将首先简要描述我们的数字传输接收机/解码器。
参照图1,其中显示了用于其中将要安装一个本实施例的设备驱动器的数字交互式电视系统中的一个接收机/解码器2020或机顶盒。合适的数字交互式电视系统可以在我们的共同未决申请PCT/EP97/02106-02117中发现,该共同未决申请将作为参考在此引用。为易于参考,在前述说明书中详细描述的部分将用在那些说明书中使用的参考标号来指示。
如在前述说明书中详细描述的,参考图1,接收机/解码器2020包括几个接口;具体地,用于MPEG信号流的调谐器4028,一个串行接口4030,一个并行接口4032,和两个阅读器4036,其中一个用于系统的智能卡组成部分,一个用于银行卡(用于付费和家庭银行事件)。接收机/解码器还包括一个通过调制解调返回信道4002到电视信号制作者的接口4034,这样,用户可以将优先级等指示返回电视信号(节目)制作者。该接收机还包括一个运行期引擎(Run-Time-Engine)4008,一个设备管理器4068和多个运行一个或多个应用程序4056的设备4062和设备驱动器(见图2)。
为了说明的目的,一个应用程序是一段用于优选地控制接收机/解码器2020的高级功能的计算机代码。例如,当端用户将一个远端控制器的焦点指定在一个在电视机2022的屏幕上见到的按钮对象上并按下确认键,则运行与该按钮有关的指令序列。
一个交互式应用程序提供菜单并在端用户的请求下执行这里并提供与应用程序有关的数据。应用程序可以是驻留程序,即,保存在接收机/解码器2020的ROM(或闪存或其他非易失性存储器中),或广播和下载到接收机/解码器2020的RAM或闪存中。
在前述申请中详细描述的应用程序的一些例子有:
一个初始化应用程序,是模块的适用集合,使得接收机/解码器2020可以立即在MPEG-2环境中运行。
一个启动应用程序,它运行任何应用程序,或是下载的或是驻留的,在接收机/解码器2020上运行。
一个程序向导应用程序,它是一个给出关于程序完整信息的交互式应用程序。
一个计次收费应用程序,它是一个可在数字电视的每一PPV信道使用的交互式服务,使得端用户可以购买当前事件。
一个PC下载应用程序使得终端用户可以使用PC下载应用程序来下载软件。
一个杂志浏览器应用程序,包括一个循环视频图象广播,其中终端用户通过屏上按钮来导航。
一个电视购物应用程序,使得商品的销售发送可以传输到接收机/解码器2020并显示在电视机2022上,使得用户可以选择特殊的项目进行购买。
应用程序保存在接收机/解码器2020的存储器位置并表示为源文件。源文件包括图形对象描述单元文件,可变块单元文件,指令序列文件,应用文件和数据文件,如前述说明书中详细描述的。
在MPEG数据流中,每一模块包括一组MPEG表。每一MPEG表可以格式化为许多段。在MPEG数据流中,每一段具有一个多至4k字节的“大小”。对于经由串行和并行端口的数据传输,例如,模块类似地被分为多个表和段,段的大小随传输介质而变化。
模块在MPBG数据流中以在各种类型的数据流,例如,视频数据流,音频数据流和图文电视数据流中通常为188字节的数据包形式传输。每一数据包之前有一个13比特的数据包标识符(PID),每一数据包有一PID在MPEG数据流中传输。一个程序位图表(PMT表)包括一个不同数据流列表并根据各自的PID定义每一数据流的内容。除了程序,某个PID可以被分配给应用程序或包含于数据流中的其他数据,PID可以使用PMT表来标识。
解码器包含被分为一个RAM容量,一个FLASH(闪存)容量和一个ROM容量的存储器,但该物理结构与逻辑结构不同。该存储器可进一步被分为与各种接口有关的存储器容量。由此看来,存储器可以被认为是硬件的一部分;由另一点看来,存储器可以被认为是支持或包含除硬件以外的整个系统。
系统被认为是集中在形成虚拟机4007的一部分的运行期引擎4008上。它在一端(“高级”端)连接于应用程序,并在另一端(“低级端”)经各种下述的中间逻辑单元连接到接收机/解码器硬件4061。该接收机/解码器硬件以被认为是包括上述的各种端口或接口(用于手机2026的接口2030,MPEG流接口4028,串行接口4030,并行接口4032,到读卡器4036的接口,到调制解调后备信道4002的接口)。
参照图2,各种应用程序4057被连接到单元4007;一些更常使用的应用程序可以更长或更短永久地驻留在系统中,如4057所示,其他的应用程序可以由例如,MPEG流或由其他所要求的端口下载到系统中。
除了运行期引擎4008以外,单元4007还包括一些包括工具箱的驻留库函数4006。库包括在C语言中由运行期引擎4008所使用的杂集函数4006。这些函数包括数据处理,诸如数据结构的压缩,扩展或比较,画线,等。库4006还包括关于在接收机/解码器2020中固件4061的信息,诸如硬件和软件版本号和可用RAM空间,和当下载一个新设备4062时所使用的函数。函数可以下载到库中,并被保存在闪存或RAM存储器中。
运行期引擎4008被连接到一个设备管理器4068,该设备管理器被连接到一组设备4062,它们被连接到设备驱动器,该设备驱动器依次被连接到端口或接口上。从广义上说,设备驱动器可以认为是定义一个逻辑接口,使得两个不同的设备驱动器可以连接到一个公共的物理端口上。一个设备通常被连接到多于一个的设备驱动器上;如果一个设备被连接到单个设备驱动器上,该设备通常被涉及为包括用于连通的整个功能,使得免除了使用分离的设备驱动器的需要。某些设备可以相互连通。
如下所述,这有三种由设备4062到运行期引擎的连通形式:通过变元,缓存,和通过一组事件队列的事件。
接收机/解码器2020的每种功能被表现为一个设备4062。设备可以是本地或远端的。本地设备4064包括智能卡,SCART连接器信号,调制解调器,串行和并行接口,MPBG视频和音频播放器和一个MPEG段和表提取器。远端设备4066,在远端位置工作,与本地设备不同的是,必须由系统管理机构或设计者确定一个端口或过程,而不是由设备和设备驱动器提供和由接收机/解码器制造商来设计。
当产生一个新设备4062是,它可以通过由广播中心下载相关的应用程序来安装在已有的接收机/解码器2020处。该下载过程可以在接收机/解码器2020中由应用程序4056来执行,该应用程序检查硬件和软件版本,如果正确,装载表示新设备4062的软件模决并请求一个库4006的程序来将新设备码安装在固件(在闪存)中。这样可以在接收机/解码器2020中提供新功能的灵活和安全的安装,而不影响软件的其他部分。
设备管理器4068是在应用程序4056和接收机/解码器2020的特殊接口中间的公共软件接口。该设备管理器4068控制到设备4062的访问,声明对不希望的事件的接收,并管理分享内存。
运行期引擎4008在微处理器和一个公共应用编程接口的控制下工作。它们被安装在每一个接收机/解码器2020中,使得由应用程序观点看,所有的接收机/解码器2020都是相同的。
运行期引擎4008在接收机/解码器2020上运行应用程序4056。它运行交互式应用程序4056并由接收机/解码器2020外端接收事件,显示图形和文本,调用设备用于服务和使用连接到运行期引擎4008上的库4006函数用于特殊运算。
运行期引擎4008是一个安装在每一接收机/解码器2020中的可执行码,并包括用于解释和运行应用程序的解释器。该运行期引擎4008适用于任何操作系统,包括单任务操作系统(诸如MS-DOS)。该运行期引擎4008基于处理序列单元(它可以获取各种事件,诸如按动按键,以实施各种动作),并包括它自身的调度程序以管理来自不同硬件接口的事件队列。它还可以管理图形和文本的显示。处理序列单元包括一系列动作组。每一事件使得处理序列单元与事件特征无关地由其当前动作组移动到另一动作组,并执行新动作组的动作。
运行期引擎4008包括将应用程序4056加载和下载到接收机/解码器存储器中的码加载器。只有需要的码才被加载到RAM或闪存中,以确保最优的使用。所下载的数据由一个鉴别机制来验证以防止对一个应用程序4056的任何改动或对任何未经鉴别的应用程序的执行。运行期引擎4008还包括一个解压缩器。当一个应用程序代码(以中间码的形式)被压缩以节省空间并加快由MPEG-2传输流或经由内建的接收机/解码器数据模式的下载过程,代码必须在它被加载入RAM之前被解压缩。运行期引擎4008还包括一个用于解释应用程序代码以更新各种可变值并确定状态变化的解释器,和一个误差检测器。
在使用任何设备4062的服务之前,一个程序(诸如一个应用程序指令序列)必须宣布为一个“客户”,也即,一个到设备4062或设备管理器4068的逻辑访问-路径。管理器给予该客户一个客户号码,该号码是相对于到设备的所有访问的。一个设备4062可以具有几个客户,对于每一设备4062的客户数量是具体依赖于设备4062的类型的。一个客户由一个程序“设备:开路信道”(“Device:OpenChannel”)引入设备4062的。该程序将一个客户号码分配给客户。一个客户可以由一个程序“设备:闭路号码”(“Device:CloseChannel”)从设备管理器4068客户列表中提取出。
由设备管理器4068所提供的到设备4062的访问可以是同步或异步的。对于同步访问,使用程序“设备:调用”。这是一个即时可用的存取数据的装置或不公开等待所希望响应的功能性。对于异步访问,使用一个程序“设备:I/O”。这是包括等待一个响应,例如,扫描调谐器频率以发现多路复用或由MPEG流取回一个表的存取数据的装置。当所请求的结果可用时,一个事件放在运行期引擎的队列中以通知它的到来。进一步的程序“设备:事件”提供了管理不希望事件的装置。
如上所述,运行期引擎的主环连接到各种处理序列单元上,并当主环遇到一个适合事件时,控制被暂时传输到一个处理序列单元。
从而,可以看到,基础系统提供一个具有在使得应用程序与各种设备连通的相当灵活性的平台。
调制解调器设备驱动器
各种功能实现的精确细节,和在硬件和软件之间的分布是用于实现程序的选择的问题并将在下面进行详述。然而,应注意到,可以执行在现有设备驱动器中所要求的操作的专用集成电路是商业市场上可买到和易于设计的,这些可以作为硬件加速器的基础使用,或被优化地改进以产生一个专用硬件加速器,以实现各种所要求的操作,从而降低了运行软件所要求的功耗。然而,如果有充足的处理功率可用,则所要求的操作可以在软件中实现。该设备驱动器可以被考虑包括一系列可单独访问的功能单元,每一功能单元在此被称为“命令”。
每一命令可以在设备管理器4068的控制之下通过上述三个标准程序中的一个应用程序连接,该三个标准程序对于其他设备也是公用的。信息可以借助参数表在一个应用程序和设备之间通过。为便于参考,三个基本程序简述如下:
1)设备:调用(Device:Call),该过程可由一个应用程序易于执行同步命令或数据。应用程序的执行被暂停直至当设备驱动器的操作完成时控制返回时;这使得操作必须以严格的序列顺序来执行以便易于控制。
2)设备:输入/输出(Devic:I/O),该过程允许异步操作。也即,一个应用程序可以发送一个将由设备驱动器执行的数据传输或特殊功能的请求,而应用程序的执行可以在数据传输或功能由设备驱动器执行的同时继续。
3)设备:事件(Device:Event),事件捕捉功能使得事件可以由设备通知一个应用程序,对于应用程序响应事件而与代码无关地采取的特殊动作,该应用程序在事件被通知时执行;应用程序有效地被中断。事件可以进行优先级划分。事件可以用于通知在接口上发生的事件,诸如总线复位,或提供对异步命令的监视,例如通过通知所请求的数据传输的完成。
本设备驱动器如方框400(图3)所示,包括一个逻辑单元501,一个控制存储器502,和一个缓冲存储器503。这两个存储器在逻辑上是分离的,但都形成相同物理存储器的一部分(更具体地说,缓冲存储器将形成RAM存储器部分,而控制存储器将形成RAM或闪存部分)。设备驱动器连接到图示的设备管理器4068和调制解调器550。每一个命令将形成逻辑单元501的一部分,并可在控制器和/或缓存部分上操作。
广义上说,狭义上调制和解调制信号的调制解调功能由可以包含在接口550或连于其上的一个调制解调单元来实施。流经接口的信息的控制和管理,除了那些狭义的调制解调功能以外,由设备驱动器500来执行。
如上所述,在设备/设备驱动器和设备管理器4068之间的连通由3类过程来实施:Call,IO,和Event。对于由设备驱动器500所使用的过程,Call被用于将来自应用程序的各种参数经由设备管理器发送给设备驱动器,IO被用于将来自应用程序的命令经由设备管理器发送给设备驱动器,而Event被用于将来自设备驱动器的消息经设备管理器发送给一个应用程序。
现在将描述在一个设备中提供的实现本发明的命令。每一个命令可以由一个应用程序通过将该命令的标识符作为一个参数经上述三个标准过程中的一个过程传递来访问。并非下面所述的所有命令都需要被提供,这些命令的功能可以变更。虽然命令可以独立地提供或变更,如同希望的,某些协同优点可从所述命令提供的组合功能性中自然产生。
下面将以每一命令所提供的特征和功能结合可选的和优选特征的形式来描述命令。通过所提供的信息和说明,这些特征的实际实现是本领域技术人员可直接导出的,精确的细节留给实现者。举例来说,每一命令可以软件来实现,优选地,以C编程语言来编写,并且优选地被编译来在用于运行应用程序的处理器上运行;然而,设备驱动器可以在分离的处理器上运行,一些或所有命令可以由专用硬件来实现。Call和IO命令可以通过在保存于存储器中的参数表中设置数值来将信息通知或将参数传递回一个应用程序,其中参数表中数值的地址也传递到设备处。
更具体地,所用过程或命令如下:
设备:调用(Device:Call)
设置:设置缓存大小,定时器延时。
连通设置:设置数据大小(5到8比特),奇偶校验,传输率。
字符设置:设置暂停字符和延时。
控制设置:使能/禁止信号发送到远距离设备。
数据模式设置:设置要被搜索的数据模式。
设备:输入输出(Devic:IO)
命令:无解释地发送一条命令到设备驱动器。
发送:发送数据到设备驱动器。
动作:无解释地发送一个命令到设备驱动器
断开:断开设备驱动器。
设备:事件(Device:Event)
接收:通知对一个消息的接收。
中断:通知一个传输问题。
一个过程还包括用于报告返回和(除了对于事件:中断过程)一个调用报告的错误代码,用于由设备驱动器报告返回设备管理器。而且,一个Call或IO过程包含一个其中正发送信息将被发现的存储器地址。
大多数命令的功能是广泛通用的。然而,本系统功耗一个特殊命令,调用命令数据模式设置(Call command Pattern set)。该命令定义了将由逻辑单元501搜索的一个或多个数据模式。该命令包括一个存储器地址,而该存储器包括,在该地址的起始,一系列数据模式。(更具体地,在该存储器的第一位置处包括数据模式数目,随后由各个数据模式,而在存储器中的每一数据模式包括一个给出该数据模式长度的标头)。
一般地,3种不同类型的数据模式可以被设置以产生Event,ACK(肯定的确认),和NACKs(否定的确认)。当然在相同命令中可能包括所有三类数据模式,其中每一数据模式的标头表示该数据模式的类型。然而,优选地是对于三类数据模式使用3种命令的子形式。从而,可能被要求来检测调制解调器对命令的可靠接收的ACK和NACK数据模式优选地使用专有命令来设置,而其他所有数据模式用于触发一个事件,每一数据模式被分配一个号码使得数据模式可以被区别。这些命令在控制存储器502中设置一个存储区510(图4;该存储区具有3个区段,分别包括Event,ACK和NACK数据模式。逻辑单元501包括一个连接到该存储区的比较器单元511。
该存储区510可以包括由3个数据模式设置命令指定的存储器区域。在此,存储区的3个区段可以在物理上处于不同的存储区域。比较器单元511必须保存3个区段的起始地址,并获得到各个数据模式的访问,使用数据模式号码(保存在每个区段的起始处)和各个数据模式的长度以确定各个数据模式的精确位置并依次获得到所要求的每一数据模式的访问。可选地,比较器单元511可以通过将存储区510设置为在预定位置的一个数据模式表来初始化存储器。
当接收到一个消息,它被传递到在缓冲存储器503中的一个缓存中。该存储器被分为多个缓存512,使得消息可占据多于一个的缓存;然而,消息空间对于任何单独的消息是逻辑连续的。如果正在实施数据模式匹配,则比较器511搜索消息的最后32个字符以与保存在存储区510中的任何数据模式进行匹配比较。
如果发现匹配,则匹配的类型(Event,ACK,或NACK)被写入保存在缓存中的消息的标头中,和/或设备驱动器采取一些适合的动作。
应注意的是,ACK和NACK数据模式检测可被用于检测来自调制解调器的所期望的响应,例如,当命令被发送时,而调制解调器正处于断线状态。其他来自调制解调器的信号被与一个单独的数据模式列表进行匹配,并被用于触发事件;为此,ACK和NACK数据模式优选地独立于响应于不希望事件或其他来自调制解调器的消息的数据模式列表设置来实施。
以此方式,一个应用程序可与任何各种调制解调器相连通。例如,许多调制解调器通常可与一个指令序列和响应的标准相一致,诸如Hayes标准,但可以具有另外的可以产生专有响应序列的特征。在这种情形中,ACK和NACK数据模式将被设置为一个标准数据模式,而响应于另外特征的响应序列可以分配给事件信号。
图5显示来了驻留在缓冲存储器503中的一个消息520。该消息包括一个标头521和一个正文522。本情形中的该消息在物理上被分为两个缓存512和512′。比较器520实施在消息正文522的最后32字符区域523上的数据模式匹配(也即,搜索与保存在存储区510中的数据模式的匹配)。任何发现的匹配特性被插入在缓冲存储区中的消息标头521中。
可能以两种方式产生多于1个的匹配。第一,可能产生相同类型的两个数据模式(在消息的最后32个字符的不同区域处)。该双匹配可被忽略,也即,被看为单个匹配。第二,可能产生不同类型的两个匹配(再次,在消息的最后32个字符的不同区域处)。根据环境情况,比较器511可被配置来根据一个在不同匹配类型之间的预定优先级序列,或哪一个数据模式更接近消息的结尾来指示匹配类型。
在命令模式中,也即,当调制解调器数据模式被设置时,这一技术可被用于发送一个命令消息到设备驱动器。消息被设备驱动器解释并不通过接口发送到,例如,数据服务器。对于每一发送的命令,设备驱动器搜索在返回消息中的数据模式并据此来响应设备驱动器。
在此模式中,还可通过接口接收一个消息,而无需发送一个命令。如果检测到一个振铃电压,则这可能发生。在那种情形中,设备驱动器还应搜索在数据数据模式列表中的一个数据模式。
在线模式中,调制解调器连接到一个数据服务器并可能由该服务器接收消息。设备驱动器搜索在由数据服务器接收的最后32个字符中的一个数据模式。
上述命令和数据仅仅是示例性的,而本发明可以各种方式实现,具体地,一些命令可以与其他执行相同功能的命令合并,或一些命令在简化的实现中可以忽略。每一种功能的硬件和软件实现可以在命令之间以及在单个命令中自由地混合。
应容易理解地,由硬件所实施的功能,计算机软件,和类似的是基于或使用电和类似信号来实施的。软件实现可以保存在ROM中,或可保存或插入闪存中。
应理解的是,本发明在上面仅仅是以举例的方式进行描述,对细节的改动可以在本发明的范围内进行。
说明书中公开的每一细节,和(所期望的)权利要求和附图可以独立地或以任何适合的组合提供。

Claims (24)

1.一种设备驱动器,其用于控制一个调制解调器并与之相通信,该设备驱动器包括用于接收和保存由调制解调器所接收的消息的缓冲存储器,一个用于保存数据模式的控制存储器,和用于控制设备驱动器和消息流的逻辑单元,其中逻辑单元包括一个比较器,该比较器用于将保存在控制存储器中的数据模式与保存在缓冲存储器中的消息相匹配比较以产生一个发送给连接到设备驱动器的设备管理器的信号。
2.如权利要求1的设备驱动器,其中,所述比较器将所保存的数据模式与消息的最后数个字符进行比较。
3.如权利要求1或2的设备驱动器,其中,所述数据模式包含多种类型,并且可以存在多个相同类型的数据模式。
4.如权利要求3的设备驱动器,其中,所述数据模式包括事件(Events),肯定的确认(ACKs),和否定的确认(NACKs)类型,所产生的信号指示所匹配数据模式的类型。
5.如权利要求4的设备驱动器,其中命令以调用(Call),输入输出(IO),事件(Event)的形式在设备驱动器和设备管理器之间传递,调用(Call)命令设置设备驱动器中的参数,输入输出(IO)命令发送控制信号和数据到设备驱动器,事件(Event)命令将对数据模式的检测或消息的接收或传输的故障通知到设备管理器。
6.如权利要求5的设备驱动器,其中,调用(Call)命令的一种形式包括至少一个用于定义一个或多个将由比较器搜索的数据模式的命令数据模式。
7.如权利要求6的设备驱动器,其中,有三种子类的命令数据模式用于定义将被搜索的数据模式,一种命令数据模式对应于每一数据模式类型。
8.如权利要求6或7的设备驱动器,其中,所述至少一种命令数据模式被安排用于定义多个将被匹配的数据模式,每一数据模式具有在检测到所述数据模式时要产生的相关事件信号。
9.如权利要求4到7中任何一个的设备驱动器,其中,要被搜索的数据模式保存在控制存储器的各自子区域中。
10.如权利要求4到7中任何一个的设备驱动器,其中,要被搜索的数据模式保存在控制存储器的单个连续区域中。
11.如权利要求1到2中任何一个的设备驱动器,其中,在出现多个匹配时,只对最后一个匹配起作用。
12.如权利要求1到2中任何一个的设备驱动器,其中,在出现多个匹配时,根据在不同匹配类型之间的预定优先级序列来指示该匹配类型。
13.一种使用设备驱动器来控制一个调制解调器并与该调制解调器相通信的方法,该设备驱动器包括一个缓冲存储器和一个控制存储器,所述方法包括以下步骤:
接收由该调制解调器所接收的消息并将其保存在所述缓冲存储器中;
将数据模式保存在所述控制存储器中,和
将保存在控制存储器中的数据模式与保存在缓冲存储器中的消息相匹配比较以产生一个发送给连接到设备驱动器的设备管理器的信号。
14.如权利要求13的方法,其中所保存的数据模式与消息的最后数个字符进行比较。
15.如权利要求13或14的方法,其中数据模式有多种类型并可以有相同类型的多个数据模式。
16.如权利要求15的方法,其中,所述数据模式包括事件(Events),肯定的确认(ACKs),和否定的确认(NACKs)类型,所产生的信号指示所匹配数据模式的类型。
17.如权利要求16的方法,其中命令以调用(Call),输入输出(IO),事件(Event)的形式在设备驱动器和设备管理器之间传递,调用(Call)命令设置设备驱动器中的参数,输入输出(IO)命令发送控制信号和数据到设备驱动器,事件(Event)命令将对数据模式的检测或消息的接收或传输的故障通知到设备管理器。
18.如权利要求17的方法,其中,调用(Call)命令的一种形式包括至少一个用于定义一个或多个将在控制存储器中搜索的数据模式的命令数据模式。
19.如权利要求18的方法,其中,有三种子类的命令数据模式用于定义将被搜索的数据模式,一种命令数据模式对应于每一数据模式类型。
20.如权利要求18或19的方法,其中,所述至少一种数据模式被安排用于定义多个将被匹配的数据模式,每一数据模式具有在检测到所述数据模式时要产生的相关事件信号。
21.如权利要求18到19中任何一个的方法,其中,要被搜索的数据模式保存在控制存储器的各自子区域中。
22.如权利要求18到19中任何一个的方法,其中,要被搜索的数据模式保存在控制存储器的单个连续区域中。
23.如权利要求13到14中任何一个的方法,其中,在出现多个匹配时,只对最后一个匹配起作用。
24.如权利要求13到14中任何一个的方法,其中,在出现多个匹配时,根据在不同匹配类型之间的预定优先级序列来指示该匹配类型。
CNB988118262A 1997-10-03 1998-10-02 调制解调器的控制方法及设备 Expired - Lifetime CN1188790C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP97402334.3 1997-10-03
EP97402334A EP0913775A1 (en) 1997-10-03 1997-10-03 Modem control

Publications (2)

Publication Number Publication Date
CN1280685A CN1280685A (zh) 2001-01-17
CN1188790C true CN1188790C (zh) 2005-02-09

Family

ID=8229868

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB988118262A Expired - Lifetime CN1188790C (zh) 1997-10-03 1998-10-02 调制解调器的控制方法及设备

Country Status (19)

Country Link
US (1) US6804820B1 (zh)
EP (2) EP0913775A1 (zh)
JP (1) JP4303884B2 (zh)
KR (1) KR100579000B1 (zh)
CN (1) CN1188790C (zh)
AT (1) ATE363686T1 (zh)
AU (1) AU9278198A (zh)
BR (1) BR9812704B1 (zh)
CA (1) CA2304617A1 (zh)
DE (1) DE69837856T2 (zh)
HK (1) HK1030274A1 (zh)
HR (1) HRP20000163A2 (zh)
HU (1) HUP0100547A2 (zh)
IL (1) IL135414A0 (zh)
NO (1) NO20001650L (zh)
PL (1) PL339632A1 (zh)
TR (1) TR200001559T2 (zh)
WO (1) WO1999018513A1 (zh)
ZA (1) ZA988995B (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7120931B1 (en) * 2000-08-31 2006-10-10 Cisco Technology, Inc. System and method for generating filters based on analyzed flow data
US6651111B2 (en) * 2001-02-16 2003-11-18 Microsoft Corporation System and method for managing a serial port
CN100515076C (zh) * 2002-05-31 2009-07-15 安桥株式会社 网络型内容再现系统
US7912999B2 (en) * 2002-07-03 2011-03-22 Freescale Semiconductor, Inc. Buffering method and apparatus for processing digital communication signals
US8499338B1 (en) * 2010-02-16 2013-07-30 Sprint Communications Company L.P. Internet protocol controlled modem for use over a wireless voice network
GB2521412A (en) * 2013-12-18 2015-06-24 Continuumbridge Ltd An apparatus for network bridging

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4484263A (en) * 1981-09-25 1984-11-20 Data General Corporation Communications controller
US4896133A (en) * 1987-02-10 1990-01-23 Davin Computer Corporation Parallel string processor and method for a minicomputer
DE69130154T2 (de) * 1990-12-14 1999-05-20 Sun Microsystems Inc Verfahren und Gerät zur Nachrichtenvermittlung zwischen Prozessen
US5327558A (en) * 1992-04-30 1994-07-05 Motorola, Inc. Method for asynchronous application communication
DE4321776C1 (de) * 1993-06-30 1994-12-08 Siemens Ag Verfahren zum Bilden und Analysieren von informationselementeorientierten Signalisierungsmeldungen in Kommunikationseinrichtungen
US5499364A (en) * 1993-10-14 1996-03-12 Digital Equipment Corporation System and method for optimizing message flows between agents in distributed computations
US6343263B1 (en) * 1994-08-02 2002-01-29 Apple Computer, Inc. Real-time signal processing system for serially transmitted data
EP0788057B1 (en) * 1996-01-31 2003-05-02 Compaq Computer Corporation Computer system with controllerless modem

Also Published As

Publication number Publication date
US6804820B1 (en) 2004-10-12
HK1030274A1 (en) 2001-04-27
TR200001559T2 (tr) 2000-11-21
JP2001519567A (ja) 2001-10-23
HRP20000163A2 (en) 2001-12-31
BR9812704A (pt) 2000-08-22
ZA988995B (en) 1999-05-24
CN1280685A (zh) 2001-01-17
NO20001650D0 (no) 2000-03-30
PL339632A1 (en) 2001-01-02
DE69837856T2 (de) 2008-01-31
EP1019836A1 (en) 2000-07-19
WO1999018513A1 (en) 1999-04-15
EP0913775A1 (en) 1999-05-06
NO20001650L (no) 2000-06-05
BR9812704B1 (pt) 2010-11-16
ATE363686T1 (de) 2007-06-15
IL135414A0 (en) 2001-05-20
HUP0100547A2 (hu) 2001-06-28
AU9278198A (en) 1999-04-27
JP4303884B2 (ja) 2009-07-29
DE69837856D1 (de) 2007-07-12
EP1019836B1 (en) 2007-05-30
CA2304617A1 (en) 1999-04-15
KR20010024391A (ko) 2001-03-26
KR100579000B1 (ko) 2006-05-12

Similar Documents

Publication Publication Date Title
CN109451472B (zh) Android智能设备上多蓝牙芯片的动态管理方法
US20060179465A1 (en) Handling feature availability in a broadcast
CN1277782A (zh) 数字解码器中应用的下载
KR20030094343A (ko) 컨텍스추얼 웹 페이지 시스템 및 방법
CN1372662A (zh) 运行和测试应用程序
JP2005202963A (ja) Javaプログラムの処理速度を向上させるシステム及びその方法
WO2021164177A1 (zh) 播放媒体资源的方法、显示设备及移动终端
RU2181929C2 (ru) Извлечение секций данных из транслируемого потока данных
NZ502917A (en) Driver for MPEG data onto IEEE 1394 bus interface
CN112346692A (zh) 一种投屏数据处理方法、设备及存储介质
CN1254478A (zh) 数据处理系统
US20150370522A1 (en) Display Device And Control Method
WO2005109865A1 (en) A method for realizing embedded digital television service platform
CN1188790C (zh) 调制解调器的控制方法及设备
CN1130631C (zh) 电视或无线电控制系统开发的方法
US20070033239A1 (en) Preloading resources from data carousel of broadcast file system
CN1210955C (zh) 通信系统、发送机、接收机以及应用数据储存描述符的方法
CN1820251A (zh) 用于执行软件应用的方法
CN111314414B (zh) 数据传输方法、装置及系统
CN1242605C (zh) 接收器/解码器及其广播系统
CN103384348A (zh) 一种ginga数字电视中间件在嵌入式数字电视平台上的实现方法
KR100702530B1 (ko) 복수의 사용자를 지원하는 모바일 컨텐츠 실행 방법 및 장치
CN110035284B (zh) 一种stb调试方法及设备
KR20090076228A (ko) 애플리케이션 송수신 방법
CN110913254A (zh) 一种用于将网页视频投送到终端设备的低成本投送方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
ASS Succession or assignment of patent right

Owner name: RCA THOMSON LICENSING CORPORATION

Free format text: FORMER OWNER: CANAL + TECHNOLOGIES SOCIETE ANONYME

Effective date: 20110225

Owner name: CANAL + TECHNOLOGIES SOCIETE ANONYME

Free format text: FORMER OWNER: CANAL + SOCIETE ANONYME

Effective date: 20110225

C41 Transfer of patent application or patent right or utility model
COR Change of bibliographic data

Free format text: CORRECT: ADDRESS; FROM: PARIS, FRANCE TO: BOULOGNE-BILLANCOURT, FRANCE

TR01 Transfer of patent right

Effective date of registration: 20110225

Address after: French Boulogne Billancourt

Patentee after: THOMSON LICENSING S.A.

Address before: Paris France

Patentee before: Thomson Licensing S.A.

Effective date of registration: 20110225

Address after: Paris France

Patentee after: Thomson Licensing S.A.

Address before: Paris France

Patentee before: CANAL+ S.A.

CX01 Expiry of patent term
CX01 Expiry of patent term

Granted publication date: 20050209