Constants used throughout the codebase. Some of these constants need to be kept in sync with the hardware.
More...
#include <cstdint>
#include <string>
Go to the source code of this file.
|
enum class | MmioNotifType : uint64_t { kWrite = 0
, kRead = 1
, kTranslAddr = 2
} |
|
Constants used throughout the codebase. Some of these constants need to be kept in sync with the hardware.
- Author
- Hugo Sadok sadok.nosp@m.@cmu.nosp@m..edu
Definition in file consts.h.
◆ ENSO_PIPE_SIZE
#define ENSO_PIPE_SIZE 32768 |
◆ MAX_NB_APPS
◆ MAX_NB_FLOWS
#define MAX_NB_FLOWS 8192 |
◆ NOTIFICATION_BUF_SIZE
#define NOTIFICATION_BUF_SIZE 16384 |
◆ MmioNotifType
enum class enso::MmioNotifType : uint64_t |
|
strong |
◆ kAlignedDscBufPairSize
constexpr uint32_t enso::kAlignedDscBufPairSize |
|
constexpr |
Initial value:=
((kNotificationBufSize * 64 * 2 - 1) / kBufPageSize + 1) * kBufPageSize
Sizes aligned to the huge page size, but if both buffers fit in a single page, we may put them in the same page.
Definition at line 103 of file consts.h.
◆ kBatchSize
constexpr uint32_t enso::kBatchSize = 64 |
|
constexpr |
◆ kBufPageSize
constexpr uint32_t enso::kBufPageSize = 1UL << 21 |
|
constexpr |
◆ kCacheLineSize
constexpr uint32_t enso::kCacheLineSize = 64 |
|
constexpr |
◆ kEnsoPipeSize
constexpr uint32_t enso::kEnsoPipeSize = ENSO_PIPE_SIZE |
|
constexpr |
◆ kMaxHardwareFlitRate
constexpr uint32_t enso::kMaxHardwareFlitRate = 200e6 |
|
constexpr |
Maximum number of flits (64 byte chunks) that the hardware can send per second.
This is simply the clock frequency of the rate_limiter
module.
Definition at line 125 of file consts.h.
◆ kMaxNbApps
constexpr uint32_t enso::kMaxNbApps = MAX_NB_APPS |
|
constexpr |
◆ kMaxNbFlows
constexpr uint32_t enso::kMaxNbFlows = MAX_NB_FLOWS |
|
constexpr |
◆ kMaxPendingTxRequests
constexpr uint32_t enso::kMaxPendingTxRequests = kNotificationBufSize - 1 |
|
constexpr |
◆ kMaxTransferLen
constexpr uint32_t enso::kMaxTransferLen = 131072 |
|
constexpr |
◆ kMemorySpacePerQueue
constexpr uint32_t enso::kMemorySpacePerQueue = 1 << 12 |
|
constexpr |
◆ kNotificationBufSize
constexpr uint32_t enso::kNotificationBufSize = NOTIFICATION_BUF_SIZE |
|
constexpr |
◆ kNsPerTimestampCycle
constexpr uint32_t enso::kNsPerTimestampCycle = 5 |
|
constexpr |
The clock period of the timestamp module in nanoseconds.
This assumes that the FPGA clk_datamover
runs at 200MHz. If we change this clock, we must also change this value.
Definition at line 112 of file consts.h.
◆ kPacketRttOffset
constexpr uint32_t enso::kPacketRttOffset = 18 |
|
constexpr |
Offset of the RTT when timestamp is enabled (in bytes).
Definition at line 117 of file consts.h.