![]() |
aiengine
Xilinx SDK Drivers API Documentation
|
Header file for core control and wait functions.
MODIFICATION HISTORY:
Ver Who Date Changes
1.0 Naresh 04/06/2018 Initial creation 1.1 Naresh 05/07/2018 Fixed CR#1000933 1.2 Naresh 07/11/2018 Updated copyright info and addressed CR#1006573 1.3 Naresh 08/13/2018 Updated prototype for wait done API and also added prototype for core read status done API 1.4 Nishad 12/05/2018 Renamed ME attributes to AIE
void | XAieTile_CoreControl (XAieGbl_Tile *TileInstPtr, u8 Enable, u8 Reset) |
This API writes to the Core_control register to enable and/or reset the AIE core of the selected tile. More... | |
u8 | XAieTile_CoreWaitStatus (XAieGbl_Tile *TileInstPtr, u32 TimeOut, u32 Status) |
This API implements a blocking wait function to check for the core status to be disabled or done. More... | |
u8 | XAieTile_CoreWaitCycles (XAieGbl_Tile *TileInstPtr, u32 CycleCnt) |
This API implements a blocking wait function until the specified clock cyles are elapsed in the Core module 64-bit counter. More... | |
u8 | XAieTile_CoreReadStatusDone (XAieGbl_Tile *TileInstPtr) |
This API returns the current value of the Core status done bit. More... | |
u64 | XAieTile_CoreReadTimer (XAieGbl_Tile *TileInstPtr) |
This API returns the current value of the Core module 64-bit timer. More... | |
void XAieTile_CoreControl | ( | XAieGbl_Tile * | TileInstPtr, |
u8 | Enable, | ||
u8 | Reset | ||
) |
This API writes to the Core_control register to enable and/or reset the AIE core of the selected tile.
This API bluntly writes to the register and any gracefullness required in enabling/disabling and/or resetting/unresetting the core are required to be handled by the application layer.
TileInstPtr | - Pointer to the Tile instance. |
Enable | - Enable/Disable the core (1-Enable,0-Disable). |
Reset | - Reset/Unreset the core (1-Reset,0-Unreset). |
References XAieGbl_RegCoreCtrl::CtrlEn, XAieGbl_RegCoreCtrl::CtrlRst, XAieGbl_RegFldAttr::Lsb, XAieGbl_RegFldAttr::Mask, XAieGbl_RegCoreCtrl::RegOff, and XAieGbl_Tile::TileAddr.
Referenced by main().
u8 XAieTile_CoreReadStatusDone | ( | XAieGbl_Tile * | TileInstPtr | ) |
This API returns the current value of the Core status done bit.
TileInstPtr | - Pointer to the Tile instance. |
References XAieGbl_RegCoreSts::Done, XAieGbl_RegFldAttr::Lsb, XAieGbl_RegFldAttr::Mask, XAieGbl_RegCoreSts::RegOff, and XAieGbl_Tile::TileAddr.
u64 XAieTile_CoreReadTimer | ( | XAieGbl_Tile * | TileInstPtr | ) |
This API returns the current value of the Core module 64-bit timer.
TileInstPtr | - Pointer to the Tile instance. |
References XAieGbl_RegTimer::HighOff, XAieGbl_RegTimer::LowOff, and XAieGbl_Tile::TileAddr.
u8 XAieTile_CoreWaitCycles | ( | XAieGbl_Tile * | TileInstPtr, |
u32 | CycleCnt | ||
) |
This API implements a blocking wait function until the specified clock cyles are elapsed in the Core module 64-bit counter.
TileInstPtr | - Pointer to the Tile instance. |
CycleCnt | - No. of timer clock cycles to elapse. |
References XAieGbl_RegTimer::HighOff, XAieGbl_RegTimer::LowOff, and XAieGbl_Tile::TileAddr.
Referenced by main().
u8 XAieTile_CoreWaitStatus | ( | XAieGbl_Tile * | TileInstPtr, |
u32 | TimeOut, | ||
u32 | Status | ||
) |
This API implements a blocking wait function to check for the core status to be disabled or done.
API comes out of the wait loop when core status changes to done/disable or the timeout elapses, whichever happens first.
TileInstPtr | - Pointer to the Tile instance. |
TimeOut | - TimeOut in usecs. If set to 0, the default timeout will be set to 500 usecs. |
Status | - 1 for Core_done and 0 for Disable Use macros XAIETILE_CORE_STATUS_DONE/XAIETILE_CORE_STATUS_DISABLE |
References XAieGbl_RegCoreSts::Done, XAieGbl_RegCoreSts::En, XAieGbl_RegFldAttr::Lsb, XAieGbl_RegFldAttr::Mask, XAieGbl_RegCoreSts::RegOff, and XAieGbl_Tile::TileAddr.