source: branches/fault_tolerance/platform/tsar_generic_iob/Makefile @ 717

Last change on this file since 717 was 717, checked in by cfuguet, 10 years ago

fault_tolerance/tsar_generic_iob:

  • introducing the vci_iopic component on the IOX interconnect.


  • the input hardware interrupts on cluster(0,0) from the external peripherals have been removed because they are connected to the vci_iopic component.


  • Replacing "ad-hoc" dspin_tsar router by standard dspin_router on the RAM interconnect. To do so, in IO clusters (clusters with IOB) two crossbars are implemented:

+ One for commands which interconnects MEMC and IOB to the

local interface of RAM CMD dspin_router.

+ One for responses which interconnects local interface of RAM

RSP dspin_router to MEMC and IOB.

  • Considering case of mono cluster platform: Only one IOB must be instantiated.
  • Modifying IOX memory segments used by IOX network for routing:


+ bugfix: all segments of IOX interconnect must have

global id = 0.

+ Adding XICU segments with special attribute. This

attribute is used by IOB to determine if a command coming
from external DMA peripheral should be routed
through INT or RAM networks.

+ Using bit 32 of physical address to determine if an

external DMA command should be routed through IOB0
or IOB1.


  • Property svn:executable set to *
File size: 1.5 KB
Line 
1ARGS           ?=
2SOCLIB_CC      := soclib-cc
3RM             := rm -rf
4CP             := cp -f
5MAKE           := make
6CONFIG_DIR     := $(PWD)/conf
7
8TARGET         := simul.x
9
10all: $(TARGET) tags
11
12# create simulator
13
14SRCS := top.cpp
15SRCS += tsar_iob_cluster/caba/source/src/tsar_iob_cluster.cpp
16INCS := tsar_iob_cluster/caba/source/include/tsar_iob_cluster.h
17INCS += $(CONFIG_DIR)/hard_config.h
18INCS += top.desc
19INCS += soclib.conf
20
21$(TARGET): $(SRCS) $(INCS) soclib.conf
22        $(SOCLIB_CC) -P -p top.desc -I. -o simul.x
23
24# create preloader
25
26PRELOADER_PATH := $(TSARPATH)/trunk/softs/tsar_boot
27PRELOADER_ARGS := "PLATFORM_DIR=$(CONFIG_DIR) USE_DT=0 SOCLIB=1"
28PRELOADER_NAME ?= soft/soft.elf
29
30$(PRELOADER_NAME):
31        $(MAKE) -C $(PRELOADER_PATH) "$(PRELOADER_ARGS)"
32        $(CP)   $(PRELOADER_PATH)/preloader.elf $(PRELOADER_NAME)
33
34preloader: $(PRELOADER_NAME)
35
36# run simulator
37
38SOFT           ?= $(PRELOADER_NAME)
39DISK           ?= /dev/null
40
41SIMULATOR_ARGS  = -SOFT $(SOFT)
42SIMULATOR_ARGS += -DISK $(DISK)
43SIMULATOR_ARGS += $(ARGS)
44
45run: $(TARGET) $(SOFT)
46        ./$< $(SIMULATOR_ARGS)
47
48# create tags file with cscope
49tags: cscope.out
50
51cscope.out:
52        $(SOCLIB_CC) -p top.desc --tags --tags-type=cscope --tags-output=$@
53
54# clean targets
55
56clean:
57        $(SOCLIB_CC) -X
58        $(SOCLIB_CC) -x -p top.desc -I.
59        $(RM) *.o *.x mtty_*
60
61clean-soft:
62        $(RM) $(SOFT)
63
64clean-tags:
65        $(RM) tags
66
67distclean: clean clean-soft clean-tags
68
69clean-preloader: clean-soft
70        $(MAKE) -C $(PRELOADER_PATH) clean
71
72
73.PHONY: tags simul.x preloader clean clean-soft clean-preloader
74
Note: See TracBrowser for help on using the repository browser.