??xml version="1.0" encoding="utf-8" standalone="yes"?>国产精品一区二区久久精品涩爱,久久婷婷五月综合97色一本一本
,精品国际久久久久999波多野http://www.shnenglu.com/erran/category/5359.htmlzh-cnSun, 20 Jul 2008 14:55:24 GMTSun, 20 Jul 2008 14:55:24 GMT60- ARM & DSP 。。。。。。。。?/title>http://www.shnenglu.com/erran/archive/2008/07/20/56671.htmlerranerranSun, 20 Jul 2008 03:41:00 GMThttp://www.shnenglu.com/erran/archive/2008/07/20/56671.htmlhttp://www.shnenglu.com/erran/comments/56671.htmlhttp://www.shnenglu.com/erran/archive/2008/07/20/56671.html#Feedback1http://www.shnenglu.com/erran/comments/commentRss/56671.htmlhttp://www.shnenglu.com/erran/services/trackbacks/56671.html想买套嵌入式的硬件玩玩,查了很长旉的资料,定了两个方面armQdsp。公司做的东西主要用到的是dspQ惭愧的做Y件的没什么机会接触那些?br />
看了arm和dsp的比较,armҎ作系l的支持很好Q控制性能很好Qdsp的数据处理能?.....
惛_Carm板试试,考虑了很久最后还是决定买周立功的Q虽然hD了点Q资料全些?MagicARM2410没查Ch钱,估计?k以上吧,没法接受..... smartArm2200不到2kQ勉行。?br />
今天是星期日Q打他们代理电话Q说只能周一到周五才能买刎ͼ晕死Q周立功不会q么牛吧......q有q样做生意的。。。。?br />
《打听到的DSPh SEED-XDSusbUSB2.0Q?.7k含税公司采购P SEED-DPS2812/KitQ?.5k左右吧) ?br />
q里应该有很多是做这个的吧,毕竟是Cpp blogQ?o(∩_?o... 恌l点....
《《《不好意思,我发C“首原创区”,谅解?o(∩_?o...》》》?br />
]]> - 转:单片机汇~程序编码规?/title>http://www.shnenglu.com/erran/archive/2007/10/14/34188.htmlerranerranSat, 13 Oct 2007 16:43:00 GMThttp://www.shnenglu.com/erran/archive/2007/10/14/34188.htmlhttp://www.shnenglu.com/erran/comments/34188.htmlhttp://www.shnenglu.com/erran/archive/2007/10/14/34188.html#Feedback0http://www.shnenglu.com/erran/comments/commentRss/34188.htmlhttp://www.shnenglu.com/erran/services/trackbacks/34188.html阅读全文

]]> - 转:DSP芯片介绍 http://www.shnenglu.com/erran/archive/2007/10/13/34170.htmlerranerranSat, 13 Oct 2007 15:48:00 GMThttp://www.shnenglu.com/erran/archive/2007/10/13/34170.htmlhttp://www.shnenglu.com/erran/comments/34170.htmlhttp://www.shnenglu.com/erran/archive/2007/10/13/34170.html#Feedback0http://www.shnenglu.com/erran/comments/commentRss/34170.htmlhttp://www.shnenglu.com/erran/services/trackbacks/34170.html
{于最q汉芯造假丑闻非常行,q里介绍一下dsp芯片
借此Z,l大家一个dsp芯片的概?br />http://dsp.blueidea.com/column/weekly/001/145.asp
1 什么是DSP芯片
DSP芯片Q也U数字信号处理器Q是一U具有特D结构的微处理器。DSP芯片的内部采用程序和数据分开的哈佛结构,h专门的硬件乘法器Q广泛采用流水线
操作Q提供特D的DSP 指oQ可以用来快速地实现各种数字信号处理法。根据数字信号处理的要求QDSP芯片一般具有如下的一些主要特点:
Q?Q?在一个指令周期内可完成一ơ乘法和一ơ加法?br />
Q?Q?E序和数据空间分开Q可以同时访问指令和数据?br />
Q?Q?片内h快速RAMQ通常可通过独立的数据ȝ在两块中同时讉K?br />
Q?Q?h低开销或无开销循环及蟩转的g支持?br />
Q?Q?快速的中断处理和硬件I/O支持?br />
Q?Q?h在单周期内操作的多个g地址产生器?br />
Q?Q?可以q行执行多个操作?br />
Q?Q?支持水U操作,使取指、译码和执行{操作可以重叠执行?br />
与通用微处理器相比QDSP芯片的其他通用功能相对较弱些?br />
2 DSP芯片的发?br />
世界上第一个单片DSP芯片?978qAMI公司宣布的S2811Q?979q美国Iintel公司发布的商用可~程期间2920是DSP芯片的一个主
要里E碑。这两种芯片内部都没有现代DSP芯片所必须的单周期芯片?1980q。日本NEC公司推出的μPD7720是第一个具有乘法器的商用DSP
芯片。第一个采用CMOS工艺生点DSP芯片的是日本的Hitachi
公司Q它?982q推Z点DSP芯片?983q_日本的Fujitsu公司推出的MB8764Q其指o周期?20ns
Q且h双内部ȝQ从而处理的吞吐量发生了一个大的飞跃。而第一个高性能的Q点DSP芯片应是AT&T公司?984q推出的DSP32?br />
在这么多的DSP芯片U类中,最成功的是国德克萨斯仪器公司QTexas
InstrumentsQ简UTIQ的一pd产品。TI公司?82q成功推出启q一代DSP芯片TMS32010及其pd产品TMS32011?
TMS32C10/C14/C15/C16/C17{,之后相推出了第二代DSP芯片TMS32020、TMS320C25/C26/C28Q第三代
DSP芯片TMS32C30/C31/C32Q第四代DSP芯片TMS32C40/C44Q第五代DSP芯片TMS32C50/C51/C52/C53?
及集多个DSP于一体的高性能DSP芯片TMS32C80/C82{?br />
?980q以来,DSP芯片得到了突飞猛q的发展QDSP芯片的应用越来越q泛。从q算速度来看QMACQ一ơ乘法和一ơ加法)旉已经?0q代初的
400nsQ如TMS32010Q降低到40nsQ如TMS32C40Q,处理能力提高?0多倍。DSP芯片内部关键的乘法器部g?980q的占模?
?0左右下降?以下Q片内RAM增加一个数量以上。从刉工艺来看,1980q采?μ的N沟道MOS工艺Q而现在则普遍采用亚微cCMOS工艺?
DSP芯片的引脚数量从1980q的最?4个增加到现在?00个以上,引脚数量的增加,意味着l构灉|性的增加。此外,DSP芯片的发展,是DSPp?
l的成本、体U、重量和功耗都有很大程度的下降?br />
3 DSP芯片的分c?br />
DSP的芯片可以按照以下的三种方式q行分类?br />
1. 按基Ҏ分
q是ҎDSP芯片的工作时钟和指ocd来分cȝ。如果DSP芯片在某旉频率范围内的M频率上能正常工作Q除计算速度有变化外Q没有性能的下降,q类DSP芯片一般称之ؓ静态DSP芯片?br />
如果有两U或两种以上的DSP芯片,它们的指令集和相应的机器代码机管脚结构相互兼?则这cDSP芯片UCZ致性的DSP芯片?br />
2. 按数据格式分
q是ҎDSP芯片工作的数据格式来分类的。数据以定点格式工作的DSP芯片UC为定点DSP芯片。以点格式工作的称为DSP芯片。不同的点DSP?
片所采用的QҎ式不完全一P有的DSP芯片采用自定义的点格式Q有的DSP芯片则采用IEEE的标准QҎ式?br />
3. 按用途分
按照DSP芯片的用途来分,可分为通用型DSP芯片和专用型的DSP芯片。通用型DSP芯片适合普通的DSP应用Q如TI公司的一pdDSP芯片。专用型DSP芯片市ؓ特定的DSPq算而设计,更适合Ҏ的运,如数字o波,L和FFT{?br />
4 DSP芯片的选择
设计DSP应用pȝQ选择DSP芯片旉帔R要的一个环节。只有选定了DSP芯片才能q一步设计外围电路集pȝ的其它电路。ȝ来说QDSP芯片的选择应根据实际的应用pȝ需要而确定。一般来_选择DSP芯片时考虑如下诸多因素?br />
1Q?DSP芯片的运速度。运速度是DSP芯片的一个最重要的性能指标Q也是选择DSP芯片时所需要考虑的一个主要因素。DSP芯片的运速度可以用以下几U性能指标来衡量:
Q?Q?指o周期。就是执行一条指令所需要的旉Q通常以ns为单位?br />
Q?Q?MAC旉。即一ơ乘法加上一ơ加法的旉?br />
Q?Q?FFT执行旉。即q行一个N点FFTE序所需的时间?br />
Q?Q?MIPS。即每秒执行百万条指令?br />
Q?Q?MOPS。即每秒执行百万ơ操作?br />
Q?Q?MFLOPS。即每秒执行百万ơQҎ作?br />
Q?Q?BOPS。即每秒执行十亿ơ操作?br />
2Q?DSP芯片的h根{根据一个h格实际的应用情况Q确定一个h格适中的DSP芯片?br />
3Q?DSP芯片的硬件资源?br />
4Q?DSP芯片的运速度?br />
5Q?DSP芯片的开发工兗?br />
6Q?DSP 芯片的功耗?br />
7Q?其它的因素,如封装的形式、质量标准、生命周期等?br />
DSP应用pȝ的运量是确定选用处理能力多大的DSP芯片的基。那么如何确定DSPpȝ的运量以选择DSP芯片呢?
1Q?按样点处?br />
按样点处理就是DSP法Ҏ一个输入样点@环一ơ。例如;一个采用LMS法?56抽头L自适应FIR滤L器,假定每个抽头的计需?个MAC?
期,?56抽头计算需?56*3=768个MAC周期。如果采样频率ؓ8KHzQ即L之间的间隔ؓ125μs的时_DSP芯片的MAC周期?
200μsQ则768个周期需?53.6μs的时_昄无法实时处理Q需要选用速度更快的芯片?br />
2Q?按处理
有些数字信号处理法不是每个输入L循环一ơ,而是每隔一定的旉间隔Q通常UCؓ帧)循环一ơ。所以选择DSP芯片应该比较一帧内DSP芯片的处理能?
和DSP法的运量。假设DSP芯片的指令周期ؓPQnsQ,一帧的旉为⊿τQnsQ,则该DSP芯片在一帧内所提供的最大运量为⊿τ/ P
条指令?br />
5 DSP芯片的基本结?br />
DSP芯片的基本结构包括:
Q?Q哈佛结构;
Q?Q流水线操作Q?br />
Q?Q专用的g乘法器;
Q?Q特D的DSP指oQ?br />
Q?Q快速的指o周期?br />
哈佛l构
哈佛l构的主要特Ҏ程序和数据存储在不同的存储I间中,即程序存储器和数据存储器是两个相互独立的存储器,每个存储器独立编址Q独立访问。与两个存储
器相对应的是pȝ中设|了E序ȝ和数据ȝQ从而数据的吞吐率提高了一倍。由于程序和存储器在两个分开的空间中Q因此取指和执行能完全重叠?br />
水U与哈佛l构相关QDSP芯片q泛采用水U以减少指o执行的时_从而增Z处理器的处理能力。处理器可以q行处理二到四条指oQ每条指令处于流水线的不同阶Dc入囄Z个三U流水线操作的例子?br />
CLLOUT1
取指 N N-1 N-2
译码 N-1 N N-2
执行 N-2 N-1 N
?-1 三水U操?br />
专用的硬件乘法器
乘法速度快QDSP处理器的性能高。由于具有专用的应用乘法器,乘法可在一个指令周期内完成?br />
Ҏ的DSP指oDSP芯片是采用特D的指o?br />
快速的指o周期哈佛l构、流水线操作、专用的g乘法器、特D的DSP指o再加上集成电路的优化设计可DSP芯片的指令周期在200ns以下?br />
6 DSPpȝ的特?br />
数字信号处理pȝ是以数字信号处理为基Q因此具有数字处理的全部特点Q?br />
Q?Q?接口方便。DSPpȝ与其它以C数字技术ؓ基础的系l或讑֤都是怺兼容Q这Lpȝ接口以实现某U功能要比模拟系l与q些pȝ接口要容易的多?br />
Q?Q?~程方便。DSPpȝU的可编EDSP芯片可设计人员在开发过E中灉|方便地对软gq行修改和升U?br />
Q?Q?E_性好。DSPpȝ以数字处理ؓ基础Q受环境温度以及噪声的媄响较,可靠性高?br />
Q?Q?_ֺ高?6位数字系l可以达到的_ֺ?br />
Q?Q?可重复性好。模拟系l的性能受元器g参数性能变化比较大,而数字系l基本上不受影响Q因此数字系l便于测试,调试和大规模生?br />
Q?Q?集成方便。DSPpȝ中的数字部g有高度的规范性,便于大规模集成?br />
7 DSP芯片的应?br />
自从DSP芯片诞生以来QDSP芯片得到了飞速的发展。DSP芯片高速发展,一斚w得益于集成电路的发展Q另一斚w也得益于巨大的市场。在短短的十多年?
_DSP芯片已经在信号处理、通信、雷辄许多领域得到q泛的应用。目前,DSP芯片的hg来低Q性能h比日益提高,h巨大的应用潜力?
DSP芯片的应用主要有Q?br />
Q?Q?信号处理--如,数字滤L、自适应滤L、快速傅里叶变换、相兌、频谱分析、卷U等?br />
Q?Q?通信--如,调制解调器、自适应均衡、数据加密、数据压~、回坡抵消、多路复用、传真、扩频通信、纠错编码、L形生等?br />
Q?Q?语音--如语音编码、语韛_成、语韌别、语韛_强、说话h辨认、说话h认、语音邮件、语韛_存等?br />
Q?Q?囑փ/囑Ş--如二l和三维囑Ş处理、图像压~与传输、图像增强、动甅R机器h视觉{?br />
Q?Q?军事--如保密通信、雷辑֤理、声U_理、导航等?br />
Q?Q?仪器仪表--如频谱分析、函数发生、锁相环、地震处理等?br />
Q?Q?自动控制--如引擎控制、深I、自动驾驶、机器h控制、磁盘控制?br />
Q?Q?ȝ--如助听、超声设备、诊断工兗病人监护等?br />
Q?Q?家用电器--如高保真韛_、音乐合成、音调控制、玩具与游戏、数字电?电视{?/span>

]]> - 转:DSP的特?/title>http://www.shnenglu.com/erran/archive/2007/10/13/34167.htmlerranerranSat, 13 Oct 2007 15:23:00 GMThttp://www.shnenglu.com/erran/archive/2007/10/13/34167.htmlhttp://www.shnenglu.com/erran/comments/34167.htmlhttp://www.shnenglu.com/erran/archive/2007/10/13/34167.html#Feedback0http://www.shnenglu.com/erran/comments/commentRss/34167.htmlhttp://www.shnenglu.com/erran/services/trackbacks/34167.html
原文Qhttp://www.mcublog.com/blog/user1/5157/archives/2006/16413.html
DSP的特?/font>
对于没有使用qDSP的初学者来_W一个困惑就是DSP其他的嵌入式处理器究竟有什么不同,它和单片机,ARM有什么区别。事实上QDSP也是一U嵌入式处理器,它完全可以完成单片机的功能?br />?
一的重要的区别在于DSP支持单时钟周期的"??q算。这几乎是所有厂家的DSP芯片的一个共有特征。几乎所有的DSP处理器的指o集中都会有一?
MAC指oQ这条指令可以把两个操作CRAM中取出相乘,然后加到一个篏加器中,所有这些操作都在一个时钟周期内完成。拥有这样一条指令的处理器就具备
?br />DSP功能?br />hq条指oq之ؓ数字信号处理器的原因在于Q所有的数字信号处理法中最为常见的术操作是"??。这是因为数
字信号处理中大量使用了内U,或称"点积"的运。无论是FIR滤LQFFTQ信L养I数字混频Q下变频。所有这些数字信号处理的q算l常是将输入信号
与一个系数表或者与一个本地参考信L乘然后积分(累加Q,q就表现为将两个向量Q或U序列)q行点积Q在~程上就变成输入的采样攑֜一个@?
buffer里,本地的系数表或参考信号也攑֜一个buffer里,然后使用两个指针指向q两个buffer。这样就可以在一个loop里面使用一?
MAC指o二者进行点U运。这L点积q算对与处理器来说是最快的Q因Z需一个始l周期就可以完成一ơ乘加?br />了解DSP的这一特点后,当我们设计一个嵌入式pȝӞ首先要考虑处理器所实现的算法中是否有点U运?br />Q即是否要经常进行两个数l的乘加Q(C数字滤LQ相关等都表Cؓ两个数组的点U)如果有的话,每秒要做多少ơ,q样p够决定是否采用DSPQ采用多高性能的DSP了?/font>
点与定?/font>
点与定点也是经常是初学者困惑的问题Q在选择DSP器g的时候,是采用Q点还是采用定点,如果用定Ҏ16位还?2位?其实q个问题和你的算法所要求的信L动态范围有兟?br />?
点的计算不过是把一个数据当作整数来处理Q通常AD采样来的都是整数Q这个数相对于真实的模拟信号有一个刻度因子,大家都知道用一?6位的AD去采样一
??V的信P那么AD输出的整数除?^16再乘?V是对应的电压。在定点DSP中是直接对这?6位的采样q行处理Qƈ不将它{换成以小数表
C的电压Q因为定点DSP无法以够的_ֺ表示一个小敎ͼ它只能对整数q行计算?br />而Q点DSP的优势在于它可以把这个采样得到的整数转换成小数表C的电压Qƈ不损q度(q个数用科学记数法来表C)Q原因在于科学记数法可以表示很大的动态范围的一个信P以IEEE754点Cؓ例,
单精度QҎ式: [31] 1位符?[30-23]8位指?[22-00]23位小?
q?
L能表C的最的数是+-2^-149,最大的数是+-Q?-2^23)*2^127.动态范围ؓ20*log(最大的?最的敎ͼ=
1667.6dB
q样大的动态范围得我们在~程的时候几乎不必考虑乘法和篏加的溢出Q而如果用定点处理器~程Q对计算l果q行舍入和移位则是家怾饭,q在一定程度上
会损失是_ֺ。原因在于定点处理处理的信号的动态范围有限,比如16位定点DSPQ可以表C整数范围ؓ1-65536Q其动态范围ؓ20*log
(65536/1)=96dB.对于32定点DSPQ动态范围ؓ20*log(2^32/1)=192dB,q小?2位ieee点数的
1667.6dB,但是Q实际上192dB对绝大多数应用所处理的信号已l够了?br />׃AD转换器的位数限制Q一般输入信L动态范围都比较,
但在DSP的信号处理中Q由于点U运会使中间节点信L动态范围增加,所以主要考虑信号处理程中中间结果的动态范_以及法对中间结果的_ֺ要求Q?
来选择相应的DSP。另外就是Q点的DSP更易于编E,定点DSP~程中程序员要不断调整中间结果的PQQ|实际是不断对中间结果进行移位调整和?
入?/font>
DSP与RTOS
TI的CCS提供BIOSQADI的VDSP提供VDKQ都是基于各自DSP的嵌入式多Q务内核。DSP~程可以用单用CQ也可以用汇~,或者二?
l合Q一般Y件编译工具都提供了很好的支持。我不想在这里多说BIOSQVDK怎么用这在相应的文档里说的很详细。我想给初学者说说DSP的RTOS?
理。用短短几段话说q个复杂的东西也是挑战!^_^
其实DSP的RTOS和基于其他处理器的通用RTOS没什么大的区别,现在几乎Zh皆知的uCOSii也很ҎUL到DSP上来Q只要把寄存器保存与恢复部分和堆栈部分改改就可以。一般在用BIOS和VDK之前Q先看看操作pȝ原理的书比较好。uCOS那本书也不错?br />BIOS
和VDK其实是一个RTOS内核函数集,DSP的应用程序会和这些函数连接成一个可执行文g。其实实C个简单的多Q务内核ƈ不复杂,首先定义好内核的?
U数据结构,然后写一个scheduler函数Q功能是从所有就lQ务中Q通过查找qAd队列或就lQ务表Q找Z先最高的dQƈ恢复其执行。然?
在此基础上写几个用于d间通信的函数就可以了,比如event,message box,{等?br />RTOS一般采用抢先式的Q务调度方式,举例?
当Q务A{待的资源available的时?DSP会执行一个Q务调度函数scheduler,q个函数会检查当前Q务是否比dA优先U低Q如果是?
话,׃把它当前挂vQ然后把dA保存在堆栈里寄存器值全部pop到DSP处理器中(q就是所谓的d现场恢复Q。接着schedulerq会把从堆栈
中取ZQ务A挂v时的E序执行的地址Qpop到PCQdAl箋执行。这样当前Q务就被Q务A抢先了?br />使用RTOS之后Q每个Q务都会有一个主
函数Q这个函数的起始地址是该Q务的入口。一般每个Q务的d数里有一个死循环Q这个@环该Q务周期地执行Q完成一部分法模块的功能,其实q个函数
跟普通函数没M区别Q类gC语言中的main函数。一个Q务创建的时候,RTOS会把q个函数入口地址压入d的堆栈中Q好象这个函敎ͼdQ刚发生
q一ơ中断一栗一旦这个新创徏d的优先在就l队列中是最高的QRTOS׃从其堆栈中弹出其入口地址开始执行?br />有一个疑问是Q不使用
RTOSQ而是单用一个主循环在程序中调用各个函数模块Q一样可以实现Y件的调度执行。那么,q种常用的方法与使用RTOS相比有什么区别呢Q其实,
使用d@环的Ҏ不过是一U没有优先的顺序执行的调度{略而已。这U方法的~点在于Q主循环中调用的各个函数是顺序执行的Q那么,即是一个无关紧要的
函数Q比如闪烁一个LEDQ,只要他不dq回Q也会一直执行直到结束,q时Q如果发生一个重要的事gQ比如DMA buffer full
中断)Q就会得不到及时的响应和处理Q只能等到那个闪烁LED的函数执行完毕。这样就使整个DSP处理的优先次序十分不合理。而在使用了RTOS之后Q当
一个重要的事g发生Ӟ中断处理会进入RTOSQƈ调用scheduler,q时scheduler
会让处理q一事g的Q务抢占DSP处理器(因ؓ它的优先U高Q。而哪个闪烁LEDd即晚执行几毫秒都没M影响。这h个DSP的调度策略就十分?
理?br />RTOS要说的内容太多,我只能讲一下自q一点体会吧
DSP与正Q余Qu?/font>
在DSP的应用中Q我们经常要用到三角函数Q或者合成一个正Q余Qu波。这是因为我们喜Ƣ把信号通过傅立叶变换映到三角函数I间来理解信L频率
Ҏ。信号处理的一些计技巧都需要在DSP软g中进行三角函数计。然而三角函数计是非线性的计算QDSPq没有专门的指o来求一个数的正弦或余u?
于是我们需要用U性方法来q似求解?br />一个直接的x是用多项式拟合,q也正是大多数DSP
C~译器提供正余u库函数所采用的方法。其原理是把三角函数向函数空间{1Qx,x^2,x^3....}上投影,从而获得一pd的系敎ͼ用这些系数就?
以拟合出三角函数。比如,我们在[0Qpi/2]区间上拟合sin,只需在matlab中输入以下命令:
x=0:0.05:pi/2;
p=polyfit(x,sin(x),5)
得?阶的多项式系敎ͼ
p =
0.00581052047605 0.00580963216172 -0.17193865685360
0.00209002716293 0.99969270087312 0.00000809543448
于是在[0Qpi/2]区间上:
sin(x)= 0.00000809543448+0.99969270087312*x+ 0.00209002716293*x^2-0.17193865685360*x^3+
0.00580963216172*x^4+0.00581052047605*x^5
于是在DSPE序中,我们可以通过用乘加(MACQ指令计这个多式来近似求得sin(x)
当然如果用定点DSPq要把Pq个多项式系数表用一定的Q值来改写成定Ҏ?/font>
q样的三角函数计一般都需要几十个cycle 的开销。这对于某些场合是不能容忍的
另一U更快的Ҏ是借助于查表,比如Q我们将[0Qpi/2]分成32个区_每个区间长度׃ؓpi/64,在每个区间上我们使用直线D|合sin曲线Q每个区间线Dv点的正u值和U段斜率事先好Q存在RAM里,q样需要在在RAM里存?4?br />常数Q?br />32个v点的_的正弦|事先好Q: s[32]={0,sin(pi/64),sin(pi/32),sin(pi/16)....}
32个线D늚斜率Q?f[32]={0.049,.....}
对于输入的每一个x,先根据其大小扑ֈ所在区间iQ通常x用定点表C,一般取光几位是pLi了,?后通过下式卛_求出sin(x)Q?br />sin(x)= s[i]*f[i]
q样一般只需几个CYCLE可以算出正弦|如果需要更高的_ֺQ可以将区间分得更细Q当Ӟ也就需 要更多的RAMd储常数表?br />事实上,不仅三角函数Q其他的各种非线性函数都是这栯D的?

]]>- 转:做DSP最应该懂得157个问题(回答Q?/title>http://www.shnenglu.com/erran/archive/2007/10/13/34166.htmlerranerranSat, 13 Oct 2007 15:04:00 GMThttp://www.shnenglu.com/erran/archive/2007/10/13/34166.htmlhttp://www.shnenglu.com/erran/comments/34166.htmlhttp://www.shnenglu.com/erran/archive/2007/10/13/34166.html#Feedback0http://www.shnenglu.com/erran/comments/commentRss/34166.htmlhttp://www.shnenglu.com/erran/services/trackbacks/34166.html
做DSP最应该懂得157个问题(回答Q?br />
?5V/3.3V如何hQ?br />TI
DSP的发展同集成电\的发展一P新的DSP都是3.3V的,但目前还有许多外围电路是5V的,因此在DSPpȝ中,l常?V?.3V的DSPh
问题。在q些pȝ中,应注意: 1)DSP输出l?V的电路(如D/AQ,无需加Q何缓冲电路,可以直接q接?
2)DSP输入5V的信P如A/DQ,׃输入信号的电?gt;4VQ超q了DSP的电源电压,DSP的外部信h有保护电路,需要加~冲Q如
74LVC245{,?V信号变换?.3V的信受?3)仿真器的JTAG口的信号也必Mؓ3.3VQ否则有可能损坏DSP?
?Z么要片内RAM大的DSP效率高?
?
前DSP发展的片内存储器RAM来大Q要设计高效的DSPpȝQ就应该选择片内RAM较大的DSP。片内RAM同片外存储器相比Q有以下优点Q?
1)片内RAM的速度较快Q可以保证DSP无等待运行?
2)对于C2000/C3x/C5000pdQ部分片内存储器可以在一个指令周期内讉K两次Q得指令可以更加高效?
3)片内RAMq行E_Q不受外部的q扰影响Q也不会q扰外部?4)DSP片内多ȝQ在讉K片内RAMӞ不会影响其它ȝ的访问,效率较高?br />
?Z么DSP?V发展?.3VQ?br />?
大规模集成电路的发展?umQ发展到目前?.1umQ芯片的甉|电压也随之降低,功耗也随之降低。DSP也同样从5V发展到目前的3.3VQ核心电?
发展?V。目前主的DSP的外围均已发展ؓ3.3VQ?V的DSP的h格和功耗都hQ以逐渐?.3V的DSP取代?
七如何选择DSP的电源芯片?
TMS320LF24xxQTPS7333QDQ?V?.3VQ最?00mA?
TMS320VC33Q?TPS73HD318PWPQ?V?.3V?.8VQ最?50mA?
TMS320VC54xxQTPS73HD318PWPQ?V?.3V?.8VQ最?50mAQ?TPS73HD301PWPQ?V?.3V和可调,最?50mA?
TMS320VC55xxQTPS73HD301PWPQ?V?.3V和可调,最?50mA?
TMS320C6000Q?PT6931QTPS56000Q最?A?
?软g{待的如何用?
DSP的指令周期较快,讉K慢速存储器或外设时需加入{待。等待分g{待和Y件等待,每一个系列的{待不完全相同?
1)对于C2000pdQ?g{待信号为READYQ高电^时不{待?软g{待由WSGR寄存器决定,可以加入最?个等待。其中程序存储器和数据存储器及I/O可以分别讄?
2)对于C3xpdQ?g{待信号?RDYQ低电^是不{待?软g{待由ȝ控制寄存器中的SWW和WTCNY军_Q可以加入最?个等待,但等待是不分D늚Q除了片内之外全I间有效?
3)对于C5000pdQ?g{待信号为READYQ高电^时不{待?软g{待由SWWCR和SWWSR寄存器决定,可以加入最?4个等待。其中程序存储器、控制程序存储器和数据存储器及I/O可以分别讄?
4)对于C6000pdQ只限于非同步存储器或外设)Q?g{待信号为ARDYQ高电^时不{待?软g{待由外部存储器接口控制寄存器决定,ȝ讉K外部存储器或讑֤的时序可以设|,可以方便的同异步的存储器或外设接口?
?中断向量Z么要重定位?
Z方便DSP存储器的配置Q一般DSP的中断向量可以重新定位,卛_以通过讄寄存器放在存储器I间的Q何地斏V?注意QC2000的中断向量不能重定位?
?DSP的最高主频能从芯片型号中获得吗?
TI的DSP最高主频可以从芯片的型号中获得Q但每一个系列不一定相同?
1)TMS320C2000pdQ?
TMS320F206Q最高主?0MHz?
TMS320C203/C206Q最高主?0MHz?
TMS320F24xQ最高主?0MHz?
TMS320LF24xxQ最高主?0MHz?
TMS320LF24xxAQ最高主?0MHz?
TMS320LF28xxQ最高主?50MHz?
2)TMS320C3xpdQ?
TMS320C30Q最高主?5MHz?
TMS320C31PQL80Q最高主?0MHz?
TMS320C32PCM60Q最高主?0MHz?
TMS320VC33PGE150Q最高主?5MHz?
3)TMS320C5000pdQ?
TMS320VC54xxQ最高主?60MHz?
TMS320VC55xxQ最高主?00MHz?
4)TMS320C6000pdQ?
TMS320C62xxQ最高主?00MHz?
TMS320C67xxQ最高主?30MHz?
TMS320C64xxQ最高主?20MHz?
十一.DSP可以降频使用吗?
可以QDSP的主频均有一定的工作范围Q因此DSP均可以降频用?
十二.如何选择外部旉Q?br />DSP的内部指令周期较高,外部晶振的主频不够,因此DSP大多数片内均有PLL。但每个pd不尽相同?
1)TMS320C2000pdQ?
TMS320C20xQPLL可以÷2Q?Q?和?Q因此外部时钟可以ؓ5MHzQ?0MHz?
TMS320F240QPLL可以÷2Q?Q?.5Q?Q?.5Q?Q?Q?.5Q?和?Q因此外部时钟可以ؓ2.22MHzQ?0MHz?
TMS320F241/C242/F243QPLL可以×4Q因此外部时钟ؓ5MHz?TMS320LF24xxQPLL可以由RC调节Q因此外部时钟ؓ4MHzQ?0MHz?
TMS320LF24xxAQPLL可以由RC调节Q因此外部时钟ؓ4MHzQ?0MHz?
2)TMS320C3xpdQ?
TMS320C3xQ没有PLLQ因此外部主频ؓ工作频率?倍?
TMS320VC33QPLL可以÷2Q?Q?Q因此外部主频可以ؓ12MHzQ?00MHz?
3)TMS320C5000pdQ?
TMS320VC54xxQPLL可以÷4Q?Q?-32Q因此外部主频可以ؓ0.625MHzQ?0MHz?
TMS320VC55xxQPLL可以÷4Q?Q?-32Q因此外部主频可以ؓ6.25MHzQ?00MHz?
4)TMS320C6000pdQ?
TMS320C62xxQPLL可以×1Q?Q?Q?Q?Q?Q?0和?1Q因此外部主频可以ؓ11.8MHzQ?00MHz?
TMS320C67xxQPLL可以×1和?Q因此外部主频可以ؓ12.5MHzQ?30MHz?
TMS320C64xxQPLL可以×1Q?和?2Q因此外部主频可以ؓ30MHzQ?20MHz
十三.如何选择DSP的外部存储器Q?br />DSP的速度较快Qؓ了保证DSP的运行速度Q外部存储器需要具有一定的速度Q否则DSP讉K外部存储器时需要加入等待周期?
1)对于C2000pdQ?C2000pd只能同异步的存储器直接相接?C2000pd的DSP目前的最高速度?50MHz。徏议可以用的存储器有:
CY7C199-15Q?2K×8Q?5nsQ?VQ?
CY7C1021-12Q?4K×16Q?5nsQ?VQ?CY7C1021V33-12Q?4K×16Q?5nsQ?.3V?
2)对于C3xpdQ?C3xpd只能同异步的存储器直接相接?C3xpd的DSP的最高速度Q?V的ؓ40MHzQ?.3V的ؓ75MHzQؓ保证DSP无等待运行,分别需要外部存储器的速度<25ns?lt;12ns。徏议可以用的存储器有:
ROMQ?AM29F400-70Q?56K×16Q?0nsQ?VQ加入一个等待;
AM29LV400-55(SST39VF400)Q?56K×16Q?5nsQ?.3VQ加入两个等待(目前没有更快的FlashQ?
SRAMQ?CY7C199-15Q?2K×8Q?5nsQ?VQ?
CY7C1021-15Q?4K×16Q?5nsQ?VQ?
CY7C1009-15Q?28K×8Q?5nsQ?VQ?
CY7C1049-15Q?12K×8Q?5nsQ?VQ?
CY7C1021V33-15Q?4K×16Q?5nsQ?.3VQ?
CY7C1009V33-15Q?28K×8Q?5nsQ?.3VQ?
CY7C1041V33-15Q?56k×16Q?5nsQ?.3V?
3)对于C54xpdQ?C54xpd只能同异步的存储器直接相接?C54xpd的DSP的速度?00MHz?60MHzQؓ保证DSP无等待运行,需要外部存储器的速度<10ns?lt;6ns。徏议可以用的存储器有:
ROMQ?AM29LV400-55(SST39VF400)Q?56K×16Q?5nsQ?.3VQ加??个等待(目前没有更快的FlashQ?
SRAMQ?CY7C1021V33-12Q?4K×16Q?2nsQ?.3VQ加入一个等待;
CY7C1009V33-12Q?28K×8Q?2nsQ?.3VQ加入一个等待?
4)对于C55x和C6000pdQ?TI的DSP中只有C55x和C6000可以同同步的存储器相q,同步存储器可以保证系l的数据交换效率更高?
ROMQ?AM29LV400-55(SST39VF400)Q?56K×16Q?5nsQ?.3V?
SDRAMQ?HY57V651620BTC-10SQ?4MQ?0ns?
SBSRAMQ?CY7C1329-133ACQ?4k×32Q?
CY7C1339-133ACQ?28k×32?
FIFOQCY7C42x5V-10ASCQ?2k/64k×18?
十四.DSP芯片有多大的驱动能力Q?br />DSP的驱动能力较强,可以不加驱动Q连?个以上标准TTL门?
十五.调试TMS320C2000pd的常见问题?
1)单步可以q行Q连l运行时d0地址Q?Watchdog没有养Iq箋q行复位DSP回到0地址?
2)OUT文g不能load到片内flash中: Flash不是RAMQ不能用单的写指令写入,需要专门的E序写入。CCS和C Source Debugger中的load命oQ不能对flash写入?OUT文g只能load到片内RAMQ或片外RAM中?
3)在flash中如何加入断点: 在flash中可以用单步调试Q也可以用硬件断点的Ҏ在flash中加入断点,软g断点是不能加在ROM中的。硬件断点,讄存储器的地址Q当讉K该地址时生中断?
4)中断向量Q?C2000的中断向量不可重定位Q因此中断向量必L?地址开始的flash内。在调试pȝӞ代码攑֜RAM中,中断向量也必L在flash内?
十六.调试TMS320C3xpd的常见问题?
1)TMS320C32的存储器配置Q?TMS320C32的程序存储器可以配置?6位或32位;数据存储器可以配|ؓ8位?6位或32位?
2)TMS320VC33的PLL控制Q?TMS320VC33的PLL控制端只能接1.8VQ不能接3.3V?V?
十七.如何调试多片DSPQ?br />?
于有MPSD仿真口的DSPQTMS320C30/C31/C32Q,不能用一套仿真器同时调试Q每ơ只能调试其中的一个DSPQ?
对于有JTAG仿真口的DSPQ可以将JTAG串接在一P用一套仿真器同时调试多个DSPQ每个DSP可以用不同的名字Q在不同的窗口中调试?
注意Q如果在JTAG和DSP间加入驱动,一定要用快速的门电路,不能使用如LS的慢速门电\?
十八.在DSPpȝ中ؓ什么要使用CPLDQ?br />DSP
的速度较快Q要求译码的速度也必较快。利用小规模逻辑器g译码的方式,已不能满DSPpȝ的要求?
同时QDSPpȝ中也l常需要外部快速部件的配合Q这些部件往往是专门的电\Q有可编E器件实现?
CPLD的时序严|速度较快Q可~程性好Q非帔R合于实现译码和专门电\?
十九.DSPpȝ构成的常用芯片有哪些Q?br />1)甉|Q?TPS73HD3xxQTPS7333QTPS56100QPT64xx...
2)FlashQ?AM29F400QAM29LV400QSST39VF400...
3)SRAMQ?CY7C1021QCY7C1009QCY7C1049...
4)FIF CY7C425QCY7C42x5...
5)Dual portQ?CY7C136QCY7C133QCY7C1342...
6)SBSRAMQ?CY7C1329QCY7C1339...
7)SDRAMQ?HY57V651620BTC...
8)CPLDQ?CY37000pdQCY38000pdQCY39000pd...
9)PCIQ?PCI2040QCY7C09449...
10)USBQ?AN21xxQCY7C68xxx...
11)CodecQTLV320AIC23QTLV320AIC10...
12)A/D,D/AQADS7805QTLV2543...
具体资料见www.ti.comQwww.cypress.com
二十.什么是boot loaderQ?br />DSP
的速度快QEPROM或flash的速度较慢Q而DSP片内的RAM很快Q片外的RAM也较快。ؓ了DSP充分发挥它的能力Q必dE序代码攑֜
RAM中运行。ؓ了方便的代码从ROM中搬到RAM中,在不带flash的DSP中,TI在出厂时固化了一D늨序,在上电后完成从ROM或外讑ְ代码?
到用h定的RAM中。此D늨序称?boot loader"?
二十一.TMS320C3x如何bootQ?br />在MC/MP脚为高ӞC3xq入boot状态。C3x的boot loader在resetӞ判断外部中断脚的电q뀂根据中断配|决定boot的方式ؓ存储器加载还是串口加载,其中ROM的地址可以Z个中的一个,ROM可以?位?
二十?Boot有问题如何解冻I
1)仔细查boot的控制字是否正确?
2)仔细查外部管脚设|是否正?
3)仔细查hex文g是否转换正确?
4)用仿真器跟踪bootq程Q分析错误原因?
二十?DSPZ么要初始化?
DSP在RESET后,许多的寄存器的初g般同用户的要求不一_例如Q等待寄存器QSPQ中断定位寄存器{,需要通过初始化程序设|ؓ用户要求的数倹{?初始化程序的主要作用Q?1)讄寄存器初倹{?2)建立中断向量表?3)外围部g初始化?
二十?DSP有哪些数学库及其它应用YӞ
TI公司Z方便客户开发DSPQ在它的|站上提供了许多E序的示例和应用E序Q如MATH库,FFTQFIR/IIR{,可以在TI的网免费下载?
二十?如何获得DSP专用法Q?br />TI有许多的Third Party可以通过DSP上的多种法软g。可以通过TI的网|索你所需的算法,扑ֈ通过法的公司,同相应的公司联系。注意这些算法都是要付费的?br />
二十?eXpressDSP是什么?
eXpressDSP
是一U实时DSP软g技术,它是一UDSP~程的标准,利用它可以加快你开发DSP软g的速度?
以往DSP软g的开发没有Q何标准,不同的h写的E序一般无法连接在一赗DSP软g的调试工具也非常不方ѝ得DSP软g的开发往往滞后于硬件的开
发?eXpressDSP集成了CCS(Code Composer Studio)开发^収ͼDSP
BIOS实时软gq_QDSP法标准和第三方支持四部分。利用该技术,可以使你的Y件调试,软gq程理QY件的互通及法的获得,都便的容易。这样就
可以加快你的软g开发进E?
1)CCS是eXpressDSP的基Q因此你必须首先拥有CCS软g?
2)DSP BIOS是eXpressDSP的基本^収ͼ你必d会所有DSP BIOS?
3)DSP法标准可以保证你的E序可以方便的同其它利用eXpressDSP技术的E序q接在一赗同时也保证你的E序的gl性?
二十?Z么要用DSPQ?br />3G
技术和internate的发展,要求处理器的速度来高Q体U越来越,DSP的发展正好能满q一发展的要求。因为,传统的其它处理器都有不同的缺
陗MCU的速度较慢QCPU体积较大Q功耗较高;嵌入CPU的成本较高?
DSP的发展,使得在许多速度要求较高Q算法较复杂的场合,取代MCU或其它处理器Q而成本有可能更低?
二十?如何选择DSPQ?br />选择DSP可以Ҏ以下几方面决定:
1)速度Q?DSP速度一般用MIPS或FLOPS表示Q即百万?U钟。根据您对处理速度的要求选择适合的器件。一般选择处理速度不要q高Q速度高的DSPQ系l实C较困难?
2)_ֺQ?DSP芯片分ؓ定点、Q点处理器Q对于运精度要求很高的处理Q可选择点处理器。定点处理器也可完成点q算Q但_ֺ和速度会有影响?
3)dI间Q?不同pdDSPE序、数据、I/OI间大小不一Q与普通MCU不同QDSP在一个指令周期内能完成多个操作,所以DSP的指令效率很高,E序I间一般不会有问题Q关键是数据I间是否满。数据空间的大小可以通过DMA的帮助,借助E序I间扩大?
4)成本Q?一般定点DSP的成本会比Q点DSP的要低,速度也较快。要获得低成本的DSPpȝQ尽量用定点法Q用定点DSP?
5)实现方便Q?点DSP的结构实现DSPpȝ较容易,不用考虑dI间的问题,指o对C语言支持的效率也较高?
6)内部部gQ根据应用要求,选择hҎ部g的DSP。如QC2000适合于电机控ӞOMAP适合于多媒体{?
二十?DSP同MCU相比的特点?
1)DSP的速度比MCU快,主频较高?
2)DSP适合于数据处理,数据处理的指令效率较高?
3)DSP均ؓ16位以上的处理器,不适合于低档的场合?
4)DSP可以同时处理的事件较多,pȝU成本有可能较低?
5)DSP的灵zL较好,大多数算法都可以软g实现?
6)DSP的集成度较高Q可靠性较好?
三十.DSP同嵌入CPU相比的特点?
1)DSP是单片机Q构成系l简单?2)DSP的速度快?3)DSP的成本较低?4)DSP的性能高,可以处理较多的Q务?
三十一.如何~写C2000片内FlashQ?br />DSP中的Flash的编写方法有三中Q?
1.
通过仿真器编写:在我们的|页上有相关的YӞ在销售仿真器时我们也提供相关软g。其中LF240x的编写可以在CCS中加入一个插ӞF24x的编写需
要在windows98下的DOSH中q行。具体步骤见软g中的readme。有几点需要注意: a.必须为MC方式Q?
b.F206的工作频率必Mؓ20MHzQ?c.F240需要根据PLL修改C240_CFG.I文g。徏议外部时钟ؓ20MHz?
d.LF240x也需要根据PLL修改文g?d.如果~写有问题,可以用BFLWx.BAT修复?
2.提供串口~写QTI的网上有相兌Y件。注意只能编写一ơ,因ؓ~写E序会破坏串口通信E序?
3.在你的程序中~写QTI的网上有相兌料?
三十?如何~写DSP外部的FlashQ?br />DSP的外部Flash~写ҎQ?
1.通过~程器编写:OUT文g通过HEX转换E序转换为编E器可以接受的格式,再由~程器编写?
2.通过DSP软g~写Q您需要根据Flash的说明,~写Flash的编写程序,应用程序和~写Flash的程序分别load到RAM中,q行~写E序~写?
三十?对于C5000Q大?8K的程序如何BOOTQ?br />对于C5000Q片内的BOOTE序在上电后数据区的内容,搬移到程序区的RAM中,因此FLASH必须在RESET后放在数据区。由于C5000Q数据区的空间有限,一ơBOOT的程序不能对?8K。解决的Ҏ如下Q?
1.在RESET后,FLASH译码在数据区QRAM攑֜E序区,片内BOOTE序程序BOOT到RAM中?
2.用户初试化程序发Z个I/O命oQ如XFQ,FLASH译码到程序区的高地址。开放数据区用于其它的RAM?
3.用户初试化程序中包括W二ơBOOTE序Q此E序必须用户自己~写Q,FLASH中没有BOOT的其它代码搬UdRAM中?
4.开始运行用户处理程序?
三十?DSP外接存储器的控制方式
对于一般的存储器具有RD、WR和CS{控制信P许多DSPQC3x、C5000Q都没有控制信号直接q接存储器,一般采用的方式如下Q?
1.CS有地址U和PS、DS或STRB译码产生Q?
2./RD=/STRB+/R/WQ?3./WR=/STRB+R/W?br />
三十?GEL文g的功能?
GEL文g的功能同emuinit.cmd的功能基本相同,用于初始化DSP。但它的功能比emuinit的功能有所增强QGEL在CCS下有一个菜单,可以ҎDSP的对象不同,讄不同的初始化E序。以TMS320LF2407ZQ?
#define SCSR1 0x7018 Q定义scsr1寄存?
#define SCSR2 0X7019 Q定义scsr2寄存?
#define WDKEY 0x7025 Q定义wdkey寄存?
#define WDNTR 0x7029 Q定义wdntr寄存?
StartUp() ; 开始函?
{
GEL_MapReset(); ; 存储I间复位 GEL_MapAdd(0x0000,0,0x7fff,1,1); 定义E序I间?000Q?fff 可读?
GEL_MapAdd(0x8000,0,0x7000,1,1); 定义E序I间?000Qf000 可读?
GEL_MapAdd(0x0000,1,0x10000,1,1); 定义数据I间?000Q?0000可读?
GEL_MapAdd(0xffff,2,1,1,1); 定义i/o I间0xffff可读?
GEL_MapOn(); 存储I间打开
GEL_MemoryFill(0xffff,2,1,0x40); 在i/oI间d数?0h
*(int *)SCSR1=0x0200; lscsr1寄存器赋?
*(int *)SCSR2=0x000C; lscsr2寄存器赋|在这里可以进行mp/mc方式的{?
*(int *)WDNTR=0x006f; lwdntr寄存器赋?
*(int *)WDKEY=0x055; lwdkey寄存器赋?
*(int *)WDKEY=0x0AA; lwdkey寄存器赋?
}
三十?使用TI公司模拟器g与DSPl合使用的好处?br />1)在用TI公司的DSP的同Ӟ使用TI公司的模拟可以和DSPq行无缝q接。器件与器g之间不需要Q何的q接或{接器件。这样即减少了板卡的寸Q也降低了开发难度?
2)同ؓTI公司的品,很多器g可以固定搭配使用。少了器仉型的烦?
3)TI在CCS中提供插Ӟ可以用于DSP和模拟器件的开发,非常方便?
三十?C语言中可以嵌套汇~语aQ?br />可以。在ANSI C标准中的标准用法是用C语言~写ȝ序,用汇~语a~写子程序,中断服务E序Q一些算法,然后用C语言调用q些汇编E序Q这h率会相对比较?br />
三十?在定点DSPpȝ中可否实现Q点运?
当然可以Q因为DSP都可以用C,只要是可以用c语言的场合都可以实现点q算?br />
三十?JTAG头的使用会遇到哪些情况?
1)DSP的CLKOUT没有输出Q工作不正常?
2)Emu0QEmu1需要上拉?
3)TCK的频率应该ؓ10M?
4)?.3V DSP中,PD脚ؓ3.3V 供电Q但是仿真器上需?V电压供电Q所以PP仿真器盒上需要单独供c?
4)仿真多片DSP。在使用菊花铄时候,W一片DSP的TDO接到W二片DSP的TDI卛_。注意当串联DSP比较多的时候,信号U要适当的增加驱动?
四十.include头文Ӟ.h)的主要作?br />头文Ӟ一般用于定义程序中的函数、参数、变量和一些宏单元Q同库函数配合用。因此,在用库Ӟ必须用相应的头文件说明?
四十一.DSP中断向量的位|?br />1)2000pddsp的中断向量只能从0000H处开始。所以在我们调试E序的时候,要把DSP选择为MPQ微处理器方式)Q把片内的Flash屏蔽掉,免去每次更改E序都要重新烧写Flash工作?
2)3xpddsp的中断向量也只能在固定的地址?
3)5000Q?000pddsp的中断向量可以重新定位。但是它只能被重新定位到Page0范围内的MI间?br />
四十?有源晶振与晶体的区别Q应用范围及用法
1)晶体需要用DSP片内的振荡器Q在datasheet上有的连接方法。晶体没有电压的问题Q可以适应于Q何DSPQ徏议用晶体?
2)有源晶振不需要DSP的内部振荡器Q信h较稳定。有源晶振用法:一脚悬I,二脚接地Q三脚接输出Q四脚接电压?
四十?E序l常跑飞的原?br />1)E序没有l尾或不是@环的E序?
2)nmi脚没有上拉?
3)在看门狗动作的时候程序会l常跑飞?
4)E序~制不当也会引vE序跑飞?
5)gpȝ有问题?
四十?q行FLASH引导的一点经?br />最
qBBS上关于FLASH和BOOT的讨论很z跃Q我也多ơ来此请教。前几天自制的DSP板引导成功,早就打算写写q方面的东西。我用的DSP?
5416Q以其ؓ核心Q做了一个相对独立的子系l(g、Y件、算法)Q目前都已基本做好?
下面把在FLASH引导斚w做的工作向大家汇报一下,希望能对大家有所帮助。本人经验和文笔都有限,写的不好请大家谅解?
g环境Q?
DSPQTMS320VC5416PGE160
FLASHQSST39VF400A-70-4C-EK 都是贴片的,FLASH映射在DSP数据I间?x8000-0xFFFF
软g环境Q?CCS v2.12.01
?
E序Q要烧入FLASH的程序)Q?
DEBUG版,E序占用I间0x28000-0x2FFFFQ片内SARAMQ,中断向量表在0x0080-0x00FFQ片内DARAMQ,数据I间?
?x0100-0x7FFFQ片内DARAMQ?
因ؓFLASH是脓片的Q所以需要自q一个数据搬Uȝ序,把要ȝ序搬UdFLASH中。在写入FLASH数据Ӟq应写入引导表的格式数据。最后在?
据空间的0xFFFF处写入引D的v始地址Q这里ؓ0x8000Q?
搬移E序Q?
DEBUG版,E序I间0x38000-0x3FFFFQ片内SARAMQ,中断向量表在0x7800-0x78FFQ片内DARAMQ,数据I间使用
0x5000-0x77FFQ片内DARAMQ?搬移E序不能使用与主E序的程序空间和中断向量表重合的物理I间Q以免覆盖?
烧写Ӟ同时打开ȝ序和搬移E序的PROJECTQ先LOADȝ序,再LOAD搬移E序Q然后执行搬Uȝ序,烧写OK! 附:搬移E序Q仅供参考)
volatile unsigned int *pTemp=(unsigned int *)0x7e00; unsigned int iFlashAddr;
int iLoop; /* 在引D头存攑ƈ行引导关键字 */
iFlashAddr=0x8000;
WriteFlash(iFlashAddr,0x10aa);
iFlashAddr++; /* 初始化SWWSR?*/
WriteFlash(iFlashAddr,0x7e00);
iFlashAddr++; /* 初始化BSCR?*/
WriteFlash(iFlashAddr,0x8006);
iFlashAddr++; /* E序执行的入口地址 */
WriteFlash(iFlashAddr,0x0002);
iFlashAddr++;
WriteFlash(iFlashAddr,0x8085);
iFlashAddr++; /* E序长度 */
WriteFlash(iFlashAddr,0x7f00);
iFlashAddr++; /* E序要装载到的地址 */
WriteFlash(iFlashAddr,0x0002);
iFlashAddr++;
WriteFlash(iFlashAddr,0x8000);
iFlashAddr++;
for (iLoop=0;iLoop<0x7f00;iLoop++)
{ /* 从程序空间读数据Q放到暂存单?*/
asm(" pshm al");
asm(" pshm ah");
asm(" rsbx cpl");
asm(" ld #00fch,dp");
asm(" stm #0000h, ah");
asm(" MVDM _iLoop, al");
asm(" add #2800h,4,a");
asm(" reada 0h");
asm(" popm ah");
asm(" popm al");
asm(" ssbx cpl"); /* 把暂存单元内容写入FLASH */
WriteFlash(iFlashAddr,*pTemp);
iFlashAddr++; } /* 中断向量表长?*/
WriteFlash(iFlashAddr,0x0080);
iFlashAddr++; /* 中断向量表装载地址 */
WriteFlash(iFlashAddr,0x0000);
iFlashAddr++;
WriteFlash(iFlashAddr,0x0080);
iFlashAddr++;
for (iLoop=0;iLoop<0x0080;iLoop++) { /* 从程序空间读数据Q放到暂存单?*/
asm(" pshm al");
asm(" pshm ah");
asm(" rsbx cpl");
asm(" ld #00fch,dp");
asm(" stm #0000h, ah");
asm(" MVDM _iLoop, al");
asm(" add #0080h,0,a");
asm(" reada 0h");
asm(" popm ah");
asm(" popm al");
asm(" ssbx cpl"); /* 把暂存单元内容写入FLASH */
WriteFlash(iFlashAddr,*pTemp);
iFlashAddr++;
} /* 写入引导表结束标?*/
WriteFlash(iFlashAddr,0x0000);
iFlashAddr++;
WriteFlash(iFlashAddr,0x0000); /* 在数据空间的0xFFFF写入引导表v始地址 */
iFlashAddr=0xffff;
WriteFlash(iFlashAddr,0x8000);
四十?关于LF2407A的FLASH烧写问题的几点说?br />TI
现在关于LF24x写入FLASH的工hCؓc2000flashprogsw_v112。可以支持LF2407、LF2407a、LF2401及相?
的LF240xpd。徏议用此版本。在http://focus.ti.com/docs/tool/toolf...灿写松招闯?/a>
在用这个工h注意Q?
一,先解压,再执行setup.exe?
二、进入cc中,在tools图标下有烧写工具Q?
1、关
于FLASH旉的选择Q此烧写工具默认最高频率进行FLASH的操作。根据目标系l的工作主频重新要进行PLL讄。方法:先在advance
options下面的View Config
file中修改倍频。存盘后Q在相应的目录下Qtic2xx\\algos\\相应目录Q运行buildall.bat可以完成修改了。再q行相应的操
作即可?
2、若是你所选的频率不是最高频率,q需要设定你自已的timings.xx来代替系l默认的最高频率的timings.xx。例?
LF2407a的默认文件是timings.40。Timings.xx可以利用include\\timings.xls的excel工作表来生成。然
后在advance options下面的View Config
file中修改相应的位置。存盘后Q在相应的目录下q行buildall.bat可以完成修改了?
3、对于TMS320LF240XAp?
列,q要注意Q由于这些DSP的FLASHh加密功能Q加密地址为程序空间的0x40-0X43HQ程序禁止写入此I间Q如果写了,此空间的数据被认?
是加密位Q断电后q入保护FLASH状态,使FLASH不可重新操作Q从而DSP报废Q烧写完毕后一定要q行Program
passwords的操作,如果不做加密操作默认最后一ơ写入加密位的数据作为密码?
4?407A不能用DOS下的烧写软g烧写Q必ȝc2000flashprogsw_v112软g烧写Q?
5、徏议如下:
1)、一般调试时Q在RAM中进行;
2)、程序烧写时Q避开E序I间0x40-0x43H加密区,E序最好小?2kQ?
3)?
每次E序烧写完后Q将word0Qword1,word2Qword3分别输入自己的密码,再点?Program
passwordQ如果加密成功,提示Program is
arrayedQ如?x40Q?x43h中写入的是ffffQ认为处于调试状态,flash不会加密Q?
4)、断电后Q下ơ重新烧写时需要往word0~word3输入已设的密码,再unlockQ成功后可以重新烧写了;
6、VCPP脚接在Q?V上,是应直接接的Q中间不要加电阻?
7、具体事宜请阅读相应目录下的readme1,readme2帮助文g?
8.注意*.cmd文g的编写时应该避开40-43H单元Q好多客L于没有注意到q里而把FALSH加密?
四十?如何讄g断点Q?br />在profiler Q?gt;profile point -> break point
四十?c54x的外部中断是电^响应q是沿响应?
是沿响应Q准的_它要到100(一个clk的高和两个clk的低)的变化才可以?br />
四十八。参考程序,里面好象都要 disable wachdog,不知道ؓ什?
watchdog是一个计数器Q溢出时会复位你的DSPQ不disable的话Q你的系l会动不动就reset?br />四十九。DSPpȝ设计100?br />一、时钟和甉|
问:DSP的电源设计和旉设计应该特别注意哪些斚wQ外接晶振选用有源的好q是无源的好Q?br />{:旉一般用晶体,甉|可用TI的配套电源。外接晶振用无源的好?br />问:TMS320LF2407的A/D转换_ֺ保证措施?br />{:参考电源和模拟甉|要求q净?br />问:pȝ调试时发现纹波太大,主要是哪斚w的问题?
{:如果是电源纹波大Q加大电Ҏo波?br />问:请问我用5V供电的有源晶振ؓDSP提供旉Q是否可以将其用两个电阻q行分压后再接到DSP的时钟输入端Q这样做的话Q时钟工作是否稳定?
{:q样做不好,使用晶体?br />问:一个多DSP电\板的旉Q如何选择比较好?DSP电\板的g设计和系l调试时的时序问题?
{:使用旉芯片Q以保证同步。硬件设计要ҎDSP芯片的时序,选择外围芯片Q根据时序设定等待和g逻辑?br />二.q扰与板的布局
问:器g布局应重点考虑哪些因素Q例如在集中抄表pȝ中?
{:可用TMS320VC5402Q成本不是很高。器件布局重点应是存贮器与DSP的接口?br />问:在设计DSP的PCB板时应注意哪些问题?
{:1.甉|的布|;2.旉的布|;3.电容的布|;4.l端电\Q?.数字同模拟的布置?br />问:请问DSP在与前向通道(比如说AD)接口的时候,布线q程中要注意哪些问题Q以保证AD采样的稳定性?
{:模拟地和数字地分开Q但在一Ҏ地?br />问:DSPL设计的一般步骤是什么?需要特别注意的问题有哪些?
{:1.选择芯片Q?.设计时序Q?.设计PCB。最重要的是时序和布Uѝ?br />问:在硬件设计阶D如何消除信号干扎ͼ包括模拟信号及高频信PQ应该从那些斚w着
手?
{:1.模拟和数字分开Q?.多层板;3.电容滤L?br />问:在电路板的设计上Q如何很好的解决静电q扰问题?br />{:一般情况下Q机x大地Q即能满求。特D情况下Q电源输入、数字量输入串接
专用的防静电器g?br />问:DSP板的늣兼容QEMCQ设计应特别注意哪些问题?
{:正确处理甉|、地q面Q高速的、关键的信号在源端串接端接电阻,避免信号反射?br />问:用电感来隔离模拟甉|和数字电源,其电感量如何军_Q是׃는或噪音要求?br />军_吗?有没有计公式?
{:甉|或磁珠相当于一个低通o波器Q直电源可以通过Q而高频噪声被滤除。所以电
感的选择主要军_于电源中高频噪声的成分?br />问:讲上的材料多是甉|q扰问题Q能否介l板上高频信号布局QLayoutQ时要注意的
问题以及数字信号Ҏ拟信L影响问题Q?br />{:数字信号Ҏ拟信Lq扰主要是串扎ͼ在布局时模拟器件应量q离高速数字器Ӟ高速数字信号尽量远L拟部分,q且应保证它们不I越模拟地^面?br />问:能否介绍PCB布线Ҏ拟信号失真和串音的媄响,如何降低和克服?
{:?个方面,1. 模拟信号与模拟信号之间的q扰Q布U时模拟信号量走粗一些,如果有条Ӟ2个模拟信号之间用地线间隔?. 数字信号Ҏ拟信Lq扰Q数字信号尽量远L拟信P数字信号不能I越模拟地?br />三.DSP性能
问:1.我要设计生物囑փ处理pȝQ选用那种型号较好Q高性能和低hQ?2.如果选定
TI DSPQ需要什么开发工P
{:1.你可采用C54x ?C55xq_Q如果你需要更高性能的,可采用C6xpd?.需要EVM
s和XDS510仿真器?br />问:请介l一U专门用于快速富利叶变换QFFTQ, 数字滤LQ卷U,相关{算法的DSPQ?br />最好集?2bit以上的ADC功能?br />{:如果你的pȝ是马?能量控制的,我徏议你用TMS320LF240x。详情请参阅DSP选择指南Qhttp://www.dspvillage.ti.com/dspguide?br />问:有些资料说DSP比单片机好,但单片机用的比DSPqѝ请问这两个在用上有何区别Q?br />{:单片Z般用于要求低的场合,?/8位的单片机。DSP适合于要求较高的场合?br />问:我想了解在信号处理方面DSP比FPGA的优炏V?br />{:DSP是通用的信号处理器Q用软g实现数据处理QFPGA用硬件实现数据处理。DSP的成本便宜,法灉|Q功能强QFPGA的实时性好Q成本较高?br />问:请问减小电\功耗的主要途径有哪些?
{:1.选择低功耗的芯片Q?.减少芯片的数量;3.量使用IDLE?br />问:用C55设计一个低功耗图像压~?解压和无U传输的产品Q同时双向传输遥控指令和?br />他信息,要求囑փ30?U,TFT昄320*240Q不知道能否实现Q若能,怎样定性能Q选择周边元器Ӟ定最的传输速率Q能否提供开发的解决ҎQY件核Q?br />{:1.有可能,要看你的法?.先在模拟器上模拟?br />问:用DSP开发MP3Q比较专用MP3解码芯片如何Q比如成本、难度、周期?谢谢?br />{:1.DSP的功能强Q可以实现附加的功能Q如ebook{;2.DSP的性能h比高Q?.隑ֺ较大Q需要算法,因此周期较长Q但TI有现成的Ҏ?br />问:用DSP开发的pȝ跟用普通单片机开发的pȝ相比Q有何优势?DSP一般适用于开发什么样的系l?其开发周期、资金投入、开发成本如何?与DSP的接口电路是否还得用专门的芯片?
{:1.性能高;2.适合于速度要求高的场合Q?.开发周期一?个月Q投入一般要一万元?br />叻I4.不一定,但需要速度较高的芯片?br />问:DSP会对原来的模拟电路生什么样的媄响?
{:一斚wDSP用数字处理的Ҏ可以代替原来用模拟电路实现的一些功能;另一斚wQDSP的高速性对模拟电\产生较大的干扎ͼ设计时应量使DSPq离模拟电\部分?br />问:请问支持MPEG-4芯片型号是什么?
{:C55x?C6000 或DSC2x
问:DSP内的计算速度是快的,但是它的I/O口的交换速度有多快呢Q?br />{:主频?/4左右?br />四.技术性问?br />问:我有二个关于C2000的问题:1、C240或C2407的RS复位引脚既可输入Q也可输出,直接用CMOS门电路(?4ACT04Q驱动是否合适,q是应该用OC门(集电极开路)驱动Q?、大E序有时q行异常Q但加一两条I指令就正常Q是何原因?
{:1、OC门(集电极开路)驱动?、是水U的问题?br />问:1.DSP芯片内是否有单个的随机函数指令?2QDSP内的计算速度是快的,但是它的I/O
口的交换速度有多快呢QSP如何配合EPLD或FPGA工作呢?
{:1.没有?.取决于你所用的I/O。对于HPIQ传输速率Q字节)大约为CPU?/4Q对McBSPQ位速率QkbpsQ大UؓCPU?/2?.你可以联仿真接口和一个EPLD/FPGA在一赗请参考下面的应用手册Q?http://www.ti.com/sc/docs/psheets/abstract/apps/spra439a.htm
问:设计DSPpȝӞ我用C6000pd。DSP引脚的要上拉Q或者下拉的原则是怎样的?我经常在设计时ؓ某一脚是否要设|上/下拉电阻而犹豫不定?br />{:C6000pd的输入引脚内部一般都有弱的上拉或者下拉电阻,一般不需要考虑外部加上
拉或者下拉电阻,Ҏ情况Ҏ需要配|?br />问:我正在用TMS320VC5402Q通过HPI下蝲代码Q但C5402的内部只提供16K字的存储区,请问我能通过HPI把代码下载到它的外部扩展存储行吗Q?br />{:不行Q只能下载到片内?br />问:电\中用到DSPQ有时当复位信号ZӞ电压也属于正常范_但DSP加蝲E序不成功。电也偏大Q有时时钟也有输出。不知ؓ什么?
{:复位时无法加载程序?br />问:DSP和单片机相连l成MpȝӞ需要注意哪些问题?
{:使用HPI接口Q或者通过DPRAMq接?br />问:原来的DSP的程序需攑֜EPROM中,但EPROM的速度难以和DSP匚w。现在是如何解决此问题的Q?br />{:用BootLoadҎ解决?br />问:
我在使用5402DSKӞ一上电Q不接MICQ只接xQ不q行ME序Qx中有比较明显的一定频率的噪声出现。有时上电后没有出现Q但接MICQ运
行范例中的CODECE序Ӟ又会出现q种噪声。上q情况通常都在DSK工作一D|间后自动消失。我在DSP论坛上发现别人用DSK时也到q这U情况,
我自己参?402DSK做了一块板Q所用器件基本一P也是q现象,请问怎么回事Q如何解冻I
{:开始时没有有效的程序代码,所以上电后是随机状态,出现q种情况是正常的?br />问:我用的是TMS320LF2407Q但是仿真时不能保证每次都能GO MAIN。我惌l咨询一下,CMD文g的设|用法,q有VECTOR的定义?br />{:可能看门狗有问题Q关掉看门狗。有关CMD文g配置请参考《汇~语a工具》第二章?br />问:我设计的TMS320VC5402板子在调试Y件时会经常出现存储器错误报告Q排除是映射的问题,是不是板子不E_的因素?q是DSP工作不正常的问题Q如何判别?
{:你可以利用Memoryfill功能Q填入一些数|然后h一下,看是不是在变Q如果是
在变化,则Memory 是有问题?br />问:如何解决Flash~程的问?可不可以先用仿真器下载到外程序存储RAM中,然后E序代码程序代码自׃外程序存储RAM写到F240的内部Flash ROM中,如何?
{:如果你用F240Q你可以用下载TI做的工具。其它的可以q样做?br />问:C5510芯片如何接入E1信号Q在接入时有什么需要注意的地方Q?br />{:通过McBSP同步串口接入。注意信Lq_L求?br />问:请问如何通过仿真器把.HEXE序直接烧到FLASH中去?所用DSP?402是否需要自己另外编写一个烧写程序, 如何实现?谢谢!!
{:直接?OUT。是DSP中写一D늨序,把主E序写到FLASH中?br />问:DSP的硬件设计和其他的电路板有什么不同的地方Q?br />{:1.要考虑时序要求Q?.要考虑EMI的要求;3.要考虑高速的要求Q?.要考虑甉|的要求?br />问:
ADS7811QADS7815QADS8320QADS8325QADS8341QADS8343QADS8344QADS8345中,哪个可以较方?
CVC33q接Q完?0个模拟信LAD转换Q要?6bitQ?毫秒内完?0个信L采样Q当然也要考虑hQ?
{:作选择有下列几炚w
要考虑1. ȝ采样率:1ms?0个通道Q总采L?00K Q所有A/D均能满要求?.
A/D与VC33的接口类型:q行、串行。前2UA/D为ƈ行接口,后几U均Z行接口?.
接口电^的匹配。前2UA/D?V电^Q与VC33不能接口Q后几种均可?.3V电^Q可与VC33直接接口?br />问:DSP的电路板有时调试成功率低?0%Q连接和底板均无问题Q如何解冻I有时DSP同CPLD产生不明原因的冲H,如何避免Q?br />{:看来你的g设计可能有问题,不应该这么小的成功率。我们的板的成功率ؓ95%以上?br />问:我们的工E有两h参与开发,׃事先没有考虑周全Q一Z用的是助记符方式~写
汇编代码Q另一Z用的是代数符h式编写汇~代码,请问CCS5000中这二种~写方式如何嵌在一赯试?
{:我没有这Lq,我想可以用下面的办法解决Q将一U方式的E序先单独编译ؓ.obj
文gQ在创徏工程Ӟ这?obj文g和另一U方式的E序一起加q工E中Q二者即可一
L译调试了?br />问:DSP数据~冲Q能否用SDRAM代替FIFOQ?br />{:不行
问:ADC或DAC和DSP相连接时Q要注意什么问题?比如匚w问题Q以保证A/D采样E_或D/A码不丢失?br />{:1. 接口方式Qƈ行/串行Q?. 接口电^Q必M证二者一致?br />问:用F240l常发生外部中断丢失现象Q甚臛_实际环境中只有在E序刚开始时能生中
断,几分钟后׃能生中断。有时只能采取查询的方式Q请问有何有效的解决ҎQ改
为F2407是不是要好些Q?br />{:应该同DSP无关。徏议你中断服务程序简化看一下?
四十?旉电\选择原则
1,pȝ中要求多个不同频率的旉信号Ӟ首选可~程旉芯片;
2,单一旉信号Ӟ选择晶体旉电\;
3,多个同频旉信号Ӟ选择晶振;
4,量使用DSP片内的PLLQ降低片外时钟频率,提高pȝ的稳定?
5,C6000、C5510、C5409A、C5416、C5420、C5421和C5441{DSP片内无振荡电路,不能用晶体时钟电?
6,VC5401、VC5402、VC5409和F281x{DSP旉信号的电qؓ1.8VQ徏议采用晶体时钟电?
五十.CE序的代码和数据如何定位
1,pȝ定义:
.cinit 存放CE序中的变量初值和帔R;
.const 存放CE序中的字符帔R、Q点常量和用const声明的常?
tch 存放CE序tch语句的蟩针表;
.text 存放CE序的代?
.bss 为CE序中的全局和静态变量保留存储空?
.far 为CE序中用far声明的全局和静态变量保留空?
.stack 为CE序pȝ堆栈保留存储I间Q用于保存返回地址、函数间的参C递、存储局部变量和保存中间l果;
.sysmem 用于CE序中malloc、calloc和realloc函数动态分配存储空?
2,用户定义:
#pragma CODE_SECTION (symbol, "section name");
#pragma DATA_SECTION (symbol, "section name")
五十一.cmd文g
?部分l成Q?
1)输入Q输出定义:.obj文gQ链接器要链接的目标文g;.lib文gQ链接器要链接的库文?.map文gQ链接器生成的交叉烦引文?.out文gQ链接器生成的可执行代码;链接器选项
2)MEMORY命oQ描q系l实际的g资源
3)SECTIONS命oQ描q?D?如何定位
五十?Z么要设计CSL?
1,DSP片上外设U类及其应用日趋复杂
2,提供一l标准的Ҏ用于讉K和控制片上外?
3,免除用户~写配置和控制片上外设所必需的定义和代码
五十?什么是CSL?
1,用于配置、控制和理DSP片上外设
2,已ؓC6000和C5000pdDSP设计了各自的CSL?
3,CSL库函数大多数是用C语言~写的,q已对代码的大小和速度q行了优?
4,CSL库是可裁剪的Q即只有被用的CSL模块才会包含q应用程序中
5,CSL库是可扩展的Q每个片上外讄API怺独立Q增加新的APIQ对其他片上外设没有影响
五十?CSL的特?br />1,片上外设~程的标准协议:定义一l标准的APIsQ函数、数据类型、宏;
2,对硬件进行抽象,提取W号化的片上外设描述:定义一l宏Q用于访问和建立寄存器及其域?
3,基本的资源管?对多资源的片上外设进行管?
4,已集成到DSP/BIOS?通过囑Ş用户接口GUI对CSLq行配置;
5,使片上外讑֮易?~短开发时_增加可移?
五十?Z么需要电q_?
1)DSPpȝ中难免存?V/3.3V混合供电现象;
2)I/O?.3V供电的DSPQ其输入信号电^不允许超q电源电?.3V;
3)5V器g输出信号高电q_?.4V;
4)长时间超常工作会损坏DSP器g;
5)输出信号电^一般无需变换
五十?电^变换的方?br />1,ȝ收发器(Bus TransceiverQ:
常用器gQ?SN74LVTH245AQ?位)、SN74LVTH16245AQ?6位)
特点Q?.3V供电Q需q行方向控制Q?
延迟Q?.5nsQ驱动:-32/64mAQ?
输入定wQ?V
应用Q数据、地址和控制ȝ的驱?
2,ȝ开养IBustchQ?
常用器gQSN74CBTD3384Q?0位)、SN74CBTD16210Q?0位)
特点Q?V供电Q无需方向控制
延迟Q?.25nsQ驱动能力不增加
应用Q适用于信h向灵zR且负蝲单一的应用,如McBSP{外设信L电^变换
3,2?切换器(1 of 2 MultiplexerQ?
常用器gQSN74CBT3257Q?位)、SN74CBT16292Q?2位)
特点Q实??Q?V供电Q无需方向控制
延迟Q?.25nsQ驱动能力不增加
应用Q适用于多路切换信受且要进行电q_换的应用Q如双\复用的McBSP
4,CPLD
3.3V供电Q但输入定w?VQƈ且gq较大:Q?nsQ适用于少量的对gq要求不高的输入信号
5,电阻分压
10KΩ?0KΩ串联分压Q?V×20÷Q?0Q?0Q≈3.3V
五十?未用的输入/输出引脚的处?br />1,未用的输入引脚不能悬IZ接,而应它们上拉活下拉为固定的电^
1)关键的控制输入引脚,如Ready、Hold{,应固定接为适当的状?Ready引脚应固定接为有效状?Hold引脚应固定接为无效状?
2)无连接(NCQ和保留QRSVQ引?NC 引脚Q除非特D说明,q些引脚悬空不接,RSV引脚Q应Ҏ数据手册具体军_接还是不?
3)非关键的输入引脚,它们上拉或下拉为固定的电^Q以降低功?
2,未用的输出引脚可以悬IZ?
3,未用的I/O引脚:如果省状态ؓ输入引脚Q则作ؓ非关键的输入引脚处理Q上拉或下拉为固定的电^;如果省状态ؓ输出引脚Q则可以悬空不接
?DSP的C语言同主机C语言的主要区别?
1)DSP的C语言是标准的ANSI CQ它不包括同外设联系的扩展部分,如屏q绘囄。但在CCS中,Z方便调试Q可以将数据通过prinf命o虚拟输出C机的屏幕上?
2)DSP的C语言的编译过EؓQC~译为ASMQ再由ASM~译为OBJ。因此C和ASM的对应关p非常明,非常便于人工优化?
3)DSP的代码需要绝对定位;L的C的代码有操作pȝ定位?
4)DSP的C的效率较高,非常适合于嵌入系l?
?DSP发展动?br />1.TMS320C2000
TMS320C2000pd包括C24x和C28xpd。C24xpd使用LF24xxpd替代C24xpdQLF24xxpd的h格比C24x?
宜,性能高于C24xQ而且LF24xxAh加密功能?C28xpd主要用于大存储设备管理,高性能的控制场合?
2.TMS320C3x TMS320C3xpd包括C3x和VC33Q主要推荐用VC33。C3xpd是TI点DSP的基Q不可能停Q但h不会q一步下调?
3.TMS320C5x TMS320C5xpd已不推荐使用Q徏议用C24x或C5000pd替代?
4.TMS320C5000
TMS320C5000pd包括C54x和C55xpd?
其中VC54xxq不断有新的器g出现Q如QTMS320VC5471QDSPQARM7Q?
C55xpd是TI的第三代DSPQ功耗ؓVC54xx?/6Q性能为VC54xx?倍,是一个正在发展的pd?C5000pd是目前TI
DSP的主DSPQ它늛了从低档C高档的应用领域,目前也是用户最多的pd?
5.TMS320C6000
TMS320C6000pd包括C62xx、C67xx和C64xx。此pd是TI的高档DSPpd?
其中C62xxpd是定点的DSPQ系列芯片种c较丰富Q是主要的应用系列?C67xxpd是Q点的DSPQ用于需要高速Q点处理的领域?
C64xxpd是新发展Q性能是C62xx?0倍?
6.OMAPpd 是TI专门用于多媒体领域的芯片Q它是C55QARM9Q性能卓越Q非帔R合于手持设备、Internetl端{多媒体应用?

]]>
þþþƷ18վ|
99þ99þþƷƬ|
þþþAVƬ|
þۺϹƷ|
þþƷ77777|
˾þ91|
þۺϸۺϾþ|
þ붯aëƬ|
ƷƷھþø|
þþƷһ|
þþþþ77777|
þ÷Ʒ|
þþþƷĻ|
þݺҹҹ2O2O|
鶹wwwþùƷ|
ŷۺϾþ|
պһþþþþ|
99þ99þþƷƬ|
þþþӰԺ|
Ļþۺ|
ƷŮþþAV|
þþþþùƷ볬|
ھƷþþþù|
ݺɫۺϾþ|
ƷŮþþ|
ɫþˬˬƬaV|
91þۺ|
þ˾Ʒԭ|
91þùۺϾƷ|
˳ɾƷþþþ|
ձƷþþþӰԺձ|
Ůþþ|
ƷŷþþӰ|
þ͵wcŮ|
պƷþ
|
ݺɫþۺ_|
ƷŮþþþavˬ
|
һþۺ³³ŷһ
|
ŷþþþþþѡ9999|
Ůþþþþjþ|
ձƷþþþĻ|