source: trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Select/Pseudo_LRU/src/Pseudo_LRU_vhdl_declaration.cpp @ 2

Last change on this file since 2 was 2, checked in by kane, 17 years ago

Import Morpheo

File size: 1.1 KB
Line 
1#ifdef VHDL
2/*
3 * $Id$
4 *
5 * [ Description ]
6 *
7 */
8
9#include "Behavioural/Generic/Select/Pseudo_LRU/include/Pseudo_LRU.h"
10
11namespace morpheo {
12namespace behavioural {
13namespace generic {
14namespace select {
15namespace pseudo_lru {
16
17
18  void Pseudo_LRU::vhdl_declaration (Vhdl & vhdl)
19  {
20    vhdl.set_type ("Ttable", "array (" + toString(_param._size_table-1) + " downto 0) of "+std_logic(_param._nb_entity-1));
21
22
23    vhdl.set_signal ("reg_TABLE", "Ttable");
24    for (uint32_t i=0; i<_param._nb_access; i++)
25      {
26        vhdl.set_signal ("access_entry_"+toString(i)+"     ",std_logic(_param._nb_entity-1));
27        vhdl.set_signal ("access_next_entry_"+toString(i)+"",std_logic(_param._nb_entity-1));
28        vhdl.set_signal ("access_entity_"+toString(i)+"    ",std_logic(static_cast<uint32_t>(log2(_param._nb_entity))));
29      }
30
31    for (uint32_t i=0; i<_param._nb_update; i++)
32      {
33        vhdl.set_signal ("update_next_entry_"+toString(i)+"",std_logic(_param._nb_entity-1));
34      }
35  };
36
37}; // end namespace pseudo_lru
38}; // end namespace select
39}; // end namespace generic
40}; // end namespace behavioural
41}; // end namespace morpheo             
42#endif
Note: See TracBrowser for help on using the repository browser.