Dsk5416_ddk.tci
上传用户:dahaojd
上传日期:2008-01-29
资源大小:14357k
文件大小:3k
源码类别:

DSP编程

开发平台:

C/C++

  1. /*
  2.  *  ======== Dsk5416_ddk.tci ========
  3.  *  This file is used for textual configuration of DSP/BIOS as an alternative
  4.  *  or in addition to the traditional graphical configuration tool (GCONF).
  5.  *  For more information on textual configuration and the TCONF utility,
  6.  *  please refer to the DSP/BIOS TextConf User's Guide (SPRU007).
  7.  */
  8. /*
  9.  *  Create an empty object and call it with the getProgObjs method to
  10.  *  create global variables for every Module and Instance object.
  11.  *  For example, instead of
  12.  *  prog.module("LOG").instance("LOG_system").buflen = <some value>;
  13.  *  we can simply say
  14.  *  tibios.LOG_system.buflen = <value>;
  15.  */
  16. tibios = {};
  17. utils.getProgObjs(prog, tibios);
  18. if (environment["config._54f_"] != null) {
  19.     tibios.GBL.CALLMODEL = "far";
  20. }
  21. /*
  22.  *  enable assorted BIOS features
  23.  */
  24. bios.enableMemoryHeaps(prog)
  25. bios.enableRealTimeAnalysis(prog);
  26. bios.enableRtdx(prog);
  27. bios.enableTskManager(prog);
  28. /*
  29.  *  initialize LOG objects for user trace and system log
  30.  */
  31. var trace = tibios.LOG.create("trace");
  32. trace.bufLen = 128;
  33. trace.logType = "circular";
  34. tibios.LOG_system.bufLen = 128;
  35. tibios.LOG_system.logType = "circular";
  36. /*
  37.  *  Memory segments, their sizes, heaps, and heap sizes
  38.  *  In internal and external data memory, we create heaps with names 
  39.  *  INTERNALHEAP and EXTERNALHEAP, respectively, and platform-independent
  40.  *  portions of the application refer to these heaps by their names
  41.  *  rather than the names of memory segments they are created in
  42.  *  (as not all platforms have IDATA, DARAM47 segments).
  43.  */
  44. /* allocate heap named "INTERNALHEAP" of size 0x0C00 in internal memory */
  45. tibios.IDATA.createHeap      = true;       
  46. tibios.IDATA.heapSize        = 0x0C00;  /* 3K   */
  47. tibios.IDATA.enableHeapLabel = true;       
  48. tibios.IDATA.heapLabel       = prog.extern( "INTERNALHEAP" );
  49. /* allocate heap named "EXTERNALHEAP" of size 0x2000 in external memory */
  50. tibios.DARAM47.createHeap      = true;
  51. tibios.DARAM47.heapSize        = 0x2000;  /* 8K   */
  52. tibios.DARAM47.enableHeapLabel = true; 
  53. tibios.DARAM47.heapLabel       = prog.extern( "EXTERNALHEAP" );
  54. /*  
  55.  *  Set the size of the application stack. Must be large
  56.  *  enough to accomodate worst-case of nested priorities, if any.
  57.  */
  58. tibios.MEM.STACKSIZE = 0x0200; 
  59. /*
  60.  *  Set the default segment for the stack allocated by TSK_create().
  61.  */
  62. tibios.TSK.STACKSEG = tibios.DARAM47;
  63. /*
  64.  *  Overriding default section placement
  65.  *  Assign listed sections to specified memory segments.
  66.  */
  67. /* General */
  68. /* Set dynamic heap allocation into IDATA */
  69. tibios.MEM.BIOSOBJSEG  = tibios.IDATA;    /* Segment for DSP/BIOS Objects */
  70. tibios.MEM.MALLOCSEG   = tibios.IDATA;    /* Segment for malloc()/free() */
  71. /* BIOS data */
  72. /* BIOS code */
  73. /* Compiler Sections */
  74. /*
  75.  *  To assist in changing prog model from far <-> near,
  76.  *  these sections are placed on the overlay page
  77.  */
  78. tibios.MEM.GBLINITSEG = tibios.IPROG;   /* DSP/BIOS Initialization
  79.                                            Tables (.gblinit) */
  80. tibios.MEM.TRCDATASEG = tibios.IPROG;   /* TRC Initial value (.trcdata) */
  81. tibios.MEM.SWITCHSEG  = tibios.IPROG;   /* Switch Jump Table (.switch) */
  82. tibios.MEM.CINITSEG   = tibios.IPROG;   /* Data Initialization
  83.                                            Section (.cinit) */
  84. tibios.MEM.PINITSEG   = tibios.IPROG;   /* C Function Initialization
  85.                                            (.pinit) */