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

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [orpsocv2/] [bench/] [sysc/] [src/] [OrpsocAccess.cpp] - Diff between revs 51 and 63

Go to most recent revision | Show entire file | Details | Blame | View Log

Rev 51 Rev 63
Line 39... Line 39...
#include "Vorpsoc_top_or1200_sprs.h"
#include "Vorpsoc_top_or1200_sprs.h"
#include "Vorpsoc_top_or1200_rf.h"
#include "Vorpsoc_top_or1200_rf.h"
#include "Vorpsoc_top_or1200_dpram.h"
#include "Vorpsoc_top_or1200_dpram.h"
//#include "Vorpsoc_top_ram_wb.h"
//#include "Vorpsoc_top_ram_wb.h"
//#include "Vorpsoc_top_ram_wb_sc_sw.h"
//#include "Vorpsoc_top_ram_wb_sc_sw.h"
#include "Vorpsoc_top_ram_wb__D20_A18_M800000.h"
#include "Vorpsoc_top_ram_wb__D20_A19_M800000.h"
#include "Vorpsoc_top_ram_wb_sc_sw__D20_A18_M800000.h"
#include "Vorpsoc_top_ram_wb_sc_sw__D20_A19_M800000.h"
 
#include "Vorpsoc_top_wb_conbus_top__pi1.h"
 
 
//! Constructor for the ORPSoC access class
//! Constructor for the ORPSoC access class
 
 
//! Initializes the pointers to the various module instances of interest
//! Initializes the pointers to the various module instances of interest
//! within the Verilator model.
//! within the Verilator model.
 
 
//! @param[in] orpsoc  The SystemC Verilated ORPSoC instance
//! @param[in] orpsoc  The SystemC Verilated ORPSoC instance
 
 
OrpsocAccess::OrpsocAccess (Vorpsoc_top *orpsoc_top)
OrpsocAccess::OrpsocAccess (Vorpsoc_top *orpsoc_top)
{
{
 
  // Assign processor accessor objects
  or1200_ctrl = orpsoc_top->v->i_or1k->i_or1200_top->or1200_cpu->or1200_ctrl;
  or1200_ctrl = orpsoc_top->v->i_or1k->i_or1200_top->or1200_cpu->or1200_ctrl;
  or1200_except = orpsoc_top->v->i_or1k->i_or1200_top->or1200_cpu->or1200_except;
  or1200_except = orpsoc_top->v->i_or1k->i_or1200_top->or1200_cpu->or1200_except;
  or1200_sprs = orpsoc_top->v->i_or1k->i_or1200_top->or1200_cpu->or1200_sprs;
  or1200_sprs = orpsoc_top->v->i_or1k->i_or1200_top->or1200_cpu->or1200_sprs;
  rf_a        = orpsoc_top->v->i_or1k->i_or1200_top->or1200_cpu->or1200_rf->rf_a;
  rf_a        = orpsoc_top->v->i_or1k->i_or1200_top->or1200_cpu->or1200_rf->rf_a;
 
  // Assign main memory accessor objects
  ram_wb_sc_sw = orpsoc_top->v->ram_wb0->ram0;
  ram_wb_sc_sw = orpsoc_top->v->ram_wb0->ram0;
 
  // Assign arbiter accessor object
 
  wb_arbiter = orpsoc_top->v->wb_conbus;
 
 
}       // OrpsocAccess ()
}       // OrpsocAccess ()
 
 
//! Access for the ex_freeze signal
//! Access for the ex_freeze signal
 
 
Line 272... Line 277...
  return  (or1200_sprs->get_esr) ();
  return  (or1200_sprs->get_esr) ();
 
 
}       // getSprEsr ()
}       // getSprEsr ()
 
 
 
 
 No newline at end of file
 No newline at end of file
 
//! Access for the arbiter's grant signal
 
 
 
//! @return  The value of the wb_conmax_top.arb signal
 
 
 
uint8_t
 
OrpsocAccess::getWbArbGrant ()
 
{
 
  return  (wb_arbiter->get_gnt) ();
 
 
 
}       // getWbArbGrant ()
 
 
 
 
 
//! Arbiter master[mast_num] access functions
 
 
 
//! Access for the arbiter's master[mast_num] data in signal
 
 
 
//! @return  The value of the wb_conmax_top.m_dat_i[mast_num]
 
 
 
uint32_t
 
OrpsocAccess::getWbArbMastDatI (uint32_t mast_num)
 
{
 
  return  (wb_arbiter->get_m_dat_i) (mast_num);
 
 
 
}       // getWbArbMastDatI ()
 
 
 
//! Access for the arbiter's master[mast_num] data out signal
 
 
 
//! @return  The value of the wb_conmax_top.m_dat_o[mast_num]
 
 
 
uint32_t
 
OrpsocAccess::getWbArbMastDatO (uint32_t mast_num)
 
{
 
  return  (wb_arbiter->get_m_dat_o) (mast_num);
 
 
 
}       // getWbArbMastDatO ()
 
 
 
//! Access for the arbiter's master[mast_num] data out
 
 
 
//! @return  The value of the wb_conmax_top.m_adr_i[mast_num]
 
 
 
uint32_t
 
OrpsocAccess::getWbArbMastAdrI (uint32_t mast_num)
 
{
 
  return  (wb_arbiter->get_m_adr_i) (mast_num);
 
 
 
}       // getWbArbMastAdrI ()
 
 
 
 
 
//! Access for the arbiter's master[mast_num] select signal
 
 
 
//! @return  The value of the wb_conmax_top.m_sel_i[mast_num]
 
 
 
uint8_t
 
OrpsocAccess::getWbArbMastSelI (uint32_t mast_num)
 
{
 
  return  (wb_arbiter->get_m_sel_i) (mast_num);
 
 
 
}       // getWbArbMastSelI ()
 
 
 
//! Access for the arbiter's master[mast_num] decoded slave select signal
 
 
 
//! @return  The value of the wb_conmax_top.m_ssel_dec[mast_num]
 
 
 
uint8_t
 
OrpsocAccess::getWbArbMastSlaveSelDecoded (uint32_t mast_num)
 
{
 
  return  (wb_arbiter->get_m_ssel_dec) (mast_num);
 
 
 
}       // getWbArbMastSlaveSelDecoded ()
 
 
 
//! Access for the arbiter's master[mast_num] write enable signal
 
 
 
//! @return  The value of the wb_conmax_top.m_we_i[mast_num]
 
 
 
bool
 
OrpsocAccess::getWbArbMastWeI (uint32_t mast_num)
 
{
 
  return  (wb_arbiter->get_m_we_i) (mast_num);
 
 
 
}       // getWbArbMastWeI ()
 
 
 
//! Access for the arbiter's master[mast_num] cycle input signal
 
 
 
//! @return  The value of the wb_conmax_top.m_cyc_i[mast_num]
 
 
 
bool
 
OrpsocAccess::getWbArbMastCycI (uint32_t mast_num)
 
{
 
  return  (wb_arbiter->get_m_cyc_i) (mast_num);
 
 
 
}       // getWbArbMastCycI ()
 
 
 
//! Access for the arbiter's master[mast_num] strobe input signal
 
 
 
//! @return  The value of the wb_conmax_top.m_stb_i[mast_num]
 
 
 
bool
 
OrpsocAccess::getWbArbMastStbI (uint32_t mast_num)
 
{
 
  return  (wb_arbiter->get_m_stb_i) (mast_num);
 
 
 
}       // getWbArbMastStbI ()
 
 
 
//! Access for the arbiter's master[mast_num] ACK output signal
 
 
 
//! @return  The value of the wb_conmax_top.m_ack_o[mast_num]
 
 
 
bool
 
OrpsocAccess::getWbArbMastAckO (uint32_t mast_num)
 
{
 
  return  (wb_arbiter->get_m_ack_o) (mast_num);
 
 
 
}       // getWbArbMastAckO ()
 
 
 
//! Access for the arbiter's master[mast_num] error input signal
 
 
 
//! @return  The value of the wb_conmax_top.m_err_o[mast_num]
 
 
 
bool
 
OrpsocAccess::getWbArbMastErrO (uint32_t mast_num)
 
{
 
  return  (wb_arbiter->get_m_err_o) (mast_num);
 
 
 
}       // getWbArbMastErrO ()
 
 
 
 
 No newline at end of file
 No newline at end of file

powered by: WebSVN 2.1.0

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