基于PC机的视频点播机顶盒的设计

发布者:未来画家最新更新时间:2008-04-07 来源: 电子技术应用关键字:软件  传输  显示  主机  压缩  编程  驱动  设计 手机看文章 扫描二维码
随时随地手机看文章

  机顶盒是视频点播(VOD)系统的终端设备,是用户与VOD服务器之间的智能接口。它用于视频业务的接收和用户请求的发送。因此,VOD系统中的数据传输被分成两个通路:下行通路用于把视频信息传送到用户;上行通路用于把用户的点播需求传送到发送端。基于PC机的机顶盒是将机顶盒的功能做成普通的PC插卡形式,利用计算机实现视频点播的所有功能。这样做有几点好处:

1 充分利用微机的软、硬件资源,从而降低了用户终端设备的成本;
2 兼容性好,可适应不同的接入网和不同类型的业务;
3 软件维护和升级方便,适应未来发展;
4 可设计易操作、美观和基于Windows95/98的用户界面。

  该机顶盒由两块普通PC机插卡构成,它们分别完成下行数据的接收和上行数据的发送。上行数据的发送由一块内置MODEM卡通过电话线完成,下行数据的接收则由另一块插卡通过CATV网实现。

  本文研究的主要内容是在微机上如何实现下行数据的正常接收。为此,提出了一种以数字调谐器、最新QAM数字解调芯片和高性能MPEG-2解复用芯片为核心的机顶盒设计方案。在机顶盒的硬件设计中,采用了先进的I2C总线技术、QAM数字解调技术、MPEG-2解复用技术、FIFO存储器技术以及通用的ISA总线接口技术;在软件设计中,采用了VC++编程技术和Windows95/98环境下利用VToolsD开发虚拟设备驱动程序即VxD的技术。
  
  1 机顶盒的硬件设计

  机顶盒的主要功能是为人们提供一个访问VOD业务的途径,为合法用户提供一个友好的界面,其接收部分的总体硬件框图如图1所示。



  在图1中,来自CATV网的下行数据经数字调谐电路实现频点选择,某一频点上的数据流中包含了十几路节目的数据,这些数据在发送端经过了MPEG-2标准的系统复用。该电路输出中频信号,然后由模/数转换电路输出数字信号,作为QAM解调电路的输入。上述过程中的频点选择和QAM解调均由微处理器经I2C总线控制。

  QAM解调后的数字信号送到MPEG-2解复用电路,实现通道选择,即选出用户点播的一路节目。该节目的数据为MPEG-1标准的压缩形式。为了节约成本和简化电路,并考虑到目前微机的速度很高、且为Windows95操作系统,本设计中不采用硬件解压缩方式,而是将数据经主机接口电路以DMA传输方式传送到计算机的内存中,用软件方法对该路节目进行实时解压缩处理并播放出来。

  上述整个电路可分为几个相对独立的模块,下面分别对它们进行介绍。

  1.1 数字调谐电路1

  数字调谐电路实际上就是一个高频头,它的作用是接收来自CATV网的下行数据,根据微处理器的指令,实现频点选择(与模拟电视相似)。某一选定频点的数据流中仍含有多路节目的数字信号,每个用户只收看某一频点中的一路节目。频点选择由微处理器通过I2C总线控制。数字调谐电路与后级电路的连接如图2所示。

  1.2 A/D视频转换电路

  高频头输出的模拟中频信号的幅值已满足A/D转换器的输入要求,因此将它直接送给A/D转换器数字化,以供后续的数字电路进一步处理。该模/数转换器采用Philips公司的芯片,它将模拟视频信号转换成二进制编码的数字视频信号。A/D转换电路的连接如图2所示。



  1.3 QAM解调电路

  QAM解调电路是机顶盒接收部分的重点和难点之一,芯片的选型十分重要。它的作用是将A/D视频转换电路输出的数字信号进行QAM解调和其它处理后输出基带数字信号。

  QAM解调电路采用最新QAM数字解调芯片。该芯片的功能强大,全数字化处理,芯片外部不需要反馈环路,支持16、32、64、128和256QAM的解调。为了实现芯片的强大功能,其内部有大批的控制/配置寄存器供用户编程使用,这些寄存器可通过I2C总线或并行总线进行读或写操作。芯片输出纠错后的MPEG-2传输流。

  上述介绍的调谐电路、A/D视频转换电路和QAM解调电路组成了一个相对独立的整体,它们的应用电路框图如图2所示。

  1.4 I2C总线控制电路3~4

  在上述电路中,调谐电路的频点选择、QAM解调芯片内部一系列寄存器的读写操作均由微处理器通过I2C总线控制。而微处理器芯片内没有I2C总线接口 因此需要设计I2C总线控制电路。该电路由I2C 总线控制器芯片PCF8584构成,它可用作大多数并行总线与串行的I2C总线之间进行双向通信的接口。 利用它可以很方便地将微处理器接入I2C总线实现芯片间的数据传输和控制。

  I2C总线控制电路与其它电路的连接方法如图3所示。



  1.5 MPEG-2 系统解复用电路1~25

  在视频点播系统中,发送端的节目源是基于MPEG-1标准的数据流,它只适合相对无误差的环境,如CD-ROM、VCD的传输。为了适应有噪声或损耗介质信道的传输,需将多路不同节目的MPEG-1格式的码流按照MPEG-2标准进行传输复用。因此,在接收端需要相应的MPEG-2解复用电路的支持。

  MPEG-2解复用电路从微处理器接收指令实现通道选择,即从调谐电路已选定的频点中选择用户点播的一路节目,满足用户的点播要求。

  MPEG-2解复用电路采用高性能的MPEG-2系统解复用芯片。该芯片在接收到MPEG-2系统传输码流后,对传输层和PES(Packetized Elementary Stream)层作解复用处理,提供某一路的码流缓冲,其输出送到主机接口电路,其应用电路框图如图3所示。

  1.6 计算机的接口电路设计6~8

  本设计中,计算机的接口电路有两大任务:一是微处理器通过该接口电路实现对调谐电路、QAM解调电路、MPEG-2解复用电路的控制与访问,以便完成多路节目数据流的分接;二是接口电路将解复用电路输出的一路节目数据传送到计算机的内存中,供微机对其进行软件解压缩并播放出来。

  由图3可知,微处理器对调谐电路和QAM解调电路的访问与控制是通过I2C总线控制器芯片PCF8584实现的,而微处理器对解复用电路的访问与控制则直接通过解复用芯片的微处理器接口实现。此外,解复用芯片输出的一路节目数据还需通过接口电路传送到微机的内存中。为了适合实时、高速或突发数据的传输,接口电路采用DMA传输技术,并利用FIFO(First In First Out)存储器作为数据缓冲电路。由于FIFO具有一定的存储容量,能起到缓冲作用,故能很好地解决外设与计算机之间的速率匹配问题。此外,当外设进行连续的数据传输时,主机的DMA传输可以间歇地进行,从而能够让主机有时间执行数据处理和显示等后台任务。

  2 机顶盒的软件设计

  在机顶盒中,软件设计主要包括三个部分:各芯片的读写操作。接口软件编程和用户界面的设计。数字调谐电路、QAM解调电路、I2C总线控制器和MPEG-2解复用电路的芯片中都含有大量的控制和配置寄存器供用户进行读写操作,以便预置有关的参数或对某些参数进行控制。这需要通过编程来实现。机顶盒的用户界面是一个典型的WINDOWS界面,机顶盒的所有功能(包括解压缩)都通过它来完成,因此可采用VC++进行编程。接口软件的功能是把插卡接收到的数据以DMA方式传送到计算机的内存中,要实现Windows95/98下DMA方式的数据传输,需要编写虚拟设备驱动程序。这是整个软件设计中的重点和难点。限于篇幅下面简单说明虚拟设备驱动程序的设计思想。

  DMA虚拟设备驱动程序采用VtoolsD编写,可由Win32应用程序动态装载。驱动程序负责将外设中的数据以DMA方式传送到内存中的两块缓冲区里,应用程序分别从这两块缓冲区轮流读取数据。实现方法如下:

  驱动程序的入口是一个被称作Control Dispatcher的函数,它负责处理与该VxD相关的系统控制信息,并调用相应的处理例程。一个可被动态装载的VxD应能处理以下消息:SYS_DYNAMIC_DEVICE_INIT(用于VxD的初始化阶段);SYS_DYNAMIC_DEVICE_EXIT(用于VxD的退出阶段);W32_DEVICEIOCONTROL(用于应用程序和VxD的通信)。当Win32应用程序利用函数CreateFile来动态装载VxD时,系统发送SYS_DYNAMIC_DEVICE_INIT消息,Control Dispatcher调用该消息的处理例程OnSysDynamicDeviceInit进行VxD的初始化设置,例如DMA控制器的初始化、分配内存空间、中断控制器的初始化等。当Win32应用程序调用DeviceIoControl 函数向VxD发送数据时,Control Dispatcher调用该消息的处理例程OnW32DeviceIoControl此时可以接收从应用程序发来的消息如主窗口句柄等。当Win32应用程序关闭该VxD或Win32应用程序本身被关闭时,Control Dispatcher调用该消息的处理例程OnSysDynamicDeviceExit,此时可以做一些清理性工作,如释放DMA缓冲区等。

  每当一次DMA传输结束便产生一个硬件中断。在VxD的中断处理例程中,对DMA控制器重新进行初始化(即改变DMA缓冲区的首地址使之指向另一个缓冲区,以便开始下一次DMA传输),同时向Win32应用程序发送消息通知它读取内存中的数据。

  3 实验结果

  将上述机顶盒电路做成一块PC插卡用于接收下行数据。首先对电路中的各个模块分别进行了多次调试和试验。然后在此基础上,利用试验用的节目源(即按照MPEG-2标准进行传输复用后的多个不同节目的码流)对整个电路进行了联调。它可以实现频点选择、QAM解调和通道选择,从而得到用户所要点播的某一路节目。该路节目的数据流格式遵从MEPG-1标准,速率约为1.4Mb/s。最后利用编写好的虚拟设备驱动程序通过接口电路成功地将该路节目传送到计算机的内存中。编写一个用于调试的Win32应用程序,读取内存中的节目数据并形成一个数据文件后由金山影霸播放,效果良好。

  在本文已有工作的基础上,下一步工作将从以下几个方面着手:

(1)软件解压缩播放程序的编程。
(2)软件解压缩播放程序与虚拟设备驱动程序的通信调试。
(3)用户界面的设计和编程。

  参考文献
1 Philips Semiconductors.INTEGRATED CIRCUITS DATA SHEET. Product specification 1996.
2 Philips Semiconductors.INTEGRATED CIRCUITS DATA SHEET. Preliminary specification1996.
3 Philips Semiconductors.The I2C-bus and how to use it.Philips document ordering number 9398 393 40011.
4 Philips Semiconductors.PCF8584- I2C-bus controller.Product specification 1994.
5 黎洪松.数字视频技术及其应用.北京:清华大学出版社,1997.
6 王换招等.PC系列微机总线.西安:西安交通大学出版社1995.
7 路友荣.PC系列微机接口扩展卡设计.成都:成都科技大学出版社1994
8 董渭清王换招.高档微机接口技术及应用.西安:西安交通大学出版社1995.
9 Karen Hazzah.Writing Windows VxDs and Device Drivers.R&D Publications Inc.1995.
10 Vireo Software.VtoolsD 帮助文件. 1995~1996

关键字:软件  传输  显示  主机  压缩  编程  驱动  设计 引用地址:基于PC机的视频点播机顶盒的设计

上一篇:数字电视与模拟电视兼容接收的方案
下一篇:用于IPTV机顶盒的电路保护技术

推荐阅读最新更新时间:2024-05-03 19:18

STM32 UART串口驱动程序
示例1.通过UART1进行数据发送 UART 1 的初始化 /** * @brief UART1 Initialise. * @param None. * @retval None. */ void UART1_Init(void) { GPIO_InitTypeDef GPIO_InitStructure; USART_InitTypeDef USART_InitStructure; RCC_APB2PeriphClockCmd(RCC_APB2Periph_USART1, ENABLE); //UART1 选择对应UART的RCC时钟 RCC_APB2PeriphClockCmd(RCC_APB2Periph_GP
[单片机]
单芯片蓝牙无线键盘的设计及方案对比分析
  基于微软蓝牙技术的键盘的整个系统基本上只有一个关键器件——Broadcom蓝牙控制器。这款IC兼有蓝牙收发器和键盘控制器双重功能,还集成了键盘扫描接口,负责处理与按键有关的阵列信息。但基于该IC的无线键盘有一个显著缺憾,若短间时内没使用,再次敲击按键时,不会立刻就有响应。虽然除了Broadcom的方案,也还有其它可选方案,但这些可选方面也有各自局限所在。   撰写有关设计揭密的文章时,我通常会挑出被拆解系统的关键器件供应商,并由此与相关供应商的工程师讨论各种设计问题。不过,对基于微软蓝牙技术的键盘的拆解却显得与众不同,因为整个系统基本上只有一个关键器件——Broadcom蓝牙控制器。   Broadcom的初衷是使键盘(和
[网络通信]
英伟达发布Isaac软件开发工具包 加速自动机器人研发
据外媒报道,英伟达宣布将拓展其Isaac平台,旨在打造机器人应用。Isaac软件研发套件(SDK)收录了数据库、驾驶员、应用程序接口及其他工具。SDK可为制造商、研发机构、初创企业及研发人员节省数百小时,因为该套件可将人工智能添加到下一代机器人,用于执行感知、导航及操控任务。 该套件还提供框架,用于管控机器人架构内的通信及数据传输,使得新增传感器、管控传感器数据及实时控制执行装置变得更为容易。 SDK还包含了Isaac Sim,该模拟环境可用于实时环境下自动机器人的研发、测试及训练,该模拟器所采用的训练用算法可被部署到英伟达Jetson,可被用于人工智能边缘运算,将机器人推向人们的生活中。 Isaac Sim使机器训练变得更简单
[机器人]
STM32利用DMA 和FSMC驱动ISSI 25616 外部SRAM 成功
去年把STM32的DMA试了一下,好像用过了M2M模式,测试时从STM32 自带的FLASH to RAM,使用的32bit宽度数据,测试成功,然后又用了DMA给DAC送数据,产生方波,三角波,正弦波等。 用过DMA后就用了FSMC驱动9325TFT,由于当时不知道液晶上标的引脚有错误,一直不成功,郁闷好久,最后才知道,参考了一下网上的程序,成功用了CPU 加FSMC驱动了TFT,不用IO口模拟。 既然TFT驱动成功了,然后我就很想用FSMC总线驱动板子上的ISSI 25616 的512Kb外部SRAM,但是经过我的很多尝试,都是失败的,找了很多原因都不行,一直不能理解,而且很郁闷。这个学期开学,换了一个板子,一下就成功了,可能以
[单片机]
压缩空气流量计的特点有哪些?
压缩空气流量计是一种常用的流量测量仪器,具有传统孔板、涡轮、涡街等流量计无可动部件的优点,被广泛用于多个领域中。压缩空气流量计的特点是什么呢?下面小编就来具体介绍一下,希望可以帮助到大家。 压缩空气流量计的特点 ①振动大。并非每一台空气流量计都安装在振动大的场所。但是安装在压缩厂房和鼓风机房的空气流量计都得考虑振动问题。这种振动主要来自压缩机和鼓风机,机器的振动通过空气管道或风管可以传到很远的地方。其中振动最大的要数往复式压缩机,大型往复式压缩机运行时产生的振动往往带动厂房和周围地面一起振动,对相关空气流量计的准确而可靠的运行带来威胁。它引发杠杆式差压变送器支点移动而使仪表产生示值漂移。振动导致涡街流量传感器产生同振动频率
[测试测量]
一种用于电动汽车电机驱动的智能功率模块
越来越多的领先电动汽车制造商正在将碳化硅( SiC MOSFET )功率场效应管 用于牵引 逆变器 ,其中有些还采用了非传统的分立器件封装。但是,目前很难找到针对电动机驱动而优化的 SiC 功率模块来适配不同的应用。更进一步,将快速开关的 SiC 功率模块与栅极驱动器、去耦及水冷等整合为驱动总成,还要面对一些新的挑战。因此,经过完全优化和高度集成的智能功率模块解决方案,可以为客户节省大量的开发时间和工程资源。 本文介绍了一种用于电动汽车电机驱动、或电力逆变器的新型三相 1200V SiC MOSFET 智能功率模块(IPM)。该 IPM 提供了一种多合一的解决方案,含有栅极驱动器和三相全桥 SiC MOSFET 功率电路,可用
[汽车电子]
一种用于电动汽车电机<font color='red'>驱动</font>的智能功率模块
三星Galaxy Note 10邀请函开箱设计
7月2日上午,三星宣布将于8月7日(北京时间是8月8日凌晨4点)在纽约举办新品发布会,正式发布年度旗舰Galaxy Note 10。   与此同时,三星也对媒体寄出了此次发布会邀请函,有媒体开箱后大呼惊喜,那么就让我们一起来看一看三星Note 10发布会邀请函究竟玩出了什么花吧。   三星Note 10发布会邀请函是一个长方形的盒子,外表类似古朴的羊皮纸色,上贴本次官方邀请函主视觉图。   打开盒子后,盒子就会突然响起来,开始播放一段三星移动事业部副总经理录制的一段欢迎音频,原来盒子内部安装了光线感应器,一旦打开就会开始播放音频。   除了声音之外,黑子内部的主题是非常中世纪的的羽毛笔,外带附赠的5个笔头以及一瓶墨水
[手机便携]
三星Galaxy Note 10邀请函开箱<font color='red'>设计</font>
木林森:Mini LED是LED产业升级方向 公司产品已成功切入LED显示屏领域
近日,木林森在接受机构调研时表示,公司看好 Mini LED 的发展前景,认为这是 LED 行业的产业升级方向。在 Mini LED 领域,公司成功开发了全新的 Mini LED RGB 显示模组制造技术,同时积累了多项与之匹配的发明技术。 目前,木林森积极与下游客户开展商务洽谈,已成功切入下游的 LED 显示屏领域,背光领域正在业务对接。后续公司将根据下游客户的订单情况,充分发挥公司的技术优势,规模优势和成本控制优势,巩固公司在行业的领先地位。 同时,木林森对植物照明业务前景充满信心,植物照明也是公司重点发展的新业务领域。目前,公司的植物照明产品主要致力于解决西部地区草畜不平衡,冬季牧草短缺等问题,预计对公司经营业绩有积极影响。
[手机便携]
小广播
最新家用电子文章
换一换 更多 相关热搜器件

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 电视相关 白色家电 数字家庭 PC互联网 数码影像 维修拆解 综合资讯 其他技术 论坛

词云: 1 2 3 4 5 6 7 8 9 10

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved