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

DSP编程

开发平台:

C/C++

  1. /*
  2.  *  ======== Dsk5402_ddk.tci ========
  3.  *  This script simply sets up the board-specific parameters that are needed
  4.  *  for the assorted DDK examples.
  5.  */
  6. /*
  7.  *  Create an empty object and call it with the getProgObjs method to
  8.  *  create global variables for every Module and Instance object.
  9.  *  For example, instead of
  10.  *  prog.module("LOG").instance("LOG_system").buflen = <some value>;
  11.  *  we can simply say
  12.  *  tibios.LOG_system.buflen = <value>;
  13.  */
  14. tibios = {};
  15. utils.getProgObjs(prog, tibios);
  16. if (environment["config._54f_"] != null) {
  17.     tibios.GBL.CALLMODEL = "far";
  18. }
  19. /*
  20.  *  enable assorted BIOS features
  21.  */
  22. bios.enableMemoryHeaps(prog)
  23. bios.enableRealTimeAnalysis(prog);
  24. bios.enableRtdx(prog);
  25. bios.enableTskManager(prog);
  26. /*
  27.  *  initialize LOG objects for user trace and system log
  28.  */
  29. var trace = tibios.LOG.create("trace");
  30. trace.bufLen = 128;
  31. trace.logType = "circular";
  32. tibios.LOG_system.bufLen = 128;
  33. tibios.LOG_system.logType = "circular";
  34. /*
  35.  *  Memory segments, their sizes, heaps, and heap sizes.
  36.  */
  37. /* define base and size of the internal data memory segment */
  38. tibios.IDATA.base = 0x0080;
  39. tibios.IDATA.len  = 0x2f80;
  40. tibios.IDATA.space  = "data";
  41. /* allocate heap named "INTERNALHEAP" of size 0x0C00 in internal memory */
  42. tibios.IDATA.createHeap      = true;       
  43. tibios.IDATA.heapSize        = 0x0C00;  /* 3K   */
  44. tibios.IDATA.enableHeapLabel = true;  
  45. tibios.IDATA.heapLabel       = prog.extern( "INTERNALHEAP" );
  46. /* define base and size of the internal program memory segment */
  47. tibios.IPROG.base = 0x3000;
  48. tibios.IPROG.len  = 0x1000;
  49. tibios.IPROG.space = "code";
  50. /* allocate heap named "EXTERNALHEAP" of size 0x2000 in external memory */
  51. tibios.EDATA.createHeap      = true;
  52. tibios.EDATA.heapSize        = 0x2000;  /* 8K   */
  53. tibios.EDATA.enableHeapLabel = true; 
  54. tibios.EDATA.heapLabel       = prog.extern( "EXTERNALHEAP" );
  55. /*  
  56.  *  Set the size of the application stack. Must be large
  57.  *  enough to accomodate worst-case of nested priorities, if any.
  58.  */
  59. tibios.MEM.STACKSIZE = 0x0200; 
  60. /*
  61.  *  Set the default segment for the stack allocated by TSK_create().
  62.  */
  63. tibios.TSK.STACKSEG = tibios.EDATA;
  64. /*
  65.  *  Set the default segment for the stack allocated by TSK_create().
  66.  */
  67. tibios.TSK.STACKSEG = tibios.EDATA;
  68. /*
  69.  *  Overriding default section placement
  70.  *  assign listed sections to specified memory segments 
  71.  */ 
  72. /* General */
  73. /* Set dynamic heap allocation into IDATA */
  74. tibios.MEM.BIOSOBJSEG = tibios.IDATA;  /* Segment for DSP/BIOS Objects */
  75. tibios.MEM.MALLOCSEG  = tibios.IDATA;  /* Segment for malloc()/free() */
  76. /* BIOS data */
  77. tibios.MEM.GBLINITSEG = tibios.EPROG;  /* DSP/BIOS Init Tables (.gblinit) */
  78. tibios.MEM.TRCDATASEG = tibios.EPROG;  /* TRC Initial Value (.trcdata) */
  79. tibios.MEM.OBJSEG     = tibios.EDATA;  /* DSP/BIOS Conf Sections (.*obj) */
  80. /* BIOS code */
  81. tibios.MEM.BIOSSEG    = tibios.EPROG;  /* BIOS Code Section (.bios) */
  82. tibios.MEM.SYSINITSEG = tibios.EPROG;  /* Startup Code Section (.sysinit) */
  83. tibios.MEM.RTDXTEXTSEG = tibios.IPROG; /* RTDX Text Segment (.rtdx_text) */
  84. /* Compiler Sections */
  85. tibios.MEM.TEXTSEG    = tibios.EPROG; /* Text Section (.text) */
  86. tibios.MEM.CINITSEG   = tibios.EPROG; /* Data Initialization Section (.cinit) */
  87. tibios.MEM.PINITSEG   = tibios.EPROG; /* C Function Initialization (.pinit) */
  88. tibios.MEM.CONSTSEG   = tibios.EDATA; /* Constant Section (.const) */