[互联网]8 DSP系统设计.ppt
《[互联网]8 DSP系统设计.ppt》由会员分享,可在线阅读,更多相关《[互联网]8 DSP系统设计.ppt(77页珍藏版)》请在三一办公上搜索。
1、DSP系统设计,一、DSP方案论证和系统设计,二、硬件电路设计,三、BOOT设计,四、主从应用系统的设计,五、EVM板工作原理概述,一、DSP方案论证和系统设计,1.方案的优越性2.系统需求分析3.硬件方案选型4.软件方案选型,1.方案的优越性,高速,专门为运算密集型而设计,目前速度已达到亿次每秒。高可靠性,也就是高重复性。例如雷达滤波器。性价比高。可编程性好,有灵活的可编程平台,便于更新算法。例如:Modem从28.8K升级到33.6K,就是利用程序分装,将大部分程序存在FLASH中,可用编程方法升级。目标产品的高性能,对重要技术发展有很大影响。例子:硬盘技术。,)建立项目的目标需求分析的目
2、的就是我们究竟要做什么?把要做什么做一个比较细的划分,包括:a)画一个DSP系统的功能框图b)作原理图设计,得到一张网表c)做PCB设计d)调试,2.系统需求分析,2).具体的需求分析:(1)对一个物理上的DSP系统,要关注DSP系统处理的模拟带宽、动态范围、信噪比、采样定理、香农定理;(2)实时性要求;(3)评价算法的复杂度。举例,胎儿的心电监护是一个典型的自适应滤波的应用;,(4)精度;(5)成本;(6)可靠性;(7)方便开发和使用;(8)与其它系统的配合;如:设计PC机上的DSP卡,就应注意PC机的环境,如何与PCI总线打交道的问题等;(9)系统的可升级性和可移植性;等等。,3).决定从
3、哪一层开始介入开发4).目标的区分(1).目标是产品a.通用评估板b.专用芯片(2).目标是项目进行系统集成,(1).尽量采用成熟的通用的算法进行技术集成在工程上要防止别出心裁,在算法设计上同样适用.在做基础研究时要力求创新,但在工程上要尽量使用成熟可靠的设计。(2).尽量使用一些工具,而不是用原始的方法去做。,5).DSP算法的验证,SPW(Signal Process Workstation),即信号处理工作站,这是Cadence公司的产品.包含以下部分:CGS(Code Generate System),当你完成算法的模拟以后,它会把算法的C语言源程序给出来。HDS,它是将算法生成VHD
4、L语言,便于硬件设计。专用算法,如雷达、GSM。,目前市场上常见的工具,(3).C语言编程,用PC机验证.(4).移植(5).运算量的分析指标就是多少个MIPS,至少要估出一个上限。,1).DSP的实现方式a.通用的DSP芯片b.专用DSP芯片c.FPGAd.存储器等其它方法例子:用存储器实现乘法器,3.硬件方案选型,2).DSP的周边器件主要是A/D,D/A,考虑多高的采样频率,采样精度;需要多大的存储器;对外通信的接口和通信方式。,3).多处理器件的通信通信的常规方式有:双口RAM。它是一个特殊的RAM,有两套地址线,两套数据线,两套读写,两个CPU,可以很透明的访问.但价格贵,容量小。双
5、址RAM。这是双口RAM的变形,类似于“乒乓”方式工作,可以用总线方式切换FIFO(先进先出)双向I/O高速串口标准接口,4).供电方式多电源,电压供电在一块板子上可能有多电源,5v,3.3v,2.5v,1.8v,这些电压都可能存在,在有A/D,D/A时,还要考虑模拟电源,最好将模拟和数字电源分开。模拟电源采用DC-DC方式,为了防止高频干扰,最好采用稳压方式。,电流供电最经典的方式是恒流源方式,如电话机的供电方式。电池供电 如手机,MP3等便携方式耦合供电 如鼠标的供电方式,5).可测试性和可维护性硬件方案无论是自己设计还是购买,都需要注意这个问题.特别是产品,由于是生产线造作,特别要注意设
6、计要方便生产线生产。,1).全汇编方案,这种方案只适用于比较小的程序。2).全高级语言,这种方案的优点是结构性,可维护性很好,但代价是效率很低,主要是C语言编译器的效率太低。3).混合语言编程,主程序全部用C语言编写,这样结构性很好;需要提高速度的地方,用汇编写,用C语言调用。这是目前主要使用的编程方式。,4.软件方案选型,4).模块化设计5).尽量购买现成的算法模块例如:TI推出了一个Express DSP环境,也就是在CCS(Code Computer Studio)环境下定义了一个算法标准,对TI DSP算法的输入输出,变量调用等规定了一个算法框架。在写算法时都按照Express DSP
7、框架,有利于工艺上的应用。购买成熟算法,可以花钱买时间,加快项目进度。,DSP系统的设计过程,根据应用系统的目标确定系统的性能指标、信号处理的要求用数据流程图等来描述;根据系统的要求进行高级语言的模拟;设计实时DSP系统,包括硬件设计和软件设计两个方面;硬件和软件调试;软件脱离开发系统而直接在应用系统上运行。,DSP系统的设计流程,二、硬件电路设计,一个DSP的应用系统,既可以是独立的DSP应用系统,也可以是有普通MPU一起构成的主从系统。一般说来,常规的DSP应用系统都具有如图所示的结构。对于一个DSP应用系统,其硬件设计主要有如下几个部分:(1)复位电路;(2)时钟电路;(3)外部存储器与
8、并行I/O接口电路;(4)串行I/O接口电路;(5)BOOT设计。对于DSP的主从应用系统,则还要考虑主从微处理器之间的通信接口问题。,DSP应用系统结构框图,在设计54x系列DSP的应用系统时,可以采用如图所示的DSP的电路框图。,为使芯片初始化正确,一般应保证RS为低至少持续5个CLKOUT周期,即当速度为25ns时约为125ns。但是,由于在上电后,系统的晶体振荡器往往需要几百ms的稳定时间,所以,RS为低的时间主要由系统的稳定时间确定,一般为100ms200ms。图(a)为一简单的复位电路,其位时间由R和C确定。取R100k,C4.7uF,复位时间约为167ms,满足复位要求。为提高可
9、靠性,图(b)所示的电路增加了一个斯密特门电路使复位。,1.复位电路,由于DSP系统的时钟频率较高,在运行时难以避免发生干扰和被干扰的现象。严重时系统会现死机或程序“跑飞”现象。为了克服这种情况,除了在软件上作一些保护措施外,硬件上也必须作应的处理。硬件上最有效的保护措施就是采用所谓的“看门狗”(Watch dog)电路。“看门狗”电路就是具有监视功能的自动复位电路。这种电路除了具有上电复位功能外,还具有监视系统运行并在系统发生故障或死机时再次进行复位的能力。右图所示的电路就是具有“看门狗”的复位电路,具有“看门狗”的复位电路,DSP提供时钟的最简单、常用的方法是利用DSP芯片内部提供的时钟振
10、荡电路。在DSP芯片的引脚Xl和X2/CLKIN之间接一枚晶体,如图所示,即可为DSP产生稳定的时钟信号。但应该注意的是,时钟电路的走线应尽量地短,以避免产生高频辐射干扰。另一种更简单可靠的方法是采用成品的晶体振荡器电路。这是一种厚膜电路,其内部已封装好晶体和电容以及相应的电路,只需要加上电源,在其输出端就可以得到所需的时钟。用于DSP系统时,从引脚X2/CLKIN输入时钟信号,引脚X1悬空即可。电路如图所示。,2.时钟电路,3.外部存储器与并行I/O接口电路,外部存储器分为ROM和RAM两类。ROM包括PROM、EPROM、EEPROM和FLASH MEMORY。这一类存储器主要用于系统存储
11、程序和常数表格,一般映射在程序存储器空间。RAM主要是静态RAM(SRAM),常常采用快速RAM,既可用于存储程序,也可用于存储数据。DSP在访问存储器时,是由控制信号MSTRB和R/W控制下进行的;如果访问程序存储器空间,则还有PS信号;如果是访问数据存储器空间,则还有DS信号。而在访问I/O口时,则在控制信号IOSTRB和R/W的作用下进行。R/W信号控制访问的方向。,在设计外部存储器的接口时主要考虑两个问题:一是速度问题,二是DMA(直接存储器访问)接口问题。先讨论存储器接口的速度问题。对于快速的存储器,即存取时间20ns的器件,可以直接与54x系列DSP接口;而对于慢速存储器器件,则D
12、SP在访问时需要插入等待状态。由于54x系列具有内部的可编程等待状态发生器,所以不需要外接其它的逻辑电路便可与慢速存储器接口。与其它系列的DSP相比,54x与存储器的接口更方便、更简洁。下图为DSP与存储器接口的电路。,控制信号HLOD和HLODA用于DSP的DMA接口。DSP在接收到外设提出的DMA请求信号HLOD后,DSP交出总线和地址总线的控制权(使数据总线和地址总线为高阻态),再把HLODA拉低,指示外设可以接管数据总线和地址总线,进行DMA操作。I/O接口的方法与外部存储器的接口方法相同,只是采用控制信号IOSTRB代替MSTRB。,54x系列的同步串行I/O接口和缓冲串行I/O接口
13、通常用来与ADC和DAC或CODEC接口。偶尔用来与串行存储器或其它微控制器等的接口。而时分多路(TDM)串口则主要用于多微处理器之间的通信。,4 串行I/O接口电路,举例 C54x与TLC320AD50C的接口(1)音频模拟接口芯片TLC320AD50C。TLC320AD50C是TI生产的-型单片音频接口芯片,内部集成了16位A/D和D/A转换器,采样速率最高可达22.05kHz,其采样速率可通过外部编程来设置。在TLC320AD50C内部数模转换之前有插值滤波器,而在模/数转换之后有抽样滤波器,接收和发送同时进行。TLC320AD50C与TMS320VC54x之间采用串行通信方式,有两种数
14、据传输模式;16位传输模式和15+1位传输模式。若采用15+1位传输模式,其中的D0位用来表示二次通信。,TLC320AD50C的数据传输时序图 该器件采用两组模拟输入和两组模拟输出,有足够的共模抑制能力,可以工作在差分或单端方式。当模拟输出时,输出端常接600负载。TLC320AD50C的工作由7个控制寄存器控制。,控制寄存器1:软件复制以及DAC的16位或15+1位模式选择。控制寄存器2:ADC的16位或15+1位模式选择,控制寄存器4:选择输入和输出放大器的增益。通过选择N确定采样速率fs。如果选择PLL(D7=0),则fs=MCLK/128N,否则(D7=1),fs=MCLK/512N
15、。其中,N=18。该器件工作方式的设定和采样频率均可由外部编程来实现,所以TLC320AD50C使用灵活、设置容易,与TMS320VC54x的连接易于实现。,(2)C54x与TLC320AD50C硬件连接 数据经C54x的McBSP与外设TLC320AD50C的通信通过DR和DX引脚传输,控制信号则由CLKX,CLKR,FSX,FSR等4个引脚来实现。CPU读取DRR1,2的数据实现接收,并且可以对DXR1,2写入数据实现发送。接收和发送帧同步脉冲由外部脉冲源驱动。当FSR和FSX都为输入时(FSXM=FSRM=0,外部脉冲源驱动),McBSP分别在CLKR和CLKX的下降沿检测,且DR的数据
16、也在CLKR的下降沿进行采样。16位的串行口控制寄存器SPCR1,2和引脚控制寄存器PCR用来配置串行口;接收控制寄存器RCR1,2发送控制寄存器XCR1,21分别设置接收和发送的不同参数,如帧长度、每帧的数据长度等。另外,McBSP还可以通过(R/X)DATDLY设置接收和发送数据延迟,通过(R/X)PHASE设置接收和发送的多阶段。,(3)通信协议。两种格式:一次通信格式和二次通信格式。一次通信格式的16位都用来传输数据。DAC的数据长度由寄存器I的D0位决定。启动和复位时,默认值为15+1位模式,最后一位要求二次通信。如果工作在16位传输模式下,则必须由FC产生二次通信请求。二次通信格式
17、则用来初始化和修改TLC320AD50C内部寄存器的值。在二次通信中可通过向DIN写数据来完成初始化,AD50C与C54x硬件连接图,TLC320AD50C的MCLK外接8.192 MHz的晶振,TMS320VC54x的FSX由TLC320AD50C设置。如果选择D7=0,N=8,则采样速率为8kHz。,二次通信格式如下:,系统复位后必须通过DSP的DX接口向TLC320AD50C的DIN写数据,如果采用一片TLC320AD50C,只需初始化其寄存器1、寄存器2和寄存器4。由于通信数据长度为16位,初始化时应通过RCR1和XCR1设置McBSP的传输数据K度为16。考虑到AD50C复位,故可以
18、在此时间内初始化DSP的串行口。,(4)软件实现。SERIALINIT:LD#AIC_DP,DP;为AIC的复位初始化DP ST#K_RESET,AIC_IN_ RESET PORTW#AIC_ IN_RESET,K_ADDR;复位AIC STM#K_SERIAL_RETR,SPCRl STM#K_SERIAL_RETX,SPCR2;初始化串口控制;寄存器1,2复位串行口 STM#K_SERIAL_OUTRETR,SPCRl STM#K_SERIAL_OUTRETX,SPCR2;串口脱离复位 RSBX INTM;INTM=0,打开所有中断,LD#0,DPORM#(K_BRINT0|K_ BXI
19、NT0),IMR;打开BR/XINT0LD#AIC_DP,DPSTM#(-K_BRINT0),IFR;清除标记ST#K_ORESET,AIC_OUT_RESETPOPTW#AIC_OUT_RESEST,K_AIC_ADDR;脱离复位STM#K_RFW,RCR1;初始化接收控制寄存器1;设置接收数据长度为16位STM#K_XFW,XCR1;初始化发送控制寄存器1;设置发送数据长度为16位STM#K_SERIAL,PCR;设置为串口工作方式STM#K_DATA,DXR1;向DIN写数据,引起二次通信IDLE;等待串行口中断,三、BOOT设计1.概述,在TI DSP的开发环境CCS(Code Com
20、poser Studio)下,PC机通过不同类型的JTAG电缆与用户目标系统中的DSP通信,帮助用户完成调试工作。当用户在该环境下完成开发任务,编写完成用户软件之后,到DSP目标系统产品化阶段时,需要完全脱离依赖PC机的CCS环境,并要求目标系统上电后可自行启动并执行用户软件代码,这就需要用到自启动(Bootloader)技术。同时Bootloader也指由TI在生产DSP芯片时预先烧制其片内ROM中,完成该功能的一段代码名称。,2.基本原理,54X芯片是RAM型器件,掉电后不能保持任何用户信息,所以需要用户把执行代码存放在外部的无挥发存储器内,在系统上电时,通过Bootloader将存储在外
21、部媒介中的代码搬移到高速的片内存储器或系统中的扩展存储器内,搬移成功后自动去执行代码,完成自启动。当54X芯片复位时,如果其处于微计算机模式(MP/MC引脚为逻辑0),那么复位后在54X程序空间地址为0F800h处,可以通过CCS看到TI预先烧制在其片内ROM 的Bootloader这段代码。54X复位后,程序指针指向0FF80h处的中断向量表,执行指令“BD 0F800h”,即跳至Bootloader入口,开始执行Bootloader代码。在搬移用户代码之前,Bootloader会设置54X的状态寄存器,包括将INTM位置1,禁止全局中断;OVLY置1,将片内DRAM映射到程序/数据空间;和
22、设置整个程序/数据空间均插入7个等待状态,以适应可能慢速的EEPROM。,引导程序使IS信号为低,读取I/O空间地址,0FFFFh处的内容。读取的低8位的内容指定了传输的模式。引导程序选择(Boot Routine Selection,BRS)字确定引导模式。在并行EPROM模式时:选用EPROM模式时BRS字中有一个源字段SRC;在热启动模式时则有一个入口地址字段。低6位和CLKX与FSX的设置确定了串口引导中使用8位或16位格式。BRS字同样也用来确定并行I/O口模式中使用8位或16位格式。主机接口(HPI)使用INT2作为引导加载信号,如果没有INT2信号,则引导程序跳过主机接口引导模式
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 互联网 互联网8 DSP系统设计 DSP 系统 设计

链接地址:https://www.31ppt.com/p-4602272.html