Package: lc_ctrl_pkg
- File: lc_ctrl_pkg.sv
Description
Copyright lowRISC contributors.
Licensed under the Apache License, Version 2.0, see LICENSE for details.
SPDX-License-Identifier: Apache-2.0
Constants
Name | Type | Value | Description |
---|---|---|---|
NumTokens | int | 6 | ///////////////////////////////////// Netlist Constants (Hashed Tokens) // ///////////////////////////////////// |
TokenIdxWidth | int | vbits(NumTokens) | |
TxWidth | int | 4 | ////////////////////////////// Typedefs for LC Interfaces // ////////////////////////////// |
lc_tx_t | lc_tx_t | undefined | |
RmaSeedWidth | int | 32 | |
LcKeymgrDivWidth | int | 128 | |
FsmStateWidth | int | 16 | ////////////////// Main FSM State // ////////////////// Encoding generated with: $ ./util/design/sparse-fsm-encode.py -d 5 -m 15 -n 16 \ -s 2934212379 --language=sv Hamming distance histogram: 0: -- 1: -- 2: -- 3: -- 4: -- 5: |
NumLcStates | token_idx_e [NumLcStates-1:0][NumLcStates-1:0] | lc_ctrl_pkg |
Types
Name | Type | Description |
---|---|---|
token_idx_e | enum logic [TokenIdxWidth-1:0] { ZeroTokenIdx = 3'h0, RawUnlockTokenIdx = 3'h1, TestUnlockTokenIdx = 3'h2, TestExitTokenIdx = 3'h3, RmaTokenIdx = 3'h4, InvalidTokenIdx = 3'h5 } |
|
lc_tx_e | enum logic [TxWidth-1:0] { On = 4'b1010, Off = 4'b0101 } |
|
lc_tx_t | logic [TxWidth-1:0] | |
lc_flash_rma_seed_t | logic [RmaSeedWidth-1:0] | |
lc_keymgr_div_t | logic [LcKeymgrDivWidth-1:0] | |
fsm_state_e | enum logic [FsmStateWidth-1:0] { ResetSt = 16'b1100000001111011, IdleSt = 16'b1111011010111100, ClkMuxSt = 16'b0000011110101101, CntIncrSt = 16'b1100111011001001, CntProgSt = 16'b0011001111000111, TransCheckSt = 16'b0000110001010100, TokenHashSt = 16'b0110111010110000, FlashRmaSt = 16'b1110100010001111, TokenCheck0St = 16'b0010000011000000, TokenCheck1St = 16'b1101010101101111, TransProgSt = 16'b1000000110101011, PostTransSt = 16'b0110110100101100, ScrapSt = 16'b1010100001010001, EscalateSt = 16'b1011110110011011, InvalidSt = 16'b0011000101001100 } |