This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

请教:1。C6743片内RAM只有L2可用吗?2 。L1上电之后 默认为Cache模式,搞不懂Cache怎么用??3 L2是只有128K还是256K吗?手册上写的L2有两段地址,分别是128K的,



请教:1。C6743片内RAM只有L2可用吗?2 。L1上电之后 默认为Cache模式,搞不懂Cache怎么用??3 L2是只有128K还是256K吗?手册上写的L2有两段地址,分别是128K的

还有怎么感觉C6743可用的片内RAM比C6726 512K的还小呢?还是我没弄懂6743 RAM的真正用处,,,,C6726都不用外部存储器即可放较大的程序,43的是不是得靠外部存储器呢??

 

求解答,谢谢

  • C6743的内部RAM,用户只能使用L2的,L1的不能使用。对于L1,用户只能配置cache的大小。

    L2 RAM可以看3.4 Memory Map Summary,有两段,可用,每一段分别128K,用户可以使用L2 RAM,也可是使用外部RAM。

  • 能否解释下Cache的用处呢?  ,,,,另外,这两段L2 RAM貌似不能同时用吧?如果这两段同时放置不同的段,程序运行出现异常。。。。之前中断程序中,我把中断向量表放到其中一段RAM里,剩下的其它段放到另一段RAM里,中断就不能正常运行,放到同一段RAM中就正常啦

  • cache在dsp的作用,类似于cpu中的缓存。主要是解决CPU(速度快)和内存(速度慢)之间速度不匹配的问题。具体可参考这里:

    Why Use Cache
    From a DSP application perspective, a large amount of fast on-chip memory
    would be ideal. However, over the past years the performance of processors
    has improved at a much faster pace than that of memory. As a result, there is
    now a performance gap between CPU and memory speed. High-speed
    memory is available but consumes much more size and is more expensive
    compared with slower memory.
    Consider the flat memory architecture shown on the left in Figure 1–1. Both
    CPU and internal memory are clocked at 300 MHz such that no memory stalls
    occur. However for accesses to the slower external memory, there will be CPU
    stalls. If the CPU clock was now increased to 600 MHz, the internal memory
    could only service CPU accesses every two CPU cycles and the CPU would
    stall for one cycle on every memory access. The penalty would be particularly
    large for highly optimized inner loops that may access memory on every cycle.
    In this case, the effective CPU processing speed would approach the slower
    memory speed. Unfortunately, today’s available memory technology is not
    able to keep up with increasing processor speeds, and a same size internal
    memory running at the same CPU speed would be far too expensive.

  • 两段内存并不冲突啊,不知道你在不用中断的时候,同时使用两段内存有什么问题吗?

  • 6726是不是没有Cahce呢?6743跟6726相比是不是内存没有26大,但是由于有Cache运算速度比26块快?我这样理解不知道对不对

  • C6726有Cahce的。它内部也有256K Bytes的RAM。可以参考datasheet中的数据。

  • 1 那6743与6726相比有什么优点呢??

    2 另外想请教下看一个DSP工程多大具体是看.C文件大小还是看编译之后的.out文件大小????老师 让把程序弄大点已测试板子是否稳定,不知道怎么把程序搞大点???

    3  如果想把程序放到外部SDRAM,是不是需要先把初始化SDRAM的程序固化到DSP里,才能用SDRAM?、??

  • 1,首先C6726是属于比较老的C67X+内核,而C6743用的是后来的C674X的内核。新的C674X内核,不仅大大缩减功耗,而且增加和加强了一些内核指令。另外,新的C674X内核主频也得到了提升。

  • 2,看工程程序的大小,不能看.c文件的大小,也不能看.out文件的大小。可以参考生成的可执行二进制文件的大小。可执行二进制文件,即最终烧写进存储器的固件程序,当然它是有.out文件生成的。

  • 非常感谢您的回答,初学DSP,还望您能帮我答疑后面两个问题,谢谢

  • 3,SDRAM属于易挥发性随机存取存储器,掉电后信息丢失,不能存储用户程序。一般流程是,将用户固件程序存储于ROM存储器中,DSP上电后,通过boot程序,读取ROM的用户程序,将其搬运到RAM中,然后在RAM中运行。

  • 您好,谢谢您耐心的回答,,我是想问:求正弦值为10000次时,编译出现问题,说内存不足(当为1000没问题)can't allocate .far ,size 00027540 in DSPRAM,所以我想把.text段分配到SDRAM中,但是程序(主程序中有SDRAM初始化的程序)一运行就跑飞啦,我在想是不是应该提前把SDRAM初始化好才能将.text段分配到SDRAM中????

    for (i=0;i<N;i++)

    {

    x[Rxhead]=pi*i/180; //将角度转换为弧度

    y[Rxhead]=sin(x[Rxhead]); //计算正弦值

    Rxhead=Rxhead+1;

    }

  • 您好,

    建议您使用GEL文件,在GEL文件中来完成SDRAM初始化。