1 引言
多路实时数字音频系统采用TI公司的TMS320C5402数字信号处理芯片来实现,由于该系列芯片采用了改进的哈佛结构,拥有专用的硬件乘法器和专为数字信号处理而设计的指令系统,快速的指令周期和良好的多DSP并行运行特性,使得DSP芯片非常适合于实时数字信号处理,广泛应用于无线通信、语音识别、工业控制、自动化仪器等领域。该系统用 2 WindOWS管理体系 Win98体系结构支持4种基本程序:管理程序、win32应用程序、winl6应用程序和DOS应用程序,每种程序在不同的执行环境中运行。(1)管理程序在Ring0层(态)中的保护模式下运行,所以能访问和控制实际硬件环境,管理程序是在实际机器上,而不是在虚拟机上运行,在所有构成win98的组件中,只有VMM和驱动程序在管理程序的环境中执行,可以直接对硬件进行操作。(2)Win32应用程序和Winl6应用程序都在Ring3层(用户态)的保护模式下运行,Win32应用程序可以访问4GB的虚拟内存,而Winl6应用程序只能访问16MB的虚拟内存。(3)DOS应用程序运行在V86模式下,它也运行在Ring3层的访问级别上,硬件访问和中断被隐藏和虚拟,该系统编写的是32位应用程序,它运行在虚拟环境之下,它对I/o端口的查询,对一个内存映射的外围设备的查询以及可能导致传送到虚拟机之外的操作都会被Windows捕获,所以其本身并不能直接访问硬件和系统数据,而需要通过驱动程序来完成。 3 设备内存映射方法 尽管驱动程序运行在层,但它所见的是平面内存,只能用线性地址进行访问。所有驱动程序对内存的访问都必须经过页表将线性地址转换成物理地址。因此,驱动程序在访问一个特殊的内存映射硬件之前,必须先配置页表,保证设备的物理地址与一个线性地址相联系。这个线性地址可以用作指针。驱动程序不能控制页表,它必须调用虚拟机管理器提供的服务。 (1)使用PageReserve()函数,分配一块线性地址空间。此空间并不和具体的物理地址相关联,仅是线性地址的页表进入项。 4 PCI配置寄存器访问 根据PCI总线规范要求,任何PCI设备都必须提供256字节的配置空间,用来完成对设备的安装、配置、引导和设备再定位等功能。在该系统中要求将HPI控制标志和状态寄存器以及HPI控制空间映射到PC机内存,所以必须对PCI2040配置寄存中的命令寄存器进行修改,从而实现设备内存映射。这需要通过32位配置地址端口(占用IO地址OxOcf8~OxOcfb)和32位配置数据端口(占用IO地址OxOcfc~OxOcff)访问PCI配置寄存器。其中位于0xcf8的IO端口的寄存器相当于一个地址寄存器,位于0xcfc端口的寄存器相当于数据寄存器。配置数据端口中存放着配置地址端口中的配置地址所指向的内存的内容。配置地址端口寄存 因为PCI设备的总线号和PCI2040的功能号一般为0,所以只需变化设备号来寻找硬件的位置。图2是基于Vtoolsd使用VC++6.0具体对PCI配置寄存器的访问程序框图。
PCI2040桥控制器可方便实现一个PCI插槽与4片C54x或C6x系列的DSP之间的通信,它提供了两种数据传输的方式:一是通过HPI口传输,另一种是通过GPBUS总线传输。其中GPBUS总线传输方式比较简单但传输速率低,通过HPI口的传输可以实现高速的数据通信,所以在该系统中采用了HPI口传输的通信方式。Win98先获取HPI寄存器的物理地址进行映射,然后用映射得到的线性地址就可以对HPI口进行访问。
6 驱动、应用及DSP程序的设计 6.1 总体设计思想
应用程序要调用驱动程序来完成两件事,一是获取DSP采集的数据,二是将自己的数据发送给DSP。应用程序整体功能框架如图4。 应用程序只需通过CreateFile()函数来加载驱动程序,加载成功之后,应用程序就可以通过调用Devi-ceIoControl()函数与驱动程序通信。 6.3 驱动程序设计 驱动程序在系统中起纽带作用,它响应DSP中断,并向DSP发送中断,传送或读取数据给应用程序。 6.3.1 响应DSP硬件中断 BOOL MyHwInt::OnSharedHardwareInt(VMHANDLE hVM) { //准备接受下中断。 } 6.3.2 与应用程序通信
DSP程序实现多路数字音频信号实时处理,通过对定时器和Maxl25CEAX芯片的设置,实现采样率可以变化的多路输入输出,通过向PC机发送中断和响应中断,实现PC机保存数据和实时处理数据。DSP在内存中开设两个数据区,数据存放在两个数据区中交替进行。DSP的运行框架如图6。
多路数字音频系统已经调试通过,并成功地在盲源信号实时分离系统中获得应用。利用TMS320C54x系列DSP的实时信号处理能力,实现PC机与DSP通信在多路实时数字音频系统、智能机器人等领域中有广阔的应用前景。 | |||||||
免责声明: 凡注明来源本网的所有作品,均为本网合法拥有版权或有权使用的作品,欢迎转载,注明出处。非本网作品均来自互联网,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。