Changes between Version 27 and Version 28 of Writing Rules/Caba


Ignore:
Timestamp:
Nov 22, 2012, 4:53:19 PM (12 years ago)
Author:
alain
Comment:

Legend:

Unmodified
Added
Removed
Modified
  • Writing Rules/Caba

    v27 v28  
    154154
    155155Any hardware component must have an instance name, and most SoCLib component must have
    156 a VCI index. Moreover, generic simulation models can have structural parameters. The parameter
     156a VCI target or VCI initiator index. Moreover, generic simulation models can have structural parameters. The parameter
    157157values must be defined as constructor arguments, and used by the constructor to configure the hardware ressources. A constructor  argument frequently
    158158used is a reference on the [source:trunk/soclib/soclib/lib/mapping_table/include/mapping_table.h soclib::common::MappingTable], that defines the segmentation of the system address space.
     
    222222
    223223// Here we pass the VCI parameters as a template argument. This is intended because VCI parameters
    224 // change data type widths, therefore change some compile-time intrinsics
     224// change data type widths, therefore change some compile-time charcteristics.
    225225template<typename vci_param>
    226226class VciLocks
     
    237237    };
    238238
    239     // The register holding the FSM state:
    240     sc_signal<int> r_vci_fsm;
    241 
    242     // Some registers used to save useful data between command & response
     239    // The registers must have the sc_signal type)
     240    sc_signal<int> r_vci_fsm;  // FSM state register
    243241    sc_signal<typename vci_param::srcid_t> r_buf_srcid;
    244242    sc_signal<typename vci_param::trdid_t> r_buf_trdid;
     
    246244    sc_signal<typename vci_param::eop_t>   r_buf_eop;
    247245    sc_signal<bool>                        r_buf_value;
    248 
    249     // Pointer on the table of locks (allocated in the constructor)
    250     sc_signal<bool>             *r_contents;
    251 
    252     // The segment assigned to this peripheral
    253     soclib::common::Segment m_segment;
     246    sc_signal<bool>             *r_contents; // the loks array is allocated in constructor
     247
     248    // The structural constants : segment assigned to this peripheral
     249    const soclib::common::Segment m_segment;
    254250
    255251protected: