NSUKit 1.4.0
板卡级统一交互接口
载入中...
搜索中...
未找到
nsukit::PCIECmdUItf类 参考

#include <pcie_interface.h>

类 nsukit::PCIECmdUItf 继承关系图:
nsukit::I_BaseCmdUItf nsukit::U_Interface

Public 成员函数

 PCIECmdUItf ()
 
 ~PCIECmdUItf () override
 
nsukitStatus_t accept (nsuInitParam_t *param) override
 
nsukitStatus_t close () override
 
nsukitStatus_t set_timeout (float s) override
 
nsukitStatus_t write (nsuRegAddr_t addr, nsuRegValue_t value) override
 
nsukitStatus_t read (nsuRegAddr_t addr, nsuRegValue_t *buf) override
 
nsukitStatus_t send_bytes (nsuBytes_t &bytes) override
 
nsukitStatus_t send_bytes (nsuCharBuf_p bytes, nsuSize_t length) override
 
nsukitStatus_t recv_bytes (nsuSize_t size, nsuCharBuf_p buf) override
 
- Public 成员函数 继承自 nsukit::I_BaseCmdUItf
virtual nsukitStatus_t send_bytes (nsuBytes_t &bytes)
 
virtual nsukitStatus_t send_bytes (nsuCharBuf_p bytes, nsuSize_t length)
 
virtual nsukitStatus_t recv_bytes (nsuSize_t size, nsuCharBuf_p buf)
 
virtual nsukitStatus_t write (nsuRegAddr_t addr, nsuRegValue_t value)
 
virtual nsukitStatus_t read (nsuRegAddr_t addr, nsuRegValue_t *buf)
 
nsukitStatus_t multi_write (std::vector< nsuRegAddr_t > &addr, std::vector< nsuRegValue_t > &value)
 
nsukitStatus_t multi_read (std::vector< nsuRegAddr_t > &addr, std::vector< nsuRegValue_t * > &value)
 
nsukitStatus_t increment_write (nsuRegAddr_t addr, nsuVoidBuf_p value, nsuSize_t length, nsuSize_t reg_len=NSU_REG_BWIDTH)
 
nsukitStatus_t increment_read (nsuRegAddr_t addr, nsuSize_t length, nsuVoidBuf_p value, nsuSize_t reg_len=NSU_REG_BWIDTH)
 
nsukitStatus_t loop_write (nsuRegAddr_t addr, nsuVoidBuf_p value, nsuSize_t length, nsuSize_t reg_len=NSU_REG_BWIDTH)
 
nsukitStatus_t loop_read (nsuRegAddr_t addr, nsuSize_t length, nsuVoidBuf_p value, nsuSize_t reg_len=NSU_REG_BWIDTH)
 
- Public 成员函数 继承自 nsukit::U_Interface
virtual ~U_Interface ()=default
 
virtual nsukitStatus_t accept (nsuInitParam_t *param)
 
virtual nsukitStatus_t close ()
 
virtual nsukitStatus_t set_timeout (float s)
 

Protected 成员函数

nsukitStatus_t reset_irq ()
 
nsukitStatus_t per_recv ()
 

Protected 属性

nsuBoardNum_t pciBoard = 0
 
nsuRegAddr_t sentBase = 0
 
nsuRegAddr_t recvBase = 0
 
nsuRegAddr_t irqBase = 0
 
nsuRegAddr_t sentDownBase = 0
 
int pciTimeout = 0
 
double onceTimeout = 0
 
std::mutex OpLock {}
 

静态 Protected 属性

static unsigned int irqNum = 15
 

额外继承的成员函数

- Public 属性 继承自 nsukit::I_BaseCmdUItf
U_BaseCmdMixinmixin_ = nullptr
 

详细描述

在文件 pcie_interface.h35 行定义.

构造及析构函数说明

◆ PCIECmdUItf()

nsukit::PCIECmdUItf::PCIECmdUItf ( )
inline
注解
将基类 nsukit::I_BaseCmdUItf 的成员变量mixin_赋值为 nsukit::Mixin_NativeRegCmd 的实例

在文件 pcie_interface.h65 行定义.

◆ ~PCIECmdUItf()

nsukit::PCIECmdUItf::~PCIECmdUItf ( )
inlineoverride

在文件 pcie_interface.h67 行定义.

成员函数说明

◆ accept()

nsukitStatus_t PCIECmdUItf::accept ( nsuInitParam_t param)
overridevirtual
参数
board板卡号
sent_baseICDOverAXI发送基地址
recv_baseICDOverAXI接收基地址
返回
是否连接成功

重载 nsukit::U_Interface .

在文件 pcie_interface.cpp50 行定义.

◆ close()

nsukitStatus_t PCIECmdUItf::close ( )
overridevirtual
返回

重载 nsukit::U_Interface .

在文件 pcie_interface.cpp61 行定义.

◆ per_recv()

nsukitStatus_t PCIECmdUItf::per_recv ( )
protected

ICD over AXI方式的读取反馈前的预处理,等待对端发送反馈

返回

在文件 pcie_interface.cpp132 行定义.

◆ read()

nsukitStatus_t PCIECmdUItf::read ( nsuRegAddr_t  addr,
nsuRegValue_t buf 
)
overridevirtual
参数
addr
buf
返回

重载 nsukit::I_BaseCmdUItf .

在文件 pcie_interface.cpp115 行定义.

◆ recv_bytes()

nsukitStatus_t PCIECmdUItf::recv_bytes ( nsuSize_t  size,
nsuCharBuf_p  buf 
)
overridevirtual
参数
size
buf
返回

重载 nsukit::I_BaseCmdUItf .

在文件 pcie_interface.cpp98 行定义.

◆ reset_irq()

nsukitStatus_t PCIECmdUItf::reset_irq ( )
protected

复位ICD over AXI的接收中断

返回

在文件 pcie_interface.cpp125 行定义.

◆ send_bytes() [1/2]

nsukitStatus_t PCIECmdUItf::send_bytes ( nsuBytes_t bytes)
overridevirtual
参数
bytes
返回

重载 nsukit::I_BaseCmdUItf .

在文件 pcie_interface.cpp72 行定义.

◆ send_bytes() [2/2]

nsukitStatus_t PCIECmdUItf::send_bytes ( nsuCharBuf_p  bytes,
nsuSize_t  length 
)
overridevirtual
参数
bytes
返回

重载 nsukit::I_BaseCmdUItf .

在文件 pcie_interface.cpp77 行定义.

◆ set_timeout()

nsukitStatus_t PCIECmdUItf::set_timeout ( float  s)
overridevirtual
参数
s
返回

重载 nsukit::U_Interface .

在文件 pcie_interface.cpp66 行定义.

◆ write()

nsukitStatus_t PCIECmdUItf::write ( nsuRegAddr_t  addr,
nsuRegValue_t  value 
)
overridevirtual
参数
addr
value
返回

重载 nsukit::I_BaseCmdUItf .

在文件 pcie_interface.cpp109 行定义.

类成员变量说明

◆ irqBase

nsuRegAddr_t nsukit::PCIECmdUItf::irqBase = 0
protected

在文件 pcie_interface.h42 行定义.

◆ irqNum

unsigned int PCIECmdUItf::irqNum = 15
staticprotected

在文件 pcie_interface.h37 行定义.

◆ onceTimeout

double nsukit::PCIECmdUItf::onceTimeout = 0
protected

在文件 pcie_interface.h46 行定义.

◆ OpLock

std::mutex nsukit::PCIECmdUItf::OpLock {}
protected

在文件 pcie_interface.h47 行定义.

◆ pciBoard

nsuBoardNum_t nsukit::PCIECmdUItf::pciBoard = 0
protected

在文件 pcie_interface.h39 行定义.

◆ pciTimeout

int nsukit::PCIECmdUItf::pciTimeout = 0
protected

在文件 pcie_interface.h44 行定义.

◆ recvBase

nsuRegAddr_t nsukit::PCIECmdUItf::recvBase = 0
protected

在文件 pcie_interface.h41 行定义.

◆ sentBase

nsuRegAddr_t nsukit::PCIECmdUItf::sentBase = 0
protected

在文件 pcie_interface.h40 行定义.

◆ sentDownBase

nsuRegAddr_t nsukit::PCIECmdUItf::sentDownBase = 0
protected

在文件 pcie_interface.h43 行定义.


该类的文档由以下文件生成: