annotate modules/bluespec/Pygar/lab4/ProcessorSystemRRR.h @ 40:7ac38b0f93fa pygar svn.41

[svn r41] made perl build script automatically generate program.vmh
author rlm
date Tue, 04 May 2010 19:53:09 -0400
parents 74716e9a81cc
children
rev   line source
rlm@8 1
rlm@8 2 #ifndef _PROCESSORSYSTEMRRR_
rlm@8 3 #define _PROCESSORSYSTEMRRR_
rlm@8 4
rlm@8 5 #include <stdio.h>
rlm@8 6 #include <sys/time.h>
rlm@8 7
rlm@8 8 #include "asim/provides/low_level_platform_interface.h"
rlm@8 9 #include "asim/provides/funcp_simulated_memory.h"
rlm@8 10 #include "asim/provides/rrr.h"
rlm@8 11
rlm@8 12
rlm@8 13
rlm@8 14 typedef class PROCESSORSYSTEMRRR_SERVER_CLASS* PROCESSORSYSTEMRRR_SERVER;
rlm@8 15 class PROCESSORSYSTEMRRR_SERVER_CLASS: public RRR_SERVER_CLASS, public PLATFORMS_MODULE_CLASS
rlm@8 16 {
rlm@8 17 private:
rlm@8 18 // self-instantiation
rlm@8 19 static PROCESSORSYSTEMRRR_SERVER_CLASS instance;
rlm@8 20 FUNCP_SIMULATED_MEMORY_CLASS *memory;
rlm@8 21
rlm@8 22
rlm@8 23 // server stub
rlm@8 24 RRR_SERVER_STUB serverStub;
rlm@8 25
rlm@8 26 int count;
rlm@8 27
rlm@8 28 public:
rlm@8 29 PROCESSORSYSTEMRRR_SERVER_CLASS();
rlm@8 30 ~PROCESSORSYSTEMRRR_SERVER_CLASS();
rlm@8 31
rlm@8 32 // static methods
rlm@8 33 static PROCESSORSYSTEMRRR_SERVER GetInstance() { return &instance; }
rlm@8 34
rlm@8 35 // required RRR methods
rlm@8 36 void Init(PLATFORMS_MODULE);
rlm@8 37 void Uninit();
rlm@8 38 void Cleanup();
rlm@8 39
rlm@8 40 //
rlm@8 41 // RRR service methods
rlm@8 42 //
rlm@8 43
rlm@8 44 UINT32 MemoryRequestLoad (UINT32 address);
rlm@8 45 void MemoryRequestStore (UINT32 address, UINT32 data);
rlm@8 46 };
rlm@8 47
rlm@8 48
rlm@8 49
rlm@8 50 // include server stub
rlm@8 51 #include "asim/rrr/server_stub_PROCESSORSYSTEMRRR.h"
rlm@8 52
rlm@8 53 #endif