Refer to tms320dm6446.pdf /p14  (datasheet of TMS320DM6446) DSP has only 
64KB

The DSP Subsystem includes the following features:
· C64x+ DSP CPU
· 32KB L1 Program (L1P)/Cache (up to 32KB)
· 80KB L1 Data (L1D)/Cache (up to 32KB)
· 64KB Unified Mapped RAM/Cache (L2)
· Little endian

Best regards
Ondrej Pindroch



-----Original Message-----

From: bhushan <saraf.bhus...@gmail.com>

To: jaya.krish...@samsung.com

Cc: "davinci-linux-open-source@linux.davincidsp.com" 
<davinci-linux-open-source@linux.davincidsp.com>

Date: Thu, 21 May 2009 14:23:18 +0530

Subject: Re: Unable to change cache size in codec engine.




I am referring doc spru871j.pdf. In the section Level 2 memory and

cache it is mentioned that the L2 cache size can be configured for

32KB, 64KB, 128KB and 256KB. I presume the L2_CACHE  is same as this.

If there is any other doc whcih specifies that the cache size

configured is limited to 64KB please refer the same to me.



regards,

Bhushan



On Thu, May 21, 2009 at 1:30 PM, Jaya krishnan

<jaya.krish...@samsung.com> wrote:

> Hello,

> I remember 64x+  L2 cache  size is 64K (maximum).

> Regards

> Jayakrishnan

>

>

>

>

> ------- Original Message -------

> Sender : bhushan<saraf.bhus...@gmail.com>

> Date   : May 21, 2009 16:19 (GMT+09:00)

> Title  : Unable to change cache size in codec engine.

>

> Hello ,

>   I am trying to build an application to encode video in mpeg4 format

> and also integrate the scale example from the codec engine in the

> encode combo server. During the integration fro performance reasons I

> want to increase the L2 cache size  from 64k to 128k. My processor is

> tms320dm6446.

> On building the codec_server I get the error:

> Error: Can&#39;t set cache to size: 128k

> Following is the encode.tcf file:

> /*

>  * Setup platform-specific memory map, CLK rate, etc.

>  */

> var mem_ext = [

> {

>    comment:    "DDRALGHEAP: memory for dynamic algmem allocation",

>    name:       "DDRALGHEAP",

>    base:       0x8B800000,

>    len:        0x04200000,// 66MB

>    space:      "code/data"

> },

> {

>    comment:    "L1DSRAM: memory for dynamic algmem allocation",

>    name:       "L1DSRAM",

>    base:       0x11F04000,   //

>    len:        0x10000,   // 64k

>    space:      "data"

> },

> {

>    comment:    "CACHE_L2",

>    name:       "CACHE_L2",

>    base:       0x11800000,   //

>    len:        0x200000,   // 128k

>    space:      "data"

> },

> {

>    comment:    "H264ENCSEC1",

>    name:       "H264ENCSEC1",

>    base:       0x8FA00000,

>    len:        0x00004140,

>    space:      "code/data"

> },

> {

>    comment:    "H264ENCSEC2",

>    name:       "H264ENCSEC2",

>    base:       0x8FA04140,

>    len:        0x00005080,

>    space:      "code/data"

> },

> {

>    comment:    "H264ENCSEC3",

>    name:       "H264ENCSEC3",

>    base:       0x8FA09220,

>    len:        0x00006000,

>    space:      "code/data"

> },

> {

>    comment:    "H264ENCSEC4",

>    name:       "H264ENCSEC4",

>    base:       0x8FA10000,

>    len:        0x00005000,

>    space:      "code/data"

> },

> {

>    comment:    "H264ENCSEC5",

>    name:       "H264ENCSEC5",

>    base:       0x8FA15000,

>    len:        0x00003000,

>    space:      "code/data"

> },

> {

>    comment:    "H264ENCSEC6",

>    name:       "H264ENCSEC6",

>    base:       0x8FA18000,

>    len:        0x00004040,

>    space:      "code/data"

> },

> {

>    comment:    "H264ENCSEC7",

>    name:       "H264ENCSEC7",

>    base:       0x8FA28000,

>    len:        0x00005400,

>    space:      "code/data"

> },

> {

>    comment:    "H264ENCSEC8",

>    name:       "H264ENCSEC8",

>    base:       0x8FA2D400,

>    len:        0x00002c00,

>    space:      "code/data"

> },

> {

>    comment:    "MPEG4ENCSEC1",

>    name:       "MPEG4ENCSEC1",

>    base:       0x8FA40000,

>    len:        0x00010000,

>    space:      "code/data"

> },

> {

>    comment:    "MPEG4ENCSEC2",

>    name:       "MPEG4ENCSEC2",

>    base:       0x8FA50000,

>    len:        0x00008000,

>    space:      "code/data"

> },

> {

>    comment:    "MPEG4ENCSEC3",

>    name:       "MPEG4ENCSEC3",

>    base:       0x8FA58000,

>    len:        0x00008000,

>    space:      "code/data"

> },

> {

>    comment:    "MPEG4ENCSEC4",

>    name:       "MPEG4ENCSEC4",

>    base:       0x8FA60000,

>    len:        0x00008000,

>    space:      "code/data"

> },

> {

>    comment:    "MPEG4ENCSEC5",

>    name:       "MPEG4ENCSEC5",

>    base:       0x8FA68000,

>    len:        0x00008000,

>    space:      "code/data"

> },

> {

>    comment:    "MPEG4ENCSEC6",

>    name:       "MPEG4ENCSEC6",

>    base:       0x8FA70000,

>    len:        0x00008000,

>    space:      "code/data"

> },

> {

>    comment:    "MPEG4ENCSEC7",

>    name:       "MPEG4ENCSEC7",

>    base:       0x8FA78000,

>    len:        0x00010000,

>    space:      "code/data"

> },

>

> {

>

>    comment:    "DDR: memory for code and data",

>    name:       "DDR",

>    base:       0x8FB00000,

>    len:        0x00300000,

>    space:      "code/data"

> },

>

>

> {

>    comment:    "DSPLINK: memory for DSPLINK code and data",

>    name:       "DSPLINKMEM",

>    base:       0x8FE00000,   // 254MB

>    len:        0x00100000,   //   1MB

>    space:      "code/data"

> },

> {

>    comment:    "RESET_VECTOR: memory for the reset vector table",

>    name:       "RESET_VECTOR",

>    base:       0x8FF00000,

>    len:        0x00000080,

>    space:      "code/data"

> },

> ];

>

> /* Specify the L2 memory setting */

> var device_regs = {

>    l2Mode: "128k"

> };

>

> var params = {

>    clockRate: 594,

>    catalogName: "ti.catalog.c6000",

>    deviceName: "DM6446",

>    regs: device_regs,

>    mem: mem_ext

> };

>

> /*

>  * Customize generic platform with parameters specified above.

>  */

> utils.loadPlatform("ti.platforms.generic", params);

>

> /*  
===========================================================================

>  *  Enable heaps and tasks

>  *  
===========================================================================

>  */

> bios.enableMemoryHeaps(prog);

> bios.enableTskManager(prog);

>

> /*  
===========================================================================

>  *  Create heaps in memory segments that are to have heap

>  *  
===========================================================================

>  */

> bios.DDR.createHeap = true;

> bios.DDR.heapSize   = 0x10000; // 256K

>

> bios.DDRALGHEAP.createHeap = true;

> bios.DDRALGHEAP.heapSize   = bios.DDRALGHEAP.len;

>

> /*

>  *  Enable heaps in the L1DSRAM (internal L1 cache ram, fixed size)

>  *  and define the label for heap usage.

>  */

> bios.L1DSRAM.createHeap       = true;

> bios.L1DSRAM.enableHeapLabel  = true;

> bios.L1DSRAM.len              = 0x10000;

> bios.L1DSRAM["heapLabel"]     = prog.extern("L1DHEAP");

> bios.L1DSRAM.heapSize         = 0x10000;

>

> /*  
===========================================================================

>  *  GBL

>  *  
===========================================================================

>  */

> prog.module("GBL").ENABLEALLTRC    = false;

> prog.module("GBL").PROCID          = 0;

> prog.module("GBL").CALLUSERINITFXN = 1;

> /* user init function calls Link&#39;s HAL initialization */

> prog.module("GBL").USERINITFXN     = prog.extern("HAL_init");

>

> prog.module("GBL").C64PLUSCONFIGURE   = true ;

> prog.module("GBL").C64PLUSL2CFG       = "128k" ;

> prog.module("GBL").C64PLUSL1DCFG      = "16k" ;

> prog.module("GBL").C64PLUSL1PCFG      = "32k" ;

> prog.module("GBL").C64PLUSMAR128to159 = 0x0000ffff;

>

> /* CPU load computation */

> var cpuLoad = prog.module("IDL").create("Global_cpuLoad");

>

> cpuLoad.fxn = prog.extern("LOAD_idlefxn");

>

> cpuLoad.calibration = true;

>

>

>

> /*  
===========================================================================

>  *  HWI

>  *  
===========================================================================

>  */

> bios.HWI_INT4.interruptSelectNumber = 16

> bios.HWI_INT5.interruptSelectNumber = 17

>

> /*  
===========================================================================

>  *  MEM

>  *  
===========================================================================

>  */

> prog.module("MEM").STACKSIZE = 0x1000 ;

>

> /*  
===========================================================================

>  *  Global Settings

>  *  
===========================================================================

>  */

> prog.module("MEM").ARGSSIZE = 200;

>

> /*  
===========================================================================

>  *  Enable MSGQ and POOL Managers

>  *  
===========================================================================

>  */

> bios.MSGQ.ENABLEMSGQ = true;

> bios.POOL.ENABLEPOOL = true;

>

> /*  
===========================================================================

>  *  Set all code and data sections to use DDR

>  *  
===========================================================================

>  */

> bios.setMemCodeSections (prog, bios.DDR) ;

> bios.setMemDataNoHeapSections (prog, bios.DDR) ;

> bios.setMemDataHeapSections (prog, bios.DDRALGHEAP) ;

>

> /*  
===========================================================================

>  *  MEM : IRAM

>  *  
===========================================================================

>  */

> //var IRAM    = prog.module("MEM").instance("IRAM");

> //IRAM.len    = 0x800;

>

> /*  
===========================================================================

>  *  MEM : Global

>  *  
===========================================================================

>  */

> prog.module("MEM").BIOSOBJSEG = bios.DDRALGHEAP;

> prog.module("MEM").MALLOCSEG  = bios.DDRALGHEAP;

>

> /*  
===========================================================================

>  *  TSK : Global

>  *  
===========================================================================

>  */

> prog.module("TSK").STACKSEG = bios.DDRALGHEAP ;

>

> /*  
===========================================================================

>  *  Generate configuration files...

>  *  
===========================================================================

>  */

> if (config.hasReportedError == false) {

>    prog.gen();

> }

>

>  If anyone has any suggestion or information on how to go about

> changing the cache size in this file or using bios apis please reply,

> Thanks in advance

> --

> Bhushan

>

> _______________________________________________

> Davinci-linux-open-source mailing list

> Davinci-linux-open-source@linux.davincidsp.com

> http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source 
[http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source]

>







-- 

Bhushan
_______________________________________________
Davinci-linux-open-source mailing list
Davinci-linux-open-source@linux.davincidsp.com
http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source

Reply via email to