- Adds 6 bits each for an identifier for timebase and control clock - Update all mako templates accordingly Original-commit: 58c0276ff1ceaf825d7cbffbab5016ddef9a5cd9
57 lines
2.7 KiB
Systemverilog
57 lines
2.7 KiB
Systemverilog
//
|
|
// Copyright 2019 Ettus Research, A National Instruments Company
|
|
//
|
|
// SPDX-License-Identifier: LGPL-3.0-or-later
|
|
//
|
|
|
|
// Each block has a backed interface that is 512 bits wide. This bus
|
|
// is split into 16 32-bit registers to it is preferable to have fields
|
|
// aligned at 32-bit boundaries
|
|
|
|
// Backend Config
|
|
localparam BEC_FLUSH_TIMEOUT_OFFSET = 0;
|
|
localparam BEC_FLUSH_TIMEOUT_WIDTH = 32;
|
|
localparam BEC_FLUSH_EN_OFFSET = BEC_FLUSH_TIMEOUT_OFFSET + BEC_FLUSH_TIMEOUT_WIDTH;
|
|
localparam BEC_FLUSH_EN_WIDTH = 1;
|
|
localparam BEC_SOFT_CTRL_RST_OFFSET = BEC_FLUSH_EN_OFFSET + BEC_FLUSH_EN_WIDTH;
|
|
localparam BEC_SOFT_CTRL_RST_WIDTH = 1;
|
|
localparam BEC_SOFT_CHDR_RST_OFFSET = BEC_SOFT_CTRL_RST_OFFSET + BEC_SOFT_CTRL_RST_WIDTH;
|
|
localparam BEC_SOFT_CHDR_RST_WIDTH = 1;
|
|
localparam BEC_TOTAL_WIDTH = BEC_SOFT_CHDR_RST_OFFSET + BEC_SOFT_CHDR_RST_WIDTH;
|
|
|
|
localparam [511:0] BEC_DEFAULT_VAL = {
|
|
{(512-BEC_TOTAL_WIDTH){1'b0}},
|
|
1'b1, // BEC_SOFT_CHDR_RST
|
|
1'b1, // BEC_SOFT_CTRL_RST
|
|
1'b0, // BEC_FLUSH_EN
|
|
32'd0 // BEC_FLUSH_TIMEOUT
|
|
};
|
|
|
|
// Backend Status
|
|
localparam BES_PROTO_VER_OFFSET = 0;
|
|
localparam BES_PROTO_VER_WIDTH = 6;
|
|
localparam BES_NUM_DATA_I_OFFSET = BES_PROTO_VER_OFFSET + BES_PROTO_VER_WIDTH;
|
|
localparam BES_NUM_DATA_I_WIDTH = 6;
|
|
localparam BES_NUM_DATA_O_OFFSET = BES_NUM_DATA_I_OFFSET + BES_NUM_DATA_I_WIDTH;
|
|
localparam BES_NUM_DATA_O_WIDTH = 6;
|
|
localparam BES_CTRL_FIFOSIZE_OFFSET = BES_NUM_DATA_O_OFFSET + BES_NUM_DATA_O_WIDTH;
|
|
localparam BES_CTRL_FIFOSIZE_WIDTH = 6;
|
|
localparam BES_CTRL_MAX_ASYNC_MSGS_OFFSET = BES_CTRL_FIFOSIZE_OFFSET + BES_CTRL_FIFOSIZE_WIDTH;
|
|
localparam BES_CTRL_MAX_ASYNC_MSGS_WIDTH = 8;
|
|
localparam BES_NOC_ID_OFFSET = BES_CTRL_MAX_ASYNC_MSGS_OFFSET + BES_CTRL_MAX_ASYNC_MSGS_WIDTH;
|
|
localparam BES_NOC_ID_WIDTH = 32;
|
|
localparam BES_FLUSH_ACTIVE_OFFSET = BES_NOC_ID_OFFSET + BES_NOC_ID_WIDTH;
|
|
localparam BES_FLUSH_ACTIVE_WIDTH = 1;
|
|
localparam BES_FLUSH_DONE_OFFSET = BES_FLUSH_ACTIVE_OFFSET + BES_FLUSH_ACTIVE_WIDTH;
|
|
localparam BES_FLUSH_DONE_WIDTH = 1;
|
|
localparam BES_DATA_MTU_OFFSET = BES_FLUSH_DONE_OFFSET + BES_FLUSH_DONE_WIDTH;
|
|
localparam BES_DATA_MTU_WIDTH = 6;
|
|
localparam BES_CTRL_CLK_IDX_OFFSET = BES_DATA_MTU_OFFSET + BES_DATA_MTU_WIDTH;
|
|
localparam BES_CTRL_CLK_IDX_WIDTH = 6;
|
|
localparam BES_TB_CLK_IDX_OFFSET = BES_CTRL_CLK_IDX_OFFSET + BES_CTRL_CLK_IDX_WIDTH;
|
|
localparam BES_TB_CLK_IDX_WIDTH = 6;
|
|
localparam BES_TOTAL_WIDTH = BES_TB_CLK_IDX_OFFSET + BES_TB_CLK_IDX_WIDTH;
|
|
|
|
// Protocol version for this definition
|
|
localparam [5:0] BACKEND_PROTO_VER = 6'd1;
|