Changes between Version 13 and Version 14 of mapping_info
- Timestamp:
- Oct 27, 2014, 5:48:07 PM (10 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
mapping_info
v13 v14 82 82 The physical global processor index will be : ( ( x << y_width ) + y ) << p_width ) + p 83 83 84 === Physical memory bank ===84 === 3. Physical memory bank === 85 85 86 86 The '''mapping.addRam( )''' construct define one physical memory bank, and the associated physical segment in a cluster. It has the following arguments: … … 91 91 The target cluster coordinates (x,y) is defined by the base address MSB bits. 92 92 93 === 3. Physical peripheral ===93 === 4. Physical peripheral === 94 94 95 95 The '''mapping.addPeriph( )''' construct adds one peripheral, and the associated physical segment in a cluster. It has the following arguments: … … 105 105 The supported peripheral types and subtypes are defined in the [source:soft/giet_vm/giet_python/mapping.py mapping.py] file. 106 106 107 === 4. Interrupt line ===107 === 5. Interrupt line === 108 108 109 109 The '''mapping.addIrq()''' construct adds one IRQ line input to an XCU peripheral, or to a PIC peripheral. It has the following arguments: … … 139 139 The ''x'', ''y'', and ''pseg'' arguments define actually the mapping. 140 140 141 === Boot vsegs ===141 === 1. Boot vsegs === 142 142 143 143 There is 4 'vsegs for the GIET_VM bootloader: … … 148 148 These 4 vsegs must be identity mapping (because the page table are not available), and are mapped in the first big physical page (2 Mbytes) in cluster [0][0]. 149 149 150 === Kernel vsegs ===150 === 2. Kernel vsegs === 151 151 152 152 There is six types of vsegs for the GIET_VM kernel, but some vsegs are replicated in all clusters, to improve locality and minimize contention, as explained below: … … 156 156 * The '''seg_kernel_sched_x_y''' vseg has type SCHED. It contains the processor schedulers (one scheduler per processor). There is one such vseg in each cluster, and it must be mapped on small pages (two small pages per scheduler). 157 157 158 === Peripheral vsegs ===158 === 3. Peripheral vsegs === 159 159 160 160 A global vseg must be defined for each addressable peripheral. … … 174 174 * One or several '''mwmr''' vseg(s) 175 175 176 === create the vspace ===176 === 1. create the vspace === 177 177 178 178 The '''mapping.addvspace( )''' construct define a vspace. It has the following arguments: … … 180 180 || startname || name of || 181 181 182 === vseg mapping ===182 === 2. vseg mapping === 183 183 184 184 The '''mapping.addVseg( )''' construct define the mapping of a vseg in the vspace. It has the following arguments: … … 200 200 The ''x'', ''y'', and ''pseg'' arguments define actually the mapping. 201 201 202 === task mapping ===202 === 3. task mapping === 203 203 204 204 The '''mapping.addVseg( )''' construct define the mapping of a task in the vspace. It has the following arguments: