DSP硬件驱动程序开发方法研究
需积分: 17 53 浏览量
更新于2024-09-06
收藏 277KB PDF 举报
"开发DSP硬件驱动程序的一种方法"
本文主要介绍了一种开发TI公司DSP片内及片外硬件外设驱动程序的方法,并以C5000DSP的McBSP/DMA及TMS320C5509的USB驱动程序开发为具体对象。该方法通过建立硬件驱动程序的开发模式,旨在解决传统DSP程序开发中所存在的可移植性和通用性不高的问题。
1. 传统DSP程序开发的缺陷
传统的DSP程序开发包含两方面程序:即配置、控制、中断等管理DSP片内外设、接口的硬件相关程序和基于应用的算法程序。这样的系统结构,应用程序与硬件相关程序紧密的结合一起,限制了程序的可移植性和通用性,软件开发总要从零开始,存在诸多重复工作。一旦硬件平台有变化,往往与硬件程序捆绑一起的应用程序也需改动,代码的维护性和可移植性均不高。
2. 基于DSP/BIOS的IOM硬件驱动
在CCS应用环境中集成的实时操作系统DSP/BI-OS中,硬件驱动程序最终以函数库的形式被封装起来,应用程序可不关心底层硬件外设的具体操作,通过调用DSP/BIOS相关的标准API与不同外设接口。IOM(I/OMini-driver)是DSP/BIOS的设备驱动模块的一种接口方式,配置硬件设备驱动模块为IOM模式可在DSP/BIOS的图形化界面(GUI)中方便完成。
IOM模式将设备驱动程序分为两个层次:上一层是“类”驱动程序(classdriver),这部分程序负责对存储缓冲区管理、由DSP/BIOS各类标准的API函数与应用程序接口,与设备硬件无关。下一层是“迷你”驱动程序(mini-driver),这部分程序集成了实际硬件相关的代码。
IOM接口将“迷你”驱动程序与“类”驱动程序联系一起,包括定义I/O数据包(IOM_Packet)以提交“迷你”驱动程序读写,定义功能函数包(IOM_Fxns)完成相关初始化,打开或关闭通道,提交I/O数据传输与控制等任务,确保“迷你”驱动程序与“类”驱动程序运行协调一致。
3. “类”驱动程序的种类
“类”驱动程序直接在应用程序中出现,并且根据数据输入/输出的处理方式不同,有相应“类”驱动程序。主要是3种:流输入输出型“类”驱动(SIO)、管道型“类”驱动(PIO)和消息队列型“类”驱动(MQ)。
4. LabVIEW在DSP硬件驱动程序开发中的应用
LabVIEW是一种基于图形化编程的开发环境,能够快速开发和测试DSP硬件驱动程序。通过使用LabVIEW,可以快速生成DSP硬件驱动程序的代码,并且可以与DSP/BIOS集成,实现高效的硬件驱动程序开发。
本文介绍了一种开发TI公司DSP片内及片外硬件外设驱动程序的方法,该方法通过建立硬件驱动程序的开发模式,解决了传统DSP程序开发中所存在的可移植性和通用性不高的问题,并且可以与LabVIEW集成,实现高效的硬件驱动程序开发。
2009-10-11 上传
2019-05-21 上传
2021-09-25 上传
2021-09-07 上传
2021-09-06 上传
2021-09-06 上传
2021-08-29 上传
2021-07-13 上传
2021-07-13 上传
weixin_38743602
- 粉丝: 396
- 资源: 2万+
最新资源
- StarModAPI: StarMade 模组开发的Java API工具包
- PHP疫情上报管理系统开发与数据库实现详解
- 中秋节特献:明月祝福Flash动画素材
- Java GUI界面RPi-kee_Pilot:RPi-kee专用控制工具
- 电脑端APK信息提取工具APK Messenger功能介绍
- 探索矩阵连乘算法在C++中的应用
- Airflow教程:入门到工作流程创建
- MIP在Matlab中实现黑白图像处理的开源解决方案
- 图像切割感知分组框架:Matlab中的PG-framework实现
- 计算机科学中的经典算法与应用场景解析
- MiniZinc 编译器:高效解决离散优化问题
- MATLAB工具用于测量静态接触角的开源代码解析
- Python网络服务器项目合作指南
- 使用Matlab实现基础水族馆鱼类跟踪的代码解析
- vagga:基于Rust的用户空间容器化开发工具
- PPAP: 多语言支持的PHP邮政地址解析器项目