做DSP最应该懂得的几个问题
- 格式:doc
- 大小:42.50 KB
- 文档页数:12
DSP常见问题解答如何选择外部时钟?DSP的内部指令周期较高,外部晶振的主频不够,因此DSP大多数片内均有PLL。
但每个系列不尽相同。
1)TMS320C2000系列:TMS320C20x:PLL可以÷2,×1,×2和×4,因此外部时钟可以为5MHz-40MHz。
TMS320F240:PLL可以÷2,×1,×1.5,×2,×2.5,×3,×4,×4.5,×5和×9,因此外部时钟可以为2.22MHz-40MHz。
TMS320F241/C242/F243:PLL可以×4,因此外部时钟为5MHz。
TMS320LF24xx:PLL可以由RC调节,因此外部时钟为4MHz-20MHz。
TMS320LF24xxA:PLL可以由RC调节,因此外部时钟为4MHz-20MHz。
2)TMS320C3x系列:TMS320C3x:没有PLL,因此外部主频为工作频率的2倍。
TMS320VC33:PLL可以÷2,×1,×5,因此外部主频可以为12MHz -100MHz。
3)TMS320C5000系列:TMS320VC54xx:PLL可以÷4,÷2,×1-32,因此外部主频可以为0.625MHz-50MHz。
TMS320VC55xx:PLL可以÷4,÷2,×1-32,因此外部主频可以为6.25MHz-300MHz。
4)TMS320C6000系列:TMS320C62xx:PLL可以×1,×4,×6,×7,×8,×9,×10和×11,因此外部主频可以为11.8MHz-300MHz。
TMS320C67xx:PLL可以×1和×4,因此外部主频可以为12.5MHz-230MHz。
dsp重点知识点总结1. 数字信号处理基础数字信号处理的基础知识包括采样定理、离散时间信号、离散时间系统、Z变换等内容。
采样定理指出,为了保证原始信号的完整性,需要将其进行采样,并且采样频率不能小于其最高频率的两倍。
离散时间信号是指在离散时间点上取得的信号,可以用离散序列表示。
离散时间系统是指输入、输出和状态都是离散时间信号的系统。
Z变换将时域的离散信号转换为Z域的函数,它是离散时间信号处理的数学基础。
2. 时域分析时域分析是对信号在时域上的特性进行分析和描述。
时域分析中常用的方法包括时域图形表示、自相关函数、互相关函数、卷积等。
时域图形表示是通过时域波形来表示信号的特性,包括幅度、相位、频率等。
自相关函数是用来描述信号在时间上的相关性,互相关函数是用来描述不同信号之间的相关性。
卷积是一种将两个信号进行联合的运算方法。
3. 频域分析频域分析是对信号在频域上的特性进行分析和描述。
频域分析中常用的方法包括频谱分析、傅里叶变换、滤波器设计等。
频谱分析是通过信号的频谱来描述信号在频域上的特性,可以得到信号的频率成分和相位信息。
傅里叶变换是将时域信号转换为频域信号的一种数学变换方法,可以将信号的频率成分和相位信息进行分析。
滤波器设计是对信号进行滤波处理,可以剔除不需要的频率成分或增强需要的频率成分。
4. 数字滤波器数字滤波器是数字信号处理中的重要组成部分,通过对信号进行滤波处理,可以实现对信号的增强、降噪、分离等效果。
数字滤波器包括有限冲激响应(FIR)滤波器和无限冲激响应(IIR)滤波器两种类型。
有限冲激响应(FIR)滤波器是一种只有有限个系数的滤波器,它可以实现线性相位和稳定性处理。
无限冲激响应(IIR)滤波器是一种有无限个系数的滤波器,它可以实现非线性相位和较高的滤波效果。
5. 离散傅里叶变换(DFT)和快速傅里叶变换(FFT)离散傅里叶变换(DFT)是将时域离散信号转换为频域离散信号的一种数学变换方法,其计算复杂度为O(N^2)。
DSP硬件设计的一些注意事项数字信号处理芯片(DSP)具有高性能的CPU(时钟性能超过100MHZ)和高速先进外围设备,通过CMOS处理技术,DSP芯片的功耗越来越低。
这些巨大的进步增加了DSP电路板设计的复杂性,并且同简单的数字电路设计相比较,面临更多相似的问题。
以下是DSP硬件设计的一些注意事项,谨供参考。
时钟电路选择原则1,系统中要求多个不同频率的时钟信号时,首选可编程时钟芯片。
2,单一时钟信号时,选择晶体时钟电路。
3,多个同频时钟信号时,选择晶振。
4,尽量使用DSP片内的PLL,降低片外时钟频率,提高系统的稳定性。
5,C6000、C5510、C5409A、C5416、C5420、C5421和C5441等DSP片内无振荡电路,不能用晶体时钟电路。
6,VC5401、VC5402、VC5409和F281x等DSP时钟信号的电平为1.8V,建议采用晶体时钟电路未用的输入/输出引脚的处理1,未用的输入引脚不能悬空不接,而应将它们上拉活下拉为固定的电平1)关键的控制输入引脚,如Ready、Hold等,应固定接为适当的状态,Ready引脚应固定接为有效状态,Hold引脚应固定接为无效状态2)无连接(NC)和保留(RSV)引脚,NC 引脚:除非特殊说明,这些引脚悬空不接,RSV引脚:应根据数据手册具体决定接还是不接3)非关键的输入引脚,将它们上拉或下拉为固定的电平,以降低功耗2,未用的输出引脚可以悬空不接3,未用的I/O引脚:如果确省状态为输入引脚,则作为非关键的输入引脚处理,上拉或下拉为固定的电平。
如果确省状态为输出引脚,则可以悬空不接为什么要片内RAM大的DSP效率高?目前DSP发展的片内存储器RAM越来越大,要设计高效的DSP 系统,就应该选择片内RAM较大的DSP。
片内RAM同片外存储器相比,有以下优点:1)片内RAM的速度较快,可以保证DSP无等待运行。
2)对于C2000/C3x/C5000系列,部分片内存储器可以在一个指令周期内访问两次,使得指令可以更加高效。
DSP系统设计常用问答1.什么是DSP系统设计?DSP系统设计是指使用数字信号处理(Digital Signal Processing,DSP)技术设计和实现数字信号处理系统的过程。
DSP系统设计涉及到多个方面,包括信号采集、信号处理算法设计、系统架构设计和实时性能优化等。
2.哪些应用领域常用DSP系统设计?DSP系统设计广泛应用于许多领域,包括通信、音频处理、图像处理、医学工程、雷达和传感器等。
在通信领域中,DSP系统设计用于调制解调、编码和解码、通道估计和均衡等。
音频处理方面,DSP系统设计可用于音频编码、音频增强和音频合成等。
在图像处理领域,DSP系统设计常用于图像滤波、图像压缩和图像识别等。
3.DSP系统设计的基本流程是什么样的?基本的DSP系统设计流程可以分为五个步骤:系统需求分析、算法设计、硬件架构设计、软件实现和系统测试。
首先,需要明确系统的需求,如输入输出的信号特性、系统的实时性要求等。
然后,根据需求设计合适的信号处理算法。
接下来,需要根据算法设计硬件架构,包括选择适当的DSP芯片、接口电路的设计等。
然后,通过编程实现设计的算法。
最后,进行系统测试,确保系统满足设计需求。
4.DSP系统设计中常用的编程语言是什么?常用的编程语言包括C和C++。
C语言是DSP系统设计中最常用的编程语言,因为它具有良好的移植性、高效性和灵活性。
C++语言则在C语言的基础上加入了面向对象的特性,更易于维护和扩展。
5.DSP系统设计中的实时性能如何优化?为了实现实时性能,需要注意以下几点。
首先,选择适当的硬件平台,如DSP芯片的频率和存储容量等。
其次,对算法进行优化,如降低计算复杂度、使用高效的数据结构等。
另外,通过并行计算和硬件加速等技术提高计算效率。
最后,合理设计系统架构,如使用中断和DMA传输等技术降低系统延迟。
6.DSP系统设计中常用的数据存储格式是什么?在DSP系统设计中,常用的数据存储格式有原始音频或图像数据、时域数据和频域数据。
dsp入门需要注意的事项在作硬件之前,需要看的资料有:1.芯片数据手册,描述该器件的引脚信号、片上资源、电气指标和机械特性(如封装等),在做硬件前必看(TMS320F281x数据手册SPRS174J)2.某一系列DSP的CPU和指令集用户指南,描述该系列DSP的CPU结构、内部寄存器、寻址方式等(TMS320F28x系列DSP的CPU和指令集用户指南SPRU430D)3.某一系列DSP片上外设用户指南,一般有很多本,用什么外设看相应的用户指南即可。
在作软件之前,需要看的资料有:1. 汇编语言工具(TMS320F28x Assembly Language Tools User’s Guide,SPRU513),描述汇编语言的基本格式、汇编器伪指令、汇编器参数、链接器和其他实用程序等,在做汇编程序开发前,首先看明白该书的第二章(描述Coff 格式,是汇编语言的基础),该书的其他内容,可以在使用中再来查阅。
2.汇编指令集(TMS320F28x DSP CPU and Instruction Set Reference Guide (Rev.D),SPRU430D),在做汇编程序前,首先要看明白寻址方式(第5章,C28xAddressing Modes),具体的指令(第6章,C28x Assembly LanguageInstructions)在编程时查阅。
3.优化C编译器(TMS320F28x Optimizing C/C++ Compiler User’s Guide,SPRU514),在做C程序前,首先要看明白C的运行环境(第7章,run-time environment),其他内容编程时查阅。
4.更高级的编程方法,还有很多资料,如DSP/BIOS、函数库等,均有相应的优化指南,用到时再去查看。
调试时,需要看的资料有:1.Code Composer Studio Getting Started Guide (Rev. D)2.Code Composer Studio User's Guide (Rev. B)转载请注明出自DSP交流网 DSP学习第一论坛 DSP技术应用与推广平台 DSP开发服务平台 /bbs/,本贴地址:/bbs /viewthread.php?tid=82111.关闭DSP--blog's Blog高速数字信号处理器是当前信息产业的热点技术之一,采用最先进的DSP无疑会使所开发的产品具有更强的市场竞争力。
DSP(知识点+思考题)DSP复习要点第⼀章绪论1、数的定标:Qn表⽰。
例如:16进制数2000H=8192,⽤Q0表⽰16进制数2000H=0.25,⽤Q15表⽰2、?C54x⼩数的表⽰⽅法:采⽤2的补码⼩数;.word 32768 *707/10003、定点算术运算:乘法:解决冗余符号位的办法是在程序中设定状态寄存器STl中的FRCT位为1,让相乘的结果⾃动左移1位。
第⼆章CPU结构和存储器设置⼀、思考题:1、C54x DSP的总线结构有哪些特点?答:TMS320C54x的结构是围绕8组16bit总线建⽴的。
(1)、⼀组程序总线(PB):传送从程序存储器的指令代码和⽴即数。
(2)、三组数据总线(CB,DB和EB):连接各种元器件,(3)、四组地址总线(PAB,CAB,DAB和EAB)传送执⾏指令所需要的地址。
2、C54x DSP的CPU包括哪些单元?答:'C54X 芯⽚的CPU包括:(1)、40bit的算术逻辑单元(2)、累加器A和B(3)、桶形移位寄存器(4)、乘法器/加法器单元(5)、⽐较选择和存储单元(6)、指数编码器(7)、CPU状态和控制寄存器(8)、寻址单元。
1)、累加器A和B分为三部分:保护位、⾼位字、地位字。
保护位保存多余⾼位,防⽌溢出。
2)、桶形移位寄存器:将输⼊数据进⾏0~31bits的左移(正值)和0~15bits的右移(负值)3)、乘法器/加法器单元:能够在⼀个周期内完成⼀次17*17bit的乘法和⼀次40位的加法4)、⽐较选择和存储单元:⽤维⽐特算法设计的进⾏加法/⽐较/选择运算。
5)、CPU状态和控制寄存器:状态寄存器ST0和ST1,由置位指令SSBX和复位指令RSBX控制、处理器模式状态寄存器PMST2-3、简述’C54x DSP的ST1,ST0,PMST的主要功能。
答:’C54x DSP的ST1,ST0,PMST的主要功能是⽤于设置和查看CPU的⼯作状态。
DSP入门必看(非常好的DSP扫盲文章)(ZZ)(7)如何设置硬件断点?在profiler ->profile point -> break pointc54x的外部中断是电平响应还是沿响应?是沿响应,准确的说,它要检测到100(一个clk的高和两个clk的低)的变化才可以。
参考程序,里面好象都要dISAble wachdog,不知道为什么?watchdog是一个计数器,溢出时会复位你的DSP,不dISAble的话,你的系统会动不动就reset。
时钟电路选择原则1,系统中要求多个不同频率的时钟信号时,首选可编程时钟芯片;2,单一时钟信号时,选择晶体时钟电路;3,多个同频时钟信号时,选择晶振;4,尽量使用DSP片内的PLL,降低片外时钟频率,提高系统的稳定性;5,C6000、C5510、C5409A、C5416、C5420、C5421和C5441等DSP片内无振荡电路,不能用晶体时钟电路;6,VC5401、VC5402、VC5409和F281x等DSP时钟信号的电平为1.8V,建议采用晶体时钟电路C程序的代码和数据如何定位1,系统定义:.cinit 存放C程序中的变量初值和常量;.const 存放C程序中的字符常量、浮点常量和用const声明的常量;.switch 存放C程序中switch语句的跳针表;.text 存放C程序的代码;.bss 为C程序中的全局和静态变量保留存储空间;.far 为C程序中用far声明的全局和静态变量保留空间;.stack 为C程序系统堆栈保留存储空间,用于保存返回地址、函数间的参数传递、存储局部变量和保存中间结果;.sysmem 用于C程序中malloc、calloc和realloc函数动态分配存储空间2,用户定义:#pragma CODE_SECTION (symbol, "section name");#pragma DATA_SECTION (symbol, "section name")cmd文件由3部分组成:1)输入/输出定义:.obj文件:链接器要链接的目标文件;.lib文件:链接器要链接的库文件;.map文件:链接器生成的交叉索引文件;.out文件:链接器生成的可执行代码;链接器选项2)MEMORY命令:描述系统实际的硬件资源3)SECTIONS命令:描述“段”如何定位为什么要设计CSL?1,DSP片上外设种类及其应用日趋复杂2,提供一组标准的方法用于访问和控制片上外设3,免除用户编写配置和控制片上外设所必需的定义和代码什么是CSL?1,用于配置、控制和管理DSP数字信号处理片上外设2,已为C6000和C5000系列DSP设计了各自的CSL库3,CSL库函数大多数是用C语言编写的,并已对代码的大小和速度进行了优化4,CSL库是可裁剪的:即只有被使用的CSL模块才会包含进应用程序中5,CSL库是可扩展的:每个片上外设的API相互独立,增加新的API,对其他片上外设没有影响CSL的特点1,片上外设编程的标准协议:定义一组标准的APIs:函数、数据类型、宏;2,对硬件进行抽象,提取符号化的片上外设描述:定义一组宏,用于访问和建立寄存器及其域值3,基本的资源管理:对多资源的片上外设进行管理;4,已集成到DSP/BIOS中:通过图形用户接口GUI对CSL进行配置;5,使片上外设容易使用:缩短开发时间,增加可移植.为什么需要电平变换?1) DSP系统中难免存在5V/3.3V混合供电现象;2)I/O为3.3V供电的DSP,其输入信号电平不允许超过电源电压3.3V;3)5V器件输出信号高电平可达4.4V;4)长时间超常工作会损坏DSP器件;5)输出信号电平一般无需变换电平变换的方法1,总线收发器(Bus Transceiver):常用器件:SN74LVTH245A(8位)、SN74LVTH16245A(16位)特点:3.3V供电,需进行方向控制,延迟:3.5ns,驱动:-32/64mA,输入容限:5V应用:数据、地址和控制总线的驱动2,总线开关(Bus Switch)常用器件:SN74CBTD3384(10位)、SN74CBTD16210(20位)特点:5V供电,无需方向控制延迟:0.25ns,驱动能力不增加应用:适用于信号方向灵活、且负载单一的应用,如McBSP等外设信号的电平变换3,2选1切换器(1 of 2 Multiplexer)常用器件:SN74CBT3257(4位)、SN74CBT16292(12位)特点:实现2选1,5V供电,无需方向控制延迟:0.25ns,驱动能力不增加应用:适用于多路切换信号、且要进行电平变换的应用,如双路复用的McBSP4,CPLD3.3V供电,但输入容限为5V,并且延迟较大:>7ns,适用于少量的对延迟要求不高的输入信号5,电阻分压10KΩ和20KΩ串联分压,5V×20÷(10+20)≈3.3V未用的输入/输出引脚的处理1,未用的输入引脚不能悬空不接,而应将它们上拉活下拉为固定的电平1)关键的控制输入引脚,如Ready、Hold等,应固定接为适当的状态,Ready引脚应固定接为有效状态,Hold引脚应固定接为无效状态2)无连接(NC)和保留(RSV)引脚,NC 引脚:除非特殊说明,这些引脚悬空不接,RSV引脚:应根据数据手册具体决定接还是不接3)非关键的输入引脚,将它们上拉或下拉为固定的电平,以降低功耗2,未用的输出引脚可以悬空不接3,未用的I/O引脚:如果确省状态为输入引脚,则作为非关键的输入引脚处理,上拉或下拉为固定的电平;如果确省状态为输出引脚,则可以悬空不接。
使用C/C++语言编写基于DSP程序的注意事项1、不影响执行速度的情况下,可以使用c或c/c++语言提供的函数库,也可以自己设计函数,这样更易于使用“裁缝师”优化处理,例如:进行绝对值运算,可以调用fabs()或abs()函数,也可以使用if...else...判断语句来替代。
2、要非常谨慎地使用局部变量,根据自己项目开发的需要,应尽可能多地使用全局变量和静态变量。
3、一定要非常重视中断向量表的问题,很多朋友对中断向量表的调用方式不清楚。
其实中断向量表中的中断名是任意取定的,dsp是不认名字的,它只认地址!!中断向量表要重新定位。
这一点很重要。
4、要明确dsp软件开发的第一步是对可用存储空间的分析,存储空间分配好坏关系到一个dsp程序员的水平。
对于dsp,我们有两种名称的存储空间,一种是物理空间,另一种是映射空间。
物理空间是dsp上可以存放数据和程序的实际空间(包括外部存储器),我们的数据和程序最终放到物理空间上,但我们并不能直接访问它们。
我们要访问物理空间,必须借助于映射空间才行!!但是映射空间本身是个“虚”空间,是个不存在的空间。
所以,往往是映射空间远远大于实际的物理空间,有些映射空间,如io映射空间,它本身还代表了一种接口。
只有那些物理空间映射到的映射空间才是我们真正可访问(读或写)的存储空间。
5、尽可能地减少除法运算,而尽可能多地使用乘法和加法运算代替。
6、如果ti公司或第三方软件合作商提供了dsp lib或其他的合法子程序库供调用,应尽可能地调用使用。
这些子程序均使用用汇编写成,更为重要之处是通过了tms320算法标准测试。
而且,常用的数字信号处理算法均有包括!!7、尽可能地采用内联函数!!而不用一般的函数!!可以提高代码的集成度。
8、编程风格力求简炼!!尽可能用c语言而不用c++语言。
我个人感到虽然c++终代码长了一些,好象对执行速度没有影响。
9、因为在c5000中double型和float型均占有2个字,所以都可以使用,而且,可以直接将int型赋给float型或double型,但,尽可能地多使用int数据类型代替!这一点需要注意!!10、程序最后至少要加上一个空行,编译器当这个空行为结尾提示符。
一、时钟和电源问:DSP的电源设计和时钟设计应该特别注意哪些方面?外接晶振选用有源的好还是无源的好?答:时钟一般使用晶体,电源可用TI的配套电源。
外接晶振用无源的好。
问:TMS320LF2407的A/D转换精度保证措施。
答:参考电源和模拟电源要求干净。
问:系统调试时发现纹波太大,主要是哪方面的问题?答:如果是电源纹波大,加大电容滤波。
问:请问我用5V供电的有源晶振为DSP提供时钟,是否可以将其用两个电阻进行分压后再接到DSP的时钟输入端,这样做的话,时钟工作是否稳定?答:这样做不好,建议使用晶体。
问:一个多DSP电路板的时钟,如何选择比较好?DSP电路板的硬件设计和系统调试时的时序问题?答:建议使用时钟芯片,以保证同步。
硬件设计要根据DSP芯片的时序,选择外围芯片,根据时序设定等待和硬件逻辑。
二.干扰与板的布局问:器件布局应重点考虑哪些因素?例如在集中抄表系统中?答:可用TMS320VC5402,成本不是很高。
器件布局重点应是存贮器与DSP的接口。
问:在设计DSP的PCB板时应注意哪些问题?答:1.电源的布置;2.时钟的布置;3.电容的布置;4.终端电路;5.数字同模拟的布置。
问:请问DSP在与前向通道(比如说AD)接口的时候,布线过程中要注意哪些问题,以保证AD 采样的稳定性?答:模拟地和数字地分开,但在一点接地。
问:DSP主板设计的一般步骤是什么?需要特别注意的问题有哪些?答:1.选择芯片;2.设计时序;3.设计PCB。
最重要的是时序和布线。
问:在硬件设计阶段如何消除信号干扰(包括模拟信号及高频信号)?应该从那些方面着手?答:1.模拟和数字分开;2.多层板;3.电容滤波。
问:在电路板的设计上,如何很好的解决静电干扰问题。
答:一般情况下,机壳接大地,即能满足要求。
特殊情况下,电源输入、数字量输入串接专用的防静电器件。
问:DSP板的电磁兼容(EMC)设计应特别注意哪些问题?答:正确处理电源、地平面,高速的、关键的信号在源端串接端接电阻,避免信号反射。
---------------------------------------------------------------最新资料推荐------------------------------------------------------ 做DSP最应该懂得的几个问题做 DSP 最应该懂得的几个问题二.DSP 的 C 语言同主机 C 语言的主要区别? 1)DSP 的 C 语言是标准的 ANSI C,它不包括同外设联系的扩展部分,如屏幕绘图等。
但在 CCS 中,为了方便调试,可以将数据通过 prinf 命令虚拟输出到主机的屏幕上。
2)DSP 的 C 语言的编译过程为, C 编译为 ASM,再由 ASM 编译为OBJ。
因此 C 和 ASM 的对应关系非常明确,非常便于人工优化。
3)DSP 的代码需要绝对定位;主机的 C 的代码有操作系统定位。
4)DSP 的 C 的效率较高,非常适合于嵌入系统。
三.DSP 发展动态 1.TMS320C2019 TMS320C2019 系列包括C24x 和 C28x 系列。
C24x 系列建议使用 LF24xx系列替代C24x系列, LF24xx系列的价格比 C24x便宜,性能高于C24x,而且LF24xxA具有加密功能。
C28x 系列主要用于大存储设备管理,高性能的控制场合。
2.TMS320C3x TMS320C3x 系列包括 C3x 和 VC33,主要推荐使用 VC33。
C3x 系列是 TI 浮点 DSP 的基础,不可能停产,但价格不会进一步下调。
1 / 123.TMS320C5x TMS320C5x 系列已不推荐使用,建议使用C24x 或 C5000 系列替代。
4.TMS320C5000 TMS320C5000 系列包括 C54x 和 C55x 系列。
其中VC54xx 还不断有新的器件出现,如:TMS320VC5471(DSP+ARM7)。
C55x 系列是 TI 的第三代 DSP,功耗为 VC54xx 的 1/6,性能为 VC54xx 的 5 倍,是一个正在发展的系列。
C5000 系列是目前 TI DSP 的主流 DSP,它涵盖了从低档到中高档的应用领域,目前也是用户最多的系列。
5.TMS320C6000 TMS320C6000 系列包括C62xx、C67xx 和C64xx。
此系列是 TI 的高档 DSP 系列。
其中 C62xx 系列是定点的 DSP,系列芯片种类较丰富,是主要的应用系列。
C67xx 系列是浮点的 DSP,用于需要高速浮点处理的领域。
C64xx 系列是新发展,性能是 C62xx 的 10 倍。
6.OMAP 系列是 TI 专门用于多媒体领域的芯片,它是 C55+ARM9,性能卓越,非常适合于手持设备、 Internet 终端等多媒体应用。
四.5V/3.3V 如何混接? TI DSP 的发展同集成电路的发展一样,新的 DSP 都是 3.3V 的,但目前还有许多外围电路是 5V 的,因此在 DSP 系统中,经常有 5V 和 3.3V 的 DSP 混接问题。
---------------------------------------------------------------最新资料推荐------------------------------------------------------ 在这些系统中,应注意:1)DSP 输出给 5V 的电路(如 D/A),无需加任何缓冲电路,可以直接连接。
2)DSP 输入 5V 的信号(如 A/D),由于输入信号的电压4V,超过了 DSP 的电源电压, DSP 的外部信号没有保护电路,需要加缓冲,如 74LVC245 等,将 5V 信号变换成 3.3V 的信号。
3)仿真器的 JTAG 口的信号也必须为 3.3V,否则有可能损坏DSP。
五.为什么要片内 RAM 大的 DSP 效率高?目前 DSP 发展的片内存储器 RAM 越来越大,要设计高效的 DSP 系统,就应该选择片内 RAM 较大的 DSP。
片内 RAM 同片外存储器相比,有以下优点:1)片内 RAM 的速度较快,可以保证 DSP 无等待运行。
2)对于 C2019/C3x/C5000 系列,部分片内存储器可以在一个指令周期内访问两次,使得指令可以更加高效。
3)片内 RAM 运行稳定,不受外部的干扰影响,也不会干扰外部。
4)DSP 片内多总线,在访问片内 RAM 时,不会影响其它总线的访问,效率较高。
六.为什么 DSP 从 5V 发展成 3.3V?超大规模集成电路的发展从 1um,发展到目前的 0.1um,芯片的电源电压也随之降低,3 / 12功耗也随之降低。
DSP 也同样从 5V 发展到目前的 3.3V,核心电压发展到 1V。
目前主流的 DSP 的外围均已发展为 3.3V, 5V 的 DSP 的价格和功耗都价格,以逐渐被3.3V 的 DSP 取代。
七如何选择 DSP 的电源芯片? TMS320LF24xx:TPS7333QD, 5V 变 3.3V,最大 500mA。
TMS320VC33:TPS73HD318PWP, 5V 变 3.3V 和 1.8V,最大 750mA。
TMS320VC54xx:TPS73HD318PWP,5V 变 3.3V 和 1.8V,最大750mA;TPS73HD301PWP, 5V 变 3.3V 和可调,最大 750mA。
TMS320VC55xx:TPS73HD301PWP, 5V 变 3.3V 和可调,最大 750mA。
TMS320C6000:PT6931, TPS56000,最大 3A。
八.软件等待的如何使用? DSP 的指令周期较快,访问慢速存储器或外设时需加入等待。
等待分硬件等待和软件等待,每一个系列的等待不完全相同。
1)对于 C2019 系列:硬件等待信号为READY,高电平时不等待。
软件等待由 WSGR 寄存器决定,可以加入最多 7 个等待。
其中程序存储器和数据存储器及 I/O 可以分别设置。
---------------------------------------------------------------最新资料推荐------------------------------------------------------ 2)对于 C3x 系列:硬件等待信号为/RDY,低电平是不等待。
软件等待由总线控制寄存器中的 SWW 和 WTCNY 决定,可以加入最多 7 个等待,但等待是不分段的,除了片内之外全空间有效。
3)对于 C5000 系列:硬件等待信号为 READY,高电平时不等待。
软件等待由 SWWCR 和 SWWSR 寄存器决定,可以加入最多 14 个等待。
其中程序存储器、控制程序存储器和数据存储器及 I/O 可以分别设置。
4)对于 C6000 系列(只限于非同步存储器或外设):硬件等待信号为 ARDY,高电平时不等待。
软件等待由外部存储器接口控制寄存器决定,总线访问外部存储器或设备的时序可以设置,可以方便的同异步的存储器或外设接口。
九.中断向量为什么要重定位?为了方便DSP存储器的配置,一般DSP的中断向量可以重新定位,即可以通过设置寄存器放在存储器空间的任何地方。
注意:C2019 的中断向量不能重定位。
十.DSP 的最高主频能从芯片型号中获得吗? TI 的 DSP5 / 12最高主频可以从芯片的型号中获得,但每一个系列不一定相同。
1)TMS320C2019 系列:TMS320F206-最高主频 20MHz。
TMS320C203/C206-最高主频 40MHz。
TMS320F24x-最高主频 20MHz。
TMS320LF24xx-最高主频 30MHz。
TMS320LF24xxA-最高主频 40MHz。
TMS320LF28xx-最高主频 150MHz。
2)TMS320C3x 系列:TMS320C30:最高主频 25MHz。
TMS320C31PQL80:最高主频 40MHz。
TMS320C32PCM60 :3)TMS320C5000 系列:TMS320VC54xx:最高主频 160MHz。
TMS320VC55xx:最高主频300MHz。
4)TMS320C6000 系列:TMS320C62xx:---------------------------------------------------------------最新资料推荐------------------------------------------------------ 最高主频 300MHz。
TMS320C67xx:最高最高主频 30MHz 。
TMS320VC33PGE150 :最高主频 75MHz 。
主频 230MHz。
TMS320C64xx:最高主频 720MHz。
十一.DSP 可以降频使用吗?可以, DSP 的主频均有一定的工作范围,因此 DSP 均可以降频使用。
十二.如何选择外部时钟? DSP 的内部指令周期较高,外部晶振的主频不够,因此 DSP 大多数片内均有 PLL。
但每个系列不尽相同。
1)TMS320C2019 系列:TMS320C20x:PLL 可以2,1, 2 和4,因此外部时钟可以为 5MHz-40MHz。
TMS320F240:PLL 可以2, 1, 1.5, 2, 2.5, 3, 4, 4.5, 5 和9,因此外部时钟可以为 2.22MHz-40MHz。
TMS320F241/C242/F243:PLL 可以4,因此外部时钟为 5MHz。
7 / 12TMS320LF24xx:PLL 可以由RC 调节,因此外部时钟为 4MHz-20MHz。
TMS320LF24xxA:PLL 可以由 RC 调节,因此外部时钟为 4MHz-20MHz。
2)TMS320C3x 系列:TMS320C3x:没有 PLL,因此外部主频为工作频率的 2 倍。
TMS320VC33:PLL 可以2, 1, 5,因此外部主频可以为 12MHz-100MHz。
3)TMS320C5000 系列:TMS320VC54xx:PLL 可以4, 2, 1-32,因此外部主频可以为0.625MHz-50MHz。
TMS320VC55xx:PLL 可以4, 2, 1-32,因此外部主频可以为 6.25MHz-300MHz。
4)TMS320C6000 系列:TMS320C62xx:PLL 可以1, 4, 6, 7, 8, 9, 10 和11,因此外部主频可以为 11.8MHz-300MHz。
TMS320C67xx:PLL 可以1 和4,因此外部主频可以为 12.5MHz-230MHz。
---------------------------------------------------------------最新资料推荐------------------------------------------------------TMS320C64xx:PLL 可以1, 6 和12,因此外部主频可以为 30MHz-720MHz 十三.如何选择 DSP 的外部存储器? DSP 的速度较快,为了保证DSP 的运行速度,外部存储器需要具有一定的速度,否则 DSP 访问外部存储器时需要加入等待周期。