当前位置:首页 > 智能硬件 > 智能硬件
[导读]介绍了一种基于USB2.0接口的MPEG视频卡的设计方案及其软硬件设计方法。

 作者Email:  lql0607@163.com

    摘  要: 本文介绍了一种基于USB2.0接口的MPEG视频卡的设计方案及其软硬件设计方法。

    关键词 :USB; 视频卡; MPEG; WDM

    通用串行总线(Universal Serial Bus,即USB)以其方便的即插即用和热插拔特性,以及较高的传输速率,成为PC领域广为应用的外设连接规范。目前,国内外普遍采用的是USB1.1规范,它支持两种传输速率:1.5Mbps和12Mbps,主要应用在低速传输要求的场合。2000年发布的USB2.0规范提供了480Mbs的传输速率,以满足更快的数据传输要求。

    为了使MPEG视频卡快速地向PC机传送大量的数据,我们在设计MPEG视频卡与PC机的接口时采用USB2.0技术。对USB的设计与开发,我们是基于CYPRESS公司的EZ-USB FX2系列的CY7C68013芯片及其FX2开发包。

    1、 硬件设计

    传统的采用PCI接口的MPEG视频卡, 不但占用了有限的PCI插槽,安装不方便,而且不支持热插拔和即插即用。所以,在本设计中,我们选用USB2.0接口芯片对传统的MPEG视频卡进行了改进。

    改进后的USB2.0接口的方案如图1所示。

   

    该USB2.0接口的MPEG视频卡的工作原理为:音视频信号经AK4550音频处理芯片及AA7113视频处理芯片进行A/D转换,将模拟信号转换成8bit的PCM格式的数字信号,传入SZ1510音视频压缩采集芯片进行处理,将编码调制PCM格式的数据转化为符合格式MPEG-1的混合影视文件,最后MPEG-1数据经USB接口芯片送给PC机作进一步的处理,如存储、显示等。

    设计中,我们选用的USB接口芯片是EZ-USB FX2 系列的CY7C68013芯片。该芯片是针对USB2.0的,而且和USB1.1兼容,它支持两种传输速率:全速(Full_speed)12Mbps和高速(High_speed)480Mbps,它不支持低速(Low_speed)1.5Mbps。该芯片的内部结构如图2所示。

    CY7C68013-128AC内部集成了一个增强的8051内核,它既与标准的8051兼容,又有诸多的改进:最高工作频率48MHZ,一个指令周期只需4个时钟周期,比标准的8051平均提高了2.5倍;2个UARTS端口;3个定时/记数器;扩展的中断系统及其更多I/O口等。CY7C68013内部集成的USB2.0的SIE能完成大部分USB2.0协议的处理工作,减少了用户对繁杂的USB协议的处理。另外,用户在开发时,可以利用GPIF和FIFO方式实现与高速外围设备之间的逻辑连接,并进行高速数据的传输。在该改进方案中,我们选用的是GPIF方式,实现和Z1510之间的通信。

    2、 软件设计

    USB 软件设计包括三方面的工作:固件(Fireware)设计,驱动程序设计和主机端应用程序的设计。

    (1) 固件设计

    设计中,我们考虑到MPEG视频卡要求快速地持续地传送大量数据,并对数据的完整性要求不太高,我们采用ISO传输方式。另外,我们让CY7C68013工作在GPIF模式下的FIFO Read方式,最多可以传输4G byte(WORDWIDE=0)或word(WORDWIDE=1)。外设的数据由于不需8051的处理,我们采用自动打包的方式(AUTOIN=1),直接从FIFO到SIE,这样有利于提高传输速率。其主要实现代码如下:

void  TD_Init( )
{
CPUCS = 0X01;       file://CLKSPD[1:0]=10; for 48MHz operation.
GpifInit( );
   ……
SYNCDELAY;
EP6CFG = 0XDA;     file://端点配置: 同步IN方式、缓冲大小1024字节
SYNCDELAY;
FIFORESET = 0X80;    // activate NAK_ALL to avoid race conditions
SYNCDELAY;
FIFORESET = 0X06;    file://reset, FIFO 6
SYNCDELAY;
FIFORESET = 0X00;    file://deactivate NAK_ALL

SYNCDELAY;
EP6FIFOCFG = 0X0D;   file://wordwide=1
SYNCDELAY;
……
}

    (2) 驱动程序设计

    在WINDOWS平台下,USB 驱动程序由三部分组成:USB设备驱动程序,USB总线驱动程序和USB主控制器驱动程序,它们必须遵循WIN32驱动程序模型(WDM)。其中,WINDOWS操作系统已经提供了处于驱动程序栈底的USB总线驱动程序和USB主控制器驱动程序。而USB设备驱动程序由设备开发者编写,它通过向USB总线驱动程序发送包含URB(USB  Request Block)的IRP(I/O Request Packet),来实现USB外设之间的信息交换。当主机应用程序要对USB设备进行I/O操作时,它调用Windows API函数对Win32子系统进行Win32调用,由I/O管理器将此请求构造成一个合适的IRP,并把它传递给USB设备驱动程序。USB设备驱动程序接受到这个IRP后,根据IRP中包含的具体操作代码,构造响应的URB并把它放到一个新IRP中,然后把此IRP传递到USB总线驱动程序,USB总线驱动程序根据IRP中所包含的URB执行响应的操作,并把操作结果通过IRP返还给USB设备驱动程序。USB设备驱动程序接受到此IRP后,将操作结果通过IRP返还I/O管理器。最后,I/O管理器将此IRP中操作结果返还给应用程序,至此应用程序对USB设备的一次I/O操作完成。

    开发USB设备驱动程序,可采用Numega公司的开发包Driver Works和 Microsoft公司的2000DDK,并以VC++6.0作为辅助开发环境。Driver Works提供的驱动向导,,可根据用户的需要,自动生成代码框架。减少了开发的难度,缩短了开发的周期。

    在CYPRESS公司的EZ-USB FX2开发包中,有一个通用的驱动程序,该程序可不加修改经DDK编译后直接使用。在本设计中,由于时间关系,我们采用的就是这个通用驱动程序(GPD)。

    (3) 应用程序设计

    USB主机应用程序是计算机中完成特定功能的程序,其关键是实现从USB 外设读取或发送特定数量的数据,USB标准设备请求和特定的命令等。另外,可以对数据做进一步的处理,如:存储、显示、快速傅立叶变换等。在WINDOWS 2000下,我们所使用的应用程序开发工具是VC++6.0。

    3、 结束语

    该卡是对传统的PCI接口的MPEG视频卡的改进,它支持热插拔和即插即用。由于采用USB2.0接口,其传输速率也高于后者,满足了数据高速传输的要求,解决了USB1.1存在的传输瓶颈。相信随着各大电脑主板商对USB2.0的支持,USB2.0必将在PC机应用的各个领域得到广泛的应用。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: 驱动电源

在工业自动化蓬勃发展的当下,工业电机作为核心动力设备,其驱动电源的性能直接关系到整个系统的稳定性和可靠性。其中,反电动势抑制与过流保护是驱动电源设计中至关重要的两个环节,集成化方案的设计成为提升电机驱动性能的关键。

关键字: 工业电机 驱动电源

LED 驱动电源作为 LED 照明系统的 “心脏”,其稳定性直接决定了整个照明设备的使用寿命。然而,在实际应用中,LED 驱动电源易损坏的问题却十分常见,不仅增加了维护成本,还影响了用户体验。要解决这一问题,需从设计、生...

关键字: 驱动电源 照明系统 散热

根据LED驱动电源的公式,电感内电流波动大小和电感值成反比,输出纹波和输出电容值成反比。所以加大电感值和输出电容值可以减小纹波。

关键字: LED 设计 驱动电源

电动汽车(EV)作为新能源汽车的重要代表,正逐渐成为全球汽车产业的重要发展方向。电动汽车的核心技术之一是电机驱动控制系统,而绝缘栅双极型晶体管(IGBT)作为电机驱动系统中的关键元件,其性能直接影响到电动汽车的动力性能和...

关键字: 电动汽车 新能源 驱动电源

在现代城市建设中,街道及停车场照明作为基础设施的重要组成部分,其质量和效率直接关系到城市的公共安全、居民生活质量和能源利用效率。随着科技的进步,高亮度白光发光二极管(LED)因其独特的优势逐渐取代传统光源,成为大功率区域...

关键字: 发光二极管 驱动电源 LED

LED通用照明设计工程师会遇到许多挑战,如功率密度、功率因数校正(PFC)、空间受限和可靠性等。

关键字: LED 驱动电源 功率因数校正

在LED照明技术日益普及的今天,LED驱动电源的电磁干扰(EMI)问题成为了一个不可忽视的挑战。电磁干扰不仅会影响LED灯具的正常工作,还可能对周围电子设备造成不利影响,甚至引发系统故障。因此,采取有效的硬件措施来解决L...

关键字: LED照明技术 电磁干扰 驱动电源

开关电源具有效率高的特性,而且开关电源的变压器体积比串联稳压型电源的要小得多,电源电路比较整洁,整机重量也有所下降,所以,现在的LED驱动电源

关键字: LED 驱动电源 开关电源

LED驱动电源是把电源供应转换为特定的电压电流以驱动LED发光的电压转换器,通常情况下:LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: LED 隧道灯 驱动电源
关闭