0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于QAM数字解调芯片和MPEG-2实现机顶盒的设计

电子设计 来源:华中理工大学 作者:温新华 2021-03-16 14:17 次阅读

机顶盒是视频点播(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所示。

基于QAM数字解调芯片和MPEG-2实现机顶盒的设计

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

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

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

1.1 数字调谐电路

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

1.2 A/D视频转换电路

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

1.3 QAM解调电路1~2?

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?

在视频点播系统中,发送端的节目源是基于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)用户界面的设计和编程。

责任编辑:gt

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 机顶盒
    +关注

    关注

    4

    文章

    390

    浏览量

    54125
  • 芯片
    +关注

    关注

    455

    文章

    50732

    浏览量

    423277
  • 接口
    +关注

    关注

    33

    文章

    8580

    浏览量

    151046
收藏 人收藏

    评论

    相关推荐

    电视机顶盒与流媒体设备的区别

    数字电视的信号,并将其解码成可以在电视上播放的格式。 频道选择 :用户可以通过电视机顶盒选择不同的电视频道,享受直播电视节目。 节目指南 :大多数电视机顶盒提供电子节目指南(EPG),方便用户查看电视节目的时间表和信息。 录
    的头像 发表于 12-16 15:40 108次阅读

    电视机顶盒信号不好怎么办 电视机顶盒更新固件的方法

    当电视机顶盒信号不好时,可以尝试以下方法来改善信号质量: 检查连接线的稳固性 : 确认电视与机顶盒之间的连接线是否插紧,避免松动导致的信号丢失。 检查连接线是否损坏,如有损坏,请更换新的连接线
    的头像 发表于 12-16 15:38 285次阅读

    电视机顶盒连接电视的方法 电视机顶盒常见问题及解决办法

    ) 遥控器(电视机顶盒附带) 2. 连接电源 将电视机顶盒的电源适配器插入电源插座,并确保电视机顶盒已经接通电源。 3. 连接线缆 HDMI连接 :找到电视机和电视
    的头像 发表于 12-16 15:33 439次阅读

    电视机顶盒与智能电视的比较 电视机顶盒有哪些功能

    一、电视机顶盒与智能电视的基本定义 电视机顶盒(Set-Top Box,STB)是一种连接电视机与外部信号源的设备,它可以接收和解码数字电视信号,将信号转换为电视机可以显示的格式。电视机顶盒
    的头像 发表于 12-16 15:31 296次阅读

    九联科技中标中国移动智能机顶盒产品集中采购项目

    日前,中国移动2024年至2026年智能机顶盒产品集中采购(公开采购部分)项目公布了中标候选人。九联科技凭借深厚的技术实力、优质的产品性能和卓越的服务能力,成功中标2个产品标包(包1:4K机顶盒约为
    的头像 发表于 12-11 11:46 270次阅读

    汤诚科技机顶盒5V降压DCDC、音频驱动芯片解决方案

    汤诚科技主营音频功放芯片、电源管理芯片、MOS,在机顶盒应用上产品线物料丰富、性能优异、品质优良、价格有优势,有多款5V降压DCDC、音频驱动芯片可供终端工程师选型。 随着科技的发展,
    的头像 发表于 04-23 10:18 713次阅读
    汤诚科技<b class='flag-5'>机顶盒</b>5V降压DCDC、音频驱动<b class='flag-5'>芯片</b>解决方案

    用于数字机顶盒的电源管理IC TPS652x数据表

    电子发烧友网站提供《用于数字机顶盒的电源管理IC TPS652x数据表.pdf》资料免费下载
    发表于 04-09 10:36 0次下载
    用于<b class='flag-5'>数字</b><b class='flag-5'>机顶盒</b>的电源管理IC TPS652x数据表

    用于数字机顶盒的电源管理IC TPS652x数据表

    电子发烧友网站提供《用于数字机顶盒的电源管理IC TPS652x数据表.pdf》资料免费下载
    发表于 03-06 14:03 0次下载
    用于<b class='flag-5'>数字</b><b class='flag-5'>机顶盒</b>的电源管理IC TPS652x数据表

    应用在机顶盒遥控器中的2.4GHz无线芯片

    机顶盒遥控器是用于控制机顶盒,进而控制电视机的遥控器。以机顶盒遥控器为例,其遥控器按钮由前后两部分组成,前一部分按钮是用来代替电视机遥控器的,而后一部分按钮则是用于控制机顶盒的按钮。
    的头像 发表于 02-29 09:48 872次阅读
    应用在<b class='flag-5'>机顶盒</b>遥控器中的2.4GHz无线<b class='flag-5'>芯片</b>

    求助机顶盒配置

    这台机顶盒配置是什么配置?求助
    发表于 02-23 22:02

    iptv机顶盒怎么连接 iptv机顶盒和网络机顶盒有什么区别

    和其他互联网内容。在本文中,我们将讨论IPTV机顶盒的连接方式以及与传统的网络机顶盒之间的区别。 IPTV机顶盒的连接方式可以通过有线或无线网络实现。首先,我们来看一下有线连接的方法。
    的头像 发表于 02-05 13:40 2371次阅读

    机顶盒怎么选择信号源 机顶盒反应特别慢怎么办

    机顶盒是一种用于接收和解码电视信号的设备,正常情况下,用户可以通过遥控器或菜单来选择信号源。然而,有时机顶盒的反应可能会变得缓慢,影响到我们的使用体验。本文将详细介绍如何选择信号源以及如何解决机顶盒
    的头像 发表于 01-31 11:44 3745次阅读

    机顶盒怎么选 机顶盒是干什么用的

    机顶盒是一种通过无线电波或有线电视信号接收和解码数字电视节目的装置,它可以将电视信号转换成数字信号,并将信号传输到电视上。机顶盒通常由硬件和软件两部分组成。
    的头像 发表于 01-25 10:53 2380次阅读

    iptv机顶盒能从路由器接线吗 iptv机顶盒怎么连接

    下面是连接IPTV机顶盒的几种常见方法: 有线连接: a. 确保你的路由器具有可用的LAN端口。大多数家庭路由器都配备了多个LAN端口,其中一个是用来连接网络设备的。 b. 使用以太网电缆将IPTV
    的头像 发表于 01-19 16:02 6859次阅读

    iptv机顶盒和网络机顶盒有什么区别

    IPTV机顶盒和网络机顶盒是两种常见的电视盒子,用于将互联网上的媒体内容传输到电视上。尽管它们有一些相似之处,但也存在一些重要的区别。本文将详细介绍这两种机顶盒的区别,并讨论它们在功能、性能、内容
    的头像 发表于 01-17 09:29 3494次阅读