pflib v2.7.0-1-gd371ab6a
Polarfire Interaction Library
WishboneInterface.h
1#ifndef PFLIB_WISHBONEINTERFACE_H_
2#define PFLIB_WISHBONEINTERFACE_H_
3
4#include <pflib/Exception.h>
5#include <stdint.h>
6
7namespace pflib {
8
16 public:
17 virtual ~WishboneInterface() = default;
22 virtual void wb_write(int target, uint32_t addr, uint32_t data) = 0;
27 virtual uint32_t wb_read(int target, uint32_t addr) = 0;
31 virtual void wb_reset() = 0;
32
39 virtual void wb_errors(uint32_t& crcup_errors, uint32_t& crcdn_errors, uint32_t& wb_errors) = 0;
40
44 virtual void wb_clear_counters() = 0;
45
46};
47
48}
49
50#endif // PFLIB_WISHBONEINTERFACE_H_
Abstract interface for wishbone transactions, used by ~all classes in pflib.
Definition: WishboneInterface.h:15
virtual void wb_write(int target, uint32_t addr, uint32_t data)=0
write a 32-bit word to the given target and address
virtual uint32_t wb_read(int target, uint32_t addr)=0
read a 32-bit word from the given target and address
virtual void wb_clear_counters()=0
Clear the monitoring counters.
virtual void wb_errors(uint32_t &crcup_errors, uint32_t &crcdn_errors, uint32_t &wb_errors)=0
Read the monitoring counters crcup_errors – CRC errors observed on the uplink (wraps) crcdn_errors – ...
virtual void wb_reset()=0
reset the wishbone bus (on/off cycle)
Polarfire Interaction Library.
Definition: Backend.h:8