| 1 | [wiki:Component SocLib Components General Index] |
| 2 | |
| 3 | = !VciMultiRam Functional Description = |
| 4 | |
| 5 | This VCI target is an embedded SRAM controller. This hardware component implements up to |
| 6 | 16 independent memory segments : Each segment is defined by a BASE address and a SIZE (number of bytes). |
| 7 | Both the BASE and the SIZE parameters must be multiple of 4. |
| 8 | The segments allocated to a given instance of this component is defined in the mapping table. |
| 9 | |
| 10 | Each segment is implemented as aa array of ''int'' dynamically allocated in the constructor. |
| 11 | A segment can be initialised using the |
| 12 | |
| 13 | = !VciMultiRam CABA Implementation = |
| 14 | |
| 15 | The caba implementation is in |
| 16 | * source:trunk/soclib/systemc/include/caba/target/vci_multi_ram.h |
| 17 | * source:trunk/soclib/systemc/src/caba/target/vci_multi_ram.cc |
| 18 | |
| 19 | == Template parameters: == |
| 20 | * The VCI parameters |
| 21 | |
| 22 | == Constructor parameters == |
| 23 | {{{ |
| 24 | VciMultiRam( |
| 25 | sc_module_name name, // Instance name |
| 26 | const soclib::common::IntTab &index, // Target index |
| 27 | const soclib::common::MappingTable &mt, // Mapping Table |
| 28 | soclib::common::ElfLoader &loader); |
| 29 | }}} |
| 30 | |
| 31 | == Ports == |
| 32 | |
| 33 | * sc_in<bool> '''p_resetn''' : Global system reset |
| 34 | * sc_in<bool> '''p_clk''' : Global system clock |
| 35 | * soclib::common::!VciiTarget<vci_param> '''p_vci''' : The VCI port |