Ignore:
Timestamp:
Apr 14, 2009, 8:39:12 PM (15 years ago)
Author:
rosiere
Message:

1) Add modelsim simulation systemC
2) Modelsim cosimulation systemC / VHDL is not finish !!!! (cf execute_queue and write_unit)
3) Add multi architecture
5) Add template for comparator, multiplier and divider
6) Change Message
Warning) Various test macro have change, many selftest can't compile

Location:
trunk/IPs/systemC/Environment
Files:
8 added
10 edited

Legend:

Unmodified
Added
Removed
  • trunk/IPs/systemC/Environment/Cache/Makefile

    r88 r113  
    1 #-----[ Directory ]----------------------------------------
    2 
    3 DIR_QUEUE                       = ../Queue
    4 
    5 #-----[ Variable ]-----------------------------------------
    6 
    7 ENTITY                         ?= Cache
    8 
    9 OBJECTS_DEPS                    = $(patsubst $(DIR_QUEUE)/$(DIR_SRC)/%.cpp,$(DIR_QUEUE)/$(DIR_OBJ)/%.o,$(wildcard $(DIR_QUEUE)/$(DIR_SRC)/*.cpp))
    10 
    111#-----[ Rules ]--------------------------------------------
    122
     
    2616                                @$(MAKE) environment_help
    2717
    28 include                         ../Makefile.Environment
     18include                         Makefile.defs
     19include                         $(DIR_ENVIRONMENT)/Makefile.Environment
  • trunk/IPs/systemC/Environment/Data/Makefile

    r88 r113  
    1 #-----[ Directory ]----------------------------------------
    2 
    3 # DIR_ENDIANNESS                        = ../Endianness
    4 
    5 #-----[ Variable ]-----------------------------------------
    6 
    7 ENTITY                         ?= Data
    8 
    9 # OBJECTS_DEPS                  = $(patsubst $(DIR_ENDIANNESS)/$(DIR_SRC)/%.cpp,$(DIR_ENDIANNESS)/$(DIR_OBJ)/%.o,$(wildcard $(DIR_ENDIANNESS)/$(DIR_SRC)/*.cpp))
    10 
    111#-----[ Rules ]--------------------------------------------
    122
    133all                             :
    14                                 @\
    15                                 $(MAKE) all_environment
    16 
    17 #                               $(MAKE) --directory=$(DIR_ENDIANNESS) all; \
     4                                @$(MAKE) all_environment
    185
    196clean                           :
    20                                 @\
    21                                 $(MAKE) environment_clean
    22 
    23 #                               $(MAKE) --directory=$(DIR_ENDIANNESS) clean; \
     7                                @$(MAKE) environment_clean
    248
    259clean_all                       : clean
     
    2812                                @$(MAKE) environment_help
    2913
    30 include                         ../Makefile.Environment
     14include                         Makefile.defs
     15include                         $(DIR_ENVIRONMENT)/Makefile.Environment
  • trunk/IPs/systemC/Environment/Endianness/Makefile

    r88 r113  
    1 #-----[ Directory ]----------------------------------------
    2 
    3 #-----[ Variable ]-----------------------------------------
    4 
    5 ENTITY                         ?= Endianness
    6 
    7 #OBJECTS_DEPS                   =
    8 
    91#-----[ Rules ]--------------------------------------------
    102
     
    2214                                @$(MAKE) environment_help
    2315
    24 include                         ../Makefile.Environment
     16include                         Makefile.defs
     17include                         $(DIR_ENVIRONMENT)/Makefile.Environment
  • trunk/IPs/systemC/Environment/Makefile

    r88 r113  
     1ifeq ($(origin MORPHEO_TMP), undefined)
     2        $(error "variable MORPHEO_TMP      is undefined");
     3endif
     4
    15#-----[ Directory ]----------------------------------------
     6DIR_LIB                         = $(DIR_TMP)/lib
     7DIR_ENVIRONMENT                 = .
     8DIR_CACHE                       = Cache
     9DIR_DATA                        = Data
     10DIR_ENDIANNESS                  = Endianness
     11DIR_QUEUE                       = Queue
     12DIR_RAMLOCK                     = RamLock
     13DIR_SIM2OS                      = Sim2OS
     14DIR_TTY                         = TTY
    215
    3 DIR_LIB                         = ./lib
    4 DIR_CACHE                       = ./Cache
    5 DIR_DATA                        = ./Data
    6 DIR_ENDIANNESS                  = ./Endianness
    7 DIR_QUEUE                       = ./Queue
    8 DIR_RAMLOCK                     = ./RamLock
    9 DIR_SIM2OS                      = ./Sim2OS
    10 DIR_TTY                         = ./TTY
     16include $(DIR_CACHE)/Makefile.defs
     17include $(DIR_DATA)/Makefile.defs
     18include $(DIR_ENDIANNESS)/Makefile.defs
     19include $(DIR_QUEUE)/Makefile.defs
     20include $(DIR_RAMLOCK)/Makefile.defs
     21include $(DIR_SIM2OS)/Makefile.defs
     22include $(DIR_TTY)/Makefile.defs
    1123
    1224#-----[ Variable ]-----------------------------------------
    13 ENTITY                         ?=       Environment
    1425
    15 LIBRARY_NAME                    = Environment
    16 LIBRARY_FILE                    = $(DIR_LIB)/lib$(LIBRARY_NAME).a
     26ENTITY                          := Environment
     27DIR_SRC                          = $(DIR_ENVIRONMENT)/src
    1728
    18 OBJECTS_DEPS                    =       $(patsubst $(DIR_CACHE)/$(DIR_SRC)/%.cpp,$(DIR_CACHE)/$(DIR_OBJ)/%.o,$(wildcard $(DIR_CACHE)/$(DIR_SRC)/*.cpp))                 \
    19                                         $(patsubst $(DIR_DATA)/$(DIR_SRC)/%.cpp,$(DIR_DATA)/$(DIR_OBJ)/%.o,$(wildcard $(DIR_DATA)/$(DIR_SRC)/*.cpp))                    \
    20                                         $(patsubst $(DIR_DATA)/$(DIR_SRC)/%.c,$(DIR_DATA)/$(DIR_OBJ)/%.o,$(wildcard $(DIR_DATA)/$(DIR_SRC)/*.c))                        \
    21                                         $(patsubst $(DIR_ENDIANNESS)/$(DIR_SRC)/%.cpp,$(DIR_ENDIANNESS)/$(DIR_OBJ)/%.o,$(wildcard $(DIR_ENDIANNESS)/$(DIR_SRC)/*.cpp))  \
    22                                         $(patsubst $(DIR_QUEUE)/$(DIR_SRC)/%.cpp,$(DIR_QUEUE)/$(DIR_OBJ)/%.o,$(wildcard $(DIR_QUEUE)/$(DIR_SRC)/*.cpp))                 \
    23                                         $(patsubst $(DIR_RAMLOCK)/$(DIR_SRC)/%.cpp,$(DIR_RAMLOCK)/$(DIR_OBJ)/%.o,$(wildcard $(DIR_RAMLOCK)/$(DIR_SRC)/*.cpp))           \
    24                                         $(patsubst $(DIR_SIM2OS)/$(DIR_SRC)/%.cpp,$(DIR_SIM2OS)/$(DIR_OBJ)/%.o,$(wildcard $(DIR_SIM2OS)/$(DIR_SRC)/*.cpp))              \
    25                                         $(patsubst $(DIR_TTY)/$(DIR_SRC)/%.cpp,$(DIR_TTY)/$(DIR_OBJ)/%.o,$(wildcard $(DIR_TTY)/$(DIR_SRC)/*.cpp))                       
     29include                          $(DIR_ENVIRONMENT)/Makefile.defs
    2630
     31LIBRARY_NAME                    := $(ENTITY)
     32LIBRARY_FILE                    := $(DIR_LIB)/lib$(LIBRARY_NAME).a
     33
     34Environment_OBJECTS_DEPS        :=      $(OBJECTS) \
     35                                        $(Cache_OBJECTS_DEPS) \
     36                                        $(Data_OBJECTS_DEPS) \
     37                                        $(Endianness_OBJECTS_DEPS) \
     38                                        $(Queue_OBJECTS_DEPS) \
     39                                        $(RamLock_OBJECTS_DEPS) \
     40                                        $(Sim2OS_OBJECTS_DEPS) \
     41                                        $(TTY_OBJECTS_DEPS)
    2742
    2843#-----[ Rules ]--------------------------------------------
    2944
    30 all                             : a b c d e f g
     45all                             :
    3146                                @\
    3247                                $(MAKE) all_environment; \
     48                                $(MAKE) --directory=$(DIR_CACHE)      all; \
     49                                $(MAKE) --directory=$(DIR_DATA)       all; \
     50                                $(MAKE) --directory=$(DIR_ENDIANNESS) all; \
     51                                $(MAKE) --directory=$(DIR_QUEUE)      all; \
     52                                $(MAKE) --directory=$(DIR_RAMLOCK)    all; \
     53                                $(MAKE) --directory=$(DIR_SIM2OS)     all; \
     54                                $(MAKE) --directory=$(DIR_TTY)        all; \
    3355                                $(MAKE) $(LIBRARY_FILE);
    3456
    35 a                               :
    36                                 @\
    37                                 $(MAKE) --directory=$(DIR_CACHE)      all;
    3857
    39 b                               :
    40                                 @\
    41                                 $(MAKE) --directory=$(DIR_DATA)       all;
    42 
    43 c                               :
    44                                 @\
    45                                 $(MAKE) --directory=$(DIR_ENDIANNESS) all;
    46 
    47 d                               :
    48                                 @\
    49                                 $(MAKE) --directory=$(DIR_QUEUE)      all;
    50 
    51 e                               :
    52                                 @\
    53                                 $(MAKE) --directory=$(DIR_RAMLOCK)    all;
    54 
    55 f                               :
    56                                 @\
    57                                 $(MAKE) --directory=$(DIR_SIM2OS)     all;
    58 
    59 g                               :
    60                                 @\
    61                                 $(MAKE) --directory=$(DIR_TTY)        all;
    62 
    63 
    64 $(LIBRARY_FILE)                 : $(OBJECTS_DEPS) $(OBJECTS) $(DIR_LIB)
     58$(LIBRARY_FILE)                 : $(Environment_OBJECTS_DEPS)
    6559                                @\
    6660                                $(ECHO) "Archive            : $@";\
    67                                 $(AR)  -r $@ $(OBJECTS_DEPS) $(OBJECTS);\
     61                                $(ECHO) "Archive            : $@";\
     62                                $(MKDIR) $(DIR_LIB);\
     63                                $(AR)  -r $@ $(Environment_OBJECTS_DEPS);\
    6864                                $(RANLIB) $@;
    6965
     
    7167                                @\
    7268                                $(ECHO) "Create directory   : $@";\
    73                                 $(MKDIR) $@;
     69                                $(MKDIR) $@
    7470
    7571exe_all                         :
    7672                                @\
     73                                $(MAKE) --directory=$(DIR_CACHE)      clean; \
    7774                                $(MAKE) --directory=$(DIR_CACHE)      exe; \
     75                                $(MAKE) --directory=$(DIR_DATA)       clean; \
    7876                                $(MAKE) --directory=$(DIR_DATA)       exe; \
     77                                $(MAKE) --directory=$(DIR_ENDIANNESS) clean; \
    7978                                $(MAKE) --directory=$(DIR_ENDIANNESS) exe; \
     79                                $(MAKE) --directory=$(DIR_QUEUE)      clean; \
    8080                                $(MAKE) --directory=$(DIR_QUEUE)      exe; \
     81                                $(MAKE) --directory=$(DIR_RAMLOCK)    clean; \
    8182                                $(MAKE) --directory=$(DIR_RAMLOCK)    exe; \
     83                                $(MAKE) --directory=$(DIR_SIM2OS)     clean; \
    8284                                $(MAKE) --directory=$(DIR_SIM2OS)     exe; \
     85                                $(MAKE) --directory=$(DIR_TTY)        clean; \
    8386                                $(MAKE) --directory=$(DIR_TTY)        exe; \
    84                                 $(MAKE) exe; \
     87                                $(MAKE) clean; \
     88                                $(MAKE) exe;
    8589
    8690clean                           :
  • trunk/IPs/systemC/Environment/Makefile.Environment

    r88 r113  
    1 ifeq ($(origin MORPHEO_TOPLEVEL), undefined)
    2         $(error "variable MORPHEO_TOPLEVEL is undefined");
    3 else
    4         include $(MORPHEO_TOPLEVEL)/Makefile.tools
    5         include $(MORPHEO_TOPLEVEL)/Makefile.flags
    6 endif
    7 
    8 #-----[ Directory ]----------------------------------------
    9 ENTITY                         ?=       Environment
    10 
    11 DIR_TMP                         =       $(MORPHEO_TMP)/$(ENTITY)
    12 DIR_TST                         =       ./selftest
    13 DIR_INC                         =       ./include
    14 DIR_SRC                         =       ./src
    15 DIR_OBJ                         =       ./obj
    16 DIR_BIN                         =       $(DIR_TMP)/bin
    17 
    18 #-----[ Compilation ]--------------------------------------
    19 INCDIR                          = $(SYSTEMC_INCDIR_$(SIMULATOR))        \
    20                                   -I$(DIR_INC)                          \
    21                                   -I../processor/Morpheo
    22 
    23 LIBDIR                          = $(SYSTEMC_LIBDIR_$(SIMULATOR))
    24 
    25 LIBNAME                         = -lbfd                                 \
    26                                   -liberty                              \
    27                                   $(SYSTEMC_LIBNAME_$(SIMULATOR))
    28 
    29 FLAGS                           = $(SYSTEMC_CFLAGS_$(SIMULATOR))
    30 
    31 MORPHEO_CC_FLAGS                = $(MORPHEO_FLAGS) $(CC_FLAGS)           $(INCDIR)
    32 MORPHEO_CXX_FLAGS               = $(MORPHEO_FLAGS) $(CXX_FLAGS) $(FLAGS) $(INCDIR)
    33 MORPHEO_L_FLAGS                 = $(MORPHEO_FLAGS) $(CXX_FLAGS) $(FLAGS) $(LIBDIR)
    34 
    35 #-----[ Variable ]-----------------------------------------
    36 
    37 OBJECTS                         = $(patsubst $(DIR_SRC)/%.cpp,$(DIR_OBJ)/%.o,$(wildcard $(DIR_SRC)/*.cpp)) \
    38                                   $(patsubst $(DIR_SRC)/%.c,$(DIR_OBJ)/%.o,$(wildcard $(DIR_SRC)/*.c))
    39 OBJECTS_BIN                     = $(patsubst $(DIR_TST)/%.cpp,$(DIR_OBJ)/%.o,$(wildcard $(DIR_TST)/*.cpp))
    40 
    41 HEADERS                         = $(wildcard $(DIR_INC)/*.h)
    42 
    43 EXE                             = $(DIR_BIN)/soft.x
    44 
    45 EXEC_PREFIX                     =
    46 #$(VALGRIND)
     1include Makefile.defs
    472
    483#-----[ Rules ]--------------------------------------------
     
    538vpath   %.o     $(DIR_OBJ)
    549
    55 .PRECIOUS                       : $(DIR_OBJ)/%.o $(DIR_BIN)/%.x
     10.PRECIOUS                       : $(DIR_OBJ)/$(ENTITY)_%.o $(DIR_BIN)/%.x
    5611
    5712test_env                        :
     
    5914                                $(ECHO) "-------------------| $(ENTITY)"
    6015
    61 $(DIR_OBJ)/%.o                  : %.cpp $(HEADERS)
     16$(DIR_OBJ)/$(ENTITY)_%.o        : %.cpp $(HEADERS)
    6217                                @\
    6318                                $(ECHO) "Compilation        : $*";\
    6419                                $(CXX) $(MORPHEO_CXX_FLAGS) -c -o $@ $<;
    6520
    66 $(DIR_OBJ)/%.o                  : %.c $(HEADERS)
     21$(DIR_OBJ)/$(ENTITY)_%.o        : %.c $(HEADERS)
    6722                                @\
    6823                                $(ECHO) "Compilation        : $*";\
    6924                                $(CC)  $(MORPHEO_CC_FLAGS)  -c -o $@ $<;
    7025
    71 $(DIR_BIN)/%.x                  : $(OBJECTS_DEPS) $(OBJECTS) $(OBJECTS_BIN)
    72                                 \
     26$(DIR_BIN)/%.x                  : $($(ENTITY)_OBJECTS_DEPS) $(OBJECTS_BIN)
     27                                @\
    7328                                $(ECHO) "Compilation        : $*";\
    7429                                $(CXX) $(MORPHEO_L_FLAGS)      -o $@ $^ $(LIBNAME);
     
    9348all_environment                 : test_env $(DIR_OBJ)
    9449                                @\
    95                                 $(MAKE) $(OBJECTS_DEPS) $(OBJECTS) $(OBJECTS_BIN)
     50                                $(MAKE) $($(ENTITY)_OBJECTS_DEPS) $(OBJECTS_BIN)
    9651
    9752environment_clean               :
  • trunk/IPs/systemC/Environment/Makefile.deps

    r88 r113  
    1717ENVIRONMENT_INCDIR              =       -I$(ENVIRONMENT_DIR)/include
    1818ENVIRONMENT_LIBDIR              =       -L$(ENVIRONMENT_DIR)/lib
    19 ENVIRONMENT_LIBNAME             =       -lEnvironment -lbfd -liberty 
     19ENVIRONMENT_LIBNAME             =       -lEnvironment -lbfd -liberty
  • trunk/IPs/systemC/Environment/Queue/Makefile

    r88 r113  
    1 #-----[ Variables ]----------------------------------------
    2 
    3 ENTITY                         ?= Queue
    4 
    51#-----[ Rules ]--------------------------------------------
    62
     
    1612                                @$(MAKE) environment_help
    1713
    18 include                         ../Makefile.Environment
     14include                         Makefile.defs
     15include                         $(DIR_ENVIRONMENT)/Makefile.Environment
  • trunk/IPs/systemC/Environment/RamLock/Makefile

    r88 r113  
    1 #-----[ Variables ]----------------------------------------
    2 
    3 ENTITY                         ?= RamLock
    4 
    51#-----[ Rules ]--------------------------------------------
    62
     
    1612                                @$(MAKE) environment_help
    1713
    18 include                         ../Makefile.Environment
     14include                         Makefile.defs
     15include                         $(DIR_ENVIRONMENT)/Makefile.Environment
  • trunk/IPs/systemC/Environment/Sim2OS/Makefile

    r88 r113  
    1 #-----[ Directory ]----------------------------------------
    2 
    3 DIR_ENDIANNESS                  = ../Endianness
    4 
    5 #-----[ Variable ]-----------------------------------------
    6 
    7 ENTITY                         ?= Sim2OS
    8 
    9 OBJECTS_DEPS                    = $(patsubst $(DIR_ENDIANNESS)/$(DIR_SRC)/%.cpp,$(DIR_ENDIANNESS)/$(DIR_OBJ)/%.o,$(wildcard $(DIR_ENDIANNESS)/$(DIR_SRC)/*.cpp))
    10 
    111#-----[ Rules ]--------------------------------------------
    122
     
    2616                                @$(MAKE) environment_help
    2717
    28 include                         ../Makefile.Environment
     18include                         Makefile.defs
     19include                         $(DIR_ENVIRONMENT)/Makefile.Environment
     20
  • trunk/IPs/systemC/Environment/TTY/Makefile

    r88 r113  
    1 #-----[ Directory ]----------------------------------------
    2 
    3 #-----[ Variable ]-----------------------------------------
    4 
    5 ENTITY                         ?= TTY
    6 
    7 #OBJECTS_DEPS                   =
    8 
    91#-----[ Rules ]--------------------------------------------
    102
    113all                             :
    12                                 @\
    13                                 $(MAKE) all_environment;
     4                                @$(MAKE) all_environment
    145
    156clean                           :
    16                                 @\
    17                                 $(MAKE)  environment_clean;\
    18                                 $(RM) tty_*;
     7                                @$(MAKE) environment_clean; $(RM) tty_*
    198
    209clean_all                       : clean
Note: See TracChangeset for help on using the changeset viewer.