Added SystemC toplevel for comparison purposes
This commit is contained in:
parent
e633cc6134
commit
0120610f83
|
@ -72,6 +72,7 @@ include(sc-components/cmake/clang-format.cmake)
|
||||||
|
|
||||||
add_subdirectory(sc-components)
|
add_subdirectory(sc-components)
|
||||||
add_subdirectory(components)
|
add_subdirectory(components)
|
||||||
|
add_subdirectory(top)
|
||||||
|
|
||||||
# CTest is a testing tool that can be used to test your project.
|
# CTest is a testing tool that can be used to test your project.
|
||||||
# enable_testing()
|
# enable_testing()
|
||||||
|
|
|
@ -1,15 +1,12 @@
|
||||||
FILE(GLOB LibHeaders *.h)
|
|
||||||
set(LIB_HEADERS ${LibHeaders} )
|
|
||||||
set(LIB_SOURCES
|
set(LIB_SOURCES
|
||||||
initiator.cpp
|
initiator.cpp
|
||||||
logging.cpp
|
logging.cpp
|
||||||
target.cpp
|
target.cpp
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
# Define two variables in order not to repeat ourselves.
|
# Define two variables in order not to repeat ourselves.
|
||||||
set(LIBRARY_NAME components)
|
set(LIBRARY_NAME components)
|
||||||
|
|
||||||
# Define the library
|
# Define the library
|
||||||
add_library(${LIBRARY_NAME} SHARED ${LIB_SOURCES})
|
add_library(${LIBRARY_NAME} SHARED ${LIB_SOURCES})
|
||||||
target_link_libraries (${LIBRARY_NAME} LINK_PUBLIC sc-components)
|
target_link_libraries (${LIBRARY_NAME} LINK_PUBLIC sc-components)
|
||||||
|
target_include_directories (components PUBLIC ${CMAKE_CURRENT_SOURCE_DIR})
|
||||||
|
|
|
@ -0,0 +1,4 @@
|
||||||
|
cmake_minimum_required(VERSION 3.3)
|
||||||
|
set(APP_NAME top)
|
||||||
|
add_executable(${APP_NAME} sc_main.cpp)
|
||||||
|
target_link_libraries (${APP_NAME} LINK_PUBLIC components)
|
|
@ -0,0 +1,49 @@
|
||||||
|
////////////////////////////////////////////////////////////////////////////////
|
||||||
|
// Copyright 2017 eyck@minres.com
|
||||||
|
//
|
||||||
|
// Licensed under the Apache License, Version 2.0 (the "License"); you may not
|
||||||
|
// use this file except in compliance with the License. You may obtain a copy
|
||||||
|
// of the License at
|
||||||
|
//
|
||||||
|
// http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
//
|
||||||
|
// Unless required by applicable law or agreed to in writing, software
|
||||||
|
// distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
|
||||||
|
// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
|
||||||
|
// License for the specific language governing permissions and limitations under
|
||||||
|
// the License.
|
||||||
|
////////////////////////////////////////////////////////////////////////////////
|
||||||
|
/*
|
||||||
|
* sc_main.cpp
|
||||||
|
*
|
||||||
|
* Created on: 17.09.2017
|
||||||
|
* Author: eyck@minres.com
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include "top.h"
|
||||||
|
#include <scc/report.h>
|
||||||
|
|
||||||
|
using namespace scc;
|
||||||
|
|
||||||
|
int sc_main(int argc, char *argv[]) {
|
||||||
|
///////////////////////////////////////////////////////////////////////////
|
||||||
|
// configure logging
|
||||||
|
///////////////////////////////////////////////////////////////////////////
|
||||||
|
scc::init_logging(logging::INFO);
|
||||||
|
|
||||||
|
///////////////////////////////////////////////////////////////////////////
|
||||||
|
// instantiate top level
|
||||||
|
///////////////////////////////////////////////////////////////////////////
|
||||||
|
Top i_top("i_top");
|
||||||
|
|
||||||
|
///////////////////////////////////////////////////////////////////////////
|
||||||
|
// run simulation
|
||||||
|
///////////////////////////////////////////////////////////////////////////
|
||||||
|
sc_start();
|
||||||
|
// todo: provide end-of-simulation macros
|
||||||
|
|
||||||
|
if (!sc_core::sc_end_of_simulation_invoked()) {
|
||||||
|
sc_core::sc_stop();
|
||||||
|
}
|
||||||
|
return 0;
|
||||||
|
}
|
Loading…
Reference in New Issue