Changes between Version 12 and Version 13 of Component/Mapping Table
- Timestamp:
- Feb 11, 2008, 11:39:57 AM (17 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
Component/Mapping Table
v12 v13 14 14 and the mapping of the segments on the VCI physical targets. 15 15 16 From this centralized description, it is possible to derive the ''' routing tables''' used by the16 From this centralized description, it is possible to derive the '''Routing Tables''' used by the 17 17 hardware interconnect components to decode the VCI address, and route the VCI packets to 18 18 the proper VCI target. It is also possible to derive the '''Cacheability Table''' used by the … … 49 49 * a name 50 50 * a base address 51 * a size 51 * a size (number of bytes) 52 52 * a target_index (an !IntTab) 53 53 * a cacheability flag 54 54 55 The size field is a number of bytes. Thetarget_index field identifies the VCI target that contains55 The target_index field identifies the VCI target that contains 56 56 the corresponding segment, and is used by the interconnect to route a command packet to the proper target. 57 57 The cacheability field is used by the [wiki:Component/VciXcache VciXcache] component to define if the corresponding segment is cacheable. All segments defined by the system designer for a given architecture must be non-overlaping. … … 62 62 }}} 63 63 64 This segment is associated to target no 2 in cluster no 3. Itis cacheable.64 In this example, the segment is associated to target no 2 in cluster no 3, and is cacheable. 65 65 66 == 3) Cacheability Table == 67 68 Cacheability is a by-segment attribute. Cacheability is implemented by the [wiki:Component/VciXcache VciXcache] component. As this component does not implement a MMU, it contains a dedicated address decoder to determine the cacheability. This decoder is implemented as a '''Cacheability Table'''. 69 This table is accessed by the cache controller for each processor request. This table is indexed by the 70 address bits defined by the cacheability_mask, and contains the Boolean defining the cacheability. 71 72 The content of the '''Cacheability Table''' is automatically constructed by a method of the mapping table. 73 Of course, the mapping of the cacheable segments must be consistent with the cacheability mask defined in the mapping table. This is checked by the mapping table, and you'll get an `"Incoherent MappingTable" exception` if the mapping is inconsistent. 74 75 == 4) Routing Tables == 66 == 3) Routing Tables == 76 67 77 68 === One level interconnect === … … 117 108 * It generates - for each cluster - the '''Local Routing Table''', implemented as a ROM by the local interconnect. This table is indexed by the VCI ADDRESS LSB bits and contains the target local index. Depending on the mapping, each cluster can have a different Local Routing Table. 118 109 110 == 4) Cacheability Table == 111 112 Cacheability is a by-segment attribute. Cacheability is implemented by the [wiki:Component/VciXcache VciXcache] component. As this component does not implement a MMU, it contains a dedicated address decoder to determine the cacheability. This decoder is implemented as a '''Cacheability Table'''. 113 This table is accessed by the cache controller for each processor request. This table is indexed by the 114 address bits defined by the cacheability_mask, and contains the Boolean defining the cacheability. 115 116 The content of the '''Cacheability Table''' is automatically constructed by a method of the mapping table. 117 Of course, the mapping of the cacheable segments must be consistent with the cacheability mask defined in the mapping table. This is checked by the mapping table, and you'll get an `"Incoherent MappingTable" exception` if the mapping is inconsistent.