DSP设计相关问题解答(2)
2019-07-15 01:00发布
打开微信“扫一扫”,打开网页后点击屏幕右上角分享按钮
DSP设计相关问题解答(2)
12.DSP外接存储器的控制方式
对于一般的存储器具有RD、WR和CS等控制信号,许多DSP(C3x、C5000)都没有控制信号直接连接存储器,一般采用的方式如下:
1.CS有地址线和PS、DS或STRB译码产生;
2./RD=/STRB+/R/W; 3./WR=/STRB+R/W。
13.GEL文件的功能?
GEL文件的功能同emuinit.cmd的功能基本相同,用于初始化DSP。但它的功能比emuinit的功能有所增强,GEL在CCS下有一个菜单,可以根据DSP的对象不同,设置不同的初始化程序。以TMS320LF2407为例:
- #define SCSR1 0x7018 ;定义scsr1寄存器
- #define SCSR2 0X7019 ;定义scsr2寄存器
- #define WDKEY 0x7025 ;定义wdkey寄存器
- #define WDNTR 0x7029 ;定义wdntr寄存器
- StartUp() ; 开始函数
- {
- GEL_MapReset(); ; 存储空间复位 GEL_MapAdd(0x0000,0,0x7fff,1,1); 定义程序空间从0000-7fff 可读写
- GEL_MapAdd(0x8000,0,0x7000,1,1); 定义程序空间从8000-f000 可读写
- GEL_MapAdd(0x0000,1,0x10000,1,1); 定义数据空间从0000-10000可读写
- GEL_MapAdd(0xffff,2,1,1,1); 定义i/o 空间0xffff可读写
- GEL_MapOn(); 存储空间打开
- GEL_MemoryFill(0xffff,2,1,0x40); 在i/o空间添入数值40h
- *(int *)SCSR1=0x0200; 给scsr1寄存器赋值
- *(int *)SCSR2=0x000C; 给scsr2寄存器赋值,在这里可以进行mp/mc方式的转换
- *(int *)WDNTR=0x006f; 给wdntr寄存器赋值
- *(int *)WDKEY=0x055; 给wdkey寄存器赋值
- *(int *)WDKEY=0x0AA; 给wdkey寄存器赋值
- }
复制代码
14.使用TI公司模拟器件与DSP结合使用的好处。
1)在使用TI公司的DSP的同时,使用TI公司的模拟可以和DSP进行无缝连接。器件与器件之间不需要任何的连接或转接器件。这样即减少了板卡的尺寸,也降低了开发难度。
2)同为TI公司的产品,很多器件可以固定搭配使用。少了器件选型的烦恼
3)TI在CCS中提供插件,可以用于DSP和模拟器件的开发,非常方便。
15.C语言中可以嵌套汇编语言?
可以。在ANSI C标准中的标准用法就是用C语言编写主程序,用汇编语言编写子程序,中断服务程序,一些算法,然后用C语言调用这些汇编程序,这样效率会相对比较高,在定点DSP系统中可否实现浮点运算。
当然可以,因为DSP都可以用C,只要是可以使用c语言的场合都可以实现浮点运算。
JTAG头的使用会遇到哪些情况
1)DSP的CLKOUT没有输出,工作不正常。
2)Emu0,Emu1需要上拉。
3)TCK的频率应该为10M。
4)在3.3V DSP中,PD脚为3.3V 供电,但是仿真器上需要5V电压供电,所以PP仿真器盒上需要单独供电。
4)仿真多片DSP。在使用菊花链的时候,第一片DSP的TDO接到第二片DSP的TDI即可。注意当串联DSP比较多的时候,信号线要适当的增加驱动。
16.include头文件(.h)的主要作用
头文件,一般用于定义程序中的函数、参数、变量和一些宏单元,同库函数配合使用。因此,在使用库时,必须用相应的头文件说明。
DSP中断向量的位置
1)2000系列dsp的中断向量只能从0000H处开始。所以在我们调试程序的时候,要把DSP选择为MP(微处理器方式),把片内的Flash屏蔽掉,免去每次更改程序都要重新烧写Flash工作。
2)3x系列dsp的中断向量也只能在固定的地址。
3)5000,6000系列dsp的中断向量可以重新定位。但是它只能被重新定位到Page0范围内的任何空间。
一周热门 更多>