Ignore:
Timestamp:
Apr 5, 2007, 4:17:30 PM (18 years ago)
Author:
rosiere
Message:

Interface normalisé
Début du banc de registres multi niveaux

Location:
trunk/IPs/systemC/processor/Morpheo
Files:
7 added
4 deleted
211 edited
13 moved

Legend:

Unmodified
Added
Removed
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Constant/Constant_OpenRISC.h

    r2 r15  
    1313namespace behavioural {
    1414namespace constant {
     15#define                 _size_instruction             32
     16#define                 _size_instruction_log2        5
    1517
    1618  //------------------------------------------------------[ Control ]-----
    17   typedef bool    Tcontrol_t;
     19  typedef bool          Tcontrol_t;
    1820
     21  //----------------------------------------------------[ Operation ]-----
     22  typedef uint8_t       Toperation_t;
     23#define                 _nb_operation                 32
     24#define                 _size_operation               5
     25
     26#define                 _operation_none               0x0
     27#define                 _operation_l_adds             0x1
     28#define                 _operation_l_addu             0x2
     29#define                 _operation_l_subs             0x3
     30#define                 _operation_l_and              0x4
     31#define                 _operation_l_or               0x5
     32#define                 _operation_l_xor              0x6
     33#define                 _operation_l_cmove            0x7
     34#define                 _operation_l_read_imm         0x8
     35#define                 _operation_l_movhi            0x9
     36#define                 _operation_l_muls             0xa
     37#define                 _operation_l_mulu             0xb
     38#define                 _operation_l_divs             0xc
     39#define                 _operation_l_divu             0xd
     40#define                 _operation_l_exts             0xe
     41#define                 _operation_l_extz             0xf
     42#define                 _operation_l_ff1              0x10
     43#define                 _operation_l_fl1              0x11
     44#define                 _operation_l_sll              0x12
     45#define                 _operation_l_sla              0x13
     46#define                 _operation_l_srl              0x14
     47#define                 _operation_l_ror              0x15
     48#define                 _operation_l_cmp_eq           0x16
     49#define                 _operation_l_cmp_ne           0x17
     50#define                 _operation_l_cmp_ges          0x18
     51#define                 _operation_l_cmp_geu          0x19
     52#define                 _operation_l_cmp_gts          0x1a
     53#define                 _operation_l_cmp_gtu          0x1b
     54#define                 _operation_l_cmp_les          0x1c
     55#define                 _operation_l_cmp_leu          0x1d
     56#define                 _operation_l_cmp_lts          0x1e
     57#define                 _operation_l_cmp_ltu          0x1f
     58
     59  //--------------------------------------------------[ destination ]-----
     60  typedef uint8_t       Tdestination1_t;
     61#define                 _size_destination1            4
     62
     63#define                  cst_DESTINATION1_NONE        0x0
     64#define                 mask_DESTINATION1_GPR         0x1
     65#define                 mask_DESTINATION1_MEMORY      0x2
     66#define                 mask_DESTINATION1_SPR         0x4
     67#define                 mask_DESTINATION1_MAC_UNIT    0x8
     68 
     69  typedef uint8_t       Tdestination2_t;
     70#define                 _size_destination2  3
     71
     72#define                  cst_DESTINATION2_NONE        0x0
     73#define                 mask_DESTINATION2_COMMIT      0x1
     74#define                 mask_DESTINATION2_MEMORY      0x2
     75#define                 mask_DESTINATION2_SPR         0x4
     76 
     77  //----------------------------------------------------[ exec_flag ]-----
     78  typedef uint8_t       Texec_flag_t;
     79#define                 _size_exec_flag               2
     80
     81#define                 mask_EXEC_FLAG_NONE           0x1
     82#define                 mask_EXEC_FLAG_CARRY          0x1
     83#define                 mask_EXEC_FLAG_FLAG           0x1
     84#define                 mask_EXEC_FLAG_OVERFLOW       0x2
     85
     86  //---------------------------------------------------[ exec_excep ]-----
     87  typedef bool          Texec_excep_t;
     88#define                  _size_exec_excep             1
     89
     90#define                 mask_EXEC_EXCEP_NONE          0x0
     91#define                 mask_EXEC_EXCEP_RANGE         0x1
     92 
    1993  //----------------------------------------------------[ Condition ]-----
    20   typedef uint8_t Tcondition_t;
     94  typedef uint8_t       Tcondition_t;
     95#define                 _size_condition               3
    2196   
    22   const Tcondition_t    cst_CONDITION_NONE            = 0x0;           // None condition (jump)
    23   const Tcondition_t    cst_CONDITION_F               = 0x2;           // Branch if Flag is set
    24   const Tcondition_t    cst_CONDITION_NF              = 0x3;           // Branch if Flag is clear
    25   const Tcondition_t    cst_CONDITION_REG             = 0x4;           // Branch if a register is read
    26   const Tcondition_t    cst_CONDITION_STACK           = 0x8;           // Branch with pop  in stack pointer
     97#define                  cst_CONDITION_UNCONDITIONAL  0x0           // None condition (jump)
     98#define                 mask_CONDITION_CONDITIONAL    0x2           
     99#define                 mask_CONDITION_CONDITIONAL_NF 0x0           // Branch if Flag is clear
     100#define                 mask_CONDITION_CONDITIONAL_F  0x1           // Branch if Flag is set   
     101#define                 mask_CONDITION_REG            0x4           // Branch if a register is read
     102#define                 mask_CONDITION_STACK          0x8           // Branch with pop  in stack pointer
    27103
    28104  //-------------------------------------------------[ branch_state ]-----
    29   typedef uint8_t Tbranch_state_t;
     105  typedef uint8_t       Tbranch_state_t;
    30106
    31   const Tbranch_state_t cst_BRANCH_STATE_NONE         = 0x0;           // 0 0
    32   const Tbranch_state_t cst_BRANCH_STATE_NSPEC_TAKE   = 0x1;           // 0 1  -> incondionnal
    33   const Tbranch_state_t cst_BRANCH_STATE_SPEC_NTAKE   = 0x2;           // 1 0
    34   const Tbranch_state_t cst_BRANCH_STATE_SPEC_TAKE    = 0x3;           // 1 1
    35 
     107#define                 cst_BRANCH_STATE_NONE         0x0           // 0 0
     108#define                 cst_BRANCH_STATE_NSPEC_TAKE   0x1           // 0 1  -> incondionnal
     109#define                 cst_BRANCH_STATE_SPEC_NTAKE   0x2           // 1 0
     110#define                 cst_BRANCH_STATE_SPEC_TAKE    0x3           // 1 1
    36111
    37112}; // end namespace constant
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Monolithic/Makefile

    r2 r15  
    88
    99#-----[ Directory ]----------------------------------------
    10 DIR_MORPHEO                     = ../../..
     10DIR_MORPHEO                     = ../../../..
    1111
    1212#-----[ Library ]------------------------------------------
    13 LIBRARY                         = $(DIR_LIB)/libRegisterFile.a
     13LIBRARY                         = $(DIR_LIB)/libRegisterFile_Monolithic.a
    1414
    1515
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Monolithic/Makefile.deps

    r2 r15  
    1515endif
    1616
    17 RegisterFile                    = yes
     17RegisterFile_Monolithic                 = yes
    1818#-----[ Library ]------------------------------------------
    19 RegisterFile_LIBRARY            =       -lRegisterFile          \
     19RegisterFile_Monolithic_LIBRARY         =       -lRegisterFile_Monolithic               \
    2020                                        $(Group_LIBRARY)        \
    2121                                        $(Behavioural_LIBRARY) 
    2222
    23 RegisterFile_DIR_LIBRARY        =       -L$(DIR_MORPHEO)/Behavioural/Generic/RegisterFile/lib   \
     23RegisterFile_Monolithic_DIR_LIBRARY     =       -L$(DIR_MORPHEO)/Behavioural/Generic/RegisterFile/RegisterFile_Monolithic/lib   \
    2424                                        $(Group_DIR_LIBRARY)                                    \
    2525                                        $(Behavioural_DIR_LIBRARY)     
     
    2727#-----[ Rules ]--------------------------------------------
    2828
    29 RegisterFile_library            :
     29RegisterFile_Monolithic_library         :
    3030                                @$(MAKE)  Behavioural_library
    3131                                @$(MAKE)  Group_library
    32                                 @$(MAKE) --directory=$(DIR_MORPHEO)/Behavioural/Generic/RegisterFile --makefile=Makefile
     32                                @$(MAKE) --directory=$(DIR_MORPHEO)/Behavioural/Generic/RegisterFile/RegisterFile_Monolithic --makefile=Makefile
    3333       
    34 RegisterFile_library_clean      :
     34RegisterFile_Monolithic_library_clean   :
    3535                                @$(MAKE)  Behavioural_library_clean
    3636                                @$(MAKE)  Group_library_clean
    37                                 @$(MAKE) --directory=$(DIR_MORPHEO)/Behavioural/Generic/RegisterFile --makefile=Makefile clean
     37                                @$(MAKE) --directory=$(DIR_MORPHEO)/Behavioural/Generic/RegisterFile/RegisterFile_Monolithic --makefile=Makefile clean
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Monolithic/SelfTest/Makefile

    r2 r15  
    88
    99#-----[ Directory ]----------------------------------------
    10 DIR_MORPHEO                     = ../../../..
     10DIR_MORPHEO                     = ../../../../..
    1111
    12 LIBRARY                         = $(RegisterFile_LIBRARY)
     12LIBRARY                         = $(RegisterFile_Monolithic_LIBRARY)
    1313
    14 DIR_LIBRARY                     = $(RegisterFile_DIR_LIBRARY)
     14DIR_LIBRARY                     = $(RegisterFile_Monolithic_DIR_LIBRARY)
    1515
    1616#-----[ include ]------------------------------------------
     
    1919                                @$(MAKE) all_selftest
    2020
    21 library                         : RegisterFile_library
     21library                         : RegisterFile_Monolithic_library
    2222
    23 library_clean                   : RegisterFile_library_clean
     23library_clean                   : RegisterFile_Monolithic_library_clean
    2424
    2525include                         ../Makefile.deps
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Monolithic/SelfTest/configuration.cfg

    r6 r15  
    1 RegisterFile
     1RegisterFile_Monolithic
    221       8       *2      # nb_port_read
    331       4       *2      # nb_port_write
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Monolithic/SelfTest/include/test.h

    r2 r15  
    44 * [ Description ]
    55 *
    6  * Test "RegisterFile"
    76 */
    87
     
    1413#include <iostream>
    1514
    16 #include "Behavioural/Generic/RegisterFile/include/RegisterFile.h"
     15#include "Behavioural/Generic/RegisterFile/RegisterFile_Monolithic/include/RegisterFile_Monolithic.h"
    1716
    1817using namespace std;
     
    2120using namespace morpheo::behavioural::generic;
    2221using namespace morpheo::behavioural::generic::registerfile;
     22using namespace morpheo::behavioural::generic::registerfile::registerfile_monolithic;
    2323
    2424void test   (string name,
    25              morpheo::behavioural::generic::registerfile::Parameters param);
     25             morpheo::behavioural::generic::registerfile::registerfile_monolithic::Parameters param);
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Monolithic/SelfTest/src/main.cpp

    r6 r15  
    66 */
    77
    8 #include "Behavioural/Generic/RegisterFile/SelfTest/include/test.h"
     8#include "Behavioural/Generic/RegisterFile/RegisterFile_Monolithic/SelfTest/include/test.h"
    99
    1010#define NB_PARAMS 4
     
    3636  const uint32_t size_word     = atoi(argv[5]);
    3737 
    38   morpheo::behavioural::generic::registerfile::Parameters param (nb_port_read ,
    39                                                                 nb_port_write,
     38  morpheo::behavioural::generic::registerfile::registerfile_monolithic::Parameters param (nb_port_read ,
     39                                                                                          nb_port_write,
    4040                                                                 nb_word      ,
    4141                                                                 size_word    );
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Monolithic/SelfTest/src/test.cpp

    r6 r15  
    77 */
    88
    9 #include "Behavioural/Generic/RegisterFile/SelfTest/include/test.h"
     9#include "Behavioural/Generic/RegisterFile/RegisterFile_Monolithic/SelfTest/include/test.h"
    1010#include "Include/Test.h"
    1111
    1212void test (string name,
    13            morpheo::behavioural::generic::registerfile::Parameters param)
     13           morpheo::behavioural::generic::registerfile::registerfile_monolithic::Parameters param)
    1414{
    1515  cout << "<" << name << "> : Simulation SystemC" << endl;
     
    3131    }
    3232
    33   RegisterFile * registerfile = new RegisterFile (name.c_str(),
     33  RegisterFile_Monolithic * registerfile = new RegisterFile_Monolithic (name.c_str(),
    3434#ifdef STATISTICS
    35                                                   morpheo::behavioural::Parameters_Statistics(5,50),
     35                                                                        morpheo::behavioural::Parameters_Statistics(5,50),
    3636#endif
    37                                                   param);
     37                                                                        param);
    3838 
    3939#ifdef SYSTEMC
     
    5858   ********************************************************/
    5959 
    60   cout << "<" << name << "> Instanciation of registerFile" << endl;
     60  cout << "<" << name << "> Instanciation of registerfile" << endl;
    6161 
    6262  (*(registerfile->in_CLOCK))        (CLOCK);
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Monolithic/include/Parameters.h

    r2 r15  
    1 #ifndef morpheo_behavioural_generic_registerfile_Parameters_h
    2 #define morpheo_behavioural_generic_registerfile_Parameters_h
     1#ifndef morpheo_behavioural_generic_registerfile_registerfile_monolithic_Parameters_h
     2#define morpheo_behavioural_generic_registerfile_registerfile_monolithic_Parameters_h
    33
    44/*
     
    1717namespace generic                    {
    1818namespace registerfile               {
     19namespace registerfile_monolithic    {
    1920
    2021  class Parameters : public morpheo::behavioural::Parameters
     
    3637  public :        string   print      (uint32_t depth);
    3738  public : friend ostream& operator<< (ostream& output_stream,
    38                                        morpheo::behavioural::generic::registerfile::Parameters & x);
     39                                       morpheo::behavioural::generic::registerfile::registerfile_monolithic::Parameters & x);
    3940  };
    4041
     42}; // end namespace registerfile_monolithic
    4143}; // end namespace registerfile
    4244}; // end namespace generic
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Monolithic/include/RegisterFile_Monolithic.h

    r9 r15  
    1 #ifndef morpheo_behavioural_generic_registerfile_RegisterFile
    2 #define morpheo_behavioural_generic_registerfile_RegisterFile
     1#ifndef morpheo_behavioural_generic_registerfile_registerfile_monolithic_RegisterFile_Monolithic
     2#define morpheo_behavioural_generic_registerfile_registerfile_monolithic_RegisterFile_Monolithic
    33
    44/*
     
    1818using namespace std;
    1919
    20 #include "Behavioural/Generic/RegisterFile/include/Parameters.h"
    21 #include "Behavioural/Generic/RegisterFile/include/Types.h"
     20#include "Behavioural/Generic/RegisterFile/RegisterFile_Monolithic/include/Parameters.h"
     21#include "Behavioural/Generic/RegisterFile/RegisterFile_Monolithic/include/Types.h"
    2222#ifdef STATISTICS
    23 #include "Behavioural/Generic/RegisterFile/include/Statistics.h"
     23#include "Behavioural/Generic/RegisterFile/RegisterFile_Monolithic/include/Statistics.h"
    2424#endif
    2525#ifdef VHDL
     
    3636namespace generic                    {
    3737namespace registerfile               {
     38namespace registerfile_monolithic    {
    3839
    39   class RegisterFile
     40  class RegisterFile_Monolithic
    4041#if SYSTEMC
    4142    : public sc_module
     
    8586
    8687#ifdef SYSTEMC
    87     SC_HAS_PROCESS (RegisterFile);
     88    SC_HAS_PROCESS (RegisterFile_Monolithic);
    8889#endif                                         
    8990
    90   public  :          RegisterFile              (
     91  public  :          RegisterFile_Monolithic   (
    9192#ifdef SYSTEMC
    9293                                                sc_module_name                              name,
     
    99100                                                Parameters                                  param );
    100101                                               
    101   public  :          RegisterFile              (Parameters param );
    102   public  :          ~RegisterFile             (void);
     102  public  :          RegisterFile_Monolithic   (Parameters param );
     103  public  :          ~RegisterFile_Monolithic  (void);
    103104                                               
    104105#ifdef SYSTEMC                                 
     
    130131  };
    131132
     133}; // end namespace registerfile_monolithic
    132134}; // end namespace registerfile
    133135}; // end namespace generic
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Monolithic/include/Statistics.h

    r2 r15  
    11#ifdef STATISTICS
    2 #ifndef morpheo_behavioural_generic_registerfile_Statistics_h
    3 #define morpheo_behavioural_generic_registerfile_Statistics_h
     2#ifndef morpheo_behavioural_generic_registerfile_registerfile_monolithic_Statistics_h
     3#define morpheo_behavioural_generic_registerfile_registerfile_monolithic_Statistics_h
    44
    55/*
     
    1414#include "Behavioural/include/Parameters_Statistics.h"
    1515#include "Behavioural/Generic/Group/include/Statistics.h"
    16 #include "Behavioural/Generic/RegisterFile/include/Parameters.h"
     16#include "Behavioural/Generic/RegisterFile/RegisterFile_Monolithic/include/Parameters.h"
    1717
    1818using namespace morpheo::behavioural::generic::group;
     
    2222namespace generic                    {
    2323namespace registerfile               {
     24namespace registerfile_monolithic    {
    2425
    2526  class Statistics : public morpheo::behavioural::Statistics
     
    4849  };
    4950
     51}; // end namespace registerfile_monolithic
    5052}; // end namespace registerfile
    5153}; // end namespace generic
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Monolithic/include/Types.h

    r6 r15  
    1 #ifndef morpheo_behavioural_generic_registerfile_Type_h
    2 #define morpheo_behavioural_generic_registerfile_Type_h
     1#ifndef morpheo_behavioural_generic_registerfile_registerfile_monolithic_Type_h
     2#define morpheo_behavioural_generic_registerfile_registerfile_monolithic_Type_h
    33
    44/*
     
    1515namespace generic                    {
    1616namespace registerfile               {
     17namespace registerfile_monolithic    {
    1718
    1819  typedef uint32_t Taddress_t;
    1920  typedef uint32_t Tdata_t;
    2021
     22}; // end namespace registerfile_monolithic
    2123}; // end namespace registerfile
    2224}; // end namespace generic
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Monolithic/src/Parameters.cpp

    r2 r15  
    66 */
    77
    8 #include "Behavioural/Generic/RegisterFile/include/Parameters.h"
     8#include "Behavioural/Generic/RegisterFile/RegisterFile_Monolithic/include/Parameters.h"
    99
    1010namespace morpheo                    {
     
    1212namespace generic                    {
    1313namespace registerfile               {
     14namespace registerfile_monolithic    {
    1415
    1516  Parameters::Parameters (uint32_t nb_port_read ,
     
    3839  { };
    3940
     41}; // end namespace registerfile_monolithic
    4042}; // end namespace registerfile
    4143}; // end namespace generic
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Monolithic/src/Parameters_msg_error.cpp

    r6 r15  
    77
    88#include <stdint.h>
    9 #include "Behavioural/Generic/RegisterFile/include/Parameters.h"
    10 #include "Behavioural/Generic/RegisterFile/include/Types.h"
     9#include "Behavioural/Generic/RegisterFile/RegisterFile_Monolithic/include/Parameters.h"
     10#include "Behavioural/Generic/RegisterFile/RegisterFile_Monolithic/include/Types.h"
    1111#include <sstream>
    1212using namespace std;
     
    1616namespace generic                    {
    1717namespace registerfile               {
     18namespace registerfile_monolithic    {
    1819
    1920  string Parameters::msg_error(void)
     
    4546  };
    4647
     48}; // end namespace registerfile_monolithic
    4749}; // end namespace registerfile
    4850}; // end namespace generic
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Monolithic/src/Parameters_print.cpp

    r2 r15  
    77
    88#include <stdint.h>
    9 #include "Behavioural/Generic/RegisterFile/include/Parameters.h"
     9#include "Behavioural/Generic/RegisterFile/RegisterFile_Monolithic/include/Parameters.h"
    1010#include <sstream>
    1111using namespace std;
     
    1515namespace generic                    {
    1616namespace registerfile               {
     17namespace registerfile_monolithic    {
    1718
    1819  string Parameters::print (uint32_t depth)
     
    2021    string tab = string(depth,'\t');
    2122    ostringstream msg;
    22     msg << tab << "<registerfile>" << endl
     23    msg << tab << "<registerfile_monolithic>" << endl
    2324        << tab << "\t<nb_port_read  value=\"" << _nb_port_read  << "\" />" << endl
    2425        << tab << "\t<nb_port_write value=\"" << _nb_port_write << "\" />" << endl
    2526        << tab << "\t<nb_word       value=\"" << _nb_word       << "\" />" << endl
    2627        << tab << "\t<size_word     value=\"" << _size_word     << "\" />" << endl
    27         << tab << "</registerfile>" << endl;
     28        << tab << "</registerfile_monolithic>" << endl;
    2829   
    2930    return msg.str();
     
    3132
    3233  ostream& operator<< (ostream& output_stream ,
    33                        morpheo::behavioural::generic::registerfile::Parameters & x)
     34                       morpheo::behavioural::generic::registerfile::registerfile_monolithic::Parameters & x)
    3435  {
    3536    output_stream << x.print(0);
     
    3839  };
    3940
     41}; // end namespace registerfile_monolithic
    4042}; // end namespace registerfile
    4143}; // end namespace generic
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Monolithic/src/RegisterFile_Monolithic.cpp

    r11 r15  
    66 */
    77
    8 #include "Behavioural/Generic/RegisterFile/include/RegisterFile.h"
     8#include "Behavioural/Generic/RegisterFile/RegisterFile_Monolithic/include/RegisterFile_Monolithic.h"
    99
    1010namespace morpheo                    {
     
    1212namespace generic                    {
    1313namespace registerfile               {
     14namespace registerfile_monolithic    {
    1415
     16  RegisterFile_Monolithic::RegisterFile_Monolithic (
    1517#ifdef SYSTEMC
    16   RegisterFile::RegisterFile (sc_module_name name,
     18                                                    sc_module_name name,
    1719#else
    18   RegisterFile::RegisterFile (string name        ,
     20                                                    string name        ,
    1921#endif
    2022#ifdef STATISTICS
    21                               morpheo::behavioural::Parameters_Statistics             param_statistics,
     23                                                    morpheo::behavioural::Parameters_Statistics             param_statistics,
    2224#endif
    23                               morpheo::behavioural::generic::registerfile::Parameters param ):
    24                               _name   (name)
    25                               ,_param (param)
     25                                                    morpheo::behavioural::generic::registerfile::registerfile_monolithic::Parameters param ):
     26    _name   (name),
     27    _param (param)
    2628  {
    2729#ifdef STATISTICS
     
    7274  };
    7375 
    74   RegisterFile::~RegisterFile (void)
     76  RegisterFile_Monolithic::~RegisterFile_Monolithic (void)
    7577  {
    7678#ifdef SYSTEMC
     
    9092  };
    9193
     94}; // end namespace registerfile_monolithic
    9295}; // end namespace registerfile
    9396}; // end namespace generic
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Monolithic/src/RegisterFile_Monolithic_allocation.cpp

    r11 r15  
    77 */
    88
    9 #include "Behavioural/Generic/RegisterFile/include/RegisterFile.h"
     9#include "Behavioural/Generic/RegisterFile/RegisterFile_Monolithic/include/RegisterFile_Monolithic.h"
    1010
    1111namespace morpheo                    {
     
    1313namespace generic                    {
    1414namespace registerfile               {
     15namespace registerfile_monolithic    {
    1516
    16   void RegisterFile::allocation (void)
     17  void RegisterFile_Monolithic::allocation (void)
    1718  {
    1819    in_CLOCK  = new SC_CLOCK           ("in_CLOCK");
     
    7576  };
    7677
     78}; // end namespace registerfile_monolithic
    7779}; // end namespace registerfile
    7880}; // end namespace generic
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Monolithic/src/RegisterFile_Monolithic_deallocation.cpp

    r11 r15  
    77 */
    88
    9 #include "Behavioural/Generic/RegisterFile/include/RegisterFile.h"
     9#include "Behavioural/Generic/RegisterFile/RegisterFile_Monolithic/include/RegisterFile_Monolithic.h"
    1010
    1111namespace morpheo                    {
     
    1313namespace generic                    {
    1414namespace registerfile               {
     15namespace registerfile_monolithic    {
    1516
    16   void RegisterFile::deallocation (void)
     17  void RegisterFile_Monolithic::deallocation (void)
    1718  {
    1819    delete in_CLOCK;
     
    5556  };
    5657
     58}; // end namespace registerfile_monolithic
    5759}; // end namespace registerfile
    5860}; // end namespace generic
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Monolithic/src/RegisterFile_Monolithic_genMealy_read.cpp

    r11 r15  
    77 */
    88
    9 #include "Behavioural/Generic/RegisterFile/include/RegisterFile.h"
     9#include "Behavioural/Generic/RegisterFile/RegisterFile_Monolithic/include/RegisterFile_Monolithic.h"
    1010
    1111namespace morpheo                    {
     
    1313namespace generic                    {
    1414namespace registerfile               {
     15namespace registerfile_monolithic    {
    1516
    16   void RegisterFile::genMealy_read (void)
     17  void RegisterFile_Monolithic::genMealy_read (void)
    1718  {
    1819    log_printf(FUNC,Register_File,"genMealy_read","Begin");
     
    4849  };
    4950
     51}; // end namespace registerfile_monolithic
    5052}; // end namespace registerfile
    5153}; // end namespace generic
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Monolithic/src/RegisterFile_Monolithic_statistics.cpp

    r11 r15  
    77 */
    88
    9 #include "Behavioural/Generic/RegisterFile/include/RegisterFile.h"
     9#include "Behavioural/Generic/RegisterFile/RegisterFile_Monolithic/include/RegisterFile_Monolithic.h"
    1010
    1111namespace morpheo                    {
     
    1313namespace generic                    {
    1414namespace registerfile               {
     15namespace registerfile_monolithic    {
    1516
    16   string RegisterFile::statistics (uint32_t depth)
     17  string RegisterFile_Monolithic::statistics (uint32_t depth)
    1718  {
    1819    return _stat->print(depth);
    1920  };
    2021
     22}; // end namespace registerfile_monolithic
    2123}; // end namespace registerfile
    2224}; // end namespace generic
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Monolithic/src/RegisterFile_Monolithic_transition.cpp

    r11 r15  
    77 */
    88
    9 #include "Behavioural/Generic/RegisterFile/include/RegisterFile.h"
     9#include "Behavioural/Generic/RegisterFile/RegisterFile_Monolithic/include/RegisterFile_Monolithic.h"
    1010
    1111namespace morpheo                    {
     
    1313namespace generic                    {
    1414namespace registerfile               {
    15 
    16   void RegisterFile::transition (void)
     15namespace registerfile_monolithic    {
     16  void RegisterFile_Monolithic::transition (void)
    1717  {
    1818    log_printf(FUNC,Register_File,"transition","Begin");
     
    5050  };
    5151
     52}; // end namespace registerfile_monolithic
    5253}; // end namespace registerfile
    5354}; // end namespace generic
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Monolithic/src/RegisterFile_Monolithic_vhdl.cpp

    r11 r15  
    77 */
    88
    9 #include "Behavioural/Generic/RegisterFile/include/RegisterFile.h"
     9#include "Behavioural/Generic/RegisterFile/RegisterFile_Monolithic/include/RegisterFile_Monolithic.h"
    1010#include "Behavioural/include/Vhdl.h"
    1111#include "Include/ToString.h"
     
    1414namespace generic                    {
    1515namespace registerfile               {
     16namespace registerfile_monolithic    {
    1617
    17   void RegisterFile::vhdl (void)
     18  void RegisterFile_Monolithic::vhdl (void)
    1819  {
    1920    Vhdl vhdl (_name);
     
    2930  };
    3031
     32}; // end namespace registerfile_monolithic
    3133}; // end namespace registerfile
    3234}; // end namespace generic
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Monolithic/src/RegisterFile_Monolithic_vhdl_body.cpp

    r11 r15  
    77 */
    88
    9 #include "Behavioural/Generic/RegisterFile/include/RegisterFile.h"
     9#include "Behavioural/Generic/RegisterFile/RegisterFile_Monolithic/include/RegisterFile_Monolithic.h"
    1010
    1111namespace morpheo                    {
     
    1313namespace generic                    {
    1414namespace registerfile               {
     15namespace registerfile_monolithic    {
    1516
    16   void RegisterFile::vhdl_body (Vhdl & vhdl)
     17  void RegisterFile_Monolithic::vhdl_body (Vhdl & vhdl)
    1718  {
    1819    vhdl.set_body ("");
     
    5152  };
    5253
     54}; // end namespace registerfile_monolithic
    5355}; // end namespace registerfile
    5456}; // end namespace generic
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Monolithic/src/RegisterFile_Monolithic_vhdl_port.cpp

    r11 r15  
    77 */
    88
    9 #include "Behavioural/Generic/RegisterFile/include/RegisterFile.h"
     9#include "Behavioural/Generic/RegisterFile/RegisterFile_Monolithic/include/RegisterFile_Monolithic.h"
    1010
    1111namespace morpheo                    {
     
    1313namespace generic                    {
    1414namespace registerfile               {
     15namespace registerfile_monolithic    {
    1516
    16   void RegisterFile::vhdl_port (Vhdl & vhdl)
     17  void RegisterFile_Monolithic::vhdl_port (Vhdl & vhdl)
    1718  {
    1819    vhdl.set_port ("in_CLOCK" , IN, 1);
     
    3637  };
    3738
     39}; // end namespace registerfile_monolithic
    3840}; // end namespace registerfile
    3941}; // end namespace generic
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Monolithic/src/RegisterFile_Monolithic_vhdl_signal.cpp

    r11 r15  
    77 */
    88
    9 #include "Behavioural/Generic/RegisterFile/include/RegisterFile.h"
     9#include "Behavioural/Generic/RegisterFile/RegisterFile_Monolithic/include/RegisterFile_Monolithic.h"
    1010
    1111namespace morpheo                    {
     
    1313namespace generic                    {
    1414namespace registerfile               {
     15namespace registerfile_monolithic    {
    1516
    16   void RegisterFile::vhdl_signal (Vhdl & vhdl)
     17  void RegisterFile_Monolithic::vhdl_signal (Vhdl & vhdl)
    1718  {
    1819    vhdl.set_signal ("reg_DATA", "Tregfile");
    1920  };
    2021
     22}; // end namespace registerfile_monolithic
    2123}; // end namespace registerfile
    2224}; // end namespace generic
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Monolithic/src/RegisterFile_Monolithic_vhdl_testbench_port.cpp

    r11 r15  
    77 */
    88
    9 #include "Behavioural/Generic/RegisterFile/include/RegisterFile.h"
     9#include "Behavioural/Generic/RegisterFile/RegisterFile_Monolithic/include/RegisterFile_Monolithic.h"
    1010
    1111namespace morpheo                    {
     
    1313namespace generic                    {
    1414namespace registerfile               {
     15namespace registerfile_monolithic    {
    1516
    16   void RegisterFile::vhdl_testbench_port (Vhdl_Testbench & vhdl_testbench)
     17  void RegisterFile_Monolithic::vhdl_testbench_port (Vhdl_Testbench & vhdl_testbench)
    1718  {
    1819    vhdl_testbench.set_port (" in_NRESET",IN ,1);
     
    3536  };
    3637
     38}; // end namespace registerfile_monolithic
    3739}; // end namespace registerfile
    3840}; // end namespace generic
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Monolithic/src/RegisterFile_Monolithic_vhdl_testbench_transition.cpp

    r11 r15  
    77 */
    88
    9 #include "Behavioural/Generic/RegisterFile/include/RegisterFile.h"
     9#include "Behavioural/Generic/RegisterFile/RegisterFile_Monolithic/include/RegisterFile_Monolithic.h"
    1010
    1111namespace morpheo                    {
     
    1313namespace generic                    {
    1414namespace registerfile               {
     15namespace registerfile_monolithic    {
    1516
    16   void RegisterFile::vhdl_testbench_transition (Vhdl_Testbench & vhdl_testbench)
     17  void RegisterFile_Monolithic::vhdl_testbench_transition (Vhdl_Testbench & vhdl_testbench)
    1718  {
    1819#ifndef SYSTEMCASS_SPECIFIC
     
    4142  };
    4243
     44}; // end namespace registerfile_monolithic
    4345}; // end namespace registerfile
    4446}; // end namespace generic
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Monolithic/src/RegisterFile_Monolithic_vhdl_type.cpp

    r11 r15  
    77 */
    88
    9 #include "Behavioural/Generic/RegisterFile/include/RegisterFile.h"
     9#include "Behavioural/Generic/RegisterFile/RegisterFile_Monolithic/include/RegisterFile_Monolithic.h"
    1010
    1111namespace morpheo                    {
     
    1313namespace generic                    {
    1414namespace registerfile               {
     15namespace registerfile_monolithic    {
    1516
    16   void RegisterFile::vhdl_type (Vhdl & vhdl)
     17  void RegisterFile_Monolithic::vhdl_type (Vhdl & vhdl)
    1718  {
    1819    vhdl.set_type ("Tregfile", "array (" + toString(_param._nb_word-1) + " downto 0) of " + std_logic(_param._size_word));
    1920  };
    2021
     22}; // end namespace registerfile_monolithic
    2123}; // end namespace registerfile
    2224}; // end namespace generic
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Monolithic/src/Statistics.cpp

    r2 r15  
    77 */
    88
    9 #include "Behavioural/Generic/RegisterFile/include/Statistics.h"
     9#include "Behavioural/Generic/RegisterFile/RegisterFile_Monolithic/include/Statistics.h"
    1010
    1111namespace morpheo                    {
     
    1313namespace generic                    {
    1414namespace registerfile               {
     15namespace registerfile_monolithic    {
    1516
    1617  Statistics::Statistics (string                                      name                       ,
     
    4344  };
    4445
     46}; // end namespace registerfile_monolithic
    4547}; // end namespace registerfile
    4648}; // end namespace generic
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Monolithic/src/Statistics_add.cpp

    r2 r15  
    77 */
    88
    9 #include "Behavioural/Generic/RegisterFile/include/Statistics.h"
     9#include "Behavioural/Generic/RegisterFile/RegisterFile_Monolithic/include/Statistics.h"
    1010
    1111#include <sstream>
     
    1616namespace generic                    {
    1717namespace registerfile               {
     18namespace registerfile_monolithic    {
    1819
    1920  void Statistics::add (uint32_t nb_read,
     
    2425  };
    2526
     27}; // end namespace registerfile_monolithic
    2628}; // end namespace registerfile
    2729}; // end namespace generic
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Monolithic/src/Statistics_print.cpp

    r2 r15  
    77 */
    88
    9 #include "Behavioural/Generic/RegisterFile/include/Statistics.h"
     9#include "Behavioural/Generic/RegisterFile/RegisterFile_Monolithic/include/Statistics.h"
    1010
    1111#include <sstream>
     
    1616namespace generic                    {
    1717namespace registerfile               {
     18namespace registerfile_monolithic    {
    1819
    1920  string Statistics::print (uint32_t depth)
     
    2223    ostringstream msg;
    2324
    24     msg << tab << "<registerfile name=\"" << _name << "\" >" << endl
     25    msg << tab << "<registerfile_monolithic name=\"" << _name << "\" >" << endl
    2526        << print_body(depth+1)
    26         << tab << "</registerfile>" << endl;
     27        << tab << "</RegisterFile_Monolithic>" << endl;
    2728   
    2829    return msg.str();
     
    3031
    3132  ostream& operator<< (ostream& output_stream ,
    32                        morpheo::behavioural::generic::registerfile::Statistics & x)
     33                       morpheo::behavioural::generic::registerfile::registerfile_monolithic::Statistics & x)
    3334  {
    3435    output_stream << x.print(0);
     
    3738  };
    3839
     40}; // end namespace registerfile_monolithic
    3941}; // end namespace registerfile
    4042}; // end namespace generic
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Monolithic/src/Statistics_print_body.cpp

    r2 r15  
    77 */
    88
    9 #include "Behavioural/Generic/RegisterFile/include/Statistics.h"
     9#include "Behavioural/Generic/RegisterFile/RegisterFile_Monolithic/include/Statistics.h"
    1010
    1111#include <sstream>
     
    1616namespace generic                    {
    1717namespace registerfile               {
     18namespace registerfile_monolithic    {
    1819
    1920  string Statistics::print_body (uint32_t depth)
     
    2728    return msg.str();
    2829  };
     30
     31}; // end namespace registerfile_monolithic
    2932}; // end namespace registerfile
    3033}; // end namespace generic
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/Makefile

    r10 r15  
    88
    99#-----[ Directory ]----------------------------------------
    10 DIR_MORPHEO                     = ../../..
     10DIR_MORPHEO                     = ../../../..
    1111
    1212#-----[ Library ]------------------------------------------
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/Makefile.deps

    r10 r15  
    1818                                        $(Behavioural_LIBRARY) 
    1919
    20 RegisterFile_Multi_Banked_DIR_LIBRARY           =       -L$(DIR_MORPHEO)/Behavioural/Generic/RegisterFile_Multi_Banked/lib      \
     20RegisterFile_Multi_Banked_DIR_LIBRARY           =       -L$(DIR_MORPHEO)/Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/lib \
    2121                                        $(Behavioural_DIR_LIBRARY)
    2222
     
    2525RegisterFile_Multi_Banked_library               :
    2626                                @$(MAKE) Behavioural_library
    27                                 @$(MAKE) --directory=$(DIR_MORPHEO)/Behavioural/Generic/RegisterFile_Multi_Banked --makefile=Makefile
     27                                @$(MAKE) --directory=$(DIR_MORPHEO)/Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked --makefile=Makefile
    2828       
    2929RegisterFile_Multi_Banked_library_clean :
    3030                                @$(MAKE) Behavioural_library_clean
    31                                 @$(MAKE) --directory=$(DIR_MORPHEO)/Behavioural/Generic/RegisterFile_Multi_Banked --makefile=Makefile clean
     31                                @$(MAKE) --directory=$(DIR_MORPHEO)/Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked --makefile=Makefile clean
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/RegisterFile_Multi_Banked_Glue/Makefile

    r10 r15  
    88
    99#-----[ Directory ]----------------------------------------
    10 DIR_MORPHEO                     = ../../../..
     10DIR_MORPHEO                     = ../../../../..
    1111
    1212#-----[ Library ]------------------------------------------
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/RegisterFile_Multi_Banked_Glue/Makefile.deps

    r10 r15  
    1818                                        $(Behavioural_LIBRARY) 
    1919
    20 RegisterFile_Multi_Banked_Glue_DIR_LIBRARY              =       -L$(DIR_MORPHEO)/Behavioural/Generic/RegisterFile_Multi_Banked/RegisterFile_Multi_Banked_Glue/lib       \
     20RegisterFile_Multi_Banked_Glue_DIR_LIBRARY              =       -L$(DIR_MORPHEO)/Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/RegisterFile_Multi_Banked_Glue/lib  \
    2121                                        $(Behavioural_DIR_LIBRARY)
    2222
     
    2525RegisterFile_Multi_Banked_Glue_library          :
    2626                                @$(MAKE) Behavioural_library
    27                                 @$(MAKE) --directory=$(DIR_MORPHEO)/Behavioural/Generic/RegisterFile_Multi_Banked/RegisterFile_Multi_Banked_Glue --makefile=Makefile
     27                                @$(MAKE) --directory=$(DIR_MORPHEO)/Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/RegisterFile_Multi_Banked_Glue --makefile=Makefile
    2828       
    2929RegisterFile_Multi_Banked_Glue_library_clean    :
    3030                                @$(MAKE) Behavioural_library_clean
    31                                 @$(MAKE) --directory=$(DIR_MORPHEO)/Behavioural/Generic/RegisterFile_Multi_Banked/RegisterFile_Multi_Banked_Glue --makefile=Makefile clean
     31                                @$(MAKE) --directory=$(DIR_MORPHEO)/Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/RegisterFile_Multi_Banked_Glue --makefile=Makefile clean
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/RegisterFile_Multi_Banked_Glue/SelfTest/Makefile

    r10 r15  
    88
    99#-----[ Directory ]----------------------------------------
    10 DIR_MORPHEO                     = ../../../../..
     10DIR_MORPHEO                     = ../../../../../..
    1111
    1212LIBRARY                         = $(RegisterFile_Multi_Banked_Glue_LIBRARY)
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/RegisterFile_Multi_Banked_Glue/SelfTest/configuration.cfg

    r10 r15  
    11RegisterFile_Multi_Banked_Glue
    2 2       8       *2      # nb_port_read
    3 2       4       *2      # nb_port_write
    4 6       8       +1      # size_address
     24       4       *2      # nb_port_read
     34       4       *2      # nb_port_write
     48       8       +1      # size_address
    5532      32      *2      # size_word
    662       2       *2      # nb_bank
     72       2       *2      # nb_port_read_by_bank
     82       2       *2      # nb_port_write_by_bank
     90       1       +1      # crossbar
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/RegisterFile_Multi_Banked_Glue/SelfTest/include/test.h

    r10 r15  
    1414#include <iostream>
    1515
    16 #include "Behavioural/Generic/RegisterFile_Multi_Banked/RegisterFile_Multi_Banked_Glue/include/RegisterFile_Multi_Banked_Glue.h"
     16#include "Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/RegisterFile_Multi_Banked_Glue/include/RegisterFile_Multi_Banked_Glue.h"
    1717
    1818using namespace std;
     
    2020using namespace morpheo::behavioural;
    2121using namespace morpheo::behavioural::generic;
    22 using namespace morpheo::behavioural::generic::registerfile_multi_banked;
     22using namespace morpheo::behavioural::generic::registerfile;
     23using namespace morpheo::behavioural::generic::registerfile::registerfile_multi_banked;
    2324
    24 using namespace morpheo::behavioural::generic::registerfile_multi_banked::registerfile_multi_banked_glue;
     25using namespace morpheo::behavioural::generic::registerfile::registerfile_multi_banked::registerfile_multi_banked_glue;
    2526
    2627void test    (string name,
    27               morpheo::behavioural::generic::registerfile_multi_banked::registerfile_multi_banked_glue::Parameters param);
     28              morpheo::behavioural::generic::registerfile::registerfile_multi_banked::registerfile_multi_banked_glue::Parameters param);
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/RegisterFile_Multi_Banked_Glue/SelfTest/src/main.cpp

    r10 r15  
    66 */
    77
    8 #include "Behavioural/Generic/RegisterFile_Multi_Banked/RegisterFile_Multi_Banked_Glue/SelfTest/include/test.h"
     8#include "Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/RegisterFile_Multi_Banked_Glue/SelfTest/include/test.h"
    99
    1010#define NB_PARAMS 5
     
    1414  cerr << "<Usage> " << argv[0] << " name_instance list_params" << endl
    1515       << "list_params is :" << endl
    16        << " - nb_port_read  (unsigned int)" << endl
    17        << " - nb_port_write (unsigned int)" << endl
    18        << " - size_address  (unsigned int)" << endl
    19        << " - size_word     (unsigned int)" << endl
    20        << " - nb_bank       (unsigned int)" << endl
     16       << " - nb_port_read          (uint32_t   )" << endl
     17       << " - nb_port_write         (uint32_t   )" << endl
     18       << " - size_address          (uint32_t   )" << endl
     19       << " - size_word             (uint32_t   )" << endl
     20       << " - nb_bank               (uint32_t   )" << endl
     21       << " - nb_port_read_by_bank  (uint32_t   )" << endl
     22       << " - nb_port_write_by_bank (uint32_t   )" << endl
     23       << " - crossbar              (Tcrossbar_t)" << endl
    2124       << "" << endl;
    2225
     
    3740    usage (argc, argv);
    3841
    39   const string   name          = argv[1];
    40   const uint32_t nb_port_read  = atoi(argv[2]);
    41   const uint32_t nb_port_write = atoi(argv[3]);
    42   const uint32_t size_address  = atoi(argv[4]);
    43   const uint32_t size_word     = atoi(argv[5]);
    44   const uint32_t nb_bank       = atoi(argv[6]);
     42  const string      name                  =      argv[1];
     43  const uint32_t    nb_port_read          = atoi(argv[2]);
     44  const uint32_t    nb_port_write         = atoi(argv[3]);
     45  const uint32_t    size_address          = atoi(argv[4]);
     46  const uint32_t    size_word             = atoi(argv[5]);
     47  const uint32_t    nb_bank               = atoi(argv[6]);
     48  const uint32_t    nb_port_read_by_bank  = atoi(argv[7]);
     49  const uint32_t    nb_port_write_by_bank = atoi(argv[8]);
     50  const Tcrossbar_t crossbar              = fromString<Tcrossbar_t>(argv[9]);
    4551
    4652  try
    4753    {
    48       morpheo::behavioural::generic::registerfile_multi_banked::registerfile_multi_banked_glue::Parameters param (nb_port_read ,
    49                                                                                                                   nb_port_write,
    50                                                                                                                   size_address ,
    51                                                                                                                   size_word    ,
    52                                                                                                                   nb_bank      );
    53      
     54      morpheo::behavioural::generic::registerfile::registerfile_multi_banked::registerfile_multi_banked_glue::Parameters param (nb_port_read         ,
     55                                                                                                                                nb_port_write        ,
     56                                                                                                                                size_address         ,
     57                                                                                                                                size_word            ,
     58                                                                                                                                nb_bank              ,
     59                                                                                                                                nb_port_read_by_bank ,
     60                                                                                                                                nb_port_write_by_bank,
     61                                                                                                                                crossbar             );
     62
    5463      cout << param.print(1);
    5564     
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/RegisterFile_Multi_Banked_Glue/SelfTest/src/test.cpp

    r10 r15  
    77 */
    88
    9 #define NB_ITERATION 1
    10 
    11 #include "Behavioural/Generic/RegisterFile_Multi_Banked/RegisterFile_Multi_Banked_Glue/SelfTest/include/test.h"
     9#define NB_ITERATION 16
     10
     11#define LABEL(str) do {cout << "{"+toString(static_cast<uint32_t>(sc_simulation_time()))+"} " << str << endl; _RegisterFile_Multi_Banked_Glue->vhdl_testbench_label(str);} while (0)
     12
     13#include "Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/RegisterFile_Multi_Banked_Glue/SelfTest/include/test.h"
    1214#include "Include/Test.h"
     15#include "Include/BitManipulation.h"
    1316
    1417void test (string name,
    15            morpheo::behavioural::generic::registerfile_multi_banked::registerfile_multi_banked_glue::Parameters _param)
     18           morpheo::behavioural::generic::registerfile::registerfile_multi_banked::registerfile_multi_banked_glue::Parameters _param)
    1619{
    1720  cout << "<" << name << "> : Simulation SystemC" << endl;
     
    1922  RegisterFile_Multi_Banked_Glue * _RegisterFile_Multi_Banked_Glue = new RegisterFile_Multi_Banked_Glue (name.c_str(),
    2023#ifdef STATISTICS
    21                                             morpheo::behavioural::Parameters_Statistics(5,50),
     24                                                                                                        morpheo::behavioural::Parameters_Statistics(5,50),
    2225#endif
    23                                             _param);
     26                                                                                                        _param);
    2427 
    2528#ifdef SYSTEMC
     
    3336  sc_signal<Taddress_t>                 ** READ_IN_ADDRESS   ;
    3437  sc_signal<Tdata_t   >                 ** READ_IN_DATA      ;
    35   sc_signal<Tcontrol_t>                 ** READ_SELECT_VAL   ;
    36   sc_signal<Tcontrol_t>                 ** READ_SELECT_ACK   ;
     38  sc_signal<Tcontrol_t>               **** READ_SELECT_VAL   ;
     39  sc_signal<Tcontrol_t>               **** READ_SELECT_ACK   ;
    3740  sc_signal<Tcontrol_t>                *** READ_OUT_VAL      ;
    3841  sc_signal<Tcontrol_t>                *** READ_OUT_ACK      ;
     
    4144  sc_signal<Tcontrol_t>                 ** WRITE_IN_VAL      ;
    4245  sc_signal<Tcontrol_t>                 ** WRITE_IN_ACK      ;
    43   sc_signal<Tcontrol_t>                 ** WRITE_SELECT_VAL  ;
    44   sc_signal<Tcontrol_t>                 ** WRITE_SELECT_ACK  ;
    4546  sc_signal<Taddress_t>                 ** WRITE_IN_ADDRESS  ;
    4647  sc_signal<Tdata_t   >                 ** WRITE_IN_DATA     ;
     48  sc_signal<Tcontrol_t>               **** WRITE_SELECT_VAL  ;
     49  sc_signal<Tcontrol_t>               **** WRITE_SELECT_ACK  ;
    4750  sc_signal<Tcontrol_t>                *** WRITE_OUT_VAL     ;
    4851  sc_signal<Tcontrol_t>                *** WRITE_OUT_ACK     ;
     
    5861  READ_IN_ADDRESS   = new sc_signal<Taddress_t>           * [_param._nb_port_read];
    5962  READ_IN_DATA      = new sc_signal<Tdata_t   >           * [_param._nb_port_read];
    60   READ_SELECT_VAL   = new sc_signal<Tcontrol_t>           * [_param._nb_port_read];
    61   READ_SELECT_ACK   = new sc_signal<Tcontrol_t>           * [_param._nb_port_read];
    6263
    6364  for (uint32_t i=0; i<_param._nb_port_read; i++)
     
    7172      rename = "READ_IN_DATA_"+toString(i)+"     ";
    7273      READ_IN_DATA      [i] = new sc_signal<Tdata_t   > (rename.c_str());
    73       rename = "READ_SELECT_VAL_"+toString(i)+"  ";
    74       READ_SELECT_VAL       [i] = new sc_signal<Tcontrol_t> (rename.c_str());
    75       rename = "READ_SELECT_ACK_"+toString(i)+"  ";
    76       READ_SELECT_ACK       [i] = new sc_signal<Tcontrol_t> (rename.c_str());
    77     }
     74    }
     75
     76   READ_SELECT_VAL  = new sc_signal<Tcontrol_t> *** [_param._nb_bank];
     77   READ_SELECT_ACK  = new sc_signal<Tcontrol_t> *** [_param._nb_bank];
     78
     79    for (uint32_t i=0; i<_param._nb_bank; i++)
     80      {
     81        READ_SELECT_VAL [i] = new sc_signal<Tcontrol_t>  ** [_param._nb_port_read_by_bank];
     82        READ_SELECT_ACK [i] = new sc_signal<Tcontrol_t>  ** [_param._nb_port_read_by_bank];
     83
     84         for (uint32_t j=0; j<_param._nb_port_read_by_bank; j++)
     85           {
     86             READ_SELECT_VAL [i][j] = new sc_signal<Tcontrol_t>   * [_param._nb_port_select_by_bank_read_port [j]];
     87             READ_SELECT_ACK [i][j] = new sc_signal<Tcontrol_t>   * [_param._nb_port_select_by_bank_read_port [j]];
     88             
     89             for (uint32_t k=0; k<_param._nb_port_select_by_bank_read_port [j]; k++)
     90               {
     91                 rename="READ_SELECT_VAL_"+toString(i)+"_"+toString(j)+"_"+toString(k)+" ";
     92                 READ_SELECT_VAL [i][j][k] = new sc_signal<Tcontrol_t> (rename.c_str());
     93                 
     94                 rename="READ_SELECT_ACK_"+toString(i)+"_"+toString(j)+"_"+toString(k)+" ";
     95                 READ_SELECT_ACK [i][j][k] = new sc_signal<Tcontrol_t> (rename.c_str());
     96               }
     97           }
     98      }
    7899                                                     
    79100   READ_OUT_VAL      = new sc_signal<Tcontrol_t>          ** [_param._nb_bank];
     
    106127   WRITE_IN_ADDRESS  = new sc_signal<Taddress_t>           * [_param._nb_port_write];
    107128   WRITE_IN_DATA     = new sc_signal<Tdata_t   >           * [_param._nb_port_write];
    108    WRITE_SELECT_VAL  = new sc_signal<Tcontrol_t>           * [_param._nb_port_write];
    109    WRITE_SELECT_ACK  = new sc_signal<Tcontrol_t>           * [_param._nb_port_write];
    110 
    111129   for (uint32_t i=0; i<_param._nb_port_write; i++)
    112130     {
     
    119137       rename = "WRITE_IN_DATA_"+toString(i)+"    ";
    120138       WRITE_IN_DATA     [i] = new sc_signal<Tdata_t   > (rename.c_str());
    121 
    122        rename = "WRITE_SELECT_VAL_"+toString(i)+" ";
    123        WRITE_SELECT_VAL  [i] = new sc_signal<Tcontrol_t> (rename.c_str());
    124        rename = "WRITE_SELECT_ACK_"+toString(i)+" ";
    125        WRITE_SELECT_ACK  [i] = new sc_signal<Tcontrol_t> (rename.c_str());
    126      }
     139     }
     140
     141   WRITE_SELECT_VAL  = new sc_signal<Tcontrol_t> *** [_param._nb_bank];
     142   WRITE_SELECT_ACK  = new sc_signal<Tcontrol_t> *** [_param._nb_bank];
     143
     144    for (uint32_t i=0; i<_param._nb_bank; i++)
     145      {
     146        WRITE_SELECT_VAL [i] = new sc_signal<Tcontrol_t>  ** [_param._nb_port_write_by_bank];
     147        WRITE_SELECT_ACK [i] = new sc_signal<Tcontrol_t>  ** [_param._nb_port_write_by_bank];
     148
     149         for (uint32_t j=0; j<_param._nb_port_write_by_bank; j++)
     150           {
     151             WRITE_SELECT_VAL [i][j] = new sc_signal<Tcontrol_t>   * [_param._nb_port_select_by_bank_write_port [j]];
     152             WRITE_SELECT_ACK [i][j] = new sc_signal<Tcontrol_t>   * [_param._nb_port_select_by_bank_write_port [j]];
     153             
     154             for (uint32_t k=0; k<_param._nb_port_select_by_bank_write_port [j]; k++)
     155               {
     156                 rename="WRITE_SELECT_VAL_"+toString(i)+"_"+toString(j)+"_"+toString(k)+" ";
     157                 WRITE_SELECT_VAL [i][j][k] = new sc_signal<Tcontrol_t> (rename.c_str());
     158                 
     159                 rename="WRITE_SELECT_ACK_"+toString(i)+"_"+toString(j)+"_"+toString(k)+" ";
     160                 WRITE_SELECT_ACK [i][j][k] = new sc_signal<Tcontrol_t> (rename.c_str());
     161               }
     162           }
     163      }
    127164     
    128165   WRITE_OUT_VAL     = new sc_signal<Tcontrol_t>          ** [_param._nb_bank];
     
    165202       (*(_RegisterFile_Multi_Banked_Glue-> in_READ_IN_ADDRESS   [i]))       (*(READ_IN_ADDRESS   [i]));
    166203       (*(_RegisterFile_Multi_Banked_Glue->out_READ_IN_DATA      [i]))       (*(READ_IN_DATA      [i]));
    167        (*(_RegisterFile_Multi_Banked_Glue-> in_READ_SELECT_VAL   [i]))       (*(READ_SELECT_VAL   [i]));
    168        (*(_RegisterFile_Multi_Banked_Glue->out_READ_SELECT_ACK   [i]))       (*(READ_SELECT_ACK   [i]));
    169      }
     204     }
     205
     206   for (uint32_t i=0; i<_param._nb_bank; i++)
     207     for (uint32_t j=0; j<_param._nb_port_read_by_bank; j++)
     208       for (uint32_t k=0; k<_param._nb_port_select_by_bank_read_port[j]; k++)
     209         {
     210           (*(_RegisterFile_Multi_Banked_Glue->out_READ_SELECT_VAL [i][j][k])) (*(READ_SELECT_VAL [i][j][k]));
     211           (*(_RegisterFile_Multi_Banked_Glue-> in_READ_SELECT_ACK [i][j][k])) (*(READ_SELECT_ACK [i][j][k]));
     212         }
     213
    170214   for (uint32_t i=0; i<_param._nb_bank; i++)
    171215       for (uint32_t j=0; j<_param._nb_port_read_by_bank; j++)
     
    183227       (*(_RegisterFile_Multi_Banked_Glue-> in_WRITE_IN_ADDRESS  [i]))       (*(WRITE_IN_ADDRESS  [i]));
    184228       (*(_RegisterFile_Multi_Banked_Glue-> in_WRITE_IN_DATA     [i]))       (*(WRITE_IN_DATA     [i]));
    185        (*(_RegisterFile_Multi_Banked_Glue-> in_WRITE_SELECT_VAL  [i]))       (*(WRITE_SELECT_VAL  [i]));
    186        (*(_RegisterFile_Multi_Banked_Glue->out_WRITE_SELECT_ACK  [i]))       (*(WRITE_SELECT_ACK  [i]));
    187      }
     229     }
     230
     231   for (uint32_t i=0; i<_param._nb_bank; i++)
     232     for (uint32_t j=0; j<_param._nb_port_write_by_bank; j++)
     233       for (uint32_t k=0; k<_param._nb_port_select_by_bank_write_port[j]; k++)
     234         {
     235           (*(_RegisterFile_Multi_Banked_Glue->out_WRITE_SELECT_VAL [i][j][k])) (*(WRITE_SELECT_VAL [i][j][k]));
     236           (*(_RegisterFile_Multi_Banked_Glue-> in_WRITE_SELECT_ACK [i][j][k])) (*(WRITE_SELECT_ACK [i][j][k]));
     237         }
    188238
    189239   for (uint32_t i=0; i<_param._nb_bank; i++)
     
    197247
    198248
     249  cout << "<" << name << "> Start Simulation ............" << endl;
     250 
    199251  /********************************************************
    200252   * Simulation - Begin
    201253   ********************************************************/
    202254
    203   cout << "<" << name << "> Start Simulation ............" << endl;
    204255  // Initialisation
    205256
     
    210261
    211262  sc_start(0);
    212   _RegisterFile_Multi_Banked_Glue->vhdl_testbench_label("Initialisation");
    213   cout << "{"+toString(static_cast<uint32_t>(sc_simulation_time()))+"} Initialisation" << endl;
    214 
    215 
    216   _RegisterFile_Multi_Banked_Glue->vhdl_testbench_label("Loop of Test");
    217   cout << "{"+toString(static_cast<uint32_t>(sc_simulation_time()))+"} Loop of Test" << endl;
     263
     264  LABEL("Initialisation");
     265
     266  uint32_t   read_in_num_bank [_param._nb_port_read]; // Number of bank
     267//Tcontrol_t read_in_valid    [_param._nb_port_read];
     268  Tcontrol_t read_in_ack      [_param._nb_port_read]; // to test
     269  Tdata_t    read_in_data     [_param._nb_port_read]; // to test
     270  Tcontrol_t read_out_val     [_param._nb_bank][_param._nb_port_read_by_bank]; 
     271  Tcontrol_t read_out_ack     [_param._nb_bank][_param._nb_port_read_by_bank]; 
     272  Taddress_t read_out_address [_param._nb_bank][_param._nb_port_read_by_bank]; 
     273  Tcontrol_t read_is_busy     [_param._nb_port_read];
     274  Tcontrol_t read_select_val  [_param._nb_bank][_param._nb_port_read        ];
     275  Tcontrol_t read_select_ack  [_param._nb_bank][_param._nb_port_read        ];
     276
     277  LABEL("Loop of Test");
    218278
    219279  for (uint32_t iteration=0; iteration<NB_ITERATION; iteration ++)
    220280    {
    221       _RegisterFile_Multi_Banked_Glue->vhdl_testbench_label("Iteration "+toString(iteration));
    222 
     281      LABEL("Iteration "+toString(iteration));
     282     
     283      LABEL("Test read_in");
     284     
     285      // Write in interface "read_in"
     286      for (uint32_t i=0; i<_param._nb_port_read; i++)
     287        {
     288          read_in_num_bank  [i] =  rand() % _param._nb_bank;
     289          Tcontrol_t read_in_valid = (rand() % 2) != 0;
     290
     291          Taddress_t address    = (read_in_num_bank[i] << _param._shift_address) | (gen_mask<Taddress_t>(_param._size_address-_param._shift_address) & i);
     292
     293          read_is_busy      [i] = (read_in_valid == 0);
     294          read_in_ack       [i] = 0;
     295          read_in_data      [i] = 0;
     296          READ_IN_VAL       [i]->write(read_in_valid);
     297          READ_IN_ADDRESS   [i]->write(address);
     298
     299          for (uint32_t j=0; j<_param._nb_bank; j++)
     300            read_select_ack [j][i] = 0;
     301        }
     302
     303      for (uint32_t i=0; i<_param._nb_bank; i++)
     304        for (uint32_t j=0; j<_param._nb_port_read_by_bank; j++)
     305          {
     306            read_out_ack      [i][j] = (rand() % 2) != 0;
     307            READ_OUT_ACK      [i][j]->write(read_out_ack      [i][j]);
     308            READ_OUT_DATA     [i][j]->write((j<<1)|1); // (j<<1)|1 afin de n'avoir jamais 0
     309          }
     310     
     311      // compute the good read_select
     312      for (uint32_t i=0; i<_param._nb_bank; i++)
     313        for (uint32_t j=0; j<_param._nb_port_read_by_bank; j++)
     314          {
     315            bool find = false; // have find a port_in to link with this port_out
     316            for (uint32_t k=0; k<_param._nb_port_select_by_bank_read_port[j]; k++)
     317              {
     318
     319                uint32_t num_port; // number of port
     320               
     321                // compute the good number of port
     322                if (_param._crossbar == FULL_CROSSBAR)
     323                  num_port = k;
     324                else
     325                  num_port = _param._link_port_read [i];
     326
     327                read_select_val [i][num_port] = read_out_ack [i][j] && not read_is_busy [num_port];
     328               
     329                if ((read_out_ack [i][j] == 0) || find)
     330                  read_select_ack [i][num_port] = 0; // read_out is busy or already find
     331                else
     332                  {
     333                    // find a busy port?
     334                    find = not read_is_busy [num_port];
     335                    read_is_busy       [num_port]|= find;
     336                    read_select_ack [i][num_port] = find;
     337
     338                    if (find)
     339                      {
     340                        read_in_ack      [num_port] = 1;
     341                        read_in_data     [num_port] = ((j<<1)|1);
     342                        read_out_val     [i][j]     = 1;
     343                        read_out_address [i][j]     = (read_in_num_bank[i] << _param._shift_address) | (gen_mask<Taddress_t>(_param._size_address-_param._shift_address) & i);
     344                      }
     345                  }
     346               
     347                READ_SELECT_ACK [i][j][k]->write(read_select_ack [i][num_port]);
     348              }
     349          }
     350
     351      // next cycle
    223352      sc_start(1);
     353
     354//       // lot of test
     355//   public    : SC_OUT(Tcontrol_t)           ** out_READ_IN_ACK       ;
     356//   public    : SC_OUT(Tdata_t   )           ** out_READ_IN_DATA      ;
     357
     358//   public    : SC_OUT(Tcontrol_t)         **** out_READ_SELECT_VAL   ;
     359
     360//   public    : SC_OUT(Tcontrol_t)          *** out_READ_OUT_VAL      ;
     361//   public    : SC_OUT(Taddress_t)          *** out_READ_OUT_ADDRESS  ;
     362
    224363    }
    225364
     
    238377      delete READ_IN_ADDRESS   [i];
    239378      delete READ_IN_DATA      [i];
    240       delete READ_SELECT_VAL   [i];
    241       delete READ_SELECT_ACK   [i];
    242379    }
    243380                                                     
     
    246383  delete READ_IN_ADDRESS;
    247384  delete READ_IN_DATA   ;
    248   delete READ_SELECT_VAL;
    249   delete READ_SELECT_ACK;
     385
     386   for (uint32_t i=0; i<_param._nb_bank; i++)
     387     {
     388       for (uint32_t j=0; j<_param._nb_port_read_by_bank; j++)
     389         {
     390           for (uint32_t k=0; k<_param._nb_port_select_by_bank_read_port[j]; k++)
     391             {
     392               delete READ_SELECT_VAL [i][j][k];
     393               delete READ_SELECT_ACK [i][j][k];
     394             }
     395           delete READ_SELECT_VAL [i][j];
     396           delete READ_SELECT_ACK [i][j];
     397         }
     398       delete READ_SELECT_VAL [i];
     399       delete READ_SELECT_ACK [i];
     400     }
     401   delete READ_SELECT_VAL;
     402   delete READ_SELECT_ACK;
    250403
    251404   for (uint32_t i=0; i<_param._nb_bank; i++)
     
    276429      delete WRITE_IN_ADDRESS  [i];
    277430      delete WRITE_IN_DATA     [i];
    278       delete WRITE_SELECT_VAL  [i];
    279       delete WRITE_SELECT_ACK  [i];
    280431    }
    281432
     
    284435  delete WRITE_IN_ADDRESS;
    285436  delete WRITE_IN_DATA   ;
     437
     438  for (uint32_t i=0; i<_param._nb_bank; i++)
     439    {
     440      for (uint32_t j=0; j<_param._nb_port_write_by_bank; j++)
     441        {
     442          for (uint32_t k=0; k<_param._nb_port_select_by_bank_write_port[j]; k++)
     443            {
     444              delete WRITE_SELECT_VAL [i][j][k];
     445              delete WRITE_SELECT_ACK [i][j][k];
     446            }
     447          delete WRITE_SELECT_VAL [i][j];
     448          delete WRITE_SELECT_ACK [i][j];
     449        }
     450      delete WRITE_SELECT_VAL [i];
     451      delete WRITE_SELECT_ACK [i];
     452    }
    286453  delete WRITE_SELECT_VAL;
    287454  delete WRITE_SELECT_ACK;
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/RegisterFile_Multi_Banked_Glue/include/Parameters.h

    r10 r15  
    1 #ifndef morpheo_behavioural_generic_registerfile_multi_banked_registerfile_multi_banked_glue_Parameters_h
    2 #define morpheo_behavioural_generic_registerfile_multi_banked_registerfile_multi_banked_glue_Parameters_h
     1#ifndef morpheo_behavioural_generic_registerfile_registerfile_multi_banked_registerfile_multi_banked_glue_Parameters_h
     2#define morpheo_behavioural_generic_registerfile_registerfile_multi_banked_registerfile_multi_banked_glue_Parameters_h
    33
    44/*
     
    1010
    1111#include "Include/Debug.h"
     12#include "Include/FromString.h"
    1213#include "Behavioural/include/Parameters.h"
    1314#include <math.h>
    1415
    1516namespace morpheo {
     17
     18  typedef enum {PARTIAL_CROSSBAR,
     19                FULL_CROSSBAR   } Tcrossbar_t;
     20
     21  template<> inline Tcrossbar_t fromString<Tcrossbar_t> (const std::string& x)
     22  {
     23    if ( (x.compare("0")                == 0) or
     24         (x.compare("PARTIAL_CROSSBAR") == 0))
     25      return PARTIAL_CROSSBAR;
     26    if ( (x.compare("1")                == 0) or
     27         (x.compare("FULL_CROSSBAR"   ) == 0))
     28      return FULL_CROSSBAR;
     29
     30    throw (ErrorMorpheo ("<fromString> : Unknow string : \""+x+"\""));
     31  }
     32 
     33  template<> inline std::string toString<Tcrossbar_t>   (const Tcrossbar_t& x)
     34  {
     35    ostringstream out;
     36
     37    if (x == PARTIAL_CROSSBAR)
     38      out << "PARTIAL_CROSSBAR";
     39    if (x == FULL_CROSSBAR)
     40      out << "FULL_CROSSBAR";
     41
     42    return out.str();
     43  }
     44
    1645namespace behavioural {
    1746namespace generic {
     47namespace registerfile{
    1848namespace registerfile_multi_banked {
    1949namespace registerfile_multi_banked_glue {
    20 
    21 
     50     
    2251  class Parameters : public morpheo::behavioural::Parameters
    2352  {
    2453    //-----[ fields ]------------------------------------------------------------
    25   public : const uint32_t _nb_port_read         ;
    26   public : const uint32_t _nb_port_write        ;
    27   public : const uint32_t _size_address         ;
    28   public : const uint32_t _size_word            ;
    29   public : const uint32_t _nb_bank              ;
     54  public : const uint32_t    _nb_port_read         ;
     55  public : const uint32_t    _nb_port_write        ;
     56  public : const uint32_t    _size_address         ;
     57  public : const uint32_t    _size_word            ;
     58  public : const uint32_t    _nb_bank              ;
     59  public : const uint32_t    _nb_port_read_by_bank ;
     60  public : const uint32_t    _nb_port_write_by_bank;
     61  public : const Tcrossbar_t _crossbar             ;
    3062
    31   public : const uint32_t _nb_port_read_by_bank ;
    32   public : const uint32_t _nb_port_write_by_bank;
     63  public : const uint32_t    _shift_address        ;
     64
     65  public :       uint32_t  * _link_port_read       ;
     66  public :       uint32_t  * _link_port_write      ;
     67
     68  public :       uint32_t  * _nb_port_select_by_bank_read_port ;
     69  public :       uint32_t  * _nb_port_select_by_bank_write_port;
    3370
    3471    //-----[ methods ]-----------------------------------------------------------
    35   public : Parameters  (uint32_t nb_port_read ,
    36                         uint32_t nb_port_write,
    37                         uint32_t size_address ,
    38                         uint32_t size_word    ,
    39                         uint32_t nb_bank      );
     72  public : Parameters  (uint32_t    nb_port_read         ,
     73                        uint32_t    nb_port_write        ,
     74                        uint32_t    size_address         ,
     75                        uint32_t    size_word            ,
     76                        uint32_t    nb_bank              ,
     77                        uint32_t    nb_port_read_by_bank ,
     78                        uint32_t    nb_port_write_by_bank,
     79                        Tcrossbar_t crossbar             );
     80
    4081  public : Parameters  (Parameters & param) ;
    4182  public : ~Parameters () ;
     
    4586  public :        string   print      (uint32_t depth);
    4687  public : friend ostream& operator<< (ostream& output_stream,
    47                                        morpheo::behavioural::generic::registerfile_multi_banked::registerfile_multi_banked_glue::Parameters & x);
     88                                       morpheo::behavioural::generic::registerfile::registerfile_multi_banked::registerfile_multi_banked_glue::Parameters & x);
    4889  };
    4990
    5091}; // end namespace registerfile_multi_banked_glue
    5192}; // end namespace registerfile_multi_banked
     93}; // end namespace registerfile
    5294}; // end namespace generic
    5395
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/RegisterFile_Multi_Banked_Glue/include/RegisterFile_Multi_Banked_Glue.h

    r10 r15  
    1 #ifndef morpheo_behavioural_generic_registerfile_multi_banked_registerfile_multi_banked_glue_RegisterFile_Multi_Banked_Glue_h
    2 #define morpheo_behavioural_generic_registerfile_multi_banked_registerfile_multi_banked_glue_RegisterFile_Multi_Banked_Glue_h
     1#ifndef morpheo_behavioural_generic_registerfile_registerfile_multi_banked_registerfile_multi_banked_glue_RegisterFile_Multi_Banked_Glue_h
     2#define morpheo_behavioural_generic_registerfile_registerfile_multi_banked_registerfile_multi_banked_glue_RegisterFile_Multi_Banked_Glue_h
    33
    44/*
     
    1717#include "Include/Debug.h"
    1818
    19 #include "Behavioural/Generic/RegisterFile_Multi_Banked/RegisterFile_Multi_Banked_Glue/include/Parameters.h"
    20 #include "Behavioural/Generic/RegisterFile_Multi_Banked/RegisterFile_Multi_Banked_Glue/include/Types.h"
    21 #ifdef STATISTICS
    22 #include "Behavioural/Generic/RegisterFile_Multi_Banked/RegisterFile_Multi_Banked_Glue/include/Statistics.h"
     19#include "Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/RegisterFile_Multi_Banked_Glue/include/Parameters.h"
     20#include "Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/RegisterFile_Multi_Banked_Glue/include/Types.h"
     21#ifdef STATISTICS                                 
     22#include "Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/RegisterFile_Multi_Banked_Glue/include/Statistics.h"
    2323#endif
    2424#ifdef VHDL
     
    3434namespace behavioural {
    3535namespace generic {
     36namespace registerfile{
    3637namespace registerfile_multi_banked {
    3738namespace registerfile_multi_banked_glue {
     
    7071  public    : SC_OUT(Tdata_t   )           ** out_READ_IN_DATA      ;
    7172
    72   public    : SC_IN (Tcontrol_t)           **  in_READ_SELECT_VAL   ;
    73   public    : SC_OUT(Tcontrol_t)           ** out_READ_SELECT_ACK   ;
     73  public    : SC_OUT(Tcontrol_t)         **** out_READ_SELECT_VAL   ;
     74  public    : SC_IN (Tcontrol_t)         ****  in_READ_SELECT_ACK   ;
    7475
    7576  public    : SC_OUT(Tcontrol_t)          *** out_READ_OUT_VAL      ;
     
    8384  public    : SC_IN (Tdata_t   )           **  in_WRITE_IN_DATA     ;
    8485
    85   public    : SC_IN (Tcontrol_t)           **  in_WRITE_SELECT_VAL  ;
    86   public    : SC_OUT(Tcontrol_t)           ** out_WRITE_SELECT_ACK  ;
     86  public    : SC_OUT(Tcontrol_t)         **** out_WRITE_SELECT_VAL  ;
     87  public    : SC_IN (Tcontrol_t)         ****  in_WRITE_SELECT_ACK  ;
    8788
    8889  public    : SC_OUT(Tcontrol_t)          *** out_WRITE_OUT_VAL     ;
     
    124125  public  : void     transition                (void);
    125126#endif
     127  public  : void     genMealy_read_in          (void);
     128  public  : void     genMealy_read_out         (void);
     129  public  : void     genMealy_read_select      (void);
    126130
    127131#endif                                         
     
    145149}; // end namespace registerfile_multi_banked_glue
    146150}; // end namespace registerfile_multi_banked
     151}; // end namespace registerfile
    147152}; // end namespace generic
    148153
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/RegisterFile_Multi_Banked_Glue/include/Statistics.h

    r10 r15  
    11#ifdef STATISTICS
    2 #ifndef morpheo_behavioural_generic_registerfile_multi_banked_registerfile_multi_banked_glue_Statistics_h
    3 #define morpheo_behavioural_generic_registerfile_multi_banked_registerfile_multi_banked_glue_Statistics_h
     2#ifndef morpheo_behavioural_generic_registerfile_registerfile_multi_banked_registerfile_multi_banked_glue_Statistics_h
     3#define morpheo_behavioural_generic_registerfile_registerfile_multi_banked_registerfile_multi_banked_glue_Statistics_h
    44
    55/*
     
    1414#include "Behavioural/include/Parameters_Statistics.h"
    1515//#include "Behavioural/Generic/Group/include/Statistics.h"
    16 #include "Behavioural/Generic/RegisterFile_Multi_Banked/RegisterFile_Multi_Banked_Glue/include/Parameters.h"
     16#include "Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/RegisterFile_Multi_Banked_Glue/include/Parameters.h"
    1717
    1818//using namespace morpheo::behavioural::generic::group;
     
    2121namespace behavioural {
    2222namespace generic {
     23namespace registerfile{
    2324namespace registerfile_multi_banked {
    2425namespace registerfile_multi_banked_glue {
     
    4950}; // end namespace registerfile_multi_banked_glue
    5051}; // end namespace registerfile_multi_banked
     52}; // end namespace registerfile
    5153}; // end namespace generic
    5254
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/RegisterFile_Multi_Banked_Glue/include/Types.h

    r10 r15  
    1 #ifndef morpheo_behavioural_generic_registerfile_multi_banked_registerfile_multi_banked_glue_Type_h
    2 #define morpheo_behavioural_generic_registerfile_multi_banked_registerfile_multi_banked_glue_Type_h
     1#ifndef morpheo_behavioural_generic_registerfile_registerfile_multi_banked_registerfile_multi_banked_glue_Type_h
     2#define morpheo_behavioural_generic_registerfile_registerfile_multi_banked_registerfile_multi_banked_glue_Type_h
    33
    44/*
     
    1414namespace behavioural {
    1515namespace generic {
     16namespace registerfile{
    1617namespace registerfile_multi_banked {
    1718namespace registerfile_multi_banked_glue {
     
    2223}; // end namespace registerfile_multi_banked_glue
    2324}; // end namespace registerfile_multi_banked
     25}; // end namespace registerfile
    2426}; // end namespace generic
    2527
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/RegisterFile_Multi_Banked_Glue/src/Parameters.cpp

    r10 r15  
    66 */
    77
    8 #include "Behavioural/Generic/RegisterFile_Multi_Banked/RegisterFile_Multi_Banked_Glue/include/Parameters.h"
     8#include "Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/RegisterFile_Multi_Banked_Glue/include/Parameters.h"
    99
    1010namespace morpheo {
    1111namespace behavioural {
    1212namespace generic {
     13namespace registerfile{
    1314namespace registerfile_multi_banked {
    1415namespace registerfile_multi_banked_glue {
    1516
    16   Parameters::Parameters (uint32_t nb_port_read ,
    17                           uint32_t nb_port_write,
    18                           uint32_t size_address ,
    19                           uint32_t size_word    ,
    20                           uint32_t nb_bank      ):
     17  Parameters::Parameters (uint32_t    nb_port_read         ,
     18                          uint32_t    nb_port_write        ,
     19                          uint32_t    size_address         ,
     20                          uint32_t    size_word            ,
     21                          uint32_t    nb_bank              ,
     22                          uint32_t    nb_port_read_by_bank ,
     23                          uint32_t    nb_port_write_by_bank,
     24                          Tcrossbar_t crossbar             ):
    2125    _nb_port_read          (nb_port_read         ),
    2226    _nb_port_write         (nb_port_write        ),
     
    2428    _size_word             (size_word            ),
    2529    _nb_bank               (nb_bank              ),
    26     _nb_port_read_by_bank  (nb_port_read /nb_bank),
    27     _nb_port_write_by_bank (nb_port_write/nb_bank)
     30    _nb_port_read_by_bank  (nb_port_read_by_bank ),
     31    _nb_port_write_by_bank (nb_port_write_by_bank),
     32    _crossbar              (crossbar             ),
     33    _shift_address         (static_cast<uint32_t>(ceil(log2(_nb_bank))))
    2834  {
    2935    log_printf(FUNC,RegisterFile_Multi_Banked_Glue,"Parameters","Begin");
     36
     37    if (_crossbar == PARTIAL_CROSSBAR)
     38      {
     39        // All port_src is connected with one port_dest on each bank
     40       
     41        _link_port_read  = new uint32_t [_nb_port_read ];
     42        for (uint32_t i=0; i<_nb_port_read ; i++)
     43          _link_port_read  [i] = i%_nb_port_read_by_bank;
     44
     45        _link_port_write = new uint32_t [_nb_port_write];
     46        for (uint32_t i=0; i<_nb_port_write; i++)
     47          _link_port_write [i] = i%_nb_port_write_by_bank;
     48      }
     49    // else : don't allocate
     50
     51    _nb_port_select_by_bank_read_port  = new uint32_t [_nb_port_read_by_bank ];
     52   
     53    if (_crossbar == FULL_CROSSBAR)
     54      // All port_src is connected with all port_dest on each bank
     55      for (uint32_t i=0; i<_nb_port_read_by_bank ;i++)
     56        _nb_port_select_by_bank_read_port [i] = _nb_port_read;
     57    else
     58      // All port_src is connected with one port_dest on each bank
     59      {
     60        for (uint32_t i=0; i<_nb_port_read_by_bank ;i++)
     61          _nb_port_select_by_bank_read_port [i] = 0;
     62
     63        for (uint32_t i=0; i<_nb_port_read         ;i++)
     64          _nb_port_select_by_bank_read_port [_link_port_read [i]] ++;
     65      }
     66   
     67    _nb_port_select_by_bank_write_port = new uint32_t [_nb_port_write_by_bank];
     68
     69    if (_crossbar == FULL_CROSSBAR)
     70      // All port_src is connected with all port_dest on each bank
     71      for (uint32_t i=0; i<_nb_port_write_by_bank ;i++)
     72        _nb_port_select_by_bank_write_port [i] = _nb_port_write;
     73    else
     74      // All port_src is connected with one port_dest on each bank
     75      {
     76        for (uint32_t i=0; i<_nb_port_write_by_bank ;i++)
     77          _nb_port_select_by_bank_write_port [i] = 0;
     78
     79        for (uint32_t i=0; i<_nb_port_write         ;i++)
     80          _nb_port_select_by_bank_write_port [_link_port_write[i]] ++;
     81      }
     82   
    3083    test();
    3184    log_printf(FUNC,RegisterFile_Multi_Banked_Glue,"Parameters","End");
     
    3386 
    3487  Parameters::Parameters (Parameters & param):
    35    _nb_port_read          (param._nb_port_read ),
    36    _nb_port_write         (param._nb_port_write),
    37    _size_address          (param._size_address ),
    38    _size_word             (param._size_word    ),
    39    _nb_bank               (param._nb_bank      ),
    40    _nb_port_read_by_bank  (param._nb_port_read ),
    41    _nb_port_write_by_bank (param._nb_port_write)
     88    _nb_port_read          (param._nb_port_read         ),
     89    _nb_port_write         (param._nb_port_write        ),
     90    _size_address          (param._size_address         ),
     91    _size_word             (param._size_word            ),
     92    _nb_bank               (param._nb_bank              ),
     93    _nb_port_read_by_bank  (param._nb_port_read_by_bank ),
     94    _nb_port_write_by_bank (param._nb_port_write_by_bank),
     95    _crossbar              (param._crossbar             ),
     96    _shift_address         (param._shift_address        )
    4297   {
    43     log_printf(FUNC,RegisterFile_Multi_Banked_Glue,"Parameters","Begin");
     98    log_printf(FUNC,RegisterFile_Multi_Banked_Glue,"Parameters (copy)","Begin");
     99
     100    _nb_port_select_by_bank_read_port  = new uint32_t [_nb_port_read_by_bank ];
     101    for (uint32_t i=0; i<_nb_port_read_by_bank; i++)
     102      _nb_port_select_by_bank_read_port [i] = param._nb_port_select_by_bank_read_port [i];
     103   
     104    _nb_port_select_by_bank_write_port = new uint32_t [_nb_port_write_by_bank ];
     105    for (uint32_t i=0; i<_nb_port_write_by_bank; i++)
     106      _nb_port_select_by_bank_write_port[i] = param._nb_port_select_by_bank_write_port [i];
     107   
    44108    test();
    45     log_printf(FUNC,RegisterFile_Multi_Banked_Glue,"Parameters","End");
     109    log_printf(FUNC,RegisterFile_Multi_Banked_Glue,"Parameters (copy)","End");
    46110  };
    47111
     
    54118}; // end namespace registerfile_multi_banked_glue
    55119}; // end namespace registerfile_multi_banked
     120}; // end namespace registerfile
    56121}; // end namespace generic
    57122}; // end namespace behavioural
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/RegisterFile_Multi_Banked_Glue/src/Parameters_msg_error.cpp

    r10 r15  
    66 */
    77
    8 #include "Behavioural/Generic/RegisterFile_Multi_Banked/RegisterFile_Multi_Banked_Glue/include/Parameters.h"
    9 #include "Behavioural/Generic/RegisterFile_Multi_Banked/RegisterFile_Multi_Banked_Glue/include/Types.h"
     8#include "Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/RegisterFile_Multi_Banked_Glue/include/Parameters.h"
     9#include "Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/RegisterFile_Multi_Banked_Glue/include/Types.h"
    1010#include <sstream>
    1111using namespace std;
    1212
    13 namespace morpheo                    {
     13namespace morpheo {
    1414namespace behavioural {
    1515namespace generic {
     16namespace registerfile{
    1617namespace registerfile_multi_banked {
    1718namespace registerfile_multi_banked_glue {
    18 
    1919
    2020  string Parameters::msg_error(void)
     
    2424    string msg = "";
    2525
     26    if (_nb_port_read < _nb_port_read_by_bank)
     27      {
     28        msg += "  - Each bank read's port must be higher at number of read port\n";
     29        msg += "    * nb_port_read                    : " + toString(_nb_port_read        ) + "\n";
     30        msg += "    * nb_port_read_by_bank            : " + toString(_nb_port_read_by_bank) + "\n";
     31      }
     32
     33    if (_nb_port_write < _nb_port_write_by_bank)
     34      {
     35        msg += "  - Each bank write's port must be higher at number of write port\n";
     36        msg += "    * nb_port_write                   : " + toString(_nb_port_write        ) + "\n";
     37        msg += "    * nb_port_write_by_bank           : " + toString(_nb_port_write_by_bank) + "\n";
     38      }
     39   
     40    if (_nb_bank < 1)
     41      {
     42        msg += "  - nb_bank must be higher at 1\n";
     43        msg += "    * nb_bank                         : " + toString(_nb_bank             ) + "\n";
     44      }
     45     
    2646    return msg;
    2747
     
    3151}; // end namespace registerfile_multi_banked_glue
    3252}; // end namespace registerfile_multi_banked
     53}; // end namespace registerfile
    3354}; // end namespace generic
    34 
    3555}; // end namespace behavioural
    3656}; // end namespace morpheo             
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/RegisterFile_Multi_Banked_Glue/src/Parameters_print.cpp

    r10 r15  
    66 */
    77
    8 #include "Behavioural/Generic/RegisterFile_Multi_Banked/RegisterFile_Multi_Banked_Glue/include/Parameters.h"
     8#include "Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/RegisterFile_Multi_Banked_Glue/include/Parameters.h"
    99#include "Behavioural/include/XML.h"
    1010using namespace std;
     
    1313namespace behavioural {
    1414namespace generic {
     15namespace registerfile{
    1516namespace registerfile_multi_banked {
    1617namespace registerfile_multi_banked_glue {
     
    2425
    2526    xml.balise_open("registerfile_multi_banked_glue");
    26     xml.singleton_begin("nb_port_read "); xml.attribut("value",toString(_nb_port_read )); xml.singleton_end();
    27     xml.singleton_begin("nb_port_write"); xml.attribut("value",toString(_nb_port_write)); xml.singleton_end();
    28     xml.singleton_begin("size_address "); xml.attribut("value",toString(_size_address )); xml.singleton_end();
    29     xml.singleton_begin("size_word    "); xml.attribut("value",toString(_size_word    )); xml.singleton_end();
    30     xml.singleton_begin("nb_bank      "); xml.attribut("value",toString(_nb_bank      )); xml.singleton_end();
     27    xml.singleton_begin("nb_port_read         "); xml.attribut("value",toString(_nb_port_read         )); xml.singleton_end();
     28    xml.singleton_begin("nb_port_write        "); xml.attribut("value",toString(_nb_port_write        )); xml.singleton_end();
     29    xml.singleton_begin("size_address         "); xml.attribut("value",toString(_size_address         )); xml.singleton_end();
     30    xml.singleton_begin("size_word            "); xml.attribut("value",toString(_size_word            )); xml.singleton_end();
     31    xml.singleton_begin("nb_bank              "); xml.attribut("value",toString(_nb_bank              )); xml.singleton_end();
     32    xml.singleton_begin("nb_port_read_by_bank "); xml.attribut("value",toString(_nb_port_read_by_bank )); xml.singleton_end();
     33    xml.singleton_begin("nb_port_write_by_bank"); xml.attribut("value",toString(_nb_port_write_by_bank)); xml.singleton_end();
     34    xml.singleton_begin("crossbar             "); xml.attribut("value",toString(_crossbar             )); xml.singleton_end();
    3135    xml.balise_close();
    3236
     
    3741
    3842  ostream& operator<< (ostream& output_stream ,
    39                        morpheo::behavioural::generic::registerfile_multi_banked::registerfile_multi_banked_glue::Parameters & x)
     43                       morpheo::behavioural::generic::registerfile::registerfile_multi_banked::registerfile_multi_banked_glue::Parameters & x)
    4044  {
    4145    output_stream << x.print(0);
     
    4650}; // end namespace registerfile_multi_banked_glue
    4751}; // end namespace registerfile_multi_banked
     52}; // end namespace registerfile
    4853}; // end namespace generic
    4954
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/RegisterFile_Multi_Banked_Glue/src/RegisterFile_Multi_Banked_Glue.cpp

    r10 r15  
    66 */
    77
    8 #include "Behavioural/Generic/RegisterFile_Multi_Banked/RegisterFile_Multi_Banked_Glue/include/RegisterFile_Multi_Banked_Glue.h"
     8#include "Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/RegisterFile_Multi_Banked_Glue/include/RegisterFile_Multi_Banked_Glue.h"
    99
    1010namespace morpheo                    {
    1111namespace behavioural {
    1212namespace generic {
     13namespace registerfile{
    1314namespace registerfile_multi_banked {
    1415namespace registerfile_multi_banked_glue {
     
    2324                              morpheo::behavioural::Parameters_Statistics             param_statistics,
    2425#endif
    25                               morpheo::behavioural::generic::registerfile_multi_banked::registerfile_multi_banked_glue::Parameters param ):
     26                              morpheo::behavioural::generic::registerfile::registerfile_multi_banked::registerfile_multi_banked_glue::Parameters param ):
    2627                              _name              (name)
    2728                              ,_param            (param)
     
    6667    allocation ();
    6768
    68 //#if defined(STATISTICS) or defined(VHDL_TESTBENCH)
     69#if defined(STATISTICS) or defined(VHDL_TESTBENCH)
    6970    log_printf(INFO,RegisterFile_Multi_Banked_Glue,"RegisterFile_Multi_Banked_Glue","Method - transition");
    7071
     
    7273    dont_initialize ();
    7374    sensitive_pos << *(in_CLOCK);
    74 //#endif
     75#endif
     76
     77    log_printf(INFO,RegisterFile_Multi_Banked_Glue,"RegisterFile_Multi_Banked_Glue","Method - transition");
     78
     79    SC_METHOD (genMealy_read_in);
     80    dont_initialize ();
     81    for (uint32_t l=0; l<_param._nb_port_read; l++)
     82      sensitive << (*(in_READ_IN_ADDRESS [l]));
     83    for (uint32_t i=0; i<_param._nb_bank; i++)
     84       for (uint32_t j=0; j<_param._nb_port_read_by_bank; j++)
     85         {
     86           sensitive << (*(in_READ_OUT_ACK      [i][j]))
     87                     << (*(in_READ_OUT_DATA     [i][j]));
     88           for (uint32_t k=0; k<_param._nb_port_select_by_bank_read_port[j]; k++)
     89             sensitive << (*(in_READ_SELECT_ACK [i][j][k]));
     90         }
    7591
    7692#ifdef SYSTEMCASS_SPECIFIC
    7793    // List dependency information
     94    for (uint32_t l=0; l<_param._nb_port_read; l++)
     95      {
     96        (*(out_READ_IN_ACK  [l])) (*(in_READ_IN_ADDRESS [l]));
     97        (*(out_READ_IN_DATA [l])) (*(in_READ_IN_ADDRESS [l]));
     98
     99        for (uint32_t i=0; i<_param._nb_bank; i++)
     100          for (uint32_t j=0; j<_param._nb_port_read_by_bank; j++)
     101            {
     102              (*(out_READ_IN_ACK  [l])) (*(in_READ_OUT_ACK      [i][j]));
     103              (*(out_READ_IN_DATA [l])) (*(in_READ_OUT_DATA     [i][j]));
     104              for (uint32_t k=0; k<_param._nb_port_select_by_bank_read_port[j]; k++)
     105                {
     106                  (*(out_READ_IN_ACK  [l])) (*(in_READ_SELECT_ACK [i][j][k]));
     107                  (*(out_READ_IN_DATA [l])) (*(in_READ_SELECT_ACK [i][j][k]));
     108                }
     109            }
     110      }
    78111#endif   
    79112
     
    113146}; // end namespace registerfile_multi_banked_glue
    114147}; // end namespace registerfile_multi_banked
     148}; // end namespace registerfile
    115149}; // end namespace generic
    116150
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/RegisterFile_Multi_Banked_Glue/src/RegisterFile_Multi_Banked_Glue_allocation.cpp

    r10 r15  
    77 */
    88
    9 #include "Behavioural/Generic/RegisterFile_Multi_Banked/RegisterFile_Multi_Banked_Glue/include/RegisterFile_Multi_Banked_Glue.h"
     9#include "Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/RegisterFile_Multi_Banked_Glue/include/RegisterFile_Multi_Banked_Glue.h"
    1010
    1111namespace morpheo                    {
    1212namespace behavioural {
    1313namespace generic {
     14namespace registerfile{
    1415namespace registerfile_multi_banked {
    1516namespace registerfile_multi_banked_glue {
     
    3031    in_READ_IN_ADDRESS   = new SC_IN (Taddress_t)           * [_param._nb_port_read];
    3132   out_READ_IN_DATA      = new SC_OUT(Tdata_t   )           * [_param._nb_port_read];
    32     in_READ_SELECT_VAL   = new SC_IN (Tcontrol_t)           * [_param._nb_port_read];
    33    out_READ_SELECT_ACK   = new SC_OUT(Tcontrol_t)           * [_param._nb_port_read];
    3433
    3534   for (uint32_t i=0; i<_param._nb_port_read; i++)
     
    4645       rename = "out_READ_IN_DATA_"+toString(i)+"     ";
    4746       out_READ_IN_DATA      [i] = new SC_OUT(Tdata_t   ) (rename.c_str());
    48 
    49        rename = " in_READ_SELECT_VAL_"+toString(i)+"  ";
    50         in_READ_SELECT_VAL   [i] = new SC_IN (Tcontrol_t) (rename.c_str());
    51 
    52        rename = "out_READ_SELECT_ACK_"+toString(i)+"  ";
    53        out_READ_SELECT_ACK   [i] = new SC_OUT(Tcontrol_t) (rename.c_str());
    5447     }
    5548                                                     
    56    out_READ_OUT_VAL      = new SC_OUT(Tcontrol_t)          ** [_param._nb_bank];
    57     in_READ_OUT_ACK      = new SC_IN (Tcontrol_t)          ** [_param._nb_bank];
    58    out_READ_OUT_ADDRESS  = new SC_OUT(Taddress_t)          ** [_param._nb_bank];
    59     in_READ_OUT_DATA     = new SC_IN (Tdata_t   )          ** [_param._nb_bank];
     49   out_READ_SELECT_VAL  = new SC_OUT(Tcontrol_t) *** [_param._nb_bank];
     50    in_READ_SELECT_ACK  = new SC_IN (Tcontrol_t) *** [_param._nb_bank];
     51
     52    for (uint32_t i=0; i<_param._nb_bank; i++)
     53      {
     54        out_READ_SELECT_VAL [i] = new SC_OUT(Tcontrol_t)  ** [_param._nb_port_read_by_bank];
     55         in_READ_SELECT_ACK [i] = new SC_IN (Tcontrol_t)  ** [_param._nb_port_read_by_bank];
     56
     57         for (uint32_t j=0; j<_param._nb_port_read_by_bank; j++)
     58           {
     59             out_READ_SELECT_VAL [i][j] = new SC_OUT(Tcontrol_t)   * [_param._nb_port_select_by_bank_read_port [j]];
     60              in_READ_SELECT_ACK [i][j] = new SC_IN (Tcontrol_t)   * [_param._nb_port_select_by_bank_read_port [j]];
     61             
     62             for (uint32_t k=0; k<_param._nb_port_select_by_bank_read_port [j]; k++)
     63               {
     64                 rename="out_READ_SELECT_VAL_"+toString(i)+"_"+toString(j)+"_"+toString(k)+" ";
     65                 out_READ_SELECT_VAL [i][j][k] = new SC_OUT(Tcontrol_t) (rename.c_str());
     66                 
     67                 rename=" in_READ_SELECT_ACK_"+toString(i)+"_"+toString(j)+"_"+toString(k)+" ";
     68                  in_READ_SELECT_ACK [i][j][k] = new SC_IN (Tcontrol_t) (rename.c_str());
     69               }
     70           }
     71      }
     72
     73   out_READ_OUT_VAL         = new SC_OUT(Tcontrol_t)          ** [_param._nb_bank];
     74    in_READ_OUT_ACK         = new SC_IN (Tcontrol_t)          ** [_param._nb_bank];
     75   out_READ_OUT_ADDRESS     = new SC_OUT(Taddress_t)          ** [_param._nb_bank];
     76    in_READ_OUT_DATA        = new SC_IN (Tdata_t   )          ** [_param._nb_bank];
    6077
    6178    for (uint32_t i=0; i<_param._nb_bank; i++)
     
    87104    in_WRITE_IN_ADDRESS  = new SC_IN (Taddress_t)           * [_param._nb_port_write];
    88105    in_WRITE_IN_DATA     = new SC_IN (Tdata_t   )           * [_param._nb_port_write];
    89     in_WRITE_SELECT_VAL  = new SC_IN (Tcontrol_t)           * [_param._nb_port_write];
    90    out_WRITE_SELECT_ACK  = new SC_OUT(Tcontrol_t)           * [_param._nb_port_write];
    91106
    92107   for (uint32_t i=0; i<_param._nb_port_write; i++)
     
    103118       rename = " in_WRITE_IN_DATA_"+toString(i)+"    ";
    104119        in_WRITE_IN_DATA     [i] = new SC_IN (Tdata_t   ) (rename.c_str());
    105 
    106        rename = " in_WRITE_SELECT_VAL_"+toString(i)+" ";
    107         in_WRITE_SELECT_VAL   [i] = new SC_IN (Tcontrol_t) (rename.c_str());
    108 
    109        rename = "out_WRITE_SELECT_ACK_"+toString(i)+" ";
    110        out_WRITE_SELECT_ACK   [i] = new SC_OUT(Tcontrol_t) (rename.c_str());
    111120     }
    112121   
     122   out_WRITE_SELECT_VAL  = new SC_OUT(Tcontrol_t) *** [_param._nb_bank];
     123    in_WRITE_SELECT_ACK  = new SC_IN (Tcontrol_t) *** [_param._nb_bank];
     124
     125    for (uint32_t i=0; i<_param._nb_bank; i++)
     126      {
     127        out_WRITE_SELECT_VAL [i] = new SC_OUT(Tcontrol_t)  ** [_param._nb_port_write_by_bank];
     128         in_WRITE_SELECT_ACK [i] = new SC_IN (Tcontrol_t)  ** [_param._nb_port_write_by_bank];
     129
     130         for (uint32_t j=0; j<_param._nb_port_write_by_bank; j++)
     131           {
     132             out_WRITE_SELECT_VAL [i][j] = new SC_OUT(Tcontrol_t)   * [_param._nb_port_select_by_bank_write_port [j]];
     133              in_WRITE_SELECT_ACK [i][j] = new SC_IN (Tcontrol_t)   * [_param._nb_port_select_by_bank_write_port [j]];
     134             
     135             for (uint32_t k=0; k<_param._nb_port_select_by_bank_write_port [j]; k++)
     136               {
     137                 rename="out_WRITE_SELECT_VAL_"+toString(i)+"_"+toString(j)+"_"+toString(k)+"";
     138                 out_WRITE_SELECT_VAL [i][j][k] = new SC_OUT(Tcontrol_t) (rename.c_str());
     139                 
     140                 rename=" in_WRITE_SELECT_ACK_"+toString(i)+"_"+toString(j)+"_"+toString(k)+"";
     141                  in_WRITE_SELECT_ACK [i][j][k] = new SC_IN (Tcontrol_t) (rename.c_str());
     142               }
     143           }
     144      }
    113145   
    114146   out_WRITE_OUT_VAL     = new SC_OUT(Tcontrol_t)          ** [_param._nb_bank];
     
    147179}; // end namespace registerfile_multi_banked_glue
    148180}; // end namespace registerfile_multi_banked
     181}; // end namespace registerfile
    149182}; // end namespace generic
    150183
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/RegisterFile_Multi_Banked_Glue/src/RegisterFile_Multi_Banked_Glue_deallocation.cpp

    r10 r15  
    77 */
    88
    9 #include "Behavioural/Generic/RegisterFile_Multi_Banked/RegisterFile_Multi_Banked_Glue/include/RegisterFile_Multi_Banked_Glue.h"
     9#include "Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/RegisterFile_Multi_Banked_Glue/include/RegisterFile_Multi_Banked_Glue.h"
    1010
    1111namespace morpheo {
    1212namespace behavioural {
    1313namespace generic {
     14namespace registerfile{
    1415namespace registerfile_multi_banked {
    1516namespace registerfile_multi_banked_glue {
     
    2930       delete  in_READ_IN_ADDRESS   [i];
    3031       delete out_READ_IN_DATA      [i];
    31        delete  in_READ_SELECT_VAL   [i];
    32        delete out_READ_SELECT_ACK   [i];
    3332     }
    3433                                                     
     
    3736   delete  in_READ_IN_ADDRESS;
    3837   delete out_READ_IN_DATA   ;
    39    delete  in_READ_SELECT_VAL;
    40    delete out_READ_SELECT_ACK;
    41 
    42     for (uint32_t i=0; i<_param._nb_bank; i++)
     38   
     39   for (uint32_t i=0; i<_param._nb_bank; i++)
     40     {
     41       for (uint32_t j=0; j<_param._nb_port_read_by_bank; j++)
     42         {
     43           for (uint32_t k=0; k<_param._nb_port_select_by_bank_read_port[j]; k++)
     44             {
     45               delete out_READ_SELECT_VAL [i][j][k];
     46               delete  in_READ_SELECT_ACK [i][j][k];
     47             }
     48           delete out_READ_SELECT_VAL [i][j];
     49           delete  in_READ_SELECT_ACK [i][j];
     50         }
     51       delete out_READ_SELECT_VAL [i];
     52       delete  in_READ_SELECT_ACK [i];
     53     }
     54   delete out_READ_SELECT_VAL;
     55   delete  in_READ_SELECT_ACK;
     56   
     57   for (uint32_t i=0; i<_param._nb_bank; i++)
    4358      {
    4459        for (uint32_t j=0; j<_param._nb_port_read_by_bank; j++)
     
    6782       delete  in_WRITE_IN_ADDRESS  [i];
    6883       delete  in_WRITE_IN_DATA     [i];
    69        delete  in_WRITE_SELECT_VAL  [i];
    70        delete out_WRITE_SELECT_ACK  [i];
    7184     }
    7285
     
    7588   delete  in_WRITE_IN_ADDRESS;
    7689   delete  in_WRITE_IN_DATA   ;
    77    delete  in_WRITE_SELECT_VAL;
    78    delete out_WRITE_SELECT_ACK;
     90
     91   for (uint32_t i=0; i<_param._nb_bank; i++)
     92     {
     93       for (uint32_t j=0; j<_param._nb_port_write_by_bank; j++)
     94         {
     95           for (uint32_t k=0; k<_param._nb_port_select_by_bank_write_port[j]; k++)
     96             {
     97               delete out_WRITE_SELECT_VAL [i][j][k];
     98               delete  in_WRITE_SELECT_ACK [i][j][k];
     99             }
     100           delete out_WRITE_SELECT_VAL [i][j];
     101           delete  in_WRITE_SELECT_ACK [i][j];
     102         }
     103       delete out_WRITE_SELECT_VAL [i];
     104       delete  in_WRITE_SELECT_ACK [i];
     105     }
     106   delete out_WRITE_SELECT_VAL;
     107   delete  in_WRITE_SELECT_ACK;
    79108   
    80109   for (uint32_t i=0; i<_param._nb_bank; i++)
     
    106135}; // end namespace registerfile_multi_banked_glue
    107136}; // end namespace registerfile_multi_banked
     137}; // end namespace registerfile
    108138}; // end namespace generic
    109139}; // end namespace behavioural
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/RegisterFile_Multi_Banked_Glue/src/RegisterFile_Multi_Banked_Glue_statistics.cpp

    r10 r15  
    77 */
    88
    9 #include "Behavioural/Generic/RegisterFile_Multi_Banked/RegisterFile_Multi_Banked_Glue/include/RegisterFile_Multi_Banked_Glue.h"
     9#include "Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/RegisterFile_Multi_Banked_Glue/include/RegisterFile_Multi_Banked_Glue.h"
    1010
    1111namespace morpheo {
    1212namespace behavioural {
    1313namespace generic {
     14namespace registerfile{
    1415namespace registerfile_multi_banked {
    1516namespace registerfile_multi_banked_glue {
     
    2930}; // end namespace registerfile_multi_banked_glue
    3031}; // end namespace registerfile_multi_banked
     32}; // end namespace registerfile
    3133}; // end namespace generic
    3234
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/RegisterFile_Multi_Banked_Glue/src/RegisterFile_Multi_Banked_Glue_transition.cpp

    r10 r15  
    11#ifdef SYSTEMC
    2 //#if defined(STATISTICS) or defined(VHDL_TESTBENCH)
     2#if defined(STATISTICS) or defined(VHDL_TESTBENCH)
    33/*
    44 * $Id$
     
    88 */
    99
    10 #include "Behavioural/Generic/RegisterFile_Multi_Banked/RegisterFile_Multi_Banked_Glue/include/RegisterFile_Multi_Banked_Glue.h"
     10#include "Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/RegisterFile_Multi_Banked_Glue/include/RegisterFile_Multi_Banked_Glue.h"
    1111
    1212namespace morpheo                    {
    1313namespace behavioural {
    1414namespace generic {
     15namespace registerfile{
    1516namespace registerfile_multi_banked {
    1617namespace registerfile_multi_banked_glue {
     
    3435}; // end namespace registerfile_multi_banked_glue
    3536}; // end namespace registerfile_multi_banked
     37}; // end namespace registerfile
    3638}; // end namespace generic
    37 
    3839}; // end namespace behavioural
    3940}; // end namespace morpheo             
    4041#endif
    41 //#endif
     42#endif
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/RegisterFile_Multi_Banked_Glue/src/RegisterFile_Multi_Banked_Glue_vhdl.cpp

    r10 r15  
    77 */
    88
    9 #include "Behavioural/Generic/RegisterFile_Multi_Banked/RegisterFile_Multi_Banked_Glue/include/RegisterFile_Multi_Banked_Glue.h"
     9#include "Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/RegisterFile_Multi_Banked_Glue/include/RegisterFile_Multi_Banked_Glue.h"
    1010#include "Behavioural/include/Vhdl.h"
    1111
     
    1313namespace behavioural {
    1414namespace generic {
     15namespace registerfile{
    1516namespace registerfile_multi_banked {
    1617namespace registerfile_multi_banked_glue {
     
    3536}; // end namespace registerfile_multi_banked_glue
    3637}; // end namespace registerfile_multi_banked
     38}; // end namespace registerfile
    3739}; // end namespace generic
    3840
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/RegisterFile_Multi_Banked_Glue/src/RegisterFile_Multi_Banked_Glue_vhdl_body.cpp

    r10 r15  
    77 */
    88
    9 #include "Behavioural/Generic/RegisterFile_Multi_Banked/RegisterFile_Multi_Banked_Glue/include/RegisterFile_Multi_Banked_Glue.h"
     9#include "Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/RegisterFile_Multi_Banked_Glue/include/RegisterFile_Multi_Banked_Glue.h"
    1010
    1111namespace morpheo                    {
    1212namespace behavioural {
    1313namespace generic {
     14namespace registerfile{
    1415namespace registerfile_multi_banked {
    1516namespace registerfile_multi_banked_glue {
     
    2526}; // end namespace registerfile_multi_banked_glue
    2627}; // end namespace registerfile_multi_banked
     28}; // end namespace registerfile
    2729}; // end namespace generic
    2830
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/RegisterFile_Multi_Banked_Glue/src/RegisterFile_Multi_Banked_Glue_vhdl_declaration.cpp

    r10 r15  
    77 */
    88
    9 #include "Behavioural/Generic/RegisterFile_Multi_Banked/RegisterFile_Multi_Banked_Glue/include/RegisterFile_Multi_Banked_Glue.h"
     9#include "Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/RegisterFile_Multi_Banked_Glue/include/RegisterFile_Multi_Banked_Glue.h"
    1010
    1111namespace morpheo {
    1212namespace behavioural {
    1313namespace generic {
     14namespace registerfile{
    1415namespace registerfile_multi_banked {
    1516namespace registerfile_multi_banked_glue {
     
    2425}; // end namespace registerfile_multi_banked_glue
    2526}; // end namespace registerfile_multi_banked
     27}; // end namespace registerfile
    2628}; // end namespace generic
    2729
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/RegisterFile_Multi_Banked_Glue/src/RegisterFile_Multi_Banked_Glue_vhdl_port.cpp

    r10 r15  
    77 */
    88
    9 #include "Behavioural/Generic/RegisterFile_Multi_Banked/RegisterFile_Multi_Banked_Glue/include/RegisterFile_Multi_Banked_Glue.h"
     9#include "Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/RegisterFile_Multi_Banked_Glue/include/RegisterFile_Multi_Banked_Glue.h"
    1010
    1111#ifdef VHDL_TESTBENCH
     
    1818namespace behavioural {
    1919namespace generic {
     20namespace registerfile{
    2021namespace registerfile_multi_banked {
    2122namespace registerfile_multi_banked_glue {
     
    2627    log_printf(FUNC,RegisterFile_Multi_Banked_Glue,"vhdl_port","Begin");
    2728
     29    log_printf(TRACE,RegisterFile_Multi_Banked_Glue,"vhdl_port","Interface READ_IN");
    2830   for (uint32_t i=0; i<_param._nb_port_read; i++)
    2931     {
     
    3234       VHDL_SET_PORT(" in_READ_IN_ADDRESS_"+toString(i)+"  ", IN, _param._size_address);
    3335       VHDL_SET_PORT("out_READ_IN_DATA_"+toString(i)+"     ",OUT, _param._size_word   );
    34        VHDL_SET_PORT(" in_READ_SELECT_VAL_"+toString(i)+"  ", IN, 1);
    35        VHDL_SET_PORT("out_READ_SELECT_ACK_"+toString(i)+"  ",OUT, 1);
    3636     }
    37                                                      
     37
     38   log_printf(TRACE,RegisterFile_Multi_Banked_Glue,"vhdl_port","Interface READ_SELECT");
     39       
     40   for (uint32_t i=0; i<_param._nb_bank; i++)
     41     {
     42       log_printf(TRACE,RegisterFile_Multi_Banked_Glue,"vhdl_port","READ_SELECT[%d]",i);
     43       for (uint32_t j=0; j<_param._nb_port_read_by_bank; j++)
     44         {
     45           log_printf(TRACE,RegisterFile_Multi_Banked_Glue,"vhdl_port","READ_SELECT[%d][%d]",i,j);
     46           for (uint32_t k=0; k<_param._nb_port_select_by_bank_read_port [j]; k++)
     47             {
     48               log_printf(TRACE,RegisterFile_Multi_Banked_Glue,"vhdl_port","READ_SELECT[%d][%d][%d]",i,j,k);
     49               VHDL_SET_PORT("out_READ_SELECT_VAL_"+toString(i)+"_"+toString(j)+"_"+toString(k)+" ",OUT, 1);
     50               VHDL_SET_PORT(" in_READ_SELECT_ACK_"+toString(i)+"_"+toString(j)+"_"+toString(k)+" ", IN, 1);
     51             }
     52         }
     53     }
     54   log_printf(TRACE,RegisterFile_Multi_Banked_Glue,"vhdl_port","Interface READ_OUT");
     55   
    3856    for (uint32_t i=0; i<_param._nb_bank; i++)
    39       {
    40         for (uint32_t j=0; j<_param._nb_port_read_by_bank; j++)
    41           {
    42             VHDL_SET_PORT("out_READ_OUT_VAL_"+toString(i)+"_"+toString(j)+"      ",OUT, 1);
    43             VHDL_SET_PORT(" in_READ_OUT_ACK_"+toString(i)+"_"+toString(j)+"      ", IN, 1);
    44             VHDL_SET_PORT("out_READ_OUT_ADDRESS_"+toString(i)+"_"+toString(j)+"  ",OUT, _param._size_address);
    45             VHDL_SET_PORT(" in_READ_OUT_DATA_"+toString(i)+"_"+toString(j)+"     ", IN, _param._size_word   );
    46           }
    47       }
     57      for (uint32_t j=0; j<_param._nb_port_read_by_bank; j++)
     58        {
     59          VHDL_SET_PORT("out_READ_OUT_VAL_"+toString(i)+"_"+toString(j)+"      ",OUT, 1);
     60          VHDL_SET_PORT(" in_READ_OUT_ACK_"+toString(i)+"_"+toString(j)+"      ", IN, 1);
     61          VHDL_SET_PORT("out_READ_OUT_ADDRESS_"+toString(i)+"_"+toString(j)+"  ",OUT, _param._size_address);
     62          VHDL_SET_PORT(" in_READ_OUT_DATA_"+toString(i)+"_"+toString(j)+"     ", IN, _param._size_word   );
     63        }
    4864
     65    log_printf(TRACE,RegisterFile_Multi_Banked_Glue,"vhdl_port","Interface WRITE_IN");
     66   
    4967   for (uint32_t i=0; i<_param._nb_port_write; i++)
    5068     {
     
    5371       VHDL_SET_PORT(" in_WRITE_IN_ADDRESS_"+toString(i)+" ", IN, _param._size_address);
    5472       VHDL_SET_PORT(" in_WRITE_IN_DATA_"+toString(i)+"    ", IN, _param._size_word   );
    55        VHDL_SET_PORT(" in_WRITE_SELECT_VAL_"+toString(i)+" ", IN, 1);
    56        VHDL_SET_PORT("out_WRITE_SELECT_ACK_"+toString(i)+" ",OUT, 1);
    5773     }
    5874   
    59     for (uint32_t i=0; i<_param._nb_bank; i++)
    60       {
    61         for (uint32_t j=0; j<_param._nb_port_write_by_bank; j++)
    62           {
    63             VHDL_SET_PORT("out_WRITE_OUT_VAL_"+toString(i)+"_"+toString(j)+"     ",OUT, 1);
    64             VHDL_SET_PORT(" in_WRITE_OUT_ACK_"+toString(i)+"_"+toString(j)+"     ", IN, 1);
    65             VHDL_SET_PORT("out_WRITE_OUT_ADDRESS_"+toString(i)+"_"+toString(j)+" ",OUT, _param._size_address);
    66             VHDL_SET_PORT("out_WRITE_OUT_DATA_"+toString(i)+"_"+toString(j)+"    ",OUT, _param._size_word   );
    67           }
    68       }
     75   log_printf(TRACE,RegisterFile_Multi_Banked_Glue,"vhdl_port","Interface WRITE_SELECT");
     76
     77   for (uint32_t i=0; i<_param._nb_bank; i++)
     78     for (uint32_t j=0; j<_param._nb_port_write_by_bank; j++)
     79       for (uint32_t k=0; k<_param._nb_port_select_by_bank_write_port [j]; k++)
     80         {
     81           VHDL_SET_PORT("out_WRITE_SELECT_VAL_"+toString(i)+"_"+toString(j)+"_"+toString(k)+" ",OUT, 1);
     82           VHDL_SET_PORT(" in_WRITE_SELECT_ACK_"+toString(i)+"_"+toString(j)+"_"+toString(k)+" ", IN, 1);
     83         }
     84   
     85   log_printf(TRACE,RegisterFile_Multi_Banked_Glue,"vhdl_port","Interface WRITE_OUT");
     86   
     87   for (uint32_t i=0; i<_param._nb_bank; i++)
     88     for (uint32_t j=0; j<_param._nb_port_write_by_bank; j++)
     89       {
     90         VHDL_SET_PORT("out_WRITE_OUT_VAL_"+toString(i)+"_"+toString(j)+"     ",OUT, 1);
     91         VHDL_SET_PORT(" in_WRITE_OUT_ACK_"+toString(i)+"_"+toString(j)+"     ", IN, 1);
     92         VHDL_SET_PORT("out_WRITE_OUT_ADDRESS_"+toString(i)+"_"+toString(j)+" ",OUT, _param._size_address);
     93         VHDL_SET_PORT("out_WRITE_OUT_DATA_"+toString(i)+"_"+toString(j)+"    ",OUT, _param._size_word   );
     94       }
    6995
    7096    log_printf(FUNC,RegisterFile_Multi_Banked_Glue,"vhdl_port","End");
     
    7399}; // end namespace registerfile_multi_banked_glue
    74100}; // end namespace registerfile_multi_banked
     101}; // end namespace registerfile
    75102}; // end namespace generic
    76103
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/RegisterFile_Multi_Banked_Glue/src/RegisterFile_Multi_Banked_Glue_vhdl_testbench_label.cpp

    r10 r15  
    66 */
    77
    8 #include "Behavioural/Generic/RegisterFile_Multi_Banked/RegisterFile_Multi_Banked_Glue/include/RegisterFile_Multi_Banked_Glue.h"
     8#include "Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/RegisterFile_Multi_Banked_Glue/include/RegisterFile_Multi_Banked_Glue.h"
    99
    1010namespace morpheo                    {
    1111namespace behavioural {
    1212namespace generic {
     13namespace registerfile{
    1314namespace registerfile_multi_banked {
    1415namespace registerfile_multi_banked_glue {
     
    2829}; // end namespace registerfile_multi_banked_glue
    2930}; // end namespace registerfile_multi_banked
     31}; // end namespace registerfile
    3032}; // end namespace generic
    3133
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/RegisterFile_Multi_Banked_Glue/src/RegisterFile_Multi_Banked_Glue_vhdl_testbench_transition.cpp

    r10 r15  
    77 */
    88
    9 #include "Behavioural/Generic/RegisterFile_Multi_Banked/RegisterFile_Multi_Banked_Glue/include/RegisterFile_Multi_Banked_Glue.h"
     9#include "Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/RegisterFile_Multi_Banked_Glue/include/RegisterFile_Multi_Banked_Glue.h"
    1010
    1111namespace morpheo                    {
    1212namespace behavioural {
    1313namespace generic {
     14namespace registerfile{
    1415namespace registerfile_multi_banked {
    1516namespace registerfile_multi_banked_glue {
     
    3536       _vhdl_testbench->add_input (PORT_READ( in_READ_IN_ADDRESS   [i]));
    3637       _vhdl_testbench->add_input (PORT_READ(out_READ_IN_DATA      [i]));
    37        _vhdl_testbench->add_input (PORT_READ( in_READ_SELECT_VAL   [i]));
    38        _vhdl_testbench->add_output(PORT_READ(out_READ_SELECT_ACK   [i]));
    3938     }
    40                                                      
     39
     40   for (uint32_t i=0; i<_param._nb_bank; i++)
     41     for (uint32_t j=0; j<_param._nb_port_read_by_bank; j++)
     42       for (uint32_t k=0; k<_param._nb_port_select_by_bank_read_port [j]; k++)
     43         {
     44           _vhdl_testbench->add_output(PORT_READ(out_READ_SELECT_VAL [i][j][k]));
     45           _vhdl_testbench->add_input (PORT_READ( in_READ_SELECT_ACK [i][j][k]));
     46         }
     47   
    4148    for (uint32_t i=0; i<_param._nb_bank; i++)
    4249      for (uint32_t j=0; j<_param._nb_port_read_by_bank; j++)
     
    5461       _vhdl_testbench->add_input (PORT_READ( in_WRITE_IN_ADDRESS  [i]));
    5562       _vhdl_testbench->add_input (PORT_READ( in_WRITE_IN_DATA     [i]));
    56        _vhdl_testbench->add_input (PORT_READ( in_WRITE_SELECT_VAL  [i]));
    57        _vhdl_testbench->add_output(PORT_READ(out_WRITE_SELECT_ACK  [i]));
    5863     }
     64   
     65   for (uint32_t i=0; i<_param._nb_bank; i++)
     66     for (uint32_t j=0; j<_param._nb_port_write_by_bank; j++)
     67       for (uint32_t k=0; k<_param._nb_port_select_by_bank_write_port [j]; k++)
     68         {
     69           _vhdl_testbench->add_output(PORT_READ(out_WRITE_SELECT_VAL [i][j][k]));
     70           _vhdl_testbench->add_input (PORT_READ( in_WRITE_SELECT_ACK [i][j][k]));
     71         }
    5972   
    6073    for (uint32_t i=0; i<_param._nb_bank; i++)
     
    8093}; // end namespace registerfile_multi_banked_glue
    8194}; // end namespace registerfile_multi_banked
     95}; // end namespace registerfile
    8296}; // end namespace generic
    8397
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/RegisterFile_Multi_Banked_Glue/src/Statistics.cpp

    r10 r15  
    77 */
    88
    9 #include "Behavioural/Generic/RegisterFile_Multi_Banked/RegisterFile_Multi_Banked_Glue/include/Statistics.h"
     9#include "Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/RegisterFile_Multi_Banked_Glue/include/Statistics.h"
    1010
    1111namespace morpheo                    {
    1212namespace behavioural {
    1313namespace generic {
     14namespace registerfile{
    1415namespace registerfile_multi_banked {
    1516namespace registerfile_multi_banked_glue {
     
    3637}; // end namespace registerfile_multi_banked_glue
    3738}; // end namespace registerfile_multi_banked
     39}; // end namespace registerfile
    3840}; // end namespace generic
    3941
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/RegisterFile_Multi_Banked_Glue/src/Statistics_add.cpp

    r10 r15  
    77 */
    88
    9 #include "Behavioural/Generic/RegisterFile_Multi_Banked/RegisterFile_Multi_Banked_Glue/include/Statistics.h"
     9#include "Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/RegisterFile_Multi_Banked_Glue/include/Statistics.h"
    1010
    1111#include <sstream>
     
    1515namespace behavioural {
    1616namespace generic {
     17namespace registerfile{
    1718namespace registerfile_multi_banked {
    1819namespace registerfile_multi_banked_glue {
     
    2728}; // end namespace registerfile_multi_banked_glue
    2829}; // end namespace registerfile_multi_banked
     30}; // end namespace registerfile
    2931}; // end namespace generic
    3032
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/RegisterFile_Multi_Banked_Glue/src/Statistics_print.cpp

    r10 r15  
    77 */
    88
    9 #include "Behavioural/Generic/RegisterFile_Multi_Banked/RegisterFile_Multi_Banked_Glue/include/Statistics.h"
     9#include "Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/RegisterFile_Multi_Banked_Glue/include/Statistics.h"
    1010
    1111#include <sstream>
     
    1515namespace behavioural {
    1616namespace generic {
     17namespace registerfile{
    1718namespace registerfile_multi_banked {
    1819namespace registerfile_multi_banked_glue {
     
    3637
    3738  ostream& operator<< (ostream& output_stream ,
    38                        morpheo::behavioural::generic::registerfile_multi_banked::registerfile_multi_banked_glue::Statistics & x)
     39                       morpheo::behavioural::generic::registerfile::registerfile_multi_banked::registerfile_multi_banked_glue::Statistics & x)
    3940  {
    4041    output_stream << x.print(0);
     
    4546}; // end namespace registerfile_multi_banked_glue
    4647}; // end namespace registerfile_multi_banked
     48}; // end namespace registerfile
    4749}; // end namespace generic
    4850
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/RegisterFile_Multi_Banked_Glue/src/Statistics_print_body.cpp

    r10 r15  
    77 */
    88
    9 #include "Behavioural/Generic/RegisterFile_Multi_Banked/RegisterFile_Multi_Banked_Glue/include/Statistics.h"
     9#include "Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/RegisterFile_Multi_Banked_Glue/include/Statistics.h"
    1010
    1111#include <sstream>
     
    1515namespace behavioural {
    1616namespace generic {
     17namespace registerfile{
    1718namespace registerfile_multi_banked {
    1819namespace registerfile_multi_banked_glue {
     
    3536}; // end namespace registerfile_multi_banked_glue
    3637}; // end namespace registerfile_multi_banked
     38}; // end namespace registerfile
    3739}; // end namespace generic
    3840
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/SelfTest/Makefile

    r10 r15  
    88
    99#-----[ Directory ]----------------------------------------
    10 DIR_MORPHEO                     = ../../../..
     10DIR_MORPHEO                     = ../../../../..
    1111
    1212LIBRARY                         = $(RegisterFile_Multi_Banked_LIBRARY)
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/SelfTest/include/test.h

    r10 r15  
    1414#include <iostream>
    1515
    16 #include "Behavioural/Generic/RegisterFile_Multi_Banked/include/RegisterFile_Multi_Banked.h"
     16#include "Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/include/RegisterFile_Multi_Banked.h"
    1717
    1818using namespace std;
     
    2020using namespace morpheo::behavioural;
    2121using namespace morpheo::behavioural::generic;
    22 
    23 using namespace morpheo::behavioural::generic::registerfile_multi_banked;
     22using namespace morpheo::behavioural::generic::registerfile;
     23using namespace morpheo::behavioural::generic::registerfile::registerfile_multi_banked;
    2424
    2525void test    (string name,
    26               morpheo::behavioural::generic::registerfile_multi_banked::Parameters param);
     26              morpheo::behavioural::generic::registerfile::registerfile_multi_banked::Parameters param);
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/SelfTest/src/main.cpp

    r10 r15  
    66 */
    77
    8 #include "Behavioural/Generic/RegisterFile_Multi_Banked/SelfTest/include/test.h"
     8#include "Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/SelfTest/include/test.h"
    99
    1010#define NB_PARAMS 5
     
    4646  try
    4747    {
    48       morpheo::behavioural::generic::registerfile_multi_banked::Parameters param (nb_port_read ,
    49                                                                                   nb_port_write,
    50                                                                                   nb_word      ,
    51                                                                                   size_word    ,
    52                                                                                   nb_bank      );
     48      morpheo::behavioural::generic::registerfile::registerfile_multi_banked::Parameters param (nb_port_read ,
     49                                                                                                nb_port_write,
     50                                                                                                nb_word      ,
     51                                                                                                size_word    ,
     52                                                                                                nb_bank      );
    5353     
    5454      cout << param.print(1);
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/SelfTest/src/test.cpp

    r10 r15  
    99#define NB_ITERATION 1
    1010
    11 #include "Behavioural/Generic/RegisterFile_Multi_Banked/SelfTest/include/test.h"
     11#include "Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/SelfTest/include/test.h"
    1212#include "Include/Test.h"
    1313
    1414void test (string name,
    15            morpheo::behavioural::generic::registerfile_multi_banked::Parameters _param)
     15           morpheo::behavioural::generic::registerfile::registerfile_multi_banked::Parameters _param)
    1616{
    1717  cout << "<" << name << "> : Simulation SystemC" << endl;
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/include/Parameters.h

    r10 r15  
    1 #ifndef morpheo_behavioural_generic_registerfile_multi_banked_Parameters_h
    2 #define morpheo_behavioural_generic_registerfile_multi_banked_Parameters_h
     1#ifndef morpheo_behavioural_generic_registerfile_registerfile_multi_banked_Parameters_h
     2#define morpheo_behavioural_generic_registerfile_registerfile_multi_banked_Parameters_h
    33
    44/*
     
    1616namespace behavioural {
    1717namespace generic {
     18namespace registerfile {
    1819namespace registerfile_multi_banked {
    1920
     
    4344  public :        string   print      (uint32_t depth);
    4445  public : friend ostream& operator<< (ostream& output_stream,
    45                                        morpheo::behavioural::generic::registerfile_multi_banked::Parameters & x);
     46                                       morpheo::behavioural::generic::registerfile::registerfile_multi_banked::Parameters & x);
    4647  };
    4748
    4849}; // end namespace registerfile_multi_banked
     50}; // end namespace registerfile
    4951}; // end namespace generic
    5052
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/include/RegisterFile_Multi_Banked.h

    r10 r15  
    1 #ifndef morpheo_behavioural_generic_registerfile_multi_banked_RegisterFile_Multi_Banked_h
    2 #define morpheo_behavioural_generic_registerfile_multi_banked_RegisterFile_Multi_Banked_h
     1#ifndef morpheo_behavioural_generic_registerfile_registerfile_multi_banked_RegisterFile_Multi_Banked_h
     2#define morpheo_behavioural_generic_registerfile_registerfile_multi_banked_RegisterFile_Multi_Banked_h
    33
    44/*
     
    1717#include "Include/Debug.h"
    1818
    19 #include "Behavioural/Generic/RegisterFile_Multi_Banked/include/Parameters.h"
    20 #include "Behavioural/Generic/RegisterFile_Multi_Banked/include/Types.h"
     19#include "Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/include/Parameters.h"
     20#include "Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/include/Types.h"
    2121#ifdef STATISTICS
    22 #include "Behavioural/Generic/RegisterFile_Multi_Banked/include/Statistics.h"
     22#include "Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/include/Statistics.h"
    2323#endif
    2424#ifdef VHDL
     
    3434namespace behavioural {
    3535namespace generic {
     36namespace registerfile {
    3637namespace registerfile_multi_banked {
    3738
     
    129130
    130131}; // end namespace registerfile_multi_banked
     132}; // end namespace registerfile
    131133}; // end namespace generic
    132134}; // end namespace behavioural
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/include/Statistics.h

    r10 r15  
    11#ifdef STATISTICS
    2 #ifndef morpheo_behavioural_generic_registerfile_multi_banked_Statistics_h
    3 #define morpheo_behavioural_generic_registerfile_multi_banked_Statistics_h
     2#ifndef morpheo_behavioural_generic_registerfile_registerfile_multi_banked_Statistics_h
     3#define morpheo_behavioural_generic_registerfile_registerfile_multi_banked_Statistics_h
    44
    55/*
     
    1414#include "Behavioural/include/Parameters_Statistics.h"
    1515//#include "Behavioural/Generic/Group/include/Statistics.h"
    16 #include "Behavioural/Generic/RegisterFile_Multi_Banked/include/Parameters.h"
     16#include "Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/include/Parameters.h"
    1717
    1818//using namespace morpheo::behavioural::generic::group;
     
    2121namespace behavioural {
    2222namespace generic {
     23namespace registerfile {
    2324namespace registerfile_multi_banked {
    2425
     
    4748
    4849}; // end namespace registerfile_multi_banked
     50}; // end namespace registerfile
    4951}; // end namespace generic
    5052
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/include/Types.h

    r10 r15  
    1 #ifndef morpheo_behavioural_generic_registerfile_multi_banked_Type_h
    2 #define morpheo_behavioural_generic_registerfile_multi_banked_Type_h
     1#ifndef morpheo_behavioural_generic_registerfile_registerfile_multi_banked_Type_h
     2#define morpheo_behavioural_generic_registerfile_registerfile_multi_banked_Type_h
    33
    44/*
     
    1414namespace behavioural {
    1515namespace generic {
     16namespace registerfile {
    1617namespace registerfile_multi_banked {
    1718
     
    2021
    2122}; // end namespace registerfile_multi_banked
     23}; // end namespace registerfile
    2224}; // end namespace generic
    2325
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/src/Parameters.cpp

    r10 r15  
    66 */
    77
    8 #include "Behavioural/Generic/RegisterFile_Multi_Banked/include/Parameters.h"
     8#include "Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/include/Parameters.h"
    99
    1010namespace morpheo {
    1111namespace behavioural {
    1212namespace generic {
     13namespace registerfile {
    1314namespace registerfile_multi_banked {
    1415
     
    5152
    5253}; // end namespace registerfile_multi_banked
     54}; // end namespace registerfile
    5355}; // end namespace generic
    5456
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/src/Parameters_msg_error.cpp

    r10 r15  
    66 */
    77
    8 #include "Behavioural/Generic/RegisterFile_Multi_Banked/include/Parameters.h"
    9 #include "Behavioural/Generic/RegisterFile_Multi_Banked/include/Types.h"
     8#include "Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/include/Parameters.h"
     9#include "Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/include/Types.h"
    1010#include <sstream>
    1111using namespace std;
     
    1414namespace behavioural {
    1515namespace generic {
     16namespace registerfile {
    1617namespace registerfile_multi_banked {
    1718
     
    8182
    8283}; // end namespace registerfile_multi_banked
     84}; // end namespace registerfile
    8385}; // end namespace generic
    8486
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/src/Parameters_print.cpp

    r10 r15  
    66 */
    77
    8 #include "Behavioural/Generic/RegisterFile_Multi_Banked/include/Parameters.h"
     8#include "Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/include/Parameters.h"
    99#include "Behavioural/include/XML.h"
    1010using namespace std;
     
    1313namespace behavioural {
    1414namespace generic {
     15namespace registerfile{
    1516namespace registerfile_multi_banked {
    1617
     
    3637
    3738  ostream& operator<< (ostream& output_stream ,
    38                        morpheo::behavioural::generic::registerfile_multi_banked::Parameters & x)
     39                       morpheo::behavioural::generic::registerfile::registerfile_multi_banked::Parameters & x)
    3940  {
    4041    output_stream << x.print(0);
     
    4445
    4546}; // end namespace registerfile_multi_banked
     47}; // end namespace registerfile
    4648}; // end namespace generic
    4749
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/src/RegisterFile_Multi_Banked.cpp

    r10 r15  
    66 */
    77
    8 #include "Behavioural/Generic/RegisterFile_Multi_Banked/include/RegisterFile_Multi_Banked.h"
     8#include "Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/include/RegisterFile_Multi_Banked.h"
    99
    1010namespace morpheo                    {
    1111namespace behavioural {
    1212namespace generic {
     13namespace registerfile {
    1314namespace registerfile_multi_banked {
    1415
     
    2223                              morpheo::behavioural::Parameters_Statistics             param_statistics,
    2324#endif
    24                               morpheo::behavioural::generic::registerfile_multi_banked::Parameters param ):
     25                              morpheo::behavioural::generic::registerfile::registerfile_multi_banked::Parameters param ):
    2526                              _name              (name)
    2627                              ,_param            (param)
     
    109110
    110111}; // end namespace registerfile_multi_banked
     112}; // end namespace registerfile
    111113}; // end namespace generic
    112114
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/src/RegisterFile_Multi_Banked_allocation.cpp

    r10 r15  
    77 */
    88
    9 #include "Behavioural/Generic/RegisterFile_Multi_Banked/include/RegisterFile_Multi_Banked.h"
     9#include "Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/include/RegisterFile_Multi_Banked.h"
    1010
    1111namespace morpheo                    {
    1212namespace behavioural {
    1313namespace generic {
     14namespace registerfile{
    1415namespace registerfile_multi_banked {
    1516
     
    7475
    7576}; // end namespace registerfile_multi_banked
     77}; // end namespace registerfile
    7678}; // end namespace generic
    7779
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/src/RegisterFile_Multi_Banked_deallocation.cpp

    r10 r15  
    77 */
    88
    9 #include "Behavioural/Generic/RegisterFile_Multi_Banked/include/RegisterFile_Multi_Banked.h"
     9#include "Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/include/RegisterFile_Multi_Banked.h"
    1010
    1111namespace morpheo                    {
    1212namespace behavioural {
    1313namespace generic {
     14namespace registerfile{
    1415namespace registerfile_multi_banked {
    1516
     
    5859
    5960}; // end namespace registerfile_multi_banked
     61}; // end namespace registerfile
    6062}; // end namespace generic
    6163
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/src/RegisterFile_Multi_Banked_statistics.cpp

    r10 r15  
    77 */
    88
    9 #include "Behavioural/Generic/RegisterFile_Multi_Banked/include/RegisterFile_Multi_Banked.h"
     9#include "Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/include/RegisterFile_Multi_Banked.h"
    1010
    1111namespace morpheo {
    1212namespace behavioural {
    1313namespace generic {
     14namespace registerfile {
    1415namespace registerfile_multi_banked {
    1516
     
    2728
    2829}; // end namespace registerfile_multi_banked
     30}; // end namespace registerfile
    2931}; // end namespace generic
    3032
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/src/RegisterFile_Multi_Banked_transition.cpp

    r10 r15  
    88 */
    99
    10 #include "Behavioural/Generic/RegisterFile_Multi_Banked/include/RegisterFile_Multi_Banked.h"
     10#include "Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/include/RegisterFile_Multi_Banked.h"
    1111
    1212namespace morpheo                    {
    1313namespace behavioural {
    1414namespace generic {
     15namespace registerfile{
    1516namespace registerfile_multi_banked {
    1617
     
    3233
    3334}; // end namespace registerfile_multi_banked
     35}; // end namespace registerfile
    3436}; // end namespace generic
    3537
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/src/RegisterFile_Multi_Banked_vhdl.cpp

    r10 r15  
    77 */
    88
    9 #include "Behavioural/Generic/RegisterFile_Multi_Banked/include/RegisterFile_Multi_Banked.h"
     9#include "Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/include/RegisterFile_Multi_Banked.h"
    1010#include "Behavioural/include/Vhdl.h"
    1111
     
    1313namespace behavioural {
    1414namespace generic {
     15namespace registerfile{
    1516namespace registerfile_multi_banked {
    1617
     
    3334
    3435}; // end namespace registerfile_multi_banked
     36}; // end namespace registerfile
    3537}; // end namespace generic
    3638
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/src/RegisterFile_Multi_Banked_vhdl_body.cpp

    r10 r15  
    77 */
    88
    9 #include "Behavioural/Generic/RegisterFile_Multi_Banked/include/RegisterFile_Multi_Banked.h"
     9#include "Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/include/RegisterFile_Multi_Banked.h"
    1010
    1111namespace morpheo                    {
    1212namespace behavioural {
    1313namespace generic {
     14namespace registerfile{
    1415namespace registerfile_multi_banked {
    1516
     
    2324
    2425}; // end namespace registerfile_multi_banked
     26}; // end namespace registerfile
    2527}; // end namespace generic
    2628
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/src/RegisterFile_Multi_Banked_vhdl_declaration.cpp

    r10 r15  
    77 */
    88
    9 #include "Behavioural/Generic/RegisterFile_Multi_Banked/include/RegisterFile_Multi_Banked.h"
     9#include "Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/include/RegisterFile_Multi_Banked.h"
    1010
    1111namespace morpheo {
    1212namespace behavioural {
    1313namespace generic {
     14namespace registerfile{
    1415namespace registerfile_multi_banked {
    1516
     
    2223
    2324}; // end namespace registerfile_multi_banked
     25}; // end namespace registerfile
    2426}; // end namespace generic
    2527
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/src/RegisterFile_Multi_Banked_vhdl_port.cpp

    r10 r15  
    77 */
    88
    9 #include "Behavioural/Generic/RegisterFile_Multi_Banked/include/RegisterFile_Multi_Banked.h"
     9#include "Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/include/RegisterFile_Multi_Banked.h"
    1010
    1111namespace morpheo                    {
    1212namespace behavioural {
    1313namespace generic {
     14namespace registerfile {
    1415namespace registerfile_multi_banked {
    1516
     
    4950
    5051}; // end namespace registerfile_multi_banked
     52}; // end namespace registerfile
    5153}; // end namespace generic
    5254
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/src/RegisterFile_Multi_Banked_vhdl_testbench_label.cpp

    r10 r15  
    66 */
    77
    8 #include "Behavioural/Generic/RegisterFile_Multi_Banked/include/RegisterFile_Multi_Banked.h"
     8#include "Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/include/RegisterFile_Multi_Banked.h"
    99
    1010namespace morpheo                    {
    1111namespace behavioural {
    1212namespace generic {
     13namespace registerfile{
    1314namespace registerfile_multi_banked {
    14 
    1515
    1616  void RegisterFile_Multi_Banked::vhdl_testbench_label (string label)
     
    2626
    2727}; // end namespace registerfile_multi_banked
     28}; // end namespace registerfile
    2829}; // end namespace generic
    2930
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/src/RegisterFile_Multi_Banked_vhdl_testbench_transition.cpp

    r10 r15  
    77 */
    88
    9 #include "Behavioural/Generic/RegisterFile_Multi_Banked/include/RegisterFile_Multi_Banked.h"
     9#include "Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/include/RegisterFile_Multi_Banked.h"
    1010
    1111namespace morpheo                    {
    1212namespace behavioural {
    1313namespace generic {
     14namespace registerfile{
    1415namespace registerfile_multi_banked {
    1516
     
    5859
    5960}; // end namespace registerfile_multi_banked
     61}; // end namespace registerfile
    6062}; // end namespace generic
    6163
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/src/Statistics.cpp

    r10 r15  
    77 */
    88
    9 #include "Behavioural/Generic/RegisterFile_Multi_Banked/include/Statistics.h"
     9#include "Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/include/Statistics.h"
    1010
    1111namespace morpheo                    {
    1212namespace behavioural {
    1313namespace generic {
     14namespace registerfile{
    1415namespace registerfile_multi_banked {
    1516
     
    3334  };
    3435
     36}; // end namespace registerfile
    3537}; // end namespace registerfile_multi_banked
    3638}; // end namespace generic
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/src/Statistics_add.cpp

    r10 r15  
    77 */
    88
    9 #include "Behavioural/Generic/RegisterFile_Multi_Banked/include/Statistics.h"
     9#include "Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/include/Statistics.h"
    1010
    1111#include <sstream>
     
    1515namespace behavioural {
    1616namespace generic {
     17namespace registerfile{
    1718namespace registerfile_multi_banked {
    1819
     
    2526
    2627}; // end namespace registerfile_multi_banked
     28}; // end namespace registerfile
    2729}; // end namespace generic
    2830
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/src/Statistics_print.cpp

    r10 r15  
    77 */
    88
    9 #include "Behavioural/Generic/RegisterFile_Multi_Banked/include/Statistics.h"
     9#include "Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/include/Statistics.h"
    1010
    1111#include <sstream>
     
    1515namespace behavioural {
    1616namespace generic {
     17namespace registerfile{
    1718namespace registerfile_multi_banked {
    1819
     
    3536
    3637  ostream& operator<< (ostream& output_stream ,
    37                        morpheo::behavioural::generic::registerfile_multi_banked::Statistics & x)
     38                       morpheo::behavioural::generic::registerfile::registerfile_multi_banked::Statistics & x)
    3839  {
    3940    output_stream << x.print(0);
     
    4344
    4445}; // end namespace registerfile_multi_banked
     46}; // end namespace registerfile
    4547}; // end namespace generic
    4648
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/src/Statistics_print_body.cpp

    r10 r15  
    77 */
    88
    9 #include "Behavioural/Generic/RegisterFile_Multi_Banked/include/Statistics.h"
     9#include "Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/include/Statistics.h"
    1010
    1111#include <sstream>
     
    1515namespace behavioural {
    1616namespace generic {
     17namespace registerfile{
    1718namespace registerfile_multi_banked {
    1819
     
    3334
    3435}; // end namespace registerfile_multi_banked
     36}; // end namespace registerfile
    3537}; // end namespace generic
    3638
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Select/Select_Priority_Fixed/Makefile

    r10 r15  
    1111
    1212#-----[ Library ]------------------------------------------
    13 LIBRARY                         = $(DIR_LIB)/libPriority_Fixed.a
     13LIBRARY                         = $(DIR_LIB)/libSelect_Priority_Fixed.a
    1414
    1515
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Select/Select_Priority_Fixed/Makefile.deps

    r10 r15  
    1212endif
    1313
    14 Priority_Fixed                  = yes
     14Select_Priority_Fixed                   = yes
    1515
    1616#-----[ Library ]------------------------------------------
    17 Priority_Fixed_LIBRARY          =       -lPriority_Fixed        \
     17Select_Priority_Fixed_LIBRARY           =       -lSelect_Priority_Fixed \
    1818                                        $(Behavioural_LIBRARY) 
    1919
    20 Priority_Fixed_DIR_LIBRARY              =       -L$(DIR_MORPHEO)/Behavioural/Generic/Select/Priority_Fixed/lib  \
     20Select_Priority_Fixed_DIR_LIBRARY               =       -L$(DIR_MORPHEO)/Behavioural/Generic/Select/Select_Priority_Fixed/lib   \
    2121                                        $(Behavioural_DIR_LIBRARY)
    2222
    2323#-----[ Rules ]--------------------------------------------
    2424
    25 Priority_Fixed_library          :
     25Select_Priority_Fixed_library           :
    2626                                @$(MAKE) Behavioural_library
    27                                 @$(MAKE) --directory=$(DIR_MORPHEO)/Behavioural/Generic/Select/Priority_Fixed --makefile=Makefile
     27                                @$(MAKE) --directory=$(DIR_MORPHEO)/Behavioural/Generic/Select/Select_Priority_Fixed --makefile=Makefile
    2828       
    29 Priority_Fixed_library_clean    :
     29Select_Priority_Fixed_library_clean     :
    3030                                @$(MAKE) Behavioural_library_clean
    31                                 @$(MAKE) --directory=$(DIR_MORPHEO)/Behavioural/Generic/Select/Priority_Fixed --makefile=Makefile clean
     31                                @$(MAKE) --directory=$(DIR_MORPHEO)/Behavioural/Generic/Select/Select_Priority_Fixed --makefile=Makefile clean
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Select/Select_Priority_Fixed/SelfTest/Makefile

    r10 r15  
    1010DIR_MORPHEO                     = ../../../../..
    1111
    12 LIBRARY                         = $(Priority_Fixed_LIBRARY)
     12LIBRARY                         = $(Select_Priority_Fixed_LIBRARY)
    1313
    14 DIR_LIBRARY                     = $(Priority_Fixed_DIR_LIBRARY)
     14DIR_LIBRARY                     = $(Select_Priority_Fixed_DIR_LIBRARY)
    1515
    1616#-----[ include ]------------------------------------------
     
    1919                                @$(MAKE) all_selftest
    2020
    21 library                         : Priority_Fixed_library
     21library                         : Select_Priority_Fixed_library
    2222
    23 library_clean                   : Priority_Fixed_library_clean
     23library_clean                   : Select_Priority_Fixed_library_clean
    2424
    2525include                         ../Makefile.deps
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Select/Select_Priority_Fixed/SelfTest/configuration.cfg

    r10 r15  
    1 Priority_Fixed
     1Select_Priority_Fixed
    222       16      *2      # nb_entity
    330       1       +1      # encoding_one_hot
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Select/Select_Priority_Fixed/SelfTest/include/test.h

    r10 r15  
    1414#include <iostream>
    1515
    16 #include "Behavioural/Generic/Select/Priority_Fixed/include/Priority_Fixed.h"
     16#include "Behavioural/Generic/Select/Select_Priority_Fixed/include/Select_Priority_Fixed.h"
    1717
    1818using namespace std;
     
    2222using namespace morpheo::behavioural::generic::select;
    2323
    24 using namespace morpheo::behavioural::generic::select::priority_fixed;
     24using namespace morpheo::behavioural::generic::select::select_priority_fixed;
    2525
    2626void test    (string name,
    27               morpheo::behavioural::generic::select::priority_fixed::Parameters param);
     27              morpheo::behavioural::generic::select::select_priority_fixed::Parameters param);
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Select/Select_Priority_Fixed/SelfTest/mkf.info

    r10 r15  
    11
    2 # Priority_Fixed_0
    3 target_dep      all     Priority_Fixed_0.ngc
    4 target_dep      Priority_Fixed_0.ngc    Priority_Fixed_0.prj
    5 target_dep      Priority_Fixed_0.prj    Priority_Fixed_0_Pack.vhdl Priority_Fixed_0.vhdl
     2# Select_Priority_Fixed_0
     3target_dep      all     Select_Priority_Fixed_0.ngc
     4target_dep      Select_Priority_Fixed_0.ngc     Select_Priority_Fixed_0.prj
     5target_dep      Select_Priority_Fixed_0.prj     Select_Priority_Fixed_0_Pack.vhdl Select_Priority_Fixed_0.vhdl
    66
    7 # Priority_Fixed_1
    8 target_dep      all     Priority_Fixed_1.ngc
    9 target_dep      Priority_Fixed_1.ngc    Priority_Fixed_1.prj
    10 target_dep      Priority_Fixed_1.prj    Priority_Fixed_1_Pack.vhdl Priority_Fixed_1.vhdl
     7# Select_Priority_Fixed_1
     8target_dep      all     Select_Priority_Fixed_1.ngc
     9target_dep      Select_Priority_Fixed_1.ngc     Select_Priority_Fixed_1.prj
     10target_dep      Select_Priority_Fixed_1.prj     Select_Priority_Fixed_1_Pack.vhdl Select_Priority_Fixed_1.vhdl
    1111
    12 # Priority_Fixed_2
    13 target_dep      all     Priority_Fixed_2.ngc
    14 target_dep      Priority_Fixed_2.ngc    Priority_Fixed_2.prj
    15 target_dep      Priority_Fixed_2.prj    Priority_Fixed_2_Pack.vhdl Priority_Fixed_2.vhdl
     12# Select_Priority_Fixed_2
     13target_dep      all     Select_Priority_Fixed_2.ngc
     14target_dep      Select_Priority_Fixed_2.ngc     Select_Priority_Fixed_2.prj
     15target_dep      Select_Priority_Fixed_2.prj     Select_Priority_Fixed_2_Pack.vhdl Select_Priority_Fixed_2.vhdl
    1616
    17 # Priority_Fixed_3
    18 target_dep      all     Priority_Fixed_3.ngc
    19 target_dep      Priority_Fixed_3.ngc    Priority_Fixed_3.prj
    20 target_dep      Priority_Fixed_3.prj    Priority_Fixed_3_Pack.vhdl Priority_Fixed_3.vhdl
     17# Select_Priority_Fixed_3
     18target_dep      all     Select_Priority_Fixed_3.ngc
     19target_dep      Select_Priority_Fixed_3.ngc     Select_Priority_Fixed_3.prj
     20target_dep      Select_Priority_Fixed_3.prj     Select_Priority_Fixed_3_Pack.vhdl Select_Priority_Fixed_3.vhdl
    2121
    22 # Priority_Fixed_4
    23 target_dep      all     Priority_Fixed_4.ngc
    24 target_dep      Priority_Fixed_4.ngc    Priority_Fixed_4.prj
    25 target_dep      Priority_Fixed_4.prj    Priority_Fixed_4_Pack.vhdl Priority_Fixed_4.vhdl
     22# Select_Priority_Fixed_4
     23target_dep      all     Select_Priority_Fixed_4.ngc
     24target_dep      Select_Priority_Fixed_4.ngc     Select_Priority_Fixed_4.prj
     25target_dep      Select_Priority_Fixed_4.prj     Select_Priority_Fixed_4_Pack.vhdl Select_Priority_Fixed_4.vhdl
    2626
    27 # Priority_Fixed_5
    28 target_dep      all     Priority_Fixed_5.ngc
    29 target_dep      Priority_Fixed_5.ngc    Priority_Fixed_5.prj
    30 target_dep      Priority_Fixed_5.prj    Priority_Fixed_5_Pack.vhdl Priority_Fixed_5.vhdl
     27# Select_Priority_Fixed_5
     28target_dep      all     Select_Priority_Fixed_5.ngc
     29target_dep      Select_Priority_Fixed_5.ngc     Select_Priority_Fixed_5.prj
     30target_dep      Select_Priority_Fixed_5.prj     Select_Priority_Fixed_5_Pack.vhdl Select_Priority_Fixed_5.vhdl
    3131
    32 # Priority_Fixed_6
    33 target_dep      all     Priority_Fixed_6.ngc
    34 target_dep      Priority_Fixed_6.ngc    Priority_Fixed_6.prj
    35 target_dep      Priority_Fixed_6.prj    Priority_Fixed_6_Pack.vhdl Priority_Fixed_6.vhdl
     32# Select_Priority_Fixed_6
     33target_dep      all     Select_Priority_Fixed_6.ngc
     34target_dep      Select_Priority_Fixed_6.ngc     Select_Priority_Fixed_6.prj
     35target_dep      Select_Priority_Fixed_6.prj     Select_Priority_Fixed_6_Pack.vhdl Select_Priority_Fixed_6.vhdl
    3636
    37 # Priority_Fixed_7
    38 target_dep      all     Priority_Fixed_7.ngc
    39 target_dep      Priority_Fixed_7.ngc    Priority_Fixed_7.prj
    40 target_dep      Priority_Fixed_7.prj    Priority_Fixed_7_Pack.vhdl Priority_Fixed_7.vhdl
     37# Select_Priority_Fixed_7
     38target_dep      all     Select_Priority_Fixed_7.ngc
     39target_dep      Select_Priority_Fixed_7.ngc     Select_Priority_Fixed_7.prj
     40target_dep      Select_Priority_Fixed_7.prj     Select_Priority_Fixed_7_Pack.vhdl Select_Priority_Fixed_7.vhdl
    4141
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Select/Select_Priority_Fixed/SelfTest/src/main.cpp

    r10 r15  
    66 */
    77
    8 #include "Behavioural/Generic/Select/Priority_Fixed/SelfTest/include/test.h"
     8#include "Behavioural/Generic/Select/Select_Priority_Fixed/SelfTest/include/test.h"
    99
    1010#define NB_PARAMS 3
     
    4242  try
    4343    {
    44       morpheo::behavioural::generic::select::priority_fixed::Parameters param (nb_entity       ,
     44      morpheo::behavioural::generic::select::select_priority_fixed::Parameters param (nb_entity       ,
    4545                                                                               encoding_one_hot,
    4646                                                                               encoding_compact);
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Select/Select_Priority_Fixed/SelfTest/src/test.cpp

    r10 r15  
    99#define NB_ITERATION 512
    1010
    11 #include "Behavioural/Generic/Select/Priority_Fixed/SelfTest/include/test.h"
     11#include "Behavioural/Generic/Select/Select_Priority_Fixed/SelfTest/include/test.h"
    1212#include "Include/Test.h"
    1313
    1414void test (string name,
    15            morpheo::behavioural::generic::select::priority_fixed::Parameters _param)
     15           morpheo::behavioural::generic::select::select_priority_fixed::Parameters _param)
    1616{
    1717  cout << "<" << name << "> : Simulation SystemC" << endl;
    1818
    19   Priority_Fixed * _Priority_Fixed = new Priority_Fixed (name.c_str(),
     19  Select_Priority_Fixed * _Select_Priority_Fixed = new Select_Priority_Fixed (name.c_str(),
    2020#ifdef STATISTICS
    2121                                             morpheo::behavioural::Parameters_Statistics(5,50),
     
    2828   *********************************************************************/
    2929  sc_clock                         * CLOCK ;
     30  sc_signal<Tcontrol_t>            * NRESET;
    3031  sc_signal<Tcontrol_t>           ** VAL   ;
    3132  sc_signal<Tcontrol_t>           ** ACK   ;
     
    3637
    3738  CLOCK        = new sc_clock ("clock", 1.0, 0.5);
     39  NRESET       = new sc_signal<Tcontrol_t> ("NRESET");
    3840  VAL          = new sc_signal<Tcontrol_t> * [_param._nb_entity];
    3941  ACK          = new sc_signal<Tcontrol_t> * [_param._nb_entity];
     
    5456   ********************************************************/
    5557 
    56   cout << "<" << name << "> Instanciation of _Priority_Fixed" << endl;
     58  cout << "<" << name << "> Instanciation of _Select_Priority_Fixed" << endl;
    5759 
    58   (*(_Priority_Fixed->in_CLOCK))        (*(CLOCK));
     60  (*(_Select_Priority_Fixed->in_CLOCK ))       (*(CLOCK ));
     61  (*(_Select_Priority_Fixed->in_NRESET))       (*(NRESET));
     62
    5963    for (uint32_t i=0; i<_param._nb_entity; i++)
    6064      {
    61         (*(_Priority_Fixed-> in_VAL [i]))        (*(VAL [i]));
     65        (*(_Select_Priority_Fixed-> in_VAL [i]))        (*(VAL [i]));
    6266        if (_param._encoding_one_hot)
    63         (*(_Priority_Fixed->out_ACK [i]))        (*(ACK [i]));
     67        (*(_Select_Priority_Fixed->out_ACK [i]))        (*(ACK [i]));
    6468      }
    6569    if (_param._encoding_compact)
    6670      {
    67     (*(_Priority_Fixed->out_ENTITY    ))        (*(ENTITY    ));
    68     (*(_Priority_Fixed->out_ENTITY_ACK))        (*(ENTITY_ACK));
     71    (*(_Select_Priority_Fixed->out_ENTITY    ))        (*(ENTITY    ));
     72    (*(_Select_Priority_Fixed->out_ENTITY_ACK))        (*(ENTITY_ACK));
    6973      }
    7074  /********************************************************
     
    8690 
    8791  sc_start(0);
    88 //_Priority_Fixed->vhdl_testbench_label("Initialisation");
     92//_Select_Priority_Fixed->vhdl_testbench_label("Initialisation");
    8993//cout << "{"+toString(static_cast<uint32_t>(sc_simulation_time()))+"} Initialisation" << endl;
    9094
    91   _Priority_Fixed->vhdl_testbench_label("Loop of Test");
     95  _Select_Priority_Fixed->vhdl_testbench_label("Loop of Test");
    9296  cout << "{"+toString(static_cast<uint32_t>(sc_simulation_time()))+"} Loop of Test" << endl;
    9397
    9498  for (uint32_t iteration=0; iteration<NB_ITERATION; iteration ++)
    9599    {
    96       _Priority_Fixed->vhdl_testbench_label("Iteration "+toString(iteration));
     100      _Select_Priority_Fixed->vhdl_testbench_label("Iteration "+toString(iteration));
    97101
    98102      entity    = 0;
     
    133137  cout << "<" << name << "> ............ Stop Simulation" << endl;
    134138
     139  delete CLOCK;
     140  delete NRESET;
    135141
    136 
    137   delete CLOCK;
    138 
     142  for (uint32_t i=0; i<_param._nb_entity; i++)
     143    {
     144      delete VAL [i];
     145      delete ACK [i];
     146    }
     147 
     148  delete VAL       ;
     149  delete ACK       ;
     150  delete ENTITY    ;
     151  delete ENTITY_ACK;
    139152#endif
    140153
    141   delete _Priority_Fixed;
     154  delete _Select_Priority_Fixed;
    142155}
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Select/Select_Priority_Fixed/include/Parameters.h

    r10 r15  
    1 #ifndef morpheo_behavioural_generic_select_priority_fixed_Parameters_h
    2 #define morpheo_behavioural_generic_select_priority_fixed_Parameters_h
     1#ifndef morpheo_behavioural_generic_select_select_priority_fixed_Parameters_h
     2#define morpheo_behavioural_generic_select_select_priority_fixed_Parameters_h
    33
    44/*
     
    1717namespace generic {
    1818namespace select {
    19 namespace priority_fixed {
     19namespace select_priority_fixed {
    2020
    2121  class Parameters : public morpheo::behavioural::Parameters
     
    3838  public :        string   print      (uint32_t depth);
    3939  public : friend ostream& operator<< (ostream& output_stream,
    40                                        morpheo::behavioural::generic::select::priority_fixed::Parameters & x);
     40                                       morpheo::behavioural::generic::select::select_priority_fixed::Parameters & x);
    4141  };
    4242
    43 }; // end namespace priority_fixed
     43}; // end namespace select_priority_fixed
    4444}; // end namespace select
    4545}; // end namespace generic
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Select/Select_Priority_Fixed/include/Select_Priority_Fixed.h

    r10 r15  
    1 #ifndef morpheo_behavioural_generic_select_priority_fixed_Priority_Fixed_h
    2 #define morpheo_behavioural_generic_select_priority_fixed_Priority_Fixed_h
     1#ifndef morpheo_behavioural_generic_select_select_priority_fixed_Select_Priority_Fixed_h
     2#define morpheo_behavioural_generic_select_select_priority_fixed_Select_Priority_Fixed_h
    33
    44/*
     
    1717#include "Include/Debug.h"
    1818
    19 #include "Behavioural/Generic/Select/Priority_Fixed/include/Parameters.h"
    20 #include "Behavioural/Generic/Select/Priority_Fixed/include/Types.h"
     19#include "Behavioural/Generic/Select/Select_Priority_Fixed/include/Parameters.h"
     20#include "Behavioural/Generic/Select/Select_Priority_Fixed/include/Types.h"
    2121#ifdef STATISTICS
    22 #include "Behavioural/Generic/Select/Priority_Fixed/include/Statistics.h"
     22#include "Behavioural/Generic/Select/Select_Priority_Fixed/include/Statistics.h"
    2323#endif
    2424#ifdef VHDL
     
    3535namespace generic {
    3636namespace select {
    37 namespace priority_fixed {
     37namespace select_priority_fixed {
    3838
    3939
    40   class Priority_Fixed
     40  class Select_Priority_Fixed
    4141#if SYSTEMC
    4242    : public sc_module
     
    6565
    6666  public    : SC_CLOCK                      *  in_CLOCK        ;
     67  public    : SC_IN (Tcontrol_t)            *  in_NRESET       ;
     68
    6769  public    : SC_IN (Tcontrol_t)           **  in_VAL          ;
    6870  public    : SC_OUT(Tcontrol_t)           ** out_ACK          ;
     
    8082
    8183#ifdef SYSTEMC
    82     SC_HAS_PROCESS (Priority_Fixed);
     84    SC_HAS_PROCESS (Select_Priority_Fixed);
    8385#endif
    84   public  :          Priority_Fixed              (
     86  public  :          Select_Priority_Fixed              (
    8587#ifdef SYSTEMC
    8688                                              sc_module_name                              name,
     
    9395                                              Parameters                                  param );
    9496                                               
    95   public  :          Priority_Fixed              (Parameters param );
    96   public  :          ~Priority_Fixed             (void);
     97  public  :          Select_Priority_Fixed              (Parameters param );
     98  public  :          ~Select_Priority_Fixed             (void);
    9799                                               
    98100#ifdef SYSTEMC                                 
     
    122124  };
    123125
    124 }; // end namespace priority_fixed
     126}; // end namespace select_priority_fixed
    125127}; // end namespace select
    126128}; // end namespace generic
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Select/Select_Priority_Fixed/include/Statistics.h

    r10 r15  
    11#ifdef STATISTICS
    2 #ifndef morpheo_behavioural_generic_select_priority_fixed_Statistics_h
    3 #define morpheo_behavioural_generic_select_priority_fixed_Statistics_h
     2#ifndef morpheo_behavioural_generic_select_select_priority_fixed_Statistics_h
     3#define morpheo_behavioural_generic_select_select_priority_fixed_Statistics_h
    44
    55/*
     
    1414#include "Behavioural/include/Parameters_Statistics.h"
    1515//#include "Behavioural/Generic/Group/include/Statistics.h"
    16 #include "Behavioural/Generic/Select/Priority_Fixed/include/Parameters.h"
     16#include "Behavioural/Generic/Select/Select_Priority_Fixed/include/Parameters.h"
    1717
    1818//using namespace morpheo::behavioural::generic::group;
     
    2222namespace generic {
    2323namespace select {
    24 namespace priority_fixed {
     24namespace select_priority_fixed {
    2525
    2626
     
    4747  };
    4848
    49 }; // end namespace priority_fixed
     49}; // end namespace select_priority_fixed
    5050}; // end namespace select
    5151}; // end namespace generic
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Select/Select_Priority_Fixed/include/Types.h

    r10 r15  
    1 #ifndef morpheo_behavioural_generic_select_priority_fixed_Type_h
    2 #define morpheo_behavioural_generic_select_priority_fixed_Type_h
     1#ifndef morpheo_behavioural_generic_select_select_priority_fixed_Type_h
     2#define morpheo_behavioural_generic_select_select_priority_fixed_Type_h
    33
    44/*
     
    1515namespace generic {
    1616namespace select {
    17 namespace priority_fixed {
     17namespace select_priority_fixed {
    1818
    1919  typedef uint32_t Tentity_t;
    2020
    21 }; // end namespace priority_fixed
     21}; // end namespace select_priority_fixed
    2222}; // end namespace select
    2323}; // end namespace generic
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Select/Select_Priority_Fixed/src/Parameters.cpp

    r10 r15  
    66 */
    77
    8 #include "Behavioural/Generic/Select/Priority_Fixed/include/Parameters.h"
     8#include "Behavioural/Generic/Select/Select_Priority_Fixed/include/Parameters.h"
    99
    1010namespace morpheo {
     
    1212namespace generic {
    1313namespace select {
    14 namespace priority_fixed {
     14namespace select_priority_fixed {
    1515
    1616
     
    2323    _size_entity (static_cast<uint32_t> (ceil(log2(nb_entity))))
    2424  {
    25     log_printf(FUNC,Priority_Fixed,"Parameters","Begin");
     25    log_printf(FUNC,Select_Priority_Fixed,"Parameters","Begin");
    2626    test();
    27     log_printf(FUNC,Priority_Fixed,"Parameters","End");
     27    log_printf(FUNC,Select_Priority_Fixed,"Parameters","End");
    2828  };
    2929 
     
    3434    _size_entity      (param._size_entity     )
    3535  {
    36     log_printf(FUNC,Priority_Fixed,"Parameters","Begin");
     36    log_printf(FUNC,Select_Priority_Fixed,"Parameters","Begin");
    3737    test();
    38     log_printf(FUNC,Priority_Fixed,"Parameters","End");
     38    log_printf(FUNC,Select_Priority_Fixed,"Parameters","End");
    3939  };
    4040
    4141  Parameters::~Parameters ()
    4242  {
    43     log_printf(FUNC,Priority_Fixed,"~Parameters","Begin");
    44     log_printf(FUNC,Priority_Fixed,"~Parameters","End");
     43    log_printf(FUNC,Select_Priority_Fixed,"~Parameters","Begin");
     44    log_printf(FUNC,Select_Priority_Fixed,"~Parameters","End");
    4545  };
    4646
    47 }; // end namespace priority_fixed
     47}; // end namespace select_priority_fixed
    4848}; // end namespace select
    4949}; // end namespace generic
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Select/Select_Priority_Fixed/src/Parameters_msg_error.cpp

    r10 r15  
    66 */
    77
    8 #include "Behavioural/Generic/Select/Priority_Fixed/include/Parameters.h"
    9 #include "Behavioural/Generic/Select/Priority_Fixed/include/Types.h"
     8#include "Behavioural/Generic/Select/Select_Priority_Fixed/include/Parameters.h"
     9#include "Behavioural/Generic/Select/Select_Priority_Fixed/include/Types.h"
    1010#include <sstream>
    1111using namespace std;
     
    1515namespace generic {
    1616namespace select {
    17 namespace priority_fixed {
     17namespace select_priority_fixed {
    1818
    1919
    2020  string Parameters::msg_error(void)
    2121  {
    22     log_printf(FUNC,Priority_Fixed,"msg_error","Begin");
     22    log_printf(FUNC,Select_Priority_Fixed,"msg_error","Begin");
    2323
    2424    string msg = "";
     
    3333    return msg;
    3434
    35     log_printf(FUNC,Priority_Fixed,"msg_error","End");
     35    log_printf(FUNC,Select_Priority_Fixed,"msg_error","End");
    3636  };
    3737
    38 }; // end namespace priority_fixed
     38}; // end namespace select_priority_fixed
    3939}; // end namespace select
    4040}; // end namespace generic
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Select/Select_Priority_Fixed/src/Parameters_print.cpp

    r10 r15  
    66 */
    77
    8 #include "Behavioural/Generic/Select/Priority_Fixed/include/Parameters.h"
     8#include "Behavioural/Generic/Select/Select_Priority_Fixed/include/Parameters.h"
    99#include "Behavioural/include/XML.h"
    1010using namespace std;
     
    1414namespace generic {
    1515namespace select {
    16 namespace priority_fixed {
     16namespace select_priority_fixed {
    1717
    1818  string Parameters::print (uint32_t depth)
    1919  {
    20     log_printf(FUNC,Priority_Fixed,"print","Begin");
     20    log_printf(FUNC,Select_Priority_Fixed,"print","Begin");
    2121
    22     XML xml ("priority_fixed");
     22    XML xml ("select_priority_fixed");
    2323
    24     xml.balise_open("priority_fixed");
     24    xml.balise_open("select_priority_fixed");
    2525    xml.singleton_begin("nb_entity       "); xml.attribut("value",toString(_nb_entity       )); xml.singleton_end();
    2626    xml.singleton_begin("encoding_one_hot"); xml.attribut("value",toString(_encoding_one_hot)); xml.singleton_end();
     
    2828    xml.balise_close();
    2929
    30     log_printf(FUNC,Priority_Fixed,"print","End");
     30    log_printf(FUNC,Select_Priority_Fixed,"print","End");
    3131   
    3232    return xml.get_body(depth);
     
    3434
    3535  ostream& operator<< (ostream& output_stream ,
    36                        morpheo::behavioural::generic::select::priority_fixed::Parameters & x)
     36                       morpheo::behavioural::generic::select::select_priority_fixed::Parameters & x)
    3737  {
    3838    output_stream << x.print(0);
     
    4141  };
    4242
    43 }; // end namespace priority_fixed
     43}; // end namespace select_priority_fixed
    4444}; // end namespace select
    4545}; // end namespace generic
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Select/Select_Priority_Fixed/src/Select_Priority_Fixed.cpp

    r10 r15  
    66 */
    77
    8 #include "Behavioural/Generic/Select/Priority_Fixed/include/Priority_Fixed.h"
     8#include "Behavioural/Generic/Select/Select_Priority_Fixed/include/Select_Priority_Fixed.h"
    99
    1010namespace morpheo                    {
     
    1212namespace generic {
    1313namespace select {
    14 namespace priority_fixed {
     14namespace select_priority_fixed {
    1515
    1616
    1717#ifdef SYSTEMC
    18   Priority_Fixed::Priority_Fixed (sc_module_name name,
     18  Select_Priority_Fixed::Select_Priority_Fixed (sc_module_name name,
    1919#else
    20   Priority_Fixed::Priority_Fixed (string name,
     20  Select_Priority_Fixed::Select_Priority_Fixed (string name,
    2121#endif
    2222#ifdef STATISTICS
    2323                              morpheo::behavioural::Parameters_Statistics             param_statistics,
    2424#endif
    25                               morpheo::behavioural::generic::select::priority_fixed::Parameters param ):
     25                              morpheo::behavioural::generic::select::select_priority_fixed::Parameters param ):
    2626                              _name              (name)
    2727                              ,_param            (param)
     
    3030// #endif
    3131  {
    32     log_printf(FUNC,Priority_Fixed,"Priority_Fixed","Begin");
     32    log_printf(FUNC,Select_Priority_Fixed,"Select_Priority_Fixed","Begin");
    3333
    3434#ifdef STATISTICS
    35     log_printf(INFO,Priority_Fixed,"Priority_Fixed","Allocation of statistics");
     35    log_printf(INFO,Select_Priority_Fixed,"Select_Priority_Fixed","Allocation of statistics");
    3636
    3737    // Allocation of statistics
     
    4242
    4343#ifdef VHDL_TESTBENCH
    44     log_printf(INFO,Priority_Fixed,"Priority_Fixed","Creation of a testbench");
     44    log_printf(INFO,Select_Priority_Fixed,"Select_Priority_Fixed","Creation of a testbench");
    4545
    4646    // Creation of a testbench
     
    5353#ifdef VHDL
    5454    // generate the vhdl
    55     log_printf(INFO,Priority_Fixed,"Priority_Fixed","Generate the vhdl");
     55    log_printf(INFO,Select_Priority_Fixed,"Select_Priority_Fixed","Generate the vhdl");
    5656
    5757    vhdl();
     
    5959
    6060#ifdef VHDL_TESTBENCH
    61     _vhdl_testbench->set_clock    ("in_CLOCK",false);
     61    _vhdl_testbench->set_clock    ("in_CLOCK",true);
    6262#endif
    6363
    6464#ifdef SYSTEMC
    65     log_printf(INFO,Priority_Fixed,"Priority_Fixed","Allocation");
     65    log_printf(INFO,Select_Priority_Fixed,"Select_Priority_Fixed","Allocation");
    6666
    6767    allocation ();
    6868
    6969#if defined(STATISTICS) or defined(VHDL_TESTBENCH)
    70     log_printf(INFO,Priority_Fixed,"Priority_Fixed","Method - transition");
     70    log_printf(INFO,Select_Priority_Fixed,"Select_Priority_Fixed","Method - transition");
    7171
    7272    SC_METHOD (transition);
     
    7575#endif
    7676
    77     log_printf(INFO,Priority_Fixed,"Priority_Fixed","Method - genMealy_entity");
     77    log_printf(INFO,Select_Priority_Fixed,"Select_Priority_Fixed","Method - genMealy_entity");
    7878
    7979    SC_METHOD (genMealy_entity);
     
    100100
    101101#endif
    102     log_printf(FUNC,Priority_Fixed,"Priority_Fixed","End");
     102    log_printf(FUNC,Select_Priority_Fixed,"Select_Priority_Fixed","End");
    103103  };
    104104 
    105   Priority_Fixed::~Priority_Fixed (void)
     105  Select_Priority_Fixed::~Select_Priority_Fixed (void)
    106106  {
    107     log_printf(FUNC,Priority_Fixed,"~Priority_Fixed","Begin");
     107    log_printf(FUNC,Select_Priority_Fixed,"~Select_Priority_Fixed","Begin");
    108108
    109109#ifdef VHDL_TESTBENCH
    110     log_printf(INFO,Priority_Fixed,"~Priority_Fixed","Generate Testbench  file");
     110    log_printf(INFO,Select_Priority_Fixed,"~Select_Priority_Fixed","Generate Testbench  file");
    111111
    112112    // generate the test bench
     
    116116
    117117#ifdef STATISTICS
    118     log_printf(INFO,Priority_Fixed,"~Priority_Fixed","Generate Statistics file");
     118    log_printf(INFO,Select_Priority_Fixed,"~Select_Priority_Fixed","Generate Statistics file");
    119119
    120120    _stat->generate_file(statistics(0));
     
    124124
    125125#ifdef SYSTEMC
    126     log_printf(INFO,Priority_Fixed,"~Priority_Fixed","Deallocation");
     126    log_printf(INFO,Select_Priority_Fixed,"~Select_Priority_Fixed","Deallocation");
    127127
    128128    deallocation ();
    129129#endif
    130130
    131     log_printf(FUNC,Priority_Fixed,"~Priority_Fixed","End");
     131    log_printf(FUNC,Select_Priority_Fixed,"~Select_Priority_Fixed","End");
    132132  };
    133133
    134 }; // end namespace priority_fixed
     134}; // end namespace select_priority_fixed
    135135}; // end namespace select
    136136}; // end namespace generic
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Select/Select_Priority_Fixed/src/Select_Priority_Fixed_allocation.cpp

    r10 r15  
    77 */
    88
    9 #include "Behavioural/Generic/Select/Priority_Fixed/include/Priority_Fixed.h"
     9#include "Behavioural/Generic/Select/Select_Priority_Fixed/include/Select_Priority_Fixed.h"
    1010
    1111namespace morpheo                    {
     
    1313namespace generic {
    1414namespace select {
    15 namespace priority_fixed {
     15namespace select_priority_fixed {
    1616
    1717
    18   void Priority_Fixed::allocation (void)
     18  void Select_Priority_Fixed::allocation (void)
    1919  {
    2020    string rename;
    2121
    22     log_printf(FUNC,Priority_Fixed,"allocation","Begin");
     22    log_printf(FUNC,Select_Priority_Fixed,"allocation","Begin");
    2323
    24 #if defined(STATISTICS) or defined(VHDL_TESTBENCH)
    25      in_CLOCK        = new SC_CLOCK           ("in_CLOCK");
    26 #endif
    27    
     24     in_CLOCK        = new SC_CLOCK           ("in_CLOCK ");
     25     in_NRESET       = new SC_IN (Tcontrol_t) ("in_NRESET");
     26
    2827     in_VAL          = new SC_IN (Tcontrol_t)           * [_param._nb_entity];
    2928    if (_param._encoding_one_hot)
     
    4948    // ~~~~~[ Component ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~   
    5049
    51     log_printf(FUNC,Priority_Fixed,"allocation","End");
     50    log_printf(FUNC,Select_Priority_Fixed,"allocation","End");
    5251  };
    5352
    54 }; // end namespace priority_fixed
     53}; // end namespace select_priority_fixed
    5554}; // end namespace select
    5655}; // end namespace generic
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Select/Select_Priority_Fixed/src/Select_Priority_Fixed_deallocation.cpp

    r10 r15  
    77 */
    88
    9 #include "Behavioural/Generic/Select/Priority_Fixed/include/Priority_Fixed.h"
     9#include "Behavioural/Generic/Select/Select_Priority_Fixed/include/Select_Priority_Fixed.h"
    1010
    1111namespace morpheo                    {
     
    1313namespace generic {
    1414namespace select {
    15 namespace priority_fixed {
     15namespace select_priority_fixed {
    1616
    1717
    18   void Priority_Fixed::deallocation (void)
     18  void Select_Priority_Fixed::deallocation (void)
    1919  {
    20     log_printf(FUNC,Priority_Fixed,"deallocation","Begin");
     20    log_printf(FUNC,Select_Priority_Fixed,"deallocation","Begin");
    2121
    22 //#if defined(STATISTICS) or defined(VHDL_TESTBENCH)
    2322    delete in_CLOCK;
    24 //#endif
     23    delete in_NRESET;
    2524
    2625    for (uint32_t i=0; i<_param._nb_entity; i++)
     
    4140    // ~~~~~[ Component ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~   
    4241
    43     log_printf(FUNC,Priority_Fixed,"deallocation","End");
     42    log_printf(FUNC,Select_Priority_Fixed,"deallocation","End");
    4443  };
    4544
    46 }; // end namespace priority_fixed
     45}; // end namespace select_priority_fixed
    4746}; // end namespace select
    4847}; // end namespace generic
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Select/Select_Priority_Fixed/src/Select_Priority_Fixed_genMealy_entity.cpp

    r10 r15  
    88 */
    99
    10 #include "Behavioural/Generic/Select/Priority_Fixed/include/Priority_Fixed.h"
     10#include "Behavioural/Generic/Select/Select_Priority_Fixed/include/Select_Priority_Fixed.h"
    1111
    1212namespace morpheo                    {
     
    1414namespace generic {
    1515namespace select {
    16 namespace priority_fixed {
     16namespace select_priority_fixed {
    1717
    1818
    19   void Priority_Fixed::genMealy_entity (void)
     19  void Select_Priority_Fixed::genMealy_entity (void)
    2020  {
    21     log_printf(FUNC,Priority_Fixed,"genMealy_entity","Begin");
     21    log_printf(FUNC,Select_Priority_Fixed,"genMealy_entity","Begin");
    2222
    2323    // init
     
    3131      ack [i] = 0;
    3232
    33     log_printf(TRACE,Priority_Fixed,"genMealy_entity","Scearch...");
     33    log_printf(TRACE,Select_Priority_Fixed,"genMealy_entity","Scearch...");
    3434    for (entity=0; entity<_param._nb_entity; entity++)
    3535      {
    3636        if (PORT_READ(in_VAL [entity]) == 1)
    3737          {
    38             log_printf(TRACE,Priority_Fixed,"genMealy_entity","Find! entity %d",entity);
     38            log_printf(TRACE,Select_Priority_Fixed,"genMealy_entity","Find! entity %d",entity);
    3939            if (_param._encoding_one_hot)
    4040              ack [entity] = 1;
     
    5454        PORT_WRITE(out_ENTITY_ACK,  find                );
    5555      }
    56     log_printf(FUNC,Priority_Fixed,"genMealy_entity","End");
     56    log_printf(FUNC,Select_Priority_Fixed,"genMealy_entity","End");
    5757  };
    5858
    59 }; // end namespace priority_fixed
     59}; // end namespace select_priority_fixed
    6060}; // end namespace select
    6161}; // end namespace generic
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Select/Select_Priority_Fixed/src/Select_Priority_Fixed_statistics.cpp

    r10 r15  
    77 */
    88
    9 #include "Behavioural/Generic/Select/Priority_Fixed/include/Priority_Fixed.h"
     9#include "Behavioural/Generic/Select/Select_Priority_Fixed/include/Select_Priority_Fixed.h"
    1010
    1111namespace morpheo {
     
    1313namespace generic {
    1414namespace select {
    15 namespace priority_fixed {
     15namespace select_priority_fixed {
    1616
    1717
    18   string Priority_Fixed::statistics (uint32_t depth)
     18  string Select_Priority_Fixed::statistics (uint32_t depth)
    1919  {
    20     log_printf(FUNC,Priority_Fixed,"statistics","Begin");
     20    log_printf(FUNC,Select_Priority_Fixed,"statistics","Begin");
    2121
    2222    string txt = _stat->print(depth);
    2323   
    24     log_printf(FUNC,Priority_Fixed,"statistics","End");
     24    log_printf(FUNC,Select_Priority_Fixed,"statistics","End");
    2525
    2626    return txt;
    2727  };
    2828
    29 }; // end namespace priority_fixed
     29}; // end namespace select_priority_fixed
    3030}; // end namespace select
    3131}; // end namespace generic
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Select/Select_Priority_Fixed/src/Select_Priority_Fixed_transition.cpp

    r10 r15  
    88 */
    99
    10 #include "Behavioural/Generic/Select/Priority_Fixed/include/Priority_Fixed.h"
     10#include "Behavioural/Generic/Select/Select_Priority_Fixed/include/Select_Priority_Fixed.h"
    1111
    1212namespace morpheo                    {
     
    1414namespace generic {
    1515namespace select {
    16 namespace priority_fixed {
     16namespace select_priority_fixed {
    1717
    1818
    19   void Priority_Fixed::transition (void)
     19  void Select_Priority_Fixed::transition (void)
    2020  {
    21     log_printf(FUNC,Priority_Fixed,"transition","Begin");
     21    log_printf(FUNC,Select_Priority_Fixed,"transition","Begin");
    2222
    2323#ifdef STATISTICS
     
    2929#endif
    3030
    31     log_printf(FUNC,Priority_Fixed,"transition","End");
     31    log_printf(FUNC,Select_Priority_Fixed,"transition","End");
    3232  };
    3333
    34 }; // end namespace priority_fixed
     34}; // end namespace select_priority_fixed
    3535}; // end namespace select
    3636}; // end namespace generic
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Select/Select_Priority_Fixed/src/Select_Priority_Fixed_vhdl.cpp

    r10 r15  
    77 */
    88
    9 #include "Behavioural/Generic/Select/Priority_Fixed/include/Priority_Fixed.h"
     9#include "Behavioural/Generic/Select/Select_Priority_Fixed/include/Select_Priority_Fixed.h"
    1010#include "Behavioural/include/Vhdl.h"
    1111
     
    1414namespace generic {
    1515namespace select {
    16 namespace priority_fixed {
     16namespace select_priority_fixed {
    1717
    1818
    19   void Priority_Fixed::vhdl (void)
     19  void Select_Priority_Fixed::vhdl (void)
    2020  {
    21     log_printf(FUNC,Priority_Fixed,"vhdl","Begin");
     21    log_printf(FUNC,Select_Priority_Fixed,"vhdl","Begin");
    2222    Vhdl vhdl (_name);
    2323
     
    2929
    3030    vhdl.generate_file();
    31     log_printf(FUNC,Priority_Fixed,"vhdl","End");
     31    log_printf(FUNC,Select_Priority_Fixed,"vhdl","End");
    3232
    3333  };
    3434
    35 }; // end namespace priority_fixed
     35}; // end namespace select_priority_fixed
    3636}; // end namespace select
    3737}; // end namespace generic
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Select/Select_Priority_Fixed/src/Select_Priority_Fixed_vhdl_body.cpp

    r10 r15  
    77 */
    88
    9 #include "Behavioural/Generic/Select/Priority_Fixed/include/Priority_Fixed.h"
     9#include "Behavioural/Generic/Select/Select_Priority_Fixed/include/Select_Priority_Fixed.h"
    1010
    1111namespace morpheo                    {
     
    1313namespace generic {
    1414namespace select {
    15 namespace priority_fixed {
     15namespace select_priority_fixed {
    1616
    1717
    18   void Priority_Fixed::vhdl_body (Vhdl & vhdl)
     18  void Select_Priority_Fixed::vhdl_body (Vhdl & vhdl)
    1919  {
    20     log_printf(FUNC,Priority_Fixed,"vhdl_body","Begin");
     20    log_printf(FUNC,Select_Priority_Fixed,"vhdl_body","Begin");
    2121    vhdl.set_body ("");
    2222
     
    4242      }   
    4343   
    44     log_printf(FUNC,Priority_Fixed,"vhdl_body","End");
     44    log_printf(FUNC,Select_Priority_Fixed,"vhdl_body","End");
    4545  };
    4646
    47 }; // end namespace priority_fixed
     47}; // end namespace select_priority_fixed
    4848}; // end namespace select
    4949}; // end namespace generic
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Select/Select_Priority_Fixed/src/Select_Priority_Fixed_vhdl_declaration.cpp

    r10 r15  
    77 */
    88
    9 #include "Behavioural/Generic/Select/Priority_Fixed/include/Priority_Fixed.h"
     9#include "Behavioural/Generic/Select/Select_Priority_Fixed/include/Select_Priority_Fixed.h"
    1010
    1111namespace morpheo {
     
    1313namespace generic {
    1414namespace select {
    15 namespace priority_fixed {
     15namespace select_priority_fixed {
    1616
    1717
    18   void Priority_Fixed::vhdl_declaration (Vhdl & vhdl)
     18  void Select_Priority_Fixed::vhdl_declaration (Vhdl & vhdl)
    1919  {
    20     log_printf(FUNC,Priority_Fixed,"vhdl_declaration","Begin");
     20    log_printf(FUNC,Select_Priority_Fixed,"vhdl_declaration","Begin");
    2121
    2222    vhdl.set_signal("internal_entity",_param._size_entity+1);
    2323
    24     log_printf(FUNC,Priority_Fixed,"vhdl_declaration","End");
     24    log_printf(FUNC,Select_Priority_Fixed,"vhdl_declaration","End");
    2525  };
    2626
    27 }; // end namespace priority_fixed
     27}; // end namespace select_priority_fixed
    2828}; // end namespace select
    2929}; // end namespace generic
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Select/Select_Priority_Fixed/src/Select_Priority_Fixed_vhdl_port.cpp

    r10 r15  
    77 */
    88
    9 #include "Behavioural/Generic/Select/Priority_Fixed/include/Priority_Fixed.h"
     9#include "Behavioural/Generic/Select/Select_Priority_Fixed/include/Select_Priority_Fixed.h"
    1010
    1111#ifdef VHDL_TESTBENCH
     
    1919namespace generic {
    2020namespace select {
    21 namespace priority_fixed {
     21namespace select_priority_fixed {
    2222
    2323
    24   void Priority_Fixed::vhdl_port (Vhdl & vhdl)
     24  void Select_Priority_Fixed::vhdl_port (Vhdl & vhdl)
    2525  {
    26     log_printf(FUNC,Priority_Fixed,"vhdl_port","Begin");
     26    log_printf(FUNC,Select_Priority_Fixed,"vhdl_port","Begin");
    2727
     28    vhdl.set_port (" in_CLOCK ", IN, 1);
     29    VHDL_SET_PORT (" in_NRESET", IN, 1);
     30       
    2831    for (uint32_t i=0; i<_param._nb_entity; i++)
    2932      {
     
    3740    VHDL_SET_PORT ("out_ENTITY_ACK",OUT,1);
    3841      }
    39     log_printf(FUNC,Priority_Fixed,"vhdl_port","End");
     42    log_printf(FUNC,Select_Priority_Fixed,"vhdl_port","End");
    4043  };
    4144
    42 }; // end namespace priority_fixed
     45}; // end namespace select_priority_fixed
    4346}; // end namespace select
    4447}; // end namespace generic
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Select/Select_Priority_Fixed/src/Select_Priority_Fixed_vhdl_testbench_label.cpp

    r10 r15  
    66 */
    77
    8 #include "Behavioural/Generic/Select/Priority_Fixed/include/Priority_Fixed.h"
     8#include "Behavioural/Generic/Select/Select_Priority_Fixed/include/Select_Priority_Fixed.h"
    99
    1010namespace morpheo                    {
     
    1212namespace generic {
    1313namespace select {
    14 namespace priority_fixed {
     14namespace select_priority_fixed {
    1515
    1616
    17   void Priority_Fixed::vhdl_testbench_label (string label)
     17  void Select_Priority_Fixed::vhdl_testbench_label (string label)
    1818  {
    19     log_printf(FUNC,Priority_Fixed,"vhdl_testbench_label","Begin");
     19    log_printf(FUNC,Select_Priority_Fixed,"vhdl_testbench_label","Begin");
    2020
    2121#ifdef VHDL_TESTBENCH
     
    2323#endif
    2424   
    25     log_printf(FUNC,Priority_Fixed,"vhdl_testbench_label","End");
     25    log_printf(FUNC,Select_Priority_Fixed,"vhdl_testbench_label","End");
    2626  };
    2727
    28 }; // end namespace priority_fixed
     28}; // end namespace select_priority_fixed
    2929}; // end namespace select
    3030}; // end namespace generic
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Select/Select_Priority_Fixed/src/Select_Priority_Fixed_vhdl_testbench_transition.cpp

    r10 r15  
    77 */
    88
    9 #include "Behavioural/Generic/Select/Priority_Fixed/include/Priority_Fixed.h"
     9#include "Behavioural/Generic/Select/Select_Priority_Fixed/include/Select_Priority_Fixed.h"
    1010
    1111namespace morpheo                    {
     
    1313namespace generic {
    1414namespace select {
    15 namespace priority_fixed {
     15namespace select_priority_fixed {
    1616
    1717
    18   void Priority_Fixed::vhdl_testbench_transition ()
     18  void Select_Priority_Fixed::vhdl_testbench_transition ()
    1919  {
    20     log_printf(FUNC,Priority_Fixed,"vhdl_testbench_transition","Begin");
     20    log_printf(FUNC,Select_Priority_Fixed,"vhdl_testbench_transition","Begin");
    2121
    2222    // Evaluation before read the ouput signal
    2323    sc_start(0);
    2424
    25     // In order with file Priority_Fixed_vhdl_testbench_port.cpp
     25    // In order with file Select_Priority_Fixed_vhdl_testbench_port.cpp
    2626    // Warning : if a output depend of a subcomponent, take directly the port of subcomponent
    2727    // (because we have no control on the ordonnancer's policy)
    2828
     29    _vhdl_testbench->add_input (PORT_READ( in_NRESET));
     30   
    2931    for (uint32_t i=0; i<_param._nb_entity; i++)
    3032      {
     
    4648    _vhdl_testbench->new_cycle (); // always at the end
    4749
    48     log_printf(FUNC,Priority_Fixed,"vhdl_testbench_transition","End");
     50    log_printf(FUNC,Select_Priority_Fixed,"vhdl_testbench_transition","End");
    4951  };
    5052
    51 }; // end namespace priority_fixed
     53}; // end namespace select_priority_fixed
    5254}; // end namespace select
    5355}; // end namespace generic
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Select/Select_Priority_Fixed/src/Statistics.cpp

    r10 r15  
    77 */
    88
    9 #include "Behavioural/Generic/Select/Priority_Fixed/include/Statistics.h"
     9#include "Behavioural/Generic/Select/Select_Priority_Fixed/include/Statistics.h"
    1010
    1111namespace morpheo                    {
     
    1313namespace generic {
    1414namespace select {
    15 namespace priority_fixed {
     15namespace select_priority_fixed {
    1616
    1717
     
    2424    _parameters(parameters)
    2525  {
    26     log_printf(FUNC,Priority_Fixed,"Statistics","Begin");
    27     log_printf(FUNC,Priority_Fixed,"Statistics","End");
     26    log_printf(FUNC,Select_Priority_Fixed,"Statistics","Begin");
     27    log_printf(FUNC,Select_Priority_Fixed,"Statistics","End");
    2828  };
    2929 
    3030  Statistics::~Statistics ()
    3131  {
    32     log_printf(FUNC,Priority_Fixed,"~Statistics","Begin");
    33     log_printf(FUNC,Priority_Fixed,"~Statistics","End");
     32    log_printf(FUNC,Select_Priority_Fixed,"~Statistics","Begin");
     33    log_printf(FUNC,Select_Priority_Fixed,"~Statistics","End");
    3434  };
    3535
    36 }; // end namespace priority_fixed
     36}; // end namespace select_priority_fixed
    3737}; // end namespace select
    3838}; // end namespace generic
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Select/Select_Priority_Fixed/src/Statistics_add.cpp

    r10 r15  
    77 */
    88
    9 #include "Behavioural/Generic/Select/Priority_Fixed/include/Statistics.h"
     9#include "Behavioural/Generic/Select/Select_Priority_Fixed/include/Statistics.h"
    1010
    1111#include <sstream>
     
    1616namespace generic {
    1717namespace select {
    18 namespace priority_fixed {
     18namespace select_priority_fixed {
    1919
    2020
    2121  void Statistics::add ()
    2222  {
    23     log_printf(FUNC,Priority_Fixed,"add","Begin");
    24     log_printf(FUNC,Priority_Fixed,"add","End");
     23    log_printf(FUNC,Select_Priority_Fixed,"add","Begin");
     24    log_printf(FUNC,Select_Priority_Fixed,"add","End");
    2525  };
    2626
    27 }; // end namespace priority_fixed
     27}; // end namespace select_priority_fixed
    2828}; // end namespace select
    2929}; // end namespace generic
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Select/Select_Priority_Fixed/src/Statistics_print.cpp

    r10 r15  
    77 */
    88
    9 #include "Behavioural/Generic/Select/Priority_Fixed/include/Statistics.h"
     9#include "Behavioural/Generic/Select/Select_Priority_Fixed/include/Statistics.h"
    1010
    1111#include <sstream>
     
    1616namespace generic {
    1717namespace select {
    18 namespace priority_fixed {
     18namespace select_priority_fixed {
    1919
    2020
    2121  string Statistics::print (uint32_t depth)
    2222  {
    23     log_printf(FUNC,Priority_Fixed,"print","Begin");
     23    log_printf(FUNC,Select_Priority_Fixed,"print","Begin");
    2424
    2525    string        tab = string(depth,'\t');
    2626    ostringstream msg;
    2727
    28     msg << tab << "<priority_fixed name=\"" << _name << "\" >" << endl
     28    msg << tab << "<select_priority_fixed name=\"" << _name << "\" >" << endl
    2929        << print_body(depth+1) << endl
    30         << tab << "</priority_fixed>" << endl;
     30        << tab << "</select_priority_fixed>" << endl;
    3131   
    32     log_printf(FUNC,Priority_Fixed,"print","End");
     32    log_printf(FUNC,Select_Priority_Fixed,"print","End");
    3333
    3434    return msg.str();
     
    3636
    3737  ostream& operator<< (ostream& output_stream ,
    38                        morpheo::behavioural::generic::select::priority_fixed::Statistics & x)
     38                       morpheo::behavioural::generic::select::select_priority_fixed::Statistics & x)
    3939  {
    4040    output_stream << x.print(0);
     
    4343  };
    4444
    45 }; // end namespace priority_fixed
     45}; // end namespace select_priority_fixed
    4646}; // end namespace select
    4747}; // end namespace generic
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Select/Select_Priority_Fixed/src/Statistics_print_body.cpp

    r10 r15  
    77 */
    88
    9 #include "Behavioural/Generic/Select/Priority_Fixed/include/Statistics.h"
     9#include "Behavioural/Generic/Select/Select_Priority_Fixed/include/Statistics.h"
    1010
    1111#include <sstream>
     
    1616namespace generic {
    1717namespace select {
    18 namespace priority_fixed {
     18namespace select_priority_fixed {
    1919
    2020
    2121  string Statistics::print_body (uint32_t depth)
    2222  {
    23     log_printf(FUNC,Priority_Fixed,"print_body","Begin");
     23    log_printf(FUNC,Select_Priority_Fixed,"print_body","Begin");
    2424
    2525    string        tab = string(depth,'\t');
     
    2828    msg << tab << "";
    2929   
    30     log_printf(FUNC,Priority_Fixed,"print_body","End");
     30    log_printf(FUNC,Select_Priority_Fixed,"print_body","End");
    3131
    3232    return msg.str();
    3333  };
    3434
    35 }; // end namespace priority_fixed
     35}; // end namespace select_priority_fixed
    3636}; // end namespace select
    3737}; // end namespace generic
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Victim/Victim_Pseudo_LRU/Makefile

    r10 r15  
    1111
    1212#-----[ Library ]------------------------------------------
    13 LIBRARY                         = $(DIR_LIB)/libPseudo_LRU.a
    14 
     13LIBRARY                         = $(DIR_LIB)/libVictim_Pseudo_LRU.a
    1514
    1615#-----[ include ]------------------------------------------
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Victim/Victim_Pseudo_LRU/Makefile.deps

    r10 r15  
    1515endif
    1616
    17 Pseudo_LRU                      = yes
     17Victim_Pseudo_LRU                       = yes
    1818#-----[ Library ]------------------------------------------
    19 Pseudo_LRU_LIBRARY              =       -lPseudo_LRU            \
    20                                         $(Group_LIBRARY)        \
    21                                         $(Behavioural_LIBRARY) 
     19Victim_Pseudo_LRU_LIBRARY               =       -lVictim_Pseudo_LRU             \
     20                                                $(Group_LIBRARY)                \
     21                                                $(Behavioural_LIBRARY) 
    2222
    23 Pseudo_LRU_DIR_LIBRARY          =       -L$(DIR_MORPHEO)/Behavioural/Generic/Victim/Pseudo_LRU/lib      \
    24                                         $(Group_DIR_LIBRARY)                                            \
    25                                         $(Behavioural_DIR_LIBRARY)     
     23Victim_Pseudo_LRU_DIR_LIBRARY           =       -L$(DIR_MORPHEO)/Behavioural/Generic/Victim/Victim_Pseudo_LRU/lib       \
     24                                                $(Group_DIR_LIBRARY)                                                    \
     25                                                $(Behavioural_DIR_LIBRARY)     
    2626
    2727#-----[ Rules ]--------------------------------------------
    2828
    29 Pseudo_LRU_library              :
     29Victim_Pseudo_LRU_library               :
    3030                                @$(MAKE)  Behavioural_library
    3131                                @$(MAKE)  Group_library
    32                                 @$(MAKE) --directory=$(DIR_MORPHEO)/Behavioural/Generic/Victim/Pseudo_LRU --makefile=Makefile
     32                                @$(MAKE) --directory=$(DIR_MORPHEO)/Behavioural/Generic/Victim/Victim_Pseudo_LRU --makefile=Makefile
    3333                               
    34 Pseudo_LRU_library_clean        :
     34Victim_Pseudo_LRU_library_clean :
    3535                                @$(MAKE)  Behavioural_library_clean
    3636                                @$(MAKE)  Group_library_clean
    37                                 @$(MAKE) --directory=$(DIR_MORPHEO)/Behavioural/Generic/Victim/Pseudo_LRU --makefile=Makefile clean
     37                                @$(MAKE) --directory=$(DIR_MORPHEO)/Behavioural/Generic/Victim/Victim_Pseudo_LRU --makefile=Makefile clean
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Victim/Victim_Pseudo_LRU/SelfTest/Makefile

    r10 r15  
    1010DIR_MORPHEO                     = ../../../../..
    1111
    12 LIBRARY                         = $(Pseudo_LRU_LIBRARY)
     12LIBRARY                         = $(Victim_Pseudo_LRU_LIBRARY)
    1313
    14 DIR_LIBRARY                     = $(Pseudo_LRU_DIR_LIBRARY)
     14DIR_LIBRARY                     = $(Victim_Pseudo_LRU_DIR_LIBRARY)
    1515
    1616#-----[ include ]------------------------------------------
     
    1919                                @$(MAKE) all_selftest
    2020
    21 library                         : Pseudo_LRU_library
     21library                         : Victim_Pseudo_LRU_library
    2222
    23 library_clean                   : Pseudo_LRU_library_clean
     23library_clean                   : Victim_Pseudo_LRU_library_clean
    2424
    2525include                         ../Makefile.deps
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Victim/Victim_Pseudo_LRU/SelfTest/configuration.cfg

    r10 r15  
    1 Pseudo_LRU
     1Victim_Pseudo_LRU
    224       4       *2      # nb_entity
    331       1       +2      # nb_access
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Victim/Victim_Pseudo_LRU/SelfTest/include/test.h

    r10 r15  
    44 * [ Description ]
    55 *
    6  * Test "RegisterFile"
    76 */
    87
     
    1413#include <iostream>
    1514
    16 #include "Behavioural/Generic/Victim/Pseudo_LRU/include/Pseudo_LRU.h"
     15#include "Behavioural/Generic/Victim/Victim_Pseudo_LRU/include/Victim_Pseudo_LRU.h"
    1716
    1817using namespace std;
     
    2221using namespace morpheo::behavioural::generic::victim;
    2322
    24 using namespace morpheo::behavioural::generic::victim::pseudo_lru;
     23using namespace morpheo::behavioural::generic::victim::victim_pseudo_lru;
    2524
    2625void test   (string name,
    27              morpheo::behavioural::generic::victim::pseudo_lru::Parameters param);
     26             morpheo::behavioural::generic::victim::victim_pseudo_lru::Parameters param);
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Victim/Victim_Pseudo_LRU/SelfTest/src/main.cpp

    r10 r15  
    66 */
    77
    8 #include "Behavioural/Generic/Victim/Pseudo_LRU/SelfTest/include/test.h"
     8#include "Behavioural/Generic/Victim/Victim_Pseudo_LRU/SelfTest/include/test.h"
    99
    1010#define NB_PARAMS 4
     
    3636  const uint32_t size_table = atoi(argv[5]);
    3737 
    38   morpheo::behavioural::generic::victim::pseudo_lru::Parameters param (nb_entity ,
     38  morpheo::behavioural::generic::victim::victim_pseudo_lru::Parameters param (nb_entity ,
    3939                                                                       nb_access ,
    4040                                                                       nb_update ,
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Victim/Victim_Pseudo_LRU/SelfTest/src/test.cpp

    r10 r15  
    77 */
    88
    9 #include "Behavioural/Generic/Victim/Pseudo_LRU/SelfTest/include/test.h"
     9#include "Behavioural/Generic/Victim/Victim_Pseudo_LRU/SelfTest/include/test.h"
    1010#include "Include/Test.h"
    1111
    1212void test (string name,
    13            morpheo::behavioural::generic::victim::pseudo_lru::Parameters param)
     13           morpheo::behavioural::generic::victim::victim_pseudo_lru::Parameters param)
    1414{
    1515  cout << "<" << name << "> : Simulation SystemC" << endl;
     
    3636      exit (EXIT_FAILURE);
    3737    }
    38   Pseudo_LRU * _Pseudo_LRU = new Pseudo_LRU (name.c_str(),
     38  Victim_Pseudo_LRU * _Victim_Pseudo_LRU = new Victim_Pseudo_LRU (name.c_str(),
    3939#ifdef STATISTICS
    4040                                             morpheo::behavioural::Parameters_Statistics(5,50),
     
    4646   * Déclarations des signaux
    4747   *********************************************************************/
    48   sc_clock                                 CLOCK ("clock", 1.0, 0.5);
     48  sc_clock                                 CLOCK  ("clock", 1.0, 0.5);
     49  sc_signal<Tcontrol_t>                    NRESET ("NRESET");
    4950
    5051  sc_signal<Tcontrol_t>                    ACCESS_VAL     [param._nb_access];
     
    6263   ********************************************************/
    6364 
    64   cout << "<" << name << "> Instanciation of _Pseudo_LRU" << endl;
    65  
    66   (*(_Pseudo_LRU->in_CLOCK))        (CLOCK);
     65  cout << "<" << name << "> Instanciation of _Victim_Pseudo_LRU" << endl;
     66 
     67  (*(_Victim_Pseudo_LRU->in_CLOCK))        (CLOCK);
     68  (*(_Victim_Pseudo_LRU->in_NRESET))       (NRESET);
    6769
    6870    for (uint32_t i=0; i<param._nb_access; i++)
    6971      {
    70         (*(_Pseudo_LRU-> in_ACCESS_VAL     [i])) (ACCESS_VAL     [i]);
    71         (*(_Pseudo_LRU->out_ACCESS_ACK     [i])) (ACCESS_ACK     [i]);
     72        (*(_Victim_Pseudo_LRU-> in_ACCESS_VAL     [i])) (ACCESS_VAL     [i]);
     73        (*(_Victim_Pseudo_LRU->out_ACCESS_ACK     [i])) (ACCESS_ACK     [i]);
    7274        if (param._size_table>1)
    73         (*(_Pseudo_LRU-> in_ACCESS_ADDRESS [i])) (ACCESS_ADDRESS [i]);
    74         (*(_Pseudo_LRU->out_ACCESS_ENTITY  [i])) (ACCESS_ENTITY  [i]);
     75        (*(_Victim_Pseudo_LRU-> in_ACCESS_ADDRESS [i])) (ACCESS_ADDRESS [i]);
     76        (*(_Victim_Pseudo_LRU->out_ACCESS_ENTITY  [i])) (ACCESS_ENTITY  [i]);
    7577      }
    7678
    7779    for (uint32_t i=0; i<param._nb_update; i++)
    7880      {
    79         (*(_Pseudo_LRU-> in_UPDATE_VAL     [i])) (UPDATE_VAL     [i]);
    80         (*(_Pseudo_LRU->out_UPDATE_ACK     [i])) (UPDATE_ACK     [i]);
     81        (*(_Victim_Pseudo_LRU-> in_UPDATE_VAL     [i])) (UPDATE_VAL     [i]);
     82        (*(_Victim_Pseudo_LRU->out_UPDATE_ACK     [i])) (UPDATE_ACK     [i]);
    8183        if (param._size_table>1)
    82         (*(_Pseudo_LRU-> in_UPDATE_ADDRESS [i])) (UPDATE_ADDRESS [i]);
    83         (*(_Pseudo_LRU-> in_UPDATE_ENTITY  [i])) (UPDATE_ENTITY  [i]);
     84        (*(_Victim_Pseudo_LRU-> in_UPDATE_ADDRESS [i])) (UPDATE_ADDRESS [i]);
     85        (*(_Victim_Pseudo_LRU-> in_UPDATE_ENTITY  [i])) (UPDATE_ENTITY  [i]);
    8486      }
    8587  /********************************************************
     
    204206#endif
    205207
    206   delete _Pseudo_LRU;
     208  delete _Victim_Pseudo_LRU;
    207209}
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Victim/Victim_Pseudo_LRU/include/Parameters.h

    r10 r15  
    1 #ifndef morpheo_behavioural_generic_victim_pseudo_lru_Parameters_h
    2 #define morpheo_behavioural_generic_victim_pseudo_lru_Parameters_h
     1#ifndef morpheo_behavioural_generic_victim_victim_pseudo_lru_Parameters_h
     2#define morpheo_behavioural_generic_victim_victim_pseudo_lru_Parameters_h
    33
    44/*
     
    1616namespace generic {
    1717namespace victim {
    18 namespace pseudo_lru {
     18namespace victim_pseudo_lru {
    1919
    2020
     
    2525  public : const uint32_t _nb_access ; // number of port to select an entity
    2626  public : const uint32_t _nb_update ; // number of port to update the internal entity
    27   public : const uint32_t _size_table; // Size of pseudo_LRU's table
     27  public : const uint32_t _size_table; // Size of victim_pseudo_lru's table
    2828
    2929    //-----[ methods ]-----------------------------------------------------------
     
    3939  public :        string   print      (uint32_t depth);
    4040  public : friend ostream& operator<< (ostream& output_stream,
    41                                        morpheo::behavioural::generic::victim::pseudo_lru::Parameters & x);
     41                                       morpheo::behavioural::generic::victim::victim_pseudo_lru::Parameters & x);
    4242  };
    4343
    44 }; // end namespace pseudo_lru
     44}; // end namespace victim_pseudo_lru
    4545}; // end namespace victim
    4646}; // end namespace generic
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Victim/Victim_Pseudo_LRU/include/Statistics.h

    r10 r15  
    11#ifdef STATISTICS
    2 #ifndef morpheo_behavioural_generic_victim_pseudo_lru_Statistics_h
    3 #define morpheo_behavioural_generic_victim_pseudo_lru_Statistics_h
     2#ifndef morpheo_behavioural_generic_victim_victim_pseudo_lru_Statistics_h
     3#define morpheo_behavioural_generic_victim_victim_pseudo_lru_Statistics_h
    44
    55/*
     
    1313#include "Behavioural/include/Parameters_Statistics.h"
    1414#include "Behavioural/Generic/Group/include/Statistics.h"
    15 #include "Behavioural/Generic/Victim/Pseudo_LRU/include/Parameters.h"
     15#include "Behavioural/Generic/Victim/Victim_Pseudo_LRU/include/Parameters.h"
    1616
    1717using namespace morpheo::behavioural::generic::group;
     
    2121namespace generic {
    2222namespace victim {
    23 namespace pseudo_lru {
     23namespace victim_pseudo_lru {
    2424
    2525
     
    4949  };
    5050
    51 }; // end namespace pseudo_lru
     51}; // end namespace victim_pseudo_lru
    5252}; // end namespace victim
    5353}; // end namespace generic
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Victim/Victim_Pseudo_LRU/include/Types.h

    r10 r15  
    1 #ifndef morpheo_behavioural_generic_victim_pseudo_lru_Type_h
    2 #define morpheo_behavioural_generic_victim_pseudo_lru_Type_h
     1#ifndef morpheo_behavioural_generic_victim_victim_pseudo_lru_Type_h
     2#define morpheo_behavioural_generic_victim_victim_pseudo_lru_Type_h
    33
    44/*
     
    1515namespace generic {
    1616namespace victim {
    17 namespace pseudo_lru {
     17namespace victim_pseudo_lru {
    1818
    1919  typedef uint32_t Taddress_t;
    2020  typedef uint32_t Tentity_t;
    2121
    22 }; // end namespace pseudo._lru
     22}; // end namespace victim_pseudo_lru
    2323}; // end namespace victim
    2424}; // end namespace generic
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Victim/Victim_Pseudo_LRU/include/Victim_Pseudo_LRU.h

    r10 r15  
    1 #ifndef morpheo_behavioural_generic_victim_pseudo_lru_Pseudo_LRU_h
    2 #define morpheo_behavioural_generic_victim_pseudo_lru_Pseudo_LRU_h
     1#ifndef morpheo_behavioural_generic_victim_victim_pseudo_lru_Victim_Pseudo_LRU_h
     2#define morpheo_behavioural_generic_victim_victim_pseudo_lru_Victim_Pseudo_LRU_h
    33
    44/*
     
    3232#include "Include/Debug.h"
    3333
    34 #include "Behavioural/Generic/Victim/Pseudo_LRU/include/Parameters.h"
    35 #include "Behavioural/Generic/Victim/Pseudo_LRU/include/Types.h"
    36 #ifdef STATISTICS
    37 #include "Behavioural/Generic/Victim/Pseudo_LRU/include/Statistics.h"
     34#include "Behavioural/Generic/Victim/Victim_Pseudo_LRU/include/Parameters.h"
     35#include "Behavioural/Generic/Victim/Victim_Pseudo_LRU/include/Types.h"
     36#ifdef STATISTICS
     37#include "Behavioural/Generic/Victim/Victim_Pseudo_LRU/include/Statistics.h"
    3838#endif
    3939#ifdef VHDL
     
    5050namespace generic {
    5151namespace victim {
    52 namespace pseudo_lru {
    53 
    54   class Pseudo_LRU
     52namespace victim_pseudo_lru {
     53
     54  class Victim_Pseudo_LRU
    5555#if SYSTEMC
    5656    : public sc_module
     
    6060  protected : class entry_t
    6161  {
    62     // Numerotation of pseudo_LRU's tree
     62    // Numerotation of victim_pseudo_lru's tree
    6363    // Tree of Pseudo-LRU
    6464    //
     
    183183    // Interface
    184184  public    : SC_CLOCK                      *  in_CLOCK         ;
     185  public    : SC_IN (Tcontrol_t)            *  in_NRESET        ;
    185186
    186187    // Interface access
     
    206207
    207208#ifdef SYSTEMC
    208     SC_HAS_PROCESS (Pseudo_LRU);
    209 #endif
    210 
    211   public  :          Pseudo_LRU              (
     209    SC_HAS_PROCESS (Victim_Pseudo_LRU);
     210#endif
     211
     212  public  :          Victim_Pseudo_LRU              (
    212213#ifdef SYSTEMC
    213214                                              sc_module_name                              name,
     
    220221                                              Parameters                                  param );
    221222                                               
    222   public  :          Pseudo_LRU              (Parameters param );
    223   public  :          ~Pseudo_LRU             (void);
     223  public  :          Victim_Pseudo_LRU              (Parameters param );
     224  public  :          ~Victim_Pseudo_LRU             (void);
    224225                                               
    225226#ifdef SYSTEMC                                 
     
    249250  };
    250251
    251 }; // end namespace pseudo_lru
     252}; // end namespace victim_pseudo_lru
    252253}; // end namespace victim
    253254}; // end namespace generic
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Victim/Victim_Pseudo_LRU/src/Parameters.cpp

    r10 r15  
    66 */
    77
    8 #include "Behavioural/Generic/Victim/Pseudo_LRU/include/Parameters.h"
     8#include "Behavioural/Generic/Victim/Victim_Pseudo_LRU/include/Parameters.h"
    99
    1010namespace morpheo {
     
    1212namespace generic {
    1313namespace victim {
    14 namespace pseudo_lru {
     14namespace victim_pseudo_lru {
    1515
    1616
     
    3939  { };
    4040
    41 }; // end namespace pseudo_lru
     41}; // end namespace victim_pseudo_lru
    4242}; // end namespace victim
    4343}; // end namespace generic
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Victim/Victim_Pseudo_LRU/src/Parameters_msg_error.cpp

    r10 r15  
    66 */
    77
    8 #include "Behavioural/Generic/Victim/Pseudo_LRU/include/Parameters.h"
    9 #include "Behavioural/Generic/Victim/Pseudo_LRU/include/Types.h"
     8#include "Behavioural/Generic/Victim/Victim_Pseudo_LRU/include/Parameters.h"
     9#include "Behavioural/Generic/Victim/Victim_Pseudo_LRU/include/Types.h"
    1010#include <sstream>
    1111using namespace std;
     
    1515namespace generic {
    1616namespace victim {
    17 namespace pseudo_lru {
     17namespace victim_pseudo_lru {
    1818
    1919  string Parameters::msg_error(void)
     
    6565  };
    6666
    67 }; // end namespace pseudo_lru
     67}; // end namespace victim_pseudo_lru
    6868}; // end namespace victim
    6969}; // end namespace generic
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Victim/Victim_Pseudo_LRU/src/Parameters_print.cpp

    r10 r15  
    66 */
    77
    8 #include "Behavioural/Generic/Victim/Pseudo_LRU/include/Parameters.h"
     8#include "Behavioural/Generic/Victim/Victim_Pseudo_LRU/include/Parameters.h"
    99#include <sstream>
    1010using namespace std;
     
    1414namespace generic {
    1515namespace victim {
    16 namespace pseudo_lru {
     16namespace victim_pseudo_lru {
    1717
    1818  string Parameters::print (uint32_t depth)
     
    2020    string tab = string(depth,'\t');
    2121    ostringstream msg;
    22     msg << tab << "<pseudo_lru>" << endl
     22    msg << tab << "<victim_pseudo_lru>" << endl
    2323        << tab << "\t<nb_entity  value=\"" << _nb_entity  << "\" />" << endl
    2424        << tab << "\t<nb_access  value=\"" << _nb_access  << "\" />" << endl
    2525        << tab << "\t<nb_update  value=\"" << _nb_update  << "\" />" << endl
    2626        << tab << "\t<size_table value=\"" << _size_table << "\" />" << endl
    27         << tab << "</pseudo_lru>" << endl;
     27        << tab << "</victim_pseudo_lru>" << endl;
    2828   
    2929    return msg.str();
     
    3131
    3232  ostream& operator<< (ostream& output_stream ,
    33                        morpheo::behavioural::generic::victim::pseudo_lru::Parameters & x)
     33                       morpheo::behavioural::generic::victim::victim_pseudo_lru::Parameters & x)
    3434  {
    3535    output_stream << x.print(0);
     
    3838  };
    3939
    40 }; // end namespace pseudo_lru
     40}; // end namespace victim_pseudo_lru
    4141}; // end namespace victim
    4242}; // end namespace generic
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Victim/Victim_Pseudo_LRU/src/Statistics.cpp

    r10 r15  
    77 */
    88
    9 #include "Behavioural/Generic/Victim/Pseudo_LRU/include/Statistics.h"
     9#include "Behavioural/Generic/Victim/Victim_Pseudo_LRU/include/Statistics.h"
    1010
    1111namespace morpheo                    {
     
    1313namespace generic {
    1414namespace victim {
    15 namespace pseudo_lru {
     15namespace victim_pseudo_lru {
    1616
    1717
     
    3838  };
    3939
    40 }; // end namespace pseudo_lru
     40}; // end namespace victim_pseudo_lru
    4141}; // end namespace victim
    4242}; // end namespace generic
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Victim/Victim_Pseudo_LRU/src/Statistics_add.cpp

    r10 r15  
    77 */
    88
    9 #include "Behavioural/Generic/Victim/Pseudo_LRU/include/Statistics.h"
     9#include "Behavioural/Generic/Victim/Victim_Pseudo_LRU/include/Statistics.h"
    1010
    1111#include <sstream>
     
    1616namespace generic {
    1717namespace victim {
    18 namespace pseudo_lru {
     18namespace victim_pseudo_lru {
    1919
    2020  void Statistics::add (uint32_t nb_access,
     
    2525  };
    2626
    27 }; // end namespace pseudo_lru
     27}; // end namespace victim_pseudo_lru
    2828}; // end namespace victim
    2929}; // end namespace generic
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Victim/Victim_Pseudo_LRU/src/Statistics_print.cpp

    r10 r15  
    77 */
    88
    9 #include "Behavioural/Generic/Victim/Pseudo_LRU/include/Statistics.h"
     9#include "Behavioural/Generic/Victim/Victim_Pseudo_LRU/include/Statistics.h"
    1010
    1111#include <sstream>
     
    1616namespace generic {
    1717namespace victim {
    18 namespace pseudo_lru {
     18namespace victim_pseudo_lru {
    1919
    2020
     
    2424    ostringstream msg;
    2525
    26     msg << tab << "<pseudo_lru name=\"" << _name << "\" >" << endl
     26    msg << tab << "<victim_pseudo_lru name=\"" << _name << "\" >" << endl
    2727        << print_body (depth+1)
    28         << tab << "</pseudo_lru>" << endl;
     28        << tab << "</victim_pseudo_lru>" << endl;
    2929   
    3030    return msg.str();
     
    3232
    3333  ostream& operator<< (ostream& output_stream ,
    34                        morpheo::behavioural::generic::victim::pseudo_lru::Statistics & x)
     34                       morpheo::behavioural::generic::victim::victim_pseudo_lru::Statistics & x)
    3535  {
    3636    output_stream << x.print(0);
     
    3939  };
    4040
    41 }; // end namespace pseudo_lru
     41}; // end namespace victim_pseudo_lru
    4242}; // end namespace victim
    4343}; // end namespace generic
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Victim/Victim_Pseudo_LRU/src/Statistics_print_body.cpp

    r10 r15  
    77 */
    88
    9 #include "Behavioural/Generic/Victim/Pseudo_LRU/include/Statistics.h"
     9#include "Behavioural/Generic/Victim/Victim_Pseudo_LRU/include/Statistics.h"
    1010
    1111#include <sstream>
     
    1616namespace generic {
    1717namespace victim {
    18 namespace pseudo_lru {
     18namespace victim_pseudo_lru {
    1919
    2020
     
    3030  };
    3131
    32 }; // end namespace pseudo_lru
     32}; // end namespace victim_pseudo_lru
    3333}; // end namespace victim
    3434}; // end namespace generic
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Victim/Victim_Pseudo_LRU/src/Victim_Pseudo_LRU.cpp

    r10 r15  
    66 */
    77
    8 #include "Behavioural/Generic/Victim/Pseudo_LRU/include/Pseudo_LRU.h"
     8#include "Behavioural/Generic/Victim/Victim_Pseudo_LRU/include/Victim_Pseudo_LRU.h"
    99
    1010namespace morpheo {
     
    1212namespace generic {
    1313namespace victim {
    14 namespace pseudo_lru {
     14namespace victim_pseudo_lru {
    1515
    1616#ifdef SYSTEMC
    17   Pseudo_LRU::Pseudo_LRU (sc_module_name name,
     17  Victim_Pseudo_LRU::Victim_Pseudo_LRU (sc_module_name name,
    1818#else
    19   Pseudo_LRU::Pseudo_LRU (string name,
     19  Victim_Pseudo_LRU::Victim_Pseudo_LRU (string name,
    2020#endif
    2121#ifdef STATISTICS
    2222                          morpheo::behavioural::Parameters_Statistics             param_statistics,
    2323#endif
    24                           morpheo::behavioural::generic::victim::pseudo_lru::Parameters param ):
     24                          morpheo::behavioural::generic::victim::victim_pseudo_lru::Parameters param ):
    2525                          _name   (name)
    2626                          ,_param (param)
    2727  {
    28     log_printf(FUNC,Pseudo_LRU,"Pseudo_LRU","Begin");
     28    log_printf(FUNC,Victim_Pseudo_LRU,"Victim_Pseudo_LRU","Begin");
    2929
    3030#ifdef STATISTICS
    31     log_printf(TRACE,Pseudo_LRU,"Pseudo_LRU","Allocation of statistics");
     31    log_printf(TRACE,Victim_Pseudo_LRU,"Victim_Pseudo_LRU","Allocation of statistics");
    3232   
    3333    // Allocation of statistics
     
    4141    //  -> port
    4242    //  -> clock's signals
    43     log_printf(TRACE,Pseudo_LRU,"Pseudo_LRU","Creation of Testbench");
     43    log_printf(TRACE,Victim_Pseudo_LRU,"Victim_Pseudo_LRU","Creation of Testbench");
    4444    _vhdl_testbench = new Vhdl_Testbench (_name);
    4545    vhdl_testbench_port           (*_vhdl_testbench);
     
    4949#ifdef VHDL
    5050    // generate the vhdl
    51     log_printf(TRACE,Pseudo_LRU,"Pseudo_LRU","Generation of VHDL");
     51    log_printf(TRACE,Victim_Pseudo_LRU,"Victim_Pseudo_LRU","Generation of VHDL");
    5252    vhdl();
    5353#endif
    5454
    5555#ifdef SYSTEMC
    56     log_printf(TRACE,Pseudo_LRU,"Pseudo_LRU","Allocation");
     56    log_printf(TRACE,Victim_Pseudo_LRU,"Victim_Pseudo_LRU","Allocation");
    5757    allocation ();
    5858
    59     log_printf(TRACE,Pseudo_LRU,"Pseudo_LRU","Definition of sc_method");
     59    log_printf(TRACE,Victim_Pseudo_LRU,"Victim_Pseudo_LRU","Definition of sc_method");
    6060    SC_METHOD (transition);
    6161    dont_initialize ();
     
    7373
    7474#ifdef SYSTEMCASS_SPECIFIC
    75     log_printf(TRACE,Pseudo_LRU,"Pseudo_LRU","List dependency information");
     75    log_printf(TRACE,Victim_Pseudo_LRU,"Victim_Pseudo_LRU","List dependency information");
    7676    // List dependency information
    7777    for (uint32_t i=0; i<_param._nb_access; i++)
     
    9090
    9191#endif
    92     log_printf(FUNC,Pseudo_LRU,"Pseudo_LRU","End");
     92    log_printf(FUNC,Victim_Pseudo_LRU,"Victim_Pseudo_LRU","End");
    9393  };
    9494 
    95   Pseudo_LRU::~Pseudo_LRU (void)
     95  Victim_Pseudo_LRU::~Victim_Pseudo_LRU (void)
    9696  {
    97     log_printf(FUNC,Pseudo_LRU,"~Pseudo_LRU","Begin");
     97    log_printf(FUNC,Victim_Pseudo_LRU,"~Victim_Pseudo_LRU","Begin");
    9898#ifdef SYSTEMC
    9999    deallocation ();
     
    111111    delete _stat;
    112112#endif
    113     log_printf(FUNC,Pseudo_LRU,"~Pseudo_LRU","End");
     113    log_printf(FUNC,Victim_Pseudo_LRU,"~Victim_Pseudo_LRU","End");
    114114  };
    115115
    116 }; // end namespace pseudo_lru
     116}; // end namespace victim_pseudo_lru
    117117}; // end namespace victim
    118118}; // end namespace generic
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Victim/Victim_Pseudo_LRU/src/Victim_Pseudo_LRU_allocation.cpp

    r10 r15  
    77 */
    88
    9 #include "Behavioural/Generic/Victim/Pseudo_LRU/include/Pseudo_LRU.h"
     9#include "Behavioural/Generic/Victim/Victim_Pseudo_LRU/include/Victim_Pseudo_LRU.h"
    1010
    1111namespace morpheo {
     
    1313namespace generic {
    1414namespace victim {
    15 namespace pseudo_lru {
     15namespace victim_pseudo_lru {
    1616
    17   void Pseudo_LRU::allocation (void)
     17  void Victim_Pseudo_LRU::allocation (void)
    1818  {
    1919    in_CLOCK  = new SC_CLOCK           ("in_CLOCK");
     20    in_NRESET = new SC_IN (Tcontrol_t) ("in_NRESET");
    2021
    2122    // -----[ Interface access ]-------------------------------------------
     
    8283  };
    8384
    84 }; // end namespace pseudo_lru
     85}; // end namespace victim_pseudo_lru
    8586}; // end namespace victim
    8687}; // end namespace generic
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Victim/Victim_Pseudo_LRU/src/Victim_Pseudo_LRU_deallocation.cpp

    r10 r15  
    77 */
    88
    9 #include "Behavioural/Generic/Victim/Pseudo_LRU/include/Pseudo_LRU.h"
     9#include "Behavioural/Generic/Victim/Victim_Pseudo_LRU/include/Victim_Pseudo_LRU.h"
    1010
    1111namespace morpheo                    {
     
    1313namespace generic {
    1414namespace victim {
    15 namespace pseudo_lru {
     15namespace victim_pseudo_lru {
    1616
    17   void Pseudo_LRU::deallocation (void)
     17  void Victim_Pseudo_LRU::deallocation (void)
    1818  {
    1919    delete in_CLOCK;
    20 
     20    delete in_NRESET;
    2121    // -----[ Interface access ]-------------------------------------------
    2222    for (uint32_t i=0; i<_param._nb_access; i++)
     
    6161  };
    6262
    63 }; // end namespace pseudo_lru
     63}; // end namespace victim_pseudo_lru
    6464}; // end namespace victim
    6565}; // end namespace generic
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Victim/Victim_Pseudo_LRU/src/Victim_Pseudo_LRU_genMealy_access.cpp

    r10 r15  
    77 */
    88
    9 #include "Behavioural/Generic/Victim/Pseudo_LRU/include/Pseudo_LRU.h"
     9#include "Behavioural/Generic/Victim/Victim_Pseudo_LRU/include/Victim_Pseudo_LRU.h"
    1010
    1111namespace morpheo {
     
    1313namespace generic {
    1414namespace victim {
    15 namespace pseudo_lru {
     15namespace victim_pseudo_lru {
    1616
    17   void Pseudo_LRU::genMealy_access (void)
     17  void Victim_Pseudo_LRU::genMealy_access (void)
    1818  {
    1919    for (uint32_t i=0; i<_param._nb_access; i++)
     
    3939  };
    4040
    41 }; // end namespace pseudo_lru
     41}; // end namespace victim_pseudo_lru
    4242}; // end namespace victim
    4343}; // end namespace generic
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Victim/Victim_Pseudo_LRU/src/Victim_Pseudo_LRU_statistics.cpp

    r10 r15  
    77 */
    88
    9 #include "Behavioural/Generic/Victim/Pseudo_LRU/include/Pseudo_LRU.h"
     9#include "Behavioural/Generic/Victim/Victim_Pseudo_LRU/include/Victim_Pseudo_LRU.h"
    1010
    1111namespace morpheo                    {
     
    1313namespace generic {
    1414namespace victim {
    15 namespace pseudo_lru {
     15namespace victim_pseudo_lru {
    1616
    1717 
    18   string Pseudo_LRU::statistics (uint32_t depth)
     18  string Victim_Pseudo_LRU::statistics (uint32_t depth)
    1919  {
    2020    return _stat->print(depth);
    2121  };
    2222
    23 }; // end namespace pseudo_lru
     23}; // end namespace victim_pseudo_lru
    2424}; // end namespace victim
    2525}; // end namespace generic
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Victim/Victim_Pseudo_LRU/src/Victim_Pseudo_LRU_transition.cpp

    r10 r15  
    77 */
    88
    9 #include "Behavioural/Generic/Victim/Pseudo_LRU/include/Pseudo_LRU.h"
     9#include "Behavioural/Generic/Victim/Victim_Pseudo_LRU/include/Victim_Pseudo_LRU.h"
    1010
    1111namespace morpheo {
     
    1313namespace generic {
    1414namespace victim {
    15 namespace pseudo_lru {
     15namespace victim_pseudo_lru {
    1616
    17   void Pseudo_LRU::transition (void)
     17  void Victim_Pseudo_LRU::transition (void)
    1818  {
    1919#ifdef STATISTICS
     
    7171  };
    7272
    73 }; // end namespace pseudo_lru
     73}; // end namespace victim_pseudo_lru
    7474}; // end namespace victim
    7575}; // end namespace generic
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Victim/Victim_Pseudo_LRU/src/Victim_Pseudo_LRU_vhdl.cpp

    r10 r15  
    77 */
    88
    9 #include "Behavioural/Generic/Victim/Pseudo_LRU/include/Pseudo_LRU.h"
     9#include "Behavioural/Generic/Victim/Victim_Pseudo_LRU/include/Victim_Pseudo_LRU.h"
    1010#include "Behavioural/include/Vhdl.h"
    1111
     
    1414namespace generic {
    1515namespace victim {
    16 namespace pseudo_lru {
     16namespace victim_pseudo_lru {
    1717
    1818
    19   void Pseudo_LRU::vhdl (void)
     19  void Victim_Pseudo_LRU::vhdl (void)
    2020  {
    21     log_printf(FUNC,Pseudo_LRU,"vhdl","Begin");
     21    log_printf(FUNC,Victim_Pseudo_LRU,"vhdl","Begin");
    2222
    23     log_printf(TRACE,Pseudo_LRU,"vhdl","Construction of vhdl");
     23    log_printf(TRACE,Victim_Pseudo_LRU,"vhdl","Construction of vhdl");
    2424    Vhdl vhdl (_name);
    2525
    26     log_printf(TRACE,Pseudo_LRU,"vhdl","Set library");
     26    log_printf(TRACE,Victim_Pseudo_LRU,"vhdl","Set library");
    2727    vhdl.set_library_work (_name + "_Pack");
    2828
    29     log_printf(TRACE,Pseudo_LRU,"vhdl","Set port");
     29    log_printf(TRACE,Victim_Pseudo_LRU,"vhdl","Set port");
    3030    vhdl_port        (vhdl);
    31     log_printf(TRACE,Pseudo_LRU,"vhdl","Set declaration");
     31    log_printf(TRACE,Victim_Pseudo_LRU,"vhdl","Set declaration");
    3232    vhdl_declaration (vhdl);
    33     log_printf(TRACE,Pseudo_LRU,"vhdl","Set body");
     33    log_printf(TRACE,Victim_Pseudo_LRU,"vhdl","Set body");
    3434    vhdl_body        (vhdl);
    35     log_printf(TRACE,Pseudo_LRU,"vhdl","Generate File");
     35    log_printf(TRACE,Victim_Pseudo_LRU,"vhdl","Generate File");
    3636    vhdl.generate_file();
    37     log_printf(FUNC,Pseudo_LRU,"vhdl","End");
     37    log_printf(FUNC,Victim_Pseudo_LRU,"vhdl","End");
    3838  };
    3939
    40 }; // end namespace pseudo_lru
     40}; // end namespace victim_pseudo_lru
    4141}; // end namespace victim
    4242}; // end namespace generic
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Victim/Victim_Pseudo_LRU/src/Victim_Pseudo_LRU_vhdl_body.cpp

    r10 r15  
    77 */
    88
    9 #include "Behavioural/Generic/Victim/Pseudo_LRU/include/Pseudo_LRU.h"
     9#include "Behavioural/Generic/Victim/Victim_Pseudo_LRU/include/Victim_Pseudo_LRU.h"
    1010
    1111namespace morpheo {
     
    1313namespace generic {
    1414namespace victim {
    15 namespace pseudo_lru {
    16 
    17   void Pseudo_LRU::vhdl_body (Vhdl & vhdl)
     15namespace victim_pseudo_lru {
     16
     17  void Victim_Pseudo_LRU::vhdl_body (Vhdl & vhdl)
    1818  {
    1919    vhdl.set_body ("");
     
    219219  };
    220220
    221 }; // end namespace pseudo_lru
     221}; // end namespace victim_pseudo_lru
    222222}; // end namespace victim
    223223}; // end namespace generic
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Victim/Victim_Pseudo_LRU/src/Victim_Pseudo_LRU_vhdl_declaration.cpp

    r10 r15  
    77 */
    88
    9 #include "Behavioural/Generic/Victim/Pseudo_LRU/include/Pseudo_LRU.h"
     9#include "Behavioural/Generic/Victim/Victim_Pseudo_LRU/include/Victim_Pseudo_LRU.h"
    1010
    1111namespace morpheo {
     
    1313namespace generic {
    1414namespace victim {
    15 namespace pseudo_lru {
     15namespace victim_pseudo_lru {
    1616
    1717
    18   void Pseudo_LRU::vhdl_declaration (Vhdl & vhdl)
     18  void Victim_Pseudo_LRU::vhdl_declaration (Vhdl & vhdl)
    1919  {
    2020    vhdl.set_type ("Ttable", "array (" + toString(_param._size_table-1) + " downto 0) of "+std_logic(_param._nb_entity-1));
     
    3535  };
    3636
    37 }; // end namespace pseudo_lru
     37}; // end namespace victim_pseudo_lru
    3838}; // end namespace victim
    3939}; // end namespace generic
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Victim/Victim_Pseudo_LRU/src/Victim_Pseudo_LRU_vhdl_port.cpp

    r10 r15  
    77 */
    88
    9 #include "Behavioural/Generic/Victim/Pseudo_LRU/include/Pseudo_LRU.h"
     9#include "Behavioural/Generic/Victim/Victim_Pseudo_LRU/include/Victim_Pseudo_LRU.h"
    1010
    1111namespace morpheo                    {
     
    1313namespace generic {
    1414namespace victim {
    15 namespace pseudo_lru {
     15namespace victim_pseudo_lru {
    1616
    1717
    18   void Pseudo_LRU::vhdl_port (Vhdl & vhdl)
     18  void Victim_Pseudo_LRU::vhdl_port (Vhdl & vhdl)
    1919  {
    20     vhdl.set_port ("in_CLOCK" , IN, "std_logic");
     20    vhdl.set_port ("in_CLOCK ", IN, 1);
     21    vhdl.set_port ("in_NRESET", IN, 1);
    2122
    2223    for (uint32_t i = 0; i < _param._nb_access; i ++)
     
    3940  };
    4041
    41 }; // end namespace pseudo_lru
     42}; // end namespace victim_pseudo_lru
    4243}; // end namespace victim
    4344}; // end namespace generic
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Victim/Victim_Pseudo_LRU/src/Victim_Pseudo_LRU_vhdl_testbench_port.cpp

    r10 r15  
    77 */
    88
    9 #include "Behavioural/Generic/Victim/Pseudo_LRU/include/Pseudo_LRU.h"
     9#include "Behavioural/Generic/Victim/Victim_Pseudo_LRU/include/Victim_Pseudo_LRU.h"
    1010
    1111namespace morpheo                    {
     
    1313namespace generic {
    1414namespace victim {
    15 namespace pseudo_lru {
     15namespace victim_pseudo_lru {
    1616
    1717
    18   void Pseudo_LRU::vhdl_testbench_port (Vhdl_Testbench & vhdl_testbench)
     18  void Victim_Pseudo_LRU::vhdl_testbench_port (Vhdl_Testbench & vhdl_testbench)
    1919  {
     20    vhdl_testbench.set_port (" in_NRESET",IN ,1);
    2021    for (uint32_t i = 0; i < _param._nb_access; i ++)
    2122      {
     
    3738  };
    3839
    39 }; // end namespace pseudo_lru
     40}; // end namespace victim_pseudo_lru
    4041}; // end namespace victim
    4142}; // end namespace generic
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Victim/Victim_Pseudo_LRU/src/Victim_Pseudo_LRU_vhdl_testbench_transition.cpp

    r10 r15  
    77 */
    88
    9 #include "Behavioural/Generic/Victim/Pseudo_LRU/include/Pseudo_LRU.h"
     9#include "Behavioural/Generic/Victim/Victim_Pseudo_LRU/include/Victim_Pseudo_LRU.h"
    1010
    1111namespace morpheo {
     
    1313namespace generic {
    1414namespace victim {
    15 namespace pseudo_lru {
     15namespace victim_pseudo_lru {
    1616
    1717
    18   void Pseudo_LRU::vhdl_testbench_transition (Vhdl_Testbench & vhdl_testbench)
     18  void Victim_Pseudo_LRU::vhdl_testbench_transition (Vhdl_Testbench & vhdl_testbench)
    1919  {
    2020#ifndef SYSTEMCASS_SPECIFIC
    2121    sc_cycle(0);
    2222#endif
     23    vhdl_testbench.add_input  (PORT_READ(in_NRESET));
    2324
    2425    for (uint32_t i = 0; i < _param._nb_access; i ++)
     
    4546  };
    4647
    47 }; // end namespace pseudo_lru
     48}; // end namespace victim_pseudo_lru
    4849}; // end namespace victim
    4950}; // end namespace generic
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Makefile.Common

    r3 r15  
    77#
    88
     9include                         $(MORPHEO_TOPLEVEL)/Makefile.tools
     10
    911#-----[ Directory ]----------------------------------------
    1012DIR_INC                         = include
    1113DIR_SRC                         = src
    1214DIR_OBJ                         = obj
    13 DIR_SCRIPT                      = $(DIR_MORPHEO)/Script
    14 
    15 #-----[ Commands ]-----------------------------------------
    16 ECHO                            = echo
    17 EXPORT                          = export
    18 MKDIR                           = mkdir -p
    19 TEST                            = test
    20 READ                            = read
    21 DATE                            = date +%Y%m%d-%H%M%S
    22 CD                              = cd
    23 CP                              = cp
    24 CAT                             = cat
    25 LS                              = ls
    26 RM                              = rm -fr
    27 PWD                             = `pwd`
    28 MAKE                            = make -s
    29 AR                              = ar -v
    30 RANLIB                          = ranlib
    31 BASENAME                        = basename
    32 GREP                            = grep
    33 GREP_NOT                        = egrep -v
    34 TR                              = tr
    35 UPPERtoLOWER                    = $(TR) [:lower:] [:upper:]
     15DIR_SCRIPT                      = $(MORPHEO_SCRIPT)
    3616
    3717#-----[ Compilation ]--------------------------------------
    38 
    39 SYSTEMC_systemc                 = $(TOOLS)/systemc
    40 SYSTEMC_systemcass              = $(TOOLS)/systemcass
    41 SYSTEMC_systemcass_deps         = $(SYSTEMC_systemcass)
    42 
    43 SYSTEMC                         = $(SYSTEMC_$(SIMULATOR))
    44 
    45 INCDIR                          = -I$(SYSTEMC)/include  \
     18INCDIR                          = $(SYSTEMC_INCDIR_$(SIMULATOR))        \
    4619                                  -I$(DIR_MORPHEO)
    4720
    48 DIRLIB_systemc                  = lib-$(TARGET_ARCH)   
    49 DIRLIB_systemcass               = lib
    50 DIRLIB_systemcass_deps          = $(DIRLIB_systemcass)
     21LIBDIR                          = $(DIR_LIBRARY)                        \
     22                                  $(SYSTEMC_LIBDIR_$(SIMULATOR))        \
     23                                  $(SOCLIB_LIBDIR)                      \
     24                                  $(OR1K_LIBDIR)                               
    5125
    52 LIBDIR                          = $(DIR_LIBRARY)                        \
    53                                   -L$(SYSTEMC)/$(DIRLIB_$(SIMULATOR))   \
    54                                   -L$(TOOLS)/soclib/lib                 \
    55                                   -L$(TOOLS)/or1k/lib                           
     26LIBS                            = $(LIBRARY) -lm $(SYSTEMC_LIBNAME_$(SIMULATOR)) $(SOCLIB_LIBNAME) $(OR1K_LIBNAME) -lbfd  -ldl
    5627
    57 LIBS                            = $(LIBRARY) -lm -lsystemc -lsoclib -lbfd -liberty -ldl
    58 # target architecture
    59 TARGET_ARCH                     = linux
    60 
    61 XX_systemc                      =
    62 XX_systemcass                   = -rdynamic                             \
    63                                   -ansi                                 \
    64                                   -Wno-long-long
    65 
    66 XX_systemcass_deps              = $(XX_systemcass)
    67 
    68 EXEC_PARAMS_systemc             =
    69 EXEC_PARAMS_systemcass          = --nobanner
    70 EXEC_PARAMS_systemcass_deps     = --nobanner --p
    71 
    72 
    73 XX_COMMON                       = -O3                                   \
     28FLAGS_COMMON                    = $(SYSTEMC_CFLAGS_$(SIMULATOR))        \
     29                                  -O3                                   \
    7430                                  -g3                                   \
    7531                                  -Wall                                 \
    7632                                  -Wunused
     33
    7734#                                 -Wno-deprecated                       \
    7835#                                 -Wno-non-template-friend              \
     
    8239#                                 -Werror                               \
    8340
    84 XX_OPT                          = $(XX_COMMON) $(XX_$(SIMULATOR))
    85 
    86 CXX                             = export LANG=C; g++
    87 CXX_OPT                         = $(XX_OPT) $(FLAGS) $(INCDIR)
    88 LXX_OPT                         = $(XX_OPT) $(FLAGS) $(LIBDIR)
    89 
    90 EXEC_PARAMS                     = $(EXEC_PARAMS_$(SIMULATOR))
     41CFLAGS                          = $(FLAGS) $(FLAGS_COMMON) $(INCDIR)
     42LFLAGS                          = $(FLAGS) $(FLAGS_COMMON) $(LIBDIR)
    9143
    9244#-----[ Variable ]-----------------------------------------
     
    10355test_env                        :
    10456                                @$(ECHO) "-------------------[ $(ENTITY) ]"
    105 ifeq ($(origin TOOLS), undefined)
    106                                 $(error "variable TOOLS       is undefined");
     57ifeq ($(origin MORPHEO_TOPLEVEL), undefined)
     58                                $(error "variable MORPHEO_TOPLEVEL is undefined");
     59endif
     60ifeq ($(origin MORPHEO_SCRIPT), undefined)
     61                                $(error "variable MORPHEO_SCRIPT   is undefined");
    10762endif
    10863ifeq ($(origin DIR_MORPHEO), undefined)
    109                                 $(error "variable DIR_MORPHEO is undefined");
     64                                $(error "variable DIR_MORPHEO      is undefined");
    11065endif
    11166
    11267$(DIR_OBJ)/%.o                  : $(DIR_SRC)/%.cpp $(HEADERS)
    11368                                @$(ECHO) "Compilation        : $*"
    114                                 @$(CXX) $(CXX_OPT) -c -o $@ $<
     69                                $(CXX) $(CFLAGS) -c -o $@ $<
    11570
    11671$(DIR_OBJ)                      :
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Makefile.Selftest

    r3 r15  
    77#
    88
    9 #-----[ Variables ]----------------------------------------
     9#-----[ Directory ]----------------------------------------
    1010DIR_BIN                         = bin
    1111DIR_LIB                         = ../lib
    12 DIR_CFG                         = configuration
     12DIR_CFG_GEN                             = configuration_generated
     13DIR_CFG_USER                    = configuration
    1314DIR_LOG                         = log
    1415
     16#-----[ Variables ]----------------------------------------
    1517CFG_FILE                        = configuration.cfg
    1618
    1719OBJECTS                         = $(OBJECTS_COMMON)
    1820
    19 EXEC_LOG                        = $(patsubst $(DIR_CFG)/%.cfg,$(DIR_LOG)/%.exec.log,$(wildcard $(DIR_CFG)/*.cfg))
     21EXEC_PARAMS                     = $(SYSTEMC_EXEC_PARAMS_$(SIMULATOR))
     22EXEC_LOG                        = $(patsubst $(DIR_CFG_GEN)/%.cfg,$(DIR_LOG)/%.exec.log,$(wildcard $(DIR_CFG_GEN)/*.cfg))       \
     23                                  $(patsubst $(DIR_CFG_USER)/%.cfg,$(DIR_LOG)/%.exec.log,$(wildcard $(DIR_CFG_USER)/*.cfg))
    2024EXEC                            = soft
    2125
     
    3640
    3741config_clean                    :
    38                                 @                                                                                                       \
    39                                 declare     NAME;                                                                                       \
    40                                 declare -i  CPT=0;                                                                                      \
    41                                 declare -ai PERIOD;                                                                                     \
    42                                 declare -a  RANGE_LOCAL;                                                                                \
    43                                 PERIOD[0]=1;                                                                                            \
    44                                                                                                                                         \
    45                                 while $(READ) line; do                                                                                  \
    46                                         LINE=($$line);                                                                                  \
    47                                                                                                                                         \
    48                                         if $(TEST) $$CPT -eq 0; then                                                                    \
    49                                                 NAME=$${LINE[0]};                                                                       \
    50                                         else                                                                                            \
    51                                                 RANGE_LOCAL=($$($(DIR_SCRIPT)/range.sh $${LINE[0]} $${LINE[1]} $${LINE[2]}));           \
    52                                                 PERIOD[$$CPT]=$$(($${PERIOD[$$(($$CPT-1))]}*$${#RANGE_LOCAL[*]}));                      \
    53                                         fi;                                                                                             \
    54                                                                                                                                         \
    55                                         CPT=$$(($$CPT+1));                                                                              \
    56                                 done < $(CFG_FILE);                                                                                     \
    57                                                                                                                                         \
    58                                 declare -i NB_CONFIG=$${PERIOD[$$(($$CPT-1))]};                                                         \
    59                                                                                                                                         \
    60                                 for i in $$($(DIR_SCRIPT)/range.sh 0 $$(($$NB_CONFIG-1))); do                                           \
    61                                         $(RM) "$(DIR_CFG)/$${NAME}_$${i}.cfg";                                                          \
    62                                 done;
     42                                @$(RM) $(DIR_CFG_GEN)
    6343
    64 config                          :
     44config                          : $(DIR_CFG_GEN)
    6545                                @$(ECHO) "Generate configuration"
    6646                                @                                                                                                       \
     
    11090                                                x=$$(($$x/$${SIZE[$$j]}));                                                              \
    11191                                        done;                                                                                           \
    112                                         $(ECHO) $${DATA[*]} > "$(DIR_CFG)/$${NAME}_$${i}.cfg";                                          \
     92                                        $(ECHO) $${DATA[*]} > "$(DIR_CFG_GEN)/$${NAME}_$${i}.cfg";                                              \
    11393                                        $(ECHO) "  - {$$i} $${DATA[*]}";                                                                \
    11494                                done;
    11595
    116 $(DIR_LOG)/%.exec.log           : $(DIR_CFG)/%.cfg $(DIR_BIN)/$(EXEC).x
     96$(DIR_LOG)/%.exec.log           : $(DIR_CFG_GEN)/%.cfg $(DIR_BIN)/$(EXEC).x
    11797                                @$(ECHO) "Execute            : $*"
    118                                 @$(EXPORT) SYSTEMC=$(SYSTEMC) ; ./$(DIR_BIN)/$(EXEC).x $(EXEC_PARAMS) $* `$(CAT) $<` > $@
     98                                @$(EXPORT) SYSTEMC=$(SYSTEMC_$(SIMULATOR)) ; ./$(DIR_BIN)/$(EXEC).x $(EXEC_PARAMS) $* `$(CAT) $<` > $@
    11999                                declare -i count=`$(GREP) -ch "Test KO" $@`;            \
    120100                                if $(TEST) $$count -eq 0;                               \
     
    125105$(DIR_BIN)/%.x                  : $(OBJECTS) $(HEADERS) $(DIR_LIB)
    126106                                @$(ECHO) "Linkage            : $*"
    127                                 @$(CXX) $(LXX_OPT) -o $@ $(OBJECTS) $(LIBS)
     107                                $(CXX) $(LFLAGS) -o $@ $(OBJECTS) $(LIBS)
    128108
    129109$(DIR_BIN)                      :
     
    135115                                @$(MKDIR) $@
    136116
     117$(DIR_CFG_GEN)                  :
     118                                @$(ECHO) "Create directory   : $@"
     119                                @$(MKDIR) $@
     120
    137121selftest_clean_all              : library_clean config_clean
    138122                               
    139123selftest_clean                  :
    140124                                @$(RM)  $(DIR_LOG)              \
    141                                         $(DIR_CFG)/*~           \
     125                                        $(DIR_CFG_USER)/*~      \
    142126                                        *.vhdl                  \
    143127                                        *.stat                  \
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Makefile.Synthesis

    r3 r15  
    1616FPGA_CFG_FILE_GLOBAL            = configure.mkf
    1717
    18 #-----[ Tools ]--------------------------------------------
    19 VLIB                            = vlib
    20 VCOM                            = vcom
    21 VSIM                            = vsim -c -do "run -all; quit"
    22 
    23 ENV_XILINX                      = source $(TOOLS)/xilinx/settings.sh
    24 
    2518#-----[ Rules ]--------------------------------------------
    2619.PRECIOUS                       : $(DIR_LOG)/%.vhdl.log $(DIR_LOG)/%.vhdl_sim.log
    2720
    2821vhdl                            : execute $(DIR_WORK)
    29                                 @declare -a vhdl_files=($$($(LS) $(DIR_VHDL)/*_Pack.vhdl));                                             \
     22                                @                                                                                                       \
     23                                declare -a vhdl_files=($$($(LS) $(DIR_VHDL)/*_Pack.vhdl));                                              \
    3024                                declare -a log_files=($${vhdl_files[*]/%.vhdl/.vhdl.log});                                              \
    31                                 $(MAKE) $${log_files[*]/#$(DIR_VHDL)/$(DIR_LOG)};
    32                                 @declare -a vhdl_files=($$($(LS) $(DIR_VHDL)/*_Testbench.vhdl));                                        \
     25                                if $(TEST) $${#log_files[*]} -ne 0; then $(MAKE) $${log_files[*]/#$(DIR_VHDL)/$(DIR_LOG)}; fi           
     26                                @                                                                                                       \
     27                                declare -a vhdl_files=($$($(LS) $(DIR_VHDL)/*_Testbench.vhdl));                                 \
    3328                                declare -a log_files=($${vhdl_files[*]/%.vhdl/.vhdl.log});                                              \
    34                                 $(MAKE) $${log_files[*]/#$(DIR_VHDL)/$(DIR_LOG)};
    35                                 @declare -a vhdl_files=($$($(LS) $(DIR_VHDL)/*.vhdl|$(GREP_NOT) "(_Pack\.|_Testbench\.)"));             \
     29                                if $(TEST) $${#log_files[*]} -ne 0; then $(MAKE) $${log_files[*]/#$(DIR_VHDL)/$(DIR_LOG)}; fi           
     30                                @                                                                                                       \
     31                                declare -a vhdl_files=($$($(LS) $(DIR_VHDL)/*.vhdl|$(GREP_NOT) "(_Pack\.|_Testbench\.)"));              \
    3632                                declare -a log_files=($${vhdl_files[*]/%.vhdl/.vhdl.log});                                              \
    37                                 $(MAKE) $${log_files[*]/#$(DIR_VHDL)/$(DIR_LOG)};
     33                                if $(TEST) $${#log_files[*]} -ne 0; then $(MAKE) $${log_files[*]/#$(DIR_VHDL)/$(DIR_LOG)}; fi           
    3834
    3935vhdl_sim                        : vhdl
    40                                 @declare -a vhdl_files=($$($(LS) $(DIR_VHDL)/*_Testbench.vhdl));                                        \
     36                                @                                                                                                       \
     37                                declare -a vhdl_files=($$($(LS) $(DIR_VHDL)/*_Testbench.vhdl));                                         \
    4138                                declare -a log_files=($${vhdl_files[*]/%.vhdl/.vhdl_sim.log});                                          \
    42                                 $(MAKE) $${log_files[*]/#$(DIR_VHDL)/$(DIR_LOG)};
     39                                if $(TEST) $${#log_files[*]} -ne 0; then $(MAKE) $${log_files[*]/#$(DIR_VHDL)/$(DIR_LOG)}; fi
    4340
    4441fpga                            : vhdl_sim
     
    5249                                        $(ECHO) -e ""                                     >> $(FPGA_CFG_FILE_LOCAL);                    \
    5350                                done
    54                                 @($(ENV_XILINX); $(CD) $(FPGA_CFG_FILE_GLOBAL_DIR); ./$(FPGA_CFG_FILE_GLOBAL)) 
     51                                @($(XILINX_ENV); $(CD) $(FPGA_CFG_FILE_GLOBAL_DIR); ./$(FPGA_CFG_FILE_GLOBAL)) 
    5552                                @$(MAKE) $(patsubst $(DIR_CFG)/%.cfg,$(DIR_LOG)/%.fpga.log,$(wildcard $(DIR_CFG)/*.cfg))
    5653
    5754$(DIR_LOG)/%.fpga.log           :
    5855                                @$(ECHO) "Synthetis on FPGA  : $*"
    59                                 @$(ENV_XILINX); $(MAKE) -f Makefile.mkf $*.ngc > $@
     56                                @$(XILINX_ENV); $(MAKE) -f Makefile.mkf $*.ngc > $@
    6057
    6158$(DIR_WORK)                     :
    6259                                @$(ECHO) "Create work-space  : $@"
    63                                 @$(VLIB) $@
     60                                @$(MODELTECH_VLIB) $@
    6461
    6562$(DIR_LOG)/%.vhdl_sim.log       : $(DIR_VHDL)/%.vhdl $(DIR_LOG)/%.vhdl.log
    6663                                @$(ECHO) "VHDL's Simulation: $*"
    67                                 @$(VSIM) "$(DIR_WORK).`$(BASENAME) $* |$(UPPERtoLOWER)`" > $@
     64                                @$(MODELTECH_VSIM) "$(DIR_WORK).`$(BASENAME) $* |$(UPPERtoLOWER)`" > $@
    6865                                declare -i count=`$(GREP) -ch "Test KO" $@`;            \
    6966                                if $(TEST) $$count -eq 0;                               \
     
    7471$(DIR_LOG)/%.vhdl.log           : $(DIR_VHDL)/%.vhdl
    7572                                @$(ECHO) "VHDL's Compilation : $*"
    76                                 @$(VCOM) $< > $@
     73                                @$(MODELTECH_VCOM) $< > $@
    7774
    7875synthesis_clean                 :
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Makefile.defs

    r3 r15  
    1515
    1616#-----[ Flags ]--------------------------------------------
    17 FLAGS                           =       -DSYSTEMC               \
     17FLAGS                           =       -DVHDL                  \
     18                                        -DVHDL_TESTBENCH        \
     19                                        -DSYSTEMC               \
     20                                        -DSTATISTICS            \
    1821                                        -DCONFIGURATION         \
    19                                         -DSTATISTICS            \
    20                                         -DVHDL                  \
    21                                         -DVHDL_TESTBENCH
    22 #                                       -DDEBUG=DEBUG_TRACE
    23 
     22                                        -DDEBUG=DEBUG_ALL   
     23                                       
    2424# Flags :
    2525# DEBUG={level}                 - Print Debug Message
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Makefile.mkf

    r2 r15  
    33#
    44
    5 all: _Generic/Counter/SelfTest _Generic/RegisterFile/SelfTest _Generic/Shifter/SelfTest _Generic/Select/Pseudo_LRU/SelfTest _Stage_1_Ifetch/Predictor/Meta_Predictor/Two_Level_Branch_Predictor/Branch_History_Table/SelfTest _Stage_1_Ifetch/Predictor/Meta_Predictor/Two_Level_Branch_Predictor/Pattern_History_Table/SelfTest _Stage_1_Ifetch/Predictor/Meta_Predictor/Two_Level_Branch_Predictor/Two_Level_Branch_Predictor_Glue/SelfTest
    6 
    7 _Generic/Counter/SelfTest:
    8         gmake all -C Generic/Counter/SelfTest
     5all: _Generic/RegisterFile/SelfTest _Generic/Select/Priority_Fixed/SelfTest
    96
    107_Generic/RegisterFile/SelfTest:
    118        gmake all -C Generic/RegisterFile/SelfTest
    129
    13 _Generic/Shifter/SelfTest:
    14         gmake all -C Generic/Shifter/SelfTest
    15 
    16 _Generic/Select/Pseudo_LRU/SelfTest:
    17         gmake all -C Generic/Select/Pseudo_LRU/SelfTest
    18 
    19 _Stage_1_Ifetch/Predictor/Meta_Predictor/Two_Level_Branch_Predictor/Branch_History_Table/SelfTest:
    20         gmake all -C Stage_1_Ifetch/Predictor/Meta_Predictor/Two_Level_Branch_Predictor/Branch_History_Table/SelfTest
    21 
    22 _Stage_1_Ifetch/Predictor/Meta_Predictor/Two_Level_Branch_Predictor/Pattern_History_Table/SelfTest:
    23         gmake all -C Stage_1_Ifetch/Predictor/Meta_Predictor/Two_Level_Branch_Predictor/Pattern_History_Table/SelfTest
    24 
    25 _Stage_1_Ifetch/Predictor/Meta_Predictor/Two_Level_Branch_Predictor/Two_Level_Branch_Predictor_Glue/SelfTest:
    26         gmake all -C Stage_1_Ifetch/Predictor/Meta_Predictor/Two_Level_Branch_Predictor/Two_Level_Branch_Predictor_Glue/SelfTest
     10_Generic/Select/Priority_Fixed/SelfTest:
     11        gmake all -C Generic/Select/Priority_Fixed/SelfTest
    2712
    2813clean:
    29         gmake clean -C Generic/Counter/SelfTest
    3014        gmake clean -C Generic/RegisterFile/SelfTest
    31         gmake clean -C Generic/Shifter/SelfTest
    32         gmake clean -C Generic/Select/Pseudo_LRU/SelfTest
    33         gmake clean -C Stage_1_Ifetch/Predictor/Meta_Predictor/Two_Level_Branch_Predictor/Branch_History_Table/SelfTest
    34         gmake clean -C Stage_1_Ifetch/Predictor/Meta_Predictor/Two_Level_Branch_Predictor/Pattern_History_Table/SelfTest
    35         gmake clean -C Stage_1_Ifetch/Predictor/Meta_Predictor/Two_Level_Branch_Predictor/Two_Level_Branch_Predictor_Glue/SelfTest
     15        gmake clean -C Generic/Select/Priority_Fixed/SelfTest
    3616
    3717re: clean all
    3818
    3919install:
    40         gmake install -C Generic/Counter/SelfTest
    4120        gmake install -C Generic/RegisterFile/SelfTest
    42         gmake install -C Generic/Shifter/SelfTest
    43         gmake install -C Generic/Select/Pseudo_LRU/SelfTest
    44         gmake install -C Stage_1_Ifetch/Predictor/Meta_Predictor/Two_Level_Branch_Predictor/Branch_History_Table/SelfTest
    45         gmake install -C Stage_1_Ifetch/Predictor/Meta_Predictor/Two_Level_Branch_Predictor/Pattern_History_Table/SelfTest
    46         gmake install -C Stage_1_Ifetch/Predictor/Meta_Predictor/Two_Level_Branch_Predictor/Two_Level_Branch_Predictor_Glue/SelfTest
     21        gmake install -C Generic/Select/Priority_Fixed/SelfTest
    4722
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/New_Component.sh

    r2 r15  
    55SOURCE_FILE="New_Component";
    66SOURCE_DIR="./$SOURCE_FILE";
     7TMP_DIR="/tmp/$SOURCE_FILE"
    78
    89#-----[ usage ]------------------------------------------------------
     
    3435    fi;
    3536
     37    if test   -d $TMP_DIR; then
     38        echo "Temporary directory \"$TMP_DIR\" exist already";
     39        usage;
     40    fi;
     41
    3642    if test -f $SED_SCRIPT; then
    3743        echo "File \"$SED_SCRIPT\" exist";
     
    239245function translation_directory_rec
    240246{
    241     # recursion
    242     for ENTRY in $1/*; do
    243 
    244         if test -d $ENTRY; then
    245             translation_directory_rec $ENTRY;
    246         else
    247             translation_file          $ENTRY
    248         fi;
    249     done;
     247    if test `ls $1|grep -c ""` -ne 0; then
     248        # recursion
     249        for ENTRY in $1/*; do
     250       
     251                if test -d $ENTRY; then
     252                    translation_directory_rec $ENTRY;
     253                else
     254                    translation_file          $ENTRY
     255                fi;
     256        done;
     257     fi;
    250258}
    251259
     
    280288   
    281289    #Copy
    282     cp -r $SOURCE_DIR/* $1/$2/;
    283    
     290    cp -r $SOURCE_DIR $TMP_DIR;
     291    find  $TMP_DIR   -iname ".svn" -type d -exec rm -fr '{}' \; &> /dev/null
     292    mv    $TMP_DIR/* $1/$2;
     293    rmdir $TMP_DIR
     294   
     295
    284296    #translation
    285297    rename_directory      "$1/$2" $SOURCE_FILE $2;
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/New_Component/SelfTest/src/main.cpp

    r2 r15  
    1010#define NB_PARAMS 0
    1111
    12 void usage (string exec)
     12void usage (int argc, char * argv[])
    1313{
    14   cerr << "<Usage> " << exec << " name_instance list_params" << endl
    15        << "list_params is :" << endl;
     14  cerr << "<Usage> " << argv[0] << " name_instance list_params" << endl
     15       << "list_params is :" << endl
    1616//     << " - size_data     (unsigned int)" << endl
    1717//     << " - nb_port       (unsigned int)" << endl;
     18       << "" << endl;
     19
     20  for (int i=0; i<argc; i++)
     21    cerr << argv[i] << " ";
     22  cerr << endl;
    1823
    1924  exit (1);
     
    2631#endif
    2732{
    28   if (argc != 2+NB_PARAMS)
    29     usage (argv[0]);
     33  if (argc < 2+NB_PARAMS)
     34    usage (argc, argv);
    3035
    3136  const string   name      = argv[1];
     
    4651    {
    4752      cout << "<" << name << "> : " <<  error.what ();
    48       return;
     53      exit (EXIT_FAILURE);
    4954    }
    5055  catch (...)
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/New_Component/SelfTest/src/test.cpp

    r2 r15  
    99#define NB_ITERATION 1
    1010
     11#define LABEL(str) do {cout << "{"+toString(static_cast<uint32_t>(sc_simulation_time()))+"} " << str << endl; _@COMPONENT->vhdl_testbench_label(str);} while (0)
     12
    1113#include "Behavioural/@DIRECTORY/SelfTest/include/test.h"
    1214#include "Include/Test.h"
    1315
    1416void test (string name,
    15            morpheo::behavioural::@NAMESPACE_USE::Parameters param)
     17           morpheo::behavioural::@NAMESPACE_USE::Parameters _param)
    1618{
    1719  cout << "<" << name << "> : Simulation SystemC" << endl;
     
    2123                                             morpheo::behavioural::Parameters_Statistics(5,50),
    2224#endif
    23                                              param);
     25                                             _param);
    2426 
    2527#ifdef SYSTEMC
     
    2830   *********************************************************************/
    2931  sc_clock                               * CLOCK;
    30 
     32  sc_signal<Tcontrol_t>                  * NRESET;
    3133
    3234  string rename;
    3335
    3436  CLOCK                                  = new sc_clock ("clock", 1.0, 0.5);
     37  NRESET                                 = new sc_signal<Tcontrol_t> ("NRESET");
    3538 
    3639  /********************************************************
     
    4144 
    4245  (*(_@COMPONENT->in_CLOCK))        (*(CLOCK));
     46  (*(_@COMPONENT->in_NRESET))       (*(NRESET));
     47
     48
     49  cout << "<" << name << "> Start Simulation ............" << endl;
    4350
    4451  /********************************************************
     
    4653   ********************************************************/
    4754
    48   cout << "<" << name << "> Start Simulation ............" << endl;
    4955  // Initialisation
    5056
     
    5561
    5662  sc_start(0);
    57   _@COMPONENT->vhdl_testbench_label("Initialisation");
    58   cout << "{"+toString(static_cast<uint32_t>(sc_simulation_time()))+"} Initialisation" << endl;
     63  LABEL("Initialisation");
    5964
    60 
    61   _@COMPONENT->vhdl_testbench_label("Loop of Test");
    62   cout << "{"+toString(static_cast<uint32_t>(sc_simulation_time()))+"} Loop of Test" << endl;
     65  LABEL("Loop of Test");
    6366
    6467  for (uint32_t iteration=0; iteration<NB_ITERATION; iteration ++)
    6568    {
    66       _@COMPONENT->vhdl_testbench_label("Iteration "+toString(iteration));
     69      LABEL("Iteration "+toString(iteration));
    6770
    6871      sc_start(1);
     
    7578  cout << "<" << name << "> ............ Stop Simulation" << endl;
    7679
     80  delete CLOCK;
     81  delete NRESET;
    7782#endif
    7883
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/New_Component/VERSION

    r3 r15  
    1 v0.4
     1v0.5
     2
     30.5 modif vhdl_port et vhdl_testbench_port -> ajout d'une macro
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/New_Component/include/New_Component.h

    r2 r15  
    9393  private : void     deallocation              (void);
    9494                                               
     95//#if defined(STATISTICS) or defined(VHDL_TESTBENCH)
    9596  public  : void     transition                (void);
    96 //public  : void     genMoore                  (void) {/* empty */};
     97//#endif
    9798#endif                                         
    9899#ifdef STATISTICS
     
    108109                                               
    109110#ifdef VHDL_TESTBENCH                         
    110   private : void     vhdl_testbench_port       (void);
    111111  private : void     vhdl_testbench_transition (void);
    112112#endif
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/New_Component/include/Types.h

    r2 r15  
    1 #ifdef SYSTEMC
    21#ifndef morpheo_behavioural_@DEFINE_Type_h
    32#define morpheo_behavioural_@DEFINE_Type_h
     
    2120
    2221#endif
    23 #endif
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/New_Component/src/New_Component.cpp

    r2 r15  
    3030
    3131#ifdef STATISTICS
     32    log_printf(INFO,@COMPONENT,"@COMPONENT","Allocation of statistics");
     33
    3234    // Allocation of statistics
    3335    _stat = new Statistics (static_cast<string>(_name),
     
    3739
    3840#ifdef VHDL_TESTBENCH
     41    log_printf(INFO,@COMPONENT,"@COMPONENT","Creation of a testbench");
     42
    3943    // Creation of a testbench
    4044    //  -> port
    4145    //  -> clock's signals
    4246    _vhdl_testbench = new Vhdl_Testbench (_name);
    43     vhdl_testbench_port           ();
    44     _vhdl_testbench->set_clock    ("in_CLOCK",true);
    4547#endif
    4648
    4749#ifdef VHDL
    4850    // generate the vhdl
     51    log_printf(INFO,@COMPONENT,"@COMPONENT","Generate the vhdl");
     52
    4953    vhdl();
    5054#endif
    5155
     56#ifdef VHDL_TESTBENCH
     57    // must be invoke after affect of port
     58    _vhdl_testbench->set_clock    ("in_CLOCK",true);
     59#endif
     60
    5261#ifdef SYSTEMC
     62    log_printf(INFO,@COMPONENT,"@COMPONENT","Allocation");
     63
    5364    allocation ();
     65
     66//#if defined(STATISTICS) or defined(VHDL_TESTBENCH)
     67    log_printf(INFO,@COMPONENT,"@COMPONENT","Method - transition");
    5468
    5569    SC_METHOD (transition);
    5670    dont_initialize ();
    5771    sensitive_pos << *(in_CLOCK);
    58 
    59 //     SC_METHOD (genMoore);
    60 //     dont_initialize ();
    61 //     sensitive_neg << *(in_CLOCK);
     72//#endif
    6273
    6374#ifdef SYSTEMCASS_SPECIFIC
     
    7485
    7586#ifdef VHDL_TESTBENCH
     87    log_printf(INFO,@COMPONENT,"~@COMPONENT","Generate Testbench  file");
     88
    7689    // generate the test bench
    7790    _vhdl_testbench->generate_file();
     
    8093
    8194#ifdef STATISTICS
     95    log_printf(INFO,@COMPONENT,"~@COMPONENT","Generate Statistics file");
     96
    8297    _stat->generate_file(statistics(0));
    8398   
     
    86101
    87102#ifdef SYSTEMC
     103    log_printf(INFO,@COMPONENT,"~@COMPONENT","Deallocation");
     104
    88105    deallocation ();
    89106#endif
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/New_Component/src/New_Component_allocation.cpp

    r2 r15  
    1919    log_printf(FUNC,@COMPONENT,"allocation","Begin");
    2020
     21//#if defined(STATISTICS) or defined(VHDL_TESTBENCH)
    2122    in_CLOCK  = new SC_CLOCK           ("in_CLOCK");
     23//#endif
    2224    in_NRESET = new SC_IN (Tcontrol_t) ("in_NRESET");
    2325
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/New_Component/src/New_Component_deallocation.cpp

    r2 r15  
    1717    log_printf(FUNC,@COMPONENT,"deallocation","Begin");
    1818
     19//#if defined(STATISTICS) or defined(VHDL_TESTBENCH)
    1920    delete in_CLOCK;
     21//#endif
    2022    delete in_NRESET;
    2123
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/New_Component/src/New_Component_transition.cpp

    r2 r15  
    11#ifdef SYSTEMC
     2//#if defined(STATISTICS) or defined(VHDL_TESTBENCH)
    23/*
    34 * $Id$
     
    3233}; // end namespace morpheo             
    3334#endif
     35//#endif
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/New_Component/src/New_Component_vhdl_port.cpp

    r2 r15  
    99#include "Behavioural/@DIRECTORY/include/@COMPONENT.h"
    1010
     11#ifdef VHDL_TESTBENCH
     12# define VHDL_SET_PORT(name,direction,size) do {vhdl.set_port (name,direction,size); _vhdl_testbench->set_port (name,direction,size);} while(0)
     13#else
     14# define VHDL_SET_PORT(name,direction,size)     vhdl.set_port (name,direction,size)
     15#endif
     16
    1117namespace morpheo                    {
    1218namespace behavioural {
     
    1824
    1925    vhdl.set_port (" in_CLOCK" , IN, 1);
    20     vhdl.set_port (" in_NRESET", IN, 1);
     26    VHDL_SET_PORT (" in_NRESET", IN, 1);
    2127
    2228    log_printf(FUNC,@COMPONENT,"vhdl_port","End");
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/New_Component/src/Parameters.cpp

    r2 r15  
    2121  Parameters::Parameters (Parameters & param)
    2222  {
    23     log_printf(FUNC,@COMPONENT,"Parameters","Begin");
     23    log_printf(FUNC,@COMPONENT,"Parameters (copy)","Begin");
    2424    test();
    25     log_printf(FUNC,@COMPONENT,"Parameters","End");
     25    log_printf(FUNC,@COMPONENT,"Parameters (copy)","End");
    2626  };
    2727
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/New_Component/src/Parameters_print.cpp

    r3 r15  
    2121
    2222    xml.balise_open("@COMPONENT_LOWER");
    23 //  xml.  singleton_begin("size_data");
    24 //  xml.    attribut("value",toString(_size_data));
    25 //  xml.  singleton_end();
    26 //  xml.  singleton_begin("nb_port  ");
    27 //  xml.    attribut("value",toString(_nb_port));
    28 //  xml.  singleton_end();
     23//  xml.singleton_begin("size_data"); xml.attribut("value",toString(_size_data)); xml.singleton_end();
     24//  xml.singleton_begin("nb_port  "); xml.attribut("value",toString(_nb_port  )); xml.singleton_end();
    2925    xml.balise_close();
    3026
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Stage_1_Ifetch/Predictor/Meta_Predictor/SelfTest/configuration.cfg

    r5 r15  
    11Meta_Predictor
    2 0       0       +1      # have_meta_predictor               
     21       1       +1      # have_meta_predictor               
    331       1       +1      # predictor_0_have_bht             
    4410      10      +1      # predictor_0_bht_size_shifter     
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Stage_1_Ifetch/Predictor/Meta_Predictor/SelfTest/src/test.cpp

    r5 r15  
    2828   *********************************************************************/
    2929  sc_clock                         * CLOCK                      ;
     30  sc_signal<Tcontrol_t>            * NRESET                     ;
    3031
    3132    // Interface Predict
     
    4546  string rename;
    4647
    47   CLOCK                                  = new sc_clock ("clock", 1.0, 0.5);
    48  
     48  CLOCK                       = new sc_clock ("clock", 1.0, 0.5);
     49  NRESET                      = new sc_signal<Tcontrol_t> ("NRESET");
     50
    4951  PREDICT_VAL                 = new sc_signal<Tcontrol_t>     * [_param._nb_prediction     ];
    5052  PREDICT_ACK                 = new sc_signal<Tcontrol_t>     * [_param._nb_prediction     ];
     
    9395  cout << "<" << name << "> Instanciation of _Meta_Predictor" << endl;
    9496 
    95   (*(_Meta_Predictor->in_CLOCK))        (*(CLOCK));
     97  (*(_Meta_Predictor->in_CLOCK ))        (*(CLOCK ));
     98  (*(_Meta_Predictor->in_NRESET))        (*(NRESET));
    9699
    97100    for (uint32_t i=0; i<_param._nb_prediction; i++)
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Stage_1_Ifetch/Predictor/Meta_Predictor/Two_Level_Branch_Predictor/Branch_History_Table/Makefile.deps

    r2 r15  
    1414include                         $(DIR_MORPHEO)/Behavioural/Generic/Shifter/Makefile.deps
    1515endif
    16 ifndef RegisterFile
    17 include                         $(DIR_MORPHEO)/Behavioural/Generic/RegisterFile/Makefile.deps
     16ifndef RegisterFile_Monolithic
     17include                         $(DIR_MORPHEO)/Behavioural/Generic/RegisterFile/RegisterFile_Monolithic/Makefile.deps
    1818endif
    1919
     
    2222#-----[ Library ]------------------------------------------
    2323Branch_History_Table_LIBRARY            =       -lBranch_History_Table  \
    24                                                 $(RegisterFile_LIBRARY) \
     24                                                $(RegisterFile_Monolithic_LIBRARY)      \
    2525                                                $(Shifter_LIBRARY)      \
    2626                                                $(Behavioural_LIBRARY) 
    2727
    2828Branch_History_Table_DIR_LIBRARY        =       -L$(DIR_MORPHEO)/Behavioural/Stage_1_Ifetch/Predictor/Meta_Predictor/Two_Level_Branch_Predictor/Branch_History_Table/lib        \
    29                                                 $(RegisterFile_DIR_LIBRARY)     \
     29                                                $(RegisterFile_Monolithic_DIR_LIBRARY)  \
    3030                                                $(Shifter_DIR_LIBRARY)          \
    3131                                                $(Behavioural_DIR_LIBRARY)
     
    3636                                        @$(MAKE) Behavioural_library
    3737                                        @$(MAKE) Shifter_library
    38                                         @$(MAKE) RegisterFile_library
     38                                        @$(MAKE) RegisterFile_Monolithic_library
    3939                                        @$(MAKE) --directory=$(DIR_MORPHEO)/Behavioural/Stage_1_Ifetch/Predictor/Meta_Predictor/Two_Level_Branch_Predictor/Branch_History_Table --makefile=Makefile
    4040
     
    4242                                        @$(MAKE) Behavioural_library_clean
    4343                                        @$(MAKE) Shifter_library_clean
    44                                         @$(MAKE) RegisterFile_library_clean
     44                                        @$(MAKE) RegisterFile_Monolithic_library_clean
    4545                                        @$(MAKE) --directory=$(DIR_MORPHEO)/Behavioural/Stage_1_Ifetch/Predictor/Meta_Predictor/Two_Level_Branch_Predictor/Branch_History_Table --makefile=Makefile clean
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Stage_1_Ifetch/Predictor/Meta_Predictor/Two_Level_Branch_Predictor/Branch_History_Table/SelfTest/mkf.info

    r2 r15  
    1 
    2 # Branch_History_Table_0
    3 target_dep      all     Branch_History_Table_0.ngc
    4 target_dep      Branch_History_Table_0.ngc      Branch_History_Table_0.prj
    5 target_dep      Branch_History_Table_0.prj      Branch_History_Table_0_Pack.vhdl Branch_History_Table_0_RegisterFile_Pack.vhdl Branch_History_Table_0_RegisterFile.vhdl Branch_History_Table_0_Shifter_Pack.vhdl Branch_History_Table_0_Shifter.vhdl Branch_History_Table_0.vhdl
    6 
    7 # Branch_History_Table_10
    8 target_dep      all     Branch_History_Table_10.ngc
    9 target_dep      Branch_History_Table_10.ngc     Branch_History_Table_10.prj
    10 target_dep      Branch_History_Table_10.prj     Branch_History_Table_10_Pack.vhdl Branch_History_Table_10_RegisterFile_Pack.vhdl Branch_History_Table_10_RegisterFile.vhdl Branch_History_Table_10_Shifter_Pack.vhdl Branch_History_Table_10_Shifter.vhdl Branch_History_Table_10.vhdl
    11 
    12 # Branch_History_Table_11
    13 target_dep      all     Branch_History_Table_11.ngc
    14 target_dep      Branch_History_Table_11.ngc     Branch_History_Table_11.prj
    15 target_dep      Branch_History_Table_11.prj     Branch_History_Table_11_Pack.vhdl Branch_History_Table_11_RegisterFile_Pack.vhdl Branch_History_Table_11_RegisterFile.vhdl Branch_History_Table_11_Shifter_Pack.vhdl Branch_History_Table_11_Shifter.vhdl Branch_History_Table_11.vhdl
    16 
    17 # Branch_History_Table_12
    18 target_dep      all     Branch_History_Table_12.ngc
    19 target_dep      Branch_History_Table_12.ngc     Branch_History_Table_12.prj
    20 target_dep      Branch_History_Table_12.prj     Branch_History_Table_12_Pack.vhdl Branch_History_Table_12_RegisterFile_Pack.vhdl Branch_History_Table_12_RegisterFile.vhdl Branch_History_Table_12_Shifter_Pack.vhdl Branch_History_Table_12_Shifter.vhdl Branch_History_Table_12.vhdl
    21 
    22 # Branch_History_Table_13
    23 target_dep      all     Branch_History_Table_13.ngc
    24 target_dep      Branch_History_Table_13.ngc     Branch_History_Table_13.prj
    25 target_dep      Branch_History_Table_13.prj     Branch_History_Table_13_Pack.vhdl Branch_History_Table_13_RegisterFile_Pack.vhdl Branch_History_Table_13_RegisterFile.vhdl Branch_History_Table_13_Shifter_Pack.vhdl Branch_History_Table_13_Shifter.vhdl Branch_History_Table_13.vhdl
    26 
    27 # Branch_History_Table_14
    28 target_dep      all     Branch_History_Table_14.ngc
    29 target_dep      Branch_History_Table_14.ngc     Branch_History_Table_14.prj
    30 target_dep      Branch_History_Table_14.prj     Branch_History_Table_14_Pack.vhdl Branch_History_Table_14_RegisterFile_Pack.vhdl Branch_History_Table_14_RegisterFile.vhdl Branch_History_Table_14_Shifter_Pack.vhdl Branch_History_Table_14_Shifter.vhdl Branch_History_Table_14.vhdl
    31 
    32 # Branch_History_Table_15
    33 target_dep      all     Branch_History_Table_15.ngc
    34 target_dep      Branch_History_Table_15.ngc     Branch_History_Table_15.prj
    35 target_dep      Branch_History_Table_15.prj     Branch_History_Table_15_Pack.vhdl Branch_History_Table_15_RegisterFile_Pack.vhdl Branch_History_Table_15_RegisterFile.vhdl Branch_History_Table_15_Shifter_Pack.vhdl Branch_History_Table_15_Shifter.vhdl Branch_History_Table_15.vhdl
    36 
    37 # Branch_History_Table_16
    38 target_dep      all     Branch_History_Table_16.ngc
    39 target_dep      Branch_History_Table_16.ngc     Branch_History_Table_16.prj
    40 target_dep      Branch_History_Table_16.prj     Branch_History_Table_16_Pack.vhdl Branch_History_Table_16_RegisterFile_Pack.vhdl Branch_History_Table_16_RegisterFile.vhdl Branch_History_Table_16_Shifter_Pack.vhdl Branch_History_Table_16_Shifter.vhdl Branch_History_Table_16.vhdl
    41 
    42 # Branch_History_Table_17
    43 target_dep      all     Branch_History_Table_17.ngc
    44 target_dep      Branch_History_Table_17.ngc     Branch_History_Table_17.prj
    45 target_dep      Branch_History_Table_17.prj     Branch_History_Table_17_Pack.vhdl Branch_History_Table_17_RegisterFile_Pack.vhdl Branch_History_Table_17_RegisterFile.vhdl Branch_History_Table_17_Shifter_Pack.vhdl Branch_History_Table_17_Shifter.vhdl Branch_History_Table_17.vhdl
    46 
    47 # Branch_History_Table_18
    48 target_dep      all     Branch_History_Table_18.ngc
    49 target_dep      Branch_History_Table_18.ngc     Branch_History_Table_18.prj
    50 target_dep      Branch_History_Table_18.prj     Branch_History_Table_18_Pack.vhdl Branch_History_Table_18_RegisterFile_Pack.vhdl Branch_History_Table_18_RegisterFile.vhdl Branch_History_Table_18_Shifter_Pack.vhdl Branch_History_Table_18_Shifter.vhdl Branch_History_Table_18.vhdl
    51 
    52 # Branch_History_Table_19
    53 target_dep      all     Branch_History_Table_19.ngc
    54 target_dep      Branch_History_Table_19.ngc     Branch_History_Table_19.prj
    55 target_dep      Branch_History_Table_19.prj     Branch_History_Table_19_Pack.vhdl Branch_History_Table_19_RegisterFile_Pack.vhdl Branch_History_Table_19_RegisterFile.vhdl Branch_History_Table_19_Shifter_Pack.vhdl Branch_History_Table_19_Shifter.vhdl Branch_History_Table_19.vhdl
    56 
    57 # Branch_History_Table_1
    58 target_dep      all     Branch_History_Table_1.ngc
    59 target_dep      Branch_History_Table_1.ngc      Branch_History_Table_1.prj
    60 target_dep      Branch_History_Table_1.prj      Branch_History_Table_10_Pack.vhdl Branch_History_Table_10_RegisterFile_Pack.vhdl Branch_History_Table_10_RegisterFile.vhdl Branch_History_Table_10_Shifter_Pack.vhdl Branch_History_Table_10_Shifter.vhdl Branch_History_Table_10.vhdl Branch_History_Table_11_Pack.vhdl Branch_History_Table_11_RegisterFile_Pack.vhdl Branch_History_Table_11_RegisterFile.vhdl Branch_History_Table_11_Shifter_Pack.vhdl Branch_History_Table_11_Shifter.vhdl Branch_History_Table_11.vhdl Branch_History_Table_12_Pack.vhdl Branch_History_Table_12_RegisterFile_Pack.vhdl Branch_History_Table_12_RegisterFile.vhdl Branch_History_Table_12_Shifter_Pack.vhdl Branch_History_Table_12_Shifter.vhdl Branch_History_Table_12.vhdl Branch_History_Table_13_Pack.vhdl Branch_History_Table_13_RegisterFile_Pack.vhdl Branch_History_Table_13_RegisterFile.vhdl Branch_History_Table_13_Shifter_Pack.vhdl Branch_History_Table_13_Shifter.vhdl Branch_History_Table_13.vhdl Branch_History_Table_14_Pack.vhdl Branch_History_Table_14_RegisterFile_Pack.vhdl Branch_History_Table_14_RegisterFile.vhdl Branch_History_Table_14_Shifter_Pack.vhdl Branch_History_Table_14_Shifter.vhdl Branch_History_Table_14.vhdl Branch_History_Table_15_Pack.vhdl Branch_History_Table_15_RegisterFile_Pack.vhdl Branch_History_Table_15_RegisterFile.vhdl Branch_History_Table_15_Shifter_Pack.vhdl Branch_History_Table_15_Shifter.vhdl Branch_History_Table_15.vhdl Branch_History_Table_16_Pack.vhdl Branch_History_Table_16_RegisterFile_Pack.vhdl Branch_History_Table_16_RegisterFile.vhdl Branch_History_Table_16_Shifter_Pack.vhdl Branch_History_Table_16_Shifter.vhdl Branch_History_Table_16.vhdl Branch_History_Table_17_Pack.vhdl Branch_History_Table_17_RegisterFile_Pack.vhdl Branch_History_Table_17_RegisterFile.vhdl Branch_History_Table_17_Shifter_Pack.vhdl Branch_History_Table_17_Shifter.vhdl Branch_History_Table_17.vhdl Branch_History_Table_18_Pack.vhdl Branch_History_Table_18_RegisterFile_Pack.vhdl Branch_History_Table_18_RegisterFile.vhdl Branch_History_Table_18_Shifter_Pack.vhdl Branch_History_Table_18_Shifter.vhdl Branch_History_Table_18.vhdl Branch_History_Table_19_Pack.vhdl Branch_History_Table_19_RegisterFile_Pack.vhdl Branch_History_Table_19_RegisterFile.vhdl Branch_History_Table_19_Shifter_Pack.vhdl Branch_History_Table_19_Shifter.vhdl Branch_History_Table_19.vhdl Branch_History_Table_1_Pack.vhdl Branch_History_Table_1_RegisterFile_Pack.vhdl Branch_History_Table_1_RegisterFile.vhdl Branch_History_Table_1_Shifter_Pack.vhdl Branch_History_Table_1_Shifter.vhdl Branch_History_Table_1.vhdl
    61 
    62 # Branch_History_Table_20
    63 target_dep      all     Branch_History_Table_20.ngc
    64 target_dep      Branch_History_Table_20.ngc     Branch_History_Table_20.prj
    65 target_dep      Branch_History_Table_20.prj     Branch_History_Table_20_Pack.vhdl Branch_History_Table_20_RegisterFile_Pack.vhdl Branch_History_Table_20_RegisterFile.vhdl Branch_History_Table_20_Shifter_Pack.vhdl Branch_History_Table_20_Shifter.vhdl Branch_History_Table_20.vhdl
    66 
    67 # Branch_History_Table_21
    68 target_dep      all     Branch_History_Table_21.ngc
    69 target_dep      Branch_History_Table_21.ngc     Branch_History_Table_21.prj
    70 target_dep      Branch_History_Table_21.prj     Branch_History_Table_21_Pack.vhdl Branch_History_Table_21_RegisterFile_Pack.vhdl Branch_History_Table_21_RegisterFile.vhdl Branch_History_Table_21_Shifter_Pack.vhdl Branch_History_Table_21_Shifter.vhdl Branch_History_Table_21.vhdl
    71 
    72 # Branch_History_Table_22
    73 target_dep      all     Branch_History_Table_22.ngc
    74 target_dep      Branch_History_Table_22.ngc     Branch_History_Table_22.prj
    75 target_dep      Branch_History_Table_22.prj     Branch_History_Table_22_Pack.vhdl Branch_History_Table_22_RegisterFile_Pack.vhdl Branch_History_Table_22_RegisterFile.vhdl Branch_History_Table_22_Shifter_Pack.vhdl Branch_History_Table_22_Shifter.vhdl Branch_History_Table_22.vhdl
    76 
    77 # Branch_History_Table_23
    78 target_dep      all     Branch_History_Table_23.ngc
    79 target_dep      Branch_History_Table_23.ngc     Branch_History_Table_23.prj
    80 target_dep      Branch_History_Table_23.prj     Branch_History_Table_23_Pack.vhdl Branch_History_Table_23_RegisterFile_Pack.vhdl Branch_History_Table_23_RegisterFile.vhdl Branch_History_Table_23_Shifter_Pack.vhdl Branch_History_Table_23_Shifter.vhdl Branch_History_Table_23.vhdl
    81 
    82 # Branch_History_Table_24
    83 target_dep      all     Branch_History_Table_24.ngc
    84 target_dep      Branch_History_Table_24.ngc     Branch_History_Table_24.prj
    85 target_dep      Branch_History_Table_24.prj     Branch_History_Table_24_Pack.vhdl Branch_History_Table_24_RegisterFile_Pack.vhdl Branch_History_Table_24_RegisterFile.vhdl Branch_History_Table_24_Shifter_Pack.vhdl Branch_History_Table_24_Shifter.vhdl Branch_History_Table_24.vhdl
    86 
    87 # Branch_History_Table_25
    88 target_dep      all     Branch_History_Table_25.ngc
    89 target_dep      Branch_History_Table_25.ngc     Branch_History_Table_25.prj
    90 target_dep      Branch_History_Table_25.prj     Branch_History_Table_25_Pack.vhdl Branch_History_Table_25_RegisterFile_Pack.vhdl Branch_History_Table_25_RegisterFile.vhdl Branch_History_Table_25_Shifter_Pack.vhdl Branch_History_Table_25_Shifter.vhdl Branch_History_Table_25.vhdl
    91 
    92 # Branch_History_Table_26
    93 target_dep      all     Branch_History_Table_26.ngc
    94 target_dep      Branch_History_Table_26.ngc     Branch_History_Table_26.prj
    95 target_dep      Branch_History_Table_26.prj     Branch_History_Table_26_Pack.vhdl Branch_History_Table_26_RegisterFile_Pack.vhdl Branch_History_Table_26_RegisterFile.vhdl Branch_History_Table_26_Shifter_Pack.vhdl Branch_History_Table_26_Shifter.vhdl Branch_History_Table_26.vhdl
    96 
    97 # Branch_History_Table_27
    98 target_dep      all     Branch_History_Table_27.ngc
    99 target_dep      Branch_History_Table_27.ngc     Branch_History_Table_27.prj
    100 target_dep      Branch_History_Table_27.prj     Branch_History_Table_27_Pack.vhdl Branch_History_Table_27_RegisterFile_Pack.vhdl Branch_History_Table_27_RegisterFile.vhdl Branch_History_Table_27_Shifter_Pack.vhdl Branch_History_Table_27_Shifter.vhdl Branch_History_Table_27.vhdl
    101 
    102 # Branch_History_Table_28
    103 target_dep      all     Branch_History_Table_28.ngc
    104 target_dep      Branch_History_Table_28.ngc     Branch_History_Table_28.prj
    105 target_dep      Branch_History_Table_28.prj     Branch_History_Table_28_Pack.vhdl Branch_History_Table_28_RegisterFile_Pack.vhdl Branch_History_Table_28_RegisterFile.vhdl Branch_History_Table_28_Shifter_Pack.vhdl Branch_History_Table_28_Shifter.vhdl Branch_History_Table_28.vhdl
    106 
    107 # Branch_History_Table_29
    108 target_dep      all     Branch_History_Table_29.ngc
    109 target_dep      Branch_History_Table_29.ngc     Branch_History_Table_29.prj
    110 target_dep      Branch_History_Table_29.prj     Branch_History_Table_29_Pack.vhdl Branch_History_Table_29_RegisterFile_Pack.vhdl Branch_History_Table_29_RegisterFile.vhdl Branch_History_Table_29_Shifter_Pack.vhdl Branch_History_Table_29_Shifter.vhdl Branch_History_Table_29.vhdl
    111 
    112 # Branch_History_Table_2
    113 target_dep      all     Branch_History_Table_2.ngc
    114 target_dep      Branch_History_Table_2.ngc      Branch_History_Table_2.prj
    115 target_dep      Branch_History_Table_2.prj      Branch_History_Table_20_Pack.vhdl Branch_History_Table_20_RegisterFile_Pack.vhdl Branch_History_Table_20_RegisterFile.vhdl Branch_History_Table_20_Shifter_Pack.vhdl Branch_History_Table_20_Shifter.vhdl Branch_History_Table_20.vhdl Branch_History_Table_21_Pack.vhdl Branch_History_Table_21_RegisterFile_Pack.vhdl Branch_History_Table_21_RegisterFile.vhdl Branch_History_Table_21_Shifter_Pack.vhdl Branch_History_Table_21_Shifter.vhdl Branch_History_Table_21.vhdl Branch_History_Table_22_Pack.vhdl Branch_History_Table_22_RegisterFile_Pack.vhdl Branch_History_Table_22_RegisterFile.vhdl Branch_History_Table_22_Shifter_Pack.vhdl Branch_History_Table_22_Shifter.vhdl Branch_History_Table_22.vhdl Branch_History_Table_23_Pack.vhdl Branch_History_Table_23_RegisterFile_Pack.vhdl Branch_History_Table_23_RegisterFile.vhdl Branch_History_Table_23_Shifter_Pack.vhdl Branch_History_Table_23_Shifter.vhdl Branch_History_Table_23.vhdl Branch_History_Table_24_Pack.vhdl Branch_History_Table_24_RegisterFile_Pack.vhdl Branch_History_Table_24_RegisterFile.vhdl Branch_History_Table_24_Shifter_Pack.vhdl Branch_History_Table_24_Shifter.vhdl Branch_History_Table_24.vhdl Branch_History_Table_25_Pack.vhdl Branch_History_Table_25_RegisterFile_Pack.vhdl Branch_History_Table_25_RegisterFile.vhdl Branch_History_Table_25_Shifter_Pack.vhdl Branch_History_Table_25_Shifter.vhdl Branch_History_Table_25.vhdl Branch_History_Table_26_Pack.vhdl Branch_History_Table_26_RegisterFile_Pack.vhdl Branch_History_Table_26_RegisterFile.vhdl Branch_History_Table_26_Shifter_Pack.vhdl Branch_History_Table_26_Shifter.vhdl Branch_History_Table_26.vhdl Branch_History_Table_27_Pack.vhdl Branch_History_Table_27_RegisterFile_Pack.vhdl Branch_History_Table_27_RegisterFile.vhdl Branch_History_Table_27_Shifter_Pack.vhdl Branch_History_Table_27_Shifter.vhdl Branch_History_Table_27.vhdl Branch_History_Table_28_Pack.vhdl Branch_History_Table_28_RegisterFile_Pack.vhdl Branch_History_Table_28_RegisterFile.vhdl Branch_History_Table_28_Shifter_Pack.vhdl Branch_History_Table_28_Shifter.vhdl Branch_History_Table_28.vhdl Branch_History_Table_29_Pack.vhdl Branch_History_Table_29_RegisterFile_Pack.vhdl Branch_History_Table_29_RegisterFile.vhdl Branch_History_Table_29_Shifter_Pack.vhdl Branch_History_Table_29_Shifter.vhdl Branch_History_Table_29.vhdl Branch_History_Table_2_Pack.vhdl Branch_History_Table_2_RegisterFile_Pack.vhdl Branch_History_Table_2_RegisterFile.vhdl Branch_History_Table_2_Shifter_Pack.vhdl Branch_History_Table_2_Shifter.vhdl Branch_History_Table_2.vhdl
    116 
    117 # Branch_History_Table_30
    118 target_dep      all     Branch_History_Table_30.ngc
    119 target_dep      Branch_History_Table_30.ngc     Branch_History_Table_30.prj
    120 target_dep      Branch_History_Table_30.prj     Branch_History_Table_30_Pack.vhdl Branch_History_Table_30_RegisterFile_Pack.vhdl Branch_History_Table_30_RegisterFile.vhdl Branch_History_Table_30_Shifter_Pack.vhdl Branch_History_Table_30_Shifter.vhdl Branch_History_Table_30.vhdl
    121 
    122 # Branch_History_Table_31
    123 target_dep      all     Branch_History_Table_31.ngc
    124 target_dep      Branch_History_Table_31.ngc     Branch_History_Table_31.prj
    125 target_dep      Branch_History_Table_31.prj     Branch_History_Table_31_Pack.vhdl Branch_History_Table_31_RegisterFile_Pack.vhdl Branch_History_Table_31_RegisterFile.vhdl Branch_History_Table_31_Shifter_Pack.vhdl Branch_History_Table_31_Shifter.vhdl Branch_History_Table_31.vhdl
    126 
    127 # Branch_History_Table_32
    128 target_dep      all     Branch_History_Table_32.ngc
    129 target_dep      Branch_History_Table_32.ngc     Branch_History_Table_32.prj
    130 target_dep      Branch_History_Table_32.prj     Branch_History_Table_32_Pack.vhdl Branch_History_Table_32_RegisterFile_Pack.vhdl Branch_History_Table_32_RegisterFile.vhdl Branch_History_Table_32_Shifter_Pack.vhdl Branch_History_Table_32_Shifter.vhdl Branch_History_Table_32.vhdl
    131 
    132 # Branch_History_Table_33
    133 target_dep      all     Branch_History_Table_33.ngc
    134 target_dep      Branch_History_Table_33.ngc     Branch_History_Table_33.prj
    135 target_dep      Branch_History_Table_33.prj     Branch_History_Table_33_Pack.vhdl Branch_History_Table_33_RegisterFile_Pack.vhdl Branch_History_Table_33_RegisterFile.vhdl Branch_History_Table_33_Shifter_Pack.vhdl Branch_History_Table_33_Shifter.vhdl Branch_History_Table_33.vhdl
    136 
    137 # Branch_History_Table_34
    138 target_dep      all     Branch_History_Table_34.ngc
    139 target_dep      Branch_History_Table_34.ngc     Branch_History_Table_34.prj
    140 target_dep      Branch_History_Table_34.prj     Branch_History_Table_34_Pack.vhdl Branch_History_Table_34_RegisterFile_Pack.vhdl Branch_History_Table_34_RegisterFile.vhdl Branch_History_Table_34_Shifter_Pack.vhdl Branch_History_Table_34_Shifter.vhdl Branch_History_Table_34.vhdl
    141 
    142 # Branch_History_Table_35
    143 target_dep      all     Branch_History_Table_35.ngc
    144 target_dep      Branch_History_Table_35.ngc     Branch_History_Table_35.prj
    145 target_dep      Branch_History_Table_35.prj     Branch_History_Table_35_Pack.vhdl Branch_History_Table_35_RegisterFile_Pack.vhdl Branch_History_Table_35_RegisterFile.vhdl Branch_History_Table_35_Shifter_Pack.vhdl Branch_History_Table_35_Shifter.vhdl Branch_History_Table_35.vhdl
    146 
    147 # Branch_History_Table_3
    148 target_dep      all     Branch_History_Table_3.ngc
    149 target_dep      Branch_History_Table_3.ngc      Branch_History_Table_3.prj
    150 target_dep      Branch_History_Table_3.prj      Branch_History_Table_30_Pack.vhdl Branch_History_Table_30_RegisterFile_Pack.vhdl Branch_History_Table_30_RegisterFile.vhdl Branch_History_Table_30_Shifter_Pack.vhdl Branch_History_Table_30_Shifter.vhdl Branch_History_Table_30.vhdl Branch_History_Table_31_Pack.vhdl Branch_History_Table_31_RegisterFile_Pack.vhdl Branch_History_Table_31_RegisterFile.vhdl Branch_History_Table_31_Shifter_Pack.vhdl Branch_History_Table_31_Shifter.vhdl Branch_History_Table_31.vhdl Branch_History_Table_32_Pack.vhdl Branch_History_Table_32_RegisterFile_Pack.vhdl Branch_History_Table_32_RegisterFile.vhdl Branch_History_Table_32_Shifter_Pack.vhdl Branch_History_Table_32_Shifter.vhdl Branch_History_Table_32.vhdl Branch_History_Table_33_Pack.vhdl Branch_History_Table_33_RegisterFile_Pack.vhdl Branch_History_Table_33_RegisterFile.vhdl Branch_History_Table_33_Shifter_Pack.vhdl Branch_History_Table_33_Shifter.vhdl Branch_History_Table_33.vhdl Branch_History_Table_34_Pack.vhdl Branch_History_Table_34_RegisterFile_Pack.vhdl Branch_History_Table_34_RegisterFile.vhdl Branch_History_Table_34_Shifter_Pack.vhdl Branch_History_Table_34_Shifter.vhdl Branch_History_Table_34.vhdl Branch_History_Table_35_Pack.vhdl Branch_History_Table_35_RegisterFile_Pack.vhdl Branch_History_Table_35_RegisterFile.vhdl Branch_History_Table_35_Shifter_Pack.vhdl Branch_History_Table_35_Shifter.vhdl Branch_History_Table_35.vhdl Branch_History_Table_3_Pack.vhdl Branch_History_Table_3_RegisterFile_Pack.vhdl Branch_History_Table_3_RegisterFile.vhdl Branch_History_Table_3_Shifter_Pack.vhdl Branch_History_Table_3_Shifter.vhdl Branch_History_Table_3.vhdl
    151 
    152 # Branch_History_Table_4
    153 target_dep      all     Branch_History_Table_4.ngc
    154 target_dep      Branch_History_Table_4.ngc      Branch_History_Table_4.prj
    155 target_dep      Branch_History_Table_4.prj      Branch_History_Table_4_Pack.vhdl Branch_History_Table_4_RegisterFile_Pack.vhdl Branch_History_Table_4_RegisterFile.vhdl Branch_History_Table_4_Shifter_Pack.vhdl Branch_History_Table_4_Shifter.vhdl Branch_History_Table_4.vhdl
    156 
    157 # Branch_History_Table_5
    158 target_dep      all     Branch_History_Table_5.ngc
    159 target_dep      Branch_History_Table_5.ngc      Branch_History_Table_5.prj
    160 target_dep      Branch_History_Table_5.prj      Branch_History_Table_5_Pack.vhdl Branch_History_Table_5_RegisterFile_Pack.vhdl Branch_History_Table_5_RegisterFile.vhdl Branch_History_Table_5_Shifter_Pack.vhdl Branch_History_Table_5_Shifter.vhdl Branch_History_Table_5.vhdl
    161 
    162 # Branch_History_Table_6
    163 target_dep      all     Branch_History_Table_6.ngc
    164 target_dep      Branch_History_Table_6.ngc      Branch_History_Table_6.prj
    165 target_dep      Branch_History_Table_6.prj      Branch_History_Table_6_Pack.vhdl Branch_History_Table_6_RegisterFile_Pack.vhdl Branch_History_Table_6_RegisterFile.vhdl Branch_History_Table_6_Shifter_Pack.vhdl Branch_History_Table_6_Shifter.vhdl Branch_History_Table_6.vhdl
    166 
    167 # Branch_History_Table_7
    168 target_dep      all     Branch_History_Table_7.ngc
    169 target_dep      Branch_History_Table_7.ngc      Branch_History_Table_7.prj
    170 target_dep      Branch_History_Table_7.prj      Branch_History_Table_7_Pack.vhdl Branch_History_Table_7_RegisterFile_Pack.vhdl Branch_History_Table_7_RegisterFile.vhdl Branch_History_Table_7_Shifter_Pack.vhdl Branch_History_Table_7_Shifter.vhdl Branch_History_Table_7.vhdl
    171 
    172 # Branch_History_Table_8
    173 target_dep      all     Branch_History_Table_8.ngc
    174 target_dep      Branch_History_Table_8.ngc      Branch_History_Table_8.prj
    175 target_dep      Branch_History_Table_8.prj      Branch_History_Table_8_Pack.vhdl Branch_History_Table_8_RegisterFile_Pack.vhdl Branch_History_Table_8_RegisterFile.vhdl Branch_History_Table_8_Shifter_Pack.vhdl Branch_History_Table_8_Shifter.vhdl Branch_History_Table_8.vhdl
    176 
    177 # Branch_History_Table_9
    178 target_dep      all     Branch_History_Table_9.ngc
    179 target_dep      Branch_History_Table_9.ngc      Branch_History_Table_9.prj
    180 target_dep      Branch_History_Table_9.prj      Branch_History_Table_9_Pack.vhdl Branch_History_Table_9_RegisterFile_Pack.vhdl Branch_History_Table_9_RegisterFile.vhdl Branch_History_Table_9_Shifter_Pack.vhdl Branch_History_Table_9_Shifter.vhdl Branch_History_Table_9.vhdl
    181 
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Stage_1_Ifetch/Predictor/Meta_Predictor/Two_Level_Branch_Predictor/Branch_History_Table/SelfTest/src/test.cpp

    r3 r15  
    4646   *********************************************************************/
    4747  sc_clock                                 CLOCK ("clock", 1.0, 0.5);
     48  sc_signal<Tcontrol_t>                    NRESET;
    4849  sc_signal<Tcontrol_t>                    PREDICT_VAL               [param._nb_prediction];
    4950  sc_signal<Tcontrol_t>                    PREDICT_ACK               [param._nb_prediction];
     
    6465 
    6566  (*(_Branch_History_Table->in_CLOCK))        (CLOCK);
     67  (*(_Branch_History_Table->in_NRESET))       (NRESET);
    6668
    6769  for (uint32_t i=0; i<param._nb_prediction; i++)
     
    9799  cout << "{"+toString(static_cast<uint32_t>(sc_simulation_time()))+"} Initialisation" << endl;
    98100
     101  NRESET.write(1);
    99102  for (uint32_t i=0; i<param._nb_prediction; i++)
    100103    PREDICT_VAL         [i].write(0);
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Stage_1_Ifetch/Predictor/Meta_Predictor/Two_Level_Branch_Predictor/Branch_History_Table/include/Branch_History_Table.h

    r3 r15  
    1818// Internal structure
    1919#include "Behavioural/Generic/Shifter/include/Shifter.h"
    20 #include "Behavioural/Generic/RegisterFile/include/RegisterFile.h"
    21 
     20#include "Behavioural/Generic/RegisterFile/RegisterFile_Monolithic/include/RegisterFile_Monolithic.h"
    2221#include "Behavioural/Stage_1_Ifetch/Predictor/Meta_Predictor/Two_Level_Branch_Predictor/Branch_History_Table/include/Parameters.h"
    2322#include "Behavioural/Stage_1_Ifetch/Predictor/Meta_Predictor/Two_Level_Branch_Predictor/Branch_History_Table/include/Types.h"
     
    6867    // Interface
    6968  public    : SC_CLOCK                      *  in_CLOCK                  ;
     69  public    : SC_IN (Tcontrol_t)            *  in_NRESET                 ;
    7070 
    7171  public    : SC_IN (Tcontrol_t)           **  in_PREDICT_VAL            ;
     
    8888    // ~~~~~[ Component ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~   
    8989  public    : morpheo::behavioural::generic::shifter::Shifter           * component_Shifter     ;
    90   public    : morpheo::behavioural::generic::registerfile::RegisterFile * component_RegisterFile;
     90  public    : morpheo::behavioural::generic::registerfile::registerfile_monolithic::RegisterFile_Monolithic * component_RegisterFile;
    9191
    9292    // -----[ methods ]---------------------------------------------------
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Stage_1_Ifetch/Predictor/Meta_Predictor/Two_Level_Branch_Predictor/Branch_History_Table/include/Parameters.h

    r2 r15  
    1313// Internal structure
    1414#include "Behavioural/Generic/Shifter/include/Parameters.h"
    15 #include "Behavioural/Generic/RegisterFile/include/Parameters.h"
     15#include "Behavioural/Generic/RegisterFile/RegisterFile_Monolithic/include/Parameters.h"
    1616#include <math.h>
    1717
     
    3434
    3535  public :       morpheo::behavioural::generic::shifter::Parameters      * _param_shifter;
    36   public :       morpheo::behavioural::generic::registerfile::Parameters * _param_registerfile;
     36  public :       morpheo::behavioural::generic::registerfile::registerfile_monolithic::Parameters * _param_registerfile;
    3737
    3838    //-----[ methods ]-----------------------------------------------------------
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Stage_1_Ifetch/Predictor/Meta_Predictor/Two_Level_Branch_Predictor/Branch_History_Table/include/Statistics.h

    r2 r15  
    1414#include "Behavioural/include/Parameters_Statistics.h"
    1515#include "Behavioural/Generic/Shifter/include/Statistics.h"
    16 #include "Behavioural/Generic/RegisterFile/include/Statistics.h"
     16#include "Behavioural/Generic/RegisterFile/RegisterFile_Monolithic/include/Statistics.h"
    1717//#include "Behavioural/Generic/Group/include/Statistics.h"
    1818#include "Behavioural/Stage_1_Ifetch/Predictor/Meta_Predictor/Two_Level_Branch_Predictor/Branch_History_Table/include/Parameters.h"
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Stage_1_Ifetch/Predictor/Meta_Predictor/Two_Level_Branch_Predictor/Branch_History_Table/src/Branch_History_Table.cpp

    r2 r15  
    5656    allocation ();
    5757
    58     // Constant
    59     for (uint32_t i=0; i<_param._nb_prediction     ; i++)
    60       PORT_WRITE(out_PREDICT_ACK         [i],1);
    61     for (uint32_t i=0; i<_param._nb_branch_complete; i++)
    62       PORT_WRITE(out_BRANCH_COMPLETE_ACK [i],1);
     58//     // Constant
     59//     for (uint32_t i=0; i<_param._nb_prediction     ; i++)
     60//       PORT_WRITE(out_PREDICT_ACK         [i],1);
     61//     for (uint32_t i=0; i<_param._nb_branch_complete; i++)
     62//       PORT_WRITE(out_BRANCH_COMPLETE_ACK [i],1);
    6363
    6464#if (defined(STATISTICS) || defined (VHDL_TESTBENCH))
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Stage_1_Ifetch/Predictor/Meta_Predictor/Two_Level_Branch_Predictor/Branch_History_Table/src/Branch_History_Table_allocation.cpp

    r3 r15  
    2323
    2424     in_CLOCK           = new SC_CLOCK           ("in_CLOCK");
     25     in_NRESET          = new SC_IN (Tcontrol_t) ("in_NRESET");
    2526
    2627     in_PREDICT_VAL     = new SC_IN (Tcontrol_t) * [_param._nb_prediction];
     
    102103    name_component = _name+"_RegisterFile";
    103104   
    104     component_RegisterFile = new morpheo::behavioural::generic::registerfile::RegisterFile (name_component.c_str(),
     105    component_RegisterFile = new morpheo::behavioural::generic::registerfile::registerfile_monolithic::RegisterFile_Monolithic(name_component.c_str(),
    105106#ifdef STATISTICS
    106107                                                                                            _param_statistics            ,
     
    109110     
    110111    // Instantiation
    111     (*(component_RegisterFile->in_CLOCK))        (*(in_CLOCK));
     112    (*(component_RegisterFile->in_CLOCK ))       (*(in_CLOCK ));
     113    (*(component_RegisterFile->in_NRESET))       (*(in_NRESET));
    112114   
    113115    for (uint32_t i=0; i<_param._nb_prediction; i++)
    114116      {
    115         (*(component_RegisterFile-> in_READ_ENABLE   [i])) (*( in_PREDICT_VAL      [i]));
     117        (*(component_RegisterFile-> in_READ_VAL      [i])) (*( in_PREDICT_VAL      [i]));
     118        (*(component_RegisterFile->out_READ_ACK      [i])) (*(out_PREDICT_ACK      [i]));
    116119        (*(component_RegisterFile-> in_READ_ADDRESS  [i])) (*( in_PREDICT_ADDRESS  [i]));
    117120        (*(component_RegisterFile->out_READ_DATA     [i])) (*(out_PREDICT_HISTORY  [i]));   
     
    120123    for (uint32_t i=0; i<_param._nb_branch_complete; i++)
    121124      {
    122         (*(component_RegisterFile-> in_WRITE_ENABLE  [i])) (*(    in_BRANCH_COMPLETE_VAL      [i]));
     125        (*(component_RegisterFile-> in_WRITE_VAL     [i])) (*(    in_BRANCH_COMPLETE_VAL      [i]));
     126        (*(component_RegisterFile->out_WRITE_ACK     [i])) (*(   out_BRANCH_COMPLETE_ACK      [i]));
    123127        (*(component_RegisterFile-> in_WRITE_ADDRESS [i])) (*(    in_BRANCH_COMPLETE_ADDRESS  [i]));
    124128        (*(component_RegisterFile-> in_WRITE_DATA    [i])) (*(signal_BRANCH_COMPLETE_HISTORY  [i]));   
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Stage_1_Ifetch/Predictor/Meta_Predictor/Two_Level_Branch_Predictor/Branch_History_Table/src/Branch_History_Table_deallocation.cpp

    r3 r15  
    2020  {
    2121    delete in_CLOCK;
     22    delete in_NRESET;
    2223
    2324    for (uint32_t i=0; i<_param._nb_prediction; i++)
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Stage_1_Ifetch/Predictor/Meta_Predictor/Two_Level_Branch_Predictor/Branch_History_Table/src/Branch_History_Table_vhdl_body.cpp

    r3 r15  
    2020  void Branch_History_Table::vhdl_body (Vhdl & vhdl)
    2121  {
    22     vhdl.set_body ("-- Output : always at '1'");
    23     for (uint32_t i=0; i<_param._nb_branch_complete; i++)
    24       vhdl.set_body ("out_BRANCH_COMPLETE_ACK_"+toString(i)+" <= '1';");
    25     for (uint32_t i=0; i<_param._nb_prediction     ; i++)
    26       vhdl.set_body ("out_PREDICT_ACK_"+toString(i)+"         <= '1';");
    27     vhdl.set_body ("");
     22//     vhdl.set_body ("-- Output : always at '1'");
     23//     for (uint32_t i=0; i<_param._nb_branch_complete; i++)
     24//       vhdl.set_body ("out_BRANCH_COMPLETE_ACK_"+toString(i)+" <= '1';");
     25//     for (uint32_t i=0; i<_param._nb_prediction     ; i++)
     26//       vhdl.set_body ("out_PREDICT_ACK_"+toString(i)+"         <= '1';");
     27//     vhdl.set_body ("");
    2828
    2929    list<string> list_port_map;
     
    4040    list_port_map.clear();
    4141    vhdl.set_body_component_port_map (list_port_map,"in_CLOCK","in_CLOCK");
     42    vhdl.set_body_component_port_map (list_port_map,"in_NRESET","in_NRESET");
     43
    4244    for (uint32_t i=0; i<_param._nb_prediction; i++)
    4345      {
    44         vhdl.set_body_component_port_map (list_port_map," in_READ_ENABLE_"+toString(i)+"  "," in_PREDICT_VAL_"+toString(i));
     46        vhdl.set_body_component_port_map (list_port_map," in_READ_VAL_"+toString(i)+"     "," in_PREDICT_VAL_"+toString(i));
     47        vhdl.set_body_component_port_map (list_port_map,"out_READ_ACK_"+toString(i)+"     ","out_PREDICT_ACK_"+toString(i));
    4548        vhdl.set_body_component_port_map (list_port_map," in_READ_ADDRESS_"+toString(i)+" "," in_PREDICT_ADDRESS_"+toString(i));
    4649        vhdl.set_body_component_port_map (list_port_map,"out_READ_DATA_"+toString(i)+"    ","out_PREDICT_HISTORY_"+toString(i));   
     
    4952    for (uint32_t i=0; i<_param._nb_branch_complete; i++)
    5053      {
    51         vhdl.set_body_component_port_map (list_port_map," in_WRITE_ENABLE_"+toString(i)+" ","    in_BRANCH_COMPLETE_VAL_"+toString(i)+"");
     54        vhdl.set_body_component_port_map (list_port_map," in_WRITE_VAL_"+toString(i)+"    ","    in_BRANCH_COMPLETE_VAL_"+toString(i)+"");
     55        vhdl.set_body_component_port_map (list_port_map,"out_WRITE_ACK_"+toString(i)+"    ","   out_BRANCH_COMPLETE_ACK_"+toString(i)+"");
    5256        vhdl.set_body_component_port_map (list_port_map," in_WRITE_ADDRESS_"+toString(i)+"","    in_BRANCH_COMPLETE_ADDRESS_"+toString(i));
    5357        vhdl.set_body_component_port_map (list_port_map," in_WRITE_DATA_"+toString(i)+"   ","signal_BRANCH_COMPLETE_HISTORY_"+toString(i));
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Stage_1_Ifetch/Predictor/Meta_Predictor/Two_Level_Branch_Predictor/Branch_History_Table/src/Branch_History_Table_vhdl_port.cpp

    r3 r15  
    2121  {
    2222    vhdl.set_port (" in_CLOCK" , IN, 1);
     23    vhdl.set_port (" in_NRESET", IN, 1);
    2324   
    2425    for (uint32_t i=0; i<_param._nb_prediction; i++)
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Stage_1_Ifetch/Predictor/Meta_Predictor/Two_Level_Branch_Predictor/Branch_History_Table/src/Branch_History_Table_vhdl_testbench_port.cpp

    r3 r15  
    1919  void Branch_History_Table::vhdl_testbench_port (void)
    2020  {
     21    _vhdl_testbench->set_port (" in_NRESET", IN, 1);
    2122    for (uint32_t i=0; i<_param._nb_prediction; i++)
    2223      {
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Stage_1_Ifetch/Predictor/Meta_Predictor/Two_Level_Branch_Predictor/Branch_History_Table/src/Branch_History_Table_vhdl_testbench_transition.cpp

    r3 r15  
    2525#endif   
    2626
     27    _vhdl_testbench->add_input  (PORT_READ( in_NRESET));
     28
    2729    for (uint32_t i=0; i<_param._nb_prediction; i++)
    2830      {
    2931        _vhdl_testbench->add_input  (PORT_READ( in_PREDICT_VAL     [i]));
    30         _vhdl_testbench->add_output (PORT_READ(out_PREDICT_ACK     [i]));
     32        _vhdl_testbench->add_output (PORT_READ(component_RegisterFile->out_READ_ACK  [i]));
    3133        _vhdl_testbench->add_input  (PORT_READ( in_PREDICT_ADDRESS [i]));
    3234        _vhdl_testbench->add_output (PORT_READ(component_RegisterFile->out_READ_DATA [i]));
     
    3739       {
    3840         _vhdl_testbench->add_input  (PORT_READ( in_BRANCH_COMPLETE_VAL     [i]));
    39          _vhdl_testbench->add_output (PORT_READ(out_BRANCH_COMPLETE_ACK    [i]));
     41         _vhdl_testbench->add_output (PORT_READ(component_RegisterFile->out_WRITE_ACK [i]));
    4042         _vhdl_testbench->add_input  (PORT_READ( in_BRANCH_COMPLETE_ADDRESS [i]));
    4143         _vhdl_testbench->add_input  (PORT_READ( in_BRANCH_COMPLETE_HISTORY [i]));
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Stage_1_Ifetch/Predictor/Meta_Predictor/Two_Level_Branch_Predictor/Branch_History_Table/src/Parameters.cpp

    r2 r15  
    3232                                                                             morpheo::behavioural::generic::shifter::internal_left_shift,
    3333                                                                             morpheo::behavioural::generic::shifter::external_completion),
    34     _param_registerfile = new morpheo::behavioural::generic::registerfile::Parameters (nb_prediction      ,
    35                                                                                        nb_branch_complete ,
    36                                                                                        nb_shifter         ,
    37                                                                                        size_shifter       );
     34    _param_registerfile = new morpheo::behavioural::generic::registerfile::registerfile_monolithic::Parameters (nb_prediction      ,
     35                                                                                                                nb_branch_complete ,
     36                                                                                                                nb_shifter         ,
     37                                                                                                                size_shifter       );
    3838   
    3939    test();
     
    5454                                                                             true),
    5555
    56     _param_registerfile = new morpheo::behavioural::generic::registerfile::Parameters (param._nb_prediction      ,
    57                                                                                        param._nb_branch_complete ,
    58                                                                                        param._nb_shifter         ,
    59                                                                                        param._size_shifter       );
     56    _param_registerfile = new morpheo::behavioural::generic::registerfile::registerfile_monolithic::Parameters (param._nb_prediction      ,
     57                                                                                                                param._nb_branch_complete ,
     58                                                                                                                param._nb_shifter         ,
     59                                                                                                                param._size_shifter       );
    6060     
    6161
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Stage_1_Ifetch/Predictor/Meta_Predictor/Two_Level_Branch_Predictor/Pattern_History_Table/Makefile.deps

    r2 r15  
    1414include                         $(DIR_MORPHEO)/Behavioural/Generic/Counter/Makefile.deps
    1515endif
    16 ifndef RegisterFile
    17 include                         $(DIR_MORPHEO)/Behavioural/Generic/RegisterFile/Makefile.deps
     16ifndef RegisterFile_Monolithic
     17include                         $(DIR_MORPHEO)/Behavioural/Generic/RegisterFile/RegisterFile_Monolithic/Makefile.deps
    1818endif
    1919
     
    2222#-----[ Library ]------------------------------------------
    2323Pattern_History_Table_LIBRARY           =       -lPattern_History_Table \
    24                                                 $(RegisterFile_LIBRARY) \
     24                                                $(RegisterFile_Monolithic_LIBRARY)      \
    2525                                                $(Counter_LIBRARY)      \
    2626                                                $(Behavioural_LIBRARY)
    2727
    2828Pattern_History_Table_DIR_LIBRARY       =       -L$(DIR_MORPHEO)/Behavioural/Stage_1_Ifetch/Predictor/Meta_Predictor/Two_Level_Branch_Predictor/Pattern_History_Table/lib       \
    29                                                 $(RegisterFile_DIR_LIBRARY)     \
     29                                                $(RegisterFile_Monolithic_DIR_LIBRARY)  \
    3030                                                $(Counter_DIR_LIBRARY)          \
    3131                                                $(Behavioural_DIR_LIBRARY)
     
    3636                                        @$(MAKE) Behavioural_library
    3737                                        @$(MAKE) Counter_library
    38                                         @$(MAKE) RegisterFile_library
     38                                        @$(MAKE) RegisterFile_Monolithic_library
    3939                                        @$(MAKE) --directory=$(DIR_MORPHEO)/Behavioural/Stage_1_Ifetch/Predictor/Meta_Predictor/Two_Level_Branch_Predictor/Pattern_History_Table --makefile=Makefile
    4040       
     
    4242                                        @$(MAKE) Behavioural_library_clean
    4343                                        @$(MAKE) Counter_library_clean
    44                                         @$(MAKE) RegisterFile_library_clean
     44                                        @$(MAKE) RegisterFile_Monolithic_library_clean
    4545                                        @$(MAKE) --directory=$(DIR_MORPHEO)/Behavioural/Stage_1_Ifetch/Predictor/Meta_Predictor/Two_Level_Branch_Predictor/Pattern_History_Table --makefile=Makefile clean
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Stage_1_Ifetch/Predictor/Meta_Predictor/Two_Level_Branch_Predictor/Pattern_History_Table/SelfTest/mkf.info

    r2 r15  
    1 
    2 # Pattern_History_Table_0
    3 target_dep      all     Pattern_History_Table_0.ngc
    4 target_dep      Pattern_History_Table_0.ngc     Pattern_History_Table_0.prj
    5 target_dep      Pattern_History_Table_0.prj     Pattern_History_Table_0_Counter_Pack.vhdl Pattern_History_Table_0_Counter.vhdl Pattern_History_Table_0_Pack.vhdl Pattern_History_Table_0_RegisterFile_Pack.vhdl Pattern_History_Table_0_RegisterFile.vhdl Pattern_History_Table_0.vhdl
    6 
    7 # Pattern_History_Table_10
    8 target_dep      all     Pattern_History_Table_10.ngc
    9 target_dep      Pattern_History_Table_10.ngc    Pattern_History_Table_10.prj
    10 target_dep      Pattern_History_Table_10.prj    Pattern_History_Table_10_Counter_Pack.vhdl Pattern_History_Table_10_Counter.vhdl Pattern_History_Table_10_Pack.vhdl Pattern_History_Table_10_RegisterFile_Pack.vhdl Pattern_History_Table_10_RegisterFile.vhdl Pattern_History_Table_10.vhdl
    11 
    12 # Pattern_History_Table_11
    13 target_dep      all     Pattern_History_Table_11.ngc
    14 target_dep      Pattern_History_Table_11.ngc    Pattern_History_Table_11.prj
    15 target_dep      Pattern_History_Table_11.prj    Pattern_History_Table_11_Counter_Pack.vhdl Pattern_History_Table_11_Counter.vhdl Pattern_History_Table_11_Pack.vhdl Pattern_History_Table_11_RegisterFile_Pack.vhdl Pattern_History_Table_11_RegisterFile.vhdl Pattern_History_Table_11.vhdl
    16 
    17 # Pattern_History_Table_12
    18 target_dep      all     Pattern_History_Table_12.ngc
    19 target_dep      Pattern_History_Table_12.ngc    Pattern_History_Table_12.prj
    20 target_dep      Pattern_History_Table_12.prj    Pattern_History_Table_12_Counter_Pack.vhdl Pattern_History_Table_12_Counter.vhdl Pattern_History_Table_12_Pack.vhdl Pattern_History_Table_12_RegisterFile_Pack.vhdl Pattern_History_Table_12_RegisterFile.vhdl Pattern_History_Table_12.vhdl
    21 
    22 # Pattern_History_Table_13
    23 target_dep      all     Pattern_History_Table_13.ngc
    24 target_dep      Pattern_History_Table_13.ngc    Pattern_History_Table_13.prj
    25 target_dep      Pattern_History_Table_13.prj    Pattern_History_Table_13_Counter_Pack.vhdl Pattern_History_Table_13_Counter.vhdl Pattern_History_Table_13_Pack.vhdl Pattern_History_Table_13_RegisterFile_Pack.vhdl Pattern_History_Table_13_RegisterFile.vhdl Pattern_History_Table_13.vhdl
    26 
    27 # Pattern_History_Table_14
    28 target_dep      all     Pattern_History_Table_14.ngc
    29 target_dep      Pattern_History_Table_14.ngc    Pattern_History_Table_14.prj
    30 target_dep      Pattern_History_Table_14.prj    Pattern_History_Table_14_Counter_Pack.vhdl Pattern_History_Table_14_Counter.vhdl Pattern_History_Table_14_Pack.vhdl Pattern_History_Table_14_RegisterFile_Pack.vhdl Pattern_History_Table_14_RegisterFile.vhdl Pattern_History_Table_14.vhdl
    31 
    32 # Pattern_History_Table_15
    33 target_dep      all     Pattern_History_Table_15.ngc
    34 target_dep      Pattern_History_Table_15.ngc    Pattern_History_Table_15.prj
    35 target_dep      Pattern_History_Table_15.prj    Pattern_History_Table_15_Counter_Pack.vhdl Pattern_History_Table_15_Counter.vhdl Pattern_History_Table_15_Pack.vhdl Pattern_History_Table_15_RegisterFile_Pack.vhdl Pattern_History_Table_15_RegisterFile.vhdl Pattern_History_Table_15.vhdl
    36 
    37 # Pattern_History_Table_16
    38 target_dep      all     Pattern_History_Table_16.ngc
    39 target_dep      Pattern_History_Table_16.ngc    Pattern_History_Table_16.prj
    40 target_dep      Pattern_History_Table_16.prj    Pattern_History_Table_16_Counter_Pack.vhdl Pattern_History_Table_16_Counter.vhdl Pattern_History_Table_16_Pack.vhdl Pattern_History_Table_16_RegisterFile_Pack.vhdl Pattern_History_Table_16_RegisterFile.vhdl Pattern_History_Table_16.vhdl
    41 
    42 # Pattern_History_Table_17
    43 target_dep      all     Pattern_History_Table_17.ngc
    44 target_dep      Pattern_History_Table_17.ngc    Pattern_History_Table_17.prj
    45 target_dep      Pattern_History_Table_17.prj    Pattern_History_Table_17_Counter_Pack.vhdl Pattern_History_Table_17_Counter.vhdl Pattern_History_Table_17_Pack.vhdl Pattern_History_Table_17_RegisterFile_Pack.vhdl Pattern_History_Table_17_RegisterFile.vhdl Pattern_History_Table_17.vhdl
    46 
    47 # Pattern_History_Table_18
    48 target_dep      all     Pattern_History_Table_18.ngc
    49 target_dep      Pattern_History_Table_18.ngc    Pattern_History_Table_18.prj
    50 target_dep      Pattern_History_Table_18.prj    Pattern_History_Table_18_Counter_Pack.vhdl Pattern_History_Table_18_Counter.vhdl Pattern_History_Table_18_Pack.vhdl Pattern_History_Table_18_RegisterFile_Pack.vhdl Pattern_History_Table_18_RegisterFile.vhdl Pattern_History_Table_18.vhdl
    51 
    52 # Pattern_History_Table_19
    53 target_dep      all     Pattern_History_Table_19.ngc
    54 target_dep      Pattern_History_Table_19.ngc    Pattern_History_Table_19.prj
    55 target_dep      Pattern_History_Table_19.prj    Pattern_History_Table_19_Counter_Pack.vhdl Pattern_History_Table_19_Counter.vhdl Pattern_History_Table_19_Pack.vhdl Pattern_History_Table_19_RegisterFile_Pack.vhdl Pattern_History_Table_19_RegisterFile.vhdl Pattern_History_Table_19.vhdl
    56 
    57 # Pattern_History_Table_1
    58 target_dep      all     Pattern_History_Table_1.ngc
    59 target_dep      Pattern_History_Table_1.ngc     Pattern_History_Table_1.prj
    60 target_dep      Pattern_History_Table_1.prj     Pattern_History_Table_10_Counter_Pack.vhdl Pattern_History_Table_10_Counter.vhdl Pattern_History_Table_10_Pack.vhdl Pattern_History_Table_10_RegisterFile_Pack.vhdl Pattern_History_Table_10_RegisterFile.vhdl Pattern_History_Table_10.vhdl Pattern_History_Table_11_Counter_Pack.vhdl Pattern_History_Table_11_Counter.vhdl Pattern_History_Table_11_Pack.vhdl Pattern_History_Table_11_RegisterFile_Pack.vhdl Pattern_History_Table_11_RegisterFile.vhdl Pattern_History_Table_11.vhdl Pattern_History_Table_12_Counter_Pack.vhdl Pattern_History_Table_12_Counter.vhdl Pattern_History_Table_12_Pack.vhdl Pattern_History_Table_12_RegisterFile_Pack.vhdl Pattern_History_Table_12_RegisterFile.vhdl Pattern_History_Table_12.vhdl Pattern_History_Table_13_Counter_Pack.vhdl Pattern_History_Table_13_Counter.vhdl Pattern_History_Table_13_Pack.vhdl Pattern_History_Table_13_RegisterFile_Pack.vhdl Pattern_History_Table_13_RegisterFile.vhdl Pattern_History_Table_13.vhdl Pattern_History_Table_14_Counter_Pack.vhdl Pattern_History_Table_14_Counter.vhdl Pattern_History_Table_14_Pack.vhdl Pattern_History_Table_14_RegisterFile_Pack.vhdl Pattern_History_Table_14_RegisterFile.vhdl Pattern_History_Table_14.vhdl Pattern_History_Table_15_Counter_Pack.vhdl Pattern_History_Table_15_Counter.vhdl Pattern_History_Table_15_Pack.vhdl Pattern_History_Table_15_RegisterFile_Pack.vhdl Pattern_History_Table_15_RegisterFile.vhdl Pattern_History_Table_15.vhdl Pattern_History_Table_16_Counter_Pack.vhdl Pattern_History_Table_16_Counter.vhdl Pattern_History_Table_16_Pack.vhdl Pattern_History_Table_16_RegisterFile_Pack.vhdl Pattern_History_Table_16_RegisterFile.vhdl Pattern_History_Table_16.vhdl Pattern_History_Table_17_Counter_Pack.vhdl Pattern_History_Table_17_Counter.vhdl Pattern_History_Table_17_Pack.vhdl Pattern_History_Table_17_RegisterFile_Pack.vhdl Pattern_History_Table_17_RegisterFile.vhdl Pattern_History_Table_17.vhdl Pattern_History_Table_18_Counter_Pack.vhdl Pattern_History_Table_18_Counter.vhdl Pattern_History_Table_18_Pack.vhdl Pattern_History_Table_18_RegisterFile_Pack.vhdl Pattern_History_Table_18_RegisterFile.vhdl Pattern_History_Table_18.vhdl Pattern_History_Table_19_Counter_Pack.vhdl Pattern_History_Table_19_Counter.vhdl Pattern_History_Table_19_Pack.vhdl Pattern_History_Table_19_RegisterFile_Pack.vhdl Pattern_History_Table_19_RegisterFile.vhdl Pattern_History_Table_19.vhdl Pattern_History_Table_1_Counter_Pack.vhdl Pattern_History_Table_1_Counter.vhdl Pattern_History_Table_1_Pack.vhdl Pattern_History_Table_1_RegisterFile_Pack.vhdl Pattern_History_Table_1_RegisterFile.vhdl Pattern_History_Table_1.vhdl
    61 
    62 # Pattern_History_Table_20
    63 target_dep      all     Pattern_History_Table_20.ngc
    64 target_dep      Pattern_History_Table_20.ngc    Pattern_History_Table_20.prj
    65 target_dep      Pattern_History_Table_20.prj    Pattern_History_Table_20_Counter_Pack.vhdl Pattern_History_Table_20_Counter.vhdl Pattern_History_Table_20_Pack.vhdl Pattern_History_Table_20_RegisterFile_Pack.vhdl Pattern_History_Table_20_RegisterFile.vhdl Pattern_History_Table_20.vhdl
    66 
    67 # Pattern_History_Table_21
    68 target_dep      all     Pattern_History_Table_21.ngc
    69 target_dep      Pattern_History_Table_21.ngc    Pattern_History_Table_21.prj
    70 target_dep      Pattern_History_Table_21.prj    Pattern_History_Table_21_Counter_Pack.vhdl Pattern_History_Table_21_Counter.vhdl Pattern_History_Table_21_Pack.vhdl Pattern_History_Table_21_RegisterFile_Pack.vhdl Pattern_History_Table_21_RegisterFile.vhdl Pattern_History_Table_21.vhdl
    71 
    72 # Pattern_History_Table_22
    73 target_dep      all     Pattern_History_Table_22.ngc
    74 target_dep      Pattern_History_Table_22.ngc    Pattern_History_Table_22.prj
    75 target_dep      Pattern_History_Table_22.prj    Pattern_History_Table_22_Counter_Pack.vhdl Pattern_History_Table_22_Counter.vhdl Pattern_History_Table_22_Pack.vhdl Pattern_History_Table_22_RegisterFile_Pack.vhdl Pattern_History_Table_22_RegisterFile.vhdl Pattern_History_Table_22.vhdl
    76 
    77 # Pattern_History_Table_23
    78 target_dep      all     Pattern_History_Table_23.ngc
    79 target_dep      Pattern_History_Table_23.ngc    Pattern_History_Table_23.prj
    80 target_dep      Pattern_History_Table_23.prj    Pattern_History_Table_23_Counter_Pack.vhdl Pattern_History_Table_23_Counter.vhdl Pattern_History_Table_23_Pack.vhdl Pattern_History_Table_23_RegisterFile_Pack.vhdl Pattern_History_Table_23_RegisterFile.vhdl Pattern_History_Table_23.vhdl
    81 
    82 # Pattern_History_Table_24
    83 target_dep      all     Pattern_History_Table_24.ngc
    84 target_dep      Pattern_History_Table_24.ngc    Pattern_History_Table_24.prj
    85 target_dep      Pattern_History_Table_24.prj    Pattern_History_Table_24_Counter_Pack.vhdl Pattern_History_Table_24_Counter.vhdl Pattern_History_Table_24_Pack.vhdl Pattern_History_Table_24_RegisterFile_Pack.vhdl Pattern_History_Table_24_RegisterFile.vhdl Pattern_History_Table_24.vhdl
    86 
    87 # Pattern_History_Table_25
    88 target_dep      all     Pattern_History_Table_25.ngc
    89 target_dep      Pattern_History_Table_25.ngc    Pattern_History_Table_25.prj
    90 target_dep      Pattern_History_Table_25.prj    Pattern_History_Table_25_Counter_Pack.vhdl Pattern_History_Table_25_Counter.vhdl Pattern_History_Table_25_Pack.vhdl Pattern_History_Table_25_RegisterFile_Pack.vhdl Pattern_History_Table_25_RegisterFile.vhdl Pattern_History_Table_25.vhdl
    91 
    92 # Pattern_History_Table_26
    93 target_dep      all     Pattern_History_Table_26.ngc
    94 target_dep      Pattern_History_Table_26.ngc    Pattern_History_Table_26.prj
    95 target_dep      Pattern_History_Table_26.prj    Pattern_History_Table_26_Counter_Pack.vhdl Pattern_History_Table_26_Counter.vhdl Pattern_History_Table_26_Pack.vhdl Pattern_History_Table_26_RegisterFile_Pack.vhdl Pattern_History_Table_26_RegisterFile.vhdl Pattern_History_Table_26.vhdl
    96 
    97 # Pattern_History_Table_27
    98 target_dep      all     Pattern_History_Table_27.ngc
    99 target_dep      Pattern_History_Table_27.ngc    Pattern_History_Table_27.prj
    100 target_dep      Pattern_History_Table_27.prj    Pattern_History_Table_27_Counter_Pack.vhdl Pattern_History_Table_27_Counter.vhdl Pattern_History_Table_27_Pack.vhdl Pattern_History_Table_27_RegisterFile_Pack.vhdl Pattern_History_Table_27_RegisterFile.vhdl Pattern_History_Table_27.vhdl
    101 
    102 # Pattern_History_Table_28
    103 target_dep      all     Pattern_History_Table_28.ngc
    104 target_dep      Pattern_History_Table_28.ngc    Pattern_History_Table_28.prj
    105 target_dep      Pattern_History_Table_28.prj    Pattern_History_Table_28_Counter_Pack.vhdl Pattern_History_Table_28_Counter.vhdl Pattern_History_Table_28_Pack.vhdl Pattern_History_Table_28_RegisterFile_Pack.vhdl Pattern_History_Table_28_RegisterFile.vhdl Pattern_History_Table_28.vhdl
    106 
    107 # Pattern_History_Table_29
    108 target_dep      all     Pattern_History_Table_29.ngc
    109 target_dep      Pattern_History_Table_29.ngc    Pattern_History_Table_29.prj
    110 target_dep      Pattern_History_Table_29.prj    Pattern_History_Table_29_Counter_Pack.vhdl Pattern_History_Table_29_Counter.vhdl Pattern_History_Table_29_Pack.vhdl Pattern_History_Table_29_RegisterFile_Pack.vhdl Pattern_History_Table_29_RegisterFile.vhdl Pattern_History_Table_29.vhdl
    111 
    112 # Pattern_History_Table_2
    113 target_dep      all     Pattern_History_Table_2.ngc
    114 target_dep      Pattern_History_Table_2.ngc     Pattern_History_Table_2.prj
    115 target_dep      Pattern_History_Table_2.prj     Pattern_History_Table_20_Counter_Pack.vhdl Pattern_History_Table_20_Counter.vhdl Pattern_History_Table_20_Pack.vhdl Pattern_History_Table_20_RegisterFile_Pack.vhdl Pattern_History_Table_20_RegisterFile.vhdl Pattern_History_Table_20.vhdl Pattern_History_Table_21_Counter_Pack.vhdl Pattern_History_Table_21_Counter.vhdl Pattern_History_Table_21_Pack.vhdl Pattern_History_Table_21_RegisterFile_Pack.vhdl Pattern_History_Table_21_RegisterFile.vhdl Pattern_History_Table_21.vhdl Pattern_History_Table_22_Counter_Pack.vhdl Pattern_History_Table_22_Counter.vhdl Pattern_History_Table_22_Pack.vhdl Pattern_History_Table_22_RegisterFile_Pack.vhdl Pattern_History_Table_22_RegisterFile.vhdl Pattern_History_Table_22.vhdl Pattern_History_Table_23_Counter_Pack.vhdl Pattern_History_Table_23_Counter.vhdl Pattern_History_Table_23_Pack.vhdl Pattern_History_Table_23_RegisterFile_Pack.vhdl Pattern_History_Table_23_RegisterFile.vhdl Pattern_History_Table_23.vhdl Pattern_History_Table_24_Counter_Pack.vhdl Pattern_History_Table_24_Counter.vhdl Pattern_History_Table_24_Pack.vhdl Pattern_History_Table_24_RegisterFile_Pack.vhdl Pattern_History_Table_24_RegisterFile.vhdl Pattern_History_Table_24.vhdl Pattern_History_Table_25_Counter_Pack.vhdl Pattern_History_Table_25_Counter.vhdl Pattern_History_Table_25_Pack.vhdl Pattern_History_Table_25_RegisterFile_Pack.vhdl Pattern_History_Table_25_RegisterFile.vhdl Pattern_History_Table_25.vhdl Pattern_History_Table_26_Counter_Pack.vhdl Pattern_History_Table_26_Counter.vhdl Pattern_History_Table_26_Pack.vhdl Pattern_History_Table_26_RegisterFile_Pack.vhdl Pattern_History_Table_26_RegisterFile.vhdl Pattern_History_Table_26.vhdl Pattern_History_Table_27_Counter_Pack.vhdl Pattern_History_Table_27_Counter.vhdl Pattern_History_Table_27_Pack.vhdl Pattern_History_Table_27_RegisterFile_Pack.vhdl Pattern_History_Table_27_RegisterFile.vhdl Pattern_History_Table_27.vhdl Pattern_History_Table_28_Counter_Pack.vhdl Pattern_History_Table_28_Counter.vhdl Pattern_History_Table_28_Pack.vhdl Pattern_History_Table_28_RegisterFile_Pack.vhdl Pattern_History_Table_28_RegisterFile.vhdl Pattern_History_Table_28.vhdl Pattern_History_Table_29_Counter_Pack.vhdl Pattern_History_Table_29_Counter.vhdl Pattern_History_Table_29_Pack.vhdl Pattern_History_Table_29_RegisterFile_Pack.vhdl Pattern_History_Table_29_RegisterFile.vhdl Pattern_History_Table_29.vhdl Pattern_History_Table_2_Counter_Pack.vhdl Pattern_History_Table_2_Counter.vhdl Pattern_History_Table_2_Pack.vhdl Pattern_History_Table_2_RegisterFile_Pack.vhdl Pattern_History_Table_2_RegisterFile.vhdl Pattern_History_Table_2.vhdl
    116 
    117 # Pattern_History_Table_30
    118 target_dep      all     Pattern_History_Table_30.ngc
    119 target_dep      Pattern_History_Table_30.ngc    Pattern_History_Table_30.prj
    120 target_dep      Pattern_History_Table_30.prj    Pattern_History_Table_30_Counter_Pack.vhdl Pattern_History_Table_30_Counter.vhdl Pattern_History_Table_30_Pack.vhdl Pattern_History_Table_30_RegisterFile_Pack.vhdl Pattern_History_Table_30_RegisterFile.vhdl Pattern_History_Table_30.vhdl
    121 
    122 # Pattern_History_Table_31
    123 target_dep      all     Pattern_History_Table_31.ngc
    124 target_dep      Pattern_History_Table_31.ngc    Pattern_History_Table_31.prj
    125 target_dep      Pattern_History_Table_31.prj    Pattern_History_Table_31_Counter_Pack.vhdl Pattern_History_Table_31_Counter.vhdl Pattern_History_Table_31_Pack.vhdl Pattern_History_Table_31_RegisterFile_Pack.vhdl Pattern_History_Table_31_RegisterFile.vhdl Pattern_History_Table_31.vhdl
    126 
    127 # Pattern_History_Table_32
    128 target_dep      all     Pattern_History_Table_32.ngc
    129 target_dep      Pattern_History_Table_32.ngc    Pattern_History_Table_32.prj
    130 target_dep      Pattern_History_Table_32.prj    Pattern_History_Table_32_Counter_Pack.vhdl Pattern_History_Table_32_Counter.vhdl Pattern_History_Table_32_Pack.vhdl Pattern_History_Table_32_RegisterFile_Pack.vhdl Pattern_History_Table_32_RegisterFile.vhdl Pattern_History_Table_32.vhdl
    131 
    132 # Pattern_History_Table_33
    133 target_dep      all     Pattern_History_Table_33.ngc
    134 target_dep      Pattern_History_Table_33.ngc    Pattern_History_Table_33.prj
    135 target_dep      Pattern_History_Table_33.prj    Pattern_History_Table_33_Counter_Pack.vhdl Pattern_History_Table_33_Counter.vhdl Pattern_History_Table_33_Pack.vhdl Pattern_History_Table_33_RegisterFile_Pack.vhdl Pattern_History_Table_33_RegisterFile.vhdl Pattern_History_Table_33.vhdl
    136 
    137 # Pattern_History_Table_34
    138 target_dep      all     Pattern_History_Table_34.ngc
    139 target_dep      Pattern_History_Table_34.ngc    Pattern_History_Table_34.prj
    140 target_dep      Pattern_History_Table_34.prj    Pattern_History_Table_34_Counter_Pack.vhdl Pattern_History_Table_34_Counter.vhdl Pattern_History_Table_34_Pack.vhdl Pattern_History_Table_34_RegisterFile_Pack.vhdl Pattern_History_Table_34_RegisterFile.vhdl Pattern_History_Table_34.vhdl
    141 
    142 # Pattern_History_Table_35
    143 target_dep      all     Pattern_History_Table_35.ngc
    144 target_dep      Pattern_History_Table_35.ngc    Pattern_History_Table_35.prj
    145 target_dep      Pattern_History_Table_35.prj    Pattern_History_Table_35_Counter_Pack.vhdl Pattern_History_Table_35_Counter.vhdl Pattern_History_Table_35_Pack.vhdl Pattern_History_Table_35_RegisterFile_Pack.vhdl Pattern_History_Table_35_RegisterFile.vhdl Pattern_History_Table_35.vhdl
    146 
    147 # Pattern_History_Table_3
    148 target_dep      all     Pattern_History_Table_3.ngc
    149 target_dep      Pattern_History_Table_3.ngc     Pattern_History_Table_3.prj
    150 target_dep      Pattern_History_Table_3.prj     Pattern_History_Table_30_Counter_Pack.vhdl Pattern_History_Table_30_Counter.vhdl Pattern_History_Table_30_Pack.vhdl Pattern_History_Table_30_RegisterFile_Pack.vhdl Pattern_History_Table_30_RegisterFile.vhdl Pattern_History_Table_30.vhdl Pattern_History_Table_31_Counter_Pack.vhdl Pattern_History_Table_31_Counter.vhdl Pattern_History_Table_31_Pack.vhdl Pattern_History_Table_31_RegisterFile_Pack.vhdl Pattern_History_Table_31_RegisterFile.vhdl Pattern_History_Table_31.vhdl Pattern_History_Table_32_Counter_Pack.vhdl Pattern_History_Table_32_Counter.vhdl Pattern_History_Table_32_Pack.vhdl Pattern_History_Table_32_RegisterFile_Pack.vhdl Pattern_History_Table_32_RegisterFile.vhdl Pattern_History_Table_32.vhdl Pattern_History_Table_33_Counter_Pack.vhdl Pattern_History_Table_33_Counter.vhdl Pattern_History_Table_33_Pack.vhdl Pattern_History_Table_33_RegisterFile_Pack.vhdl Pattern_History_Table_33_RegisterFile.vhdl Pattern_History_Table_33.vhdl Pattern_History_Table_34_Counter_Pack.vhdl Pattern_History_Table_34_Counter.vhdl Pattern_History_Table_34_Pack.vhdl Pattern_History_Table_34_RegisterFile_Pack.vhdl Pattern_History_Table_34_RegisterFile.vhdl Pattern_History_Table_34.vhdl Pattern_History_Table_35_Counter_Pack.vhdl Pattern_History_Table_35_Counter.vhdl Pattern_History_Table_35_Pack.vhdl Pattern_History_Table_35_RegisterFile_Pack.vhdl Pattern_History_Table_35_RegisterFile.vhdl Pattern_History_Table_35.vhdl Pattern_History_Table_3_Counter_Pack.vhdl Pattern_History_Table_3_Counter.vhdl Pattern_History_Table_3_Pack.vhdl Pattern_History_Table_3_RegisterFile_Pack.vhdl Pattern_History_Table_3_RegisterFile.vhdl Pattern_History_Table_3.vhdl
    151 
    152 # Pattern_History_Table_4
    153 target_dep      all     Pattern_History_Table_4.ngc
    154 target_dep      Pattern_History_Table_4.ngc     Pattern_History_Table_4.prj
    155 target_dep      Pattern_History_Table_4.prj     Pattern_History_Table_4_Counter_Pack.vhdl Pattern_History_Table_4_Counter.vhdl Pattern_History_Table_4_Pack.vhdl Pattern_History_Table_4_RegisterFile_Pack.vhdl Pattern_History_Table_4_RegisterFile.vhdl Pattern_History_Table_4.vhdl
    156 
    157 # Pattern_History_Table_5
    158 target_dep      all     Pattern_History_Table_5.ngc
    159 target_dep      Pattern_History_Table_5.ngc     Pattern_History_Table_5.prj
    160 target_dep      Pattern_History_Table_5.prj     Pattern_History_Table_5_Counter_Pack.vhdl Pattern_History_Table_5_Counter.vhdl Pattern_History_Table_5_Pack.vhdl Pattern_History_Table_5_RegisterFile_Pack.vhdl Pattern_History_Table_5_RegisterFile.vhdl Pattern_History_Table_5.vhdl
    161 
    162 # Pattern_History_Table_6
    163 target_dep      all     Pattern_History_Table_6.ngc
    164 target_dep      Pattern_History_Table_6.ngc     Pattern_History_Table_6.prj
    165 target_dep      Pattern_History_Table_6.prj     Pattern_History_Table_6_Counter_Pack.vhdl Pattern_History_Table_6_Counter.vhdl Pattern_History_Table_6_Pack.vhdl Pattern_History_Table_6_RegisterFile_Pack.vhdl Pattern_History_Table_6_RegisterFile.vhdl Pattern_History_Table_6.vhdl
    166 
    167 # Pattern_History_Table_7
    168 target_dep      all     Pattern_History_Table_7.ngc
    169 target_dep      Pattern_History_Table_7.ngc     Pattern_History_Table_7.prj
    170 target_dep      Pattern_History_Table_7.prj     Pattern_History_Table_7_Counter_Pack.vhdl Pattern_History_Table_7_Counter.vhdl Pattern_History_Table_7_Pack.vhdl Pattern_History_Table_7_RegisterFile_Pack.vhdl Pattern_History_Table_7_RegisterFile.vhdl Pattern_History_Table_7.vhdl
    171 
    172 # Pattern_History_Table_8
    173 target_dep      all     Pattern_History_Table_8.ngc
    174 target_dep      Pattern_History_Table_8.ngc     Pattern_History_Table_8.prj
    175 target_dep      Pattern_History_Table_8.prj     Pattern_History_Table_8_Counter_Pack.vhdl Pattern_History_Table_8_Counter.vhdl Pattern_History_Table_8_Pack.vhdl Pattern_History_Table_8_RegisterFile_Pack.vhdl Pattern_History_Table_8_RegisterFile.vhdl Pattern_History_Table_8.vhdl
    176 
    177 # Pattern_History_Table_9
    178 target_dep      all     Pattern_History_Table_9.ngc
    179 target_dep      Pattern_History_Table_9.ngc     Pattern_History_Table_9.prj
    180 target_dep      Pattern_History_Table_9.prj     Pattern_History_Table_9_Counter_Pack.vhdl Pattern_History_Table_9_Counter.vhdl Pattern_History_Table_9_Pack.vhdl Pattern_History_Table_9_RegisterFile_Pack.vhdl Pattern_History_Table_9_RegisterFile.vhdl Pattern_History_Table_9.vhdl
    181 
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Stage_1_Ifetch/Predictor/Meta_Predictor/Two_Level_Branch_Predictor/Pattern_History_Table/SelfTest/src/test.cpp

    r3 r15  
    4343   *********************************************************************/
    4444  sc_clock                                 CLOCK ("clock", 1.0, 0.5);
     45  sc_signal<Tcontrol_t>                    NRESET;
     46
    4547  sc_signal<Tcontrol_t>                    PREDICT_VAL               [param._nb_prediction];
    4648  sc_signal<Tcontrol_t>                    PREDICT_ACK               [param._nb_prediction];
     
    6163 
    6264  (*(_Pattern_History_Table->in_CLOCK))        (CLOCK);
     65  (*(_Pattern_History_Table->in_NRESET))       (NRESET);
    6366
    6467  for (uint32_t i=0; i<param._nb_prediction; i++)
     
    9295  _Pattern_History_Table->vhdl_testbench_label("Initialisation");
    9396  cout << "{"+toString(static_cast<uint32_t>(sc_simulation_time()))+"} Initialisation" << endl;
    94 
     97 
     98  NRESET.write(1);
    9599
    96100  for (uint32_t i=0; i<param._nb_prediction; i++)
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Stage_1_Ifetch/Predictor/Meta_Predictor/Two_Level_Branch_Predictor/Pattern_History_Table/include/Parameters.h

    r2 r15  
    1313// Internal structure
    1414#include "Behavioural/Generic/Counter/include/Parameters.h"
    15 #include "Behavioural/Generic/RegisterFile/include/Parameters.h"
     15#include "Behavioural/Generic/RegisterFile/RegisterFile_Monolithic/include/Parameters.h"
    1616#include <math.h>
    1717
     
    3434
    3535  public :       morpheo::behavioural::generic::counter::Parameters      * _param_counter;
    36   public :       morpheo::behavioural::generic::registerfile::Parameters * _param_registerfile;
     36  public :       morpheo::behavioural::generic::registerfile::registerfile_monolithic::Parameters * _param_registerfile;
    3737
    3838    //-----[ methods ]-----------------------------------------------------------
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Stage_1_Ifetch/Predictor/Meta_Predictor/Two_Level_Branch_Predictor/Pattern_History_Table/include/Pattern_History_Table.h

    r3 r15  
    1919// Internal structure
    2020#include "Behavioural/Generic/Counter/include/Counter.h"
    21 #include "Behavioural/Generic/RegisterFile/include/RegisterFile.h"
     21#include "Behavioural/Generic/RegisterFile/RegisterFile_Monolithic/include/RegisterFile_Monolithic.h"
    2222
    2323#include "Behavioural/Stage_1_Ifetch/Predictor/Meta_Predictor/Two_Level_Branch_Predictor/Pattern_History_Table/include/Parameters.h"
     
    7070    // Interface
    7171  public    : SC_CLOCK                      *  in_CLOCK        ;
     72  public    : SC_IN (Tcontrol_t)            *  in_NRESET       ;
    7273
    7374  public    : SC_IN (Tcontrol_t)           **  in_PREDICT_VAL            ;
     
    9091    // ~~~~~[ Component ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~   
    9192  public    : morpheo::behavioural::generic::counter::Counter           * component_Counter     ;
    92   public    : morpheo::behavioural::generic::registerfile::RegisterFile * component_RegisterFile;
     93  public    : morpheo::behavioural::generic::registerfile::registerfile_monolithic::RegisterFile_Monolithic * component_RegisterFile;
    9394
    9495    // -----[ methods ]---------------------------------------------------
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Stage_1_Ifetch/Predictor/Meta_Predictor/Two_Level_Branch_Predictor/Pattern_History_Table/include/Statistics.h

    r2 r15  
    1414#include "Behavioural/include/Parameters_Statistics.h"
    1515#include "Behavioural/Generic/Counter/include/Statistics.h"
    16 #include "Behavioural/Generic/RegisterFile/include/Statistics.h"
     16#include "Behavioural/Generic/RegisterFile/RegisterFile_Monolithic/include/Statistics.h"
    1717//#include "Behavioural/Generic/Group/include/Statistics.h"
    1818#include "Behavioural/Stage_1_Ifetch/Predictor/Meta_Predictor/Two_Level_Branch_Predictor/Pattern_History_Table/include/Parameters.h"
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Stage_1_Ifetch/Predictor/Meta_Predictor/Two_Level_Branch_Predictor/Pattern_History_Table/src/Parameters.cpp

    r2 r15  
    3030    _param_counter      = new morpheo::behavioural::generic::counter::Parameters (size_counter       ,
    3131                                                                                  nb_branch_complete );
    32     _param_registerfile = new morpheo::behavioural::generic::registerfile::Parameters (nb_prediction      ,
    33                                                                                        nb_branch_complete ,
    34                                                                                        nb_counter         ,
    35                                                                                        size_counter       );
     32    _param_registerfile = new morpheo::behavioural::generic::registerfile::registerfile_monolithic::Parameters (nb_prediction      ,
     33                                                                                                                nb_branch_complete ,
     34                                                                                                                nb_counter         ,
     35                                                                                                                size_counter       );
    3636   
    3737
     
    5151                                                                             param._nb_branch_complete );
    5252
    53     _param_registerfile = new morpheo::behavioural::generic::registerfile::Parameters (param._nb_prediction      ,
    54                                                                                        param._nb_branch_complete ,
    55                                                                                        param._nb_counter         ,
    56                                                                                        param._size_counter       );
    57 
     53    _param_registerfile = new morpheo::behavioural::generic::registerfile::registerfile_monolithic::Parameters (param._nb_prediction      ,
     54                                                                                                                param._nb_branch_complete ,
     55                                                                                                                param._nb_counter         ,
     56                                                                                                                param._size_counter       );
     57   
    5858    test();
    5959    log_printf(FUNC,Pattern_History_Table,"Parameters","End");
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Stage_1_Ifetch/Predictor/Meta_Predictor/Two_Level_Branch_Predictor/Pattern_History_Table/src/Pattern_History_Table.cpp

    r2 r15  
    5858    allocation ();
    5959
    60     // Constant
    61     for (uint32_t i=0; i<_param._nb_prediction     ; i++)
    62       PORT_WRITE(out_PREDICT_ACK         [i],1);
    63     for (uint32_t i=0; i<_param._nb_branch_complete; i++)
    64       PORT_WRITE(out_BRANCH_COMPLETE_ACK [i],1);
     60//     // Constant
     61//     for (uint32_t i=0; i<_param._nb_prediction     ; i++)
     62//       PORT_WRITE(out_PREDICT_ACK         [i],1);
     63//     for (uint32_t i=0; i<_param._nb_branch_complete; i++)
     64//       PORT_WRITE(out_BRANCH_COMPLETE_ACK [i],1);
    6565
    6666#if (defined(STATISTICS) || defined (VHDL_TESTBENCH))
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Stage_1_Ifetch/Predictor/Meta_Predictor/Two_Level_Branch_Predictor/Pattern_History_Table/src/Pattern_History_Table_allocation.cpp

    r3 r15  
    2525
    2626    in_CLOCK  = new SC_CLOCK           ("in_CLOCK");
     27    in_NRESET = new SC_IN (Tcontrol_t) ("in_NRESET");
    2728
    2829     in_PREDICT_VAL     = new SC_IN (Tcontrol_t) * [_param._nb_prediction];
     
    104105    name_component = _name+"_RegisterFile";
    105106   
    106     component_RegisterFile = new morpheo::behavioural::generic::registerfile::RegisterFile (name_component.c_str(),
     107    component_RegisterFile = new morpheo::behavioural::generic::registerfile::registerfile_monolithic::RegisterFile_Monolithic (name_component.c_str(),
    107108#ifdef STATISTICS
    108                                                                                             _param_statistics            ,
     109                                                                                                                                _param_statistics            ,
    109110#endif
    110                                                                                             *(_param._param_registerfile));
    111      
     111                                                                                                                                *(_param._param_registerfile));
     112   
    112113    // Instantiation
    113114    (*(component_RegisterFile->in_CLOCK))        (*(in_CLOCK));
    114    
     115    (*(component_RegisterFile->in_NRESET))       (*(in_NRESET));
     116
    115117    for (uint32_t i=0; i<_param._nb_prediction; i++)
    116118      {
    117         (*(component_RegisterFile-> in_READ_ENABLE   [i])) (*( in_PREDICT_VAL      [i]));
     119        (*(component_RegisterFile-> in_READ_VAL      [i])) (*( in_PREDICT_VAL      [i]));
     120        (*(component_RegisterFile->out_READ_ACK      [i])) (*(out_PREDICT_ACK      [i]));
    118121        (*(component_RegisterFile-> in_READ_ADDRESS  [i])) (*( in_PREDICT_ADDRESS  [i]));
    119122        (*(component_RegisterFile->out_READ_DATA     [i])) (*(out_PREDICT_HISTORY  [i]));   
     
    122125    for (uint32_t i=0; i<_param._nb_branch_complete; i++)
    123126      {
    124         (*(component_RegisterFile-> in_WRITE_ENABLE  [i])) (*(    in_BRANCH_COMPLETE_VAL      [i]));
     127        (*(component_RegisterFile-> in_WRITE_VAL     [i])) (*(    in_BRANCH_COMPLETE_VAL      [i]));
     128        (*(component_RegisterFile->out_WRITE_ACK     [i])) (*(   out_BRANCH_COMPLETE_ACK      [i]));
    125129        (*(component_RegisterFile-> in_WRITE_ADDRESS [i])) (*(    in_BRANCH_COMPLETE_ADDRESS  [i]));
    126130        (*(component_RegisterFile-> in_WRITE_DATA    [i])) (*(signal_BRANCH_COMPLETE_HISTORY  [i]));   
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Stage_1_Ifetch/Predictor/Meta_Predictor/Two_Level_Branch_Predictor/Pattern_History_Table/src/Pattern_History_Table_deallocation.cpp

    r3 r15  
    2323
    2424    delete in_CLOCK;
     25    delete in_NRESET;
    2526
    2627    for (uint32_t i=0; i<_param._nb_prediction; i++)
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Stage_1_Ifetch/Predictor/Meta_Predictor/Two_Level_Branch_Predictor/Pattern_History_Table/src/Pattern_History_Table_vhdl_body.cpp

    r3 r15  
    2222    log_printf(FUNC,Pattern_History_Table,"vhdl_body","Begin");
    2323
    24     vhdl.set_body ("-- Output : always at '1'");
    25     for (uint32_t i=0; i<_param._nb_branch_complete; i++)
    26       vhdl.set_body ("out_BRANCH_COMPLETE_ACK_"+toString(i)+" <= '1';");
    27     for (uint32_t i=0; i<_param._nb_prediction     ; i++)
    28       vhdl.set_body ("out_PREDICT_ACK_"+toString(i)+"         <= '1';");
    29     vhdl.set_body ("");
     24//     vhdl.set_body ("-- Output : always at '1'");
     25//     for (uint32_t i=0; i<_param._nb_branch_complete; i++)
     26//       vhdl.set_body ("out_BRANCH_COMPLETE_ACK_"+toString(i)+" <= '1';");
     27//     for (uint32_t i=0; i<_param._nb_prediction     ; i++)
     28//       vhdl.set_body ("out_PREDICT_ACK_"+toString(i)+"         <= '1';");
     29//     vhdl.set_body ("");
    3030
    3131    list<string> list_port_map;
     
    4141
    4242    list_port_map.clear();
    43     vhdl.set_body_component_port_map (list_port_map,"in_CLOCK","in_CLOCK");
     43    vhdl.set_body_component_port_map (list_port_map,"in_CLOCK ","in_CLOCK ");
     44    vhdl.set_body_component_port_map (list_port_map,"in_NRESET","in_NRESET");
     45
    4446    for (uint32_t i=0; i<_param._nb_prediction; i++)
    4547      {
    46         vhdl.set_body_component_port_map (list_port_map," in_READ_ENABLE_"+toString(i)+"  "," in_PREDICT_VAL_"+toString(i));
     48        vhdl.set_body_component_port_map (list_port_map," in_READ_VAL_"+toString(i)+"     "," in_PREDICT_VAL_"+toString(i));
     49        vhdl.set_body_component_port_map (list_port_map,"out_READ_ACK_"+toString(i)+"     ","out_PREDICT_ACK_"+toString(i));
    4750        vhdl.set_body_component_port_map (list_port_map," in_READ_ADDRESS_"+toString(i)+" "," in_PREDICT_ADDRESS_"+toString(i));
    4851        vhdl.set_body_component_port_map (list_port_map,"out_READ_DATA_"+toString(i)+"    ","out_PREDICT_HISTORY_"+toString(i));   
     
    5154    for (uint32_t i=0; i<_param._nb_branch_complete; i++)
    5255      {
    53         vhdl.set_body_component_port_map (list_port_map," in_WRITE_ENABLE_"+toString(i)+" ","    in_BRANCH_COMPLETE_VAL_"+toString(i)+"");
     56        vhdl.set_body_component_port_map (list_port_map," in_WRITE_VAL_"+toString(i)+"    ","    in_BRANCH_COMPLETE_VAL_"+toString(i)+"");
     57        vhdl.set_body_component_port_map (list_port_map,"out_WRITE_ACK_"+toString(i)+"    ","   out_BRANCH_COMPLETE_ACK_"+toString(i)+"");
    5458        vhdl.set_body_component_port_map (list_port_map," in_WRITE_ADDRESS_"+toString(i)+"","    in_BRANCH_COMPLETE_ADDRESS_"+toString(i));
    5559        vhdl.set_body_component_port_map (list_port_map," in_WRITE_DATA_"+toString(i)+"   ","signal_BRANCH_COMPLETE_HISTORY_"+toString(i));
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Stage_1_Ifetch/Predictor/Meta_Predictor/Two_Level_Branch_Predictor/Pattern_History_Table/src/Pattern_History_Table_vhdl_port.cpp

    r3 r15  
    2323
    2424    vhdl.set_port (" in_CLOCK" , IN, 1);
     25    vhdl.set_port (" in_NRESET", IN, 1);
    2526
    2627    for (uint32_t i=0; i<_param._nb_prediction; i++)
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Stage_1_Ifetch/Predictor/Meta_Predictor/Two_Level_Branch_Predictor/Pattern_History_Table/src/Pattern_History_Table_vhdl_testbench_port.cpp

    r3 r15  
    2121  {
    2222    log_printf(FUNC,Pattern_History_Table,"vhdl_testbench_port","Begin");
     23
     24    _vhdl_testbench->set_port (" in_NRESET", IN, 1);
    2325
    2426    for (uint32_t i=0; i<_param._nb_prediction; i++)
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Stage_1_Ifetch/Predictor/Meta_Predictor/Two_Level_Branch_Predictor/Pattern_History_Table/src/Pattern_History_Table_vhdl_testbench_transition.cpp

    r3 r15  
    3030    // (because we have no control on the ordonnancer's policy)
    3131
     32    _vhdl_testbench->add_input  (PORT_READ( in_NRESET));
     33
    3234    for (uint32_t i=0; i<_param._nb_prediction; i++)
    3335      {
    3436        _vhdl_testbench->add_input  (PORT_READ( in_PREDICT_VAL     [i]));
    35         _vhdl_testbench->add_output (PORT_READ(out_PREDICT_ACK     [i]));
     37        _vhdl_testbench->add_output (PORT_READ(component_RegisterFile->out_READ_ACK  [i]));
    3638        _vhdl_testbench->add_input  (PORT_READ( in_PREDICT_ADDRESS [i]));
    3739        _vhdl_testbench->add_output (PORT_READ(component_RegisterFile->out_READ_DATA [i]));
     
    4244       {
    4345         _vhdl_testbench->add_input  (PORT_READ( in_BRANCH_COMPLETE_VAL      [i]));
    44          _vhdl_testbench->add_output (PORT_READ(out_BRANCH_COMPLETE_ACK      [i]));
     46         _vhdl_testbench->add_output (PORT_READ(component_RegisterFile->out_WRITE_ACK [i]));
    4547         _vhdl_testbench->add_input  (PORT_READ( in_BRANCH_COMPLETE_ADDRESS  [i]));
    4648         _vhdl_testbench->add_input  (PORT_READ( in_BRANCH_COMPLETE_HISTORY  [i]));
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Stage_1_Ifetch/Predictor/Meta_Predictor/Two_Level_Branch_Predictor/SelfTest/mkf.info

    r3 r15  
    1 
    2 # Two_Level_Branch_Predictor_0
    3 target_dep      all     Two_Level_Branch_Predictor_0.ngc
    4 target_dep      Two_Level_Branch_Predictor_0.ngc        Two_Level_Branch_Predictor_0.prj
    5 target_dep      Two_Level_Branch_Predictor_0.prj        Two_Level_Branch_Predictor_0_Branch_History_Table_Pack.vhdl Two_Level_Branch_Predictor_0_Branch_History_Table_RegisterFile_Pack.vhdl Two_Level_Branch_Predictor_0_Branch_History_Table_RegisterFile.vhdl Two_Level_Branch_Predictor_0_Branch_History_Table_Shifter_Pack.vhdl Two_Level_Branch_Predictor_0_Branch_History_Table_Shifter.vhdl Two_Level_Branch_Predictor_0_Branch_History_Table.vhdl Two_Level_Branch_Predictor_0_Pack.vhdl Two_Level_Branch_Predictor_0_Pattern_History_Table_Counter_Pack.vhdl Two_Level_Branch_Predictor_0_Pattern_History_Table_Counter.vhdl Two_Level_Branch_Predictor_0_Pattern_History_Table_Pack.vhdl Two_Level_Branch_Predictor_0_Pattern_History_Table_RegisterFile_Pack.vhdl Two_Level_Branch_Predictor_0_Pattern_History_Table_RegisterFile.vhdl Two_Level_Branch_Predictor_0_Pattern_History_Table.vhdl Two_Level_Branch_Predictor_0_Two_Level_Branch_Predictor_Glue_Pack.vhdl Two_Level_Branch_Predictor_0_Two_Level_Branch_Predictor_Glue.vhdl Two_Level_Branch_Predictor_0.vhdl
    6 
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Stage_1_Ifetch/Predictor/Meta_Predictor/Two_Level_Branch_Predictor/SelfTest/src/test.cpp

    r5 r15  
    2929   *********************************************************************/
    3030  sc_clock                              *  CLOCK;
     31  sc_signal<Tcontrol_t>                 *  NRESET;
    3132
    3233  sc_signal<Tcontrol_t>                 *  PREDICT_VAL                 [param._nb_prediction];
     
    4748  string rename;
    4849
    49   CLOCK = new sc_clock ("clock", 1.0, 0.5);
     50  CLOCK  = new sc_clock              ("clock", 1.0, 0.5);
     51  NRESET = new sc_signal<Tcontrol_t> ("NRESET");
    5052
    5153  for (uint32_t i=0; i<param._nb_prediction; i++)
     
    8587  cout << "<" << name << "> Instanciation of _Two_Level_Branch_Predictor" << endl;
    8688 
    87   (*(_Two_Level_Branch_Predictor->in_CLOCK))        (*(CLOCK));
     89  (*(_Two_Level_Branch_Predictor->in_CLOCK ))        (*(CLOCK ));
     90  (*(_Two_Level_Branch_Predictor->in_NRESET))        (*(NRESET));
    8891 
    8992  for (uint32_t i=0; i<param._nb_prediction; i++)
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Stage_1_Ifetch/Predictor/Meta_Predictor/Two_Level_Branch_Predictor/Two_Level_Branch_Predictor_Glue/SelfTest/mkf.info

    r2 r15  
    1 
    2 # Two_Level_Branch_Predictor_Glue_0
    3 target_dep      all     Two_Level_Branch_Predictor_Glue_0.ngc
    4 target_dep      Two_Level_Branch_Predictor_Glue_0.ngc   Two_Level_Branch_Predictor_Glue_0.prj
    5 target_dep      Two_Level_Branch_Predictor_Glue_0.prj   Two_Level_Branch_Predictor_Glue_0_Pack.vhdl Two_Level_Branch_Predictor_Glue_0.vhdl
    6 
    7 # Two_Level_Branch_Predictor_Glue_10
    8 target_dep      all     Two_Level_Branch_Predictor_Glue_10.ngc
    9 target_dep      Two_Level_Branch_Predictor_Glue_10.ngc  Two_Level_Branch_Predictor_Glue_10.prj
    10 target_dep      Two_Level_Branch_Predictor_Glue_10.prj  Two_Level_Branch_Predictor_Glue_10_Pack.vhdl Two_Level_Branch_Predictor_Glue_10.vhdl
    11 
    12 # Two_Level_Branch_Predictor_Glue_11
    13 target_dep      all     Two_Level_Branch_Predictor_Glue_11.ngc
    14 target_dep      Two_Level_Branch_Predictor_Glue_11.ngc  Two_Level_Branch_Predictor_Glue_11.prj
    15 target_dep      Two_Level_Branch_Predictor_Glue_11.prj  Two_Level_Branch_Predictor_Glue_11_Pack.vhdl Two_Level_Branch_Predictor_Glue_11.vhdl
    16 
    17 # Two_Level_Branch_Predictor_Glue_12
    18 target_dep      all     Two_Level_Branch_Predictor_Glue_12.ngc
    19 target_dep      Two_Level_Branch_Predictor_Glue_12.ngc  Two_Level_Branch_Predictor_Glue_12.prj
    20 target_dep      Two_Level_Branch_Predictor_Glue_12.prj  Two_Level_Branch_Predictor_Glue_12_Pack.vhdl Two_Level_Branch_Predictor_Glue_12.vhdl
    21 
    22 # Two_Level_Branch_Predictor_Glue_13
    23 target_dep      all     Two_Level_Branch_Predictor_Glue_13.ngc
    24 target_dep      Two_Level_Branch_Predictor_Glue_13.ngc  Two_Level_Branch_Predictor_Glue_13.prj
    25 target_dep      Two_Level_Branch_Predictor_Glue_13.prj  Two_Level_Branch_Predictor_Glue_13_Pack.vhdl Two_Level_Branch_Predictor_Glue_13.vhdl
    26 
    27 # Two_Level_Branch_Predictor_Glue_14
    28 target_dep      all     Two_Level_Branch_Predictor_Glue_14.ngc
    29 target_dep      Two_Level_Branch_Predictor_Glue_14.ngc  Two_Level_Branch_Predictor_Glue_14.prj
    30 target_dep      Two_Level_Branch_Predictor_Glue_14.prj  Two_Level_Branch_Predictor_Glue_14_Pack.vhdl Two_Level_Branch_Predictor_Glue_14.vhdl
    31 
    32 # Two_Level_Branch_Predictor_Glue_15
    33 target_dep      all     Two_Level_Branch_Predictor_Glue_15.ngc
    34 target_dep      Two_Level_Branch_Predictor_Glue_15.ngc  Two_Level_Branch_Predictor_Glue_15.prj
    35 target_dep      Two_Level_Branch_Predictor_Glue_15.prj  Two_Level_Branch_Predictor_Glue_15_Pack.vhdl Two_Level_Branch_Predictor_Glue_15.vhdl
    36 
    37 # Two_Level_Branch_Predictor_Glue_16
    38 target_dep      all     Two_Level_Branch_Predictor_Glue_16.ngc
    39 target_dep      Two_Level_Branch_Predictor_Glue_16.ngc  Two_Level_Branch_Predictor_Glue_16.prj
    40 target_dep      Two_Level_Branch_Predictor_Glue_16.prj  Two_Level_Branch_Predictor_Glue_16_Pack.vhdl Two_Level_Branch_Predictor_Glue_16.vhdl
    41 
    42 # Two_Level_Branch_Predictor_Glue_17
    43 target_dep      all     Two_Level_Branch_Predictor_Glue_17.ngc
    44 target_dep      Two_Level_Branch_Predictor_Glue_17.ngc  Two_Level_Branch_Predictor_Glue_17.prj
    45 target_dep      Two_Level_Branch_Predictor_Glue_17.prj  Two_Level_Branch_Predictor_Glue_17_Pack.vhdl Two_Level_Branch_Predictor_Glue_17.vhdl
    46 
    47 # Two_Level_Branch_Predictor_Glue_18
    48 target_dep      all     Two_Level_Branch_Predictor_Glue_18.ngc
    49 target_dep      Two_Level_Branch_Predictor_Glue_18.ngc  Two_Level_Branch_Predictor_Glue_18.prj
    50 target_dep      Two_Level_Branch_Predictor_Glue_18.prj  Two_Level_Branch_Predictor_Glue_18_Pack.vhdl Two_Level_Branch_Predictor_Glue_18.vhdl
    51 
    52 # Two_Level_Branch_Predictor_Glue_19
    53 target_dep      all     Two_Level_Branch_Predictor_Glue_19.ngc
    54 target_dep      Two_Level_Branch_Predictor_Glue_19.ngc  Two_Level_Branch_Predictor_Glue_19.prj
    55 target_dep      Two_Level_Branch_Predictor_Glue_19.prj  Two_Level_Branch_Predictor_Glue_19_Pack.vhdl Two_Level_Branch_Predictor_Glue_19.vhdl
    56 
    57 # Two_Level_Branch_Predictor_Glue_1
    58 target_dep      all     Two_Level_Branch_Predictor_Glue_1.ngc
    59 target_dep      Two_Level_Branch_Predictor_Glue_1.ngc   Two_Level_Branch_Predictor_Glue_1.prj
    60 target_dep      Two_Level_Branch_Predictor_Glue_1.prj   Two_Level_Branch_Predictor_Glue_10_Pack.vhdl Two_Level_Branch_Predictor_Glue_10.vhdl Two_Level_Branch_Predictor_Glue_11_Pack.vhdl Two_Level_Branch_Predictor_Glue_11.vhdl Two_Level_Branch_Predictor_Glue_12_Pack.vhdl Two_Level_Branch_Predictor_Glue_12.vhdl Two_Level_Branch_Predictor_Glue_13_Pack.vhdl Two_Level_Branch_Predictor_Glue_13.vhdl Two_Level_Branch_Predictor_Glue_14_Pack.vhdl Two_Level_Branch_Predictor_Glue_14.vhdl Two_Level_Branch_Predictor_Glue_15_Pack.vhdl Two_Level_Branch_Predictor_Glue_15.vhdl Two_Level_Branch_Predictor_Glue_16_Pack.vhdl Two_Level_Branch_Predictor_Glue_16.vhdl Two_Level_Branch_Predictor_Glue_17_Pack.vhdl Two_Level_Branch_Predictor_Glue_17.vhdl Two_Level_Branch_Predictor_Glue_18_Pack.vhdl Two_Level_Branch_Predictor_Glue_18.vhdl Two_Level_Branch_Predictor_Glue_19_Pack.vhdl Two_Level_Branch_Predictor_Glue_19.vhdl Two_Level_Branch_Predictor_Glue_1_Pack.vhdl Two_Level_Branch_Predictor_Glue_1.vhdl
    61 
    62 # Two_Level_Branch_Predictor_Glue_20
    63 target_dep      all     Two_Level_Branch_Predictor_Glue_20.ngc
    64 target_dep      Two_Level_Branch_Predictor_Glue_20.ngc  Two_Level_Branch_Predictor_Glue_20.prj
    65 target_dep      Two_Level_Branch_Predictor_Glue_20.prj  Two_Level_Branch_Predictor_Glue_20_Pack.vhdl Two_Level_Branch_Predictor_Glue_20.vhdl
    66 
    67 # Two_Level_Branch_Predictor_Glue_21
    68 target_dep      all     Two_Level_Branch_Predictor_Glue_21.ngc
    69 target_dep      Two_Level_Branch_Predictor_Glue_21.ngc  Two_Level_Branch_Predictor_Glue_21.prj
    70 target_dep      Two_Level_Branch_Predictor_Glue_21.prj  Two_Level_Branch_Predictor_Glue_21_Pack.vhdl Two_Level_Branch_Predictor_Glue_21.vhdl
    71 
    72 # Two_Level_Branch_Predictor_Glue_22
    73 target_dep      all     Two_Level_Branch_Predictor_Glue_22.ngc
    74 target_dep      Two_Level_Branch_Predictor_Glue_22.ngc  Two_Level_Branch_Predictor_Glue_22.prj
    75 target_dep      Two_Level_Branch_Predictor_Glue_22.prj  Two_Level_Branch_Predictor_Glue_22_Pack.vhdl Two_Level_Branch_Predictor_Glue_22.vhdl
    76 
    77 # Two_Level_Branch_Predictor_Glue_23
    78 target_dep      all     Two_Level_Branch_Predictor_Glue_23.ngc
    79 target_dep      Two_Level_Branch_Predictor_Glue_23.ngc  Two_Level_Branch_Predictor_Glue_23.prj
    80 target_dep      Two_Level_Branch_Predictor_Glue_23.prj  Two_Level_Branch_Predictor_Glue_23_Pack.vhdl Two_Level_Branch_Predictor_Glue_23.vhdl
    81 
    82 # Two_Level_Branch_Predictor_Glue_2
    83 target_dep      all     Two_Level_Branch_Predictor_Glue_2.ngc
    84 target_dep      Two_Level_Branch_Predictor_Glue_2.ngc   Two_Level_Branch_Predictor_Glue_2.prj
    85 target_dep      Two_Level_Branch_Predictor_Glue_2.prj   Two_Level_Branch_Predictor_Glue_20_Pack.vhdl Two_Level_Branch_Predictor_Glue_20.vhdl Two_Level_Branch_Predictor_Glue_21_Pack.vhdl Two_Level_Branch_Predictor_Glue_21.vhdl Two_Level_Branch_Predictor_Glue_22_Pack.vhdl Two_Level_Branch_Predictor_Glue_22.vhdl Two_Level_Branch_Predictor_Glue_23_Pack.vhdl Two_Level_Branch_Predictor_Glue_23.vhdl Two_Level_Branch_Predictor_Glue_2_Pack.vhdl Two_Level_Branch_Predictor_Glue_2.vhdl
    86 
    87 # Two_Level_Branch_Predictor_Glue_3
    88 target_dep      all     Two_Level_Branch_Predictor_Glue_3.ngc
    89 target_dep      Two_Level_Branch_Predictor_Glue_3.ngc   Two_Level_Branch_Predictor_Glue_3.prj
    90 target_dep      Two_Level_Branch_Predictor_Glue_3.prj   Two_Level_Branch_Predictor_Glue_3_Pack.vhdl Two_Level_Branch_Predictor_Glue_3.vhdl
    91 
    92 # Two_Level_Branch_Predictor_Glue_4
    93 target_dep      all     Two_Level_Branch_Predictor_Glue_4.ngc
    94 target_dep      Two_Level_Branch_Predictor_Glue_4.ngc   Two_Level_Branch_Predictor_Glue_4.prj
    95 target_dep      Two_Level_Branch_Predictor_Glue_4.prj   Two_Level_Branch_Predictor_Glue_4_Pack.vhdl Two_Level_Branch_Predictor_Glue_4.vhdl
    96 
    97 # Two_Level_Branch_Predictor_Glue_5
    98 target_dep      all     Two_Level_Branch_Predictor_Glue_5.ngc
    99 target_dep      Two_Level_Branch_Predictor_Glue_5.ngc   Two_Level_Branch_Predictor_Glue_5.prj
    100 target_dep      Two_Level_Branch_Predictor_Glue_5.prj   Two_Level_Branch_Predictor_Glue_5_Pack.vhdl Two_Level_Branch_Predictor_Glue_5.vhdl
    101 
    102 # Two_Level_Branch_Predictor_Glue_6
    103 target_dep      all     Two_Level_Branch_Predictor_Glue_6.ngc
    104 target_dep      Two_Level_Branch_Predictor_Glue_6.ngc   Two_Level_Branch_Predictor_Glue_6.prj
    105 target_dep      Two_Level_Branch_Predictor_Glue_6.prj   Two_Level_Branch_Predictor_Glue_6_Pack.vhdl Two_Level_Branch_Predictor_Glue_6.vhdl
    106 
    107 # Two_Level_Branch_Predictor_Glue_7
    108 target_dep      all     Two_Level_Branch_Predictor_Glue_7.ngc
    109 target_dep      Two_Level_Branch_Predictor_Glue_7.ngc   Two_Level_Branch_Predictor_Glue_7.prj
    110 target_dep      Two_Level_Branch_Predictor_Glue_7.prj   Two_Level_Branch_Predictor_Glue_7_Pack.vhdl Two_Level_Branch_Predictor_Glue_7.vhdl
    111 
    112 # Two_Level_Branch_Predictor_Glue_8
    113 target_dep      all     Two_Level_Branch_Predictor_Glue_8.ngc
    114 target_dep      Two_Level_Branch_Predictor_Glue_8.ngc   Two_Level_Branch_Predictor_Glue_8.prj
    115 target_dep      Two_Level_Branch_Predictor_Glue_8.prj   Two_Level_Branch_Predictor_Glue_8_Pack.vhdl Two_Level_Branch_Predictor_Glue_8.vhdl
    116 
    117 # Two_Level_Branch_Predictor_Glue_9
    118 target_dep      all     Two_Level_Branch_Predictor_Glue_9.ngc
    119 target_dep      Two_Level_Branch_Predictor_Glue_9.ngc   Two_Level_Branch_Predictor_Glue_9.prj
    120 target_dep      Two_Level_Branch_Predictor_Glue_9.prj   Two_Level_Branch_Predictor_Glue_9_Pack.vhdl Two_Level_Branch_Predictor_Glue_9.vhdl
    121 
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Stage_1_Ifetch/Predictor/Meta_Predictor/Two_Level_Branch_Predictor/include/Two_Level_Branch_Predictor.h

    r3 r15  
    7070    // Interface
    7171  public    : SC_CLOCK                      *  in_CLOCK                      ;
    72 
     72  public    : SC_IN (Tcontrol_t)            *  in_NRESET                     ;
    7373    // Interface Predict
    7474  public    : SC_IN (Tcontrol_t)           **  in_PREDICT_VAL                ;
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Stage_1_Ifetch/Predictor/Meta_Predictor/Two_Level_Branch_Predictor/src/Two_Level_Branch_Predictor_allocation.cpp

    r3 r15  
    2323
    2424     in_CLOCK  = new SC_CLOCK           ("in_CLOCK");
     25     in_NRESET = new SC_IN (Tcontrol_t) ("in_NRESET");
    2526
    2627     in_PREDICT_VAL                 = new SC_IN (Tcontrol_t)     * [_param._nb_prediction     ];
     
    161162       
    162163        // Instantiation
    163         (*(component_Branch_History_Table->in_CLOCK))        (*(in_CLOCK));
     164        (*(component_Branch_History_Table->in_CLOCK ))        (*(in_CLOCK ));
     165        (*(component_Branch_History_Table->in_NRESET))        (*(in_NRESET));
    164166
    165167        for (uint32_t i=0; i<_param._nb_prediction; i++)
     
    196198        // Instantiation
    197199        (*(component_Pattern_History_Table->in_CLOCK))        (*(in_CLOCK));
     200        (*(component_Pattern_History_Table->in_NRESET))       (*(in_NRESET));
    198201       
    199202        for (uint32_t i=0; i<_param._nb_prediction; i++)
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Stage_1_Ifetch/Predictor/Meta_Predictor/Two_Level_Branch_Predictor/src/Two_Level_Branch_Predictor_deallocation.cpp

    r3 r15  
    2121
    2222    delete in_CLOCK;
     23    delete in_NRESET;
    2324
    2425    for (uint32_t i=0; i<_param._nb_prediction; i++)
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Stage_1_Ifetch/Predictor/Meta_Predictor/Two_Level_Branch_Predictor/src/Two_Level_Branch_Predictor_vhdl_body.cpp

    r3 r15  
    2727        list_port_map.clear();
    2828
    29         vhdl.set_body_component_port_map (list_port_map,"in_CLOCK","in_CLOCK");
     29        vhdl.set_body_component_port_map (list_port_map,"in_CLOCK ","in_CLOCK ");
     30        vhdl.set_body_component_port_map (list_port_map,"in_NRESET","in_NRESET");
    3031
    3132        for (uint32_t i=0; i<_param._nb_prediction; i++)
     
    5354        list_port_map.clear();
    5455
    55         vhdl.set_body_component_port_map (list_port_map,"in_CLOCK","in_CLOCK");
     56        vhdl.set_body_component_port_map (list_port_map,"in_CLOCK ","in_CLOCK ");
     57        vhdl.set_body_component_port_map (list_port_map,"in_NRESET","in_NRESET");
    5658
    5759        for (uint32_t i=0; i<_param._nb_prediction; i++)
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Stage_1_Ifetch/Predictor/Meta_Predictor/Two_Level_Branch_Predictor/src/Two_Level_Branch_Predictor_vhdl_port.cpp

    r3 r15  
    2020    log_printf(FUNC,Two_Level_Branch_Predictor,"vhdl_port","Begin");
    2121
    22     vhdl.set_port (" in_CLOCK" , IN, 1);
     22    vhdl.set_port (" in_CLOCK ", IN, 1);
     23    vhdl.set_port (" in_NRESET", IN, 1);
    2324
    2425    for (uint32_t i=0; i<_param._nb_prediction; i++)
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Stage_1_Ifetch/Predictor/Meta_Predictor/Two_Level_Branch_Predictor/src/Two_Level_Branch_Predictor_vhdl_testbench_port.cpp

    r3 r15  
    2020  {
    2121    log_printf(FUNC,Two_Level_Branch_Predictor,"vhdl_testbench_port","Begin");
     22
     23    _vhdl_testbench->set_port (" in_NRESET", IN, 1);
    2224
    2325    for (uint32_t i=0; i<_param._nb_prediction; i++)
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Stage_1_Ifetch/Predictor/Meta_Predictor/Two_Level_Branch_Predictor/src/Two_Level_Branch_Predictor_vhdl_testbench_transition.cpp

    r3 r15  
    2525#endif   
    2626
     27    _vhdl_testbench->add_input (PORT_READ( in_NRESET));
     28   
    2729    // In order with file Two_Level_Branch_Predictor_vhdl_testbench_port.cpp
    2830    // Warning : if a output depend of a subcomponent, take directly the port of subcomponent
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Stage_1_Ifetch/Predictor/Meta_Predictor/include/Meta_Predictor.h

    r5 r15  
    6868    // Interface
    6969  public    : SC_CLOCK                      *  in_CLOCK        ;
     70  public    : SC_IN (Tcontrol_t)            *  in_NRESET       ;
    7071
    7172    // Interface Predict
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Stage_1_Ifetch/Predictor/Meta_Predictor/src/Meta_Predictor_allocation.cpp

    r5 r15  
    2323
    2424    in_CLOCK  = new SC_CLOCK           ("in_CLOCK");
     25    in_NRESET = new SC_IN (Tcontrol_t) ("in_NRESET");
    2526
    2627     in_PREDICT_VAL                 = new SC_IN (Tcontrol_t)     * [_param._nb_prediction     ];
     
    235236   
    236237    // Instantiation
    237     (*(component_Meta_Predictor_Glue->in_CLOCK))        (*(in_CLOCK));
    238    
     238#if defined(STATISTICS) or defined(VHDL_TESTBENCH)
     239    (*(component_Meta_Predictor_Glue->in_CLOCK ))        (*(in_CLOCK ));
     240#endif
     241   
    239242        // Interface Predict
    240243    for (uint32_t i=0; i<_param._nb_prediction; i++)
     
    317320     
    318321    // Instantiation
    319     (*(component_Two_Level_Branch_Predictor_2->in_CLOCK))        (*(in_CLOCK));
     322    (*(component_Two_Level_Branch_Predictor_2->in_CLOCK ))        (*(in_CLOCK ));
     323    (*(component_Two_Level_Branch_Predictor_2->in_NRESET))        (*(in_NRESET));
    320324   
    321325    for (uint32_t i=0; i<_param._nb_prediction; i++)
     
    363367     
    364368    // Instantiation
    365     (*(component_Two_Level_Branch_Predictor_1->in_CLOCK))        (*(in_CLOCK));
     369    (*(component_Two_Level_Branch_Predictor_1->in_CLOCK ))        (*(in_CLOCK ));
     370    (*(component_Two_Level_Branch_Predictor_1->in_NRESET))        (*(in_NRESET));
    366371   
    367372    for (uint32_t i=0; i<_param._nb_prediction; i++)
     
    401406     
    402407    // Instantiation
    403     (*(component_Two_Level_Branch_Predictor_0->in_CLOCK))        (*(in_CLOCK));
     408    (*(component_Two_Level_Branch_Predictor_0->in_CLOCK ))        (*(in_CLOCK ));
     409    (*(component_Two_Level_Branch_Predictor_0->in_NRESET))        (*(in_NRESET));
    404410   
    405411    for (uint32_t i=0; i<_param._nb_prediction; i++)
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Stage_1_Ifetch/Predictor/Meta_Predictor/src/Meta_Predictor_deallocation.cpp

    r5 r15  
    2020
    2121    delete in_CLOCK;
     22    delete in_NRESET;
    2223
    2324    for (uint32_t i=0; i<_param._nb_prediction; i++)
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Stage_1_Ifetch/Predictor/Meta_Predictor/src/Meta_Predictor_vhdl_body.cpp

    r5 r15  
    105105   
    106106    // Instantiation
    107     vhdl.set_body_component_port_map (list_port_map,"in_CLOCK","in_CLOCK");
     107    vhdl.set_body_component_port_map (list_port_map,"in_CLOCK ","in_CLOCK ");
     108    vhdl.set_body_component_port_map (list_port_map,"in_NRESET","in_NRESET");
    108109   
    109110    for (uint32_t i=0; i<_param._nb_prediction; i++)
     
    146147   
    147148    // Instantiation
    148     vhdl.set_body_component_port_map (list_port_map,"in_CLOCK","in_CLOCK");
     149    vhdl.set_body_component_port_map (list_port_map,"in_CLOCK ","in_CLOCK ");
     150    vhdl.set_body_component_port_map (list_port_map,"in_NRESET","in_NRESET");
    149151   
    150152    for (uint32_t i=0; i<_param._nb_prediction; i++)
     
    179181   
    180182    // Instantiation
    181     vhdl.set_body_component_port_map (list_port_map,"in_CLOCK","in_CLOCK");
     183    vhdl.set_body_component_port_map (list_port_map,"in_CLOCK ","in_CLOCK ");
     184    vhdl.set_body_component_port_map (list_port_map,"in_NRESET","in_NRESET");
    182185   
    183186    for (uint32_t i=0; i<_param._nb_prediction; i++)
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Stage_1_Ifetch/Predictor/Meta_Predictor/src/Meta_Predictor_vhdl_port.cpp

    r5 r15  
    2020    log_printf(FUNC,Meta_Predictor,"vhdl_port","Begin");
    2121
    22     vhdl.set_port (" in_CLOCK" , IN, 1);
     22    vhdl.set_port (" in_CLOCK ", IN, 1);
     23    vhdl.set_port (" in_NRESET", IN, 1);
    2324
    2425    for (uint32_t i=0; i<_param._nb_prediction; i++)
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Stage_1_Ifetch/Predictor/Meta_Predictor/src/Meta_Predictor_vhdl_testbench_port.cpp

    r5 r15  
    1919  {
    2020    log_printf(FUNC,Meta_Predictor,"vhdl_testbench_port","Begin");
     21
     22    _vhdl_testbench->set_port (" in_NRESET", IN, 1);
    2123
    2224    for (uint32_t i=0; i<_param._nb_prediction; i++)
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Stage_1_Ifetch/Predictor/Meta_Predictor/src/Meta_Predictor_vhdl_testbench_transition.cpp

    r5 r15  
    2626    // Warning : if a output depend of a subcomponent, take directly the port of subcomponent
    2727    // (because we have no control on the ordonnancer's policy)
     28
     29    _vhdl_testbench->add_input (PORT_READ( in_NRESET));
    2830
    2931    for (uint32_t i=0; i<_param._nb_prediction; i++)
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/include/Debug_component.h

    r3 r15  
    22#define DEBUG_COMPONENT_H
    33
    4 #define DEBUG_Behavioural                                 false
    5 
    6 // Behavioural/Generic/
    7 #define DEBUG_Counter                                     false
    8 #define DEBUG_Group                                       false
    9 #define DEBUG_Register_File                               false
    10 #define DEBUG_Shifter                                     false
    11 // Behavioural/Generic/Select/
    12 #define DEBUG_Pseudo_LRU                                  false
    13 // Behavioural/Stage_1_Ifetch/
    14 // Behavioural/Stage_1_Ifetch/Predictor/
    15 // Behavioural/Stage_1_Ifetch/Predictor/Meta_Predictor/
    16 #define DEBUG_Two_Level_Branch_Predictor                  false
    17 // Behavioural/Stage_1_Ifetch/Predictor/Meta_Predictor/Two_Level_Branch_Predictor/
    18 #define DEBUG_Two_Level_Branch_Predictor_Glue             false
    19 #define DEBUG_Branch_History_Table                        false
    20 #define DEBUG_Pattern_History_Table                       false
     4#define DEBUG_Behavioural                                   false
     5#define   DEBUG_Generic                                     false
     6#define     DEBUG_Counter                                   false
     7#define     DEBUG_Group                                     false
     8#define     DEBUG_Shifter                                   false
     9#define     DEBUG_Register_File                             false
     10#define     DEBUG_RegisterFile_Multi_Banked                 true
     11#define       DEBUG_RegisterFile_Multi_Banked_Glue          true
     12#define     DEBUG_Select                                    false
     13#define       DEBUG_Select_Priority_Fixed                   true
     14#define     DEBUG_Victim                                    false
     15#define       DEBUG_Victim_Pseudo_LRU                       false
     16#define   DEBUG_Stage_1_Ifetch                              false
     17#define     DEBUG_Predictor                                 false
     18#define       DEBUG_Meta_Predictor                          false
     19#define         DEBUG_Meta_Predictor_Glue                   false
     20#define           DEBUG_Two_Level_Branch_Predictor          false
     21#define             DEBUG_Two_Level_Branch_Predictor_Glue   false
     22#define             DEBUG_Branch_History_Table              false
     23#define             DEBUG_Pattern_History_Table             false
     24#define   DEBUG_Stage_5_Execute                             false
     25#define     DEBUG_Execution_cluster                         false
     26#define       DEBUG_Execution_group                         false
     27#define         DEBUG_Execution_unit                        false
    2128
    2229#endif
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/include/Parameters.h

    r2 r15  
    2727  {
    2828    // -----[ fields ]----------------------------------------------------
    29     // Constant
    30   public   : const uint32_t _size_condition;
    31   public   : const uint32_t _size_instruction;
    32   public   : const uint32_t _size_instruction_log2;
    3329
    3430    // -----[ methods ]---------------------------------------------------
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/mkf.info

    r2 r15  
    1515
    1616# build src directory content
    17 target_dep              all             Generic/Counter/SelfTest
     17#target_dep             all             Generic/Counter/SelfTest
    1818target_dep              all             Generic/RegisterFile/SelfTest
    19 target_dep              all             Generic/Shifter/SelfTest
    20 target_dep              all             Generic/Select/Pseudo_LRU/SelfTest
    21 target_dep              all             Stage_1_Ifetch/Predictor/Meta_Predictor/Two_Level_Branch_Predictor/SelfTest
    22 target_dep              all             Stage_1_Ifetch/Predictor/Meta_Predictor/Two_Level_Branch_Predictor/Branch_History_Table/SelfTest
    23 target_dep              all             Stage_1_Ifetch/Predictor/Meta_Predictor/Two_Level_Branch_Predictor/Pattern_History_Table/SelfTest
    24 target_dep              all             Stage_1_Ifetch/Predictor/Meta_Predictor/Two_Level_Branch_Predictor/Two_Level_Branch_Predictor_Glue/SelfTest
     19#target_dep             all             Generic/Shifter/SelfTest
     20target_dep              all             Generic/Select/Priority_Fixed/SelfTest
     21#target_dep             all             Generic/Victim/Pseudo_LRU/SelfTest
     22#target_dep             all             Stage_1_Ifetch/Predictor/Meta_Predictor/SelfTest
     23#target_dep             all             Stage_1_Ifetch/Predictor/Meta_Predictor/Meta_Predictor_Glue/SelfTest
     24#target_dep             all             Stage_1_Ifetch/Predictor/Meta_Predictor/Two_Level_Branch_Predictor/SelfTest
     25#target_dep             all             Stage_1_Ifetch/Predictor/Meta_Predictor/Two_Level_Branch_Predictor/Two_Level_Branch_Predictor_Glue/SelfTest
     26#target_dep             all             Stage_1_Ifetch/Predictor/Meta_Predictor/Two_Level_Branch_Predictor/Branch_History_Table/SelfTest
     27#target_dep             all             Stage_1_Ifetch/Predictor/Meta_Predictor/Two_Level_Branch_Predictor/Pattern_History_Table/SelfTest
     28#target_dep             all             Stage_5_Execute/Execution_cluster/Execution_group/Execution_unit/SelfTest
    2529
    2630# mkf include path
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/src/Parameters.cpp

    r2 r15  
    1111namespace behavioural          {
    1212
    13   Parameters::Parameters  (void) :
    14     _size_condition        ( 3),
    15     _size_instruction      (32) ,
    16     _size_instruction_log2 (static_cast<uint32_t>(ceil(log2(_size_instruction))))
     13  Parameters::Parameters  (void)
    1714  {
    1815  };
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/src/Vhdl_generate_file_model.cpp

    r2 r15  
    2323   
    2424    log_printf(TRACE,Behavioural,"generate_file_model","print %s",filename.c_str());
    25 
    2625    cout << "Generate file \""<< filename << "\"" << endl;
    2726
    2827    log_printf(TRACE,Behavioural,"generate_file_model","declaration");
    2928    ofstream file;
     29
    3030    log_printf(TRACE,Behavioural,"generate_file_model","open file");
    3131    file.open(filename.c_str(),ios::out | ios::trunc);
     
    3333    log_printf(TRACE,Behavioural,"generate_file_model","get model");
    3434    file << get_model (0,filename,_name,"behavioural");
    35 
    3635    file.close();
    3736
  • trunk/IPs/systemC/processor/Morpheo/Include/Debug.h

    r3 r15  
    99#include <string>
    1010using namespace std;
     11
     12// Debug's Level :
     13//  * None    : print elementary information
     14//  * Info    : print basic information
     15//  * Trace   : trace internal variable
     16//  * Func    : trace call and return function
     17//  * All     : print all information
    1118
    1219enum _debug_verbosity
     
    2128#ifdef DEBUG
    2229//Debug
    23 /*
    24 #  define log_printf(level, component, str... )                                       \
    25 do                                                                                    \
    26 {                                                                                     \
    27     if ( ( DEBUG_ ## level     <= DEBUG) and                                          \
    28          ( DEBUG_ ## component == true ) )                                            \
    29       {                                                                               \
    30         fprintf(stdout,"<%s> line %d : ",__FILE__,__LINE__);                          \
    31         fprintf(stdout,str);                                                          \
    32         fprintf(stdout,"\n");                                                         \
    33       }                                                                               \
    34 } while(0)                                                                         
    35 */                     
    36                                                    
    37 #  define log_printf(level, component, func, str... )                                 \
    38 do                                                                                    \
    39 {                                                                                     \
    40     if ( ( DEBUG_ ## level     <= DEBUG) and                                          \
    41          ( DEBUG_ ## component == true ) )                                            \
    42       {                                                                               \
    43         fprintf(stdout,"In file %s, ",__FILE__);                                      \
    44         fprintf(stdout,"at line %d, ",__LINE__);                                      \
    45         fprintf(stdout,"in function \"%s\" : ",func);                                 \
    46         fprintf(stdout,str);                                                          \
    47         fprintf(stdout,"\n");                                                         \
    48       }                                                                               \
     30
     31#  define log_printf(level, component, func, str... )                   \
     32do                                                                      \
     33{                                                                       \
     34    if ( (DEBUG == DEBUG_ALL) or                                        \
     35         (( DEBUG_ ## level     <= DEBUG) and                           \
     36          ( DEBUG_ ## component == true )) )                            \
     37      {                                                                 \
     38        if (DEBUG >= DEBUG_ALL )                                        \
     39          {                                                             \
     40            switch (DEBUG_ ## level)                                    \
     41            {                                                           \
     42            case DEBUG_NONE  : fprintf(stdout,"(none       ) "); break; \
     43            case DEBUG_INFO  : fprintf(stdout,"(information) "); break; \
     44            case DEBUG_TRACE : fprintf(stdout,"(trace      ) "); break; \
     45            case DEBUG_FUNC  : fprintf(stdout,"(function   ) "); break; \
     46            case DEBUG_ALL   : fprintf(stdout,"(all        ) "); break; \
     47            default          : fprintf(stdout,"(undefine   ) "); break; \
     48            }                                                           \
     49          }                                                             \
     50        fprintf(stdout,"In file %s, ",__FILE__);                        \
     51        fprintf(stdout,"at line %d, ",__LINE__);                        \
     52        if (DEBUG >= DEBUG_FUNC)                                        \
     53          {                                                             \
     54            fprintf(stdout,"in function \"%s\" ",func);                 \
     55          }                                                             \
     56        fprintf(stdout,": ");                                           \
     57        fprintf(stdout,str);                                            \
     58        fprintf(stdout,"\n");                                           \
     59        fflush (stdout);                                                \
     60      }                                                                 \
    4961} while(0)
    5062
    5163#else
    5264// No debug
    53 /*
    54 #  define log_printf(level, component, str... )                                       \
    55 do                                                                                    \
    56 {                                                                                     \
    57 } while(0)                                                                           
    58 */                                                                           
     65
    5966#  define log_printf(level, component, func, str... )                                 \
    6067do                                                                                    \
  • trunk/IPs/systemC/processor/Morpheo/Include/Test.h

    r3 r15  
    1515void test_ko (T exp1, T exp2, char * file, uint32_t line)
    1616{
    17   string msg = ("{"+toString(num_test)+"} : Test KO\n" +
     17  string msg = ("<"+toString(num_test)+"> : Test KO\n" +
    1818                " * Localisation\n"                    +
    1919                "   - File : "+file+"\n"               +
  • trunk/IPs/systemC/processor/Morpheo/Include/ToString.h

    r2 r15  
    1 #ifndef morpheo_Tostring
    2 #define morpheo_Tostring
     1#ifndef morpheo_tostring
     2#define morpheo_tostring
    33
    44/*
     
    2121namespace morpheo              {
    2222 
    23   template<typename T> inline std::string toString(const T& x)
     23  template<typename T> inline std::string toString             (const T& x)
    2424  {
    2525    ostringstream out;
     
    2828  }
    2929 
    30   template<> inline std::string toString<bool>       (const bool& x)
     30  template<>           inline std::string toString<bool>       (const bool& x)
    3131  {
    3232    ostringstream out;
     
    3636  }
    3737 
    38   template<> inline std::string toString<float>      (const float& x)
     38  template<>           inline std::string toString<float>      (const float& x)
    3939  {
    4040    const int sigdigits = std::numeric_limits<float>::digits10;
     
    4444  }
    4545 
    46   template<> inline std::string toString<double>     (const double& x)
     46  template<>           inline std::string toString<double>     (const double& x)
    4747  {
    4848    const int sigdigits = std::numeric_limits<double>::digits10;
     
    5252  }
    5353 
    54   template<> inline std::string toString<long double>(const long double& x)
     54  template<>           inline std::string toString<long double>(const long double& x)
    5555  {
    5656    const int sigdigits = std::numeric_limits<long double>::digits10;
  • trunk/IPs/systemC/processor/Morpheo/Makefile

    r2 r15  
     1include $(SOC)/Makefile.tools
     2
    13#-----[ Directory ]----------------------------------------------------
    24DIR_LIB                 = Library
    3 
    4 #-----[ Usual Commands ]-----------------------------------------------
    5 
    6 RM                      = rm
    7 ECHO                    = echo -e
    8 CD                      = cd
    9 LS                      = ls
    10 PWD                     = `pwd`
    11 TEST                    = test
    12 MAKE                    = make -s
    13 BASENAME                = basename
    14 CAT                     = cat
    15 MKDIR                   = mkdir
    16 
    17 #-----[ Particular Commands ]------------------------------------------
     5DIR_DOC                 = Documentation/Source
    186
    197#-----[ Options ]------------------------------------------------------
    20 DIR_DOC                 = Documentation/Source
    218
    229PREFIXE_PATH            = "."
     
    2815all                     : help
    2916
     17#~~~~~[ doc ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    3018doc                     :
    3119                        @$(ECHO) ""
     
    3422                        @$(MAKE) -C $(DIR_DOC) view
    3523
     24#~~~~~[ path ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    3625path                    :
    3726                        @$(ECHO) ""
     
    4433                        @$(MAKE) path_rec TAB="|    " DIR_PATH=.
    4534
    46 path_rec                        :
     35path_rec                :
    4736                        @                                                                                               \
    4837                                                                                                                        \
     
    7463                        @$(ECHO) " Function unimplemented"
    7564                        @$(ECHO) ""
    76                         @$(ECHO) " The library is generate into the directory : $(PWD)/$(DIR_LIB)"
     65#                       @$(ECHO) " The library is generate into the directory : $(PWD)/$(DIR_LIB)"
    7766
    7867#~~~~~[ Maintenance ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     
    8372                        @$(ECHO) ""
    8473                        @$(ECHO) "Delete     temporary files              "$(PWD)
    85                         @$(MAKE) clean_rec DIR_CLEAN=.
     74#                       @$(MAKE) clean_rec DIR_CLEAN=.
    8675
    8776#Clean recursive
    88 clean_rec               :
    89                         @$(ECHO) "Delete     temporary files in directory $(DIR_CLEAN)"
    90                         @$(RM) -f $(DIR_CLEAN)/*~
    91                         @                                                                               \
    92                         if $(TEST) -f $(DIR_CLEAN)/Makefile -a "$(DIR_CLEAN)" != ".";                   \
    93                         then                                                                            \
    94                                 ($(CD) $(DIR_CLEAN); $(MAKE) clean;)                                    \
    95                         else                                                                            \
    96                                 for files in `$(LS) $(DIR_CLEAN)`; do                                   \
    97                                         if $(TEST) -d $(DIR_CLEAN)/$$files;                             \
    98                                         then                                                            \
    99                                                 $(MAKE) clean_rec DIR_CLEAN=$(DIR_CLEAN)/$$files;       \
    100                                         fi;                                                             \
    101                                 done;                                                                   \
    102                         fi;
     77#clean_rec              :
     78#                       @$(ECHO) "Delete     temporary files in directory $(DIR_CLEAN)"
     79#                       @$(RM) -f $(DIR_CLEAN)/*~
     80#                       @                                                                               \
     81#                       if $(TEST) -f $(DIR_CLEAN)/Makefile -a "$(DIR_CLEAN)" != ".";                   \
     82#                       then                                                                            \
     83#                               ($(CD) $(DIR_CLEAN); $(MAKE) clean;)                                    \
     84#                       else                                                                            \
     85#                               for files in `$(LS) $(DIR_CLEAN)`; do                                   \
     86#                                       if $(TEST) -d $(DIR_CLEAN)/$$files;                             \
     87#                                       then                                                            \
     88#                                               $(MAKE) clean_rec DIR_CLEAN=$(DIR_CLEAN)/$$files;       \
     89#                                       fi;                                                             \
     90#                               done;                                                                   \
     91#                       fi;
    10392
    10493#~~~~~[ Help ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     
    11099                        @$(ECHO) " Rules              Description"
    111100                        @$(ECHO) ""
    112                         @$(ECHO) " all                cf rule \"help\""
    113                         @$(ECHO) " clean              Delete temporary files"
    114                         @$(ECHO) " doc                View documentation files"
    115                         @$(ECHO) " lib                Generate the library to include"
    116                         @$(ECHO) " help               Print this message"
    117                         @$(ECHO) " path               Print a little description of each directory"
     101                        @$(ECHO) " * all              cf rule \"help\""
     102                        @$(ECHO) " * clean            Delete temporary files"
     103                        @$(ECHO) " * doc              View documentation files"
     104                        @$(ECHO) " * lib              Generate the library to include"
     105                        @$(ECHO) " * help             Print this message"
     106                        @$(ECHO) " * path             Print a little description of each directory"
    118107                        @$(ECHO) ""
    119108
Note: See TracChangeset for help on using the changeset viewer.