MLIR-AIE
|
#include "aie/Targets/AIERT.h"
Public Member Functions | |
AIERTControl (const xilinx::AIE::BaseNPUTargetModel &tm) | |
mlir::LogicalResult | setIOBackend (bool aieSim, bool xaieDebug) |
mlir::LogicalResult | configureBdInBlock (XAie_DmaDesc &dmaTileBd, mlir::Block &block, XAie_LocType &tileLoc, int bdId, std::optional< int > nextBdId) |
mlir::LogicalResult | pushToBdQueueAndEnable (mlir::Operation &op, XAie_LocType &tileLoc, int chNum, const DMAChannelDir &channelDir, int bdId, int repeatCount) |
mlir::LogicalResult | configureLocksAndBd (mlir::Block &block, XAie_LocType tileLoc) |
mlir::LogicalResult | initLocks (DeviceOp &targetOp) |
mlir::LogicalResult | initBuffers (DeviceOp &targetOp) |
mlir::LogicalResult | configureSwitches (DeviceOp &targetOp) |
mlir::LogicalResult | addInitConfig (DeviceOp &targetOp) |
mlir::LogicalResult | addCoreEnable (DeviceOp &targetOp) |
mlir::LogicalResult | configureLocksInBdBlock (XAie_DmaDesc &dmaTileBd, mlir::Block &block, XAie_LocType &tileLoc) |
mlir::LogicalResult | addAieElf (uint8_t col, uint8_t row, const mlir::StringRef elfPath, bool aieSim) |
mlir::LogicalResult | addAieElfs (DeviceOp &targetOp, const mlir::StringRef workDirPath, bool aieSim) |
void | startTransaction () |
void | dmaUpdateBdAddr (int col, int row, size_t addr, size_t bdId) |
void | exportSerializedTransaction () |
Public Attributes | |
XAie_Config | configPtr |
XAie_DevInst | devInst |
const BaseNPUTargetModel & | targetModel |
xilinx::AIE::AIERTControl::AIERTControl | ( | const xilinx::AIE::BaseNPUTargetModel & | tm | ) |
Definition at line 57 of file AIERT.cpp.
References xilinx::AIE2, xilinx::AIE::AIETargetModel::columns(), configPtr, devInst, xilinx::AIE::AIE2TargetModel::getColumnShift(), xilinx::AIE::BaseNPUTargetModel::getNumMemTileRows(), xilinx::AIE::AIE2TargetModel::getRowShift(), xilinx::AIE::AIE2TargetModel::getTargetArch(), xilinx::AIE::AIETargetModel::hasProperty(), xilinx::AIE::AIETargetModel::IsVirtualized, NPI_ADDR, xilinx::AIE::BaseNPUTargetModel::rows(), TRY_XAIE_API_FATAL_ERROR, XAIE_BASE_ADDR, XAIE_MEM_TILE_ROW_START, XAIE_PARTITION_BASE_ADDR, and XAIE_SHIM_ROW.
LogicalResult xilinx::AIE::AIERTControl::addAieElf | ( | uint8_t | col, |
uint8_t | row, | ||
const mlir::StringRef | elfPath, | ||
bool | aieSim | ||
) |
Definition at line 665 of file AIERT.cpp.
References xilinx::AIE::col, devInst, xilinx::AIE::row, and TRY_XAIE_API_LOGICAL_RESULT.
Referenced by addAieElfs().
LogicalResult xilinx::AIE::AIERTControl::addAieElfs | ( | DeviceOp & | targetOp, |
const mlir::StringRef | workDirPath, | ||
bool | aieSim | ||
) |
Definition at line 685 of file AIERT.cpp.
References addAieElf(), xilinx::AIE::col, and xilinx::AIE::row.
LogicalResult xilinx::AIE::AIERTControl::addCoreEnable | ( | DeviceOp & | targetOp | ) |
Definition at line 655 of file AIERT.cpp.
References devInst, and TRY_XAIE_API_EMIT_ERROR.
LogicalResult xilinx::AIE::AIERTControl::addInitConfig | ( | DeviceOp & | targetOp | ) |
Definition at line 582 of file AIERT.cpp.
References xilinx::AIE::col, configureLocksAndBd(), configureSwitches(), xilinx::AIE::getOrderedChainOfBlocks(), initBuffers(), initLocks(), pushToBdQueueAndEnable(), and xilinx::AIE::row.
LogicalResult xilinx::AIE::AIERTControl::configureBdInBlock | ( | XAie_DmaDesc & | dmaTileBd, |
mlir::Block & | block, | ||
XAie_LocType & | tileLoc, | ||
int | bdId, | ||
std::optional< int > | nextBdId | ||
) |
Definition at line 177 of file AIERT.cpp.
References devInst, xilinx::AIE::AIETargetModel::getMemLocalBaseAddress(), xilinx::AIE::getShimBurstLengthBytes(), xilinx::AIE::BaseNPUTargetModel::isMemTile(), xilinx::AIE::AIETargetModel::isShimNOCTile(), targetModel, and TRY_XAIE_API_EMIT_ERROR.
Referenced by configureLocksAndBd().
LogicalResult xilinx::AIE::AIERTControl::configureLocksAndBd | ( | mlir::Block & | block, |
XAie_LocType | tileLoc | ||
) |
Definition at line 358 of file AIERT.cpp.
References configureBdInBlock(), configureLocksInBdBlock(), devInst, and TRY_XAIE_API_EMIT_ERROR.
Referenced by addInitConfig().
LogicalResult xilinx::AIE::AIERTControl::configureLocksInBdBlock | ( | XAie_DmaDesc & | dmaTileBd, |
mlir::Block & | block, | ||
XAie_LocType & | tileLoc | ||
) |
Definition at line 124 of file AIERT.cpp.
References xilinx::AIE::AIETargetModel::getLockLocalBaseIndex(), xilinx::AIE::BaseNPUTargetModel::isMemTile(), targetModel, and TRY_XAIE_API_EMIT_ERROR.
Referenced by configureLocksAndBd().
LogicalResult xilinx::AIE::AIERTControl::configureSwitches | ( | DeviceOp & | targetOp | ) |
Definition at line 457 of file AIERT.cpp.
References xilinx::AIE::col, devInst, xilinx::AIE::AIETargetModel::hasProperty(), xilinx::AIE::AIETargetModel::IsNPU, xilinx::AIE::row, targetModel, and TRY_XAIE_API_EMIT_ERROR.
Referenced by addInitConfig().
void xilinx::AIE::AIERTControl::dmaUpdateBdAddr | ( | int | col, |
int | row, | ||
size_t | addr, | ||
size_t | bdId | ||
) |
Definition at line 712 of file AIERT.cpp.
References xilinx::AIE::col, devInst, xilinx::AIE::row, and TRY_XAIE_API_FATAL_ERROR.
Referenced by aieRtDmaUpdateBdAddr().
void xilinx::AIE::AIERTControl::exportSerializedTransaction | ( | ) |
Definition at line 722 of file AIERT.cpp.
References devInst.
Referenced by aieRtExportSerializedTransaction().
LogicalResult xilinx::AIE::AIERTControl::initBuffers | ( | DeviceOp & | targetOp | ) |
Definition at line 405 of file AIERT.cpp.
References devInst, and TRY_XAIE_API_FATAL_ERROR.
Referenced by addInitConfig().
LogicalResult xilinx::AIE::AIERTControl::initLocks | ( | DeviceOp & | targetOp | ) |
Definition at line 376 of file AIERT.cpp.
References devInst, NUM_LOCKS, TRY_XAIE_API_EMIT_ERROR, and TRY_XAIE_API_FATAL_ERROR.
Referenced by addInitConfig().
LogicalResult xilinx::AIE::AIERTControl::pushToBdQueueAndEnable | ( | mlir::Operation & | op, |
XAie_LocType & | tileLoc, | ||
int | chNum, | ||
const DMAChannelDir & | channelDir, | ||
int | bdId, | ||
int | repeatCount | ||
) |
Definition at line 342 of file AIERT.cpp.
References devInst, and TRY_XAIE_API_EMIT_ERROR.
Referenced by addInitConfig().
LogicalResult xilinx::AIE::AIERTControl::setIOBackend | ( | bool | aieSim, |
bool | xaieDebug | ||
) |
Definition at line 109 of file AIERT.cpp.
References devInst, and TRY_XAIE_API_FATAL_ERROR.
void xilinx::AIE::AIERTControl::startTransaction | ( | ) |
Definition at line 717 of file AIERT.cpp.
References devInst, and TRY_XAIE_API_FATAL_ERROR.
Referenced by aieRtStartTransaction().
XAie_Config xilinx::AIE::AIERTControl::configPtr |
Definition at line 188 of file AIERT.h.
Referenced by AIERTControl().
XAie_DevInst xilinx::AIE::AIERTControl::devInst |
Definition at line 189 of file AIERT.h.
Referenced by addAieElf(), addCoreEnable(), AIERTControl(), configureBdInBlock(), configureLocksAndBd(), configureSwitches(), dmaUpdateBdAddr(), exportSerializedTransaction(), initBuffers(), initLocks(), pushToBdQueueAndEnable(), setIOBackend(), and startTransaction().
const BaseNPUTargetModel& xilinx::AIE::AIERTControl::targetModel |
Definition at line 190 of file AIERT.h.
Referenced by configureBdInBlock(), configureLocksInBdBlock(), and configureSwitches().