TS201在数字信号处理设计中的应用

发布者:古通闲人最新更新时间:2007-06-12 来源: 电子元器件应用关键字:浮点  运算  动态  编程 手机看文章 扫描二维码
随时随地手机看文章

0 引言

当前信号处理的发展趋势是可重构、可扩展的通用信号处理系统。即通过灵活的软件编程来适应处理问题的变化和算法的发展,通过简单的硬件扩展来适应规模处理的变化,以提高信号处理系统的可编程能力和升级能力。而采用具备强大处理能力的ADSP-TS201S芯片可以对大量的数据作实时处理。TS201S可在600 MHz的内核时钟下完成每秒48亿次乘累加(MAC)运算和每秒36亿次浮点运算(FLOP),具有比同类处理器高出50%~100%的处理能力。它内部集成了24 MB的存储器,其片内大存储量与高达33.6 Gb/s的内部带宽是提高性能的关键。TS201S的外部64位数据总线和32位地址总线时钟最高可达125 MHz。

本文通过GA3816、FPGA和DSP构建了一个高速、通用、可扩展的多功能信号处理平台,该信号处理平台经过动态配置GA3816处理芯片可实现一些信号处理领域常用的运算,也可以通过对DSP、FPGA芯片的编程来实现一些其它算法,所以该平台能够广泛的应用于信号处理等领域。

1 系统设计

1.1 系统硬件结构

本通用信号处理平台主要由双TS201、双stratix系列FPGA和双GA3816处理器构成,同时使用了一些RAM、FLASH和SDRAM器件来存储系统中的数据和程序。系统与外部进行通信的接口主要采用CPCI总线接口。本设计采用DSP结合FPGA的方式。这种方式最大的优点就是结构灵活,有较强的通用性,适合模块化设计,并能够提高效率,同时,其开发周期较短,系统容易维护和扩展,所以,这种结构目前比较流行。图1是该系统的结构框图。


1.2 系统功能

此信号处理板的体系结构可以概括为三个处理阵列、两条板级接口总线和一条板内总线。三个处理阵列指的是GA3816处理阵列、DSP处理阵列和FPGA处理阵列。两条板级接口总线是指CP-CI总线和用户自定义总线。一条板内总线是指DSP总线。

用户自定义总线可由两个DSP处理器的两个链路口和一组由FPGA引出的备份信号线构成,包括时钟线、控制线和数据线。该总线可以针对不同应用环境,由用户自己根据需要加以定义。DSP和FPGA通过自定义总线与外部系统进行通信,而DSP通过链路口可以与外部系统实现程序加载以及数据互传,FPGA则通过备份信号线实现与外部系统的数据传输。

DSP总线主要是为DSP处理阵列提供一条内部互联和与FPGA处理阵列互联的通道。通过这条总线,DSP1和DSP2可以相互共享存储空间,并且二者可通过此总线共享板上的FLASH存储器和SDRAM,并分别将二者作为自己的程序存储器和内存扩展。系统复位后,DSP通过FLASH进行程序加载。

目前,PCI总线接口的设计有两种方法,一种是利用专用的PCI接口芯片来设计。另一种是利用FPGA可编程器件进行设计。由于用FPGA比较复杂,开发难度较大。为此,本系统将PCI控制器软核嵌入到FPGA中,从而控制本板对外的CPCI总线。本板则通过CPCI总线或自定义总线接收待处理的数据,并在FPGA巾对将待处理数据分配给GA3816处理通道和DSP处理通道。当这两个处理通道的处理结果反送到FPGA后,义在FP-GA中进行数据交换或者通过CPCI总线作为本板级处理器的输出。此外,两片FPGA中也有大量的硬件资源,可以针对不同应用场合,通过固件编程使其成为专用处理器,或组成FPGA处理阵列。而两个FPGA器件之间的64位双向信号线则可以使两个FPGA器件之间的数据传输更为方便和快捷。

系统中的两个RAM器件可分别直接和两个FPGA器件进行通信,并可通过FPGA分别作为两个GA3816处理阵列的片外存储器,也可作为板上的程序或者数据缓存。因为对于一般的运算来说,GA3816的处理速度要高于TS201的处理速度(对于1024点的复数FFT运算来说,GA3816的速度为12.8μs,而主频为300 MHz的TS201则为32.78μs),所以在系统所需实现的功能中,如果GA3816芯片可以实现就直接用它来实现(如FFT、FIR等),GA3816不能实现的功能则可根据需要在TS201和FPGA中编程实现。在FPGA中对GA3816芯片进行配置可以实现GA3816的不同处理功能以及运算模式,从而满足不同应用场合中GA3816芯片的不同数据处理功能。

1.3 时钟模块

ADSP TS201S的系统输入时钟SCLK同时也是TS201S的外部接口时钟,为与外部器件兼容,SCLK不应取得太高。一般可取内核时fCCLK为fSCLK与SCLKRAT的积,P-BUS的工作时钟fSOCCLK为fCCLK/2,链路口时钟fLxCLK为fCCLK/CR(CR为LCTLxREGlSTER的设置值),若SPD位设置为100,则取fLxCLK=fCCLK/4。这样,将时钟信号再经过时钟驱动后分别送入两个FPGA,再由FPGA的锁相环进行倍频或者分频就可得到DSP、SDRAM、GA3816和RAM所需要的时钟信号。

GA3816和RAM的时钟信号可由FPGA直接提供,DSP和SDRAM的时钟信号则由FPGA提供的时钟通过一个时钟驱动器来供给。设计时应尽可能的使时钟线等长的到达器件,这样可以减少时钟偏移,从而使DSP和SDRAM之间能够更好的通信。因为时钟信号是非常敏感的信号,所以要尽量的减少反射和串扰。在时钟信号线上串接适当的匹配电阻可以有效的减少反射,而减少串扰则需要在时钟走线周围留出额外的空间,或者把时钟线单独放在两个地平面层中间的一层,这样可以使时钟的信号完整性得到有效的改善。

1.4 电源模块

stratix和GA3816的核电源电压分别为1.5 V和1.8 V,3.3 V为I/O电源,ADSP-TS201S的三种电源如表1所列。本设计中所需的四种电压都是从外部输入的5 V电源转换而成的,转换芯片选用TI公司的TPS54350器件。

由于电源层无法单独消除线路噪音,所以通常需要借助旁路电容来进行滤波。一般情况下,将1~10μF电容放置在电路板的电源输入端可滤除板外产生的低频信号;而将0.01~0.1μF电容放置在电路板的每个有源器件的电源引脚和接地引脚上,则可滤除电路板上有源器件产生的高频率的噪声谐波。但是,任何一种电容的滤波频率范围都是有限的,所以通常采用大小电容并联的方式来扩展其有效的滤波频率范围。

1.5 复位模块

ADSP TS201S的复位信号较ADSP TS101S更简单,它可以采用较简单的上电复位方式,即要求电源正常后保持RST_IN为低2 ms以上,并在RST_IN有效之前使SCLK运行2 ms。上电复位相对于正常复位来说要复杂一些。在FPGA中实现TS201的复位和时序控制,可使TS201正常工作。图2为TS201上电复位稳定后的仿真波形。图中,sclk为8 MHz时钟(由TS201的SCLK时钟分频得到),rst为正常复位信号,power为上电复位信号,enable为复位后系统稳定的输出信号,reset为TS200的复位输出信号。

2 调试结果

图3为调试过程中通过逻辑分析仪采集到的TS201向FPGA内部双口RAM写数据时的波形图,采用双口RAM是由于雷达信号总是以帧的方式进行处理,在处理第一帧的数据时,输出前一帧的数据,这样的数据访问方式可避免发生冲突。为了能够正确的读写双口RAM,这里的DSP访问双口RAM采用的是慢速协议,即当内部RAM的片选信号和TS201的写信号都为低时,将TS201内部的数据正确的写入到FPGA的内部双口RAM里。由于测试针的数目有限,所以,图中只显示了TS201的低8位地址线和低9位数据线,而RAM则只显示了低8位的数据线。


3 结束语

本文介绍了基于TS201的高速信号处理系统的硬件设计以及实现方法,着重考虑了系统的高速、实时和通用性,同时充分发挥了GA3816处理器的优势。由于结合了DSP和FPGA的强大可编程和处理能力,因此,该信号处理系统能够广泛的应用于语音及图像处理、通信、雷达、导航、电子对抗等信号处理领域。

关键字:浮点  运算  动态  编程 引用地址:TS201在数字信号处理设计中的应用

上一篇:TS201在数字信号处理设计中的应用
下一篇:世界最小单卡16路DSP实时压缩卡研制

推荐阅读最新更新时间:2024-05-02 20:36

ARM编程中Flash ROM驱动示例
Intel Flash芯片 i28f160,i28f320: i28F320B: 64*64K,64个blocks,4M空间,每个block 64K,第一个64K由8个8*8K小blocks组成. 每个Black可以被独立擦写(寿命周期) 100,000次以上 Flash操作的大概步骤: flash读写操作中,读应该很简单,和RAM一样,写就复杂一点. Intel TE28F320C3的flash是4M空间 flash空间,划分成许多的block,Intel TE28F320C3的flash是4M空间,64个block,每个block由64K. 要对所有的block单独进行操作, 每个操作结束,都需要判断状态,
[单片机]
A51与C语言的混合编程
我研究一上午,写了个程序,可谓麻雀虽小可五脏俱全,希望正在学习这块的人能少找点资料,少花点时间更快的掌握。 #include reg52.h /****在汇编中定义*****/ extern void delay(void) ; extern add(int a,int b); //测试汇编调用的代码(不想直接用汇编来走主程序) extern void test(); /***在汇编中定义的代码段****/ extern unsigned char cc; // C语言中定义的函数 void delay_c(); unsigned int addcc(unsigned int wd1,unsigned int wd2); //C语
[单片机]
2007年度调查揭开嵌入式市场的真相!
嵌入式市场发展趋势的年度同比肯定会引起你的注意。人们在考虑Linux?不对。品牌忠诚度?也不是。那么,到底人们关注的是什么呢? 《Embedded Systems Design》进行了一次非常全面的年度市场调查。你们可能已经知道了这个消息,因为你已经参加了这次调查。事实上,已经有四位读者成为我们随机抽签的中奖者。 这个调查是在全球范围内进行的,大部分是通过电子邮件在今年年初进行的。调查被发给本刊物(美国版本和欧洲版本)和《EE Times》(《电子工程专辑》姊妹刊物)的部分订阅者以及我们举行的嵌入式系统研讨会(Embedded Systems Conferences)的部分出席者,超过1,000位嵌入式系统设计工程师对调查进行
[焦点新闻]
通用型运算放大器,通用型运算放大器是什么意思
通用型运算放大器的组成 通用型运算放大器就是以通用为目的而设计的。这类器件的主要特点是价格低廉、产品量大面广,其性能指标能适合于一般性使用。例A741(单运放)、LM358(双运放)、LM324(四运放)及以场效应管为输入级的LF356都属于此种。它们是目前应用最为广泛的集成运算放大器。 通用型运算放大器 产品编号 产品叙述 规格书 相容IC MSV358 CMOS轨对轨输出双运算放大器 , 声频应用 NS TI LMV358 MS2100 CMOS轨对轨输出双运算放大器 , 音频应用 Rohm JRC BA451
[模拟电子]
通用型<font color='red'>运算</font>放大器,通用型<font color='red'>运算</font>放大器是什么意思
单片机内外部资源操作篇之数码管动态显示
假定你已经会了数码管的静态显示,在静态显示的学习中,我们知道,六位数码管同一时刻只能显示同一符号。但我们在日常生活中 经常看到几个数码管同时能显示不同数字,例如时钟等。这就是接下来要讨论的话题——数码管动态显示。 先来看一个例子: 1 #include reg52.h 2 #define uint unsigned int 3 #define uchar unsigned char 4 uchar code table = { 5 0x3f,0x06,0x5b,0x4f, 6 0x66,0x6d,0x7d,0x07, 7 0x7f,0x6f,0x77,0x7c, 8 0x39,0x5e,0x79,0x7
[单片机]
ispPAC10在系统可编程模拟器及其应用
    摘要: ispPAC10是美国Lattice公司最新推出的模拟电路在系统可编程器件,它为电子电路设计者进行电路设计提供了一条有效的新途径。文中介绍了ispPAC模拟电路在系统可编程器件的基本组成和主要特点,并给出了一个应用实例。     关键词: 在系统编程  模拟器件  滤波器  ispPAC10     数字系统在系统可编程技术是美国Lattice公司发明的,它彻底改变了传统数字电子系统的设计思想和实现方法。然而在历经7年之后,该公司于1999年11月又推出了模拟电路的在系统可编程技术ispPAC(In-System Programmability Programmable Analog C
[半导体设计/制造]
AWS Graviton2处理器赋予arm更高吞吐量,并减少本地运算
亚马逊云服务(AWS)宣布,半导体设计和知识产权开发与许可的全球领先企业Arm将把AWS云服务应用到包括其绝大部分电子设计自动化(EDA)的工作负载。Arm将利用基于AWS Graviton2处理器的实例(由Arm Neoverse核心提供支持),将EDA工作负载迁移到AWS,引领半导体行业的转型之路。传统上,半导体行业使用本地数据中心完成半导体设计验证这样的计算密集型任务。为了更有效地执行验证,Arm使用云计算仿真现实世界的计算场景,并利用AWS几乎无限的存储空间和高性能计算基础架构,扩展其可以并行运行的仿真数量。自从开始向AWS云迁移以来,Arm已将AWS上EDA工作流的响应速度提高了6倍。此外,通过在AWS上运行遥测(从远程
[嵌入式]
简单易构建的动态麦克风压缩器电路
下面的电路是一个动态麦克风压缩器电路,它简单、易于构建、价格低廉,但结果相当令人满意。音频输出听起来很出色。 这个电路的原理很简单,第一个晶体管用作麦克风前置放大器。然后将第二个晶体管用作缓冲器。第三个晶体管是反馈电路。该电路中使用了一个非常灵敏的驻极体麦克风。 此动态麦克风压缩器电路的电源电压必须为 12 伏。强烈建议使用自己的电源,不要使用其他电子电路模块的共享电源。建议使用具有良好/良好电缆和良好接地的稳压电路,以尽量减少嗡嗡声。
[嵌入式]
简单易构建的<font color='red'>动态</font>麦克风压缩器电路
小广播
最新嵌入式文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved