peary::interface::SerialMemoryEndpoint
peary::interface::SerialMemoryEndpoint
Peary Serial Memory Interface.
#include <peary/interfaces/SerialMemory/serialmemory.hpp>
Inherits from peary::interface::AXI4LiteEndpoint, peary::interface::Endpoint< AXI4LiteInterface, size_t, uintptr_t >
Public Functions
| Name | |
|---|---|
| SerialMemoryEndpoint(std::string const & devpath, const utils::memory_map & mem, const size_t reg_addr_write, const size_t reg_value_write, const size_t reg_addr_read, const size_t reg_value_read, const size_t status)Constructor for iface_sermem. | |
| ~SerialMemoryEndpoint() =default | |
| SerialMemoryEndpoint() =delete | |
| virtual pair_t | write_impl(const pair_t & ) overrideWrite data to a register. |
| virtual vector_t | read_impl(const reg_t & , const unsigned int ) overrideRead multiple data from a register. |
Additional inherited members
Public Functions inherited from peary::interface::AXI4LiteEndpoint
| Name | |
|---|---|
| AXI4LiteEndpoint(std::string const & devpath, const utils::memory_map & mem) | |
| ~AXI4LiteEndpoint() |
Protected Functions inherited from peary::interface::AXI4LiteEndpoint
| Name | |
|---|---|
| uintptr_t | read_word(const reg_t & offset) constRead a word from a memory location. |
Public Types inherited from peary::interface::Endpoint< AXI4LiteInterface, size_t, uintptr_t >
| Name | |
|---|---|
| using RegisterType | reg_t |
| using DataType | data_t |
| using std::pair< RegisterType, DataType > | pair_t |
| using std::vector< DataType > | vector_t |
Public Functions inherited from peary::interface::Endpoint< AXI4LiteInterface, size_t, uintptr_t >
| Name | |
|---|---|
| Endpoint(const Endpoint & ) =delete | |
| Endpoint & | operator=(const Endpoint & ) =delete |
| Endpoint(Endpoint && ) =delete | |
| Endpoint & | operator=(Endpoint && ) =delete |
| std::string | info() constReturn human-readable endpoint information. |
| data_t | write(const data_t & value)Write a single data word to a device which does not contain internal registers. |
| vector_t | write(const vector_t & values)Write multiple data words to a device which does not contain internal registers. |
| pair_t | write(const pair_t & regData)Write a single data word to a device containing internal registers. |
| vector_t | write(const reg_t & reg, const vector_t & values)Write multiple data words to a specific register of a device containing internal registers. |
| std::vector< pair_t > | write(const std::vector< pair_t > & regDataVec)Write multiple data words to multiple registers of a device containing internal registers. |
| data_t | read()Read a single data word from a device which does not contain internal registers. |
| vector_t | read(unsigned int count)Read multiple data words from a device which does not contain internal registers. |
| vector_t | read(const reg_t & reg, unsigned int count)Read a single data word from a specific register of a device containing internal registers. |
Protected Functions inherited from peary::interface::Endpoint< AXI4LiteInterface, size_t, uintptr_t >
| Name | |
|---|---|
| Endpoint(const std::string & info) | |
| virtual | ~Endpoint() =default |
Public Functions Documentation
function SerialMemoryEndpoint
explicit SerialMemoryEndpoint(
std::string const & devpath,
const utils::memory_map & mem,
const size_t reg_addr_write,
const size_t reg_value_write,
const size_t reg_addr_read,
const size_t reg_value_read,
const size_t status
)
Constructor for iface_sermem.
Parameters:
- devpath The device path for the Serial Memory interface
- mem The memory map configuration
- reg_addr_write The register address for writing the target address
- reg_value_write The register address for writing the target value
- reg_addr_read The register address for writing the target address for read operations
- reg_value_read The register address for reading the retrieved value
- status The status register address
function ~SerialMemoryEndpoint
~SerialMemoryEndpoint() =default
function SerialMemoryEndpoint
SerialMemoryEndpoint() =delete
function write_impl
virtual pair_t write_impl(
const pair_t &
) override
Write data to a register.
Return: A pair containing the memory address and a placeholder value (always zero)
Reimplements: peary::interface::AXI4LiteEndpoint::write_impl
function read_impl
virtual vector_t read_impl(
const reg_t & ,
const unsigned int
) override
Read multiple data from a register.
Reimplements: peary::interface::AXI4LiteEndpoint::read_impl
Updated on 2026-01-30 at 22:01:05 +0100