Package: lc_ctrl_state_pkg
- File: lc_ctrl_state_pkg.sv
Description
Copyright lowRISC contributors.
Licensed under the Apache License, Version 2.0, see LICENSE for details.
SPDX-License-Identifier: Apache-2.0
Life cycle state encoding definition.
DO NOT EDIT THIS FILE DIRECTLY.
It has been generated with
$ ./util/design/gen-lc-state-enc.py --seed 10167336684108184581
Signals
Name | Type | Description |
---|---|---|
lc_ctrl_state_pkg | endpackage |
Constants
Name | Type | Value | Description |
---|---|---|---|
LcValueWidth | int | 16 | ///////////////////////////// General size declarations // ///////////////////////////// |
NumLcStateValues | int | 20 | |
LcStateWidth | int | NumLcStateValues * LcValueWidth | |
NumLcStates | int | 21 | |
DecLcStateWidth | int | vbits(NumLcStates) | |
NumLcCountValues | int | 24 | |
LcCountWidth | int | NumLcCountValues * LcValueWidth | |
NumLcCountStates | int | 25 | |
DecLcCountWidth | int | vbits(NumLcCountStates) | |
NumLcIdStates | int | 2 | This state is not stored in OTP, but inferred from the locked status of the secret partitions. Hence, only the decoded ID state is declared here for exposure through the CSR interface. |
DecLcIdStateWidth | int | NumLcIdStates+1 | |
A0 | logic [15:0] | 16'b1000011000111000 | ECC: 6'b110000 |
B0 | logic [15:0] | 16'b1110011001111001 | ECC: 6'b111111 |
A1 | logic [15:0] | 16'b1100011000100110 | ECC: 6'b101001 |
B1 | logic [15:0] | 16'b1101111101101110 | ECC: 6'b101011 |
A2 | logic [15:0] | 16'b0010000111101100 | ECC: 6'b110010 |
B2 | logic [15:0] | 16'b0111011111101101 | ECC: 6'b110110 |
A3 | logic [15:0] | 16'b0001100111101000 | ECC: 6'b000100 |
B3 | logic [15:0] | 16'b1101101111101100 | ECC: 6'b001101 |
A4 | logic [15:0] | 16'b1001011001100100 | ECC: 6'b000001 |
B4 | logic [15:0] | 16'b1101111001110100 | ECC: 6'b101101 |
A5 | logic [15:0] | 16'b0001011000010110 | ECC: 6'b111001 |
B5 | logic [15:0] | 16'b1011011001110111 | ECC: 6'b111101 |
A6 | logic [15:0] | 16'b0101001001010010 | ECC: 6'b001111 |
B6 | logic [15:0] | 16'b1101111111110010 | ECC: 6'b001111 |
A7 | logic [15:0] | 16'b0010001001011111 | ECC: 6'b011000 |
B7 | logic [15:0] | 16'b0011101011111111 | ECC: 6'b011101 |
A8 | logic [15:0] | 16'b0000001110111001 | ECC: 6'b001000 |
B8 | logic [15:0] | 16'b1100001110111111 | ECC: 6'b101010 |
A9 | logic [15:0] | 16'b1100100101111000 | ECC: 6'b010010 |
B9 | logic [15:0] | 16'b1111101101111001 | ECC: 6'b011110 |
A10 | logic [15:0] | 16'b0010000110110111 | ECC: 6'b010001 |
B10 | logic [15:0] | 16'b1011010111111111 | ECC: 6'b010101 |
A11 | logic [15:0] | 16'b1011000100000111 | ECC: 6'b011001 |
B11 | logic [15:0] | 16'b1111110110000111 | ECC: 6'b011111 |
A12 | logic [15:0] | 16'b0011100000010000 | ECC: 6'b111001 |
B12 | logic [15:0] | 16'b1111100100110000 | ECC: 6'b111111 |
A13 | logic [15:0] | 16'b0011000010101011 | ECC: 6'b100110 |
B13 | logic [15:0] | 16'b1011010011111011 | ECC: 6'b111110 |
A14 | logic [15:0] | 16'b0011110100100000 | ECC: 6'b011000 |
B14 | logic [15:0] | 16'b0011111101101011 | ECC: 6'b011100 |
A15 | logic [15:0] | 16'b1010101100010010 | ECC: 6'b111000 |
B15 | logic [15:0] | 16'b1111111110011010 | ECC: 6'b111010 |
A16 | logic [15:0] | 16'b0100011010010100 | ECC: 6'b110110 |
B16 | logic [15:0] | 16'b0101111110010111 | ECC: 6'b111110 |
A17 | logic [15:0] | 16'b1011111110000101 | ECC: 6'b000000 |
B17 | logic [15:0] | 16'b1011111111010111 | ECC: 6'b000111 |
A18 | logic [15:0] | 16'b1110010000010111 | ECC: 6'b010100 |
B18 | logic [15:0] | 16'b1111110010111111 | ECC: 6'b010110 |
A19 | logic [15:0] | 16'b0100100101011010 | ECC: 6'b001000 |
B19 | logic [15:0] | 16'b1110100111111111 | ECC: 6'b001101 |
C0 | logic [15:0] | 16'b0000110000011011 | ECC: 6'b110110 |
D0 | logic [15:0] | 16'b0011111000011111 | ECC: 6'b111111 |
C1 | logic [15:0] | 16'b0111001100010100 | ECC: 6'b011001 |
D1 | logic [15:0] | 16'b1111101101110110 | ECC: 6'b111001 |
C2 | logic [15:0] | 16'b0001101110100010 | ECC: 6'b100011 |
D2 | logic [15:0] | 16'b0011111111100011 | ECC: 6'b110111 |
C3 | logic [15:0] | 16'b0000110101000010 | ECC: 6'b111101 |
D3 | logic [15:0] | 16'b1100110111010110 | ECC: 6'b111111 |
C4 | logic [15:0] | 16'b0001111111010001 | ECC: 6'b000010 |
D4 | logic [15:0] | 16'b0001111111111001 | ECC: 6'b101111 |
C5 | logic [15:0] | 16'b0010010000110000 | ECC: 6'b111111 |
D5 | logic [15:0] | 16'b0111011100110101 | ECC: 6'b111111 |
C6 | logic [15:0] | 16'b0010111010001111 | ECC: 6'b001000 |
D6 | logic [15:0] | 16'b1011111010111111 | ECC: 6'b101100 |
C7 | logic [15:0] | 16'b0100010000111101 | ECC: 6'b011010 |
D7 | logic [15:0] | 16'b0101110011111101 | ECC: 6'b111110 |
C8 | logic [15:0] | 16'b1110000000101100 | ECC: 6'b111001 |
D8 | logic [15:0] | 16'b1110010110111101 | ECC: 6'b111101 |
C9 | logic [15:0] | 16'b0010011100101110 | ECC: 6'b010001 |
D9 | logic [15:0] | 16'b1011011110101111 | ECC: 6'b111001 |
C10 | logic [15:0] | 16'b0010110011101110 | ECC: 6'b000100 |
D10 | logic [15:0] | 16'b1010111011111110 | ECC: 6'b110110 |
C11 | logic [15:0] | 16'b1100000100010011 | ECC: 6'b000011 |
D11 | logic [15:0] | 16'b1110000110011011 | ECC: 6'b111011 |
C12 | logic [15:0] | 16'b1000110110101101 | ECC: 6'b000010 |
D12 | logic [15:0] | 16'b1001111110111101 | ECC: 6'b010111 |
C13 | logic [15:0] | 16'b0000011111001011 | ECC: 6'b001010 |
D13 | logic [15:0] | 16'b1001111111001111 | ECC: 6'b111010 |
C14 | logic [15:0] | 16'b1101001001001010 | ECC: 6'b110100 |
D14 | logic [15:0] | 16'b1101001011101111 | ECC: 6'b110111 |
C15 | logic [15:0] | 16'b0001100011110101 | ECC: 6'b100010 |
D15 | logic [15:0] | 16'b0011110011110111 | ECC: 6'b111011 |
C16 | logic [15:0] | 16'b1000001110100011 | ECC: 6'b010110 |
D16 | logic [15:0] | 16'b1100111111101111 | ECC: 6'b010110 |
C17 | logic [15:0] | 16'b0100110101010001 | ECC: 6'b100110 |
D17 | logic [15:0] | 16'b1111110101010011 | ECC: 6'b110111 |
C18 | logic [15:0] | 16'b1010010000101010 | ECC: 6'b100001 |
D18 | logic [15:0] | 16'b1010011111101110 | ECC: 6'b100011 |
C19 | logic [15:0] | 16'b0001111001110000 | ECC: 6'b101010 |
D19 | logic [15:0] | 16'b0111111111110011 | ECC: 6'b101010 |
C20 | logic [15:0] | 16'b0010101001111110 | ECC: 6'b100000 |
D20 | logic [15:0] | 16'b0110101111111110 | ECC: 6'b110101 |
C21 | logic [15:0] | 16'b1001000011110000 | ECC: 6'b000011 |
D21 | logic [15:0] | 16'b1001001011111101 | ECC: 6'b001111 |
C22 | logic [15:0] | 16'b0101101010000001 | ECC: 6'b110110 |
D22 | logic [15:0] | 16'b1111101010010101 | ECC: 6'b111111 |
C23 | logic [15:0] | 16'b1101000100101110 | ECC: 6'b110000 |
D23 | logic [15:0] | 16'b1111100110101110 | ECC: 6'b111110 |
ZRO | logic [15:0] | 16'h0 | |
LcTokenWidth | int | 128 | ///////////////////////////////////////// Hashed RAW unlock and all-zero tokens // ///////////////////////////////////////// |
lc_token_t | lc_token_t | ||
lc_token_t | lc_token_t | ||
lc_token_t | lc_token_t | ||
lc_token_t | lc_token_t |
Types
Name | Type | Description |
---|---|---|
lc_state_e | enum logic [LcStateWidth-1:0] { LcStRaw = { ZRO, ZRO, ZRO, ZRO, ZRO, ZRO, ZRO, ZRO, ZRO, ZRO, ZRO, ZRO, ZRO, ZRO, ZRO, ZRO, ZRO, ZRO, ZRO, ZRO}, LcStTestUnlocked0 = { A19, A18, A17, A16, A15, A14, A13, A12, A11, A10, A9, A8, A7, A6, A5, A4, A3, A2, A1, B0}, LcStTestLocked0 = { A19, A18, A17, A16, A15, A14, A13, A12, A11, A10, A9, A8, A7, A6, A5, A4, A3, A2, B1, B0}, LcStTestUnlocked1 = { A19, A18, A17, A16, A15, A14, A13, A12, A11, A10, A9, A8, A7, A6, A5, A4, A3, B2, B1, B0}, LcStTestLocked1 = { A19, A18, A17, A16, A15, A14, A13, A12, A11, A10, A9, A8, A7, A6, A5, A4, B3, B2, B1, B0}, LcStTestUnlocked2 = { A19, A18, A17, A16, A15, A14, A13, A12, A11, A10, A9, A8, A7, A6, A5, B4, B3, B2, B1, B0}, LcStTestLocked2 = { A19, A18, A17, A16, A15, A14, A13, A12, A11, A10, A9, A8, A7, A6, B5, B4, B3, B2, B1, B0}, LcStTestUnlocked3 = { A19, A18, A17, A16, A15, A14, A13, A12, A11, A10, A9, A8, A7, B6, B5, B4, B3, B2, B1, B0}, LcStTestLocked3 = { A19, A18, A17, A16, A15, A14, A13, A12, A11, A10, A9, A8, B7, B6, B5, B4, B3, B2, B1, B0}, LcStTestUnlocked4 = { A19, A18, A17, A16, A15, A14, A13, A12, A11, A10, A9, B8, B7, B6, B5, B4, B3, B2, B1, B0}, LcStTestLocked4 = { A19, A18, A17, A16, A15, A14, A13, A12, A11, A10, B9, B8, B7, B6, B5, B4, B3, B2, B1, B0}, LcStTestUnlocked5 = { A19, A18, A17, A16, A15, A14, A13, A12, A11, B10, B9, B8, B7, B6, B5, B4, B3, |