微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 基于DSP/BIOS的多信号并行处理软件架构设计

基于DSP/BIOS的多信号并行处理软件架构设计

时间:07-29 来源:3721RD 点击:

摘要 利用DSP芯片设计出能够支持多类信号多路并行处理的软件,可减少外围专用算法芯片的使用,降低设计成本、缩小印制板尺寸、缩短开发周期。文中介绍了一种利用DSP/BIOS操作系统进行快速开发设计的软件架构,不仅满足此种需求,并且方便了算法的裁减扩充和程序跨平台移植,在实际应用中得到了广泛应用和验证。

随着信息技术和芯片技术的发展,DSP技术在航空、通信、医疗和消费类电子设备中得到广泛应用。伴随主频不断提升及多核并行工作,DSP芯片的运算能力快速增强。运用DSP芯片快速设计多类信号多路并行处理的软件,变得更加重要。为满足需求,文中提出一种基于DSP/ BIOS的软件架构,可提高软件的可维护性和可重用性,方便算法的裁减添加及程序的跨平台移植,实现多类信号多路并行处理的软件快速开发设计。

1 DSP/BIOS简介

DSP/BIOS是TI公司推出的实时操作系统,集成在CCS(Code Composer Studio)开发环境中。DSP/BIOS采用静态配置策略,通过去除运行代码能使目标程序存储空间最小化,优化内部数据结构,在程序执行前够通过确认对象所有权较早地检测出错误,可满足DSP运行时的调试和性能分析,应用DSP/BIOS可以快速编写高效程序,较大的简化DSP应用程序的开发和调试。DSP/BIOS是一组可重复调用的系统模块应用程序接口API集合,分为系统模块System、协助模块Instrumentation、调度模块Scheduling、同步模块Synchronization、通信模块Input/Out put和配置模块CSL。系统模块,主要完成芯片型号确认、字节序Endian Mode配置、主频配置、芯片Cashe空间划分及内存空间分配。协助模块Instrumentation,主要负责消息打印、事件日志及信息追踪工作。调度模块,为DSP/BIOS核心功能,可细化为定时管理CLK、周期中断管理PRD、硬中断管理HWI、软中断管理SWI、任务管理TSK和空闲任务管理IDL。CLK控制片内的32位实时逻辑时钟,负责PRD周期的设置。PRD管理周期对象,触发应用程序周期执行性,为一种特殊的SWI。HWI管理硬件中断,主要负责DSP与外设的数据交互,中断服务程序应尽量短小精焊。SWI是不可阻塞抢断式,SWI任务只能在程序编制时预先定义好。TSK是可阻塞抢断式的,支持任务的动态产生。IDL管理休眠函数,休眠函数在目标系统程序无更高优先权的函数运行时启动,是一种特殊的TSK。同步模块,负责各个调度模块之间信息的交换传递,保证调度模块之间的同步和互斥。通信模块,允许应用程序在目标系统和主机之间交流数据。配置模块,负责芯片底层硬件的配置。另外DSP/BIOS还带有插件,支持实时分析、程序跟踪和性能监视。

2 DSP软件架构




软件架构采用分层设计思想,共分5层:驱动层、系统层、算法层、控制层和应用层。驱动层完成芯片硬件接口及外围芯片驱动。系统层运行DSP/BIOS操作系统,完成硬件中断、周期控制和任务调度功能。算法层提供各类业务需求的算法API。控制层负责软件的指令解析、内存管理、中断服务和交换控制。应用层为CPU调用控制DSP提供指令交互和数据交互接口。

3 子层设计

3.1 驱动层


使用DSP/BIOS图形化的界面,调用芯片支持库模块CSL,快速设置DSP底层硬件接口,完成芯片的MCBSP驱动、EMIF驱动和EDMA驱动的开发。对于外围芯片的驱动,如A/D芯片驱动,首先硬件上完成DSP芯片与A/D芯片的接线,然后按照配置指令的帧格式完成对A/D芯片的配置。

3.2 系统层

系统层设计为软件架构设计的关键点,充分利用DSP/BIOS提供的调度模块和同步模块。将控制层中的指令解析、交换控制和交换表更新模块与PRD绑定,周期检查有无新指令,并根据指令解析更新交换表,调度周期由32位实时逻辑时钟控制。将控制层中的交换控制和数据交换模块与TSK绑定,根据从其他模块收到的信号量SEM或者邮箱信息MBX,进行数据格式转换,完成不同格式的数据在不同信道间的透明传输。将中断服务与HWI进行绑定,完成数据实时收发。运用同步模块Synchronization中的邮箱机制MBX与信号量SEM机制完成HWI、PRD和TSK之间的消息传递。运用操作系统的调度算法,完成多个任务之间的调度,控制数据收发及数据处理。

3.3 算法层

把各类算法单独列为一层,汇聚多类信号算法,采用松散耦合和可重入设计方法,方便算法的移植、维护及多路并行工作设计,并根据应用需求,方便算法的裁减和扩充。各类算法严格独立,都以单独库和头文件的形式提供。算法层的结构如图2所示。

3.4 通信常用算法

DTMF:双音多频信号,每个号码由两个音频信号相加得到,广泛用在电话拨号和来电显示中,其生成和检测算法。
FSK:利用1 200 Hz和2 200 Hz的正弦信号,采用2FSK调制解调方法,广泛用于来电显示中,其生成和检测算法。
TONE:三音生成和检测算法,包含信号音、忙音、回铃音生成和三音检测,广泛用于电话交换系统中。
G.711:速率为64 khit·s-1的语音编解码标准,广泛用于电话交换系统中。
CVSD:连续可变斜率编码的英文缩写,速率为16 khit·s-1的语音编解码标准,用于低速率通信系统中,其编解码算法。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top