DSP

DSP入门必看

2019-07-13 12:41发布

  DSP入门必看(非常好的DSP扫盲文章)(ZZ)(7) 如何设置硬件断点?  在profiler ->profile point -> break point  c54x的外部中断是电平响应还是沿响应?  是沿响应,准确的说,它要检测到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,驱动能力不增加  应用:适用于多路切换信号、且要进行电平变换的应用,如双路复用的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引脚:如果确省状态为输入引脚,则作为非关键的输入引脚处理,上拉或下拉为固定的电平;如果确省状态为输出引脚,则可以悬空不接