diff options
Diffstat (limited to 'lab1/RTDSP')
26 files changed, 2085 insertions, 0 deletions
diff --git a/lab1/RTDSP/.ccsproject b/lab1/RTDSP/.ccsproject new file mode 100644 index 0000000..30729ac --- /dev/null +++ b/lab1/RTDSP/.ccsproject @@ -0,0 +1,11 @@ +<?xml version="1.0" encoding="UTF-8"?> +<?ccsproject version="1.0"?> + +<projectOptions> +<deviceVariant value="com.ti.ccstudio.deviceModel.C6000.GenericC67xxDevice"/> +<deviceEndianness value="little"/> +<codegenToolVersion value="6.1.15"/> +<isElfFormat value="false"/> +<rts value="rts6700.lib"/> +<defaultAssemblyOnly value="false"/> +</projectOptions> diff --git a/lab1/RTDSP/.cdtbuild b/lab1/RTDSP/.cdtbuild new file mode 100644 index 0000000..c04368f --- /dev/null +++ b/lab1/RTDSP/.cdtbuild @@ -0,0 +1,86 @@ +<?xml version="1.0" encoding="UTF-8"?> +<?fileVersion 3.1.0?> + +<ManagedProjectBuildInfo> +<project id="RTDSP.com.ti.ccstudio.buildDefinitions.C6000.ProjectType.73363983" name="C6000" projectType="com.ti.ccstudio.buildDefinitions.C6000.ProjectType"> +<configuration artifactExtension="out" artifactName="RTDSP" description="" id="com.ti.ccstudio.buildDefinitions.C6000.Debug.1304237037" name="Debug" parent="com.ti.ccstudio.buildDefinitions.C6000.Debug"> +<toolChain id="com.ti.ccstudio.buildDefinitions.C6000_6.1.exe.DebugToolchain.1245709414" name="TI Code Generation Tools" superClass="com.ti.ccstudio.buildDefinitions.C6000_6.1.exe.DebugToolchain" targetTool="com.ti.ccstudio.buildDefinitions.C6000_6.1.exe.linkerDebug.742109696"> +<option id="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION.718590093" superClass="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION" value="6.1.15" valueType="string"/> +<option id="com.ti.ccstudio.buildDefinitions.core.OPT_TAGS.1998961353" superClass="com.ti.ccstudio.buildDefinitions.core.OPT_TAGS" valueType="stringList"> +<listOptionValue builtIn="false" value="DEVICE_CONFIGURATION_ID=com.ti.ccstudio.deviceModel.C6000.GenericC67xxDevice"/> +<listOptionValue builtIn="false" value="DEVICE_ENDIANNESS=little"/> +<listOptionValue builtIn="false" value="IS_ELF=false"/> +<listOptionValue builtIn="false" value="LINKER_COMMAND_FILE=volume.cmd"/> +<listOptionValue builtIn="false" value="RUNTIME_SUPPORT_LIBRARY=rts6700.lib"/> +<listOptionValue builtIn="false" value="IS_ASSEMBLY_ONLY=false"/> +<listOptionValue builtIn="false" value="CCS_MBS_VERSION=4.1.3"/> +<listOptionValue builtIn="false" value="PROJECT_KIND=com.ti.ccstudio.managedbuild.core.ProjectKind_Executable"/> +</option> +<tool id="com.ti.ccstudio.buildDefinitions.C6000_6.1.exe.compilerDebug.1474782757" name="C6000 Compiler" superClass="com.ti.ccstudio.buildDefinitions.C6000_6.1.exe.compilerDebug"> +<option id="com.ti.ccstudio.buildDefinitions.C6000_6.1.compilerID.DIAG_WARNING.1752680311" superClass="com.ti.ccstudio.buildDefinitions.C6000_6.1.compilerID.DIAG_WARNING" valueType="stringList"> +<listOptionValue builtIn="false" value="225"/> +</option> +<option id="com.ti.ccstudio.buildDefinitions.C6000_6.1.compilerID.SILICON_VERSION.1000678894" superClass="com.ti.ccstudio.buildDefinitions.C6000_6.1.compilerID.SILICON_VERSION" value="6700" valueType="string"/> +<option id="com.ti.ccstudio.buildDefinitions.C6000_6.1.compilerID.INCLUDE_PATH.1149819750" superClass="com.ti.ccstudio.buildDefinitions.C6000_6.1.compilerID.INCLUDE_PATH" valueType="includePath"> +<listOptionValue builtIn="false" value=""${CG_TOOL_ROOT}/include""/> +</option> +</tool> +<tool id="com.ti.ccstudio.buildDefinitions.C6000_6.1.exe.linkerDebug.742109696" name="C6000 Linker" superClass="com.ti.ccstudio.buildDefinitions.C6000_6.1.exe.linkerDebug"> +<option id="com.ti.ccstudio.buildDefinitions.C6000_6.1.linkerID.OUTPUT_FILE.1556238194" superClass="com.ti.ccstudio.buildDefinitions.C6000_6.1.linkerID.OUTPUT_FILE" value=""RTDSP.out"" valueType="string"/> +<option id="com.ti.ccstudio.buildDefinitions.C6000_6.1.linkerID.MAP_FILE.1143480908" superClass="com.ti.ccstudio.buildDefinitions.C6000_6.1.linkerID.MAP_FILE" value=""RTDSP.map"" valueType="string"/> +<option id="com.ti.ccstudio.buildDefinitions.C6000_6.1.linkerID.SEARCH_PATH.903192553" superClass="com.ti.ccstudio.buildDefinitions.C6000_6.1.linkerID.SEARCH_PATH" valueType="stringList"> +<listOptionValue builtIn="false" value=""${CG_TOOL_ROOT}/lib""/> +<listOptionValue builtIn="false" value=""${CG_TOOL_ROOT}/include""/> +</option> +<option id="com.ti.ccstudio.buildDefinitions.C6000_6.1.linkerID.LIBRARY.2105280903" superClass="com.ti.ccstudio.buildDefinitions.C6000_6.1.linkerID.LIBRARY" valueType="libs"> +<listOptionValue builtIn="false" value=""rts6700.lib""/> +</option> +<option id="com.ti.ccstudio.buildDefinitions.C6000_6.1.linkerID.STACK_SIZE.1129921415" superClass="com.ti.ccstudio.buildDefinitions.C6000_6.1.linkerID.STACK_SIZE" value="0x400" valueType="string"/> +<option id="com.ti.ccstudio.buildDefinitions.C6000_6.1.linkerID.HEAP_SIZE.775905476" superClass="com.ti.ccstudio.buildDefinitions.C6000_6.1.linkerID.HEAP_SIZE" value="0x400" valueType="string"/> +<option id="com.ti.ccstudio.buildDefinitions.C6000_6.1.linkerID.generatedLinkerCommandFiles.1905991410" superClass="com.ti.ccstudio.buildDefinitions.C6000_6.1.linkerID.generatedLinkerCommandFiles" valueType="libs"> +<listOptionValue builtIn="false" value=""$(GEN_CMDS_QUOTED)""/> +</option> +</tool> +<macros expandEnvironmentMacros="true"/> +</toolChain> +</configuration> +<configuration artifactExtension="out" artifactName="RTDSP" description="" id="com.ti.ccstudio.buildDefinitions.C6000.Release.1875685790" name="Release" parent="com.ti.ccstudio.buildDefinitions.C6000.Release"> +<toolChain id="com.ti.ccstudio.buildDefinitions.C6000_6.1.exe.ReleaseToolchain.168045532" name="TI Code Generation Tools" superClass="com.ti.ccstudio.buildDefinitions.C6000_6.1.exe.ReleaseToolchain" targetTool="com.ti.ccstudio.buildDefinitions.C6000_6.1.exe.linkerRelease.1029001756"> +<option id="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION.1171605912" superClass="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION" value="6.1.15" valueType="string"/> +<option id="com.ti.ccstudio.buildDefinitions.core.OPT_TAGS.846939654" superClass="com.ti.ccstudio.buildDefinitions.core.OPT_TAGS" valueType="stringList"> +<listOptionValue builtIn="false" value="DEVICE_CONFIGURATION_ID=com.ti.ccstudio.deviceModel.C6000.GenericC67xxDevice"/> +<listOptionValue builtIn="false" value="DEVICE_ENDIANNESS=little"/> +<listOptionValue builtIn="false" value="IS_ELF=false"/> +<listOptionValue builtIn="false" value="LINKER_COMMAND_FILE="/> +<listOptionValue builtIn="false" value="RUNTIME_SUPPORT_LIBRARY=rts6700.lib"/> +<listOptionValue builtIn="false" value="IS_ASSEMBLY_ONLY=false"/> +<listOptionValue builtIn="false" value="CCS_MBS_VERSION=4.1.3"/> +<listOptionValue builtIn="false" value="PROJECT_KIND=com.ti.ccstudio.managedbuild.core.ProjectKind_Executable"/> +</option> +<tool id="com.ti.ccstudio.buildDefinitions.C6000_6.1.exe.compilerRelease.144163128" name="C6000 Compiler" superClass="com.ti.ccstudio.buildDefinitions.C6000_6.1.exe.compilerRelease"> +<option id="com.ti.ccstudio.buildDefinitions.C6000_6.1.compilerID.DIAG_WARNING.1894620238" superClass="com.ti.ccstudio.buildDefinitions.C6000_6.1.compilerID.DIAG_WARNING" valueType="stringList"> +<listOptionValue builtIn="false" value="225"/> +</option> +<option id="com.ti.ccstudio.buildDefinitions.C6000_6.1.compilerID.SILICON_VERSION.158340357" superClass="com.ti.ccstudio.buildDefinitions.C6000_6.1.compilerID.SILICON_VERSION" value="6700" valueType="string"/> +<option id="com.ti.ccstudio.buildDefinitions.C6000_6.1.compilerID.INCLUDE_PATH.1483230998" superClass="com.ti.ccstudio.buildDefinitions.C6000_6.1.compilerID.INCLUDE_PATH" valueType="includePath"> +<listOptionValue builtIn="false" value=""${CG_TOOL_ROOT}/include""/> +</option> +</tool> +<tool id="com.ti.ccstudio.buildDefinitions.C6000_6.1.exe.linkerRelease.1029001756" name="C6000 Linker" superClass="com.ti.ccstudio.buildDefinitions.C6000_6.1.exe.linkerRelease"> +<option id="com.ti.ccstudio.buildDefinitions.C6000_6.1.linkerID.OUTPUT_FILE.2129407001" superClass="com.ti.ccstudio.buildDefinitions.C6000_6.1.linkerID.OUTPUT_FILE" value=""RTDSP.out"" valueType="string"/> +<option id="com.ti.ccstudio.buildDefinitions.C6000_6.1.linkerID.MAP_FILE.830085434" superClass="com.ti.ccstudio.buildDefinitions.C6000_6.1.linkerID.MAP_FILE" value=""RTDSP.map"" valueType="string"/> +<option id="com.ti.ccstudio.buildDefinitions.C6000_6.1.linkerID.LIBRARY.768993604" superClass="com.ti.ccstudio.buildDefinitions.C6000_6.1.linkerID.LIBRARY" valueType="libs"> +<listOptionValue builtIn="false" value=""rts6700.lib""/> +</option> +<option id="com.ti.ccstudio.buildDefinitions.C6000_6.1.linkerID.SEARCH_PATH.1437373509" superClass="com.ti.ccstudio.buildDefinitions.C6000_6.1.linkerID.SEARCH_PATH" valueType="stringList"> +<listOptionValue builtIn="false" value=""${CG_TOOL_ROOT}/lib""/> +<listOptionValue builtIn="false" value=""${CG_TOOL_ROOT}/include""/> +</option> +</tool> +</toolChain> +<resourceConfiguration exclude="true" id="com.ti.ccstudio.buildDefinitions.C6000.Release.1875685790./RTDSP/volume.cmd" name="volume.cmd" rcbsApplicability="disable" resourcePath="/RTDSP/volume.cmd" toolsToInvoke="com.ti.ccstudio.buildDefinitions.C6000_6.1.exe.linkerRelease.1029001756./RTDSP/volume.cmd"> +<tool id="com.ti.ccstudio.buildDefinitions.C6000_6.1.exe.linkerRelease.1029001756./RTDSP/volume.cmd" name="C6000 Linker" superClass="com.ti.ccstudio.buildDefinitions.C6000_6.1.exe.linkerRelease.1029001756"/> +</resourceConfiguration> +</configuration> +</project> +</ManagedProjectBuildInfo> diff --git a/lab1/RTDSP/.cdtproject b/lab1/RTDSP/.cdtproject new file mode 100644 index 0000000..3625f57 --- /dev/null +++ b/lab1/RTDSP/.cdtproject @@ -0,0 +1,15 @@ +<?xml version="1.0" encoding="UTF-8"?> +<?eclipse-cdt version="2.0"?> + +<cdtproject id="org.eclipse.cdt.managedbuilder.core.managedMake"> +<extension id="org.eclipse.cdt.managedbuilder.core.ManagedBuildManager" point="org.eclipse.cdt.core.ScannerInfoProvider"/> +<extension id="com.ti.ccstudio.binaryparser.CoffParser" point="org.eclipse.cdt.core.BinaryParser"/> +<data> +<item id="org.eclipse.cdt.core.pathentry"> +<pathentry kind="src" path=""/> +<pathentry kind="out" path=""/> +<pathentry kind="con" path="org.eclipse.cdt.managedbuilder.MANAGED_CONTAINER"/> +<pathentry kind="con" path="com.ti.ccstudio.managedbuild.core.CCS_CONTAINER"/> +</item> +</data> +</cdtproject> diff --git a/lab1/RTDSP/.launches/RTDSP.launch b/lab1/RTDSP/.launches/RTDSP.launch new file mode 100644 index 0000000..ba96ecd --- /dev/null +++ b/lab1/RTDSP/.launches/RTDSP.launch @@ -0,0 +1,27 @@ +<?xml version="1.0" encoding="UTF-8"?> +<launchConfiguration type="com.ti.ccstudio.debug.core.CCELaunchType"> +<stringAttribute key="org.eclipse.debug.core.source_locator_memento" value="<?xml version="1.0" encoding="UTF-8"?> <sourceLookupDirector> <sourceContainers duplicates="false"> <container memento="&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;&#13;&#10;&lt;default/&gt;&#13;&#10;" typeId="org.eclipse.debug.core.containerType.default"/> </sourceContainers> </sourceLookupDirector> "/> +<booleanAttribute key="org.eclipse.debug.ui.ATTR_LAUNCH_IN_BACKGROUND" value="false"/> +<booleanAttribute key="com.ti.ccstudio.debug.core.MRU_PROGRAM_S_ONLY" value="false"/> +<stringAttribute key="org.eclipse.cdt.launch.DEBUGGER_ID" value="com.ti.ccstudio.debug.core.CCEDebugger"/> +<stringAttribute key="CCEDebugOptions.CPU_RESOLVE_OPTION" value="exact"/> +<stringAttribute key="org.eclipse.debug.ui.DISPLAY_NAME" value="RTDSP [Debug] - Spectrum Digital DSK-EVM-eZdsp onboard USB Emulator_0/TMS320C671X"/> +<stringAttribute key="org.eclipse.cdt.launch.DEBUGGER_REGISTER_GROUPS" value=""/> +<stringAttribute key="CCEDebugOptions.LOADING_OPTION" value="program"/> +<mapAttribute key="com.ti.ccstudio.debug.core.VARIABLE_STATE"/> +<stringAttribute key="org.eclipse.cdt.launch.DEBUGGER_START_MODE" value="run"/> +<stringAttribute key="com.ti.ccstudio.debug.core.DISPLAY_NAME_FORMAT" value="RTDSP [Debug] - {0}"/> +<stringAttribute key="CCEDebugOptions.TARGET_CONFIGURATION_OPTION" value="full"/> +<stringAttribute key="org.eclipse.cdt.launch.MEMORY_BLOCKS" value="<?xml version="1.0" encoding="UTF-8"?> <memoryBlockExpressionList/> "/> +<stringAttribute key="com.ti.ccstudio.debug.core.MRU_PROGRAM_NAME" value="C:\workspace\RTDSP\Debug\RTDSP.out"/> +<stringAttribute key="com.ti.ccstudio.debug.core.MRU_MODULES" value="<?xml version="1.0" encoding="UTF-8"?> <modules> <module name="C:\workspace\RTDSP\Debug\RTDSP.out" time="Mon Jan 15 13:09:48 GMT 2018" time_long="1516021788596"/> </modules> "/> +<stringAttribute key="org.eclipse.cdt.launch.PROJECT_ATTR" value="RTDSP"/> +<stringAttribute key="CCEDebugOptions.CPU_NAME" value="Spectrum Digital DSK-EVM-eZdsp onboard USB Emulator_0/TMS320C671X"/> +<stringAttribute key="org.eclipse.cdt.launch.GLOBAL_VARIABLES" value="<?xml version="1.0" encoding="UTF-8"?> <globalVariableList/> "/> +<stringAttribute key="CCEDebugOptions.DEBUG_PROPERTIES.Spectrum Digital DSK-EVM-eZdsp onboard USB Emulator_0/TMS320C671X" value="<?xml version="1.0" encoding="UTF-8" standalone="no" ?> <PropertyValues> <property id="ConnectOnStartup"> <curValue>1</curValue> </property> </PropertyValues> "/> +<stringAttribute key="org.eclipse.cdt.launch.PROGRAM_NAME" value="Debug/RTDSP.out"/> +<stringAttribute key="CCEDebugOptions.CPU_ISA" value="TMS320C671X"/> +<stringAttribute key="com.ti.ccstudio.debug.core.BUILD_CONFIGURATION" value="Debug"/> +<stringAttribute key="CCEDebugOptions.TARGET_CONFIGURATION_FILE" value="C:\workspace\RTDSP\NewTargetConfiguration.ccxml"/> +<stringAttribute key="org.eclipse.debug.core.source_locator_id" value="com.ti.ccstudio.debug.core.sourceLocator"/> +</launchConfiguration> diff --git a/lab1/RTDSP/.project b/lab1/RTDSP/.project new file mode 100644 index 0000000..4ebefd5 --- /dev/null +++ b/lab1/RTDSP/.project @@ -0,0 +1,20 @@ +<?xml version="1.0" encoding="UTF-8"?> +<projectDescription> + <name>RTDSP</name> + <comment></comment> + <projects> + </projects> + <buildSpec> + <buildCommand> + <name>org.eclipse.cdt.managedbuilder.core.genmakebuilder</name> + <arguments> + </arguments> + </buildCommand> + </buildSpec> + <natures> + <nature>org.eclipse.cdt.core.cnature</nature> + <nature>org.eclipse.cdt.managedbuilder.core.managedBuildNature</nature> + <nature>org.eclipse.cdt.core.ccnature</nature> + <nature>com.ti.ccstudio.managedbuild.core.ccsNature</nature> + </natures> +</projectDescription> diff --git a/lab1/RTDSP/.settings/org.eclipse.cdt.managedbuilder.core.prefs b/lab1/RTDSP/.settings/org.eclipse.cdt.managedbuilder.core.prefs new file mode 100644 index 0000000..3a8d8bc --- /dev/null +++ b/lab1/RTDSP/.settings/org.eclipse.cdt.managedbuilder.core.prefs @@ -0,0 +1,9 @@ +#Mon Jan 15 12:22:38 GMT 2018 +com.ti.ccstudio.buildDefinitions.C6000.Debug.1304237037/internalBuilder/enabled=false +com.ti.ccstudio.buildDefinitions.C6000.Debug.1304237037/internalBuilder/ignoreErr=true +com.ti.ccstudio.buildDefinitions.C6000.Debug.2139218028/internalBuilder/enabled=false +com.ti.ccstudio.buildDefinitions.C6000.Debug.2139218028/internalBuilder/ignoreErr=true +com.ti.ccstudio.buildDefinitions.C6000.Release.1875685790/internalBuilder/enabled=false +com.ti.ccstudio.buildDefinitions.C6000.Release.1875685790/internalBuilder/ignoreErr=true +eclipse.preferences.version=1 +environment/project/com.ti.ccstudio.buildDefinitions.C6000.Debug.1304237037=<?xml version\="1.0" encoding\="UTF-8"?>\r\n<environment/>\r\n diff --git a/lab1/RTDSP/Debug/RTDSP.map b/lab1/RTDSP/Debug/RTDSP.map new file mode 100644 index 0000000..43792db --- /dev/null +++ b/lab1/RTDSP/Debug/RTDSP.map @@ -0,0 +1,295 @@ +****************************************************************************** + TMS320C6x Linker PC v6.1.15 +****************************************************************************** +>> Linked Mon Jan 15 13:09:37 2018 + +OUTPUT FILE NAME: <RTDSP.out> +ENTRY POINT SYMBOL: "_c_int00" address: 00002a20 + + +MEMORY CONFIGURATION + + name origin length used unused attr fill +---------------------- -------- --------- -------- -------- ---- -------- + ISRAM 00000000 00100000 00003f3a 000fc0c6 RWIX + + +SECTION ALLOCATION MAP + + output attributes/ +section page origin length input sections +-------- ---- ---------- ---------- ---------------- +.text 0 00000000 00002be0 + 00000000 000003a0 rts6700.lib : fputs.obj (.text:_fputs) + 000003a0 000003a0 : memory.obj (.text:_free) + 00000740 00000260 : memory.obj (.text:_malloc) + 000009a0 00000240 : trgdrv.obj (.text:_HOSTrename) + 00000be0 00000240 : memcpy62.obj (.text:_memcpy) + 00000e20 00000200 : setvbuf.obj (.text:_setvbuf) + 00001020 000001e0 : lowlev.obj (.text:_getdevice) + 00001200 00000160 : fclose.obj (.text:_fclose) + 00001360 00000160 : lowlev.obj (.text:_lseek) + 000014c0 00000160 : lowlev.obj (.text:_write) + 00001620 00000140 : trgdrv.obj (.text:_HOSTlseek) + 00001760 00000140 : trgdrv.obj (.text:_HOSTread) + 000018a0 00000140 : _io_perm.obj (.text:__wrt_ok) + 000019e0 00000120 : trgdrv.obj (.text:_HOSTopen) + 00001b00 00000120 : trgdrv.obj (.text:_HOSTwrite) + 00001c20 00000120 : autoinit.obj (.text:__auto_init) + 00001d40 00000120 : fopen.obj (.text:__cleanup) + 00001e60 00000120 : lowlev.obj (.text:_close) + 00001f80 00000120 : exit.obj (.text:_exit) + 000020a0 00000120 : fseek.obj (.text:_fseek) + 000021c0 00000120 volume.obj (.text) + 000022e0 00000100 rts6700.lib : trgdrv.obj (.text:_HOSTclose) + 000023e0 00000100 : trgdrv.obj (.text:_HOSTunlink) + 000024e0 000000e0 : fflush.obj (.text:__doflush) + 000025c0 000000e0 : memory.obj (.text:_minsert) + 000026a0 000000e0 : memory.obj (.text:_mremove) + 00002780 000000c0 : lowlev.obj (.text:_finddevice) + 00002840 000000a0 : trgmsg.obj (.text:_readmsg) + 000028e0 000000a0 : lowlev.obj (.text:_unlink) + 00002980 000000a0 : trgmsg.obj (.text:_writemsg) + 00002a20 00000080 : boot.obj (.text:_c_int00) + 00002aa0 00000060 : fputs.obj (.text:_puts) + 00002b00 00000040 : args_main.obj (.text:__args_main) + 00002b40 00000040 load.obj (.text) + 00002b80 00000020 rts6700.lib : _lock.obj (.text:__nop) + 00002ba0 00000020 : exit.obj (.text:_abort) + 00002bc0 00000020 : remove.obj (.text:_remove) + +.far 0 00002be0 00000684 UNINITIALIZED + 00002be0 00000334 volume.obj (.far) + 00002f14 00000194 rts6700.lib : defs.obj (.far) + 000030a8 000000d0 : trgdrv.obj (.far) + 00003178 000000cc : lowlev.obj (.far) + 00003244 0000000c : exit.obj (.far) + 00003250 00000008 : _lock.obj (.far) + 00003258 00000008 : memory.obj (.far) + 00003260 00000004 : fopen.obj (.far) + +.stack 0 00003268 00000400 UNINITIALIZED + 00003268 00000008 rts6700.lib : boot.obj (.stack) + 00003270 000003f8 --HOLE-- + +.sysmem 0 00003668 00000400 UNINITIALIZED + 00003668 00000008 rts6700.lib : memory.obj (.sysmem) + 00003670 000003f8 --HOLE-- + +.cinit 0 00003a68 00000194 + 00003a68 0000005c rts6700.lib : defs.obj (.cinit) + 00003ac4 00000004 --HOLE-- [fill = 0] + 00003ac8 0000005c : lowlev.obj (.cinit) + 00003b24 00000004 --HOLE-- [fill = 0] + 00003b28 0000003c volume.obj (.cinit) + 00003b64 00000004 --HOLE-- [fill = 0] + 00003b68 0000002c rts6700.lib : exit.obj (.cinit) + 00003b94 00000004 --HOLE-- [fill = 0] + 00003b98 0000002c : memory.obj (.cinit) + 00003bc4 00000004 --HOLE-- [fill = 0] + 00003bc8 0000001c : _lock.obj (.cinit) + 00003be4 00000004 --HOLE-- [fill = 0] + 00003be8 0000000c : fopen.obj (.cinit) + 00003bf4 00000004 --HOLE-- [fill = 0] + 00003bf8 00000004 (.pad.cinit) [fill = 0] + +.vectors 0 00003c00 00000200 + 00003c00 00000200 vectors.obj (.vectors) + +.cio 0 00003e00 00000120 UNINITIALIZED + 00003e00 00000120 rts6700.lib : trgmsg.obj (.cio) + +.const 0 00003f20 0000001a + 00003f20 00000018 volume.obj (.const:.string) + 00003f38 00000002 rts6700.lib : fputs.obj (.const:.string) + +.bss 0 00003f3c 00000008 UNINITIALIZED + 00003f3c 00000008 volume.obj (.bss) + + +GLOBAL SYMBOLS: SORTED ALPHABETICALLY BY Name + +address name +-------- ---- +00003f3c $bss +00003f3c .bss +00000000 .text +00002ba0 C$$EXIT +00002a04 C$$IO$$ +000022e0 _HOSTclose +00001620 _HOSTlseek +000019e0 _HOSTopen +00001760 _HOSTread +000009a0 _HOSTrename +000023e0 _HOSTunlink +00001b00 _HOSTwrite +00003e00 __CIOBUF_ +00000400 __STACK_SIZE +00000400 __SYSMEM_SIZE +0000324c ___TI_enable_exit_profile_output +ffffffff ___TI_pprof_out_hndl +ffffffff ___TI_prof_data_size +ffffffff ___TI_prof_data_start +ffffffff ___binit__ +00003f3c ___bss__ +ffffffff ___c_args__ +00003a68 ___cinit__ +00003f44 ___end__ +00002be0 ___etext__ +ffffffff ___pinit__ +00000000 ___text__ +00002b00 __args_main +00001c20 __auto_init +00001d40 __cleanup +00003244 __cleanup_ptr +000024e0 __doflush +00003248 __dtors_ptr +000030a4 __ft_end +00002f14 __ftable +00003250 __lock +00002b80 __nop +00003268 __stack +00003668 __sys_memory +00003004 __tmpnams +00003254 __unlock +000018a0 __wrt_ok +00002ba0 _abort +00002a20 _c_int00 +00001e60 _close +00001f80 _exit +00001200 _fclose +00000000 _fputs +000003a0 _free +000020a0 _fseek +00003f3c _gain +00002be0 _inp_buffer +00002b40 _load +00001360 _lseek +000021c0 _main +00000740 _malloc +00000be0 _memcpy +00002d70 _out_buffer +00003f40 _processingLoad +00002aa0 _puts +00002840 _readmsg +00002bc0 _remove +00000e20 _setvbuf +00002f00 _str +000028e0 _unlink +000014c0 _write +00002980 _writemsg +ffffffff binit +00003a68 cinit +00003f44 end +00002be0 etext +ffffffff pinit +00003c20 unused1 +00003d40 unused10 +00003d60 unused11 +00003d80 unused12 +00003da0 unused13 +00003dc0 unused14 +00003de0 unused15 +00003c40 unused2 +00003c60 unused3 +00003c80 unused4 +00003ca0 unused5 +00003cc0 unused6 +00003ce0 unused7 +00003d00 unused8 +00003d20 unused9 + + +GLOBAL SYMBOLS: SORTED BY Symbol Address + +address name +-------- ---- +00000000 .text +00000000 ___text__ +00000000 _fputs +000003a0 _free +00000400 __STACK_SIZE +00000400 __SYSMEM_SIZE +00000740 _malloc +000009a0 _HOSTrename +00000be0 _memcpy +00000e20 _setvbuf +00001200 _fclose +00001360 _lseek +000014c0 _write +00001620 _HOSTlseek +00001760 _HOSTread +000018a0 __wrt_ok +000019e0 _HOSTopen +00001b00 _HOSTwrite +00001c20 __auto_init +00001d40 __cleanup +00001e60 _close +00001f80 _exit +000020a0 _fseek +000021c0 _main +000022e0 _HOSTclose +000023e0 _HOSTunlink +000024e0 __doflush +00002840 _readmsg +000028e0 _unlink +00002980 _writemsg +00002a04 C$$IO$$ +00002a20 _c_int00 +00002aa0 _puts +00002b00 __args_main +00002b40 _load +00002b80 __nop +00002ba0 C$$EXIT +00002ba0 _abort +00002bc0 _remove +00002be0 ___etext__ +00002be0 _inp_buffer +00002be0 etext +00002d70 _out_buffer +00002f00 _str +00002f14 __ftable +00003004 __tmpnams +000030a4 __ft_end +00003244 __cleanup_ptr +00003248 __dtors_ptr +0000324c ___TI_enable_exit_profile_output +00003250 __lock +00003254 __unlock +00003268 __stack +00003668 __sys_memory +00003a68 ___cinit__ +00003a68 cinit +00003c20 unused1 +00003c40 unused2 +00003c60 unused3 +00003c80 unused4 +00003ca0 unused5 +00003cc0 unused6 +00003ce0 unused7 +00003d00 unused8 +00003d20 unused9 +00003d40 unused10 +00003d60 unused11 +00003d80 unused12 +00003da0 unused13 +00003dc0 unused14 +00003de0 unused15 +00003e00 __CIOBUF_ +00003f3c $bss +00003f3c .bss +00003f3c ___bss__ +00003f3c _gain +00003f40 _processingLoad +00003f44 ___end__ +00003f44 end +ffffffff ___TI_pprof_out_hndl +ffffffff ___TI_prof_data_size +ffffffff ___TI_prof_data_start +ffffffff ___binit__ +ffffffff ___c_args__ +ffffffff ___pinit__ +ffffffff binit +ffffffff pinit + +[87 symbols] diff --git a/lab1/RTDSP/Debug/RTDSP.out b/lab1/RTDSP/Debug/RTDSP.out Binary files differnew file mode 100644 index 0000000..ad6f217 --- /dev/null +++ b/lab1/RTDSP/Debug/RTDSP.out diff --git a/lab1/RTDSP/Debug/ccsObjs.opt b/lab1/RTDSP/Debug/ccsObjs.opt new file mode 100644 index 0000000..a9ada96 --- /dev/null +++ b/lab1/RTDSP/Debug/ccsObjs.opt @@ -0,0 +1 @@ +"./volume.obj" "./vectors.obj" "./load.obj" -l"rts6700.lib" "../rts6700.lib" "../volume.cmd"
\ No newline at end of file diff --git a/lab1/RTDSP/Debug/ccsSrcs.opt b/lab1/RTDSP/Debug/ccsSrcs.opt new file mode 100644 index 0000000..fe21192 --- /dev/null +++ b/lab1/RTDSP/Debug/ccsSrcs.opt @@ -0,0 +1 @@ +"../load.asm" "../vectors.asm" "../volume.c"
\ No newline at end of file diff --git a/lab1/RTDSP/Debug/load.obj b/lab1/RTDSP/Debug/load.obj Binary files differnew file mode 100644 index 0000000..d34c884 --- /dev/null +++ b/lab1/RTDSP/Debug/load.obj diff --git a/lab1/RTDSP/Debug/makefile b/lab1/RTDSP/Debug/makefile new file mode 100644 index 0000000..49742b8 --- /dev/null +++ b/lab1/RTDSP/Debug/makefile @@ -0,0 +1,129 @@ +################################################################################ +# Automatically-generated file. Do not edit! +################################################################################ + +SHELL = cmd.exe + +EMPTY := +SPACE := $(EMPTY) $(EMPTY) + +ORDERED_OBJS += \ +$(GEN_CMDS_QUOTED) \ +"./volume.obj" \ +"./vectors.obj" \ +"./load.obj" \ +-l"rts6700.lib" \ +"../rts6700.lib" \ +"../volume.cmd" \ + +-include ../makefile.init + +RM := DEL /F + +# All of the sources participating in the build are defined here +-include sources.mk +-include subdir.mk +-include objects.mk + +ifneq ($(MAKECMDGOALS),clean) +ifneq ($(strip $(S62_DEPS)),) +-include $(S62_DEPS) +endif +ifneq ($(strip $(ASM_DEPS)),) +-include $(ASM_DEPS) +endif +ifneq ($(strip $(C55_DEPS)),) +-include $(C55_DEPS) +endif +ifneq ($(strip $(S_UPPER_DEPS)),) +-include $(S_UPPER_DEPS) +endif +ifneq ($(strip $(C++_DEPS)),) +-include $(C++_DEPS) +endif +ifneq ($(strip $(S_DEPS)),) +-include $(S_DEPS) +endif +ifneq ($(strip $(CC_DEPS)),) +-include $(CC_DEPS) +endif +ifneq ($(strip $(C64_DEPS)),) +-include $(C64_DEPS) +endif +ifneq ($(strip $(CPP_DEPS)),) +-include $(CPP_DEPS) +endif +ifneq ($(strip $(S64_DEPS)),) +-include $(S64_DEPS) +endif +ifneq ($(strip $(CXX_DEPS)),) +-include $(CXX_DEPS) +endif +ifneq ($(strip $(C67_DEPS)),) +-include $(C67_DEPS) +endif +ifneq ($(strip $(S67_DEPS)),) +-include $(S67_DEPS) +endif +ifneq ($(strip $(S43_DEPS)),) +-include $(S43_DEPS) +endif +ifneq ($(strip $(C62_DEPS)),) +-include $(C62_DEPS) +endif +ifneq ($(strip $(C43_DEPS)),) +-include $(C43_DEPS) +endif +ifneq ($(strip $(C??_DEPS)),) +-include $(C??_DEPS) +endif +ifneq ($(strip $(ASM_UPPER_DEPS)),) +-include $(ASM_UPPER_DEPS) +endif +ifneq ($(strip $(OPT_DEPS)),) +-include $(OPT_DEPS) +endif +ifneq ($(strip $(S??_DEPS)),) +-include $(S??_DEPS) +endif +ifneq ($(strip $(S55_DEPS)),) +-include $(S55_DEPS) +endif +ifneq ($(strip $(C_DEPS)),) +-include $(C_DEPS) +endif +ifneq ($(strip $(SA_DEPS)),) +-include $(SA_DEPS) +endif +ifneq ($(strip $(C_UPPER_DEPS)),) +-include $(C_UPPER_DEPS) +endif +endif + +-include ../makefile.defs + +# Add inputs and outputs from these tool invocations to the build variables + +# All Target +all: RTDSP.out + +# Tool invocations +RTDSP.out: $(GEN_CMDS) $(CMD_SRCS) $(LIB_SRCS) $(OBJS) + @echo 'Building target: $@' + @echo 'Invoking: Linker' + "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --diag_warning=225 -z -m"RTDSP.map" --stack_size=0x400 --heap_size=0x400 --warn_sections -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/lib" -i"C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --reread_libs --rom_model -o "RTDSP.out" $(ORDERED_OBJS) + @echo 'Finished building target: $@' + @echo ' ' + +# Other Targets +clean: + -$(RM) $(C6000_EXECUTABLE_OUTPUTS__QTD) "RTDSP.out" + -$(RM) ".\load.obj" ".\vectors.obj" ".\volume.obj" + -$(RM) ".\load.pp" ".\vectors.pp" + -$(RM) ".\volume.pp" + -@echo ' ' + +.PHONY: all clean dependents +.SECONDARY: + +-include ../makefile.targets diff --git a/lab1/RTDSP/Debug/objects.mk b/lab1/RTDSP/Debug/objects.mk new file mode 100644 index 0000000..42b89a3 --- /dev/null +++ b/lab1/RTDSP/Debug/objects.mk @@ -0,0 +1,7 @@ +################################################################################ +# Automatically-generated file. Do not edit! +################################################################################ + +LIBS := "$(GEN_CMDS_QUOTED)" -l"rts6700.lib" + +USER_OBJS :=
\ No newline at end of file diff --git a/lab1/RTDSP/Debug/sources.mk b/lab1/RTDSP/Debug/sources.mk new file mode 100644 index 0000000..d80be64 --- /dev/null +++ b/lab1/RTDSP/Debug/sources.mk @@ -0,0 +1,92 @@ +################################################################################ +# Automatically-generated file. Do not edit! +################################################################################ + +C67_SRCS := +S_UPPER_SRCS := +CMD_UPPER_SRCS := +LIB_SRCS := +OBJ_SRCS := +C55_SRCS := +C_SRCS := +A_SRCS := +CPP_SRCS := +O_SRCS := +LD_SRCS := +ASM_SRCS := +CXX_SRCS := +ASM_UPPER_SRCS := +OPT_SRCS := +C43_SRCS := +C64_SRCS := +S62_SRCS := +S55_SRCS := +CMD_SRCS := +S67_SRCS := +C++_SRCS := +SA_SRCS := +S64_SRCS := +C_UPPER_SRCS := +S??_SRCS := +S43_SRCS := +C62_SRCS := +S_SRCS := +C??_SRCS := +CC_SRCS := +S62_DEPS := +ASM_DEPS := +C55_DEPS := +C6000_EXECUTABLE_OUTPUTS := +S_UPPER_DEPS := +S_DEPS := +CPP_DEPS := +C64_DEPS := +C43_DEPS := +C62_DEPS := +OBJS := +C??_DEPS := +S??_DEPS := +S55_DEPS := +C_DEPS := +C_UPPER_DEPS := +SA_DEPS := +C++_DEPS := +CC_DEPS := +S64_DEPS := +CXX_DEPS := +S43_DEPS := +S67_DEPS := +C67_DEPS := +ASM_UPPER_DEPS := +OPT_DEPS := +S62_DEPS__QTD := +OBJS__QTD := +C64_DEPS__QTD := +ASM_DEPS__QTD := +C62_DEPS__QTD := +C_UPPER_DEPS__QTD := +S??_DEPS__QTD := +S55_DEPS__QTD := +S64_DEPS__QTD := +C55_DEPS__QTD := +C67_DEPS__QTD := +CPP_DEPS__QTD := +C43_DEPS__QTD := +C_DEPS__QTD := +S43_DEPS__QTD := +C6000_EXECUTABLE_OUTPUTS__QTD := +CC_DEPS__QTD := +S67_DEPS__QTD := +OPT_DEPS__QTD := +S_UPPER_DEPS__QTD := +C??_DEPS__QTD := +CXX_DEPS__QTD := +C++_DEPS__QTD := +S_DEPS__QTD := +SA_DEPS__QTD := +ASM_UPPER_DEPS__QTD := + +# Every subdirectory with source files must be described here +SUBDIRS := \ +. \ + diff --git a/lab1/RTDSP/Debug/subdir.mk b/lab1/RTDSP/Debug/subdir.mk new file mode 100644 index 0000000..52d4b6c --- /dev/null +++ b/lab1/RTDSP/Debug/subdir.mk @@ -0,0 +1,73 @@ +################################################################################ +# Automatically-generated file. Do not edit! +################################################################################ + +# Add inputs and outputs from these tool invocations to the build variables +LIB_SRCS += \ +../rts6700.lib + +C_SRCS += \ +../volume.c + +ASM_SRCS += \ +../load.asm \ +../vectors.asm + +CMD_SRCS += \ +../volume.cmd + +ASM_DEPS += \ +./load.pp \ +./vectors.pp + +OBJS += \ +./load.obj \ +./vectors.obj \ +./volume.obj + +C_DEPS += \ +./volume.pp + +OBJS__QTD += \ +".\load.obj" \ +".\vectors.obj" \ +".\volume.obj" + +ASM_DEPS__QTD += \ +".\load.pp" \ +".\vectors.pp" + +C_DEPS__QTD += \ +".\volume.pp" + +ASM_SRCS_QUOTED += \ +"../load.asm" \ +"../vectors.asm" + +C_SRCS_QUOTED += \ +"../volume.c" + + +# Each subdirectory must supply rules for building sources it contributes +load.obj: ../load.asm $(GEN_OPTS) + @echo 'Building file: $<' + @echo 'Invoking: Compiler' + "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --diag_warning=225 --preproc_with_compile --preproc_dependency="load.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#") + @echo 'Finished building: $<' + @echo ' ' + +vectors.obj: ../vectors.asm $(GEN_OPTS) + @echo 'Building file: $<' + @echo 'Invoking: Compiler' + "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --diag_warning=225 --preproc_with_compile --preproc_dependency="vectors.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#") + @echo 'Finished building: $<' + @echo ' ' + +volume.obj: ../volume.c $(GEN_OPTS) + @echo 'Building file: $<' + @echo 'Invoking: Compiler' + "C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/bin/cl6x" -mv6700 -g --include_path="C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include" --diag_warning=225 --preproc_with_compile --preproc_dependency="volume.pp" $(GEN_OPTS_QUOTED) $(subst #,$(wildcard $(subst $(SPACE),\$(SPACE),$<)),"#") + @echo 'Finished building: $<' + @echo ' ' + + diff --git a/lab1/RTDSP/Debug/vectors.obj b/lab1/RTDSP/Debug/vectors.obj Binary files differnew file mode 100644 index 0000000..855d616 --- /dev/null +++ b/lab1/RTDSP/Debug/vectors.obj diff --git a/lab1/RTDSP/Debug/volume.obj b/lab1/RTDSP/Debug/volume.obj Binary files differnew file mode 100644 index 0000000..6a72f0b --- /dev/null +++ b/lab1/RTDSP/Debug/volume.obj diff --git a/lab1/RTDSP/Debug/volume.pp b/lab1/RTDSP/Debug/volume.pp new file mode 100644 index 0000000..1fe72a2 --- /dev/null +++ b/lab1/RTDSP/Debug/volume.pp @@ -0,0 +1,6 @@ +# FIXED +volume.obj: ../volume.c +volume.obj: C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include/stdio.h +volume.obj: C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include/linkage.h +volume.obj: C:/EEE/CCStudio4.1/ccsv4/tools/compiler/c6000/include/stdarg.h +volume.obj: ../volume.h diff --git a/lab1/RTDSP/NewTargetConfiguration.ccxml b/lab1/RTDSP/NewTargetConfiguration.ccxml new file mode 100644 index 0000000..f66822c --- /dev/null +++ b/lab1/RTDSP/NewTargetConfiguration.ccxml @@ -0,0 +1,12 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<configurations XML_version="1.2" id="configurations_0"> +<configuration XML_version="1.2" id="Spectrum Digital DSK-EVM-eZdsp onboard USB Emulator_0"> + <instance XML_version="1.2" desc="Spectrum Digital DSK-EVM-eZdsp onboard USB Emulator_0" href="connections\SDDSKUSB_Connection.xml" id="Spectrum Digital DSK-EVM-eZdsp onboard USB Emulator_0" xml="SDDSKUSB_Connection.xml" xmlpath="connections"/> + <connection XML_version="1.2" id="Spectrum Digital DSK-EVM-eZdsp onboard USB Emulator_0"> + <instance XML_version="1.2" href="drivers\sdgo6713dsk.xml" id="drivers" xml="sdgo6713dsk.xml" xmlpath="drivers"/> + <platform XML_version="1.2" id="platform_0"> + <instance XML_version="1.2" desc="DSK6713_0" href="boards\dsk6713.xml" id="DSK6713_0" xml="dsk6713.xml" xmlpath="boards"/> + </platform> + </connection> + </configuration> +</configurations> diff --git a/lab1/RTDSP/load.asm b/lab1/RTDSP/load.asm new file mode 100644 index 0000000..3144acc --- /dev/null +++ b/lab1/RTDSP/load.asm @@ -0,0 +1,65 @@ +; *************************************************************************************** +; DEPARTMENT OF ELECTRICAL AND ELECTRONIC ENGINEERING +; IMPERIAL COLLEGE LONDON +; +; EE 3.19: Real Time Digital Signal Processing +; Course by: Dr Paul Mitcheson +; +; LAB 1: Getting Started with the TI C6x DSP +; +; *********** LOAD.ASM *********** +; +; Part of the volume example. Demonstrates that assembly code can be called from C. +; Puts a dummy load on processor which can be varied +; by modiying the value of processingLoad +; (Where ProcessingLoad is a variable passed to the function in C). +; *************************************************************************************** +; Modified by D. Harvey: 24 April 2006 +; Modified to include resource references 23 Jan 2008 +; *************************************************************************************** +; +; + .global _load + + .text + +N .set 1000 + +; +; ********************************* _load description ********************************** +; This function simulates a load on the DSP by executing N * processingLoad +; instructions, where processingLoad is the input parameter to load() from volume.c: +; +; load(processingLoad); +; +; The loop is using 8 instructions. One instruction for sub, nop and b, plus nop 5. +; (The extra nop added after sub is to make the number of instructions in the loop 8). +; By dividing N * processingLoad by 8 and using the result as the loop counter, +; N * processingLoad = the number of instruction cycles used when the function is called. +; +; See Real Time Digial signal processing by Nasser Kehtarnavaz (page 146) for more +; info on mixing C and Assembly. +; **************************************************************************************** +; +_load: + + mv .s2 a4, b0 ; move parameter (processingLoad) passed from C into b0 + [!b0] b .s2 lend ; end code if processingLoad is zero + mvk .s2 N,b1 ; set b1 to value of N (set above as 1000) + mpy .m2 b1,b0,b0 ; N * processingLoad -> b0 + nop ; stall the pipeline + shru .s2 b0,3,b0 ; Divide b0 by 8 (b0 will be used as the loop counter) + + +loop: ; *************** 8 Instruction Loop ****************** + sub .d2 b0,1,b0 ; b0 - 1 -> b0 + nop ; added to make loop code 8 instruction cycles long + [b0] b .s2 loop ; loop back if b0 is not zero + nop 5 ; stall the pipeline + ; ******************* End of Loop ********************* + +lend: b .s2 b3 ; branch to b3 (register b3 holds the return address) + nop 5 ; stall the pipeline + + .end + diff --git a/lab1/RTDSP/rts6700.lib b/lab1/RTDSP/rts6700.lib Binary files differnew file mode 100644 index 0000000..2132aaa --- /dev/null +++ b/lab1/RTDSP/rts6700.lib diff --git a/lab1/RTDSP/sine.dat b/lab1/RTDSP/sine.dat new file mode 100644 index 0000000..111e345 --- /dev/null +++ b/lab1/RTDSP/sine.dat @@ -0,0 +1,1001 @@ +1651 1 0 0 0 +0x00000000 +0x0000000f +0x0000001e +0x0000002d +0x0000003a +0x00000046 +0x00000050 +0x00000059 +0x0000005f +0x00000062 +0x00000063 +0x00000062 +0x0000005f +0x00000059 +0x00000050 +0x00000046 +0x0000003a +0x0000002d +0x0000001e +0x0000000f +0x00000000 +0xfffffff1 +0xffffffe2 +0xffffffd3 +0xffffffc6 +0xffffffba +0xffffffb0 +0xffffffa7 +0xffffffa1 +0xffffff9e +0xffffff9d +0xffffff9e +0xffffffa1 +0xffffffa7 +0xffffffb0 +0xffffffba +0xffffffc6 +0xffffffd3 +0xffffffe2 +0xfffffff1 +0x00000000 +0x0000000f +0x0000001e +0x0000002d +0x0000003a +0x00000046 +0x00000050 +0x00000059 +0x0000005f +0x00000062 +0x00000063 +0x00000062 +0x0000005f +0x00000059 +0x00000050 +0x00000046 +0x0000003a +0x0000002d +0x0000001e +0x0000000f +0x00000000 +0xfffffff1 +0xffffffe2 +0xffffffd3 +0xffffffc6 +0xffffffba +0xffffffb0 +0xffffffa7 +0xffffffa1 +0xffffff9e +0xffffff9d +0xffffff9e +0xffffffa1 +0xffffffa7 +0xffffffb0 +0xffffffba +0xffffffc6 +0xffffffd3 +0xffffffe2 +0xfffffff1 +0x00000000 +0x0000000f +0x0000001e +0x0000002d +0x0000003a +0x00000046 +0x00000050 +0x00000059 +0x0000005f +0x00000062 +0x00000063 +0x00000062 +0x0000005f +0x00000059 +0x00000050 +0x00000046 +0x0000003a +0x0000002d +0x0000001e +0x0000000f +0x00000000 +0xfffffff1 +0xffffffe2 +0xffffffd3 +0xffffffc6 +0xffffffba +0xffffffb0 +0xffffffa7 +0xffffffa1 +0xffffff9e +0xffffff9d +0xffffff9e +0xffffffa1 +0xffffffa7 +0xffffffb0 +0xffffffba +0xffffffc6 +0xffffffd3 +0xffffffe2 +0xfffffff1 +0x00000000 +0x0000000f +0x0000001e +0x0000002d +0x0000003a +0x00000046 +0x00000050 +0x00000059 +0x0000005f +0x00000062 +0x00000063 +0x00000062 +0x0000005f +0x00000059 +0x00000050 +0x00000046 +0x0000003a +0x0000002d +0x0000001e +0x0000000f +0x00000000 +0xfffffff1 +0xffffffe2 +0xffffffd3 +0xffffffc6 +0xffffffba +0xffffffb0 +0xffffffa7 +0xffffffa1 +0xffffff9e +0xffffff9d +0xffffff9e +0xffffffa1 +0xffffffa7 +0xffffffb0 +0xffffffba +0xffffffc6 +0xffffffd3 +0xffffffe2 +0xfffffff1 +0x00000000 +0x0000000f +0x0000001e +0x0000002d +0x0000003a +0x00000046 +0x00000050 +0x00000059 +0x0000005f +0x00000062 +0x00000063 +0x00000062 +0x0000005f +0x00000059 +0x00000050 +0x00000046 +0x0000003a +0x0000002d +0x0000001e +0x0000000f +0x00000000 +0xfffffff1 +0xffffffe2 +0xffffffd3 +0xffffffc6 +0xffffffba +0xffffffb0 +0xffffffa7 +0xffffffa1 +0xffffff9e +0xffffff9d +0xffffff9e +0xffffffa1 +0xffffffa7 +0xffffffb0 +0xffffffba +0xffffffc6 +0xffffffd3 +0xffffffe2 +0xfffffff1 +0x00000000 +0x0000000f +0x0000001e +0x0000002d +0x0000003a +0x00000046 +0x00000050 +0x00000059 +0x0000005f +0x00000062 +0x00000063 +0x00000062 +0x0000005f +0x00000059 +0x00000050 +0x00000046 +0x0000003a +0x0000002d +0x0000001e +0x0000000f +0x00000000 +0xfffffff1 +0xffffffe2 +0xffffffd3 +0xffffffc6 +0xffffffba +0xffffffb0 +0xffffffa7 +0xffffffa1 +0xffffff9e +0xffffff9d +0xffffff9e +0xffffffa1 +0xffffffa7 +0xffffffb0 +0xffffffba +0xffffffc6 +0xffffffd3 +0xffffffe1 +0xfffffff1 +0x00000000 +0x0000000f +0x0000001e +0x0000002d +0x0000003a +0x00000046 +0x00000050 +0x00000059 +0x0000005f +0x00000062 +0x00000063 +0x00000062 +0x0000005f +0x00000059 +0x00000050 +0x00000046 +0x0000003a +0x0000002d +0x0000001f +0x0000000f +0x00000000 +0xfffffff1 +0xffffffe2 +0xffffffd3 +0xffffffc6 +0xffffffba +0xffffffb0 +0xffffffa7 +0xffffffa1 +0xffffff9e +0xffffff9d +0xffffff9e +0xffffffa1 +0xffffffa7 +0xffffffb0 +0xffffffba +0xffffffc6 +0xffffffd3 +0xffffffe1 +0xfffffff1 +0x00000000 +0x0000000f +0x0000001e +0x0000002d +0x0000003a +0x00000046 +0x00000050 +0x00000059 +0x0000005f +0x00000062 +0x00000063 +0x00000062 +0x0000005f +0x00000059 +0x00000050 +0x00000046 +0x0000003a +0x0000002d +0x0000001f +0x0000000f +0x00000000 +0xfffffff1 +0xffffffe2 +0xffffffd3 +0xffffffc6 +0xffffffba +0xffffffb0 +0xffffffa7 +0xffffffa1 +0xffffff9e +0xffffff9d +0xffffff9e +0xffffffa1 +0xffffffa7 +0xffffffb0 +0xffffffba +0xffffffc6 +0xffffffd3 +0xffffffe1 +0xfffffff1 +0x00000000 +0x0000000f +0x0000001e +0x0000002d +0x0000003a +0x00000046 +0x00000050 +0x00000059 +0x0000005f +0x00000062 +0x00000063 +0x00000062 +0x0000005f +0x00000059 +0x00000050 +0x00000046 +0x0000003a +0x0000002d +0x0000001f +0x0000000f +0x00000000 +0xfffffff1 +0xffffffe2 +0xffffffd3 +0xffffffc6 +0xffffffba +0xffffffb0 +0xffffffa7 +0xffffffa1 +0xffffff9e +0xffffff9d +0xffffff9e +0xffffffa1 +0xffffffa7 +0xffffffb0 +0xffffffba +0xffffffc6 +0xffffffd3 +0xffffffe1 +0xfffffff1 +0x00000000 +0x0000000f +0x0000001e +0x0000002d +0x0000003a +0x00000046 +0x00000050 +0x00000059 +0x0000005f +0x00000062 +0x00000063 +0x00000062 +0x0000005f +0x00000059 +0x00000051 +0x00000046 +0x0000003a +0x0000002d +0x0000001f +0x0000000f +0x00000000 +0xfffffff1 +0xffffffe2 +0xffffffd3 +0xffffffc6 +0xffffffba +0xffffffb0 +0xffffffa7 +0xffffffa1 +0xffffff9e +0xffffff9d +0xffffff9e +0xffffffa1 +0xffffffa7 +0xffffffaf +0xffffffba +0xffffffc6 +0xffffffd3 +0xffffffe1 +0xfffffff1 +0x00000000 +0x0000000f +0x0000001e +0x0000002d +0x0000003a +0x00000046 +0x00000050 +0x00000059 +0x0000005f +0x00000062 +0x00000063 +0x00000062 +0x0000005f +0x00000059 +0x00000051 +0x00000046 +0x0000003a +0x0000002d +0x0000001f +0x0000000f +0x00000000 +0xfffffff1 +0xffffffe2 +0xffffffd3 +0xffffffc6 +0xffffffba +0xffffffb0 +0xffffffa7 +0xffffffa1 +0xffffff9e +0xffffff9d +0xffffff9e +0xffffffa1 +0xffffffa7 +0xffffffaf +0xffffffba +0xffffffc6 +0xffffffd3 +0xffffffe1 +0xfffffff1 +0x00000000 +0x0000000f +0x0000001e +0x0000002d +0x0000003a +0x00000046 +0x00000050 +0x00000059 +0x0000005f +0x00000062 +0x00000063 +0x00000062 +0x0000005f +0x00000059 +0x00000051 +0x00000046 +0x0000003a +0x0000002d +0x0000001f +0x0000000f +0x00000000 +0xfffffff1 +0xffffffe2 +0xffffffd3 +0xffffffc6 +0xffffffba +0xffffffb0 +0xffffffa7 +0xffffffa1 +0xffffff9e +0xffffff9d +0xffffff9e +0xffffffa1 +0xffffffa7 +0xffffffaf +0xffffffba +0xffffffc6 +0xffffffd3 +0xffffffe1 +0xfffffff1 +0x00000000 +0x0000000f +0x0000001e +0x0000002d +0x0000003a +0x00000046 +0x00000050 +0x00000058 +0x0000005f +0x00000062 +0x00000063 +0x00000062 +0x0000005f +0x00000059 +0x00000051 +0x00000046 +0x0000003a +0x0000002d +0x0000001f +0x0000000f +0x00000000 +0xfffffff1 +0xffffffe2 +0xffffffd3 +0xffffffc6 +0xffffffba +0xffffffb0 +0xffffffa8 +0xffffffa1 +0xffffff9e +0xffffff9d +0xffffff9e +0xffffffa1 +0xffffffa7 +0xffffffaf +0xffffffba +0xffffffc6 +0xffffffd3 +0xffffffe1 +0xfffffff1 +0x00000000 +0x0000000f +0x0000001e +0x0000002d +0x0000003a +0x00000046 +0x00000050 +0x00000058 +0x0000005f +0x00000062 +0x00000063 +0x00000062 +0x0000005f +0x00000059 +0x00000051 +0x00000046 +0x0000003a +0x0000002d +0x0000001f +0x0000000f +0x00000000 +0xfffffff1 +0xffffffe2 +0xffffffd3 +0xffffffc6 +0xffffffba +0xffffffb0 +0xffffffa8 +0xffffffa1 +0xffffff9e +0xffffff9d +0xffffff9e +0xffffffa1 +0xffffffa7 +0xffffffaf +0xffffffba +0xffffffc6 +0xffffffd3 +0xffffffe1 +0xfffffff1 +0x00000000 +0x0000000f +0x0000001e +0x0000002d +0x0000003a +0x00000046 +0x00000050 +0x00000058 +0x0000005f +0x00000062 +0x00000063 +0x00000062 +0x0000005f +0x00000059 +0x00000051 +0x00000046 +0x0000003a +0x0000002d +0x0000001f +0x0000000f +0x00000000 +0xfffffff1 +0xffffffe2 +0xffffffd3 +0xffffffc6 +0xffffffba +0xffffffb0 +0xffffffa8 +0xffffffa1 +0xffffff9e +0xffffff9d +0xffffff9e +0xffffffa1 +0xffffffa7 +0xffffffaf +0xffffffba +0xffffffc5 +0xffffffd3 +0xffffffe1 +0xfffffff1 +0x00000000 +0x0000000f +0x0000001e +0x0000002d +0x0000003a +0x00000046 +0x00000050 +0x00000058 +0x0000005f +0x00000062 +0x00000063 +0x00000062 +0x0000005f +0x00000059 +0x00000051 +0x00000046 +0x0000003b +0x0000002d +0x0000001f +0x0000000f +0x00000000 +0xfffffff1 +0xffffffe2 +0xffffffd3 +0xffffffc6 +0xffffffba +0xffffffb0 +0xffffffa8 +0xffffffa1 +0xffffff9e +0xffffff9d +0xffffff9e +0xffffffa1 +0xffffffa7 +0xffffffaf +0xffffffba +0xffffffc5 +0xffffffd3 +0xffffffe1 +0xfffffff1 +0x00000000 +0x0000000f +0x0000001e +0x0000002d +0x0000003a +0x00000046 +0x00000050 +0x00000058 +0x0000005f +0x00000062 +0x00000063 +0x00000062 +0x0000005f +0x00000059 +0x00000051 +0x00000046 +0x0000003b +0x0000002d +0x0000001f +0x0000000f +0x00000000 +0xfffffff1 +0xffffffe2 +0xffffffd3 +0xffffffc6 +0xffffffba +0xffffffb0 +0xffffffa8 +0xffffffa1 +0xffffff9e +0xffffff9d +0xffffff9e +0xffffffa1 +0xffffffa7 +0xffffffaf +0xffffffba +0xffffffc5 +0xffffffd3 +0xffffffe1 +0xfffffff1 +0x00000000 +0x0000000f +0x0000001e +0x0000002d +0x0000003a +0x00000046 +0x00000050 +0x00000058 +0x0000005f +0x00000062 +0x00000063 +0x00000062 +0x0000005f +0x00000059 +0x00000051 +0x00000046 +0x0000003b +0x0000002d +0x0000001f +0x0000000f +0x00000000 +0xfffffff1 +0xffffffe2 +0xffffffd3 +0xffffffc6 +0xffffffba +0xffffffb0 +0xffffffa8 +0xffffffa1 +0xffffff9e +0xffffff9d +0xffffff9e +0xffffffa1 +0xffffffa7 +0xffffffaf +0xffffffba +0xffffffc5 +0xffffffd3 +0xffffffe1 +0xfffffff1 +0x00000000 +0x0000000f +0x0000001e +0x0000002d +0x0000003a +0x00000046 +0x00000050 +0x00000058 +0x0000005f +0x00000062 +0x00000063 +0x00000062 +0x0000005f +0x00000059 +0x00000051 +0x00000046 +0x0000003b +0x0000002d +0x0000001f +0x0000000f +0x00000000 +0xfffffff1 +0xffffffe2 +0xffffffd3 +0xffffffc6 +0xffffffba +0xffffffb0 +0xffffffa8 +0xffffffa2 +0xffffff9e +0xffffff9d +0xffffff9e +0xffffffa1 +0xffffffa7 +0xffffffaf +0xffffffba +0xffffffc5 +0xffffffd3 +0xffffffe1 +0xfffffff1 +0x00000000 +0x0000000f +0x0000001e +0x0000002d +0x0000003a +0x00000046 +0x00000050 +0x00000058 +0x0000005e +0x00000062 +0x00000063 +0x00000062 +0x0000005f +0x00000059 +0x00000051 +0x00000046 +0x0000003b +0x0000002d +0x0000001f +0x0000000f +0x00000000 +0xfffffff1 +0xffffffe2 +0xffffffd3 +0xffffffc6 +0xffffffba +0xffffffb0 +0xffffffa8 +0xffffffa2 +0xffffff9e +0xffffff9d +0xffffff9e +0xffffffa1 +0xffffffa7 +0xffffffaf +0xffffffba +0xffffffc5 +0xffffffd3 +0xffffffe1 +0xfffffff0 +0x00000000 +0x0000000f +0x0000001e +0x0000002d +0x0000003a +0x00000046 +0x00000050 +0x00000058 +0x0000005e +0x00000062 +0x00000063 +0x00000062 +0x0000005f +0x00000059 +0x00000051 +0x00000046 +0x0000003b +0x0000002d +0x0000001f +0x00000010 +0x00000000 +0xfffffff1 +0xffffffe2 +0xffffffd3 +0xffffffc6 +0xffffffba +0xffffffb0 +0xffffffa8 +0xffffffa2 +0xffffff9e +0xffffff9d +0xffffff9e +0xffffffa1 +0xffffffa7 +0xffffffaf +0xffffffba +0xffffffc5 +0xffffffd3 +0xffffffe1 +0xfffffff0 +0x00000000 +0x0000000f +0x0000001e +0x0000002d +0x0000003a +0x00000046 +0x00000050 +0x00000058 +0x0000005e +0x00000062 +0x00000063 +0x00000062 +0x0000005f +0x00000059 +0x00000051 +0x00000046 +0x0000003b +0x0000002d +0x0000001f +0x00000010 +0x00000000 +0xfffffff1 +0xffffffe2 +0xffffffd3 +0xffffffc6 +0xffffffba +0xffffffb0 +0xffffffa8 +0xffffffa2 +0xffffff9e +0xffffff9d +0xffffff9e +0xffffffa1 +0xffffffa7 +0xffffffaf +0xffffffba +0xffffffc5 +0xffffffd3 +0xffffffe1 +0xfffffff0 +0x00000000 +0x0000000f +0x0000001e +0x0000002d +0x0000003a +0x00000046 +0x00000050 +0x00000058 +0x0000005e +0x00000062 +0x00000063 +0x00000062 +0x0000005f +0x00000059 +0x00000051 +0x00000047 +0x0000003b +0x0000002d +0x0000001f +0x00000010 +0x00000000 +0xfffffff1 +0xffffffe2 +0xffffffd3 +0xffffffc6 +0xffffffba +0xffffffb0 +0xffffffa8 +0xffffffa2 +0xffffff9e +0xffffff9d +0xffffff9e +0xffffffa1 +0xffffffa7 +0xffffffaf +0xffffffb9 +0xffffffc5 +0xffffffd3 +0xffffffe1 +0xfffffff0 +0x00000000 +0x0000000f +0x0000001e +0x0000002d +0x0000003a +0x00000046 +0x00000050 +0x00000058 +0x0000005e +0x00000062 +0x00000063 +0x00000062 +0x0000005f +0x00000059 +0x00000051 +0x00000047 +0x0000003b +0x0000002d +0x0000001f +0x00000010 +0x00000000 +0xfffffff1 +0xffffffe2 +0xffffffd3 +0xffffffc6 +0xffffffba +0xffffffb0 +0xffffffa8 +0xffffffa2 +0xffffff9e +0xffffff9d +0xffffff9e +0xffffffa1 +0xffffffa7 +0xffffffaf +0xffffffb9 +0xffffffc5 +0xffffffd3 +0xffffffe1 +0xfffffff0 +0x00000000 +0x0000000f +0x0000001e +0x0000002d +0x0000003a +0x00000046 +0x00000050 +0x00000058 +0x0000005e +0x00000062 +0x00000063 +0x00000062 +0x0000005f +0x00000059 +0x00000051 +0x00000047 +0x0000003b +0x0000002d +0x0000001f +0x00000010 +0x00000000 +0xfffffff1 +0xffffffe2 +0xffffffd4 +0xffffffc6 +0xffffffba +0xffffffb0 +0xffffffa8 +0xffffffa2 +0xffffff9e +0xffffff9d +0xffffff9e +0xffffffa1 +0xffffffa7 +0xffffffaf +0xffffffb9 +0xffffffc5 +0xffffffd3 +0xffffffe1 +0xfffffff0 diff --git a/lab1/RTDSP/vectors.asm b/lab1/RTDSP/vectors.asm new file mode 100644 index 0000000..1536762 --- /dev/null +++ b/lab1/RTDSP/vectors.asm @@ -0,0 +1,60 @@ +; +; ======== vectors.asm ======== +; Plug in the entry point at RESET in the interrupt vector table +; + +; +; ======== unused ======== +; plug inifinite loop -- with nested branches to +; disable interrupts -- for all undefined vectors +; +unused .macro id + + .global unused:id: +unused:id: + b unused:id: ; nested branches to block interrupts + nop 4 + b unused:id: + nop + nop + nop + nop + nop + + .endm + + .sect ".vectors" + + .ref _c_int00 ; C entry point + + .align 32*8*4 ; must be aligned on 256 word boundary + +RESET: ; reset vector + mvkl _c_int00,b0 ; load destination function address to b0 + mvkh _c_int00,b0 + b b0 ; start branch to destination function + mvc PCE1,b0 ; address of interrupt vectors + mvc b0,ISTP ; set table to point here + nop 3 ; fill delay slot + nop + nop + + ; + ; plug unused interrupts with infinite loops to + ; catch stray interrupts + ; + unused 1 + unused 2 + unused 3 + unused 4 + unused 5 + unused 6 + unused 7 + unused 8 + unused 9 + unused 10 + unused 11 + unused 12 + unused 13 + unused 14 + unused 15 diff --git a/lab1/RTDSP/volume.c b/lab1/RTDSP/volume.c new file mode 100644 index 0000000..3da8881 --- /dev/null +++ b/lab1/RTDSP/volume.c @@ -0,0 +1,104 @@ +/************************************************************************************* + DEPARTMENT OF ELECTRICAL AND ELECTRONIC ENGINEERING + IMPERIAL COLLEGE LONDON + + EE 3.19: Real Time Digital Signal Processing + Dr Paul Mitcheson and Daniel Harvey + + LAB 1: Getting Started with the TI C6x DSP + + ********* V O L U M E . C ********** + + Part of the volume example. Demonstrates connecting the DSK + to sinewave data stored on the host PC. + Sinewave is then processed by increasing its gain. + Additionally demonstrates calling an assembly routine from C. + ************************************************************************************* + Updated for use on 6713 DSK by Danny Harvey: May-Aug 2006 + ************************************************************************************/ +/* "@(#) DSP/BIOS 4.90.270 01-08-04 (bios,dsk6713-c04)" */ + +/************************************ Includes **************************************/ +#include <stdio.h> + +#include "volume.h" + +/******************************* Global declarations ********************************/ +// note: for see volume.h for initialisaton of BUFSIZE, MINGAIN and BASELOAD +// and defintion of PARMS + +int inp_buffer[BUFSIZE]; // processing data buffers +int out_buffer[BUFSIZE]; +int gain = MINGAIN; // volume control variable +unsigned int processingLoad = BASELOAD; // processing routine load value + +struct PARMS str = // A structure of type PARMS is initialised. +{ // This struct is not used in the logic of + 2934, // the program, it is included to demonstrate + 9432, // how to use watch windows on structs. + 213, + 9432, + &str +}; + +/******************************* Function prototypes ********************************/ + +extern void load(unsigned int loadValue); +static int processing(int *input, int *output); +static void dataIO(void); + +/********************************** Main routine ************************************/ +void main() +{ + int *input = &inp_buffer[0]; // use pointers to point to first element in + int *output = &out_buffer[0]; // input and output buffers + + puts("volume example started\n"); // send a message to stdio + + // loop forever + while(TRUE) + { + // Read input data using a probe-point connected to a host file. + // Write output data to a graph connected through a probe-point. + + dataIO(); + + #ifdef FILEIO + puts("begin processing") /****** deliberate syntax error ******/ + #endif + + // process signal held in input buffer array (apply gain) + // result is returned to output buffer array + processing(input, output); + } +} + +/*************************** Function Implementations *******************************/ + +/********************************** Processing() ************************************/ +static int processing(int *input, int *output) +{ + int size = BUFSIZE; + + /* loop through length of input array mutiplying by gain. Put the result in + the output array. */ + while(size--){ + *output++ = *input++ * gain; + } + + // apply additional processing load by calling assembly function load() + load(processingLoad); + + return(TRUE); +} + + +/************************************ dataIO() **************************************/ +static void dataIO() +{ + /* This function does nothing but return. Is is used so a probepoint can be + inserted to do data I/O */ + + return; +} + diff --git a/lab1/RTDSP/volume.cmd b/lab1/RTDSP/volume.cmd new file mode 100644 index 0000000..ed305ad --- /dev/null +++ b/lab1/RTDSP/volume.cmd @@ -0,0 +1,30 @@ +/* + * Copyright 2001 by Texas Instruments Incorporated. + * All rights reserved. Property of Texas Instruments Incorporated. + * Restricted rights to use, duplicate or disclose this code are + * granted through contract. + */ +/* + * ======== volume.cmd ======== + * + */ + + +MEMORY +{ + ISRAM : origin = 0x0, len = 0x100000 +} + +SECTIONS +{ + .vectors > ISRAM + .text > ISRAM + + .bss > ISRAM + .cinit > ISRAM + .const > ISRAM + .far > ISRAM + .stack > ISRAM + .cio > ISRAM + .sysmem > ISRAM +} diff --git a/lab1/RTDSP/volume.h b/lab1/RTDSP/volume.h new file mode 100644 index 0000000..c70ae5d --- /dev/null +++ b/lab1/RTDSP/volume.h @@ -0,0 +1,41 @@ +/* + * Copyright 2003 by Texas Instruments Incorporated. + * All rights reserved. Property of Texas Instruments Incorporated. + * Restricted rights to use, duplicate or disclose this code are + * granted through contract. + * + */ +/* "@(#) DSP/BIOS 4.90.270 01-08-04 (bios,dsk6713-c04)" */ +/* + * ======== volume.h ======== + * + */ + +#ifndef __VOLUME_H +#define __VOLUME_H + +#ifndef TRUE +#define TRUE 1 +#endif + +#define BUFSIZE 0x64 + +#define FRAMESPERBUFFER 10 + +#define MINGAIN 1 +#define MAXGAIN 10 + +#define MINCONTROL 0 +#define MAXCONTROL 19 + +#define BASELOAD 1 + +struct PARMS { + int Beta; + int EchoPower; + int ErrorPower; + int Ratio; + struct PARMS *Link; +}; + +#endif /* __VOLUME_H */ |