下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、多路实时数字音频系统中的pci通信多路实时数字音频系统采纳ti公司的tms320c5402数字信号处理芯片来实现,因为该系列芯片采纳了改进的哈佛结构,拥有专用的硬件乘法器和专为数字信号处理而设计的命令系统,迅速的命令周期和良好的多并行运行特性,使得dsp芯片十分适合于实时数字信号处理,广泛应用于无线通信、语音识别、工业控制、仪器等领域。该系统用tms320c5402芯片外接一个2x4路的ad芯片maxl25ceax实现对多路数字音频的实时处理,然后将处理数据通过pci2040传送到pc机举行后继处理并保存,或从pc机接受指令举行相应操作,实现pc机和dsp之间的数据传送,需要dsp程序、应用程
2、序、驱动程序三者互相协调工作。2 windows管理体系win98体系结构支持4种基本程序:管理程序、win32应用程序、winl6应用程序和dos应用程序,每种程序在不同的执行环境中运行。(1)管理程序在ring0层(核心态)中的庇护模式下运行,所以能拜访和控制实际硬件环境,管理程序是在实际机器上,而不是在虚拟机上运行,在全部构成win98的组件中,惟独vmm和驱动程序在管理程序的环境中执行,可以挺直对硬件举行操作。(2)win32应用程序和winl6应用程序都在ring3层(用户态)的庇护模式下运行,win32应用程序可以拜访4gb的虚拟内存,而winl6应用程序只能拜访16mb的虚拟内存
3、。(3)dos应用程序运行在v86模式下,它也运行在ring3层的拜访级别上,硬件拜访和中断被躲藏和虚拟,该系统编写的是32位应用程序,它运行在虚拟环境之下,它对io端口的查询,对一个内存映射的外围设备的查询以及可能导致传送到虚拟机之外的操作都会被windows捕捉,所以其本身并不能挺直拜访硬件和系统数据,而需要通过驱动程序来完成。即插即用(pnp)是微软公司为了使新的硬件设备越发便利用法而实行的一种策略,pnp设备能够自身识别、自动提出资源要求,并且可以在运行时接受资源分配。该系统开发中的pci就是即插即用的。在即插即用的系统中的配置管理是由配置管理器来控制。配置管理器用法设备节点、设备节点
4、树、注册表来保持数据;配置管理器由枚举器、仲裁器、设备安装器、设备驱动器4个主要软件来工作;配置管理器的工作流程1所示。3 设备内存映射办法尽管驱动程序运行在核心层,但它所见的是平面内存,只能用线性地址举行拜访。全部驱动程序对内存的拜访都必需经过页表将线性地址转换成物理地址。因此,驱动程序在拜访一个特别的内存映射硬件之前,必需先配置页表,保证设备的物理地址与一个线性地址相联系。这个线性地址可以用作指针。驱动程序不能控制页表,它必需调用虚拟机管理器提供的服务。对老式非即插即用设备,只要给出设备内存的物理地址和字节长度,猎取普通在硬件上手动设置,然后调用mapphysto()函数猎取此物理地址的线
5、性地址,就可举行拜访。对即插即用设备,其物理地址可以通过调用函数cm_get_alloc_log_conf()猎取,但由于在windows运行期间,即插即用的物理地址可能转变,而mapphys-tolinear()函数返回的线性地址所对应的物理地址不变,这样就会造成拜访错误。对于物理地址可变的动态配置设备,驱动程序必需将内存映射过程分成3步。(1)用法pagereserve()函数,分配一块线性地址空间。此空间并不和详细的物理地址相关联,仅是线性地址的页表进入项。(2)用法pagecommitphys()函数,将线性地址映射到设备的物理地址,此时对线性地址的操作就是在相应的物理地址之上操作。(
6、3)用法linpagelock()函数,阻挡虚拟内存管理器将这些页交换到磁盘空间,以保证在硬件中断期间,这些地址都是有效的。当设备卸载时,驱动程序可以调用linpageunlock(),pagedecommit(),pagefree()来解除设备的内存映射,这里每一个调用都是上述3步调用的反过程。4 pci配置寄存器拜访按照pci总线规范要求,任何pci设备都必需提供256字节的配置空间,用来完成对设备的安装、配置、引导和设备再定位等功能。在该系统中要求将hpi控制标记和状态寄存器以及hpi控制空间映射到pc机内存,所以必需对pci2040配置寄存中的指令寄存器举行修改,从而实现设备内存映射。
7、这需要通过32位配置地址端口(占用io地址oxocf8oxocfb)和32位配置数据端口(占用io地址oxocfcoxocff)拜访pci配置寄存器。其中位于0xcf8的io端口的寄存器相当于一个地址寄存器,位于0xcfc端口的寄存器相当于数据寄存器。配置数据端口中存放着配置地址端口中的配置地址所指向的内存的内容。配置地址端口寄存器各位的意义见表1。由于pci设备的总线号和pci2040的功能号普通为0,所以只需变幻设备号来寻觅硬件的位置。图2是基于vtoolsd用法vc+6.0详细对pci配置寄存器的拜访程序框图。5 hpi(host port interface)寄存器介绍pci2040桥
8、控制器可便利实现一个pci插槽与4片c54x或c6x系列的dsp之间的通信,它提供了两种数据传输的方式:一是通过hpi口传输,另一种是通过gpbus总线传输。其中gpbus总线传输方式比较容易但传输速率低,通过hpi口的传输可以实现高速的数据通信,所以在该系统中采纳了hpi口传输的通信方式。win98先猎取hpi寄存器的物理地址举行映射,然后用映射得到的线性地址就可以对hpi口举行拜访。(1)hpi控制寄存器(h)。可以被pc机和dsp拜访,它是一个16位的寄存器,其高8位和低8位表示的意义相同,低8位所表示的意义见表2。(2)hpi地址寄存器(hpia)。只可由pc机拜访,寄存器中保存了当前
9、要拜访的dsp的片内存储器地址,它们可以被pc机映射,其映射空间大小为2k。(3)hpi数据寄存器(hpid)。只可由pc机拜访,它的值随hpia变幻而变幻,它保存hpia中地址所指向的dsp内存数据的值。通过对它的读写,可以拜访相应的dsp内存的值,也可以设置成自增方式。这样,每对它读写一次,hpia的数据就自动加1,hpid相应保存内存中下一个16位数据。6 驱动、应用及dsp程序的设计6.1 总体设计思想为实现应用程序和dsp程序在工作中的同步问题,将在dsp与pc机映射的内存区间建立了一个公共标记数据区,用来传送dsp和pc机的工作状态和控制字。设有以下几个公共标记数据区:(1)dsp
10、状态字(16位)。用来标识数据在传送中dsp的工作状态和指令(指令由dsp和pc机商定)。(2)pc机状态字(16位)。用来标识数据传送中pc机的工作状态和指令。(3)数据起始位置字(16位)。用来标识数据传送中,数据存放的起始位置。(4)数据长度字(16位)。用来标识存放数据的长度。(5)频率设置字(16位)。用来控制输入输出频率。(6)保留字空间。用于以后扩展。dsp与pc机之间采纳中断的通信方式,每次中断发送之前,都先拜访以上的这些控制字,这样就为pc机和dsp之间通信的协调带来了无数的便利。整体设计框图3。6.2 应用程序设计应用程序要调用驱动程序来完成两件事,一是猎取dsp采集的数据
11、,二是将自己的数据发送给dsp。应用程序整体功能框架4。应用程序只需通过createfile()函数来加载驱动程序,加载胜利之后,应用程序就可以通过调用devi-ceiocontrol()函数与驱动程序通信。6.3 驱动程序设计驱动程序在系统中起纽带作用,它响应dsp中断,并向dsp发送中断,传送或读取数据给应用程序。6.3.1 响应dsp硬件中断vtoolsd提供中断类,可以便利地完成对中断的响应工作。其硬件中断信号处理函数如下:bool myhwint:onsharedhardwareint(vmhandle hvm)清除dsp上的中断寄存器,加人中断处理代码。读取公共数据区的数据,按要求
12、进程操作。sendphysicaleoi0; 完成中断服务,打开中断,预备接受下一次中断。return false; 由于中断号是分享的,此时必需返回false。6.3.2 与应用程序通信在vtoolsd中用法vdevice类中的onw32devi-ceiocontrol()函数响应应用程序发送的消息。同时驱动程序通过异步调用函数vwin32 -queueuserapc()向应用程序传送数据。驱动程序运行过程框架5,其中虚线框的工作由dsp程序或应用程序完成。6.4 dsp程序设计dsp程序实现多路数字音频信号实时处理,通过对定时器和maxl25ceax芯片的设置,实现采样率可以变幻的多路输入输出,通过
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 畹町烧烤活动方案策划(3篇)
- 打井建房施工方案(3篇)
- 大堂换灯施工方案(3篇)
- 天津专业活动策划方案(3篇)
- 社团冬至活动策划方案(3篇)
- 物流行业运输与配送规范
- 2025年老龄服务行业护理操作规范
- 医院开业广告投放方案
- 给排水技术培训
- 2025年大学大二(管理学)专业核心能力测试题及解析
- 校园小导游测试卷(单元测试)2025-2026学年二年级数学上册(人教版)
- 2025年西藏公开遴选公务员笔试试题及答案解析(综合类)
- 扬州市梅岭中学2026届八年级数学第一学期期末综合测试试题含解析
- 末梢血标本采集指南
- GB/T 46156-2025连续搬运设备安全规范通用规则
- AI赋能的虚拟仿真教学人才培养模式创新报告
- 数据管理能力成熟度评估模型(DCMM)评估师资格培训试题及答案
- 工程变更签证培训课件
- 自然分娩的好处
- 教练技术一阶段课件
- 国企跟投管理办法
评论
0/150
提交评论