有关DSP的一些问题收录2008-09-17 21:53以下内容是转载者从网络资源中整理得到,都是很实用的东西,向原作者表示衷心的感谢!
问:用DSP开发的系统跟用普通单片机开发的系统相比,有何优势?DSP一般适用于开发什么样的系统?其开发周期、资金投入、开发成本如何?与DSP的接口电路是否还得用专门的芯片?
答:1.性能高;2.适合于速度要求高的场合;3.开发周期一般6个月,投入一般要一万元左右;4.不一定,但需要速度较高的芯片。
问:DSP的电源设计和时钟设计应该特别注意哪些方面?外接晶振选用有源的好还是无源的好?
答:时钟一般使用晶体,电源可用TI的配套电源。外接晶振用无源的好。
问:系统调试时发现纹波太大,主要是哪方面的问题?
答:如果是电源纹波大,加大电容滤波。
问:请问我用5V供电的有源晶振为DSP提供时钟,是否可以将其用两个电阻进行分压后再接到DSP的时钟输入端,这样做的话,时钟工作是否稳定?
答:这样做不好,建议使用晶体。
问: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。
问:一个多DSP电路板的时钟,如何选择比较好?DSP电路板的硬件设计和系统调试时的时序问题?
答:建议使用时钟芯片,以保证同步。硬件设计要根据DSP芯片的时序,选择外围芯片,根据时序设定等待和硬件逻辑。
问:DSP主板设计的一般步骤是什么?需要特别注意的问题有哪些?
答:1.选择芯片;
2.设计时序;
3.设计PCB。最重要的是时序和布线。
问:在设计DSP的PCB板时应注意哪些问题?
答:1.电源的布置;
2.时钟的布置;
3.电容的布置;
4.终端电路;
5。数字同模拟的布置。
问:在硬件设计阶段如何消除信号干扰(包括模拟信号及高频信号)?应该从那些方面着手?
答:1.模拟和数字分开;
2.多层板;
3.电容滤波。
问:在电路板的设计上,如何很好的解决静电干扰问题。
答:一般情况下,机壳接大地,即能满足要求。特殊情况下,电源输入、数字量输入串接专用的防静电器件。
问:DSP板的电磁兼容(EMC)设计应特别注意哪些问题?
答:正确处理电源、地平面,高速的、关键的信号在源端串接端接电阻,避免信号反射。
问: 用电感来隔离模拟电源和数字电源,其电感量如何决定?是由供电电流或噪音要求来决定吗?有没有计算公式?
答:电感或磁珠相当于一个低通滤波器,直流电源可以通过,而高频噪声被滤除。所以电感的选择主要决定于电源中高频噪声的成分。
问:能否介绍板上高频信号布局(Layout)时要注意的问题以及数字信号对模拟信号的影响问题?答:数字信号对模拟信号的干扰主要是串扰,在布局时模拟器件 应尽量远离高速数字器件,高速数字信号尽量远离模拟部分,并且应保证它们不穿越模拟地平面。问:能否介绍PCB布线对模拟信号失真和串音的影响,如何降低 和克服?
答:有2个方面:
1. 模拟信号与模拟信号之间的干扰:布线时模拟信号尽量走粗一些,如果有条件,2个模拟信号之间用地线间隔。
2. 数字信号对模拟信号的干扰:数字信号尽量远离模拟信号,数字信号不能穿越模拟地。
问:我想了解在信号处理方面DSP比FPGA的优点。
答:DSP是通用的信号处理器,用软件实现数据处理;FPGA用硬件实现数据处理。DSP的成本便宜,算法灵活,功能强;FPGA的实时性好,成本较高。
问:请问减小电路功耗的主要途径有哪些?
答:1.选择低功耗的芯片;2.减少芯片的数量;3.尽量使用IDLE。
问:DSP会对原来的模拟电路产生什么样的影响?
答:一方面DSP用数字处理的方法可以代替原来用模拟电路实现的一些功能;另一方面,DSP的高速性对模拟电路产生较大的干扰,设计时应尽量使DSP远离模拟电路部分。
问:设计DSP系统时,我用C6000系列。DSP引脚的要上拉,或者下拉的原则是怎样的?我经常在设计时为某一管脚是否要设置上/下拉电阻而犹豫不定。
答:C6000系列的输入引脚内部一般都有弱的上拉或者下拉电阻,一般不需要考虑外部加上拉或者下拉电阻,特殊情况根据需要配置。
问:我正在使用TMS320VC5402,通过HPI下载代码,但C5402的内部只提供16K字的存储区,请问我能通过HPI把代码下载到它的外部扩展存储区运行吗?
答:不行,只能下载到片内。
问:电路中用到DSP,有时当复位信号为低时,电压也属于正常范围,但DSP加载程序不成功。电流也偏大,有时时钟也有输出。不知为什么?
答:复位时无法加载程序。
问:原来的DSP的程序需放在EPROM中,但EPROM的速度难以和DSP匹配。现在是如何解决此问题的?
答:用BootLoad方法解决。
问:请问如何通过仿真器把。HEX程序直接烧到FLASH中去?所用DSP为5402是否需要自己另外编写一个烧写程序, 如何实现?
答:直接写.OUT。是DSP中写一段程序,把主程序写到FLASH中。
问:DSP的硬件设计和其他的电路板有什么不同的地方?
答:1.要考虑时序要求;2.要考虑EMI的要求;3.要考虑高速的要求;4.要考虑电源的要求。
问:DSP数据缓冲,能否用SDRAM代替FIFO?
答:不行。
问:ADC或DAC和DSP相连接时,要注意什么问题?比如匹配问题,以保证A/D采样稳定或D/A码不丢失。答:1. 接口方式:并行/串行;2. 接口电平,必须保证二者一致。
问:为什么片内RAM大的DSP效率高?
答:目前DSP发展的片内存储器RAM越来越大,要设计高效的DSP系统,就应该选择片内RAM较大的DSP。片内 RAM同片外存储器相比,有以下优点:
<!--[if !supportLists]-->l 片内RAM的速度较快,可以保证DSP无等待运行。 <!--[endif]-->
<!--[if !supportLists]-->l 对于C2000/C3x/C5000系列,部分片内 存储器可以在一个指令周期内访问两次,使得指令可以更加高效。<!--[endif]-->
<!--[if !supportLists]-->l 片内RAM运行稳定,不受外部的干扰影响,也不会干扰外部。<!--[endif]-->
<!--[if !supportLists]-->l DSP片内多总线, 在访问片内RAM时,不会影响其它总线的访问,效率较高。<!--[endif]-->
问:如何选择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)对于 C2000系列: 硬件等待信号为READY,高电平时不等待。 软件等待由WSGR寄存器决定,可以加入最多7个等待。其中程序存储器和数据存储器及 I/O可以分别设置。
2)对于C3x系列: 硬件等待信号为/RDY,低电平是不等待。 软件等待由总线控制寄存器中的SWW和WTCNY决定,可以加 入最多7个等待,但等待是不分段的,除了片内之外全空间有效。
3)对于C5000系列: 硬件等待信号为READY,高电平时不等待。 软件等待由 SWWCR和SWWSR寄存器决定,可以加入最多14个等待。其中程序存储器、控制程序存储器和数据存储器及I/O可以分别设置。
4)对于C6000系 列(只限于非同步存储器或外设): 硬件等待信号为ARDY,高电平时不等待。 软件等待由外部存储器接口控制寄存器决定,总线访问外部存储器或设备的时序可以设置,可以方便的同异步的存储器或外设接口。
问:DSP的最高主频能从芯片型号中获得吗?
答:TI的DSP最高主频可以从芯片的型号中获得,但每一个系列不一定相同。
1) TMS320C2000系列:
<!--[if !supportLists]-->l TMS320F206-最高主频20MHz。<!--[endif]-->
<!--[if !supportLists]-->l TMS320C203/C206-最高主频40MHz。<!--[endif]-->
<!--[if !supportLists]-->l TMS320F24x-最高主频 20MHz。<!--[endif]-->
<!--[if !supportLists]-->l TMS320LF24xx-最高主频30MHz。<!--[endif]-->
<!--[if !supportLists]-->l TMS320LF24xxA-最高主频40MHz。 <!--[endif]-->
<!--[if !supportLists]-->l TMS320LF28xx-最高主频150MHz。 <!--[endif]-->
2)TMS320C3x系列:
<!--[if !supportLists]-->l TMS320C30:最高主频25MHz。 <!--[endif]-->
<!--[if !supportLists]-->l TMS320C31PQL80:最高主频 40MHz。 <!--[endif]-->
<!--[if !supportLists]-->l TMS320C32PCM60:最高主频30MHz。<!--[endif]-->
<!--[if !supportLists]-->l TMS320VC33PGE150:最高主频 75MHz。<!--[endif]-->
3)TMS320C5000系列:
<!--[if !supportLists]-->l TMS320VC54xx:最高主频160MHz。<!--[endif]-->
<!--[if !supportLists]-->l TMS320VC55xx:最高主频 300MHz。<!--[endif]-->
4)TMS320C6000系列:
<!--[if !supportLists]-->l TMS320C62xx:最高主频300MHz。<!--[endif]-->
<!--[if !supportLists]-->l TMS320C67xx:最高主频 230MHz。 <!--[endif]-->
<!--[if !supportLists]-->l TMS320C64xx:最高主频720MHz。 <!--[endif]-->
问:DSP可以降频使用吗?
答:可以,DSP的主频均有一定的工作范围,因此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。 TMS320C64xx:PLL可以×1,×6和×12,因此外部主频可以为30MHz-720MHz。
问:如何选择DSP的外部存储器?
答: DSP的速度较快,为了保证DSP的运行速度,外部存储器需要具有一定的速度,否则DSP访问外部存储器时需要加入等待周 期。
1)对于C2000系列: C2000系列只能同异步的存储器直接相接。 C2000系列的DSP目前的最高速度为150MHz。建议可以用的存储 器 有: CY7C199-15:32K×8,15ns,5V; CY7C1021-12:64K×16,15ns,5V; CY7C1021V33-12:64K×16,15ns,3.3V。 2) 对于C3x系列: C3x系列只能同异步的存储器直接相接。 C3x系列的DSP的最高速度,5V的为40MHz,3.3V的为75MHz,为保证DSP 无等待运行,分别需要外部存储器的速度<25ns和<12ns。建议可以用的存储器有: ROM: AM29F400-70:256K×16,70ns,5V,加入一个等 待; AM29LV400-55(SST39VF400):256K×16,55ns,3.3V,加入两个等待(目前没有更快的 Flash)。 SRAM: CY7C199-15:32K×8,15ns,5V; CY7C1021-15:64K×16,15ns,5V; CY7C1009-15:128K×8,15ns,5V; CY7C1049-15:512K×8,15ns,5V; CY7C1021V33-15:64K×16,15ns,3.3V; CY7C1009V33-15:128K×8,15ns,3.3V; CY7C1041V33-15:256k×16,15ns,3.3V。
3) 对于C54x系列: C54x系列只能同异步的存储器直接相接。 C54x系列的DSP的速度为100MHz或160MHz,为保证DSP无等待运行,需 要外部存储器的速度<10ns或<6ns。建议可以用的存储器 有: ROM: AM29LV400-55(SST39VF400):256K×16,55ns,3.3V,加入5或9个等待(目前没有更快的 Flash)。 SRAM: CY7C1021V33-12:64K×16,12ns,3.3V,加入一个等 待; CY7C1009V33-12:128K×8,12ns,3.3V,加入一个等待。
4)对于C55x和C6000系列: TI的DSP中只有 C55x和C6000可以同同步的存储器相连,同步存储器可以保证系统的数据交换效率更 高。 ROM: AM29LV400-55(SST39VF400):256K×16,55ns,3.3V。 SDRAM: HY57V651620BTC- 10S:64M,10ns。 SBSRAM: CY7C1329-133AC,64k×32; CY7C1339-133AC,128k×32. FIFO:CY7C42x5V- 10ASC,32k/64k×18。
问:DSP芯片有多大的驱动能力?
答: DSP的驱动能力较强,可以不加驱动,连接8个以上标准TTL门。
问:如何调试多片DSP?
答:对于有MPSD仿真口的DSP(TMS320C30/C31/C32),不能用一套仿真器同时调试,每次只能调试其中的一个 DSP; 对于有JTAG仿真口的DSP,可以将JTAG串接在一起,用一套仿真器同时调试多个DSP,每个DSP可以用不同的名字,在不同的窗口中调试。 注意:如果在JTAG和DSP间加入驱动,一定要用快速的门电路,不能使用如LS的慢速门电路。
问:在DSP系统中为什么要使用CPLD?
答: DSP的速度较快,要求译码的速度也必须较快。利用小规模逻辑器件译码的方式,已不能满足DSP系统的要求。 同时,DSP系统中也经常需要外部快速部件的配合,这些部件往往是专门的电路,有可编程器件实现。 CPLD的时序严格,速度较快,可编程性好,非常适合于实现译码和专门电路。
问:什么是DSP的Boot loader?
答: DSP的速度尽快,EPROM或flash的速度较慢,而DSP片内的RAM很快,片外的RAM也较快。为了使DSP充分发挥它的能力,必须将程序代码放在RAM中运行。为了方便的将代码从ROM中搬到RAM中,在不带flash的DSP中,TI在出厂时固化了一段程序, 在上电后完成从ROM或外设将代码搬到用户指定的RAM中。此段程序称为"boot loader"。
问:DSP为什么要初始化?
答: DSP在RESET后,许多的寄存器的初值一般同用户的要求不一致,例如:等待寄存器,SP,中断定位寄存器等,需要通过初始化 程序设置为用户要求的数值。 初始化程序的主要作用: 1)设置寄存器初值。 2)建立中断向量表。 3)外围部件初始化。
问:电平变换都有哪些方法?
答: 1,总线收发器(Bus Transceiver): 常用器件: SN74LVTH245A(8位)、 SN74LVTH16245A(16位) 特点:3.3V供电,需进行方向控制, 延迟:3.5ns,驱动:-32/64mA, 输入容限:5V 应用: 数据、地址和控制总线的驱动 2,总线开关(Bustch) 常用器件:SN74CBTD3384(10位)、SN74CBTD16210(20位) 特 点:5V供电,无需方向控制 延迟:0。25ns,驱动能力不增加 应用:适用于信号方向灵活、且负载单一的应用,如McBSP等外设信号的电平变 换 3,2选1切换器(1 of 2 Multiplexer) 常用器件:SN74CBT3257(4位)、SN74CBT16292(12位) 特 点:实现2选1,5V供电,无需方向控制 延迟:0。25ns,驱动能力不增加 应用:适用于多路切换信号、且要进行电平变换的应用,如双路复用的 McBSP 4,CPLD 3.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引脚:如果缺省状态为输入引脚,则作为非关键的输入引脚处理,上拉或下拉为固定的电平;如果确省状态为输出引脚,则可以悬空不接。
问:DSP的C语言同主机C语言的主要区别?
答: 1)DSP的C语言是标准的ANSI C,它不包括同外设联系的扩展部分,如屏幕绘图等。但在CCS中,为了方便调试,可以将数据通过printf命令虚拟输出到主机的屏幕上。
2)DSP的C语言的编译过程为,C编译为ASM,再由ASM编译为OBJ。因此C和 ASM的对应关系非常明确,非常便于人工优化。
3)DSP的代码需要绝对定位;主机的C的代码有操作系统定位。 4)DSP的C的效率较高,非常适合于嵌入系统
试试吧!希望能帮到你
追问十分感谢你热心的回答,也对我有一些帮助,可惜并不是我想要的答案。如果时间到了还没有满意的答案,分就送你吧