Created Makefile to build entire project and moved microblaze code back into the repo
This commit is contained in:
parent
afd4ba4fe4
commit
637dfa2c07
12
.gitignore
vendored
12
.gitignore
vendored
|
@ -1,5 +1,3 @@
|
|||
*.log
|
||||
|
||||
# Created by https://www.toptal.com/developers/gitignore/api/xilinxise
|
||||
# Edit at https://www.toptal.com/developers/gitignore?templates=xilinxise
|
||||
|
||||
|
@ -74,3 +72,13 @@ _xmsgs/
|
|||
|
||||
# End of https://www.toptal.com/developers/gitignore/api/xilinxise
|
||||
|
||||
*.log
|
||||
syn/*
|
||||
!syn/main.prj
|
||||
!syn/main.ut
|
||||
!syn/main.xst
|
||||
|
||||
mb/*.elf
|
||||
mb/*.d
|
||||
mb/*.o
|
||||
mb/Graphics_bsp/microblaze_mcs
|
||||
|
|
28
Makefile
Normal file
28
Makefile
Normal file
|
@ -0,0 +1,28 @@
|
|||
all: syn/main.bin
|
||||
|
||||
syn/main.bin: syn/main.ncd mb/Graphics/Release/Graphics.elf
|
||||
@cd syn && bitgen -intstyle ise -f main.ut main.ncd
|
||||
|
||||
syn/main.ncd: syn/main.prj syn/main.xst src/*.v ipcore_dir/*.v syn/xst/projnav.tmp/
|
||||
@cd syn && xst -intstyle ise -ifn "main.xst" -ofn "main.syr"
|
||||
@cd syn && ngdbuild -intstyle ise -dd _ngo -sd ../ipcore_dir -nt timestamp -i -p xc6slx9-tqg144-2 main.ngc main.ngd -bm "../ipcore_dir/microblaze_mcs.bmm"
|
||||
@cd syn && map -intstyle ise -p xc6slx9-tqg144-2 -w -logic_opt off -ol high -t 1 -xt 0 -register_duplication off -r 4 -global_opt off -mt off -ir off -pr off -lc off -power off -o main_map.ncd main.ngd main.pcf
|
||||
@cd syn && par -w -intstyle ise -ol high -mt off main_map.ncd main.ncd main.pcf
|
||||
@cd syn && trce -intstyle ise -v 3 -s 2 -n 3 -fastpaths -xml main.twx main.ncd -o main.twr main.pcf
|
||||
|
||||
syn/xst/projnav.tmp/:
|
||||
@mkdir -p syn/xst/projnav.tmp
|
||||
|
||||
mb/Graphics/Release/Graphics.elf: mb
|
||||
@echo
|
||||
|
||||
.PHONY: mb
|
||||
mb:
|
||||
@$(MAKE) -C mb/Graphics_bsp all
|
||||
@$(MAKE) -C mb/Graphics/Release all
|
||||
|
||||
.PHONY: clean
|
||||
clean:
|
||||
@cd syn && find . ! -name 'main.prj' ! -name 'main.ut' ! -name 'main.xst' ! -name 'Makefile' ! -name '.' -exec rm -rf {} +
|
||||
@$(MAKE) -C mb/Graphics_bsp clean
|
||||
@$(MAKE) -C mb/Graphics/Release clean
|
17
cmds.sh
Executable file
17
cmds.sh
Executable file
|
@ -0,0 +1,17 @@
|
|||
#!/bin/bash
|
||||
|
||||
# @todo We need to figure out the dependecies and turn this into a Makefile
|
||||
|
||||
# mkdir -p xst/projnav.tmp && \
|
||||
|
||||
# xst -intstyle ise -ifn "/home/tim/Projects/z80/hdmi/syn/main.xst" -ofn "/home/tim/Projects/z80/hdmi/syn/main.syr"
|
||||
#
|
||||
# ngdbuild -intstyle ise -dd _ngo -sd ../ipcore_dir -nt timestamp -i -p xc6slx9-tqg144-2 main.ngc main.ngd -bm "../ipcore_dir/microblaze_mcs.bmm"
|
||||
#
|
||||
# map -intstyle ise -p xc6slx9-tqg144-2 -w -logic_opt off -ol high -t 1 -xt 0 -register_duplication off -r 4 -global_opt off -mt off -ir off -pr off -lc off -power off -o main_map.ncd main.ngd main.pcf
|
||||
#
|
||||
# par -w -intstyle ise -ol high -mt off main_map.ncd main.ncd main.pcf
|
||||
#
|
||||
# trce -intstyle ise -v 3 -s 2 -n 3 -fastpaths -xml main.twx main.ncd -o main.twr main.pcf
|
||||
|
||||
bitgen -intstyle ise -f main.ut main.ncd
|
240
mb/Graphics/.cproject
Normal file
240
mb/Graphics/.cproject
Normal file
|
@ -0,0 +1,240 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<?fileVersion 4.0.0?>
|
||||
|
||||
<cproject storage_type_id="org.eclipse.cdt.core.XmlProjectDescriptionStorage">
|
||||
<storageModule moduleId="org.eclipse.cdt.core.settings">
|
||||
<cconfiguration id="xilinx.gnu.mb.exe.debug.32422249">
|
||||
<storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="xilinx.gnu.mb.exe.debug.32422249" moduleId="org.eclipse.cdt.core.settings" name="Debug">
|
||||
<externalSettings/>
|
||||
<extensions>
|
||||
<extension id="com.xilinx.sdk.managedbuilder.XELF.mb" point="org.eclipse.cdt.core.BinaryParser"/>
|
||||
<extension id="org.eclipse.cdt.core.GmakeErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
|
||||
<extension id="org.eclipse.cdt.core.CWDLocator" point="org.eclipse.cdt.core.ErrorParser"/>
|
||||
<extension id="org.eclipse.cdt.core.GCCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
|
||||
<extension id="org.eclipse.cdt.core.GASErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
|
||||
<extension id="org.eclipse.cdt.core.GLDErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
|
||||
</extensions>
|
||||
</storageModule>
|
||||
<storageModule moduleId="cdtBuildSystem" version="4.0.0">
|
||||
<configuration artifactExtension="elf" artifactName="${ProjName}" buildArtefactType="org.eclipse.cdt.build.core.buildArtefactType.exe" buildProperties="org.eclipse.cdt.build.core.buildType=org.eclipse.cdt.build.core.buildType.debug,org.eclipse.cdt.build.core.buildArtefactType=org.eclipse.cdt.build.core.buildArtefactType.exe" cleanCommand="rm -rf" description="" id="xilinx.gnu.mb.exe.debug.32422249" name="Debug" parent="xilinx.gnu.mb.exe.debug">
|
||||
<folderInfo id="xilinx.gnu.mb.exe.debug.32422249." name="/" resourcePath="">
|
||||
<toolChain id="xilinx.gnu.mb.exe.debug.toolchain.1375698673" name="Xilinx MicroBlaze GNU Toolchain" superClass="xilinx.gnu.mb.exe.debug.toolchain">
|
||||
<targetPlatform binaryParser="com.xilinx.sdk.managedbuilder.XELF.mb" id="xilinx.mb.target.gnu.base.debug.635252805" isAbstract="false" name="Debug Platform" superClass="xilinx.mb.target.gnu.base.debug"/>
|
||||
<builder buildPath="${workspace_loc:/LED_Controller}/Debug" enableAutoBuild="true" id="xilinx.gnu.mb.toolchain.builder.debug.1343314410" keepEnvironmentInBuildfile="false" managedBuildOn="true" name="GNU make" superClass="xilinx.gnu.mb.toolchain.builder.debug"/>
|
||||
<tool id="xilinx.gnu.mb.c.toolchain.assembler.debug.503356807" name="MicroBlaze gcc assembler" superClass="xilinx.gnu.mb.c.toolchain.assembler.debug">
|
||||
<option id="xilinx.gnu.mb.assembler.usele.1562834598" name="Produce little endian code (-mlittle-endian)" superClass="xilinx.gnu.mb.assembler.usele" value="true" valueType="boolean"/>
|
||||
<inputType id="xilinx.gnu.assembler.input.1469822917" superClass="xilinx.gnu.assembler.input"/>
|
||||
</tool>
|
||||
<tool id="xilinx.gnu.mb.c.toolchain.compiler.debug.1526133289" name="MicroBlaze gcc compiler" superClass="xilinx.gnu.mb.c.toolchain.compiler.debug">
|
||||
<option defaultValue="gnu.c.optimization.level.none" id="xilinx.gnu.compiler.option.optimization.level.1835142212" name="Optimization Level" superClass="xilinx.gnu.compiler.option.optimization.level" valueType="enumerated"/>
|
||||
<option id="xilinx.gnu.compiler.option.debugging.level.1356500802" name="Debug Level" superClass="xilinx.gnu.compiler.option.debugging.level" value="gnu.c.debugging.level.max" valueType="enumerated"/>
|
||||
<option id="xilinx.gnu.mb.compiler.inferred.mbversion.914884122" name="MicroBlaze Version" superClass="xilinx.gnu.mb.compiler.inferred.mbversion" value="8.40.a" valueType="string"/>
|
||||
<option id="xilinx.gnu.mb.compiler.inferred.norelax.52376722" name="No relaxation (-Wl,--no-relax)" superClass="xilinx.gnu.mb.compiler.inferred.norelax" value="true" valueType="boolean"/>
|
||||
<option id="xilinx.gnu.mb.compiler.inferred.garbage.1896975486" name="Enable garbage collector (-ffunction-sections -fdata-sections)" superClass="xilinx.gnu.mb.compiler.inferred.garbage" value="true" valueType="boolean"/>
|
||||
<option id="xilinx.gnu.mb.compiler.inferred.usereorderinstr.875088264" name="Do not generate swap instruction (-mno-xl-reorder)" superClass="xilinx.gnu.mb.compiler.inferred.usereorderinstr" value="true" valueType="boolean"/>
|
||||
<option id="xilinx.gnu.mb.compiler.inferred.usele.1837548138" name="Produce little endian code (-mlittle-endian)" superClass="xilinx.gnu.mb.compiler.inferred.usele" value="true" valueType="boolean"/>
|
||||
<option id="xilinx.gnu.compiler.inferred.swplatform.includes.1172561642" name="Software Platform Include Path" superClass="xilinx.gnu.compiler.inferred.swplatform.includes" valueType="includePath">
|
||||
<listOptionValue builtIn="false" value="../../LED_Controller_bsp/microblaze_mcs/include"/>
|
||||
</option>
|
||||
<inputType id="xilinx.gnu.compiler.input.123140396" name="C source files" superClass="xilinx.gnu.compiler.input"/>
|
||||
</tool>
|
||||
<tool id="xilinx.gnu.mb.cxx.toolchain.compiler.debug.2077065818" name="MicroBlaze g++ compiler" superClass="xilinx.gnu.mb.cxx.toolchain.compiler.debug">
|
||||
<option defaultValue="gnu.c.optimization.level.none" id="xilinx.gnu.compiler.option.optimization.level.908233026" name="Optimization Level" superClass="xilinx.gnu.compiler.option.optimization.level" valueType="enumerated"/>
|
||||
<option id="xilinx.gnu.compiler.option.debugging.level.280737520" name="Debug Level" superClass="xilinx.gnu.compiler.option.debugging.level" value="gnu.c.debugging.level.max" valueType="enumerated"/>
|
||||
<option id="xilinx.gnu.mb.compiler.inferred.mbversion.1212260747" name="MicroBlaze Version" superClass="xilinx.gnu.mb.compiler.inferred.mbversion" value="8.40.a" valueType="string"/>
|
||||
<option id="xilinx.gnu.mb.compiler.inferred.norelax.1640436207" name="No relaxation (-Wl,--no-relax)" superClass="xilinx.gnu.mb.compiler.inferred.norelax" value="true" valueType="boolean"/>
|
||||
<option id="xilinx.gnu.mb.compiler.inferred.garbage.2061687527" name="Enable garbage collector (-ffunction-sections -fdata-sections)" superClass="xilinx.gnu.mb.compiler.inferred.garbage" value="true" valueType="boolean"/>
|
||||
<option id="xilinx.gnu.mb.compiler.inferred.usereorderinstr.389025365" name="Do not generate swap instruction (-mno-xl-reorder)" superClass="xilinx.gnu.mb.compiler.inferred.usereorderinstr" value="true" valueType="boolean"/>
|
||||
<option id="xilinx.gnu.mb.compiler.inferred.usele.1948932767" name="Produce little endian code (-mlittle-endian)" superClass="xilinx.gnu.mb.compiler.inferred.usele" value="true" valueType="boolean"/>
|
||||
<option id="xilinx.gnu.compiler.inferred.swplatform.includes.595986724" name="Software Platform Include Path" superClass="xilinx.gnu.compiler.inferred.swplatform.includes" valueType="includePath">
|
||||
<listOptionValue builtIn="false" value="../../LED_Controller_bsp/microblaze_mcs/include"/>
|
||||
</option>
|
||||
</tool>
|
||||
<tool id="xilinx.gnu.mb.toolchain.archiver.967447973" name="MicroBlaze archiver" superClass="xilinx.gnu.mb.toolchain.archiver"/>
|
||||
<tool id="xilinx.gnu.mb.c.toolchain.linker.debug.963016491" name="MicroBlaze gcc linker" superClass="xilinx.gnu.mb.c.toolchain.linker.debug">
|
||||
<option id="xilinx.gnu.mb.linker.inferred.mbversion.1652636264" name="MicroBlaze Version" superClass="xilinx.gnu.mb.linker.inferred.mbversion" value="8.40.a" valueType="string"/>
|
||||
<option id="xilinx.gnu.mb.linker.inferred.norelax.291715080" name="No relaxation (-Wl,--no-relax)" superClass="xilinx.gnu.mb.linker.inferred.norelax" value="true" valueType="boolean"/>
|
||||
<option id="xilinx.gnu.mb.linker.inferred.garbage.1810357269" name="Enable garbage collector (-Wl,--gc-sections)" superClass="xilinx.gnu.mb.linker.inferred.garbage" value="true" valueType="boolean"/>
|
||||
<option id="xilinx.gnu.mb.linker.inferred.usele.910553568" name="Produce little endian artifacts (-mlittle-endian)" superClass="xilinx.gnu.mb.linker.inferred.usele" value="true" valueType="boolean"/>
|
||||
<option id="xilinx.gnu.linker.inferred.swplatform.lpath.1385167435" name="Software Platform Library Path" superClass="xilinx.gnu.linker.inferred.swplatform.lpath" valueType="libPaths">
|
||||
<listOptionValue builtIn="false" value="../../LED_Controller_bsp/microblaze_mcs/lib"/>
|
||||
</option>
|
||||
<option id="xilinx.gnu.linker.inferred.swplatform.flags.791742306" name="Software Platform Inferred Flags" superClass="xilinx.gnu.linker.inferred.swplatform.flags" valueType="libs">
|
||||
<listOptionValue builtIn="false" value="-Wl,--start-group,-lxil,-lgcc,-lc,--end-group"/>
|
||||
</option>
|
||||
<option id="xilinx.gnu.c.linker.option.lscript.858564754" name="Linker Script" superClass="xilinx.gnu.c.linker.option.lscript" value="../src/lscript.ld" valueType="string"/>
|
||||
<inputType id="xilinx.gnu.linker.input.854736909" superClass="xilinx.gnu.linker.input">
|
||||
<additionalInput kind="additionalinputdependency" paths="$(USER_OBJS)"/>
|
||||
<additionalInput kind="additionalinput" paths="$(LIBS)"/>
|
||||
</inputType>
|
||||
<inputType id="xilinx.gnu.linker.input.lscript.1978361477" name="Linker Script" superClass="xilinx.gnu.linker.input.lscript"/>
|
||||
</tool>
|
||||
<tool id="xilinx.gnu.mb.cxx.toolchain.linker.debug.2014002494" name="MicroBlaze g++ linker" superClass="xilinx.gnu.mb.cxx.toolchain.linker.debug">
|
||||
<option id="xilinx.gnu.mb.linker.inferred.mbversion.33804120" name="MicroBlaze Version" superClass="xilinx.gnu.mb.linker.inferred.mbversion" value="8.40.a" valueType="string"/>
|
||||
<option id="xilinx.gnu.mb.linker.inferred.norelax.1847387590" name="No relaxation (-Wl,--no-relax)" superClass="xilinx.gnu.mb.linker.inferred.norelax" value="true" valueType="boolean"/>
|
||||
<option id="xilinx.gnu.mb.linker.inferred.garbage.290786884" name="Enable garbage collector (-Wl,--gc-sections)" superClass="xilinx.gnu.mb.linker.inferred.garbage" value="true" valueType="boolean"/>
|
||||
<option id="xilinx.gnu.mb.linker.inferred.usele.1146495724" name="Produce little endian artifacts (-mlittle-endian)" superClass="xilinx.gnu.mb.linker.inferred.usele" value="true" valueType="boolean"/>
|
||||
<option id="xilinx.gnu.linker.inferred.swplatform.lpath.890324418" name="Software Platform Library Path" superClass="xilinx.gnu.linker.inferred.swplatform.lpath" valueType="libPaths">
|
||||
<listOptionValue builtIn="false" value="../../LED_Controller_bsp/microblaze_mcs/lib"/>
|
||||
</option>
|
||||
<option id="xilinx.gnu.linker.inferred.swplatform.flags.98455404" name="Software Platform Inferred Flags" superClass="xilinx.gnu.linker.inferred.swplatform.flags" valueType="libs">
|
||||
<listOptionValue builtIn="false" value="-Wl,--start-group,-lxil,-lgcc,-lc,--end-group"/>
|
||||
</option>
|
||||
<option id="xilinx.gnu.c.linker.option.lscript.1672752145" name="Linker Script" superClass="xilinx.gnu.c.linker.option.lscript" value="../src/lscript.ld" valueType="string"/>
|
||||
</tool>
|
||||
<tool id="xilinx.gnu.mb.size.debug.1827824083" name="MicroBlaze Print Size" superClass="xilinx.gnu.mb.size.debug"/>
|
||||
<tool id="xilinx.elfcheck.mb.debug.497589591" name="Xilinx ELF Check" superClass="xilinx.elfcheck.mb.debug">
|
||||
<option id="xilinx.elfcheck.option.hwspec.1225865245" name="Hardware Specification" superClass="xilinx.elfcheck.option.hwspec" value="-hw ../../micro_test/system.xml" valueType="string"/>
|
||||
<option id="xilinx.elfcheck.option.procname.449983111" name="Processor Name" superClass="xilinx.elfcheck.option.procname" value="-pe microblaze_mcs" valueType="string"/>
|
||||
</tool>
|
||||
</toolChain>
|
||||
</folderInfo>
|
||||
<fileInfo id="xilinx.gnu.mb.exe.debug.32422249.1916704164" name="LEDBlinker.c" rcbsApplicability="disable" resourcePath="src/main.c" toolsToInvoke="xilinx.gnu.mb.c.toolchain.compiler.debug.1526133289.453942197">
|
||||
<tool id="xilinx.gnu.mb.c.toolchain.compiler.debug.1526133289.453942197" name="MicroBlaze gcc compiler" superClass="xilinx.gnu.mb.c.toolchain.compiler.debug.1526133289">
|
||||
<option id="xilinx.gnu.compiler.option.optimization.level.1794496476" name="Optimization Level" superClass="xilinx.gnu.compiler.option.optimization.level" value="gnu.c.optimization.level.none" valueType="enumerated"/>
|
||||
<option id="xilinx.gnu.compiler.option.debugging.level.1148078725" name="Debug Level" superClass="xilinx.gnu.compiler.option.debugging.level" value="gnu.c.debugging.level.max" valueType="enumerated"/>
|
||||
<inputType id="xilinx.gnu.compiler.input.1228398252" name="C source files" superClass="xilinx.gnu.compiler.input"/>
|
||||
</tool>
|
||||
<tool customBuildStep="true" id="org.eclipse.cdt.managedbuilder.ui.rcbs.704915466" name="Resource Custom Build Step">
|
||||
<inputType id="org.eclipse.cdt.managedbuilder.ui.rcbs.inputtype.1136256196" name="Resource Custom Build Step Input Type">
|
||||
<additionalInput kind="additionalinputdependency" paths=""/>
|
||||
</inputType>
|
||||
<outputType id="org.eclipse.cdt.managedbuilder.ui.rcbs.outputtype.1542489465" name="Resource Custom Build Step Output Type"/>
|
||||
</tool>
|
||||
</fileInfo>
|
||||
</configuration>
|
||||
</storageModule>
|
||||
<storageModule moduleId="org.eclipse.cdt.core.externalSettings"/>
|
||||
</cconfiguration>
|
||||
<cconfiguration id="xilinx.gnu.mb.exe.release.1608365019">
|
||||
<storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="xilinx.gnu.mb.exe.release.1608365019" moduleId="org.eclipse.cdt.core.settings" name="Release">
|
||||
<externalSettings/>
|
||||
<extensions>
|
||||
<extension id="com.xilinx.sdk.managedbuilder.XELF.mb" point="org.eclipse.cdt.core.BinaryParser"/>
|
||||
<extension id="org.eclipse.cdt.core.GmakeErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
|
||||
<extension id="org.eclipse.cdt.core.CWDLocator" point="org.eclipse.cdt.core.ErrorParser"/>
|
||||
<extension id="org.eclipse.cdt.core.GCCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
|
||||
<extension id="org.eclipse.cdt.core.GASErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
|
||||
<extension id="org.eclipse.cdt.core.GLDErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
|
||||
</extensions>
|
||||
</storageModule>
|
||||
<storageModule moduleId="cdtBuildSystem" version="4.0.0">
|
||||
<configuration artifactExtension="elf" artifactName="${ProjName}" buildArtefactType="org.eclipse.cdt.build.core.buildArtefactType.exe" buildProperties="org.eclipse.cdt.build.core.buildType=org.eclipse.cdt.build.core.buildType.release,org.eclipse.cdt.build.core.buildArtefactType=org.eclipse.cdt.build.core.buildArtefactType.exe" cleanCommand="rm -rf" description="" id="xilinx.gnu.mb.exe.release.1608365019" name="Release" parent="xilinx.gnu.mb.exe.release">
|
||||
<folderInfo id="xilinx.gnu.mb.exe.release.1608365019." name="/" resourcePath="">
|
||||
<toolChain id="xilinx.gnu.mb.exe.release.toolchain.449620394" name="Xilinx MicroBlaze GNU Toolchain" superClass="xilinx.gnu.mb.exe.release.toolchain">
|
||||
<targetPlatform binaryParser="com.xilinx.sdk.managedbuilder.XELF.mb" id="xilinx.mb.target.gnu.base.release.1888229225" isAbstract="false" name="Debug Platform" superClass="xilinx.mb.target.gnu.base.release"/>
|
||||
<builder buildPath="${workspace_loc:/LED_Controller}/Release" enableAutoBuild="true" id="xilinx.gnu.mb.toolchain.builder.release.1875113617" keepEnvironmentInBuildfile="false" managedBuildOn="true" name="GNU make" superClass="xilinx.gnu.mb.toolchain.builder.release"/>
|
||||
<tool id="xilinx.gnu.mb.c.toolchain.assembler.release.1529446162" name="MicroBlaze gcc assembler" superClass="xilinx.gnu.mb.c.toolchain.assembler.release">
|
||||
<option id="xilinx.gnu.mb.assembler.usele.554266772" name="Produce little endian code (-mlittle-endian)" superClass="xilinx.gnu.mb.assembler.usele" value="true" valueType="boolean"/>
|
||||
<inputType id="xilinx.gnu.assembler.input.95302604" superClass="xilinx.gnu.assembler.input"/>
|
||||
</tool>
|
||||
<tool id="xilinx.gnu.mb.c.toolchain.compiler.release.1363891138" name="MicroBlaze gcc compiler" superClass="xilinx.gnu.mb.c.toolchain.compiler.release">
|
||||
<option defaultValue="gnu.c.optimization.level.more" id="xilinx.gnu.compiler.option.optimization.level.615692965" name="Optimization Level" superClass="xilinx.gnu.compiler.option.optimization.level" valueType="enumerated"/>
|
||||
<option id="xilinx.gnu.compiler.option.debugging.level.1141200274" name="Debug Level" superClass="xilinx.gnu.compiler.option.debugging.level" value="gnu.c.debugging.level.none" valueType="enumerated"/>
|
||||
<option id="xilinx.gnu.mb.compiler.inferred.mbversion.1868482011" name="MicroBlaze Version" superClass="xilinx.gnu.mb.compiler.inferred.mbversion" value="8.40.a" valueType="string"/>
|
||||
<option id="xilinx.gnu.mb.compiler.inferred.norelax.820260484" name="No relaxation (-Wl,--no-relax)" superClass="xilinx.gnu.mb.compiler.inferred.norelax" value="true" valueType="boolean"/>
|
||||
<option id="xilinx.gnu.mb.compiler.inferred.garbage.1460990105" name="Enable garbage collector (-ffunction-sections -fdata-sections)" superClass="xilinx.gnu.mb.compiler.inferred.garbage" value="true" valueType="boolean"/>
|
||||
<option id="xilinx.gnu.mb.compiler.inferred.usereorderinstr.455386622" name="Do not generate swap instruction (-mno-xl-reorder)" superClass="xilinx.gnu.mb.compiler.inferred.usereorderinstr" value="true" valueType="boolean"/>
|
||||
<option id="xilinx.gnu.mb.compiler.inferred.usele.1967045225" name="Produce little endian code (-mlittle-endian)" superClass="xilinx.gnu.mb.compiler.inferred.usele" value="true" valueType="boolean"/>
|
||||
<option id="xilinx.gnu.compiler.inferred.swplatform.includes.77040399" name="Software Platform Include Path" superClass="xilinx.gnu.compiler.inferred.swplatform.includes" valueType="includePath"/>
|
||||
<option id="xilinx.gnu.compiler.dircategory.includes.589461403" superClass="xilinx.gnu.compiler.dircategory.includes" valueType="includePath">
|
||||
<listOptionValue builtIn="false" value="../../Graphics_bsp/microblaze_mcs/include"/>
|
||||
</option>
|
||||
<inputType id="xilinx.gnu.compiler.input.1952219906" name="C source files" superClass="xilinx.gnu.compiler.input"/>
|
||||
</tool>
|
||||
<tool id="xilinx.gnu.mb.cxx.toolchain.compiler.release.623808407" name="MicroBlaze g++ compiler" superClass="xilinx.gnu.mb.cxx.toolchain.compiler.release">
|
||||
<option defaultValue="gnu.c.optimization.level.more" id="xilinx.gnu.compiler.option.optimization.level.1059716585" name="Optimization Level" superClass="xilinx.gnu.compiler.option.optimization.level" valueType="enumerated"/>
|
||||
<option id="xilinx.gnu.compiler.option.debugging.level.1384873606" name="Debug Level" superClass="xilinx.gnu.compiler.option.debugging.level" value="gnu.c.debugging.level.none" valueType="enumerated"/>
|
||||
<option id="xilinx.gnu.mb.compiler.inferred.mbversion.1539951458" name="MicroBlaze Version" superClass="xilinx.gnu.mb.compiler.inferred.mbversion" value="8.40.a" valueType="string"/>
|
||||
<option id="xilinx.gnu.mb.compiler.inferred.norelax.1392641229" name="No relaxation (-Wl,--no-relax)" superClass="xilinx.gnu.mb.compiler.inferred.norelax" value="true" valueType="boolean"/>
|
||||
<option id="xilinx.gnu.mb.compiler.inferred.garbage.1076631497" name="Enable garbage collector (-ffunction-sections -fdata-sections)" superClass="xilinx.gnu.mb.compiler.inferred.garbage" value="true" valueType="boolean"/>
|
||||
<option id="xilinx.gnu.mb.compiler.inferred.usereorderinstr.1515351481" name="Do not generate swap instruction (-mno-xl-reorder)" superClass="xilinx.gnu.mb.compiler.inferred.usereorderinstr" value="true" valueType="boolean"/>
|
||||
<option id="xilinx.gnu.mb.compiler.inferred.usele.2115074973" name="Produce little endian code (-mlittle-endian)" superClass="xilinx.gnu.mb.compiler.inferred.usele" value="true" valueType="boolean"/>
|
||||
<option id="xilinx.gnu.compiler.inferred.swplatform.includes.1952383387" name="Software Platform Include Path" superClass="xilinx.gnu.compiler.inferred.swplatform.includes" valueType="includePath">
|
||||
<listOptionValue builtIn="false" value="../../LED_Controller_bsp/microblaze_mcs/include"/>
|
||||
</option>
|
||||
</tool>
|
||||
<tool id="xilinx.gnu.mb.toolchain.archiver.728941664" name="MicroBlaze archiver" superClass="xilinx.gnu.mb.toolchain.archiver"/>
|
||||
<tool id="xilinx.gnu.mb.c.toolchain.linker.release.948464890" name="MicroBlaze gcc linker" superClass="xilinx.gnu.mb.c.toolchain.linker.release">
|
||||
<option id="xilinx.gnu.mb.linker.inferred.mbversion.1056503606" name="MicroBlaze Version" superClass="xilinx.gnu.mb.linker.inferred.mbversion" value="8.40.a" valueType="string"/>
|
||||
<option id="xilinx.gnu.mb.linker.inferred.norelax.992825498" name="No relaxation (-Wl,--no-relax)" superClass="xilinx.gnu.mb.linker.inferred.norelax" value="true" valueType="boolean"/>
|
||||
<option id="xilinx.gnu.mb.linker.inferred.garbage.766761108" name="Enable garbage collector (-Wl,--gc-sections)" superClass="xilinx.gnu.mb.linker.inferred.garbage" value="true" valueType="boolean"/>
|
||||
<option id="xilinx.gnu.mb.linker.inferred.usele.2105793741" name="Produce little endian artifacts (-mlittle-endian)" superClass="xilinx.gnu.mb.linker.inferred.usele" value="true" valueType="boolean"/>
|
||||
<option id="xilinx.gnu.linker.inferred.swplatform.lpath.2092727466" name="Software Platform Library Path" superClass="xilinx.gnu.linker.inferred.swplatform.lpath" valueType="libPaths">
|
||||
<listOptionValue builtIn="false" value="../../Graphics_bsp/microblaze_mcs/lib"/>
|
||||
</option>
|
||||
<option id="xilinx.gnu.linker.inferred.swplatform.flags.1046055029" name="Software Platform Inferred Flags" superClass="xilinx.gnu.linker.inferred.swplatform.flags" valueType="libs">
|
||||
<listOptionValue builtIn="false" value="-Wl,--start-group,-lxil,-lgcc,-lc,--end-group"/>
|
||||
</option>
|
||||
<option id="xilinx.gnu.c.linker.option.lscript.490239218" name="Linker Script" superClass="xilinx.gnu.c.linker.option.lscript" value="../src/lscript.ld" valueType="string"/>
|
||||
<inputType id="xilinx.gnu.linker.input.852448180" superClass="xilinx.gnu.linker.input">
|
||||
<additionalInput kind="additionalinputdependency" paths="$(USER_OBJS)"/>
|
||||
<additionalInput kind="additionalinput" paths="$(LIBS)"/>
|
||||
</inputType>
|
||||
<inputType id="xilinx.gnu.linker.input.lscript.2132181401" name="Linker Script" superClass="xilinx.gnu.linker.input.lscript"/>
|
||||
</tool>
|
||||
<tool id="xilinx.gnu.mb.cxx.toolchain.linker.release.219817069" name="MicroBlaze g++ linker" superClass="xilinx.gnu.mb.cxx.toolchain.linker.release">
|
||||
<option id="xilinx.gnu.mb.linker.inferred.mbversion.752564044" name="MicroBlaze Version" superClass="xilinx.gnu.mb.linker.inferred.mbversion" value="8.40.a" valueType="string"/>
|
||||
<option id="xilinx.gnu.mb.linker.inferred.norelax.1453655971" name="No relaxation (-Wl,--no-relax)" superClass="xilinx.gnu.mb.linker.inferred.norelax" value="true" valueType="boolean"/>
|
||||
<option id="xilinx.gnu.mb.linker.inferred.garbage.322858624" name="Enable garbage collector (-Wl,--gc-sections)" superClass="xilinx.gnu.mb.linker.inferred.garbage" value="true" valueType="boolean"/>
|
||||
<option id="xilinx.gnu.mb.linker.inferred.usele.450196390" name="Produce little endian artifacts (-mlittle-endian)" superClass="xilinx.gnu.mb.linker.inferred.usele" value="true" valueType="boolean"/>
|
||||
<option id="xilinx.gnu.linker.inferred.swplatform.lpath.2010027756" name="Software Platform Library Path" superClass="xilinx.gnu.linker.inferred.swplatform.lpath" valueType="libPaths">
|
||||
<listOptionValue builtIn="false" value="../../LED_Controller_bsp/microblaze_mcs/lib"/>
|
||||
</option>
|
||||
<option id="xilinx.gnu.linker.inferred.swplatform.flags.1404700792" name="Software Platform Inferred Flags" superClass="xilinx.gnu.linker.inferred.swplatform.flags" valueType="libs">
|
||||
<listOptionValue builtIn="false" value="-Wl,--start-group,-lxil,-lgcc,-lc,--end-group"/>
|
||||
</option>
|
||||
<option id="xilinx.gnu.c.linker.option.lscript.928875610" name="Linker Script" superClass="xilinx.gnu.c.linker.option.lscript" value="../src/lscript.ld" valueType="string"/>
|
||||
</tool>
|
||||
<tool id="xilinx.gnu.mb.size.release.805765542" name="MicroBlaze Print Size" superClass="xilinx.gnu.mb.size.release"/>
|
||||
<tool id="xilinx.elfcheck.mb.release.2093836222" name="Xilinx ELF Check" superClass="xilinx.elfcheck.mb.release">
|
||||
<option id="xilinx.elfcheck.option.hwspec.2044494070" name="Hardware Specification" superClass="xilinx.elfcheck.option.hwspec" value="-hw ../../hardware/system.xml" valueType="string"/>
|
||||
<option id="xilinx.elfcheck.option.procname.1521069396" name="Processor Name" superClass="xilinx.elfcheck.option.procname" value="-pe microblaze_mcs" valueType="string"/>
|
||||
</tool>
|
||||
</toolChain>
|
||||
</folderInfo>
|
||||
<fileInfo id="xilinx.gnu.mb.exe.release.1608365019.2101405724" name="LEDBlinker.c" rcbsApplicability="disable" resourcePath="src/main.c" toolsToInvoke="xilinx.gnu.mb.c.toolchain.compiler.release.1363891138.188090075">
|
||||
<tool id="xilinx.gnu.mb.c.toolchain.compiler.release.1363891138.188090075" name="MicroBlaze gcc compiler" superClass="xilinx.gnu.mb.c.toolchain.compiler.release.1363891138">
|
||||
<option id="xilinx.gnu.compiler.option.optimization.level.1242352644" name="Optimization Level" superClass="xilinx.gnu.compiler.option.optimization.level" value="gnu.c.optimization.level.most" valueType="enumerated"/>
|
||||
<inputType id="xilinx.gnu.compiler.input.1323965893" name="C source files" superClass="xilinx.gnu.compiler.input"/>
|
||||
</tool>
|
||||
<tool customBuildStep="true" id="org.eclipse.cdt.managedbuilder.ui.rcbs.941823551" name="Resource Custom Build Step">
|
||||
<inputType id="org.eclipse.cdt.managedbuilder.ui.rcbs.inputtype.1009935834" name="Resource Custom Build Step Input Type">
|
||||
<additionalInput kind="additionalinputdependency" paths=""/>
|
||||
</inputType>
|
||||
<outputType id="org.eclipse.cdt.managedbuilder.ui.rcbs.outputtype.1085365006" name="Resource Custom Build Step Output Type"/>
|
||||
</tool>
|
||||
</fileInfo>
|
||||
</configuration>
|
||||
</storageModule>
|
||||
<storageModule moduleId="org.eclipse.cdt.core.externalSettings"/>
|
||||
</cconfiguration>
|
||||
</storageModule>
|
||||
<storageModule moduleId="org.eclipse.cdt.core.LanguageSettingsProviders"/>
|
||||
<storageModule moduleId="cdtBuildSystem" version="4.0.0">
|
||||
<project id="LED_Controller.xilinx.gnu.mb.exe.1814969487" name="Xilinx MicroBlaze Executable" projectType="xilinx.gnu.mb.exe"/>
|
||||
</storageModule>
|
||||
<storageModule moduleId="refreshScope" versionNumber="2">
|
||||
<configuration configurationName="Release">
|
||||
<resource resourceType="PROJECT" workspacePath="/LED_Controller"/>
|
||||
</configuration>
|
||||
<configuration configurationName="Debug">
|
||||
<resource resourceType="PROJECT" workspacePath="/LED_Controller"/>
|
||||
</configuration>
|
||||
</storageModule>
|
||||
<storageModule moduleId="scannerConfiguration">
|
||||
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId=""/>
|
||||
<scannerConfigBuildInfo instanceId="xilinx.gnu.mb.exe.release.1608365019;xilinx.gnu.mb.exe.release.1608365019.;xilinx.gnu.mb.c.toolchain.compiler.release.1363891138;xilinx.gnu.compiler.input.1952219906">
|
||||
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="com.xilinx.managedbuilder.ui.MBGCCManagedMakePerProjectProfileC"/>
|
||||
</scannerConfigBuildInfo>
|
||||
<scannerConfigBuildInfo instanceId="xilinx.gnu.mb.exe.debug.32422249;xilinx.gnu.mb.exe.debug.32422249.;xilinx.gnu.mb.c.toolchain.compiler.debug.1526133289;xilinx.gnu.compiler.input.123140396">
|
||||
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="com.xilinx.managedbuilder.ui.MBGCCManagedMakePerProjectProfileC"/>
|
||||
</scannerConfigBuildInfo>
|
||||
<scannerConfigBuildInfo instanceId="xilinx.gnu.mb.exe.debug.32422249;xilinx.gnu.mb.exe.debug.32422249.">
|
||||
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="com.xilinx.managedbuilder.ui.MBGCCManagedMakePerProjectProfileC"/>
|
||||
</scannerConfigBuildInfo>
|
||||
<scannerConfigBuildInfo instanceId="xilinx.gnu.mb.exe.release.1608365019;xilinx.gnu.mb.exe.release.1608365019.">
|
||||
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="com.xilinx.managedbuilder.ui.MBGCCManagedMakePerProjectProfileC"/>
|
||||
</scannerConfigBuildInfo>
|
||||
</storageModule>
|
||||
</cproject>
|
26
mb/Graphics/.project
Normal file
26
mb/Graphics/.project
Normal file
|
@ -0,0 +1,26 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<projectDescription>
|
||||
<name>Graphics</name>
|
||||
<comment>LED_Controller_bsp - microblaze_mcs</comment>
|
||||
<projects>
|
||||
<project>LED_Controller_bsp</project>
|
||||
</projects>
|
||||
<buildSpec>
|
||||
<buildCommand>
|
||||
<name>org.eclipse.cdt.managedbuilder.core.genmakebuilder</name>
|
||||
<arguments>
|
||||
</arguments>
|
||||
</buildCommand>
|
||||
<buildCommand>
|
||||
<name>org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder</name>
|
||||
<triggers>full,incremental,</triggers>
|
||||
<arguments>
|
||||
</arguments>
|
||||
</buildCommand>
|
||||
</buildSpec>
|
||||
<natures>
|
||||
<nature>org.eclipse.cdt.core.cnature</nature>
|
||||
<nature>org.eclipse.cdt.managedbuilder.core.managedBuildNature</nature>
|
||||
<nature>org.eclipse.cdt.managedbuilder.core.ScannerConfigNature</nature>
|
||||
</natures>
|
||||
</projectDescription>
|
BIN
mb/Graphics/Release/Graphics.elf
Executable file
BIN
mb/Graphics/Release/Graphics.elf
Executable file
Binary file not shown.
65
mb/Graphics/Release/makefile
Normal file
65
mb/Graphics/Release/makefile
Normal file
|
@ -0,0 +1,65 @@
|
|||
################################################################################
|
||||
# Automatically-generated file. Do not edit!
|
||||
################################################################################
|
||||
|
||||
-include ../makefile.init
|
||||
|
||||
RM := rm -rf
|
||||
|
||||
# All of the sources participating in the build are defined here
|
||||
-include sources.mk
|
||||
-include src/subdir.mk
|
||||
-include subdir.mk
|
||||
-include objects.mk
|
||||
|
||||
ifneq ($(MAKECMDGOALS),clean)
|
||||
ifneq ($(strip $(C_DEPS)),)
|
||||
-include $(C_DEPS)
|
||||
endif
|
||||
ifneq ($(strip $(S_UPPER_DEPS)),)
|
||||
-include $(S_UPPER_DEPS)
|
||||
endif
|
||||
endif
|
||||
|
||||
-include ../makefile.defs
|
||||
|
||||
# Add inputs and outputs from these tool invocations to the build variables
|
||||
ELFSIZE += \
|
||||
|
||||
ELFCHECK += \
|
||||
|
||||
|
||||
# All Target
|
||||
all: Graphics.elf secondary-outputs
|
||||
|
||||
# Tool invocations
|
||||
Graphics.elf: $(OBJS) ../src/lscript.ld $(USER_OBJS)
|
||||
@echo 'Building target: $@'
|
||||
@echo 'Invoking: MicroBlaze gcc linker'
|
||||
mb-gcc -Wl,-T -Wl,../src/lscript.ld -L../../Graphics_bsp/microblaze_mcs/lib -mlittle-endian -mcpu=v8.40.a -mxl-soft-mul -Wl,--no-relax -Wl,--gc-sections -o "Graphics.elf" $(OBJS) $(USER_OBJS) $(LIBS)
|
||||
@echo 'Finished building target: $@'
|
||||
@echo ' '
|
||||
|
||||
Graphics.elf.size: Graphics.elf
|
||||
@echo 'Invoking: MicroBlaze Print Size'
|
||||
mb-size Graphics.elf |tee "Graphics.elf.size"
|
||||
@echo 'Finished building: $@'
|
||||
@echo ' '
|
||||
|
||||
Graphics.elf.elfcheck: Graphics.elf
|
||||
@echo 'Invoking: Xilinx ELF Check'
|
||||
elfcheck Graphics.elf -hw ../../hardware/system.xml -pe microblaze_mcs |tee "Graphics.elf.elfcheck"
|
||||
@echo 'Finished building: $@'
|
||||
@echo ' '
|
||||
|
||||
# Other Targets
|
||||
clean:
|
||||
-$(RM) $(OBJS)$(C_DEPS)$(EXECUTABLES)$(ELFSIZE)$(ELFCHECK)$(S_UPPER_DEPS) Graphics.elf
|
||||
-@echo ' '
|
||||
|
||||
secondary-outputs: $(ELFSIZE) $(ELFCHECK)
|
||||
|
||||
.PHONY: all clean dependents
|
||||
.SECONDARY:
|
||||
|
||||
-include ../makefile.targets
|
8
mb/Graphics/Release/objects.mk
Normal file
8
mb/Graphics/Release/objects.mk
Normal file
|
@ -0,0 +1,8 @@
|
|||
################################################################################
|
||||
# Automatically-generated file. Do not edit!
|
||||
################################################################################
|
||||
|
||||
USER_OBJS :=
|
||||
|
||||
LIBS := -Wl,--start-group,-lxil,-lgcc,-lc,--end-group
|
||||
|
21
mb/Graphics/Release/sources.mk
Normal file
21
mb/Graphics/Release/sources.mk
Normal file
|
@ -0,0 +1,21 @@
|
|||
################################################################################
|
||||
# Automatically-generated file. Do not edit!
|
||||
################################################################################
|
||||
|
||||
O_SRCS :=
|
||||
C_SRCS :=
|
||||
LD_SRCS :=
|
||||
S_UPPER_SRCS :=
|
||||
S_SRCS :=
|
||||
OBJ_SRCS :=
|
||||
OBJS :=
|
||||
C_DEPS :=
|
||||
EXECUTABLES :=
|
||||
ELFSIZE :=
|
||||
ELFCHECK :=
|
||||
S_UPPER_DEPS :=
|
||||
|
||||
# Every subdirectory with source files must be described here
|
||||
SUBDIRS := \
|
||||
src \
|
||||
|
25
mb/Graphics/Release/src/main.d
Normal file
25
mb/Graphics/Release/src/main.d
Normal file
|
@ -0,0 +1,25 @@
|
|||
src/main.d: ../src/main.c \
|
||||
../../Graphics_bsp/microblaze_mcs/include/xparameters.h \
|
||||
../../Graphics_bsp/microblaze_mcs/include/xiomodule.h \
|
||||
../../Graphics_bsp/microblaze_mcs/include/xbasic_types.h \
|
||||
../../Graphics_bsp/microblaze_mcs/include/xparameters.h \
|
||||
../../Graphics_bsp/microblaze_mcs/include/xstatus.h \
|
||||
../../Graphics_bsp/microblaze_mcs/include/xiomodule_l.h \
|
||||
../../Graphics_bsp/microblaze_mcs/include/xiomodule_io.h \
|
||||
../../Graphics_bsp/microblaze_mcs/include/xil_io.h \
|
||||
../../Graphics_bsp/microblaze_mcs/include/xil_types.h \
|
||||
../../Graphics_bsp/microblaze_mcs/include/mb_interface.h \
|
||||
../../Graphics_bsp/microblaze_mcs/include/xil_printf.h \
|
||||
../../Graphics_bsp/microblaze_mcs/include/xio.h
|
||||
../../Graphics_bsp/microblaze_mcs/include/xparameters.h:
|
||||
../../Graphics_bsp/microblaze_mcs/include/xiomodule.h:
|
||||
../../Graphics_bsp/microblaze_mcs/include/xbasic_types.h:
|
||||
../../Graphics_bsp/microblaze_mcs/include/xparameters.h:
|
||||
../../Graphics_bsp/microblaze_mcs/include/xstatus.h:
|
||||
../../Graphics_bsp/microblaze_mcs/include/xiomodule_l.h:
|
||||
../../Graphics_bsp/microblaze_mcs/include/xiomodule_io.h:
|
||||
../../Graphics_bsp/microblaze_mcs/include/xil_io.h:
|
||||
../../Graphics_bsp/microblaze_mcs/include/xil_types.h:
|
||||
../../Graphics_bsp/microblaze_mcs/include/mb_interface.h:
|
||||
../../Graphics_bsp/microblaze_mcs/include/xil_printf.h:
|
||||
../../Graphics_bsp/microblaze_mcs/include/xio.h:
|
BIN
mb/Graphics/Release/src/main.o
Normal file
BIN
mb/Graphics/Release/src/main.o
Normal file
Binary file not shown.
27
mb/Graphics/Release/src/subdir.mk
Normal file
27
mb/Graphics/Release/src/subdir.mk
Normal file
|
@ -0,0 +1,27 @@
|
|||
################################################################################
|
||||
# Automatically-generated file. Do not edit!
|
||||
################################################################################
|
||||
|
||||
# Add inputs and outputs from these tool invocations to the build variables
|
||||
C_SRCS += \
|
||||
../src/main.c
|
||||
|
||||
LD_SRCS += \
|
||||
../src/lscript.ld
|
||||
|
||||
OBJS += \
|
||||
./src/main.o
|
||||
|
||||
C_DEPS += \
|
||||
./src/main.d
|
||||
|
||||
|
||||
# Each subdirectory must supply rules for building sources it contributes
|
||||
src/main.o: ../src/main.c
|
||||
@echo 'Building file: $<'
|
||||
@echo 'Invoking: MicroBlaze gcc compiler'
|
||||
mb-gcc -Wall -O3 -I../../Graphics_bsp/microblaze_mcs/include -c -fmessage-length=0 -mno-xl-reorder -mlittle-endian -mcpu=v8.40.a -mxl-soft-mul -Wl,--no-relax -ffunction-sections -fdata-sections -MMD -MP -MF"$(@:%.o=%.d)" -MT"src/main.d" -o "$@" "$<"
|
||||
@echo 'Finished building: $<'
|
||||
@echo ' '
|
||||
|
||||
|
1
mb/Graphics/src/README.txt
Normal file
1
mb/Graphics/src/README.txt
Normal file
|
@ -0,0 +1 @@
|
|||
Empty application. Add your own sources.
|
212
mb/Graphics/src/lscript.ld
Normal file
212
mb/Graphics/src/lscript.ld
Normal file
|
@ -0,0 +1,212 @@
|
|||
/*******************************************************************/
|
||||
/* */
|
||||
/* This file is automatically generated by linker script generator.*/
|
||||
/* */
|
||||
/* Version: Xilinx EDK 14.7 EDK_P.20131013 */
|
||||
/* */
|
||||
/* Copyright (c) 2010 Xilinx, Inc. All rights reserved. */
|
||||
/* */
|
||||
/* Description : MicroBlaze Linker Script */
|
||||
/* */
|
||||
/*******************************************************************/
|
||||
|
||||
_STACK_SIZE = DEFINED(_STACK_SIZE) ? _STACK_SIZE : 0x400;
|
||||
_HEAP_SIZE = DEFINED(_HEAP_SIZE) ? _HEAP_SIZE : 0x400;
|
||||
|
||||
/* Define Memories in the system */
|
||||
|
||||
MEMORY
|
||||
{
|
||||
ilmb_cntlr_dlmb_cntlr : ORIGIN = 0x00000050, LENGTH = 0x00003FB0
|
||||
}
|
||||
|
||||
/* Specify the default entry point to the program */
|
||||
|
||||
ENTRY(_start)
|
||||
|
||||
/* Define the sections, and where they are mapped in memory */
|
||||
|
||||
SECTIONS
|
||||
{
|
||||
.vectors.reset 0x00000000 : {
|
||||
KEEP (*(.vectors.reset))
|
||||
}
|
||||
|
||||
.vectors.sw_exception 0x00000008 : {
|
||||
KEEP (*(.vectors.sw_exception))
|
||||
}
|
||||
|
||||
.vectors.interrupt 0x00000010 : {
|
||||
KEEP (*(.vectors.interrupt))
|
||||
}
|
||||
|
||||
.vectors.hw_exception 0x00000020 : {
|
||||
KEEP (*(.vectors.hw_exception))
|
||||
}
|
||||
|
||||
.text : {
|
||||
*(.text)
|
||||
*(.text.*)
|
||||
*(.gnu.linkonce.t.*)
|
||||
} > ilmb_cntlr_dlmb_cntlr
|
||||
|
||||
.init : {
|
||||
KEEP (*(.init))
|
||||
} > ilmb_cntlr_dlmb_cntlr
|
||||
|
||||
.fini : {
|
||||
KEEP (*(.fini))
|
||||
} > ilmb_cntlr_dlmb_cntlr
|
||||
|
||||
.ctors : {
|
||||
__CTOR_LIST__ = .;
|
||||
___CTORS_LIST___ = .;
|
||||
KEEP (*crtbegin.o(.ctors))
|
||||
KEEP (*(EXCLUDE_FILE(*crtend.o) .ctors))
|
||||
KEEP (*(SORT(.ctors.*)))
|
||||
KEEP (*(.ctors))
|
||||
__CTOR_END__ = .;
|
||||
___CTORS_END___ = .;
|
||||
} > ilmb_cntlr_dlmb_cntlr
|
||||
|
||||
.dtors : {
|
||||
__DTOR_LIST__ = .;
|
||||
___DTORS_LIST___ = .;
|
||||
KEEP (*crtbegin.o(.dtors))
|
||||
KEEP (*(EXCLUDE_FILE(*crtend.o) .dtors))
|
||||
KEEP (*(SORT(.dtors.*)))
|
||||
KEEP (*(.dtors))
|
||||
PROVIDE(__DTOR_END__ = .);
|
||||
PROVIDE(___DTORS_END___ = .);
|
||||
} > ilmb_cntlr_dlmb_cntlr
|
||||
|
||||
.rodata : {
|
||||
__rodata_start = .;
|
||||
*(.rodata)
|
||||
*(.rodata.*)
|
||||
*(.gnu.linkonce.r.*)
|
||||
__rodata_end = .;
|
||||
} > ilmb_cntlr_dlmb_cntlr
|
||||
|
||||
.sdata2 : {
|
||||
. = ALIGN(8);
|
||||
__sdata2_start = .;
|
||||
*(.sdata2)
|
||||
*(.sdata2.*)
|
||||
*(.gnu.linkonce.s2.*)
|
||||
. = ALIGN(8);
|
||||
__sdata2_end = .;
|
||||
} > ilmb_cntlr_dlmb_cntlr
|
||||
|
||||
.sbss2 : {
|
||||
__sbss2_start = .;
|
||||
*(.sbss2)
|
||||
*(.sbss2.*)
|
||||
*(.gnu.linkonce.sb2.*)
|
||||
__sbss2_end = .;
|
||||
} > ilmb_cntlr_dlmb_cntlr
|
||||
|
||||
.data : {
|
||||
. = ALIGN(4);
|
||||
__data_start = .;
|
||||
*(.data)
|
||||
*(.data.*)
|
||||
*(.gnu.linkonce.d.*)
|
||||
__data_end = .;
|
||||
} > ilmb_cntlr_dlmb_cntlr
|
||||
|
||||
.got : {
|
||||
*(.got)
|
||||
} > ilmb_cntlr_dlmb_cntlr
|
||||
|
||||
.got1 : {
|
||||
*(.got1)
|
||||
} > ilmb_cntlr_dlmb_cntlr
|
||||
|
||||
.got2 : {
|
||||
*(.got2)
|
||||
} > ilmb_cntlr_dlmb_cntlr
|
||||
|
||||
.eh_frame : {
|
||||
*(.eh_frame)
|
||||
} > ilmb_cntlr_dlmb_cntlr
|
||||
|
||||
.jcr : {
|
||||
*(.jcr)
|
||||
} > ilmb_cntlr_dlmb_cntlr
|
||||
|
||||
.gcc_except_table : {
|
||||
*(.gcc_except_table)
|
||||
} > ilmb_cntlr_dlmb_cntlr
|
||||
|
||||
.sdata : {
|
||||
. = ALIGN(8);
|
||||
__sdata_start = .;
|
||||
*(.sdata)
|
||||
*(.sdata.*)
|
||||
*(.gnu.linkonce.s.*)
|
||||
__sdata_end = .;
|
||||
} > ilmb_cntlr_dlmb_cntlr
|
||||
|
||||
.sbss (NOLOAD) : {
|
||||
. = ALIGN(4);
|
||||
__sbss_start = .;
|
||||
*(.sbss)
|
||||
*(.sbss.*)
|
||||
*(.gnu.linkonce.sb.*)
|
||||
. = ALIGN(8);
|
||||
__sbss_end = .;
|
||||
} > ilmb_cntlr_dlmb_cntlr
|
||||
|
||||
.tdata : {
|
||||
__tdata_start = .;
|
||||
*(.tdata)
|
||||
*(.tdata.*)
|
||||
*(.gnu.linkonce.td.*)
|
||||
__tdata_end = .;
|
||||
} > ilmb_cntlr_dlmb_cntlr
|
||||
|
||||
.tbss : {
|
||||
__tbss_start = .;
|
||||
*(.tbss)
|
||||
*(.tbss.*)
|
||||
*(.gnu.linkonce.tb.*)
|
||||
__tbss_end = .;
|
||||
} > ilmb_cntlr_dlmb_cntlr
|
||||
|
||||
.bss (NOLOAD) : {
|
||||
. = ALIGN(4);
|
||||
__bss_start = .;
|
||||
*(.bss)
|
||||
*(.bss.*)
|
||||
*(.gnu.linkonce.b.*)
|
||||
*(COMMON)
|
||||
. = ALIGN(4);
|
||||
__bss_end = .;
|
||||
} > ilmb_cntlr_dlmb_cntlr
|
||||
|
||||
_SDA_BASE_ = __sdata_start + ((__sbss_end - __sdata_start) / 2 );
|
||||
|
||||
_SDA2_BASE_ = __sdata2_start + ((__sbss2_end - __sdata2_start) / 2 );
|
||||
|
||||
/* Generate Stack and Heap definitions */
|
||||
|
||||
.heap (NOLOAD) : {
|
||||
. = ALIGN(8);
|
||||
_heap = .;
|
||||
_heap_start = .;
|
||||
. += _HEAP_SIZE;
|
||||
_heap_end = .;
|
||||
} > ilmb_cntlr_dlmb_cntlr
|
||||
|
||||
.stack (NOLOAD) : {
|
||||
_stack_end = .;
|
||||
. += _STACK_SIZE;
|
||||
. = ALIGN(8);
|
||||
_stack = .;
|
||||
__stack = _stack;
|
||||
} > ilmb_cntlr_dlmb_cntlr
|
||||
|
||||
_end = .;
|
||||
}
|
||||
|
265
mb/Graphics/src/main.c
Normal file
265
mb/Graphics/src/main.c
Normal file
|
@ -0,0 +1,265 @@
|
|||
#include <xparameters.h>
|
||||
#include <xiomodule.h>
|
||||
|
||||
XIOModule gpo;
|
||||
|
||||
Xint8 x = 0;
|
||||
Xint8 y = 0;
|
||||
Xint8 scroll = 0;
|
||||
|
||||
Xint8 reversed = 0;
|
||||
Xint8 foreground = 0b111;
|
||||
Xint8 background = 0;
|
||||
|
||||
Xint16 properties = 0;
|
||||
|
||||
void commit() {
|
||||
XIOModule_DiscreteSet(&gpo, 3, 1);
|
||||
XIOModule_DiscreteClear(&gpo, 3, 1);
|
||||
}
|
||||
|
||||
void calculate_properties() {
|
||||
if (reversed) {
|
||||
properties = ((foreground << 4) + background) << 8;
|
||||
} else {
|
||||
properties = ((background << 4) + foreground) << 8;
|
||||
}
|
||||
}
|
||||
|
||||
void set_foreground(Xint8 color) {
|
||||
foreground = color;
|
||||
|
||||
calculate_properties();
|
||||
}
|
||||
|
||||
void set_background(Xint8 color) {
|
||||
background = color;
|
||||
|
||||
calculate_properties();
|
||||
}
|
||||
|
||||
void reverse(u8 enable) {
|
||||
reversed = enable;
|
||||
|
||||
calculate_properties();
|
||||
}
|
||||
|
||||
void clear_screen() {
|
||||
reverse(0);
|
||||
set_foreground(0b111);
|
||||
set_background(0);
|
||||
XIOModule_DiscreteWrite(&gpo, 1, 0);
|
||||
XIOModule_DiscreteWrite(&gpo, 2, 0);
|
||||
XIOModule_DiscreteSet(&gpo, 3, 1);
|
||||
|
||||
for (int y = 0; y < (45+2); ++y) {
|
||||
Xint16 temp = (y << 8);
|
||||
for (int x = 0; x < (80+24); ++x) {
|
||||
XIOModule_DiscreteWrite(&gpo, 2, temp + x);
|
||||
}
|
||||
}
|
||||
|
||||
XIOModule_DiscreteClear(&gpo, 3, 1);
|
||||
|
||||
x = 0;
|
||||
y = 0;
|
||||
scroll = 0;
|
||||
XIOModule_DiscreteWrite(&gpo, 4, scroll);
|
||||
}
|
||||
|
||||
void clear_eol() {
|
||||
reverse(0);
|
||||
Xint16 temp = (y << 8);
|
||||
|
||||
XIOModule_DiscreteWrite(&gpo, 1, 0);
|
||||
XIOModule_DiscreteWrite(&gpo, 2, temp + x);
|
||||
XIOModule_DiscreteSet(&gpo, 3, 1);
|
||||
|
||||
for (int i = x; i < (80+24); ++i) {
|
||||
XIOModule_DiscreteWrite(&gpo, 2, temp + i);
|
||||
}
|
||||
|
||||
XIOModule_DiscreteClear(&gpo, 3, 1);
|
||||
}
|
||||
|
||||
void write(u8 c) {
|
||||
XIOModule_DiscreteWrite(&gpo, 1, properties + c);
|
||||
XIOModule_DiscreteWrite(&gpo, 2, (y << 8) + x);
|
||||
commit();
|
||||
}
|
||||
|
||||
void next() {
|
||||
x++;
|
||||
if (x >= 80) {
|
||||
y++;
|
||||
x %= 80;
|
||||
}
|
||||
|
||||
if (y >= 45) {
|
||||
y--;
|
||||
scroll = (scroll + 1) % 45;
|
||||
XIOModule_DiscreteWrite(&gpo, 4, scroll);
|
||||
clear_eol();
|
||||
}
|
||||
}
|
||||
|
||||
// @todo This does not appear to work quite correctly
|
||||
void previous() {
|
||||
x--;
|
||||
if (x < 0) {
|
||||
y--;
|
||||
x %= 80;
|
||||
}
|
||||
|
||||
if (y < 0) {
|
||||
y = 0;
|
||||
x = 0;
|
||||
}
|
||||
}
|
||||
|
||||
u8 data = 0;
|
||||
u8 had = 0;
|
||||
u8 escape = 0;
|
||||
u8 escape_parameter_1 = 0;
|
||||
u8 escape_parameter_2 = 0;
|
||||
|
||||
|
||||
void clock() {
|
||||
u8 signals = XIOModule_DiscreteRead(&gpo, 3) & 0b11;
|
||||
|
||||
if (!(signals & 0b01)) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (signals & 0b10) {
|
||||
data = XIOModule_DiscreteRead(&gpo, 1) & 0xFF;
|
||||
had = 1;
|
||||
} else if (had) {
|
||||
had = 0;
|
||||
|
||||
if (escape == 1) {
|
||||
if (data == '[') {
|
||||
escape = 2;
|
||||
} else {
|
||||
escape = 0;
|
||||
}
|
||||
} else if (escape) {
|
||||
switch (data) {
|
||||
// For now we are only going to implement what we actually use
|
||||
case 'K':
|
||||
// Assume parameter 0
|
||||
clear_eol();
|
||||
escape = 0;
|
||||
break;
|
||||
|
||||
case 'H':
|
||||
if (escape_parameter_1 == 0) {
|
||||
escape_parameter_1 = 1;
|
||||
}
|
||||
|
||||
if (escape_parameter_2 == 0) {
|
||||
escape_parameter_2 = 1;
|
||||
}
|
||||
|
||||
x = escape_parameter_1 - 1;
|
||||
y = escape_parameter_2 - 1;
|
||||
escape = 0;
|
||||
break;
|
||||
|
||||
case 'm':
|
||||
if (escape_parameter_1 == 0) {
|
||||
reverse(0);
|
||||
set_foreground(0b111);
|
||||
set_background(0);
|
||||
} else if (escape_parameter_1 == 7) {
|
||||
reverse(1);
|
||||
} else if (escape_parameter_1 >= 30 && escape_parameter_1 <= 37) {
|
||||
set_foreground(escape_parameter_1 - 30);
|
||||
} else if (escape_parameter_1 >= 40 && escape_parameter_1 <= 47) {
|
||||
set_background(escape_parameter_1 - 40);
|
||||
} else if (escape_parameter_1 >= 90 && escape_parameter_1 <= 97) {
|
||||
set_foreground(escape_parameter_1 - 90 + 8);
|
||||
} else if (escape_parameter_1 >= 100 && escape_parameter_1 <= 107) {
|
||||
set_background(escape_parameter_1 - 100 + 8);
|
||||
}
|
||||
escape = 0;
|
||||
break;
|
||||
|
||||
case 'J':
|
||||
// Assume parameter 2
|
||||
clear_screen();
|
||||
escape = 0;
|
||||
break;
|
||||
|
||||
case '0' ... '9':
|
||||
escape_parameter_1 *= 10;
|
||||
escape_parameter_1 += (data - 48);
|
||||
break;
|
||||
|
||||
case ';':
|
||||
escape_parameter_2 = escape_parameter_1;
|
||||
escape_parameter_1 = 0;
|
||||
break;
|
||||
|
||||
default:
|
||||
escape = 0;
|
||||
break;
|
||||
}
|
||||
} else {
|
||||
switch (data) {
|
||||
case '\n':
|
||||
y++;
|
||||
if (y >= 45) {
|
||||
y--;
|
||||
scroll = (scroll + 1) % 45;
|
||||
XIOModule_DiscreteWrite(&gpo, 4, scroll);
|
||||
clear_eol();
|
||||
}
|
||||
break;
|
||||
|
||||
case '\r':
|
||||
x = 0;
|
||||
break;
|
||||
|
||||
case 0x08:
|
||||
previous();
|
||||
break;
|
||||
|
||||
case 0x1B:
|
||||
escape = 1;
|
||||
escape_parameter_1 = 0;
|
||||
escape_parameter_2 = 0;
|
||||
// Handle escape code
|
||||
break;
|
||||
|
||||
default:
|
||||
write(data - 32);
|
||||
next();
|
||||
break;
|
||||
}
|
||||
}
|
||||
XIOModule_DiscreteWrite(&gpo, 2, (y << 8) + x);
|
||||
}
|
||||
}
|
||||
|
||||
int main() {
|
||||
XIOModule_Initialize(&gpo, XPAR_IOMODULE_0_DEVICE_ID); // Initialize the GPO module
|
||||
|
||||
microblaze_register_handler(XIOModule_DeviceInterruptHandler,
|
||||
XPAR_IOMODULE_0_DEVICE_ID); // register the interrupt handler
|
||||
|
||||
XIOModule_Start(&gpo); // start the GPO module
|
||||
|
||||
XIOModule_Connect(&gpo, XIN_IOMODULE_GPI_2_INTERRUPT_INTR, clock,
|
||||
NULL); // register timerTick() as our interrupt handler
|
||||
XIOModule_Enable(&gpo, XIN_IOMODULE_GPI_2_INTERRUPT_INTR); // enable the interrupt
|
||||
|
||||
microblaze_enable_interrupts(); // enable global interrupts
|
||||
|
||||
// Clear the screen
|
||||
clear_screen();
|
||||
|
||||
while (1) {
|
||||
|
||||
}
|
||||
}
|
22
mb/Graphics_bsp/.cproject
Normal file
22
mb/Graphics_bsp/.cproject
Normal file
|
@ -0,0 +1,22 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<?fileVersion 4.0.0?>
|
||||
|
||||
<cproject storage_type_id="org.eclipse.cdt.core.XmlProjectDescriptionStorage">
|
||||
<storageModule moduleId="org.eclipse.cdt.core.settings">
|
||||
<cconfiguration id="org.eclipse.cdt.core.default.config.1153648572">
|
||||
<storageModule buildSystemId="org.eclipse.cdt.core.defaultConfigDataProvider" id="org.eclipse.cdt.core.default.config.1153648572" moduleId="org.eclipse.cdt.core.settings" name="Configuration">
|
||||
<externalSettings/>
|
||||
<extensions/>
|
||||
</storageModule>
|
||||
<storageModule moduleId="org.eclipse.cdt.core.externalSettings"/>
|
||||
</cconfiguration>
|
||||
</storageModule>
|
||||
<storageModule moduleId="org.eclipse.cdt.core.LanguageSettingsProviders"/>
|
||||
<storageModule moduleId="refreshScope"/>
|
||||
<storageModule moduleId="org.eclipse.cdt.internal.ui.text.commentOwnerProjectMappings"/>
|
||||
<storageModule moduleId="scannerConfiguration"/>
|
||||
<storageModule moduleId="org.eclipse.cdt.core.pathentry">
|
||||
<pathentry kind="src" path=""/>
|
||||
<pathentry kind="out" path=""/>
|
||||
</storageModule>
|
||||
</cproject>
|
80
mb/Graphics_bsp/.project
Normal file
80
mb/Graphics_bsp/.project
Normal file
|
@ -0,0 +1,80 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<projectDescription>
|
||||
<name>Graphics_bsp</name>
|
||||
<comment></comment>
|
||||
<projects>
|
||||
<project>hardware</project>
|
||||
</projects>
|
||||
<buildSpec>
|
||||
<buildCommand>
|
||||
<name>org.eclipse.cdt.make.core.makeBuilder</name>
|
||||
<arguments>
|
||||
<dictionary>
|
||||
<key>org.eclipse.cdt.core.errorOutputParser</key>
|
||||
<value>org.eclipse.cdt.core.GASErrorParser;org.eclipse.cdt.core.GCCErrorParser;org.eclipse.cdt.core.GLDErrorParser;org.eclipse.cdt.core.GmakeErrorParser;org.eclipse.cdt.core.VCErrorParser;org.eclipse.cdt.core.CWDLocator;org.eclipse.cdt.core.MakeErrorParser;</value>
|
||||
</dictionary>
|
||||
<dictionary>
|
||||
<key>org.eclipse.cdt.make.core.append_environment</key>
|
||||
<value>true</value>
|
||||
</dictionary>
|
||||
<dictionary>
|
||||
<key>org.eclipse.cdt.make.core.build.arguments</key>
|
||||
<value></value>
|
||||
</dictionary>
|
||||
<dictionary>
|
||||
<key>org.eclipse.cdt.make.core.build.command</key>
|
||||
<value>make</value>
|
||||
</dictionary>
|
||||
<dictionary>
|
||||
<key>org.eclipse.cdt.make.core.build.location</key>
|
||||
<value></value>
|
||||
</dictionary>
|
||||
<dictionary>
|
||||
<key>org.eclipse.cdt.make.core.build.target.auto</key>
|
||||
<value>all</value>
|
||||
</dictionary>
|
||||
<dictionary>
|
||||
<key>org.eclipse.cdt.make.core.build.target.clean</key>
|
||||
<value>clean</value>
|
||||
</dictionary>
|
||||
<dictionary>
|
||||
<key>org.eclipse.cdt.make.core.build.target.inc</key>
|
||||
<value>all</value>
|
||||
</dictionary>
|
||||
<dictionary>
|
||||
<key>org.eclipse.cdt.make.core.enableAutoBuild</key>
|
||||
<value>true</value>
|
||||
</dictionary>
|
||||
<dictionary>
|
||||
<key>org.eclipse.cdt.make.core.enableCleanBuild</key>
|
||||
<value>true</value>
|
||||
</dictionary>
|
||||
<dictionary>
|
||||
<key>org.eclipse.cdt.make.core.enableFullBuild</key>
|
||||
<value>true</value>
|
||||
</dictionary>
|
||||
<dictionary>
|
||||
<key>org.eclipse.cdt.make.core.enabledIncrementalBuild</key>
|
||||
<value>true</value>
|
||||
</dictionary>
|
||||
<dictionary>
|
||||
<key>org.eclipse.cdt.make.core.environment</key>
|
||||
<value></value>
|
||||
</dictionary>
|
||||
<dictionary>
|
||||
<key>org.eclipse.cdt.make.core.stopOnError</key>
|
||||
<value>false</value>
|
||||
</dictionary>
|
||||
<dictionary>
|
||||
<key>org.eclipse.cdt.make.core.useDefaultBuildCmd</key>
|
||||
<value>true</value>
|
||||
</dictionary>
|
||||
</arguments>
|
||||
</buildCommand>
|
||||
</buildSpec>
|
||||
<natures>
|
||||
<nature>com.xilinx.sdk.sw.SwProjectNature</nature>
|
||||
<nature>org.eclipse.cdt.core.cnature</nature>
|
||||
<nature>org.eclipse.cdt.make.core.makeNature</nature>
|
||||
</natures>
|
||||
</projectDescription>
|
3
mb/Graphics_bsp/.sdkproject
Normal file
3
mb/Graphics_bsp/.sdkproject
Normal file
|
@ -0,0 +1,3 @@
|
|||
THIRPARTY=false
|
||||
PROCESSOR=microblaze_mcs
|
||||
MSS_FILE=system.mss
|
34
mb/Graphics_bsp/.settings/org.eclipse.cdt.codan.core.prefs
Normal file
34
mb/Graphics_bsp/.settings/org.eclipse.cdt.codan.core.prefs
Normal file
|
@ -0,0 +1,34 @@
|
|||
eclipse.preferences.version=1
|
||||
org.eclipse.cdt.codan.checkers.errnoreturn.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},implicit\=>false}
|
||||
org.eclipse.cdt.codan.checkers.errreturnvalue.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
|
||||
org.eclipse.cdt.codan.checkers.noreturn.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},implicit\=>false}
|
||||
org.eclipse.cdt.codan.internal.checkers.AbstractClassCreation.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
|
||||
org.eclipse.cdt.codan.internal.checkers.AmbiguousProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
|
||||
org.eclipse.cdt.codan.internal.checkers.AssignmentInConditionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
|
||||
org.eclipse.cdt.codan.internal.checkers.AssignmentToItselfProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
|
||||
org.eclipse.cdt.codan.internal.checkers.CaseBreakProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},no_break_comment\=>"no break",last_case_param\=>false,empty_case_param\=>false}
|
||||
org.eclipse.cdt.codan.internal.checkers.CatchByReference.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},unknown\=>false,exceptions\=>()}
|
||||
org.eclipse.cdt.codan.internal.checkers.CircularReferenceProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
|
||||
org.eclipse.cdt.codan.internal.checkers.ClassMembersInitialization.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},skip\=>true}
|
||||
org.eclipse.cdt.codan.internal.checkers.FieldResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
|
||||
org.eclipse.cdt.codan.internal.checkers.FunctionResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
|
||||
org.eclipse.cdt.codan.internal.checkers.InvalidArguments.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
|
||||
org.eclipse.cdt.codan.internal.checkers.InvalidTemplateArgumentsProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
|
||||
org.eclipse.cdt.codan.internal.checkers.LabelStatementNotFoundProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
|
||||
org.eclipse.cdt.codan.internal.checkers.MemberDeclarationNotFoundProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
|
||||
org.eclipse.cdt.codan.internal.checkers.MethodResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
|
||||
org.eclipse.cdt.codan.internal.checkers.NamingConventionFunctionChecker.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},pattern\=>"^[a-z]",macro\=>true,exceptions\=>()}
|
||||
org.eclipse.cdt.codan.internal.checkers.NonVirtualDestructorProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
|
||||
org.eclipse.cdt.codan.internal.checkers.OverloadProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
|
||||
org.eclipse.cdt.codan.internal.checkers.RedeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
|
||||
org.eclipse.cdt.codan.internal.checkers.RedefinitionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
|
||||
org.eclipse.cdt.codan.internal.checkers.ReturnStyleProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
|
||||
org.eclipse.cdt.codan.internal.checkers.ScanfFormatStringSecurityProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
|
||||
org.eclipse.cdt.codan.internal.checkers.StatementHasNoEffectProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},macro\=>true,exceptions\=>()}
|
||||
org.eclipse.cdt.codan.internal.checkers.SuggestedParenthesisProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},paramNot\=>false}
|
||||
org.eclipse.cdt.codan.internal.checkers.SuspiciousSemicolonProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},else\=>false,afterelse\=>false}
|
||||
org.eclipse.cdt.codan.internal.checkers.TypeResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
|
||||
org.eclipse.cdt.codan.internal.checkers.UnusedFunctionDeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},macro\=>true}
|
||||
org.eclipse.cdt.codan.internal.checkers.UnusedStaticFunctionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},macro\=>true}
|
||||
org.eclipse.cdt.codan.internal.checkers.UnusedVariableDeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},macro\=>true,exceptions\=>("@(\#)","$Id")}
|
||||
org.eclipse.cdt.codan.internal.checkers.VariableResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
|
21
mb/Graphics_bsp/Makefile
Normal file
21
mb/Graphics_bsp/Makefile
Normal file
|
@ -0,0 +1,21 @@
|
|||
# Makefile generated by Xilinx SDK.
|
||||
|
||||
-include libgen.options
|
||||
|
||||
LIBRARIES = ${PROCESSOR}/lib/libxil.a
|
||||
MSS = system.mss
|
||||
|
||||
all: libs
|
||||
@echo 'Finished building libraries'
|
||||
|
||||
libs: $(LIBRARIES)
|
||||
|
||||
$(LIBRARIES): $(MSS)
|
||||
libgen -hw ${HWSPEC}\
|
||||
${REPOSITORIES}\
|
||||
-pe ${PROCESSOR} \
|
||||
-log libgen.log \
|
||||
$(MSS)
|
||||
|
||||
clean:
|
||||
rm -rf ${PROCESSOR}
|
3
mb/Graphics_bsp/libgen.options
Normal file
3
mb/Graphics_bsp/libgen.options
Normal file
|
@ -0,0 +1,3 @@
|
|||
PROCESSOR=microblaze_mcs
|
||||
REPOSITORIES=
|
||||
HWSPEC=../hardware/system.xml
|
39
mb/Graphics_bsp/system.mss
Normal file
39
mb/Graphics_bsp/system.mss
Normal file
|
@ -0,0 +1,39 @@
|
|||
|
||||
PARAMETER VERSION = 2.2.0
|
||||
|
||||
|
||||
BEGIN OS
|
||||
PARAMETER OS_NAME = standalone
|
||||
PARAMETER OS_VER = 3.11.a
|
||||
PARAMETER PROC_INSTANCE = microblaze_mcs
|
||||
PARAMETER STDIN = iomodule_0
|
||||
PARAMETER STDOUT = iomodule_0
|
||||
END
|
||||
|
||||
|
||||
BEGIN PROCESSOR
|
||||
PARAMETER DRIVER_NAME = cpu
|
||||
PARAMETER DRIVER_VER = 1.15.a
|
||||
PARAMETER HW_INSTANCE = microblaze_mcs
|
||||
END
|
||||
|
||||
|
||||
BEGIN DRIVER
|
||||
PARAMETER DRIVER_NAME = bram
|
||||
PARAMETER DRIVER_VER = 3.03.a
|
||||
PARAMETER HW_INSTANCE = dlmb_cntlr
|
||||
END
|
||||
|
||||
BEGIN DRIVER
|
||||
PARAMETER DRIVER_NAME = bram
|
||||
PARAMETER DRIVER_VER = 3.03.a
|
||||
PARAMETER HW_INSTANCE = ilmb_cntlr
|
||||
END
|
||||
|
||||
BEGIN DRIVER
|
||||
PARAMETER DRIVER_NAME = iomodule
|
||||
PARAMETER DRIVER_VER = 1.04.a
|
||||
PARAMETER HW_INSTANCE = iomodule_0
|
||||
END
|
||||
|
||||
|
12
mb/hardware/.project
Normal file
12
mb/hardware/.project
Normal file
|
@ -0,0 +1,12 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<projectDescription>
|
||||
<name>hardware</name>
|
||||
<comment></comment>
|
||||
<projects>
|
||||
</projects>
|
||||
<buildSpec>
|
||||
</buildSpec>
|
||||
<natures>
|
||||
<nature>com.xilinx.sdk.hw.HwProject</nature>
|
||||
</natures>
|
||||
</projectDescription>
|
5833
mb/hardware/system.xml
Normal file
5833
mb/hardware/system.xml
Normal file
File diff suppressed because it is too large
Load Diff
16
mb/hardware/system_bd.bmm
Normal file
16
mb/hardware/system_bd.bmm
Normal file
|
@ -0,0 +1,16 @@
|
|||
ADDRESS_MAP microblaze_mcs MICROBLAZE-LE 100
|
||||
ADDRESS_SPACE lmb_bram COMBINED [0x00000000:0x00003fff]
|
||||
ADDRESS_RANGE RAMB16
|
||||
BUS_BLOCK
|
||||
mcs_0/U0/lmb_bram_I/RAM_Inst/Using_B16_S4.The_BRAMs[0].RAMB16_S4_1 [31:28] INPUT = microblaze_mcs.lmb_bram_0.mem;
|
||||
mcs_0/U0/lmb_bram_I/RAM_Inst/Using_B16_S4.The_BRAMs[1].RAMB16_S4_1 [27:24] INPUT = microblaze_mcs.lmb_bram_1.mem;
|
||||
mcs_0/U0/lmb_bram_I/RAM_Inst/Using_B16_S4.The_BRAMs[2].RAMB16_S4_1 [23:20] INPUT = microblaze_mcs.lmb_bram_2.mem;
|
||||
mcs_0/U0/lmb_bram_I/RAM_Inst/Using_B16_S4.The_BRAMs[3].RAMB16_S4_1 [19:16] INPUT = microblaze_mcs.lmb_bram_3.mem;
|
||||
mcs_0/U0/lmb_bram_I/RAM_Inst/Using_B16_S4.The_BRAMs[4].RAMB16_S4_1 [15:12] INPUT = microblaze_mcs.lmb_bram_4.mem;
|
||||
mcs_0/U0/lmb_bram_I/RAM_Inst/Using_B16_S4.The_BRAMs[5].RAMB16_S4_1 [11:8] INPUT = microblaze_mcs.lmb_bram_5.mem;
|
||||
mcs_0/U0/lmb_bram_I/RAM_Inst/Using_B16_S4.The_BRAMs[6].RAMB16_S4_1 [7:4] INPUT = microblaze_mcs.lmb_bram_6.mem;
|
||||
mcs_0/U0/lmb_bram_I/RAM_Inst/Using_B16_S4.The_BRAMs[7].RAMB16_S4_1 [3:0] INPUT = microblaze_mcs.lmb_bram_7.mem;
|
||||
END_BUS_BLOCK;
|
||||
END_ADDRESS_RANGE;
|
||||
END_ADDRESS_SPACE;
|
||||
END_ADDRESS_MAP;
|
4
syn/.gitignore
vendored
4
syn/.gitignore
vendored
|
@ -1,4 +0,0 @@
|
|||
# Ignore everything in this directory
|
||||
*
|
||||
# Except this file
|
||||
!.gitignore
|
12
syn/main.prj
Normal file
12
syn/main.prj
Normal file
|
@ -0,0 +1,12 @@
|
|||
verilog work "../ipcore_dir/microblaze_mcs.v"
|
||||
verilog work "../ipcore_dir/hdmi_clk.v"
|
||||
verilog work "../src/simple_dual_ram.v"
|
||||
verilog work "../src/async_fifo.v"
|
||||
verilog work "../src/tmds_encoder.v"
|
||||
verilog work "../src/serdes_n_to_1.v"
|
||||
verilog work "../src/fifo_2x_reducer.v"
|
||||
verilog work "../src/dvi_encoder.v"
|
||||
verilog work "../src/hdmi_encoder.v"
|
||||
verilog work "../src/color_map.v"
|
||||
verilog work "../src/char_map.v"
|
||||
verilog work "../src/main.v"
|
31
syn/main.ut
Normal file
31
syn/main.ut
Normal file
|
@ -0,0 +1,31 @@
|
|||
-bd "/home/tim/Projects/z80/hdmi-mb/Graphics/Release/Graphics.elf" tag microblaze_mcs
|
||||
-w
|
||||
-g Binary:yes
|
||||
-g Compress
|
||||
-g CRC:Enable
|
||||
-g Reset_on_err:No
|
||||
-g ConfigRate:2
|
||||
-g ProgPin:PullUp
|
||||
-g TckPin:PullUp
|
||||
-g TdiPin:PullUp
|
||||
-g TdoPin:PullUp
|
||||
-g TmsPin:PullUp
|
||||
-g UnusedPin:PullDown
|
||||
-g UserID:0xFFFFFFFF
|
||||
-g ExtMasterCclk_en:No
|
||||
-g SPI_buswidth:1
|
||||
-g TIMER_CFG:0xFFFF
|
||||
-g multipin_wakeup:No
|
||||
-g StartUpClk:CClk
|
||||
-g DONE_cycle:4
|
||||
-g GTS_cycle:5
|
||||
-g GWE_cycle:6
|
||||
-g LCK_cycle:NoWait
|
||||
-g Security:None
|
||||
-g DonePipe:Yes
|
||||
-g DriveDone:No
|
||||
-g en_sw_gsr:No
|
||||
-g drive_awake:No
|
||||
-g sw_clk:Startupclk
|
||||
-g sw_gwe_cycle:5
|
||||
-g sw_gts_cycle:4
|
53
syn/main.xst
Normal file
53
syn/main.xst
Normal file
|
@ -0,0 +1,53 @@
|
|||
set -tmpdir "xst/projnav.tmp"
|
||||
set -xsthdpdir "xst"
|
||||
run
|
||||
-ifn main.prj
|
||||
-ofn main
|
||||
-ofmt NGC
|
||||
-p xc6slx9-2-tqg144
|
||||
-top main
|
||||
-opt_mode Speed
|
||||
-opt_level 1
|
||||
-power NO
|
||||
-iuc NO
|
||||
-keep_hierarchy No
|
||||
-netlist_hierarchy As_Optimized
|
||||
-rtlview Yes
|
||||
-glob_opt AllClockNets
|
||||
-read_cores YES
|
||||
-sd {"../ipcore_dir" }
|
||||
-write_timing_constraints NO
|
||||
-cross_clock_analysis NO
|
||||
-hierarchy_separator /
|
||||
-bus_delimiter <>
|
||||
-case Maintain
|
||||
-slice_utilization_ratio 100
|
||||
-bram_utilization_ratio 100
|
||||
-dsp_utilization_ratio 100
|
||||
-lc Auto
|
||||
-reduce_control_sets Auto
|
||||
-fsm_extract YES -fsm_encoding Auto
|
||||
-safe_implementation No
|
||||
-fsm_style LUT
|
||||
-ram_extract Yes
|
||||
-ram_style Auto
|
||||
-rom_extract Yes
|
||||
-shreg_extract YES
|
||||
-rom_style Auto
|
||||
-auto_bram_packing NO
|
||||
-resource_sharing YES
|
||||
-async_to_sync NO
|
||||
-shreg_min_size 2
|
||||
-use_dsp48 Auto
|
||||
-iobuf YES
|
||||
-max_fanout 100000
|
||||
-bufg 16
|
||||
-register_duplication YES
|
||||
-register_balancing No
|
||||
-optimize_primitives NO
|
||||
-use_clock_enable Auto
|
||||
-use_sync_set Auto
|
||||
-use_sync_reset Auto
|
||||
-iob Auto
|
||||
-equivalent_register_removal YES
|
||||
-slice_utilization_ratio_maxmargin 5
|
Reference in New Issue
Block a user