OpenCores
URL https://opencores.org/ocsvn/scarm/scarm/trunk

Subversion Repositories scarm

[/] [scarm/] [branches/] [release_0_1/] [src/] [scARMSoC.h] - Blame information for rev 8

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 5 zhong
///////////////////////////////////////////////////////////////////////////////
2
// This program is free software; you can redistribute it and/or
3
// modify it under the terms of the GNU General Public License
4
// as published by the Free Software Foundation; either version 2
5
// of the License, or (at your option) any later version.
6
//
7
// This program is distributed in the hope that it will be useful,
8
// but WITHOUT ANY WARRANTY; without even the implied warranty of
9
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
10
// GNU General Public License for more details.
11
//
12
// You should have received a copy of the GNU General Public License
13
// along with this program; if not, write to the Free Software
14
// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
15
//////////////////////////////////////////////////////////////////////
16
 
17
///////////////////////////////////////////////////////////////////              
18
//          
19
//  Original Author: Allen Tao Zhong,
20
//  University of Electronic Science and Technology in China
21
//  email: zhong@opencores.org
22
//  info   This is a SystemC ARM model 
23
//   
24
//
25
///////////////////////////////////////////////////////////////////////////////
26
 
27
/*****************************************************************************
28
 
29
  MODIFICATION LOG - modifiers, enter your name, affiliation, date and
30
  changes you are making here.
31
 
32
      Name, Affiliation, Date:
33
  Description of Modification:
34
 
35
 *****************************************************************************/
36
// scARMSoC.h: interface for the scARMSoC class.
37
//
38
//////////////////////////////////////////////////////////////////////
39
 
40
 
41
#include<systemc.h>
42
#include <sc_mslib.h>
43
#include "scTypes.h"
44
//components
45
#include "scARMCore.h"
46
#include "sc_mem_ch.h"
47
 
48
class scARMSoC:public sc_module
49
{
50
public://ports
51
 
52
        //sc_in<bool_t>        in_b_nRESET;
53
        sc_in<bool>          in_b_Clock;
54
        //link with memory 
55
//      sc_port<sc_mem_ch> mem_ch;
56
        sc_outmaster<bool>        out_b_nRW;
57
        sc_outmaster<uint32_t>     out_n_A;
58
        sc_inoutslave<uint32_t>   inout_n_D;
59
 
60
 //***********************************
61
 //  port unused        
62
 //********************************
63
//      sc_in<bool_t>        in_b_nIRQ;
64
//      sc_in<bool_t>        in_b_nFIQ;
65
 
66
//      sc_in<bool_t>        in_b_nBW;
67
 
68
public:
69
        void entry();
70
 
71
        SC_HAS_PROCESS(scARMSoC);
72
        scARMSoC(sc_module_name name_):sc_module(name_),
73
                m_ARMCore("core")
74
        {
75
 
76
        //      SC_METHOD(entry);
77
        //      sensitive_pos<<in_b_Clock;
78
            m_ARMCore(in_b_Clock,out_b_nRW,out_n_A,inout_n_D);
79
 
80
 
81
 
82
        };
83
 
84
        virtual ~scARMSoC();
85
 
86
private:
87
        scARMCore m_ARMCore;
88
 
89
};

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.