updates submodules to actual versions
This commit is contained in:
		
							
								
								
									
										43
									
								
								.cproject
									
									
									
									
									
								
							
							
						
						
									
										43
									
								
								.cproject
									
									
									
									
									
								
							| @@ -7,37 +7,22 @@ | |||||||
| 				<extensions> | 				<extensions> | ||||||
| 					<extension id="org.eclipse.cdt.core.GNU_ELF" point="org.eclipse.cdt.core.BinaryParser"/> | 					<extension id="org.eclipse.cdt.core.GNU_ELF" point="org.eclipse.cdt.core.BinaryParser"/> | ||||||
| 					<extension id="org.eclipse.cdt.core.ELF" point="org.eclipse.cdt.core.BinaryParser"/> | 					<extension id="org.eclipse.cdt.core.ELF" point="org.eclipse.cdt.core.BinaryParser"/> | ||||||
| 					<extension id="org.eclipse.cdt.core.GASErrorParser" point="org.eclipse.cdt.core.ErrorParser"/> | 					<extension id="org.eclipse.cdt.core.PE64" point="org.eclipse.cdt.core.BinaryParser"/> | ||||||
| 					<extension id="org.eclipse.cdt.core.GLDErrorParser" point="org.eclipse.cdt.core.ErrorParser"/> | 					<extension id="org.eclipse.cdt.core.GLDErrorParser" 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.GCCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/> | ||||||
|  | 					<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"/> | ||||||
| 				</extensions> | 				</extensions> | ||||||
| 			</storageModule> | 			</storageModule> | ||||||
| 			<storageModule moduleId="cdtBuildSystem" version="4.0.0"> | 			<storageModule moduleId="cdtBuildSystem" version="4.0.0"> | ||||||
| 				<configuration artifactName="${ProjName}" buildArtefactType="org.eclipse.cdt.build.core.buildArtefactType.exe" buildProperties="org.eclipse.cdt.build.core.buildArtefactType=org.eclipse.cdt.build.core.buildArtefactType.exe,org.eclipse.cdt.build.core.buildType=org.eclipse.cdt.build.core.buildType.debug" cleanCommand="rm -rf" description="" id="cdt.managedbuild.config.gnu.exe.debug.1751741082" name="Debug" optionalBuildProperties="org.eclipse.cdt.docker.launcher.containerbuild.property.selectedvolumes=,org.eclipse.cdt.docker.launcher.containerbuild.property.volumes=" parent="cdt.managedbuild.config.gnu.exe.debug"> | 				<configuration artifactName="${ProjName}" buildArtefactType="org.eclipse.cdt.build.core.buildArtefactType.exe" buildProperties="org.eclipse.cdt.build.core.buildArtefactType=org.eclipse.cdt.build.core.buildArtefactType.exe,org.eclipse.cdt.build.core.buildType=org.eclipse.cdt.build.core.buildType.debug" cleanCommand="rm -rf" description="" id="cdt.managedbuild.config.gnu.exe.debug.1751741082" name="Debug" optionalBuildProperties="org.eclipse.cdt.docker.launcher.containerbuild.property.selectedvolumes=,org.eclipse.cdt.docker.launcher.containerbuild.property.volumes=" parent="cdt.managedbuild.config.gnu.exe.debug"> | ||||||
| 					<folderInfo id="cdt.managedbuild.config.gnu.exe.debug.1751741082." name="/" resourcePath=""> | 					<folderInfo id="cdt.managedbuild.config.gnu.exe.debug.1751741082." name="/" resourcePath=""> | ||||||
| 						<toolChain id="cdt.managedbuild.toolchain.gnu.exe.debug.1289745146" name="Linux GCC" superClass="cdt.managedbuild.toolchain.gnu.exe.debug"> | 						<toolChain id="cmake4eclipse.mbs.toolchain.cmake.784795776" name="CMake driven" superClass="cmake4eclipse.mbs.toolchain.cmake"> | ||||||
| 							<targetPlatform binaryParser="org.eclipse.cdt.core.GNU_ELF;org.eclipse.cdt.core.ELF" id="cdt.managedbuild.target.gnu.platform.exe.debug.1460698591" name="Debug Platform" superClass="cdt.managedbuild.target.gnu.platform.exe.debug"/> | 							<targetPlatform id="cmake4eclipse.mbs.targetPlatform.cmake.967292515" name="Any Platform" superClass="cmake4eclipse.mbs.targetPlatform.cmake"/> | ||||||
| 							<builder buildPath="/HiFive1-VP/build/Debug" id="de.marw.cdt.cmake.core.genscriptbuilder.2135578907" keepEnvironmentInBuildfile="false" name="CMake Builder" parallelBuildOn="true" parallelizationNumber="optimal" superClass="de.marw.cdt.cmake.core.genscriptbuilder"/> | 							<builder buildPath="/HiFive1-VP/build/Debug" id="cmake4eclipse.mbs.builder.137185883" keepEnvironmentInBuildfile="false" name="CMake Builder" parallelBuildOn="true" parallelizationNumber="optimal" superClass="cmake4eclipse.mbs.builder"/> | ||||||
| 							<tool id="cdt.managedbuild.tool.gnu.archiver.base.366643800" name="GCC Archiver" superClass="cdt.managedbuild.tool.gnu.archiver.base"/> | 							<tool id="cmake4eclipse.mbs.toolchain.tool.dummy.746279450" name="CMake" superClass="cmake4eclipse.mbs.toolchain.tool.dummy"> | ||||||
| 							<tool id="cdt.managedbuild.tool.gnu.cpp.compiler.exe.debug.1510612390" name="GCC C++ Compiler" superClass="cdt.managedbuild.tool.gnu.cpp.compiler.exe.debug"> | 								<inputType id="cmake4eclipse.mbs.inputType.c.1482103851" superClass="cmake4eclipse.mbs.inputType.c"/> | ||||||
| 								<option id="gnu.cpp.compiler.exe.debug.option.optimization.level.1768317780" name="Optimization Level" superClass="gnu.cpp.compiler.exe.debug.option.optimization.level" useByScannerDiscovery="false" value="gnu.cpp.compiler.optimization.level.none" valueType="enumerated"/> | 								<inputType id="cmake4eclipse.mbs.inputType.cpp.1158121731" superClass="cmake4eclipse.mbs.inputType.cpp"/> | ||||||
| 								<option id="gnu.cpp.compiler.exe.debug.option.debugging.level.276552358" name="Debug Level" superClass="gnu.cpp.compiler.exe.debug.option.debugging.level" useByScannerDiscovery="false" value="gnu.cpp.compiler.debugging.level.max" valueType="enumerated"/> |  | ||||||
| 								<inputType id="cdt.managedbuild.tool.gnu.cpp.compiler.input.1565574494" superClass="cdt.managedbuild.tool.gnu.cpp.compiler.input"/> |  | ||||||
| 							</tool> |  | ||||||
| 							<tool id="cdt.managedbuild.tool.gnu.c.compiler.exe.debug.1306991179" name="GCC C Compiler" superClass="cdt.managedbuild.tool.gnu.c.compiler.exe.debug"> |  | ||||||
| 								<option defaultValue="gnu.c.optimization.level.none" id="gnu.c.compiler.exe.debug.option.optimization.level.1780201794" name="Optimization Level" superClass="gnu.c.compiler.exe.debug.option.optimization.level" useByScannerDiscovery="false" valueType="enumerated"/> |  | ||||||
| 								<option id="gnu.c.compiler.exe.debug.option.debugging.level.1818423232" name="Debug Level" superClass="gnu.c.compiler.exe.debug.option.debugging.level" useByScannerDiscovery="false" value="gnu.c.debugging.level.max" valueType="enumerated"/> |  | ||||||
| 								<inputType id="cdt.managedbuild.tool.gnu.c.compiler.input.140891728" superClass="cdt.managedbuild.tool.gnu.c.compiler.input"/> |  | ||||||
| 							</tool> |  | ||||||
| 							<tool id="cdt.managedbuild.tool.gnu.c.linker.exe.debug.42216846" name="GCC C Linker" superClass="cdt.managedbuild.tool.gnu.c.linker.exe.debug"/> |  | ||||||
| 							<tool id="cdt.managedbuild.tool.gnu.cpp.linker.exe.debug.254057410" name="GCC C++ Linker" superClass="cdt.managedbuild.tool.gnu.cpp.linker.exe.debug"> |  | ||||||
| 								<inputType id="cdt.managedbuild.tool.gnu.cpp.linker.input.196770635" superClass="cdt.managedbuild.tool.gnu.cpp.linker.input"> |  | ||||||
| 									<additionalInput kind="additionalinputdependency" paths="$(USER_OBJS)"/> |  | ||||||
| 									<additionalInput kind="additionalinput" paths="$(LIBS)"/> |  | ||||||
| 								</inputType> |  | ||||||
| 							</tool> |  | ||||||
| 							<tool id="cdt.managedbuild.tool.gnu.assembler.exe.debug.1296290560" name="GCC Assembler" superClass="cdt.managedbuild.tool.gnu.assembler.exe.debug"> |  | ||||||
| 								<inputType id="cdt.managedbuild.tool.gnu.assembler.input.769565493" superClass="cdt.managedbuild.tool.gnu.assembler.input"/> |  | ||||||
| 							</tool> | 							</tool> | ||||||
| 						</toolChain> | 						</toolChain> | ||||||
| 					</folderInfo> | 					</folderInfo> | ||||||
| @@ -59,6 +44,9 @@ | |||||||
| 					<def name="CMAKE_BUILD_TYPE" type="STRING" val="Debug"/> | 					<def name="CMAKE_BUILD_TYPE" type="STRING" val="Debug"/> | ||||||
| 				</defs> | 				</defs> | ||||||
| 			</storageModule> | 			</storageModule> | ||||||
|  | 			<storageModule buildDir="build/${ConfigName}" dirtyTs="0" moduleId="de.marw.cmake4eclipse.mbs.settings"> | ||||||
|  | 				<options/> | ||||||
|  | 			</storageModule> | ||||||
| 		</cconfiguration> | 		</cconfiguration> | ||||||
| 		<cconfiguration id="cdt.managedbuild.config.gnu.exe.release.1745230171"> | 		<cconfiguration id="cdt.managedbuild.config.gnu.exe.release.1745230171"> | ||||||
| 			<storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="cdt.managedbuild.config.gnu.exe.release.1745230171" moduleId="org.eclipse.cdt.core.settings" name="Release"> | 			<storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="cdt.managedbuild.config.gnu.exe.release.1745230171" moduleId="org.eclipse.cdt.core.settings" name="Release"> | ||||||
| @@ -110,6 +98,7 @@ | |||||||
| 				<win32 command="cmake" generator="MinGWMakefiles" use-default="true"> | 				<win32 command="cmake" generator="MinGWMakefiles" use-default="true"> | ||||||
| 				</win32> | 				</win32> | ||||||
| 			</storageModule> | 			</storageModule> | ||||||
|  | 			<storageModule moduleId="de.marw.cmake4eclipse.mbs.settings"/> | ||||||
| 		</cconfiguration> | 		</cconfiguration> | ||||||
| 		<cconfiguration id="cdt.managedbuild.config.gnu.exe.release.1745230171.1259602404"> | 		<cconfiguration id="cdt.managedbuild.config.gnu.exe.release.1745230171.1259602404"> | ||||||
| 			<storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="cdt.managedbuild.config.gnu.exe.release.1745230171.1259602404" moduleId="org.eclipse.cdt.core.settings" name="RelWithDebInfo"> | 			<storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="cdt.managedbuild.config.gnu.exe.release.1745230171.1259602404" moduleId="org.eclipse.cdt.core.settings" name="RelWithDebInfo"> | ||||||
| @@ -168,6 +157,12 @@ | |||||||
| 					<def name="CMAKE_BUILD_TYPE" type="STRING" val="RelWithDebInfo"/> | 					<def name="CMAKE_BUILD_TYPE" type="STRING" val="RelWithDebInfo"/> | ||||||
| 				</defs> | 				</defs> | ||||||
| 			</storageModule> | 			</storageModule> | ||||||
|  | 			<storageModule buildDir="build/${ConfigName}" dirtyTs="1667667450035" moduleId="de.marw.cmake4eclipse.mbs.settings"> | ||||||
|  | 				<options/> | ||||||
|  | 				<defs> | ||||||
|  | 					<def name="CMAKE_BUILD_TYPE" type="STRING" val="RelWithDebInfo"/> | ||||||
|  | 				</defs> | ||||||
|  | 			</storageModule> | ||||||
| 		</cconfiguration> | 		</cconfiguration> | ||||||
| 	</storageModule> | 	</storageModule> | ||||||
| 	<storageModule moduleId="cdtBuildSystem" version="4.0.0"> | 	<storageModule moduleId="cdtBuildSystem" version="4.0.0"> | ||||||
|   | |||||||
							
								
								
									
										1
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										1
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							| @@ -31,3 +31,4 @@ language.settings.xml | |||||||
| /*.out | /*.out | ||||||
| /dump.json | /dump.json | ||||||
| /*.c | /*.c | ||||||
|  | /_build/ | ||||||
|   | |||||||
| @@ -1,10 +1,4 @@ | |||||||
| eclipse.preferences.version=1 | eclipse.preferences.version=1 | ||||||
| environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.exe.debug.1751741082/CPATH/delimiter=\: |  | ||||||
| environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.exe.debug.1751741082/CPATH/operation=remove |  | ||||||
| environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.exe.debug.1751741082/CPLUS_INCLUDE_PATH/delimiter=\: |  | ||||||
| environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.exe.debug.1751741082/CPLUS_INCLUDE_PATH/operation=remove |  | ||||||
| environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.exe.debug.1751741082/C_INCLUDE_PATH/delimiter=\: |  | ||||||
| environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.exe.debug.1751741082/C_INCLUDE_PATH/operation=remove |  | ||||||
| environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.exe.debug.1751741082/append=true | environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.exe.debug.1751741082/append=true | ||||||
| environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.exe.debug.1751741082/appendContributed=true | environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.exe.debug.1751741082/appendContributed=true | ||||||
| environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.exe.release.1745230171.1259602404/CPATH/delimiter=\: | environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.exe.release.1745230171.1259602404/CPATH/delimiter=\: | ||||||
| @@ -23,8 +17,6 @@ environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.exe.release.1745 | |||||||
| environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.exe.release.1745230171/C_INCLUDE_PATH/operation=remove | environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.exe.release.1745230171/C_INCLUDE_PATH/operation=remove | ||||||
| environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.exe.release.1745230171/append=true | environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.exe.release.1745230171/append=true | ||||||
| environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.exe.release.1745230171/appendContributed=true | environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.exe.release.1745230171/appendContributed=true | ||||||
| environment/buildEnvironmentLibrary/cdt.managedbuild.config.gnu.exe.debug.1751741082/LIBRARY_PATH/delimiter=\: |  | ||||||
| environment/buildEnvironmentLibrary/cdt.managedbuild.config.gnu.exe.debug.1751741082/LIBRARY_PATH/operation=remove |  | ||||||
| environment/buildEnvironmentLibrary/cdt.managedbuild.config.gnu.exe.debug.1751741082/append=true | environment/buildEnvironmentLibrary/cdt.managedbuild.config.gnu.exe.debug.1751741082/append=true | ||||||
| environment/buildEnvironmentLibrary/cdt.managedbuild.config.gnu.exe.debug.1751741082/appendContributed=true | environment/buildEnvironmentLibrary/cdt.managedbuild.config.gnu.exe.debug.1751741082/appendContributed=true | ||||||
| environment/buildEnvironmentLibrary/cdt.managedbuild.config.gnu.exe.release.1745230171.1259602404/LIBRARY_PATH/delimiter=\: | environment/buildEnvironmentLibrary/cdt.managedbuild.config.gnu.exe.release.1745230171.1259602404/LIBRARY_PATH/delimiter=\: | ||||||
|   | |||||||
| @@ -39,7 +39,73 @@ elseif ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "MSVC") | |||||||
|     set(warnings "/W4 /WX /EHsc") |     set(warnings "/W4 /WX /EHsc") | ||||||
| endif() | endif() | ||||||
|  |  | ||||||
| setup_conan(TARGETS) | include(GNUInstallDirs) | ||||||
|  | include(ConanInline) | ||||||
|  |  | ||||||
|  | set(CONAN_BOOST_OPTIONS | ||||||
|  | boost:fPIC=True | ||||||
|  | boost:shared=True | ||||||
|  | boost:header_only=False  | ||||||
|  | boost:without_contract=True | ||||||
|  | boost:without_graph=True | ||||||
|  | boost:without_graph_parallel=True | ||||||
|  | boost:without_iostreams=True | ||||||
|  | boost:without_json=True | ||||||
|  | boost:without_locale=True | ||||||
|  | boost:without_log=True | ||||||
|  | boost:without_math=True | ||||||
|  | boost:without_mpi=True | ||||||
|  | boost:without_nowide=True | ||||||
|  | boost:without_python=True | ||||||
|  | boost:without_random=True | ||||||
|  | boost:without_regex=True | ||||||
|  | boost:without_stacktrace=True | ||||||
|  | boost:without_test=True | ||||||
|  | boost:without_timer=True | ||||||
|  | boost:without_type_erasure=True | ||||||
|  | boost:without_wave=True | ||||||
|  | ) | ||||||
|  |  | ||||||
|  | set(B2_VERSION 4.8.0) | ||||||
|  | set(CONAN_PACKAGE_LIST fmt/6.1.2 zlib/1.2.11 b2/${B2_VERSION} boost/1.75.0 gsl-lite/0.37.0 elfio/3.8 tcc/0.9.27 seasocks/1.4.4) | ||||||
|  |  | ||||||
|  | set(CONAN_PACKAGE_OPTIONS seasocks:shared=True fmt:header_only=True ${CONAN_BOOST_OPTIONS}) | ||||||
|  | if(FORCE_SYSTEMC OR NOT DEFINED ENV{SYSTEMC_HOME}) | ||||||
|  |     list(APPEND CONAN_PACKAGE_LIST systemc/2.3.3 systemc-cci/1.0.0) | ||||||
|  |     list(APPEND CONAN_PACKAGE_OPTIONS systemc-cci:shared=False) | ||||||
|  | endif() | ||||||
|  |  | ||||||
|  | conan_check() | ||||||
|  | conan_add_remote(NAME minres URL https://git.minres.com/api/packages/Tooling/conan) | ||||||
|  |  | ||||||
|  | # Boost on CentOS 7 quirks: the b2 of conan-center is build against a newer libstdc++ and therefore does not run | ||||||
|  | # with the oooooold libs on CentOS 7. Therefore we build our own version of b2 if it is not there | ||||||
|  | set(B2_META $ENV{HOME}/.conan/data/b2/${B2_VERSION}/_/_/metadata.json) | ||||||
|  | if(DEFINED ENV{CONAN_USER_HOME}) | ||||||
|  | 	set(B2_META $ENV{CONAN_USER_HOME}/.conan/data/b2/${B2_VERSION}/_/_/metadata.json) | ||||||
|  | endif() | ||||||
|  | if(NOT EXISTS ${B2_META}) | ||||||
|  | 	conan_configure(REQUIRES b2/${B2_VERSION}) | ||||||
|  | 	conan_cmake_autodetect(settings) | ||||||
|  | 	conan_cmake_install(PATH_OR_REFERENCE . BUILD b2 SETTINGS ${settings}) | ||||||
|  | endif() | ||||||
|  | # Boost on CentOS 7 quirks end | ||||||
|  |  | ||||||
|  | conan_cmake_configure(REQUIRES ${CONAN_PACKAGE_LIST} | ||||||
|  |                       GENERATORS cmake_find_package cmake | ||||||
|  |                       OPTIONS ${CONAN_PACKAGE_OPTIONS} | ||||||
|  |                       ) | ||||||
|  |  | ||||||
|  | conan_install() | ||||||
|  | #conan_setup(TARGETS) | ||||||
|  | include(conanbuildinfo) | ||||||
|  | find_package(tcc) | ||||||
|  | find_package(elfio) | ||||||
|  | find_package(fmt) | ||||||
|  | find_package(gsl-lite) | ||||||
|  | find_package(ZLIB) | ||||||
|  | find_package(Seasocks) | ||||||
|  | find_package(Threads REQUIRED) | ||||||
|  |  | ||||||
| # This line finds the boost lib and headers.  | # This line finds the boost lib and headers.  | ||||||
| set(Boost_NO_BOOST_CMAKE ON) #  Don't do a find_package in config mode before searching for a regular boost install. | set(Boost_NO_BOOST_CMAKE ON) #  Don't do a find_package in config mode before searching for a regular boost install. | ||||||
|   | |||||||
							
								
								
									
										72
									
								
								README.md
									
									
									
									
									
								
							
							
						
						
									
										72
									
								
								README.md
									
									
									
									
									
								
							| @@ -1,71 +1,51 @@ | |||||||
| # RISCV-VP | # HIFIVE1-VP | ||||||
| An instruction set simulator based on DBT-RISE implementing the RISC-V ISA. The project is hosted at https://git.minres.com/VP/RISCV-VP. |  | ||||||
|  |  | ||||||
| **RISCV-VP README** | An instruction set simulator based on DBT-RISE implementing the RISC-V ISA. The project is hosted at https://github.com/Minres/HIFIVE1-VP. | ||||||
|  |  | ||||||
| This is work in progress, so use at your own risk. Goal is to implement an open-source ISS which can easily embedded e.g. into SystemC Virtual Prototypes. It uses code generation to allow easy extension and adaptation of the used instruction. Please see also [https://git.minres.com/DBT-RISE/DBT-RISE-RISCV](https://git.minres.com/DBT-RISE/DBT-RISE-RISCV) | ## HIFIVE1-VP README | ||||||
|  |  | ||||||
|  | This is work in progress, so use at your own risk. Goal is to implement an open-source ISS which can easily embedded e.g. into SystemC Virtual Prototypes. It uses code generation to allow easy extension and adaptation of the used instruction. Please see also [https://github.com/Minres/DBT-RISE-RISCV](https://github.com/Minres/DBT-RISE-RISCV) | ||||||
| The RISC-V ISS reaches about 65MIPS running on a decent Intel Processor. | The RISC-V ISS reaches about 65MIPS running on a decent Intel Processor. | ||||||
|  |  | ||||||
| The implementation is based on LLVM > v4.0. Eclipse CDT 4.7 (Oxygen) is recommended as IDE. | HIFIVE1-VP uses libGIS (https://github.com/vsergeev/libGIS) under MIT license  | ||||||
|  |  | ||||||
| RISCV-VP uses libGIS (https://github.com/vsergeev/libGIS) as well as ELFIO (http://elfio.sourceforge.net/), both under MIT license  | ## Setup steps | ||||||
|  |  | ||||||
|  |  | ||||||
| **Quick start** |  | ||||||
|  |  | ||||||
| * you need to have a C++11 capable compiler (e.g. gcc >= 4.8), make, python, and cmake installed | * you need to have a C++11 capable compiler (e.g. gcc >= 4.8), make, python, and cmake installed | ||||||
| * install LLVM >= 4.0 according to http://apt.llvm.org/ (if it is not already provided by your distribution e.g by Ubuntu 18.04) |  | ||||||
| * install conan.io (see also http://docs.conan.io/en/latest/installation.html): | * install conan.io (see also http://docs.conan.io/en/latest/installation.html): | ||||||
|  |  | ||||||
| ``` | ### prepare Ubuntu 18.04/20.04 | ||||||
|     pip install conan |  | ||||||
| ``` |  | ||||||
|  |  | ||||||
| * setup conan to use the minres repo: |  | ||||||
|  |  | ||||||
| ``` | ``` | ||||||
|     conan profile new default --detect --force | sudo apt-get install -y git python3-pip build-essential cmake libloki-dev zlib1g-dev libncurses5-dev \	 | ||||||
|     conan profile update settings.compiler.libcxx=libstdc++11 default |     libboost-dev libboost-program-options-dev libboost-system-dev libboost-thread-dev llvm-dev llvm-doc | ||||||
|     conan remote add minres https://artifactory.minres.com/artifactory/api/conan/oss" | pip3 install --user conan | ||||||
| ``` | ``` | ||||||
|  |  | ||||||
| * if you encounter issues when linking wrt. c++11 symbols you might have run into GCC ABI incompatibility introduced from GCC 5.0 onwards. You can fix this by adding '-s compiler.libcxx=libstdc++11' to the conan call or changing compiler.libcxx to | ### prepare Fedora 28 | ||||||
|  |  | ||||||
| ``` | ``` | ||||||
| compiler.libcxx=libstdc++11 | #prepare system | ||||||
|  | dnf install @development-tools gcc-c++ boost-devel zlib-devel loki-lib-devel cmake python2 python3 llvm-devel llvm-static | ||||||
|  | #install conan | ||||||
|  | pip3 install --user conan | ||||||
|  | export PATH=${PATH}:$HOME/.local/bin | ||||||
| ``` | ``` | ||||||
|   |   | ||||||
| in $HOME/.conan/profiles/default | ### Build the ISS | ||||||
|  |  | ||||||
| **Detailed Setup steps** |  | ||||||
|  |  | ||||||
| ***prepare Ubuntu 18.04/20.04*** |  | ||||||
|  |  | ||||||
| ``` | ``` | ||||||
|     sudo apt-get install -y git python3-pip build-essential cmake libloki-dev zlib1g-dev libncurses5-dev \	 | # checkout source from git:  | ||||||
|         libboost-dev libboost-program-options-dev libboost-system-dev libboost-thread-dev llvm-dev llvm-doc | git clone --recursive https://github.com/Minres/HIFIVE1-VP.git | ||||||
|     pip3 install --user conan | # build ISS: | ||||||
|  | cd HIFIVE1-VP | ||||||
|  | cmake -S . -B build | ||||||
|  | cmake --build build -j8 | ||||||
| ``` | ``` | ||||||
|  |  | ||||||
| ***prepare Fedora 28*** | ### Build the ISS | ||||||
|  |  | ||||||
| ``` | ``` | ||||||
|     #prepare system | build/platform/src/riscv-vp <elf file> -v4 -m 500ms | ||||||
|     dnf install @development-tools gcc-c++ boost-devel zlib-devel loki-lib-devel cmake python2 python3 llvm-devel llvm-static |  | ||||||
|     #install conan |  | ||||||
|     pip3 install --user conan |  | ||||||
|     export PATH=${PATH}:$HOME/.local/bin |  | ||||||
| ``` |  | ||||||
|   |  | ||||||
| ***Build the ISS*** |  | ||||||
|  |  | ||||||
| ``` |  | ||||||
|     # checkout source from git:  |  | ||||||
|     git clone --recursive https://git.minres.com/VP/HIFIVE1-VP.git |  | ||||||
|  |  | ||||||
|     # build ISS: |  | ||||||
|     cd HIFIVE1-VP |  | ||||||
|     mkdir build;cd build |  | ||||||
|     MAKE_FLAGS="-j4" cmake .. |  | ||||||
|     make -j4 |  | ||||||
| ``` | ``` | ||||||
|   | |||||||
| @@ -1,44 +0,0 @@ | |||||||
| [requires] |  | ||||||
|     gsl-lite/0.37.0 |  | ||||||
|     fmt/6.1.2 |  | ||||||
|     seasocks/1.4.4 |  | ||||||
|     systemc/2.3.3 |  | ||||||
|     systemc-cci/1.0.0 |  | ||||||
|     tcc/0.9.27 |  | ||||||
|     boost/1.75.0 |  | ||||||
|     zlib/1.2.11 |  | ||||||
|      |  | ||||||
| [generators] |  | ||||||
|     cmake |  | ||||||
|  |  | ||||||
| [options] |  | ||||||
|     seasocks:shared=True |  | ||||||
|     fmt:header_only=True |  | ||||||
|     boost:fPIC=True |  | ||||||
|     boost:shared=False |  | ||||||
|     boost:header_only=False |  | ||||||
|     boost:fPIC=True |  | ||||||
|     boost:shared=True |  | ||||||
|     boost:header_only=False  |  | ||||||
|     boost:without_context=True |  | ||||||
|     boost:without_contract=True |  | ||||||
|     boost:without_coroutine=True |  | ||||||
|     boost:without_fiber=True |  | ||||||
|     boost:without_graph=True |  | ||||||
|     boost:without_graph_parallel=True |  | ||||||
|     boost:without_iostreams=True |  | ||||||
|     boost:without_json=True |  | ||||||
|     boost:without_locale=True |  | ||||||
|     boost:without_log=True |  | ||||||
|     boost:without_math=True |  | ||||||
|     boost:without_mpi=True |  | ||||||
|     boost:without_nowide=True |  | ||||||
|     boost:without_python=True |  | ||||||
|     boost:without_random=True |  | ||||||
|     boost:without_regex=True |  | ||||||
|     boost:without_stacktrace=True |  | ||||||
|     boost:without_test=True |  | ||||||
|     boost:without_timer=True |  | ||||||
|     boost:without_type_erasure=True |  | ||||||
|     boost:without_wave=True |  | ||||||
|     systemc-cci:shared=False |  | ||||||
 Submodule dbt-rise-core updated: 44acf8a559...061b78825a
									
								
							 Submodule dbt-rise-riscv updated: ab9316b9b5...a16bf4f375
									
								
							
							
								
								
									
										18
									
								
								external/CMakeLists.txt
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										18
									
								
								external/CMakeLists.txt
									
									
									
									
										vendored
									
									
								
							| @@ -1,28 +1,14 @@ | |||||||
| cmake_minimum_required(VERSION 3.12) | cmake_minimum_required(VERSION 3.12) | ||||||
| set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${CMAKE_CURRENT_SOURCE_DIR}/../cmake) |  | ||||||
|  |  | ||||||
| # Set the name of your project here | # Set the name of your project here | ||||||
| project("external") | project("external") | ||||||
|  |  | ||||||
| include(Common) |  | ||||||
|  |  | ||||||
|  |  | ||||||
| include_directories( ${PROJECT_SOURCE_DIR}/libGIS ) |  | ||||||
|  |  | ||||||
| FILE(GLOB ElfioHeaders elfio *.hpp) |  | ||||||
| FILE(GLOB GISHeaders libGis *.h) |  | ||||||
|  |  | ||||||
| set(LIB_HEADERS ${ElfioHeaders} ${GISHeaders}) |  | ||||||
| set(LIB_SOURCES | set(LIB_SOURCES | ||||||
|     libGIS/atmel_generic.c |     libGIS/atmel_generic.c | ||||||
|     libGIS/ihex.c |     libGIS/ihex.c | ||||||
|     libGIS/srecord.c |     libGIS/srecord.c | ||||||
| ) | ) | ||||||
|  |  | ||||||
| # Define two variables in order not to repeat ourselves. |  | ||||||
| set(LIBRARY_NAME external) |  | ||||||
|  |  | ||||||
| # Define the library | # Define the library | ||||||
| add_library(${LIBRARY_NAME} ${LIB_SOURCES}) | add_library(${PROJECT_NAME} ${LIB_SOURCES}) | ||||||
|  | target_include_directories(${PROJECT_NAME} PUBLIC ${PROJECT_SOURCE_DIR}/libGIS) | ||||||
|  |  | ||||||
|   | |||||||
							
								
								
									
										1
									
								
								external/elfio
									
									
									
									
										vendored
									
									
								
							
							
								
								
								
								
								
							
						
						
									
										1
									
								
								external/elfio
									
									
									
									
										vendored
									
									
								
							 Submodule external/elfio deleted from 1c91bc2bc5
									
								
							| @@ -118,7 +118,7 @@ void CLIParser::build() { | |||||||
|             ("disass,d",       po::value<std::string>()->implicit_value(""), "Enables disassembly") |             ("disass,d",       po::value<std::string>()->implicit_value(""), "Enables disassembly") | ||||||
|             ("elf,l",          po::value<std::string>(), "ELF file to load") |             ("elf,l",          po::value<std::string>(), "ELF file to load") | ||||||
|             ("gdb-port,g",     po::value<unsigned short>()->default_value(0), "enable gdb server and specify port to use") |             ("gdb-port,g",     po::value<unsigned short>()->default_value(0), "enable gdb server and specify port to use") | ||||||
|             ("ir-dump",        "dump the intermediate representation") |             ("dump-ir",        "dump the intermediate representation") | ||||||
|             ("quantum",        po::value<unsigned>(), "SystemC quantum time in ns") |             ("quantum",        po::value<unsigned>(), "SystemC quantum time in ns") | ||||||
|             ("reset,r",        po::value<std::string>(), "reset address") |             ("reset,r",        po::value<std::string>(), "reset address") | ||||||
|             ("trace-level,t",  po::value<unsigned>()->default_value(0), "enable tracing, or combination of 1=signals and 2=TX text, 4=TX compressed text, 6=TX in SQLite") |             ("trace-level,t",  po::value<unsigned>()->default_value(0), "enable tracing, or combination of 1=signals and 2=TX text, 4=TX compressed text, 6=TX in SQLite") | ||||||
|   | |||||||
| @@ -41,7 +41,7 @@ endif() | |||||||
|  |  | ||||||
| add_library(platform ${LIB_SOURCES}) | add_library(platform ${LIB_SOURCES}) | ||||||
| target_include_directories(platform PUBLIC ../incl) | target_include_directories(platform PUBLIC ../incl) | ||||||
| target_link_libraries(platform PUBLIC dbt-rise-riscv-sc CONAN_PKG::seasocks external) | target_link_libraries(platform PUBLIC dbt-rise-riscv-sc Seasocks::seasocks external) | ||||||
| if(VERILATOR_FOUND) | if(VERILATOR_FOUND) | ||||||
| 	message(STATUS "Verilator found at ${VERILATOR_EXECUTABLE}") | 	message(STATUS "Verilator found at ${VERILATOR_EXECUTABLE}") | ||||||
|     target_include_directories(platform PRIVATE ${PROJECT_SOURCE_DIR}/incl/sysc/rtl)	 |     target_include_directories(platform PRIVATE ${PROJECT_SOURCE_DIR}/incl/sysc/rtl)	 | ||||||
|   | |||||||
| @@ -85,6 +85,7 @@ int sc_main(int argc, char *argv[]) { | |||||||
|     CLIParser parser(argc, argv); |     CLIParser parser(argc, argv); | ||||||
|     scc::stream_redirection cout_redir(std::cout, scc::log::INFO); |     scc::stream_redirection cout_redir(std::cout, scc::log::INFO); | ||||||
|     scc::stream_redirection cerr_redir(std::cerr, scc::log::ERROR); |     scc::stream_redirection cerr_redir(std::cerr, scc::log::ERROR); | ||||||
|  |     sc_report_handler::set_actions(SC_ERROR, SC_LOG | SC_CACHE_REPORT | SC_DISPLAY | SC_STOP); | ||||||
|     if (!parser.is_valid()) return ERROR_IN_COMMAND_LINE; |     if (!parser.is_valid()) return ERROR_IN_COMMAND_LINE; | ||||||
|     /////////////////////////////////////////////////////////////////////////// |     /////////////////////////////////////////////////////////////////////////// | ||||||
|     // set up infrastructure |     // set up infrastructure | ||||||
|   | |||||||
							
								
								
									
										2
									
								
								scc
									
									
									
									
									
								
							
							
								
								
								
								
								
							
						
						
									
										2
									
								
								scc
									
									
									
									
									
								
							 Submodule scc updated: 0f0d5943a8...8785c03bd8
									
								
							| @@ -11,7 +11,7 @@ | |||||||
| 			"i_terminal.write_to_ws" : false, | 			"i_terminal.write_to_ws" : false, | ||||||
| 			"i_fe310": { | 			"i_fe310": { | ||||||
| 				"enableTracing" : false, | 				"enableTracing" : false, | ||||||
| 				"i_gpio.write_to_ws": true, | 				"i_gpio0.write_to_ws": true, | ||||||
| 				"i_pwm0.enableTracing" : true, | 				"i_pwm0.enableTracing" : true, | ||||||
| 				"i_pwm0.regs.enableTracing" : true, | 				"i_pwm0.regs.enableTracing" : true, | ||||||
| 				"i_uart0.bit_true_transfer": false, | 				"i_uart0.bit_true_transfer": false, | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user