Ignore:
Timestamp:
Jan 15, 2009, 6:19:08 PM (15 years ago)
Author:
rosiere
Message:

1) Add soc test
2) fix bug (Pc management, Decod and execute, Update prediction ...)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Monolithic/src/RegisterFile_Monolithic_vhdl_body.cpp

    r94 r101  
    6565    vhdl->set_body   (0,"begin  -- process RegisterFile_write");
    6666    vhdl->set_body   (1,"if in_CLOCK'event and in_CLOCK = '1' then");
     67
     68    if (_param->_have_init_value)
     69      {
     70        vhdl->set_body   (2,"if in_NRESET = '0' then");
     71       
     72        std::string init_value = ((_param->_size_word>1)?"\"":"'")+_param->_init_value+((_param->_size_word>1)?"\"":"'");
     73       
     74        for (uint32_t i=0; i<_param->_nb_word; ++i)
     75          vhdl->set_body   (3,"reg_DATA("+toString(i)+") <= "+init_value+";");
     76
     77        vhdl->set_body   (2,"else");
     78      }
    6779   
    6880    for (uint32_t i = 0; i < _param->_nb_port_write; i++)
     
    92104
    93105    vhdl->set_body   (1,"end if;");
     106
     107    if (_param->_have_init_value)
     108      vhdl->set_body   (1,"end if;");
     109
    94110    vhdl->set_body   (0,"end process RegisterFile_write;");
    95111  };
Note: See TracChangeset for help on using the changeset viewer.