source: soft/giet_vm/map.xml @ 191

Last change on this file since 191 was 189, checked in by alain, 12 years ago

Introducing a new release where all initialisation
is done in the boot code.

File size: 26.6 KB
Line 
1<?xml version="1.0"?>
2
3<mapping_info   signature = "0xdeadbeef" 
4                name     = "1C_4P_FOUR"
5                clusters = "1"
6                vspaces  = "4" 
7                globals  = "13" >
8
9        <clusterset>
10                <cluster index  = "0" >
11                         <pseg    name   = "PSEG_ROM" 
12                                  type   = "ROM"
13                                  base   = "0xbfc00000" 
14                                  length = "0x00010000" />
15
16                         <pseg    name   = "PSEG_RAM" 
17                                  type   = "RAM"
18                                  base   = "0x01000000" 
19                                  length = "0x01000000" />
20
21                         <pseg    name   = "PSEG_TTY"
22                                  type   = "PERI"
23                                  base   = "0x90000000" 
24                                  length = "0x00001000" />
25
26                         <pseg    name   = "PSEG_TIM" 
27                                  type   = "PERI"
28                                  base   = "0x90100000" 
29                                  length = "0x00001000" />
30
31                         <pseg    name   = "PSEG_IOC" 
32                                  type   = "PERI"
33                                  base   = "0x90200000" 
34                                  length = "0x00001000" />
35
36                         <pseg    name   = "PSEG_DMA" 
37                                  type   = "PERI"
38                                  base   = "0x90300000" 
39                                  length = "0x00001000" />
40
41                         <pseg    name   = "PSEG_FBF" 
42                                  type   = "PERI"
43                                  base   = "0x90600000" 
44                                  length = "0x00004000" />
45
46                         <pseg    name   = "PSEG_ICU" 
47                                  type   = "PERI"
48                                  base   = "0x90700000" 
49                                  length = "0x00001000" />
50
51                         <pseg    name   = "PSEG_COP" 
52                                  type   = "PERI"
53                                  base   = "0x90800000" 
54                                  length = "0x00001000" />
55
56                         <proc    index  = "0" >
57                                  <irq   type    = "HARD"
58                                         icuid   = "0"
59                                         isr     = "ISR_SWITCH" />
60
61                                  <irq   type    = "HARD"
62                                         icuid   = "8"
63                                         isr     = "ISR_DMA"
64                                         channel = "0" />
65
66                                  <irq   type    = "HARD"
67                                         icuid   = "9"
68                                         isr     = "ISR_DMA"
69                                         channel = "1" />
70
71                                  <irq   type    = "HARD"
72                                         icuid   = "10"
73                                         isr     = "ISR_DMA"
74                                         channel = "2" />
75
76                                  <irq   type    = "HARD"
77                                         icuid   = "11"
78                                         isr     = "ISR_DMA"
79                                         channel = "3" />
80
81                                  <irq   type    = "HARD"
82                                         icuid   = "12"
83                                         isr     = "ISR_DMA"
84                                         channel = "4" />
85
86                                  <irq   type    = "HARD"
87                                         icuid   = "13"
88                                         isr     = "ISR_DMA"
89                                         channel = "5" />
90
91                                  <irq   type    = "HARD"
92                                         icuid   = "14"
93                                         isr     = "ISR_DMA"
94                                         channel = "6" />
95
96                                  <irq   type    = "HARD"
97                                         icuid   = "15"
98                                         isr     = "ISR_DMA"
99                                         channel = "7" />
100
101                                  <irq   type    = "HARD"
102                                         icuid   = "16"
103                                         isr     = "ISR_TTY"
104                                         channel = "0" />
105
106                                  <irq   type    = "HARD"
107                                         icuid   = "17"
108                                         isr     = "ISR_TTY"
109                                         channel = "1" />
110
111                                  <irq   type    = "HARD"
112                                         icuid   = "18"
113                                         isr     = "ISR_TTY"
114                                         channel = "2" />
115
116                                  <irq   type    = "HARD"
117                                         icuid   = "19"
118                                         isr     = "ISR_TTY"
119                                         channel = "3" />
120
121                                  <irq   type    = "HARD"
122                                         icuid   = "20"
123                                         isr     = "ISR_TTY"
124                                         channel = "4" />
125
126                                  <irq   type    = "HARD"
127                                         icuid   = "21"
128                                         isr     = "ISR_TTY"
129                                         channel = "5" />
130
131                                  <irq   type    = "HARD"
132                                         icuid   = "22"
133                                         isr     = "ISR_TTY"
134                                         channel = "6" />
135
136                                  <irq   type    = "HARD"
137                                         icuid   = "23"
138                                         isr     = "ISR_TTY"
139                                         channel = "7" />
140
141                                  <irq   type    = "HARD"
142                                         icuid   = "24"
143                                         isr     = "ISR_TTY"
144                                         channel = "8" />
145
146                                  <irq   type    = "HARD"
147                                         icuid   = "25"
148                                         isr     = "ISR_TTY"
149                                         channel = "9" />
150
151                                  <irq   type    = "HARD"
152                                         icuid   = "26"
153                                         isr     = "ISR_TTY"
154                                         channel = "10" />
155
156                                  <irq   type    = "HARD"
157                                         icuid   = "27"
158                                         isr     = "ISR_TTY"
159                                         channel = "11" />
160
161                                  <irq   type    = "HARD"
162                                         icuid   = "28"
163                                         isr     = "ISR_TTY"
164                                         channel = "12" />
165
166                                  <irq   type    = "HARD"
167                                         icuid   = "29"
168                                         isr     = "ISR_TTY"
169                                         channel = "13" />
170
171                                  <irq   type    = "HARD"
172                                         icuid   = "30"
173                                         isr     = "ISR_TTY"
174                                         channel = "14" />
175
176                                  <irq   type    = "HARD"
177                                         icuid   = "31"
178                                         isr     = "ISR_IOC" />
179                         </proc>
180
181                         <proc    index  = "1" >
182                                  <irq   type    = "HARD"
183                                         icuid   = "1"
184                                         isr     = "ISR_SWITCH" />
185                         </proc>
186
187                         <proc    index  = "2" >
188                                  <irq   type    = "HARD"
189                                         icuid   = "2"
190                                         isr     = "ISR_SWITCH" />
191                         </proc>
192
193                         <proc    index  = "3" >
194                                  <irq   type    = "HARD"
195                                         icuid   = "3"
196                                         isr     = "ISR_SWITCH" />
197                         </proc>
198
199                         <periph  type      = "IOC" 
200                                  psegname  = "PSEG_IOC"
201                                  channels  = "1" />
202
203                         <periph  type      = "TTY" 
204                                  psegname  = "PSEG_TTY"
205                                  channels  = "2" />
206   
207                         <periph  type      = "DMA" 
208                                  psegname  = "PSEG_DMA"
209                                  channels  = "1" />
210   
211                         <periph  type      = "TIM"
212                                  psegname  = "PSEG_TIM"
213                                  channels  = "8" />
214
215                         <periph  type      = "FBF"
216                                  psegname  = "PSEG_FBF" />
217
218                         <coproc  name     = "COP0" 
219                                  psegname = "PSEG_COP" >
220
221                                  <port    direction  = "TO_COPROC"
222                                           vspacename = "router"
223                                           vobjname   = "mwmr_in" />
224
225                                  <port    direction  = "FROM_COPROC"
226                                           vspacename = "router"
227                                           vobjname   = "mwmr_out" />
228                         </coproc>
229                </cluster>
230        </clusterset>
231
232        <globalset> 
233                <vseg   name      = "seg_boot_code_data" 
234                        vbase     = "0xbfc00000" 
235                        mode      = "CXW_" 
236                        clusterid = "0"
237                        psegname  = "PSEG_ROM" 
238                        ident     = "1" >
239                                            <vobj   name        = "seg_boot"
240                                                        type    = "ELF"
241                                                        length  = "0x00008000" 
242                                                        binpath = "build/boot/boot.elf" />
243                                </vseg>
244
245                <vseg   name      = "seg_boot_stack"
246                        vbase     = "0xbfc08000" 
247                        mode      = "C_W_"
248                        clusterid = "0"
249                        psegname  = "PSEG_ROM"
250                        ident     = "1" >
251                                        <vobj   name    = "boot_stack"
252                                                        type    = "BUFFER"
253                                                        length  = "0x00004000" />
254                                </vseg>
255
256                <vseg   name      = "seg_boot_mapping"
257                        vbase     = "0xbfc0c000" 
258                        mode      = "C_W_"
259                        clusterid = "0"
260                        psegname  = "PSEG_ROM"
261                        ident     = "1" >
262                                        <vobj   name    = "seg_mapping"
263                                                        type    = "BLOB"
264                                                        length  = "0x00004000" 
265                                                        binpath = "map.bin" />
266                                </vseg>
267
268                <vseg   name      = "seg_kernel_code"
269                        vbase     = "0x80000000" 
270                        mode      = "CX__" 
271                        clusterid = "0"
272                        psegname  = "PSEG_RAM" >
273                                            <vobj   name        = "seg_kernel_code"
274                                                        type    = "ELF"
275                                                            length  = "0x00010000" 
276                                                            binpath     = "build/sys/sys.elf" />
277                                </vseg>
278
279                <vseg   name      = "seg_kernel_data"
280                        vbase     = "0x80010000" 
281                        mode      = "C_W_" 
282                        clusterid = "0"
283                        psegname  = "PSEG_RAM" >
284                                        <vobj   name    = "seg_kernel_data"
285                                                        type    = "ELF"
286                                                        length  = "0x00040000" 
287                                                        binpath = "build/sys/sys.elf" />
288                                </vseg>
289
290                <vseg   name      = "seg_kernel_uncdata"
291                        vbase     = "0x80080000" 
292                        mode      = "__W_"
293                        clusterid = "0"
294                        psegname  = "PSEG_RAM" >
295                                            <vobj   name        = "seg_kernel_uncdata"
296                                                        type    = "ELF"
297                                                            length  = "0x00010000" 
298                                                        binpath = "build/sys/sys.elf" />
299                                </vseg>
300
301                <vseg   name      = "seg_kernel_init"
302                        vbase     = "0x80090000" 
303                        mode      = "CX__"
304                        clusterid = "0"
305                        psegname  = "PSEG_RAM" >
306                                        <vobj   name    = "seg_kernel_init"
307                                                        type    = "ELF"
308                                                        length  = "0x00010000" 
309                                                        binpath = "build/sys/sys.elf" />
310                                </vseg>
311
312
313                <vseg   name      = "seg_tty"
314                        vbase     = "0x90000000" 
315                        mode      = "__W_"
316                        clusterid = "0"
317                        psegname  = "PSEG_TTY" >
318                                        <vobj   name    = "tty"
319                                                        type    = "PERI"
320                                                        length  = "0x00001000" />
321                                </vseg>
322
323                <vseg   name      = "seg_timer"
324                        vbase     = "0x91000000" 
325                        mode      = "__W_"
326                        clusterid = "0"
327                        psegname  = "PSEG_TIM" >
328                                        <vobj   name    = "timer"
329                                                        type    = "PERI"
330                                                        length  = "0x00001000" />
331                                </vseg>
332
333                <vseg   name      = "seg_ioc"
334                        vbase     = "0x92000000" 
335                        mode      = "__W_"
336                        clusterid = "0"
337                        psegname  = "PSEG_IOC" >
338                                        <vobj   name    = "ioc"
339                                                        type    = "PERI"
340                                                        length  = "0x00000020" />
341                                </vseg>
342
343                <vseg   name      = "seg_dma"
344                        vbase     = "0x93000000" 
345                        mode      = "__W_"
346                        clusterid = "0"
347                        psegname  = "PSEG_DMA" >
348                                        <vobj   name    = "dma"
349                                                        type    = "PERI"
350                                                        length  = "0x00001000" />
351                                </vseg>
352
353                <vseg   name      = "seg_fb"
354                        vbase     = "0x96000000" 
355                        mode      = "__W_"
356                        clusterid = "0"
357                        psegname  = "PSEG_FBF" >
358                                        <vobj   name    = "fb"
359                                                        type    = "PERI"
360                                                        length  = "0x00004000" />
361                                </vseg>
362
363                <vseg   name      = "seg_icu"
364                        vbase     = "0x9F000000" 
365                        mode      = "__W_"
366                        clusterid = "0"
367                        psegname  = "PSEG_ICU" >
368                                        <vobj   name    = "icu"
369                                                        type    = "PERI"
370                                                        length  = "0x00000100" />
371                                </vseg>
372          </globalset> 
373
374          <vspaceset>
375                <vspace name      = "router"
376                        startname = "seg_data_router" >
377
378                        <vseg   name      = "seg_data_router"
379                                vbase     = "0x00800000" 
380                                mode      = "__WU"
381                                clusterid = "0"
382                                psegname  = "PSEG_RAM" >
383                                                            <vobj   name        = "seg_data_router"
384                                                                        type    = "ELF"
385                                                                        length  = "0x00010000" 
386                                        binpath = "build/router/router.elf" />
387                                                </vseg>
388
389                        <vseg   name      = "seg_code_router"
390                                vbase     = "0x00400000" 
391                                mode      = "CX_U"
392                                clusterid = "0"
393                                psegname  = "PSEG_RAM" >
394                                                            <vobj   name        = "seg_code_router"
395                                                                        type    = "ELF"
396                                                                            length  = "0x00010000" 
397                                        binpath = "build/router/router.elf" />
398                                                </vseg>
399
400                        <vseg   name      = "seg_ptab"
401                                vbase     = "0x00300000" 
402                                mode      = "C___"
403                                clusterid = "0"
404                                psegname  = "PSEG_RAM" >
405                                <vobj   name    = "ptab_router"
406                                        type    = "PTAB"
407                                        length  = "0x00012000" 
408                                        align   = "13" />
409                        </vseg>
410
411                        <vseg   name      = "seg_stack_producer"
412                                                vbase     = "0x00010000" 
413                                mode      = "C_WU"
414                                clusterid = "0"
415                                psegname  = "PSEG_RAM" >
416                                                            <vobj   name        = "stack_producer"
417                                                                        type    = "BUFFER"
418                                                                            length  = "0x00010000" />
419                                                </vseg>
420
421                        <vseg   name      = "seg_stack_consumer"
422                                                vbase     = "0x00020000" 
423                                mode      = "C_WU"
424                                clusterid = "0"
425                                psegname  = "PSEG_RAM" >
426                                                            <vobj   name        = "stack_consumer"
427                                                                        type    = "BUFFER"
428                                                                            length  = "0x00010000" />
429                                                </vseg>
430
431                        <vseg   name      = "seg_stack_router_A"
432                                                vbase     = "0x00030000" 
433                                mode      = "C_WU"
434                                clusterid = "0"
435                                psegname  = "PSEG_RAM" >
436                                                            <vobj   name        = "stack_router_A"
437                                                                        type    = "BUFFER"
438                                                                            length  = "0x00010000" />
439                                                </vseg>
440
441                        <vseg   name      = "seg_stack_router_B"
442                                                vbase     = "0x00040000" 
443                                mode      = "C_WU"
444                                clusterid = "0"
445                                psegname  = "PSEG_RAM" >
446                                                            <vobj   name        = "stack_router_B"
447                                                                        type    = "BUFFER"
448                                                                            length  = "0x00010000" />
449                                                </vseg>
450
451                        <vseg   name      = "seg_mwmr_channels"
452                                vbase     = "0x00050000"
453                                mode      = "__WU"
454                                clusterid = "0"
455                                psegname  = "PSEG_RAM" >
456                                                            <vobj   name        = "mwmr_in"
457                                                                        type    = "MWMR"
458                                                                            length  = "0x00000020"
459                                        init    = "1" />
460                                                            <vobj   name        = "mwmr_out"
461                                                                        type    = "MWMR"
462                                                                            length  = "0x00000020"
463                                        init    = "1" />
464                                                </vseg>
465
466                        <task   name      = "producer"
467                                clusterid = "0"
468                                proclocid = "0"
469                                stackname = "stack_producer"
470                                startid   = "0"
471                                usetty    = "1" />
472
473                        <task   name      = "consumer"
474                                clusterid = "0"
475                                proclocid = "1"
476                                stackname = "stack_consumer"
477                                startid   = "1" 
478                                usetty    = "1" />
479
480                        <task   name      = "router_A"
481                                clusterid = "0"
482                                proclocid = "2"
483                                stackname = "stack_router_A"
484                                startid   = "2"
485                                usetty    = "1" />
486
487                        <task   name      = "router_B"
488                                clusterid = "0"
489                                proclocid = "3"
490                                stackname = "stack_router_B"
491                                startid   = "2"
492                                usetty    = "1" />
493                </vspace>
494
495                <vspace name      = "hello" 
496                        startname = "seg_data_hello" >
497
498                        <vseg   name      = "seg_data_hello"
499                                vbase     = "0x00800000" 
500                                mode      = "C_WU"
501                                clusterid = "0"
502                                psegname  = "PSEG_RAM" >
503                                                            <vobj   name        = "seg_data_hello"
504                                                                        type    = "ELF"
505                                                                            length    = "0x00010000" 
506                                        binpath = "build/hello/hello.elf" />
507                                                </vseg>
508
509                        <vseg   name      = "seg_code_hello"
510                                vbase     = "0x00400000" 
511                                mode      = "CX_U"
512                                clusterid = "0"
513                                psegname  = "PSEG_RAM" >
514                                                            <vobj   name        = "seg_code_hello"
515                                                                        type    = "ELF"
516                                                                            length    = "0x00010000" 
517                                        binpath = "build/hello/hello.elf" />
518                                                </vseg>
519
520                        <vseg   name      = "seg_ptab"
521                                vbase     = "0x00300000" 
522                                mode      = "C___"
523                                clusterid = "0"
524                                psegname  = "PSEG_RAM" >
525                                <vobj   name    = "ptab"
526                                        type    = "PTAB"
527                                        length  = "0x00012000" 
528                                        align   = "13" />
529                        </vseg>
530
531                        <vseg   name      = "seg_stack"
532                                vbase     = "0x00000000" 
533                                mode      = "C_WU"
534                                clusterid = "0"
535                                psegname  = "PSEG_RAM" >
536                                                            <vobj   name        = "stack"
537                                                                        type    = "BUFFER"
538                                                                            length  = "0x00010000" />
539                                                </vseg>
540
541
542                        <task   name      = "main_hello"
543                                clusterid = "0"
544                                proclocid = "2"
545                                stackname = "stack"
546                                startid   = "0" 
547                                usetty    = "1" />
548                </vspace>
549
550                <vspace name      = "pgcd" 
551                        startname = "seg_data_pgcd" >
552
553                        <vseg   name      = "seg_data_pgcd"
554                                vbase     = "0x00800000" 
555                                mode      = "C_WU"
556                                clusterid = "0"
557                                psegname  = "PSEG_RAM" >
558                                                            <vobj   name        = "seg_data_pgcd"
559                                                                        type    = "ELF"
560                                                                            length  = "0x00010000" 
561                                        binpath = "build/pgcd/pgcd.elf" />
562                                                </vseg>
563
564                        <vseg   name      = "seg_ptab"
565                                vbase     = "0x00300000" 
566                                mode      = "C___"
567                                clusterid = "0"
568                                psegname  = "PSEG_RAM" >
569                                <vobj   name    = "ptab"
570                                        type    = "PTAB"
571                                        length  = "0x00012000" 
572                                        align   = "13" />
573                        </vseg>
574
575                        <vseg   name      = "seg_code_pgcd"
576                                vbase     = "0x00400000" 
577                                mode      = "CX_U"
578                                clusterid = "0"
579                                psegname  = "PSEG_RAM" >
580                                                            <vobj   name        = "seg_code_pgcd"
581                                                                        type    = "ELF"
582                                                                            length  = "0x00010000" 
583                                        binpath = "build/pgcd/pgcd.elf" />
584                                                </vseg>
585
586                        <vseg   name      = "seg_stack"
587                                vbase     = "0x00000000" 
588                                mode      = "C_WU"
589                                clusterid = "0"
590                                psegname  = "PSEG_RAM" >
591                                                            <vobj   name        = "stack"
592                                                                        type    = "BUFFER"
593                                                                            length  = "0x00010000" />
594                                                </vseg>
595
596                        <task   name      = "main_pgcd"
597                                clusterid = "0"
598                                proclocid = "3"
599                                stackname = "stack"
600                                startid   = "0" 
601                                usetty    = "1" />
602                </vspace>
603
604                <vspace name      = "display" 
605                        startname = "seg_data_display" >
606
607                        <vseg   name      = "seg_data_display"
608                                vbase     = "0x00800000" 
609                                mode      = "C_WU"
610                                clusterid = "0"
611                                psegname  = "PSEG_RAM" >
612                                                            <vobj   name        = "seg_data_display"
613                                                                        type    = "ELF"
614                                                                            length  = "0x00010000" 
615                                        binpath = "build/display/display.elf" />
616                                                </vseg>
617
618                        <vseg   name      = "seg_ptab_display"
619                                vbase     = "0x00300000" 
620                                mode      = "C___"
621                                clusterid = "0"
622                                psegname  = "PSEG_RAM" >
623                                <vobj   name    = "ptab"
624                                        type    = "PTAB"
625                                        length  = "0x00012000" 
626                                        align   = "13" />
627                        </vseg>
628
629                        <vseg   name      = "seg_code_display"
630                                vbase     = "0x00400000" 
631                                mode      = "CX_U"
632                                clusterid = "0"
633                                psegname  = "PSEG_RAM" >
634                                                            <vobj   name        = "seg_code_display"
635                                                                        type    = "ELF"
636                                                                            length  = "0x00010000" 
637                                        binpath = "build/display/display.elf" />
638                                                </vseg>
639
640                        <vseg   name      = "seg_stack_display"
641                                vbase     = "0x00000000" 
642                                mode      = "C_WU"
643                                clusterid = "0"
644                                psegname  = "PSEG_RAM" >
645                                                            <vobj   name        = "stack_display"
646                                                                        type    = "BUFFER"
647                                                                            length  = "0x00010000" />
648                                                </vseg>
649
650                        <task   name      = "main_display"
651                                clusterid = "0"
652                                proclocid = "3"
653                                stackname = "stack_display"
654                                startid   = "0" 
655                                usetty    = "1"
656                                usefbdma  = "1" />
657                </vspace>
658
659          </vspaceset>
660</mapping_info>
Note: See TracBrowser for help on using the repository browser.