Ignore:
Timestamp:
Dec 19, 2013, 9:36:48 AM (11 years ago)
Author:
alain
Message:

Introducing support for TSAR fixed format cluster index (cluster_xy)
We have now 4 parameters defined in map.xml:

  • X_WIDTH, Y_WIDTH define the fixed format (typically X_WIDTH = 4 / Y_WIDTH = 4)
  • X_SIZE, Y_SIZE define the actual TSAR 2D mesh variable size (from 1 to 16)
File:
1 edited

Legend:

Unmodified
Added
Removed
  • soft/giet_vm/mappings/4c_1p_iob_four.xml

    r258 r263  
    33<mapping_info signature    = "0xdeadbeef"
    44              name         = "4c_1p_iob_four"
    5               cluster_x    = "2"
    6               cluster_y    = "2"
     5              x_size       = "2"
     6              y_size       = "2"
     7              x_width      = "4"
     8              y_width      = "4"
    79              vspaces      = "4"
    810              increment    = "0x10000" >
     
    1618    <clusterset>
    1719
    18         <cluster index = "0" >
     20        <cluster x = "0" y = "0" >
    1921            <pseg name = "PSEG_RAM"  type = "RAM"  base = "0x0000000000" length = "0x0010000000" />
    2022            <pseg name = "PSEG_XCU"  type = "PERI" base = "0x00B0000000" length = "0x0000002000" />
     
    7981        </cluster>
    8082
    81         <cluster index = "1" >
    82             <pseg name = "PSEG_RAM"  type = "RAM"  base = "0x4000000000" length = "0x0010000000" />
    83             <pseg name = "PSEG_XCU"  type = "PERI" base = "0x40B0000000" length = "0x0000002000" />
    84             <pseg name = "PSEG_DMA"  type = "PERI" base = "0x40B1000000" length = "0x0000008000" />
    85             <pseg name = "PSEG_MMC"  type = "PERI" base = "0x40B2000000" length = "0x0000001000" />
     83        <cluster x = "0" y = "1" >
     84            <pseg name = "PSEG_RAM"  type = "RAM"  base = "0x0100000000" length = "0x0010000000" />
     85            <pseg name = "PSEG_XCU"  type = "PERI" base = "0x01B0000000" length = "0x0000002000" />
     86            <pseg name = "PSEG_DMA"  type = "PERI" base = "0x10B1000000" length = "0x0000008000" />
     87            <pseg name = "PSEG_MMC"  type = "PERI" base = "0x01B2000000" length = "0x0000001000" />
    8688
    8789            <proc index = "0" >
     
    9597        </cluster>
    9698
    97         <cluster index = "2" >
    98             <pseg name = "PSEG_RAM"  type = "RAM"  base = "0x8000000000" length = "0x0010000000" />
    99             <pseg name = "PSEG_XCU"  type = "PERI" base = "0x80B0000000" length = "0x0000002000" />
    100             <pseg name = "PSEG_DMA"  type = "PERI" base = "0x80B1000000" length = "0x0000008000" />
    101             <pseg name = "PSEG_MMC"  type = "PERI" base = "0x80B2000000" length = "0x0000001000" />
     99        <cluster x = "1" y = "0" >
     100            <pseg name = "PSEG_RAM"  type = "RAM"  base = "0x1000000000" length = "0x0010000000" />
     101            <pseg name = "PSEG_XCU"  type = "PERI" base = "0x10B0000000" length = "0x0000002000" />
     102            <pseg name = "PSEG_DMA"  type = "PERI" base = "0x10B1000000" length = "0x0000008000" />
     103            <pseg name = "PSEG_MMC"  type = "PERI" base = "0x10B2000000" length = "0x0000001000" />
    102104
    103105            <proc index = "0" >
     
    111113        </cluster>
    112114
    113         <cluster index = "3" >
    114             <pseg name = "PSEG_RAM"  type = "RAM"  base = "0xC000000000" length = "0x0010000000" />
    115             <pseg name = "PSEG_XCU"  type = "PERI" base = "0xC0B0000000" length = "0x0000002000" />
    116             <pseg name = "PSEG_DMA"  type = "PERI" base = "0xC0B1000000" length = "0x0000008000" />
    117             <pseg name = "PSEG_MMC"  type = "PERI" base = "0xC0B2000000" length = "0x0000001000" />
     115        <cluster x = "1" y = "1" >
     116            <pseg name = "PSEG_RAM"  type = "RAM"  base = "0x1100000000" length = "0x0010000000" />
     117            <pseg name = "PSEG_XCU"  type = "PERI" base = "0x11B0000000" length = "0x0000002000" />
     118            <pseg name = "PSEG_DMA"  type = "PERI" base = "0x11B1000000" length = "0x0000008000" />
     119            <pseg name = "PSEG_MMC"  type = "PERI" base = "0x11B2000000" length = "0x0000001000" />
    118120
    119121            <proc index = "0" >
     
    136138- seg_boot_buffer is used by the boot-loader. It can contain a complete .elf file. The content is not reused by the kernel.
    137139
    138         <vseg name = "seg_boot_mapping"   vbase = "0x00000000" mode = "C_W_" clusterid = "0" psegname = "PSEG_RAM" ident = "1" >
     140        <vseg name = "seg_boot_mapping"   vbase = "0x00000000" mode = "C_W_" x = "0" y = "0" psegname = "PSEG_RAM" ident = "1" >
    139141            <vobj name = "boot_mapping"   type = "BLOB"   length = "0x00010000" binpath = "map.bin" />
    140142        </vseg>
    141         <vseg name = "seg_boot_code"      vbase = "0x00010000" mode = "CXW_" clusterid = "0" psegname = "PSEG_RAM" ident = "1" >
     143        <vseg name = "seg_boot_code"      vbase = "0x00010000" mode = "CXW_" x = "0" y = "0" psegname = "PSEG_RAM" ident = "1" >
    142144            <vobj name = "boot_code"      type = "BUFFER" length = "0x00020000" />
    143145        </vseg>
    144         <vseg name = "seg_boot_data"      vbase = "0x00030000" mode = "C_W_" clusterid = "0" psegname = "PSEG_RAM" ident = "1" >
     146        <vseg name = "seg_boot_data"      vbase = "0x00030000" mode = "C_W_" x = "0" y = "0" psegname = "PSEG_RAM" ident = "1" >
    145147            <vobj name = "boot_data"      type = "BUFFER" length = "0x00010000" />
    146148        </vseg>
    147         <vseg name = "seg_boot_buffer"    vbase = "0x00040000" mode = "C_W_" clusterid = "0" psegname = "PSEG_RAM" ident = "1" >
     149        <vseg name = "seg_boot_buffer"    vbase = "0x00040000" mode = "C_W_" x = "0" y = "0" psegname = "PSEG_RAM" ident = "1" >
    148150            <vobj name = "boot_buffer"    type = "BUFFER" length = "0x00020000" />
    149151        </vseg>
    150         <vseg name = "seg_boot_stack"     vbase = "0x00060000" mode = "C_W_" clusterid = "0" psegname = "PSEG_RAM" ident = "1" >
     152        <vseg name = "seg_boot_stack"     vbase = "0x00060000" mode = "C_W_" x = "0" y = "0" psegname = "PSEG_RAM" ident = "1" >
    151153            <vobj name = "boot_stack"     type = "BUFFER" length = "0x00090000" />
    152154        </vseg>
     
    154156*** Segments used by the kernel / A[31:28] = 0x8
    155157 
    156         <vseg name = "seg_kernel_code"    vbase = "0x80000000" mode = "CXW_" clusterid = "0" psegname = "PSEG_RAM" >
     158        <vseg name = "seg_kernel_code"    vbase = "0x80000000" mode = "CXW_" x = "0" y = "0" psegname = "PSEG_RAM" >
    157159            <vobj name = "kernel_code"    type = "ELF" length = "0x00020000" binpath = "build/kernel/kernel.elf" />
    158160        </vseg>
    159         <vseg name = "seg_kernel_data"    vbase = "0x80020000" mode = "C_W_" clusterid = "0" psegname = "PSEG_RAM" >
     161        <vseg name = "seg_kernel_data"    vbase = "0x80020000" mode = "C_W_" x = "0" y = "0" psegname = "PSEG_RAM" >
    160162            <vobj name = "kernel_data"    type = "ELF" length = "0x00060000" binpath = "build/kernel/kernel.elf" />
    161163                </vseg>
    162         <vseg name = "seg_kernel_uncdata" vbase = "0x80080000" mode = "__W_" clusterid = "0" psegname = "PSEG_RAM" >
     164        <vseg name = "seg_kernel_uncdata" vbase = "0x80080000" mode = "__W_" x = "0" y = "0" psegname = "PSEG_RAM" >
    163165            <vobj name = "kernel_uncdata" type = "ELF" length = "0x00040000" binpath = "build/kernel/kernel.elf" />
    164166        </vseg>
    165         <vseg name = "seg_kernel_init"    vbase = "0x800C0000" mode = "CXW_" clusterid = "0" psegname = "PSEG_RAM" >
     167        <vseg name = "seg_kernel_init"    vbase = "0x800C0000" mode = "CXW_" x = "0" y = "0" psegname = "PSEG_RAM" >
    166168            <vobj name = "kernel_init"    type = "ELF" length = "0x00010000" binpath = "build/kernel/kernel.elf" />
    167169        </vseg>
    168170
    169171*** Segments for non replicated peripherals / A[31:28] = 0xB / Identity mapping
    170 
    171         <vseg name = "seg_iob"            vbase = "0xBE000000" mode = "__W_" clusterid = "0" psegname = "PSEG_IOB" ident = "1" >
     172*** The peripheral type must be entirely defined by the 8 virtual address MSB bits (mask_type = 0xFF000000)
     173
     174        <vseg name = "seg_iob"            vbase = "0xBE000000" mode = "__W_" x = "0" y = "0" psegname = "PSEG_IOB" ident = "1" >
    172175            <vobj name = "iob"            type = "PERI" length  = "0x00001000" />
    173176        </vseg>
    174         <vseg name = "seg_ioc"            vbase = "0xB3000000" mode = "__W_" clusterid = "0" psegname = "PSEG_IOC" ident = "1" >
     177        <vseg name = "seg_ioc"            vbase = "0xB3000000" mode = "__W_" x = "0" y = "0" psegname = "PSEG_IOC" ident = "1" >
    175178            <vobj name = "ioc"            type = "PERI" length  = "0x00001000" />
    176179        </vseg>
    177         <vseg name = "seg_tty"            vbase = "0xB4000000" mode = "__W_" clusterid = "0" psegname = "PSEG_TTY" ident = "1" >
     180        <vseg name = "seg_tty"            vbase = "0xB4000000" mode = "__W_" x = "0" y = "0" psegname = "PSEG_TTY" ident = "1" >
    178181                        <vobj name = "tty"            type = "PERI" length  = "0x00001000" />
    179182        </vseg>
    180         <vseg name = "seg_nic"            vbase = "0xB5000000" mode = "__W_" clusterid = "0" psegname = "PSEG_NIC" ident = "1" >
     183        <vseg name = "seg_nic"            vbase = "0xB5000000" mode = "__W_" x = "0" y = "0" psegname = "PSEG_NIC" ident = "1" >
    181184            <vobj name = "nic"            type = "PERI" length  = "0x00080000" />
    182185        </vseg>
    183         <vseg name = "seg_cma"            vbase = "0xB6000000" mode = "__W_" clusterid = "0" psegname = "PSEG_CMA" ident = "1" >
     186        <vseg name = "seg_cma"            vbase = "0xB6000000" mode = "__W_" x = "0" y = "0" psegname = "PSEG_CMA" ident = "1" >
    184187            <vobj name = "cma"            type = "PERI" length  = "0x00008000" />
    185188        </vseg>
    186         <vseg name = "seg_fbf"            vbase = "0xB7000000" mode = "__W_" clusterid = "0" psegname = "PSEG_FBF" ident = "1" >
     189        <vseg name = "seg_fbf"            vbase = "0xB7000000" mode = "__W_" x = "0" y = "0" psegname = "PSEG_FBF" ident = "1" >
    187190            <vobj name = "fbf"            type = "PERI" length  = "0x00004000" />
    188191        </vseg>
    189         <vseg name = "seg_rom"            vbase = "0xBFC00000" mode = "CXW_" clusterid = "0" psegname = "PSEG_ROM" ident = "1" >
     192        <vseg name = "seg_rom"            vbase = "0xBFC00000" mode = "CXW_" x = "0" y = "0" psegname = "PSEG_ROM" ident = "1" >
    190193            <vobj name = "rom"            type = "PERI" length  = "0x00004000" />
    191194        </vseg>
    192195
    193196*** Segments for replicated ICUS / A[31:24] = 0xB0 / Increment = 0x10000 / Identity mapping in cluster 0           
    194 
    195         <vseg name = "seg_icu_0"          vbase = "0xB0000000" mode = "__W_" clusterid = "0" psegname = "PSEG_XCU" ident = "1" >
     197*** The peripheral type must be entirely defined by the 8 virtual address MSB bits (mask_type = 0xFF000000)
     198*** The cluster id must be encoded in the next 8 virtual address bits (cluster_mask = 0x00FF0000)
     199
     200        <vseg name = "seg_icu_0"          vbase = "0xB0000000" mode = "__W_" x = "0" y = "0" psegname = "PSEG_XCU" ident = "1" >
    196201            <vobj name = "icu_0"          type = "PERI" length  = "0x00001000" />
    197202        </vseg>
    198         <vseg name = "seg_icu_1"          vbase = "0xB0010000" mode = "__W_" clusterid = "1" psegname = "PSEG_XCU" >
     203        <vseg name = "seg_icu_1"          vbase = "0xB0010000" mode = "__W_" x = "0" y = "1" psegname = "PSEG_XCU" >
    199204            <vobj name = "icu_1"          type = "PERI" length  = "0x00001000" />
    200205        </vseg>
    201         <vseg name = "seg_icu_2"          vbase = "0xB0020000" mode = "__W_" clusterid = "2" psegname = "PSEG_XCU" >
     206        <vseg name = "seg_icu_2"          vbase = "0xB0100000" mode = "__W_" x = "1" y = "0" psegname = "PSEG_XCU" >
    202207            <vobj name = "icu_2"          type = "PERI" length  = "0x00001000" />
    203208        </vseg>
    204         <vseg name = "seg_icu_3"          vbase = "0xB0030000" mode = "__W_" clusterid = "3" psegname = "PSEG_XCU" >
     209        <vseg name = "seg_icu_3"          vbase = "0xB0110000" mode = "__W_" x = "1" y = "1" psegname = "PSEG_XCU" >
    205210            <vobj name = "icu_3"          type = "PERI" length  = "0x00001000" />
    206211        </vseg>
    207212
    208213*** segments for replicated DMAs / A[31:24] = 0xB1 / Increment = 0x10000 / Tdentity mapping in cluster 0
    209 
    210         <vseg name = "seg_dma_0"          vbase = "0xB1000000" mode = "__W_" clusterid = "0" psegname = "PSEG_DMA" ident = "1" >
     214*** The peripheral type must be entirely defined by the 8 virtual address MSB bits (mask_type = 0xFF000000)
     215*** The cluster id must be encoded in the next 8 virtual address bits (cluster_mask = 0x00FF0000)
     216
     217        <vseg name = "seg_dma_0"          vbase = "0xB1000000" mode = "__W_" x = "0" y = "0" psegname = "PSEG_DMA" ident = "1" >
    211218            <vobj name = "dma_0"          type = "PERI" length  = "0x00008000" />
    212219        </vseg>
    213         <vseg name = "seg_dma_1"          vbase = "0xB1010000" mode = "__W_" clusterid = "1" psegname = "PSEG_DMA" >
     220        <vseg name = "seg_dma_1"          vbase = "0xB1010000" mode = "__W_" x = "0" y = "1" psegname = "PSEG_DMA" >
    214221            <vobj name = "dma_1"          type = "PERI" length  = "0x00008000" />
    215222        </vseg>
    216         <vseg name = "seg_dma_2"          vbase = "0xB1020000" mode = "__W_" clusterid = "2" psegname = "PSEG_DMA" >
     223        <vseg name = "seg_dma_2"          vbase = "0xB1100000" mode = "__W_" x = "1" y = "0" psegname = "PSEG_DMA" >
    217224            <vobj name = "dma_2"          type = "PERI" length  = "0x00008000" />
    218225        </vseg>
    219         <vseg name = "seg_dma_3"          vbase = "0xB1030000" mode = "__W_" clusterid = "3" psegname = "PSEG_DMA" >
     226        <vseg name = "seg_dma_3"          vbase = "0xB1110000" mode = "__W_" x = "1" y = "1" psegname = "PSEG_DMA" >
    220227            <vobj name = "dma_3"          type = "PERI" length  = "0x00008000" />
    221228        </vseg>
    222229
    223230*** segments for replicated MMC / A[31:24] = 0xB2 / Increment = 0x10000 / Identity mapping in cluster 0
    224 
    225         <vseg name = "seg_memc_0"         vbase = "0xB2000000" mode = "__W_" clusterid = "0" psegname = "PSEG_MMC" ident = "1" >
     231*** The peripheral type must be entirely defined by the 8 virtual address MSB bits (mask_type = 0xFF000000)
     232*** The cluster id must be encoded in the next 8 virtual address bits (cluster_mask = 0x00FF0000)
     233
     234        <vseg name = "seg_memc_0"         vbase = "0xB2000000" mode = "__W_" x = "0" y = "0" psegname = "PSEG_MMC" ident = "1" >
    226235            <vobj name = "memc_0"         type = "PERI" length  = "0x00001000" />
    227236        </vseg>
    228         <vseg name = "seg_memc_1"         vbase = "0xB2010000" mode = "__W_" clusterid = "1" psegname = "PSEG_MMC" >
     237        <vseg name = "seg_memc_1"         vbase = "0xB2010000" mode = "__W_" x = "0" y = "1" psegname = "PSEG_MMC" >
    229238            <vobj name = "memc_1"         type = "PERI" length  = "0x00001000" />
    230239        </vseg>
    231         <vseg name = "seg_memc_2"         vbase = "0xB2020000" mode = "__W_" clusterid = "2" psegname = "PSEG_MMC" >
     240        <vseg name = "seg_memc_2"         vbase = "0xB2100000" mode = "__W_" x = "1" y = "0" psegname = "PSEG_MMC" >
    232241            <vobj name = "memc_2"         type = "PERI" length  = "0x00001000" />
    233242        </vseg>
    234         <vseg name = "seg_memc_3"         vbase = "0xB2030000" mode = "__W_" clusterid = "3" psegname = "PSEG_MMC" >
     243        <vseg name = "seg_memc_3"         vbase = "0xB2110000" mode = "__W_" x = "1" y = "1" psegname = "PSEG_MMC" >
    235244            <vobj name = "memc_3"         type = "PERI" length  = "0x00001000" />
    236245        </vseg>
    237246
    238247*** segments for replicated schedulers / A[31:28] = 0xF / Increment = 0x10000
    239 
    240         <vseg name = "seg_sched_0"        vbase = "0xF0000000" mode = "C_W_" clusterid = "0" psegname = "PSEG_RAM" >
     248*** The type must be entirely defined by the 8 virtual address MSB bits (mask_type = 0xFF000000)
     249*** The cluster id must be encoded in the next 8 virtual address bits (cluster_mask = 0x00FF0000)
     250
     251        <vseg name = "seg_sched_0"        vbase = "0xF0000000" mode = "C_W_" x = "0" y = "0" psegname = "PSEG_RAM" >
    241252            <vobj name = "sched_0"        type = "SCHED" length  = "0x00008000" />
    242253        </vseg>
    243         <vseg name = "seg_sched_1"        vbase = "0xF0010000" mode = "C_W_" clusterid = "1" psegname = "PSEG_RAM" >
     254        <vseg name = "seg_sched_1"        vbase = "0xF0010000" mode = "C_W_" x = "0" y = "1" psegname = "PSEG_RAM" >
    244255            <vobj name = "sched_1"        type = "SCHED" length  = "0x00008000" />
    245256        </vseg>
    246         <vseg name = "seg_sched_2"        vbase = "0xF0020000" mode = "C_W_" clusterid = "2" psegname = "PSEG_RAM" >
     257        <vseg name = "seg_sched_2"        vbase = "0xF0100000" mode = "C_W_" x = "1" y = "0" psegname = "PSEG_RAM" >
    247258            <vobj name = "sched_2"        type = "SCHED" length  = "0x00008000" />
    248259        </vseg>
    249         <vseg name = "seg_sched_3"        vbase = "0xF0030000" mode = "C_W_" clusterid = "3" psegname = "PSEG_RAM" >
     260        <vseg name = "seg_sched_3"        vbase = "0xF0110000" mode = "C_W_" x = "1" y = "1" psegname = "PSEG_RAM" >
    250261            <vobj name = "sched_3"        type = "SCHED" length  = "0x00008000" />
    251262        </vseg>
    252 ***
     263
    253264    </globalset>
    254265
     
    257268*** For each vspace, the startname field is the name of the vobj containing the start_vector (entry point array)
    258269*** For each task, the startid field define the task entry point as an index in the start_vector
    259 *** For each task, the clusterid and proclocid arguments define the task static placement
     270*** For each task, the x = "0" y and proclocid arguments define the task static placement
    260271*** For each task, the stackname field is the name of the vobj containing the task stack
    261272*** For each task, the heapname field is the name of the vobj containing the task heap
    262273
    263274        <vspace name = "router" startname = "router_data" >
    264             <vseg name = "seg_code"        vbase = "0x00400000" mode = "CXWU" clusterid = "0" psegname = "PSEG_RAM" >
     275            <vseg name = "seg_code"        vbase = "0x00400000" mode = "CXWU" x = "0" y = "0" psegname = "PSEG_RAM" >
    265276                <vobj name = "router_code" type  = "ELF" length = "0x00010000" binpath = "build/router/router.elf" />
    266277            </vseg>
    267             <vseg name = "seg_data"        vbase = "0x00500000" mode = "__WU" clusterid = "0" psegname = "PSEG_RAM" >
     278            <vseg name = "seg_data"        vbase = "0x00500000" mode = "__WU" x = "0" y = "0" psegname = "PSEG_RAM" >
    268279                <vobj name = "router_data" type  = "ELF" length = "0x00010000" binpath = "build/router/router.elf" />
    269280            </vseg>
    270             <vseg name = "seg_ptab"        vbase = "0x00600000" mode = "C_W_" clusterid = "0" psegname = "PSEG_RAM" >
     281            <vseg name = "seg_ptab"        vbase = "0x00600000" mode = "C_W_" x = "0" y = "0" psegname = "PSEG_RAM" >
    271282                <vobj name = "ptab"        type  = "PTAB" length  = "0x00020000" align   = "13" />
    272283            </vseg>
    273             <vseg name = "seg_stack_prod"  vbase = "0x00700000" mode = "C_WU" clusterid = "0" psegname = "PSEG_RAM" >
     284            <vseg name = "seg_stack_prod"  vbase = "0x00700000" mode = "C_WU" x = "0" y = "0" psegname = "PSEG_RAM" >
    274285                <vobj name = "stack_prod"  type  = "BUFFER" length = "0x00010000" />
    275286                <vobj name = "heap_prod"   type  = "BUFFER" length = "0x00010000" />
    276287            </vseg>
    277             <vseg name = "seg_stack_cons"  vbase = "0x00800000" mode = "C_WU" clusterid = "1" psegname = "PSEG_RAM" >
     288            <vseg name = "seg_stack_cons"  vbase = "0x00800000" mode = "C_WU" x = "0" y = "1" psegname = "PSEG_RAM" >
    278289                <vobj name = "stack_cons"  type  = "BUFFER" length = "0x00010000" />
    279290                <vobj name = "heap_cons"   type  = "BUFFER" length = "0x00010000" />
    280291            </vseg>
    281             <vseg name = "seg_stack_routA" vbase = "0x00900000" mode = "C_WU" clusterid = "2" psegname = "PSEG_RAM" >
     292            <vseg name = "seg_stack_routA" vbase = "0x00900000" mode = "C_WU" x = "1" y = "0" psegname = "PSEG_RAM" >
    282293                <vobj name = "stack_routA" type  = "BUFFER" length = "0x00010000" />
    283294                <vobj name = "heap_routA"  type  = "BUFFER" length = "0x00010000" />
    284295            </vseg>
    285             <vseg name = "seg_stack_routB" vbase = "0x00A00000" mode = "C_WU" clusterid = "3" psegname = "PSEG_RAM" >
     296            <vseg name = "seg_stack_routB" vbase = "0x00A00000" mode = "C_WU" x = "1" y = "1" psegname = "PSEG_RAM" >
    286297                <vobj name = "stack_routB" type  = "BUFFER" length = "0x00010000" />
    287298                <vobj name = "heap_routB"  type  = "BUFFER" length = "0x00010000" />
    288299            </vseg>
    289             <vseg name = "seg_mwmrs"       vbase = "0x00B00000" mode = "__WU" clusterid = "0" psegname = "PSEG_RAM" >
     300            <vseg name = "seg_mwmrs"       vbase = "0x00B00000" mode = "__WU" x = "0" y = "0" psegname = "PSEG_RAM" >
    290301                <vobj name = "mwmr_in"     type  = "MWMR" length = "0x00000020" init = "1" />
    291302                <vobj name = "mwmr_out"    type  = "MWMR" length = "0x00000020" init = "1" />
    292303                    </vseg>
    293304
    294             <task name = "producer" clusterid = "0" proclocid = "0" stackname = "stack_prod"  heapname = "heap_prod"  startid = "0" usetty = "1" />
    295             <task name = "consumer" clusterid = "1" proclocid = "0" stackname = "stack_cons"  heapname = "heap_cons"  startid = "1" usetty = "1" />
    296             <task name = "router_A" clusterid = "2" proclocid = "0" stackname = "stack_routA" heapname = "heap_routA" startid = "2" usetty = "1" />
    297             <task name = "router_B" clusterid = "3" proclocid = "0" stackname = "stack_routB" heapname = "heap_routB" startid = "2" usetty = "1" />
     305            <task name = "producer" x = "0" y = "0" proclocid = "0" stackname = "stack_prod"  heapname = "heap_prod"  startid = "0" usetty = "1" />
     306            <task name = "consumer" x = "0" y = "1" proclocid = "0" stackname = "stack_cons"  heapname = "heap_cons"  startid = "1" usetty = "1" />
     307            <task name = "router_A" x = "1" y = "0" proclocid = "0" stackname = "stack_routA" heapname = "heap_routA" startid = "2" usetty = "1" />
     308            <task name = "router_B" x = "1" y = "1" proclocid = "0" stackname = "stack_routB" heapname = "heap_routB" startid = "2" usetty = "1" />
    298309        </vspace>
    299310
    300311        <vspace name = "hello" startname = "hello_data" >
    301             <vseg name = "seg_code"        vbase = "0x00400000" mode = "CXWU" clusterid = "1" psegname = "PSEG_RAM" >
     312            <vseg name = "seg_code"        vbase = "0x00400000" mode = "CXWU" x = "0" y = "1" psegname = "PSEG_RAM" >
    302313                <vobj name = "hello_code"  type  = "ELF" length = "0x00010000" binpath = "build/hello/hello.elf" />
    303314            </vseg>
    304             <vseg name = "seg_data"        vbase = "0x00500000" mode = "C_WU" clusterid = "1" psegname = "PSEG_RAM" >
     315            <vseg name = "seg_data"        vbase = "0x00500000" mode = "C_WU" x = "0" y = "1" psegname = "PSEG_RAM" >
    305316                <vobj name = "hello_data"  type  = "ELF" length = "0x00010000" binpath = "build/hello/hello.elf" />
    306317            </vseg>
    307             <vseg name = "seg_ptab"        vbase = "0x00600000" mode = "C_W_" clusterid = "1" psegname = "PSEG_RAM" >
     318            <vseg name = "seg_ptab"        vbase = "0x00600000" mode = "C_W_" x = "0" y = "1" psegname = "PSEG_RAM" >
    308319                <vobj name = "ptab"        type  = "PTAB" length = "0x00020000" align = "13" />
    309320            </vseg>
    310             <vseg name = "seg_stack"       vbase = "0x00700000" mode = "C_WU" clusterid = "1" psegname = "PSEG_RAM" >
     321            <vseg name = "seg_stack"       vbase = "0x00700000" mode = "C_WU" x = "0" y = "1" psegname = "PSEG_RAM" >
    311322                <vobj name = "stack"       type  = "BUFFER" length = "0x00010000" />
    312323                <vobj name = "heap"        type  = "BUFFER" length = "0x00010000" />
    313324            </vseg>
    314325
    315             <task name = "main_hello" clusterid = "1" proclocid = "0" stackname = "stack" heapname = "heap" startid = "0" usetty = "1" />
     326            <task name = "main_hello" x = "0" y = "1" proclocid = "0" stackname = "stack" heapname = "heap" startid = "0" usetty = "1" />
    316327        </vspace>
    317328
    318329        <vspace name = "pgcd" startname = "pgcd_data" >
    319             <vseg name = "seg_code"        vbase = "0x00400000" mode = "CXWU" clusterid = "2" psegname = "PSEG_RAM" >
     330            <vseg name = "seg_code"        vbase = "0x00400000" mode = "CXWU" x = "1" y = "0" psegname = "PSEG_RAM" >
    320331                <vobj name = "pgcd_code"   type  = "ELF" length = "0x00010000" binpath = "build/pgcd/pgcd.elf" />
    321332            </vseg>
    322             <vseg name = "seg_data"        vbase = "0x00500000" mode = "C_WU" clusterid = "2" psegname = "PSEG_RAM" >
     333            <vseg name = "seg_data"        vbase = "0x00500000" mode = "C_WU" x = "1" y = "0" psegname = "PSEG_RAM" >
    323334                <vobj name      = "pgcd_data"  type      = "ELF" length = "0x00010000" binpath = "build/pgcd/pgcd.elf" />
    324335            </vseg>
    325             <vseg name = "seg_ptab"        vbase = "0x00600000" mode = "C_W_" clusterid = "2" psegname = "PSEG_RAM" >
     336            <vseg name = "seg_ptab"        vbase = "0x00600000" mode = "C_W_" x = "1" y = "0" psegname = "PSEG_RAM" >
    326337                <vobj name = "ptab"        type  = "PTAB" length = "0x00020000" align = "13" />
    327338            </vseg>
    328             <vseg name = "seg_stack"       vbase = "0x00700000" mode = "C_WU" clusterid = "2" psegname = "PSEG_RAM" >
     339            <vseg name = "seg_stack"       vbase = "0x00700000" mode = "C_WU" x = "1" y = "0" psegname = "PSEG_RAM" >
    329340                <vobj name = "stack"       type  = "BUFFER" length = "0x00010000" />
    330341                <vobj name = "heap"        type  = "BUFFER" length = "0x00010000" />
    331342            </vseg>
    332343
    333             <task name = "main_pgcd" clusterid = "2" proclocid = "0" stackname = "stack" heapname = "heap" startid = "0" usetty = "1" />
     344            <task name = "main_pgcd" x = "1" y = "0" proclocid = "0" stackname = "stack" heapname = "heap" startid = "0" usetty = "1" />
    334345        </vspace>
    335346
    336347        <vspace name = "display" startname = "disp_data" >
    337             <vseg name = "seg_code"        vbase = "0x00400000" mode = "CXWU" clusterid = "3" psegname = "PSEG_RAM" >
     348            <vseg name = "seg_code"        vbase = "0x00400000" mode = "CXWU" x = "1" y = "1" psegname = "PSEG_RAM" >
    338349                <vobj name = "disp_code"   type  = "ELF" length = "0x00010000" binpath = "build/display/display.elf" />
    339350            </vseg>
    340             <vseg name = "seg_data"        vbase = "0x00500000" mode = "C_WU" clusterid = "3" psegname = "PSEG_RAM" >
     351            <vseg name = "seg_data"        vbase = "0x00500000" mode = "C_WU" x = "1" y = "1" psegname = "PSEG_RAM" >
    341352                <vobj name = "disp_data"   type  = "ELF" length = "0x00010000" binpath = "build/display/display.elf" />
    342353                        </vseg>
    343             <vseg name = "seg_ptab"        vbase = "0x00600000" mode = "C_W_" clusterid = "3" psegname = "PSEG_RAM" >
     354            <vseg name = "seg_ptab"        vbase = "0x00600000" mode = "C_W_" x = "1" y = "1" psegname = "PSEG_RAM" >
    344355                <vobj name = "ptab"        type  = "PTAB" length  = "0x00020000" align   = "13" />
    345356            </vseg>
    346             <vseg name = "seg_stack"       vbase = "0x00700000" mode = "C_WU" clusterid = "3" psegname = "PSEG_RAM" >
     357            <vseg name = "seg_stack"       vbase = "0x00700000" mode = "C_WU" x = "1" y = "1" psegname = "PSEG_RAM" >
    347358                <vobj name = "stack"       type  = "BUFFER" length = "0x00010000" />
    348359                <vobj name = "heap"        type  = "BUFFER" length = "0x00010000" />
    349360            </vseg>
    350361
    351             <task name = "main_display" clusterid = "3" proclocid = "0" stackname = "stack" heapname = "heap" startid = "0" usetty = "1" usecma = "1" />
     362            <task name = "main_display" x = "1" y = "1" proclocid = "0" stackname = "stack" heapname = "heap" startid = "0" usetty = "1" usecma = "1" />
    352363        </vspace>
    353364    </vspaceset>
Note: See TracChangeset for help on using the changeset viewer.