dsp程序存储器
A. DSP在工作时候,程序是在内部ram中,还是存储在外部sdram,然后在运行过程中,将程序实时载入其内部运行
DSP工作的时候数据时放在ram里的,sdram只是外扩的存储器,掉电后数据丢失。一般DSP的程序是固化在外部flash里,然后上电后自动boot到DSP内部运行。
B. 什么是DSP最小系统
DSP最小系统就是保证DSP可以正常工作的最少硬件构成。
对于一般DSP内部资源已经能够满足系统需要的,可以采用最小系统。
基本上DSP都包括片内程序存储器,容量也足够用,因此无需加外部程序存储器。加外部存储器的最大优点就是每次调试程序的时候可以不通过内部FLASH烧写,而将程序载入外存储器调试即可。
只要系统包括复位、晶振、必要输入I/O口上、下拉电阻、电源地,就可以构成最小系统。
参考链接:网络_DSP
C. 关于DSP的内存空间,请高手解惑:
哈弗结构,分为数据空间和程序空间是指L1是由L1P(程序存储器)和L1D(数据存储器)两个部分组成,由相互独立总线来访问其中的数据。
从图上看到片上有256K x l6的Flash存储器,34K x l6的SARAM存储器.1K x 16 OTPROM和8K x l6的Boot ROM。
由于我是做c6000平台dsp开发,这几个内存空间哪些能够写数据不太清楚,但至少的Flash存储器和SARAM存储器是能够写数据。
怎么把数据写到指定的内存空间里?可以使用#pragma DATA_SECTION伪指令来完成
D. DSP的存储器问题
程序存储器,数据存储器和I/O空间并不是属于片内存储器或者片外存储器,应该是片内片外的总和,也就是C54x的存储器空间的总和。而在这三个存储空间中任一个里,RAM,ROM,EPROM,EEPROM或者存储映象外围设备都可以驻留在片内或者片外,并且这三个空间的总地址范围为192K,就是你所说的64K * 3,所以这三个空间都是64K。(以上所注明的为TMS320C54x)
E. 关于DSP 存储器的一些问题
首先要搞清楚一点,需要存储所有的东西都可以称为数据,包括程序,只不过程序是有一定功能的数据。ROM是掉电后里面数据不丢失,一般用来存储固定的程序或数据;RAM是掉电后里面数据丢失,存放暂时要处理的数据,直接与CPU交换数据。TMS320LF240的RAM不够用才外扩。