基于VW2005的MPEG-4音视频压缩卡的设计
[10-10 20:38:44] 来源:http://www.88dzw.com 电子制作 阅读:8891次
文章摘要:图1 压缩卡原理框图图2 系统驱动程序软件结构图3 压缩卡程序流程图Windows下VW2005设备驱动程序设计驱动程序总体设计 设备驱动程序软件结构如图2所示。应用程序由用户根据不同的应用场合来编写,它只与Vweb USB驱动程序通信,而不与硬件内部的固件或微码通信。在Windows下,应用程序只需三个函数与驱动程序通信:CreatFile()用来打开一个基于VW2005的板卡;CloseHandle用来关闭一个基于VW2005的板卡;DeviceIoControl用来对VW2005板卡进行各种控制和设置。为了支持VW2005芯片的运行,Vweb公司提供了用于系统设计的USB驱动AP
基于VW2005的MPEG-4音视频压缩卡的设计,标签:电子小制作,http://www.88dzw.com图1 压缩卡原理框图
图2 系统驱动程序软件结构
图3 压缩卡程序流程图
Windows下VW2005设备驱动程序设计
驱动程序总体设计
设备驱动程序软件结构如图2所示。应用程序由用户根据不同的应用场合来编写,它只与Vweb USB驱动程序通信,而不与硬件内部的固件或微码通信。在Windows下,应用程序只需三个函数与驱动程序通信:CreatFile()用来打开一个基于VW2005的板卡;CloseHandle用来关闭一个基于VW2005的板卡;DeviceIoControl用来对VW2005板卡进行各种控制和设置。为了支持VW2005芯片的运行,Vweb公司提供了用于系统设计的USB驱动API、USB驱动、芯片级API、固件及微码。上电/复位后,固件从ROM中导入SDRAM,VW2005的RISC处理器有片内高速缓存(如dmem)用于执行固件程序,微码下载到特殊的内部RISC引擎,每个RISC引擎都有片内RAM和高速缓冲,用于存储和执行写入内部的微码。
主机与VW2005的通信
VW2005内部的编码存储器(encoder SDRAM)中有两个双端口、128字节的共享存储区,作为主机与VW2005的通信媒介。
用于主机到VW2005通信的128字节的共享存储区(以下简称host_VW_SM)位于encoder SDRAM中地址0x3F1800处。Host_VW_SM格式如表1所示。
表1 主机到VW2005的共享存储区格式
表2 VW2005到主机的共享存储区格式
VW2005在Firmware ReadyCode中写入0x0A00,表示准备接收命令;CMD为命令码,分别是读数据(CMD=1)、发IOCTL码(CMD=2)、写数据(CMD=3)、打开命令(CMD=4)和关闭命令(CMD=5);Int Flag为中断标识,Int Flag=1则VW2005执行完命令后产生一个中断,Int Flag=0则不产生中断;Device Handle由打开命令从固件中获得;Paremeters为附加参数。
用于VW2005到主机通信的128字节的共享存储区(以下简称VW_host_SM)位于encoder SDRAM中地址0x3F1880处。VW_host_SM格式如表2所示。
ACK/NACK的含义是:如果Int Flag=1,命令CMD执行成功后则为ACK,失败则为NACK,并将错误代码保存在Return Code字段。Return Code的含义是:无错误产生则为0,有错误产生则为错误代码。其它参数与host_VW_SM类似,不再赘述。
信号灯
由于共享存储区是临界资源,所以必须提供一种机制,用以保证主机和VW2005使用它们时是互斥的。为此,VW2005分别给host_VW_SM和VW_host_SM提供了两个硬件信号灯,分别由寄存器REG_INT1和REG_INT2的最低位实现。驱动程序通过REG_INT1检查固件是否为来自主机的下一个命令作好准备,通过REG_INT2告知固件主机已处理完成前一个命令。VW2005为信号灯定义了两种操作:
写操作:向REG_INT1或REG_INT2的最低位写入1,释放共享存储区。
读操作:返回REG_INT1或REG_INT2的最低位的值,同时将该位清零。
压缩卡程序流程图
- 上一篇:单片机按键识别方法之一
《基于VW2005的MPEG-4音视频压缩卡的设计》相关文章
- › 基于VW2005的MPEG-4音视频压缩卡的设计
- 在百度中搜索相关文章:基于VW2005的MPEG-4音视频压缩卡的设计
- 在谷歌中搜索相关文章:基于VW2005的MPEG-4音视频压缩卡的设计
- 在soso中搜索相关文章:基于VW2005的MPEG-4音视频压缩卡的设计
- 在搜狗中搜索相关文章:基于VW2005的MPEG-4音视频压缩卡的设计