diff options
author | ymherklotz <ymherklotz@gmail.com> | 2018-02-27 10:17:10 +0000 |
---|---|---|
committer | ymherklotz <ymherklotz@gmail.com> | 2018-02-27 10:17:10 +0000 |
commit | 16fd81be34fef52a4805b715b10218747c497420 (patch) | |
tree | a19c9050d3731dfd30e2c5fea51c8a5dd0aa194a /lab5/RTDSP | |
parent | fc9d835a3db90d11ecf6f0a072700c7c508fc2a2 (diff) | |
download | NoiseSilencer-16fd81be34fef52a4805b715b10218747c497420.tar.gz NoiseSilencer-16fd81be34fef52a4805b715b10218747c497420.zip |
Fixed lab5 config
Diffstat (limited to 'lab5/RTDSP')
-rw-r--r-- | lab5/RTDSP/.gconf/RTDSP/lab5/RTDSP/TEMPtcfD08B.tcf | 15 | ||||
-rw-r--r-- | lab5/RTDSP/.gconf/RTDSP/lab5/RTDSP/dsp_bios_.cdb (renamed from lab5/RTDSP/.gconf/RTDSP/lab5/RTDSP/TEMPtcfD08B.cdb) | 16 | ||||
-rw-r--r-- | lab5/RTDSP/.gconf/RTDSP/lab5/RTDSP/dsp_bios_.tcf | 4 | ||||
-rw-r--r-- | lab5/RTDSP/.gconf/RTDSP/lab5/RTDSP/dsp_bios_cfg.cmd | 296 | ||||
-rw-r--r-- | lab5/RTDSP/.gconf/RTDSP/lab5/RTDSP/dsp_bios_cfg.h | 29 | ||||
-rw-r--r-- | lab5/RTDSP/.gconf/RTDSP/lab5/RTDSP/dsp_bios_cfg.h62 | 197 | ||||
-rw-r--r-- | lab5/RTDSP/.gconf/RTDSP/lab5/RTDSP/dsp_bios_cfg.s62 | 1091 | ||||
-rw-r--r-- | lab5/RTDSP/.gconf/RTDSP/lab5/RTDSP/dsp_bios_cfg_c.c | 11 | ||||
-rw-r--r-- | lab5/RTDSP/dsp_bios_.tcf | 4 |
9 files changed, 1640 insertions, 23 deletions
diff --git a/lab5/RTDSP/.gconf/RTDSP/lab5/RTDSP/TEMPtcfD08B.tcf b/lab5/RTDSP/.gconf/RTDSP/lab5/RTDSP/TEMPtcfD08B.tcf deleted file mode 100644 index 468b9bb..0000000 --- a/lab5/RTDSP/.gconf/RTDSP/lab5/RTDSP/TEMPtcfD08B.tcf +++ /dev/null @@ -1,15 +0,0 @@ -utils.loadPlatform("ti.platforms.dsk6713"); - -/* The following DSP/BIOS Features are enabled. */ -bios.enableRealTimeAnalysis(prog); -bios.enableRtdx(prog); -bios.enableTskManager(prog); - -bios.HWI.instance("HWI_INT4").interruptSource = prog.get("MCSP_1_Receive"); -bios.HWI.instance("HWI_INT4").fxn = prog.extern("ISR_AIC"); -bios.HWI.instance("HWI_INT4").useDispatcher = 1; -bios.HWI.instance("HWI_INT4").interruptSource = prog.get("MCSP_1_Transmit"); -bios.HWI.instance("HWI_INT4").interruptSource = prog.get("MCSP_1_Receive"); -// !GRAPHICAL_CONFIG_TOOL_SCRIPT_INSERT_POINT! - -prog.save("C:/Github/RTDSP/lab5/RTDSP/.gconf/RTDSP/lab5/RTDSP/TEMPtcfD08B.cdb");
\ No newline at end of file diff --git a/lab5/RTDSP/.gconf/RTDSP/lab5/RTDSP/TEMPtcfD08B.cdb b/lab5/RTDSP/.gconf/RTDSP/lab5/RTDSP/dsp_bios_.cdb index 4e9e937..c17ef92 100644 --- a/lab5/RTDSP/.gconf/RTDSP/lab5/RTDSP/TEMPtcfD08B.cdb +++ b/lab5/RTDSP/.gconf/RTDSP/lab5/RTDSP/dsp_bios_.cdb @@ -75,13 +75,13 @@ type GlobalStatus { prop Visible :: 0 prop Writable :: 1 } - global DATE :: "" { + global DATE :: "Tue Feb 27 10:16:43 2018" { prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } - global GCONFVERS :: "" { + global GCONFVERS :: "@(#)*** xdcutils-e03" { prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Visible :: 0 prop Writable :: 0 @@ -1648,7 +1648,7 @@ type MEM { prop NoGen :: 1 prop TabName :: "BIOS Data" } - global NOHEAPS :: 1 { + global NOHEAPS :: 0 { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "No Dynamic Memory Heaps" prop JSName :: "NOMEMORYHEAPS" @@ -1658,7 +1658,7 @@ type MEM { prop Set :: (if ($1) {self.SEGZERO.iReqHeapCount--, self.SEGZERO = MEM_NULL, self.MALLOCSEG.iReqHeapCount--, self.MALLOCSEG = MEM_NULL, TSK.STACKSEG.iReqHeapCount--, TSK.STACKSEG = MEM_NULL, scan ($i; MEM) {if ($i.iAllocHeap && $i != MEM_NULL) {$i.iAllocHeap = 0, $i.iHeapSize = 0} }} , self.NOHEAPS = $1, "ok") prop PropSetOkUserMsg :: if (MEM.NOHEAPS == 1) {"Currently specified heaps no longer valid"} else {"Please reconfigure heaps under individual mem segments"} } - global SEGZERO :: MEM_NULL { + global SEGZERO :: IRAM { prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}" prop MemberType :: MEM prop MemberTest :: (self.dataNullMember($1) && $1.iAllocHeap) @@ -1669,7 +1669,7 @@ type MEM { prop NoGen :: 0 prop Set :: (if (self.SEGZERO.iReqHeapCount > 0) {self.SEGZERO.iReqHeapCount--} , self.SEGZERO = $1, self.SEGZERO.iReqHeapCount++, "ok") } - global MALLOCSEG :: MEM_NULL { + global MALLOCSEG :: IRAM { prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}" prop MemberType :: MEM prop MemberTest :: (self.dataNullMember($1) && $1.iAllocHeap) @@ -2073,7 +2073,7 @@ object MEM_NULL :: MEM { param iHeapSize :: 32768 param iUserHeapId :: 0 param iHeapId :: @segment_name - param iReqHeapCount :: 1 + param iReqHeapCount :: 0 param space :: "data" param dynamicLoading :: 0 param iIsModifiable :: 1 @@ -8750,11 +8750,11 @@ object IRAM :: MEM { param iDelMsg :: "ok" param base :: 0 param len :: 262144 - param iAllocHeap :: 0 + param iAllocHeap :: 1 param iHeapSize :: 32768 param iUserHeapId :: 0 param iHeapId :: @segment_name - param iReqHeapCount :: 0 + param iReqHeapCount :: 2 param space :: "code/data" param dynamicLoading :: 0 param iIsModifiable :: 1 diff --git a/lab5/RTDSP/.gconf/RTDSP/lab5/RTDSP/dsp_bios_.tcf b/lab5/RTDSP/.gconf/RTDSP/lab5/RTDSP/dsp_bios_.tcf index 6383243..e439c70 100644 --- a/lab5/RTDSP/.gconf/RTDSP/lab5/RTDSP/dsp_bios_.tcf +++ b/lab5/RTDSP/.gconf/RTDSP/lab5/RTDSP/dsp_bios_.tcf @@ -10,6 +10,10 @@ bios.HWI.instance("HWI_INT4").fxn = prog.extern("ISR_AIC"); bios.HWI.instance("HWI_INT4").useDispatcher = 1; bios.HWI.instance("HWI_INT4").interruptSource = prog.get("MCSP_1_Transmit"); bios.HWI.instance("HWI_INT4").interruptSource = prog.get("MCSP_1_Receive"); +bios.MEM.NOMEMORYHEAPS = 0; +bios.MEM.instance("IRAM").createHeap = 1; +bios.MEM.MALLOCSEG = prog.get("IRAM"); +bios.MEM.BIOSOBJSEG = prog.get("IRAM"); // !GRAPHICAL_CONFIG_TOOL_SCRIPT_INSERT_POINT! prog.gen(); diff --git a/lab5/RTDSP/.gconf/RTDSP/lab5/RTDSP/dsp_bios_cfg.cmd b/lab5/RTDSP/.gconf/RTDSP/lab5/RTDSP/dsp_bios_cfg.cmd new file mode 100644 index 0000000..e8b647a --- /dev/null +++ b/lab5/RTDSP/.gconf/RTDSP/lab5/RTDSP/dsp_bios_cfg.cmd @@ -0,0 +1,296 @@ +/* Do *not* directly modify this file. It was */ +/* generated by the Configuration Tool; any */ +/* changes risk being overwritten. */ + +/* INPUT dsp_bios_.cdb */ + +/* MODULE PARAMETERS */ +-u _GBL_setPLLto225MHz +GBL_USERINITFXN = _GBL_setPLLto225MHz; + +-u IRAM +MEM_SEGZERO = IRAM; +-u IRAM +MEM_MALLOCSEG = IRAM; + +-u CLK_F_getshtime +CLK_TIMEFXN = CLK_F_getshtime; +-u HWI_F_dispatch +CLK_HOOKFXN = HWI_F_dispatch; + +-u _KNL_tick +PRD_THOOKFXN = _KNL_tick; + +-u IRAM +RTDX_DATAMEMSEG = IRAM; + +-u IRAM +HST_DSMBUFSEG = IRAM; + +-u GBL_NULL +SWI_EHOOKFXN = GBL_NULL; +-u GBL_NULL +SWI_IHOOKFXN = GBL_NULL; +-u SWI_F_exec +SWI_EXECFXN = SWI_F_exec; +-u SWI_F_run +SWI_RUNFXN = SWI_F_run; + +-u MEM_NULL +TSK_STACKSEG = MEM_NULL; +-u _FXN_F_nop +TSK_VCREATEFXN = _FXN_F_nop; +-u _FXN_F_nop +TSK_VDELETEFXN = _FXN_F_nop; +-u _FXN_F_nop +TSK_VEXITFXN = _FXN_F_nop; + +-u IDL_F_stub +IDL_CALIBRFXN = IDL_F_stub; + +-u _UTL_doAbort +SYS_ABORTFXN = _UTL_doAbort; +-u _UTL_doError +SYS_ERRORFXN = _UTL_doError; +-u _UTL_halt +SYS_EXITFXN = _UTL_halt; +-u _UTL_doPutc +SYS_PUTCFXN = _UTL_doPutc; + +-u _FXN_F_nop +GIO_CREATEFXN = _FXN_F_nop; +-u _FXN_F_nop +GIO_DELETEFXN = _FXN_F_nop; +-u _FXN_F_nop +GIO_PENDFXN = _FXN_F_nop; +-u _FXN_F_nop +GIO_POSTFXN = _FXN_F_nop; + +/* OBJECT ALIASES */ +_SDRAM = SDRAM; +_IRAM = IRAM; +_PRD_clock = PRD_clock; +_RTA_fromHost = RTA_fromHost; +_RTA_toHost = RTA_toHost; +_HWI_RESET = HWI_RESET; +_HWI_NMI = HWI_NMI; +_HWI_RESERVED0 = HWI_RESERVED0; +_HWI_RESERVED1 = HWI_RESERVED1; +_HWI_INT4 = HWI_INT4; +_HWI_INT5 = HWI_INT5; +_HWI_INT6 = HWI_INT6; +_HWI_INT7 = HWI_INT7; +_HWI_INT8 = HWI_INT8; +_HWI_INT9 = HWI_INT9; +_HWI_INT10 = HWI_INT10; +_HWI_INT11 = HWI_INT11; +_HWI_INT12 = HWI_INT12; +_HWI_INT13 = HWI_INT13; +_HWI_INT14 = HWI_INT14; +_HWI_INT15 = HWI_INT15; +_KNL_swi = KNL_swi; +_TSK_idle = TSK_idle; +_IDL_cpuLoad = IDL_cpuLoad; +_LNK_dataPump = LNK_dataPump; +_RTA_dispatcher = RTA_dispatcher; +_LOG_system = LOG_system; +_IDL_busyObj = IDL_busyObj; + +/* MODULE GBL */ + +SECTIONS { + .vers (COPY): {} /* version information */ +} + +-priority +--trampolines +-llnkrtdx.a67 +-ldrivers.a67 /* device drivers support */ +-lsioboth.a67 /* supports both SIO models */ +-lbiosC6000.a67 /* BIOS clock specific library */ +-lbios6x1x.a67 /* BIOS c6x1x specific library */ +-lbios.a67 /* DSP/BIOS support */ +-lrtdx.lib /* RTDX support */ +-lrts6700.lib /* C and C++ run-time library support */ + +_GBL_CACHE = GBL_CACHE; + +/* MODULE MEM */ +-stack 0x400 +MEMORY { + SDRAM : origin = 0x80000000, len = 0x800000 + IRAM : origin = 0x0, len = 0x40000 +} +/* MODULE CLK */ +SECTIONS { + .clk: { + + CLK_F_gethtime = CLK_F_getshtime; + *(.clk) + } > IRAM, RUN_START(CLK_A_TABBEG) +} +_CLK_PRD = CLK_PRD; +_CLK_COUNTSPMS = CLK_COUNTSPMS; +_CLK_REGS = CLK_REGS; +_CLK_USETIMER = CLK_USETIMER; +_CLK_TIMERNUM = CLK_TIMERNUM; +_CLK_TDDR = CLK_TDDR; + +/* MODULE PRD */ +SECTIONS { + .prd: RUN_START(PRD_A_TABBEG), RUN_END(PRD_A_TABEND) { + } > IRAM +} +PRD_A_TABLEN = 0; + +/* MODULE RTDX */ +_RTDX_interrupt_mask = 0x0; + +/* MODULE HST */ +_LNK_dspFrameReadyMask = LNK_dspFrameReadyMask; +_LNK_dspFrameRequestMask = LNK_dspFrameRequestMask; +_LNK_readDone = LNK_readDone; +_LNK_readFail = LNK_readFail; +_LNK_readPend = LNK_readPend; +_LNK_writeFail = LNK_writeFail; +/* MODULE HWI */ +SECTIONS { + .hwi_vec: 0x0 { + HWI_A_VECS = .; + *(.hwi_vec) + } +} + +_HWI_CFGDISPATCHED = HWI_CFGDISPATCHED; + +/* MODULE SWI */ +SECTIONS { + .swi: RUN_START(SWI_A_TABBEG), RUN_END(SWI_A_TABEND) { + } > IRAM +} +SWI_A_TABLEN = 1; + +/* MODULE TSK */ +SECTIONS { + .tsk: { + *(.tsk) + } > IRAM +} + +/* MODULE IDL */ +SECTIONS { + .idl: { + *(.idl) + } > IRAM, RUN_START(IDL_A_TABBEG) + + .idlcal: { + *(.idlcal) + } > IRAM, RUN_START(IDL_A_CALBEG) +} + + +LOG_A_TABLEN = 1; _LOG_A_TABLEN = 1; + +PIP_A_TABLEN = 2; + + +SECTIONS { + .bss: {} > IRAM + + .far: {} > IRAM + + .sysdata: {} > IRAM + + .dsm: {} > IRAM + + frt: {} > IRAM + + .mem: {} > IRAM + + .bios: {} > IRAM + + .cio: {} > IRAM + + .data: {} > IRAM + + .gio: {} > IRAM + + .pinit: {} > IRAM + + .sys: {} > IRAM + + .sysregs: {} > IRAM + + .text: {} > IRAM + + .cinit: {} > IRAM + + .switch: {} > IRAM + + .gblinit: {} > IRAM + + .sysinit: {} > IRAM + + .trcdata: {} > IRAM + + .hwi: {} > IRAM + + .rtdx_data: {} > IRAM + + .rtdx_text: {} > IRAM + + .TSK_idle$stk: { + *(.TSK_idle$stk) + } > IRAM + + /* LOG_system buffer */ + .LOG_system$buf: align = 0x100 {} > IRAM + + /* RTA_fromHost buffer */ + .hst1: align = 0x4 {} > IRAM + + /* RTA_toHost buffer */ + .hst0: align = 0x4 {} > IRAM + + GROUP { + .const: align = 0x8 {} + .printf (COPY): {} + } > IRAM + + .args: align=4 fill=0 { + *(.args) + . += 0x4; + } > IRAM + + .trace: fill = 0x0 align = 0x4 { + _SYS_PUTCBEG = .; + . += 0x200; + _SYS_PUTCEND = . - 1; + } > IRAM + + .hst: RUN_START(HST_A_TABBEG), RUN_START(_HST_A_TABBEG), RUN_END(HST_A_TABEND), RUN_END(_HST_A_TABEND) { + } > IRAM + + .log: RUN_START(LOG_A_TABBEG), RUN_START(_LOG_A_TABBEG), RUN_END(LOG_A_TABEND), RUN_END(_LOG_A_TABEND) { + } > IRAM + + .pip: RUN_START(PIP_A_TABBEG), RUN_START(_PIP_A_TABBEG), RUN_END(PIP_A_TABEND), RUN_END(_PIP_A_TABEND) { + } > IRAM + + .sts: RUN_START(STS_A_TABBEG), RUN_START(_STS_A_TABBEG), RUN_END(STS_A_TABEND), RUN_END(_STS_A_TABEND) { + } > IRAM + + .stack: align = 0x8 { + GBL_stackbeg = .; + *(.stack) + GBL_stackend = GBL_stackbeg + 0x400 - 1; + _HWI_STKBOTTOM = GBL_stackbeg + 0x400 - 8; + _HWI_STKTOP = GBL_stackbeg; + } > IRAM + + .IRAM$heap: { + . += 0x8000; + } RUN_START(IRAM$B), RUN_START(_IRAM_base), RUN_SIZE(IRAM$L), RUN_SIZE(_IRAM_length) > IRAM + +} + diff --git a/lab5/RTDSP/.gconf/RTDSP/lab5/RTDSP/dsp_bios_cfg.h b/lab5/RTDSP/.gconf/RTDSP/lab5/RTDSP/dsp_bios_cfg.h new file mode 100644 index 0000000..616731f --- /dev/null +++ b/lab5/RTDSP/.gconf/RTDSP/lab5/RTDSP/dsp_bios_cfg.h @@ -0,0 +1,29 @@ +/* Do *not* directly modify this file. It was */ +/* generated by the Configuration Tool; any */ +/* changes risk being overwritten. */ + +/* INPUT dsp_bios_.cdb */ + +/* Include Header Files */ +#include <std.h> +#include <hst.h> +#include <swi.h> +#include <tsk.h> +#include <log.h> +#include <sts.h> + +#ifdef __cplusplus +extern "C" { +#endif + +extern far HST_Obj RTA_fromHost; +extern far HST_Obj RTA_toHost; +extern far SWI_Obj KNL_swi; +extern far TSK_Obj TSK_idle; +extern far LOG_Obj LOG_system; +extern far STS_Obj IDL_busyObj; + + +#ifdef __cplusplus +} +#endif /* extern "C" */ diff --git a/lab5/RTDSP/.gconf/RTDSP/lab5/RTDSP/dsp_bios_cfg.h62 b/lab5/RTDSP/.gconf/RTDSP/lab5/RTDSP/dsp_bios_cfg.h62 new file mode 100644 index 0000000..5d097a2 --- /dev/null +++ b/lab5/RTDSP/.gconf/RTDSP/lab5/RTDSP/dsp_bios_cfg.h62 @@ -0,0 +1,197 @@ +;; Do *not* directly modify this file. It was +;; generated by the Configuration Tool; any +;; changes risk being overwritten. + +;; INPUT dsp_bios_.cdb + +;; CONFIGURATION/VERSION INFORMATION + .asg "dsp_bios_.cdb", VERS$CDB + .asg ";;;", VERS$CDBRELATIVEPATH + .asg "dsp_bios_cfg", VERS$CFG + .asg "@(#)*** xdcutils-e03", VERS$TREE + +;; EXTERNAL REFERENCES + .global HWI_unused + .global RESERVED + .global _FXN_F_nop + .global segment_name + .global _CLK_start6x + .global FXN_F_nop + .global FXN_F_zero + .global HWI_F_dispatch + .global CLK_F_frete + .global CLK_F_rete + .global CLK_F_getltime + .global CLK_F_isr + .global CLK_A_TABBEG + .global CLK_F_getfhtime + .global CLK_F_getshtime + .global PRD_F_tick + .global PRD_F_swi + .global _KNL_tick + .global LNK_F_dataPump + .global RTA_F_dispatch + .global _HSRTDX_xmt + .global _HSRTDX_rec + .global _RTDX_Poll + .global GBL_stackbeg + .global _c_int00 + .global SWI_F_exec + .global SWI_F_run + .global GBL_NULL + .global __HOOK_doCreate + .global __HOOK_doDelete + .global __HOOK_doExit + .global __HOOK_doSwitch + .global __HOOK_doReady + .global null + .global _IDL_loop + .global IDL_F_loop + .global _KNL_run + .global IDL_F_stub + .global IDL_F_calibrate + .global IDL_F_busy + .global _UTL_doPutc + .global _UTL_doAbort + .global _UTL_doError + .global _UTL_halt + .global _SEM_create + .global _SEM_delete + .global _SEM_pend + .global _SEM_post + .global _DIO_cbStaticFxns + .global _DIO_tskStaticFxns + .global _DIO_cbDynamicFxns + .global _DIO_tskDynamicFxns + .global _DIO_init + .global _DGN_printFloat + .global _DGN_printHex + .global _DGN_printInt + .global DGN_CONST + .global DGN_RAND + .global DGN_SINE + .global DGN_USER + .global _DGN_FXNS + .global _DHL_notify + .global _DHL_FXNS + .global _DPI_FXNS + .global _GBL_setPLLto225MHz + .global _ISR_AIC + +;; MODULE PARAMETERS +GBL$ .set 1 +GBL_ROM .set 00H +GBL_PROCID .set 00H +GBL_CLKIN .set 04e20H +GBL_FREQ .set 036ee8H +GBL_DSPTYPE .set 03eH +GBL_DSPSUBTYPE .set 01a39H +GBL_CLKTYPE .set 01770H +GBL_BIGENDIAN .set 00H +GBL_USERINIT .set 01H +GBL_ENABLEINST .set 01H +GBL_CACHE .set 00H +GBL_L2CONFIGURE .set 01H +GBL_L2MODE .set 00H +GBL_L2PRIORITY .set 00H +GBL_L2MARMASK .set 01H +GBL_SUPPORTCSL .set 00H +GBL_TRCMASKVALUE .set 0dbefH +GBL_CALLCSLCFGINIT .set 01H +GBL_C641XL2PRIORITY .set 00H +GBL_L2MARMASK1 .set 00H +GBL_L2MARMASK2 .set 00H +GBL_L2MARMASK3 .set 00H +GBL_L2MARMASK4 .set 00H +GBL_L2MARMASK5 .set 00H +GBL_L2CONFIGALLOC .set 00H +GBL_L2ALLOC .set 02226H +MEM$ .set 1 +MEM_gNumHeap .set 01H +MEM_USEMPC .set 00H +OBJ$ .set 0 +BUF$ .set 0 +BUF_ENABLED .set 01H +POOL$ .set 0 +POOL_USEPOOL .set 00H +CLK$ .set 1 +CLK_INTBIT .set 04000H +CLK_REGS .set 01940000H +CLK_TIMERNUM .set 00H +CLK_USETIMER .set 01H +CLK_MICROSECS .set 03e8H +CLK_TCR .set 020H +CLK_TDDR .set 00H +CLK_TDDRHIGH .set 00H +CLK_PRD .set 0dbbaH +CLK_PRDHIGH .set 00H +CLK_COUNTSPMS .set 0dbbaH +CLK_COUNTSPMSHIGH .set 00H +CLK_CALDIV .set 01H +CLK_CALMULT .set 04H +CLK_HTIMEDIV .set 01H +CLK_HTIMEMULT .set 04H +CLK_LTIMEDIV .set 01H +CLK_LTIMEMULT .set 036ee8H +CLK_HTIMEPERLTIME .set 0dbbaH +PRD$ .set 1 +PRD_SCALAR .set 04000H +RTDX$ .set 1 +RTDX_USERTDX .set 01H +RTDX_USERTEXECUTION .set 00H + .asg "JTAG", RTDX_RTDXTYPE +RTDX_BUFMEMSIZE .set 0408H +HST$ .set 1 +HST_RTDX .set 01H +HST_DSM .set 00H +HST_NONE .set 00H +HST_MAXFRAMESET .set 040H +HST_MAXFRAMEALLOWED .set 0ffH +HST_DSMMEMSIZE .set 0400H +HWI$ .set 1 +HWI_ZEROTAB .set 01H +HWI_GENERATE_RESET_VEC .set 00H +HWI_POLARITYMASK .set 00H +HWI_INTRMULTLOW .set 0310718afH +HWI_INTRMULTHIGH .set 082039a3H +HWI_CFGDISPATCHED .set 04018H +SWI$ .set 1 +TSK$ .set 1 +TSK_STACKSIZE .set 0400H +TSK_PRIORITY .set 01H +TSK_SWITCHFXN .set 00H +TSK_READYFXN .set 00H +TSK_NUM_HOOKS .set 00H +IDL$ .set 1 +IDL_USECLKIDLTIME .set 01H +IDL_CALIBRERROR .set 06H +ISRC$ .set 1 +LOG$ .set 1 +LOG_ENABLED .set 01H +PIP$ .set 0 +PIP_gNumEmbed .set 02H +PIP_gNextId .set 00H +PIP_OBJSIZE .set 064H +SEM$ .set 0 +MBX$ .set 0 +QUE$ .set 1 +LCK$ .set 1 +STS$ .set 1 +SYS$ .set 1 +SIO$ .set 0 +GIO$ .set 0 +DEV$ .set 0 +UDEV$ .set 0 +DIO$ .set 0 +DIO_STATIC .set 00H +DIO_NUMTSKBASE .set 00H +DIO_NUMSWIBASE .set 00H +DGN$ .set 0 +DHL$ .set 0 +DHL_gChannelsAvailable .set 00H +DPI$ .set 0 +MSGQ$ .set 0 +MSGQ_USEMSGQ .set 00H +HOOK$ .set 0 +HOOK_KNLID .set 00H +DEV$NUMDEVICES .set 0 diff --git a/lab5/RTDSP/.gconf/RTDSP/lab5/RTDSP/dsp_bios_cfg.s62 b/lab5/RTDSP/.gconf/RTDSP/lab5/RTDSP/dsp_bios_cfg.s62 new file mode 100644 index 0000000..d4b3af2 --- /dev/null +++ b/lab5/RTDSP/.gconf/RTDSP/lab5/RTDSP/dsp_bios_cfg.s62 @@ -0,0 +1,1091 @@ +;; Do *not* directly modify this file. It was +;; generated by the Configuration Tool; any +;; changes risk being overwritten. + +;; INPUT dsp_bios_.cdb + +;; CONFIGURATION/VERSION INFORMATION + .asg "Tue Feb 27 10:16:43 2018", VERS$DATE + +;; PROLOGUE + .include dsp_bios_cfg.h62 + .copy confbeg.s62 + +;; TYPE HEADERS + .include gbl.h62 + .include mem.h62 + .include obj.h62 + .include buf.h62 + .include pool.h62 + .include clk.h62 + .include prd.h62 + .include rtdx.h62 + .include hst.h62 + .include hwi.h62 + .include swi.h62 + .include tsk.h62 + .include idl.h62 + .include isrc.h62 + .include log.h62 + .include pip.h62 + .include sem.h62 + .include mbx.h62 + .include que.h62 + .include lck.h62 + .include sts.h62 + .include sys.h62 + .include sio.h62 + .include gio.h62 + .include dev.h62 + .include udev.h62 + .include dio.h62 + .include dgn.h62 + .include dhl.h62 + .include dpi.h62 + .include msgq.h62 + .include hook.h62 + +;; TYPE ATTRIBUTES +MEM$NUMOF .set 2 +MEM$SETOF .set 00H +OBJ$NUMOF .set 0 +OBJ$SETOF .set 00H +BUF$NUMOF .set 0 +BUF$SETOF .set 00H +CLK$NUMOF .set 1 +CLK$SETOF .set 00H +PRD$NUMOF .set 0 +PRD$SETOF .set 00H +RTDX$NUMOF .set 0 +RTDX$SETOF .set 00H +HST$NUMOF .set 2 +HST$SETOF .set 03H +HWI$NUMOF .set 16 +HWI$SETOF .set 0ffffH +SWI$NUMOF .set 1 +SWI$SETOF .set 00H +TSK$NUMOF .set 1 +TSK$SETOF .set 00H +IDL$NUMOF .set 3 +IDL$SETOF .set 00H +ISRC$NUMOF .set 0 +ISRC$SETOF .set 00H +LOG$NUMOF .set 1 +LOG$SETOF .set 00H +PIP$NUMOF .set 0 +PIP$SETOF .set 00H +SEM$NUMOF .set 0 +SEM$SETOF .set 00H +MBX$NUMOF .set 0 +MBX$SETOF .set 00H +QUE$NUMOF .set 0 +QUE$SETOF .set 00H +LCK$NUMOF .set 0 +LCK$SETOF .set 00H +STS$NUMOF .set 1 +STS$SETOF .set 00H +SIO$NUMOF .set 0 +SIO$SETOF .set 00H +DEV$NUMOF .set 0 +DEV$SETOF .set 00H +UDEV$NUMOF .set 0 +UDEV$SETOF .set 00H +DIO$NUMOF .set 0 +DIO$SETOF .set 00H +DGN$NUMOF .set 0 +DGN$SETOF .set 00H +DHL$NUMOF .set 0 +DHL$SETOF .set 00H +DPI$NUMOF .set 0 +DPI$SETOF .set 00H +HOOK$NUMOF .set 0 +HOOK$SETOF .set 00H + +;; module GBL (ROM, PROCID, CLKIN, FREQ, DSPTYPE, DSPSUBTYPE, CLKTYPE, BIGENDIAN, USERINIT, USERINITFXN, ENABLEINST, CACHE, L2CONFIGURE, L2MODE, L2PRIORITY, L2MARMASK, SUPPORTCSL, TRCMASKVALUE, CALLCSLCFGINIT, C641XL2PRIORITY, L2MARMASK1, L2MARMASK2, L2MARMASK3, L2MARMASK4, L2MARMASK5, L2CONFIGALLOC, L2ALLOC) + .global GBL$ ; == 1 + .global GBL_ROM ; dsp_bios_cfg.h62 + .global GBL_PROCID ; dsp_bios_cfg.h62 + .global GBL_CLKIN ; dsp_bios_cfg.h62 + .global GBL_FREQ ; dsp_bios_cfg.h62 + .global GBL_DSPTYPE ; dsp_bios_cfg.h62 + .global GBL_DSPSUBTYPE ; dsp_bios_cfg.h62 + .global GBL_CLKTYPE ; dsp_bios_cfg.h62 + .global GBL_BIGENDIAN ; dsp_bios_cfg.h62 + .global GBL_USERINIT ; dsp_bios_cfg.h62 + .global GBL_USERINITFXN ; dsp_bios_cfg.cmd + .global GBL_ENABLEINST ; dsp_bios_cfg.h62 + .global GBL_CACHE ; dsp_bios_cfg.h62 + .global GBL_L2CONFIGURE ; dsp_bios_cfg.h62 + .global GBL_L2MODE ; dsp_bios_cfg.h62 + .global GBL_L2PRIORITY ; dsp_bios_cfg.h62 + .global GBL_L2MARMASK ; dsp_bios_cfg.h62 + .global GBL_SUPPORTCSL ; dsp_bios_cfg.h62 + .global GBL_TRCMASKVALUE ; dsp_bios_cfg.h62 + .global GBL_CALLCSLCFGINIT ; dsp_bios_cfg.h62 + .global GBL_C641XL2PRIORITY ; dsp_bios_cfg.h62 + .global GBL_L2MARMASK1 ; dsp_bios_cfg.h62 + .global GBL_L2MARMASK2 ; dsp_bios_cfg.h62 + .global GBL_L2MARMASK3 ; dsp_bios_cfg.h62 + .global GBL_L2MARMASK4 ; dsp_bios_cfg.h62 + .global GBL_L2MARMASK5 ; dsp_bios_cfg.h62 + .global GBL_L2CONFIGALLOC ; dsp_bios_cfg.h62 + .global GBL_L2ALLOC ; dsp_bios_cfg.h62 + +;; module MEM (gNumHeap, SEGZERO, MALLOCSEG, USEMPC) + .global MEM$ ; == 1 + .global MEM_gNumHeap ; dsp_bios_cfg.h62 + .global MEM_SEGZERO ; dsp_bios_cfg.cmd + .global MEM_MALLOCSEG ; dsp_bios_cfg.cmd + .global MEM_USEMPC ; dsp_bios_cfg.h62 + +;; module OBJ () + .global OBJ$ ; == 0 + +;; module BUF (ENABLED) + .global BUF$ ; == 0 + .global BUF_ENABLED ; dsp_bios_cfg.h62 + +;; module POOL (USEPOOL) + .global POOL$ ; == 0 + .global POOL_USEPOOL ; dsp_bios_cfg.h62 + +;; module CLK (INTBIT, REGS, TIMERNUM, USETIMER, MICROSECS, TCR, TDDR, TDDRHIGH, PRD, PRDHIGH, COUNTSPMS, COUNTSPMSHIGH, TIMEFXN, HOOKFXN, CALDIV, CALMULT, HTIMEDIV, HTIMEMULT, LTIMEDIV, LTIMEMULT, HTIMEPERLTIME) + .global CLK$ ; == 1 + .global CLK_INTBIT ; dsp_bios_cfg.h62 + .global CLK_REGS ; dsp_bios_cfg.h62 + .global CLK_TIMERNUM ; dsp_bios_cfg.h62 + .global CLK_USETIMER ; dsp_bios_cfg.h62 + .global CLK_MICROSECS ; dsp_bios_cfg.h62 + .global CLK_TCR ; dsp_bios_cfg.h62 + .global CLK_TDDR ; dsp_bios_cfg.h62 + .global CLK_TDDRHIGH ; dsp_bios_cfg.h62 + .global CLK_PRD ; dsp_bios_cfg.h62 + .global CLK_PRDHIGH ; dsp_bios_cfg.h62 + .global CLK_COUNTSPMS ; dsp_bios_cfg.h62 + .global CLK_COUNTSPMSHIGH ; dsp_bios_cfg.h62 + .global CLK_TIMEFXN ; dsp_bios_cfg.cmd + .global CLK_HOOKFXN ; dsp_bios_cfg.cmd + .global CLK_CALDIV ; dsp_bios_cfg.h62 + .global CLK_CALMULT ; dsp_bios_cfg.h62 + .global CLK_HTIMEDIV ; dsp_bios_cfg.h62 + .global CLK_HTIMEMULT ; dsp_bios_cfg.h62 + .global CLK_LTIMEDIV ; dsp_bios_cfg.h62 + .global CLK_LTIMEMULT ; dsp_bios_cfg.h62 + .global CLK_HTIMEPERLTIME ; dsp_bios_cfg.h62 + +;; module PRD (SCALAR, THOOKFXN) + .global PRD$ ; == 1 + .global PRD_SCALAR ; dsp_bios_cfg.h62 + .global PRD_THOOKFXN ; dsp_bios_cfg.cmd + +;; module RTDX (USERTDX, USERTEXECUTION, RTDXTYPE, DATAMEMSEG, BUFMEMSIZE) + .global RTDX$ ; == 1 + .global RTDX_USERTDX ; dsp_bios_cfg.h62 + .global RTDX_USERTEXECUTION ; dsp_bios_cfg.h62 + .global RTDX_RTDXTYPE ; dsp_bios_cfg.h62 + .global RTDX_DATAMEMSEG ; dsp_bios_cfg.cmd + .global RTDX_BUFMEMSIZE ; dsp_bios_cfg.h62 + +;; module HST (RTDX, DSM, NONE, MAXFRAMESET, MAXFRAMEALLOWED, DSMBUFSEG, DSMMEMSIZE) + .global HST$ ; == 1 + .global HST_RTDX ; dsp_bios_cfg.h62 + .global HST_DSM ; dsp_bios_cfg.h62 + .global HST_NONE ; dsp_bios_cfg.h62 + .global HST_MAXFRAMESET ; dsp_bios_cfg.h62 + .global HST_MAXFRAMEALLOWED ; dsp_bios_cfg.h62 + .global HST_DSMBUFSEG ; dsp_bios_cfg.cmd + .global HST_DSMMEMSIZE ; dsp_bios_cfg.h62 + +;; module HWI (ZEROTAB, GENERATE_RESET_VEC, POLARITYMASK, INTRMULTLOW, INTRMULTHIGH, CFGDISPATCHED) + .global HWI$ ; == 1 + .global HWI_ZEROTAB ; dsp_bios_cfg.h62 + .global HWI_GENERATE_RESET_VEC ; dsp_bios_cfg.h62 + .global HWI_POLARITYMASK ; dsp_bios_cfg.h62 + .global HWI_INTRMULTLOW ; dsp_bios_cfg.h62 + .global HWI_INTRMULTHIGH ; dsp_bios_cfg.h62 + .global HWI_CFGDISPATCHED ; dsp_bios_cfg.h62 + +;; module SWI (EHOOKFXN, IHOOKFXN, EXECFXN, RUNFXN) + .global SWI$ ; == 1 + .global SWI_EHOOKFXN ; dsp_bios_cfg.cmd + .global SWI_IHOOKFXN ; dsp_bios_cfg.cmd + .global SWI_EXECFXN ; dsp_bios_cfg.cmd + .global SWI_RUNFXN ; dsp_bios_cfg.cmd + +;; module TSK (STACKSIZE, STACKSEG, PRIORITY, VCREATEFXN, VDELETEFXN, VEXITFXN, SWITCHFXN, READYFXN, NUM_HOOKS) + .global TSK$ ; == 1 + .global TSK_STACKSIZE ; dsp_bios_cfg.h62 + .global TSK_STACKSEG ; dsp_bios_cfg.cmd + .global TSK_PRIORITY ; dsp_bios_cfg.h62 + .global TSK_VCREATEFXN ; dsp_bios_cfg.cmd + .global TSK_VDELETEFXN ; dsp_bios_cfg.cmd + .global TSK_VEXITFXN ; dsp_bios_cfg.cmd + .global TSK_SWITCHFXN ; dsp_bios_cfg.h62 + .global TSK_READYFXN ; dsp_bios_cfg.h62 + .global TSK_NUM_HOOKS ; dsp_bios_cfg.h62 + +;; module IDL (USECLKIDLTIME, CALIBRFXN, CALIBRERROR) + .global IDL$ ; == 1 + .global IDL_USECLKIDLTIME ; dsp_bios_cfg.h62 + .global IDL_CALIBRFXN ; dsp_bios_cfg.cmd + .global IDL_CALIBRERROR ; dsp_bios_cfg.h62 + +;; module ISRC () + .global ISRC$ ; == 1 + +;; module LOG (ENABLED) + .global LOG$ ; == 1 + .global LOG_ENABLED ; dsp_bios_cfg.h62 + +;; module PIP (gNumEmbed, gNextId, OBJSIZE) + .global PIP$ ; == 0 + .global PIP_gNumEmbed ; dsp_bios_cfg.h62 + .global PIP_gNextId ; dsp_bios_cfg.h62 + .global PIP_OBJSIZE ; dsp_bios_cfg.h62 + +;; module SEM () + .global SEM$ ; == 0 + +;; module MBX () + .global MBX$ ; == 0 + +;; module QUE () + .global QUE$ ; == 1 + +;; module LCK () + .global LCK$ ; == 1 + +;; module STS () + .global STS$ ; == 1 + +;; module SYS (ABORTFXN, ERRORFXN, EXITFXN, PUTCFXN) + .global SYS$ ; == 1 + .global SYS_ABORTFXN ; dsp_bios_cfg.cmd + .global SYS_ERRORFXN ; dsp_bios_cfg.cmd + .global SYS_EXITFXN ; dsp_bios_cfg.cmd + .global SYS_PUTCFXN ; dsp_bios_cfg.cmd + +;; module SIO () + .global SIO$ ; == 0 + +;; module GIO (CREATEFXN, DELETEFXN, PENDFXN, POSTFXN) + .global GIO$ ; == 0 + .global GIO_CREATEFXN ; dsp_bios_cfg.cmd + .global GIO_DELETEFXN ; dsp_bios_cfg.cmd + .global GIO_PENDFXN ; dsp_bios_cfg.cmd + .global GIO_POSTFXN ; dsp_bios_cfg.cmd + +;; module DEV () + .global DEV$ ; == 0 + +;; module UDEV () + .global UDEV$ ; == 0 + +;; module DIO (STATIC, NUMTSKBASE, NUMSWIBASE) + .global DIO$ ; == 0 + .global DIO_STATIC ; dsp_bios_cfg.h62 + .global DIO_NUMTSKBASE ; dsp_bios_cfg.h62 + .global DIO_NUMSWIBASE ; dsp_bios_cfg.h62 + +;; module DGN () + .global DGN$ ; == 0 + +;; module DHL (gChannelsAvailable) + .global DHL$ ; == 0 + .global DHL_gChannelsAvailable ; dsp_bios_cfg.h62 + +;; module DPI () + .global DPI$ ; == 0 + +;; module MSGQ (USEMSGQ) + .global MSGQ$ ; == 0 + .global MSGQ_USEMSGQ ; dsp_bios_cfg.h62 + +;; module HOOK (KNLID) + .global HOOK$ ; == 0 + .global HOOK_KNLID ; dsp_bios_cfg.h62 + +;; MODULE CONFIGURATION + +;; ======== GBL_config ======== + .asg 00H, _ROM + .asg 00H, _PROCID + .asg 04e20H, _CLKIN + .asg 036ee8H, _FREQ + .asg 03eH, _DSPTYPE + .asg 01a39H, _DSPSUBTYPE + .asg 01770H, _CLKTYPE + .asg 00H, _BIGENDIAN + .asg 01H, _USERINIT + .asg _GBL_setPLLto225MHz, _USERINITFXN + .asg 01H, _ENABLEINST + .asg 00H, _CACHE + .asg 01H, _L2CONFIGURE + .asg 00H, _L2MODE + .asg 00H, _L2PRIORITY + .asg 01H, _L2MARMASK + .asg 00H, _SUPPORTCSL + .asg 0dbefH, _TRCMASKVALUE + .asg 01H, _CALLCSLCFGINIT + .asg 00H, _C641XL2PRIORITY + .asg 00H, _L2MARMASK1 + .asg 00H, _L2MARMASK2 + .asg 00H, _L2MARMASK3 + .asg 00H, _L2MARMASK4 + .asg 00H, _L2MARMASK5 + .asg 00H, _L2CONFIGALLOC + .asg 02226H, _L2ALLOC + GBL_config _ROM, _PROCID, _CLKIN, _FREQ, _DSPTYPE, _DSPSUBTYPE, _CLKTYPE, _BIGENDIAN, _USERINIT, _USERINITFXN, _ENABLEINST, _CACHE, _L2CONFIGURE, _L2MODE, _L2PRIORITY, _L2MARMASK, _SUPPORTCSL, _TRCMASKVALUE, _CALLCSLCFGINIT, _C641XL2PRIORITY, _L2MARMASK1, _L2MARMASK2, _L2MARMASK3, _L2MARMASK4, _L2MARMASK5, _L2CONFIGALLOC, _L2ALLOC + +;; ======== MEM_config ======== + .asg 01H, _gNumHeap + .asg IRAM, _SEGZERO + .asg IRAM, _MALLOCSEG + .asg 00H, _USEMPC + MEM_config _gNumHeap, _SEGZERO, _MALLOCSEG, _USEMPC + +;; ======== OBJ_config ======== + OBJ_config + +;; ======== BUF_config ======== + .asg 01H, _ENABLED + BUF_config _ENABLED + +;; ======== POOL_config ======== + .asg 00H, _USEPOOL + POOL_config _USEPOOL + +;; ======== CLK_config ======== + .asg 04000H, _INTBIT + .asg 01940000H, _REGS + .asg 00H, _TIMERNUM + .asg 01H, _USETIMER + .asg 03e8H, _MICROSECS + .asg 020H, _TCR + .asg 00H, _TDDR + .asg 00H, _TDDRHIGH + .asg 0dbbaH, _PRD + .asg 00H, _PRDHIGH + .asg 0dbbaH, _COUNTSPMS + .asg 00H, _COUNTSPMSHIGH + .asg CLK_F_getshtime, _TIMEFXN + .asg HWI_F_dispatch, _HOOKFXN + .asg 01H, _CALDIV + .asg 04H, _CALMULT + .asg 01H, _HTIMEDIV + .asg 04H, _HTIMEMULT + .asg 01H, _LTIMEDIV + .asg 036ee8H, _LTIMEMULT + .asg 0dbbaH, _HTIMEPERLTIME + CLK_config _INTBIT, _REGS, _TIMERNUM, _USETIMER, _MICROSECS, _TCR, _TDDR, _TDDRHIGH, _PRD, _PRDHIGH, _COUNTSPMS, _COUNTSPMSHIGH, _TIMEFXN, _HOOKFXN, _CALDIV, _CALMULT, _HTIMEDIV, _HTIMEMULT, _LTIMEDIV, _LTIMEMULT, _HTIMEPERLTIME + +;; ======== PRD_config ======== + .asg 04000H, _SCALAR + .asg _KNL_tick, _THOOKFXN + PRD_config _SCALAR, _THOOKFXN + +;; ======== RTDX_config ======== + .asg 01H, _USERTDX + .asg 00H, _USERTEXECUTION + .asg "JTAG", _RTDXTYPE + .asg IRAM, _DATAMEMSEG + .asg 0408H, _BUFMEMSIZE + RTDX_config _USERTDX, _USERTEXECUTION, _RTDXTYPE, _DATAMEMSEG, _BUFMEMSIZE + +;; ======== HST_config ======== + .asg 01H, _RTDX + .asg 00H, _DSM + .asg 00H, _NONE + .asg 040H, _MAXFRAMESET + .asg 0ffH, _MAXFRAMEALLOWED + .asg IRAM, _DSMBUFSEG + .asg 0400H, _DSMMEMSIZE + HST_config _RTDX, _DSM, _NONE, _MAXFRAMESET, _MAXFRAMEALLOWED, _DSMBUFSEG, _DSMMEMSIZE + +;; ======== HWI_config ======== + .asg 01H, _ZEROTAB + .asg 00H, _GENERATE_RESET_VEC + .asg 00H, _POLARITYMASK + .asg 0310718afH, _INTRMULTLOW + .asg 082039a3H, _INTRMULTHIGH + .asg 04018H, _CFGDISPATCHED + HWI_config _ZEROTAB, _GENERATE_RESET_VEC, _POLARITYMASK, _INTRMULTLOW, _INTRMULTHIGH, _CFGDISPATCHED + +;; ======== SWI_config ======== + .asg GBL_NULL, _EHOOKFXN + .asg GBL_NULL, _IHOOKFXN + .asg SWI_F_exec, _EXECFXN + .asg SWI_F_run, _RUNFXN + SWI_config _EHOOKFXN, _IHOOKFXN, _EXECFXN, _RUNFXN + +;; ======== TSK_config ======== + .asg 0400H, _STACKSIZE + .asg MEM_NULL, _STACKSEG + .asg 01H, _PRIORITY + .asg _FXN_F_nop, _VCREATEFXN + .asg _FXN_F_nop, _VDELETEFXN + .asg _FXN_F_nop, _VEXITFXN + .asg 00H, _SWITCHFXN + .asg 00H, _READYFXN + .asg 00H, _NUM_HOOKS + TSK_config _STACKSIZE, _STACKSEG, _PRIORITY, _VCREATEFXN, _VDELETEFXN, _VEXITFXN, _SWITCHFXN, _READYFXN, _NUM_HOOKS + +;; ======== IDL_config ======== + .asg 01H, _USECLKIDLTIME + .asg IDL_F_stub, _CALIBRFXN + .asg 06H, _CALIBRERROR + IDL_config _USECLKIDLTIME, _CALIBRFXN, _CALIBRERROR + +;; ======== ISRC_config ======== + ISRC_config + +;; ======== LOG_config ======== + .asg 01H, _ENABLED + LOG_config _ENABLED + +;; ======== PIP_config ======== + .asg 02H, _gNumEmbed + .asg 00H, _gNextId + .asg 064H, _OBJSIZE + PIP_config _gNumEmbed, _gNextId, _OBJSIZE + +;; ======== SEM_config ======== + SEM_config + +;; ======== MBX_config ======== + MBX_config + +;; ======== QUE_config ======== + QUE_config + +;; ======== LCK_config ======== + LCK_config + +;; ======== STS_config ======== + STS_config + +;; ======== SYS_config ======== + .asg _UTL_doAbort, _ABORTFXN + .asg _UTL_doError, _ERRORFXN + .asg _UTL_halt, _EXITFXN + .asg _UTL_doPutc, _PUTCFXN + SYS_config _ABORTFXN, _ERRORFXN, _EXITFXN, _PUTCFXN + +;; ======== SIO_config ======== + SIO_config + +;; ======== GIO_config ======== + .asg _FXN_F_nop, _CREATEFXN + .asg _FXN_F_nop, _DELETEFXN + .asg _FXN_F_nop, _PENDFXN + .asg _FXN_F_nop, _POSTFXN + GIO_config _CREATEFXN, _DELETEFXN, _PENDFXN, _POSTFXN + +;; ======== DEV_config ======== + DEV_config + +;; ======== UDEV_config ======== + UDEV_config + +;; ======== DIO_config ======== + .asg 00H, _STATIC + .asg 00H, _NUMTSKBASE + .asg 00H, _NUMSWIBASE + DIO_config _STATIC, _NUMTSKBASE, _NUMSWIBASE + +;; ======== DGN_config ======== + DGN_config + +;; ======== DHL_config ======== + .asg 00H, _gChannelsAvailable + DHL_config _gChannelsAvailable + +;; ======== DPI_config ======== + DPI_config + +;; ======== MSGQ_config ======== + .asg 00H, _USEMSGQ + MSGQ_config _USEMSGQ + +;; ======== HOOK_config ======== + .asg 00H, _KNLID + HOOK_config _KNLID + +;; ======== MEM_Obj SDRAM ======== +;; This object defines 8MB for the DSP's off-chip memory +;; +;; MEM_Obj SDRAM (len, iAllocHeap, iSegZero, iHeapId) + .global SDRAM + .asg 0800000H, _len + .asg 00H, _iAllocHeap + .asg IRAM, _iSegZero + .asg segment_name, _iHeapId + MEM_Obj 1, SDRAM, 0, _len, _iAllocHeap, _iSegZero, _iHeapId + +;; ======== MEM_Obj IRAM ======== +;; Internal L2 memory +;; +;; MEM_Obj IRAM (len, iAllocHeap, iSegZero, iHeapId) + .global IRAM + .asg 040000H, _len + .asg 01H, _iAllocHeap + .asg IRAM, _iSegZero + .asg segment_name, _iHeapId + MEM_Obj 1, IRAM, 0, _len, _iAllocHeap, _iSegZero, _iHeapId + +;; ======== CLK_Obj PRD_clock ======== +;; This clock function calls PRD_tick from within the on-chip timer ISR +;; +;; CLK_Obj PRD_clock (function) + .global PRD_clock + .asg PRD_F_tick, _function + CLK_Obj 1, PRD_clock, 0, _function + +;; ======== HST_Obj RTA_fromHost ======== +;; Used to access LOG and STS data +;; +;; HST_Obj RTA_fromHost (mode, buf, framesize, numframes, stsflg, notify, arg0, arg1, lnk, bufFrameAlign) + .global RTA_fromHost + .asg "input", _mode + .asg "<NULL>", _buf + .asg 04H, _framesize + .asg 01H, _numframes + .asg 00H, _stsflg + .asg _FXN_F_nop, _notify + .asg 00H, _arg0 + .asg 00H, _arg1 + .asg "RTDX", _lnk + .asg 04H, _bufFrameAlign + HST_Obj 1, RTA_fromHost, 1, _mode, _buf, _framesize, _numframes, _stsflg, _notify, _arg0, _arg1, _lnk, _bufFrameAlign + +;; ======== HST_Obj RTA_toHost ======== +;; Used to access LOG and STS data +;; +;; HST_Obj RTA_toHost (mode, buf, framesize, numframes, stsflg, notify, arg0, arg1, lnk, bufFrameAlign) + .global RTA_toHost + .asg "output", _mode + .asg "<NULL>", _buf + .asg 040H, _framesize + .asg 01H, _numframes + .asg 00H, _stsflg + .asg _FXN_F_nop, _notify + .asg 00H, _arg0 + .asg 00H, _arg1 + .asg "RTDX", _lnk + .asg 04H, _bufFrameAlign + HST_Obj 1, RTA_toHost, 0, _mode, _buf, _framesize, _numframes, _stsflg, _notify, _arg0, _arg1, _lnk, _bufFrameAlign + +;; ======== HWI_Obj HWI_RESET ======== +;; defines function for the RESET ISR +;; +;; HWI_Obj HWI_RESET (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack) + .global HWI_RESET + .asg _c_int00, _function + .asg "Nothing", _monitor + .asg 00H, _addr + .asg "signed", _dataType + .asg "STS_add(*addr)", _operation + .asg "USER", _client + .asg 00H, _iUseDispatcher + .asg 00H, _iArg + .asg 01H, _IntrMask + .asg 01H, _iCCBitMask + .asg 00H, _iLoadTrack + HWI_Obj 1, HWI_RESET, 0, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack + +;; ======== HWI_Obj HWI_NMI ======== +;; defines function for the NMI ISR +;; +;; HWI_Obj HWI_NMI (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack) + .global HWI_NMI + .asg HWI_unused, _function + .asg "Nothing", _monitor + .asg 00H, _addr + .asg "signed", _dataType + .asg "STS_add(*addr)", _operation + .asg "USER", _client + .asg 00H, _iUseDispatcher + .asg 00H, _iArg + .asg 02H, _IntrMask + .asg 01H, _iCCBitMask + .asg 00H, _iLoadTrack + HWI_Obj 1, HWI_NMI, 1, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack + +;; ======== HWI_Obj HWI_RESERVED0 ======== +;; RESERVED for RTDX +;; +;; HWI_Obj HWI_RESERVED0 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack) + .global HWI_RESERVED0 + .asg RESERVED, _function + .asg "Nothing", _monitor + .asg 00H, _addr + .asg "signed", _dataType + .asg "STS_add(*addr)", _operation + .asg "RTDX", _client + .asg 00H, _iUseDispatcher + .asg 00H, _iArg + .asg 04H, _IntrMask + .asg 01H, _iCCBitMask + .asg 00H, _iLoadTrack + HWI_Obj 1, HWI_RESERVED0, 2, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack + +;; ======== HWI_Obj HWI_RESERVED1 ======== +;; RESERVED for RTDX +;; +;; HWI_Obj HWI_RESERVED1 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack) + .global HWI_RESERVED1 + .asg _RTDX_Poll, _function + .asg "Nothing", _monitor + .asg 00H, _addr + .asg "signed", _dataType + .asg "STS_add(*addr)", _operation + .asg "RTDX", _client + .asg 01H, _iUseDispatcher + .asg 00H, _iArg + .asg 08H, _IntrMask + .asg 01H, _iCCBitMask + .asg 00H, _iLoadTrack + HWI_Obj 1, HWI_RESERVED1, 3, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack + +;; ======== HWI_Obj HWI_INT4 ======== +;; defines the INT4 Interrupt +;; +;; HWI_Obj HWI_INT4 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack) + .global HWI_INT4 + .asg _ISR_AIC, _function + .asg "Nothing", _monitor + .asg 00H, _addr + .asg "signed", _dataType + .asg "STS_add(*addr)", _operation + .asg "USER", _client + .asg 01H, _iUseDispatcher + .asg 00H, _iArg + .asg 010H, _IntrMask + .asg 01H, _iCCBitMask + .asg 00H, _iLoadTrack + HWI_Obj 1, HWI_INT4, 4, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack + +;; ======== HWI_Obj HWI_INT5 ======== +;; defines the INT5 Interrupt +;; +;; HWI_Obj HWI_INT5 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack) + .global HWI_INT5 + .asg HWI_unused, _function + .asg "Nothing", _monitor + .asg 00H, _addr + .asg "signed", _dataType + .asg "STS_add(*addr)", _operation + .asg "USER", _client + .asg 00H, _iUseDispatcher + .asg 00H, _iArg + .asg 020H, _IntrMask + .asg 01H, _iCCBitMask + .asg 00H, _iLoadTrack + HWI_Obj 1, HWI_INT5, 5, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack + +;; ======== HWI_Obj HWI_INT6 ======== +;; defines the INT6 Interrupt +;; +;; HWI_Obj HWI_INT6 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack) + .global HWI_INT6 + .asg HWI_unused, _function + .asg "Nothing", _monitor + .asg 00H, _addr + .asg "signed", _dataType + .asg "STS_add(*addr)", _operation + .asg "USER", _client + .asg 00H, _iUseDispatcher + .asg 00H, _iArg + .asg 040H, _IntrMask + .asg 01H, _iCCBitMask + .asg 00H, _iLoadTrack + HWI_Obj 1, HWI_INT6, 6, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack + +;; ======== HWI_Obj HWI_INT7 ======== +;; defines the INT7 Interrupt +;; +;; HWI_Obj HWI_INT7 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack) + .global HWI_INT7 + .asg HWI_unused, _function + .asg "Nothing", _monitor + .asg 00H, _addr + .asg "signed", _dataType + .asg "STS_add(*addr)", _operation + .asg "USER", _client + .asg 00H, _iUseDispatcher + .asg 00H, _iArg + .asg 080H, _IntrMask + .asg 01H, _iCCBitMask + .asg 00H, _iLoadTrack + HWI_Obj 1, HWI_INT7, 7, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack + +;; ======== HWI_Obj HWI_INT8 ======== +;; defines the INT8 Interrupt +;; +;; HWI_Obj HWI_INT8 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack) + .global HWI_INT8 + .asg HWI_unused, _function + .asg "Nothing", _monitor + .asg 00H, _addr + .asg "signed", _dataType + .asg "STS_add(*addr)", _operation + .asg "USER", _client + .asg 00H, _iUseDispatcher + .asg 00H, _iArg + .asg 0100H, _IntrMask + .asg 01H, _iCCBitMask + .asg 00H, _iLoadTrack + HWI_Obj 1, HWI_INT8, 8, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack + +;; ======== HWI_Obj HWI_INT9 ======== +;; defines the INT9 Interrupt +;; +;; HWI_Obj HWI_INT9 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack) + .global HWI_INT9 + .asg HWI_unused, _function + .asg "Nothing", _monitor + .asg 00H, _addr + .asg "signed", _dataType + .asg "STS_add(*addr)", _operation + .asg "USER", _client + .asg 00H, _iUseDispatcher + .asg 00H, _iArg + .asg 0200H, _IntrMask + .asg 01H, _iCCBitMask + .asg 00H, _iLoadTrack + HWI_Obj 1, HWI_INT9, 9, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack + +;; ======== HWI_Obj HWI_INT10 ======== +;; defines the INT10 Interrupt +;; +;; HWI_Obj HWI_INT10 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack) + .global HWI_INT10 + .asg HWI_unused, _function + .asg "Nothing", _monitor + .asg 00H, _addr + .asg "signed", _dataType + .asg "STS_add(*addr)", _operation + .asg "USER", _client + .asg 00H, _iUseDispatcher + .asg 00H, _iArg + .asg 0400H, _IntrMask + .asg 01H, _iCCBitMask + .asg 00H, _iLoadTrack + HWI_Obj 1, HWI_INT10, 10, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack + +;; ======== HWI_Obj HWI_INT11 ======== +;; defines the INT11 Interrupt +;; +;; HWI_Obj HWI_INT11 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack) + .global HWI_INT11 + .asg HWI_unused, _function + .asg "Nothing", _monitor + .asg 00H, _addr + .asg "signed", _dataType + .asg "STS_add(*addr)", _operation + .asg "USER", _client + .asg 00H, _iUseDispatcher + .asg 00H, _iArg + .asg 0800H, _IntrMask + .asg 01H, _iCCBitMask + .asg 00H, _iLoadTrack + HWI_Obj 1, HWI_INT11, 11, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack + +;; ======== HWI_Obj HWI_INT12 ======== +;; defines the INT12 Interrupt +;; +;; HWI_Obj HWI_INT12 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack) + .global HWI_INT12 + .asg HWI_unused, _function + .asg "Nothing", _monitor + .asg 00H, _addr + .asg "signed", _dataType + .asg "STS_add(*addr)", _operation + .asg "USER", _client + .asg 00H, _iUseDispatcher + .asg 00H, _iArg + .asg 01000H, _IntrMask + .asg 01H, _iCCBitMask + .asg 00H, _iLoadTrack + HWI_Obj 1, HWI_INT12, 12, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack + +;; ======== HWI_Obj HWI_INT13 ======== +;; defines the INT13 Interrupt +;; +;; HWI_Obj HWI_INT13 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack) + .global HWI_INT13 + .asg HWI_unused, _function + .asg "Nothing", _monitor + .asg 00H, _addr + .asg "signed", _dataType + .asg "STS_add(*addr)", _operation + .asg "USER", _client + .asg 00H, _iUseDispatcher + .asg 00H, _iArg + .asg 02000H, _IntrMask + .asg 01H, _iCCBitMask + .asg 00H, _iLoadTrack + HWI_Obj 1, HWI_INT13, 13, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack + +;; ======== HWI_Obj HWI_INT14 ======== +;; defines the INT14 Interrupt +;; +;; HWI_Obj HWI_INT14 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack) + .global HWI_INT14 + .asg CLK_F_isr, _function + .asg "Nothing", _monitor + .asg 00H, _addr + .asg "signed", _dataType + .asg "STS_add(*addr)", _operation + .asg "CLK", _client + .asg 01H, _iUseDispatcher + .asg CLK_A_TABBEG, _iArg + .asg 04000H, _IntrMask + .asg 01H, _iCCBitMask + .asg 00H, _iLoadTrack + HWI_Obj 1, HWI_INT14, 14, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack + +;; ======== HWI_Obj HWI_INT15 ======== +;; defines the INT15 Interrupt +;; +;; HWI_Obj HWI_INT15 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask, iLoadTrack) + .global HWI_INT15 + .asg HWI_unused, _function + .asg "Nothing", _monitor + .asg 00H, _addr + .asg "signed", _dataType + .asg "STS_add(*addr)", _operation + .asg "USER", _client + .asg 00H, _iUseDispatcher + .asg 00H, _iArg + .asg 08000H, _IntrMask + .asg 01H, _iCCBitMask + .asg 00H, _iLoadTrack + HWI_Obj 1, HWI_INT15, 15, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask, _iLoadTrack + +;; ======== SWI_Obj KNL_swi ======== +;; This Software Interrupt calls the TSK scheduler +;; +;; SWI_Obj KNL_swi (function, pri, mailbox, arg0, arg1, dorta, Order, filter, maxformat, sumformat, avgformat, filtmaxmult, filtsummult, unittype) + .global KNL_swi + .asg _KNL_run, _function + .asg 00H, _pri + .asg 00H, _mailbox + .asg 00H, _arg0 + .asg 00H, _arg1 + .asg 01H, _dorta + .asg 00H, _Order + .asg 02H, _filter + .asg "%g inst", _maxformat + .asg "%g inst", _sumformat + .asg "%.2f inst", _avgformat + .asg 01H, _filtmaxmult + .asg 01H, _filtsummult + .asg 00H, _unittype + SWI_Obj 1, KNL_swi, 0, _function, _pri, _mailbox, _arg0, _arg1, _dorta, _Order, _filter, _maxformat, _sumformat, _avgformat, _filtmaxmult, _filtsummult, _unittype + +;; ======== TSK_Obj TSK_idle ======== +;; This is the idle task; it only runs when no other task is ready +;; +;; TSK_Obj TSK_idle (iFXN, iARG0, iARG1, iARG2, iARG3, iARG4, iARG5, iARG6, iARG7, iAUTOSTK, iMANSTK, iSTKSZ, iSTKSEG, iPRI, iENV, iEXITFLAG, iUSETSKNAME, iSTATREG, Order, filter, maxformat, sumformat, avgformat, filtmaxmult, filtsummult, unittype) + .global TSK_idle + .asg IDL_F_loop, _iFXN + .asg 00H, _iARG0 + .asg 00H, _iARG1 + .asg 00H, _iARG2 + .asg 00H, _iARG3 + .asg 00H, _iARG4 + .asg 00H, _iARG5 + .asg 00H, _iARG6 + .asg 00H, _iARG7 + .asg 01H, _iAUTOSTK + .asg null, _iMANSTK + .asg 0400H, _iSTKSZ + .asg IRAM, _iSTKSEG + .asg 00H, _iPRI + .asg 00H, _iENV + .asg 01H, _iEXITFLAG + .asg 00H, _iUSETSKNAME + .asg 00H, _iSTATREG + .asg 00H, _Order + .asg 02H, _filter + .asg "%g inst", _maxformat + .asg "%g inst", _sumformat + .asg "%.2f inst", _avgformat + .asg 01H, _filtmaxmult + .asg 01H, _filtsummult + .asg 00H, _unittype + TSK_Obj 1, TSK_idle, 0, _iFXN, _iARG0, _iARG1, _iARG2, _iARG3, _iARG4, _iARG5, _iARG6, _iARG7, _iAUTOSTK, _iMANSTK, _iSTKSZ, _iSTKSEG, _iPRI, _iENV, _iEXITFLAG, _iUSETSKNAME, _iSTATREG, _Order, _filter, _maxformat, _sumformat, _avgformat, _filtmaxmult, _filtsummult, _unittype + +;; ======== IDL_Obj IDL_cpuLoad ======== +;; This object is required by the system to acquire CPU load data +;; +;; IDL_Obj IDL_cpuLoad (function, calibration) + .global IDL_cpuLoad + .asg IDL_F_busy, _function + .asg 01H, _calibration + IDL_Obj 1, IDL_cpuLoad, 0, _function, _calibration + +;; ======== IDL_Obj LNK_dataPump ======== +;; This object cannot be deleted +;; +;; IDL_Obj LNK_dataPump (function, calibration) + .global LNK_dataPump + .asg LNK_F_dataPump, _function + .asg 01H, _calibration + IDL_Obj 1, LNK_dataPump, 0, _function, _calibration + +;; ======== IDL_Obj RTA_dispatcher ======== +;; This object cannot be deleted +;; +;; IDL_Obj RTA_dispatcher (function, calibration) + .global RTA_dispatcher + .asg RTA_F_dispatch, _function + .asg 01H, _calibration + IDL_Obj 1, RTA_dispatcher, 0, _function, _calibration + +;; ======== LOG_Obj LOG_system ======== +;; This object is required by the system to accumulate execution trace information +;; +;; LOG_Obj LOG_system (bufseg, buflen, logtype, iType, iFormat) + .global LOG_system + .asg IRAM, _bufseg + .asg 040H, _buflen + .asg "circular", _logtype + .asg "system", _iType + .asg "0x%x, 0x%x, 0x%x", _iFormat + LOG_Obj 1, LOG_system, 0, _bufseg, _buflen, _logtype, _iType, _iFormat + +;; ======== STS_Obj IDL_busyObj ======== +;; This object is required by the system to accumulate CPU load statistics +;; +;; STS_Obj IDL_busyObj (prev, filter, maxformat, sumformat, avgformat, op, uType, iA, iB, iC, prevlow) + .global IDL_busyObj + .asg 00H, _prev + .asg 01H, _filter + .asg "%g", _maxformat + .asg "%g", _sumformat + .asg "%.2f", _avgformat + .asg 00H, _op + .asg 02H, _uType + .asg 01H, _iA + .asg 00H, _iB + .asg 01H, _iC + .asg 00H, _prevlow + STS_Obj 1, IDL_busyObj, 0, _prev, _filter, _maxformat, _sumformat, _avgformat, _op, _uType, _iA, _iB, _iC, _prevlow + +;; MODULE INITIALIZATION + .sect ".sysinit" + .global BIOS_init, _BIOS_init +BIOS_init: +_BIOS_init: + GBL_preamble + GBL_init + SEM_init + MEM_init + OBJ_init + BUF_init + POOL_init + CLK_init + PRD_init + RTDX_init + IDL_init + LCK_init + LOG_init + MBX_init + PIP_init + QUE_init + STS_init + SYS_init + HWI_init + HST_init + DEV_init + UDEV_init + DIO_init + DGN_init + DHL_init + DPI_init + SIO_init + GIO_init + MSGQ_init + SWI_init + HOOK_init + TSK_init + ISRC_init + GBL_postamble + +;; MODULE STARTUP + .sect ".sysinit" + .global BIOS_start, _BIOS_start +BIOS_start: +_BIOS_start: + GBL_preamble + GBL_startup + SEM_startup + MEM_startup + OBJ_startup + BUF_startup + POOL_startup + CLK_startup + PRD_startup + RTDX_startup + IDL_startup + LCK_startup + LOG_startup + MBX_startup + PIP_startup + QUE_startup + STS_startup + SYS_startup + HWI_startup + HST_startup + DEV_startup + UDEV_startup + DIO_startup + DGN_startup + DHL_startup + DPI_startup + SIO_startup + GIO_startup + MSGQ_startup + SWI_startup + HOOK_startup + TSK_startup + ISRC_startup + GBL_postamble + +;; EPILOGUE + GBL_end + MEM_end + OBJ_end + BUF_end + POOL_end + CLK_end + PRD_end + RTDX_end + HST_end + HWI_end + SWI_end + TSK_end + IDL_end + ISRC_end + LOG_end + PIP_end + SEM_end + MBX_end + QUE_end + LCK_end + STS_end + SYS_end + SIO_end + GIO_end + DEV_end + UDEV_end + DIO_end + DGN_end + DHL_end + DPI_end + MSGQ_end + HOOK_end + + .copy confend.s62 diff --git a/lab5/RTDSP/.gconf/RTDSP/lab5/RTDSP/dsp_bios_cfg_c.c b/lab5/RTDSP/.gconf/RTDSP/lab5/RTDSP/dsp_bios_cfg_c.c new file mode 100644 index 0000000..f13e3eb --- /dev/null +++ b/lab5/RTDSP/.gconf/RTDSP/lab5/RTDSP/dsp_bios_cfg_c.c @@ -0,0 +1,11 @@ +/* Do *not* directly modify this file. It was */ +/* generated by the Configuration Tool; any */ +/* changes risk being overwritten. */ + +/* INPUT dsp_bios_.cdb */ + +/* Include Header File */ +#include "dsp_bios_cfg.h" + +/* Config Structures */ +/* Handles */ diff --git a/lab5/RTDSP/dsp_bios_.tcf b/lab5/RTDSP/dsp_bios_.tcf index 9b811d2..ccf9931 100644 --- a/lab5/RTDSP/dsp_bios_.tcf +++ b/lab5/RTDSP/dsp_bios_.tcf @@ -10,6 +10,10 @@ bios.HWI.instance("HWI_INT4").fxn = prog.extern("ISR_AIC"); bios.HWI.instance("HWI_INT4").useDispatcher = 1;
bios.HWI.instance("HWI_INT4").interruptSource = prog.get("MCSP_1_Transmit");
bios.HWI.instance("HWI_INT4").interruptSource = prog.get("MCSP_1_Receive");
+bios.MEM.NOMEMORYHEAPS = 0;
+bios.MEM.instance("IRAM").createHeap = 1;
+bios.MEM.MALLOCSEG = prog.get("IRAM");
+bios.MEM.BIOSOBJSEG = prog.get("IRAM");
// !GRAPHICAL_CONFIG_TOOL_SCRIPT_INSERT_POINT!
prog.gen();
|