Entity: otbn_scramble_ctrl
- File: otbn_scramble_ctrl.sv
Diagram
Description
Copyright lowRISC contributors. Licensed under the Apache License, Version 2.0, see LICENSE for details. SPDX-License-Identifier: Apache-2.0 *
Generics
Generic name | Type | Value | Description |
---|---|---|---|
otp_ctrl_pkg | otp_ctrl_pkg::otbn_key_t | otbn_pkg::RndCnstOtbnKeyDefault | Default seed and nonce for scrambling |
otp_ctrl_pkg | otp_ctrl_pkg::otbn_nonce_t | otbn_pkg::RndCnstOtbnNonceDefault |
Ports
Port name | Direction | Type | Description |
---|---|---|---|
clk_i | input | OTBN clock | |
rst_ni | input | ||
clk_otp_i | input | OTP Clock (for key interface) | |
rst_otp_ni | input | ||
otbn_otp_key_o | output | OTP key interface | |
otbn_otp_key_i | input | ||
otbn_dmem_scramble_key_o | output | ||
otbn_dmem_scramble_nonce_o | output | otbn_dmem_nonce_t | |
otbn_dmem_scramble_valid_o | output | ||
otbn_dmem_scramble_key_seed_valid_o | output | ||
otbn_imem_scramble_key_o | output | ||
otbn_imem_scramble_nonce_o | output | otbn_imem_nonce_t | |
otbn_imem_scramble_valid_o | output | ||
otbn_imem_scramble_key_seed_valid_o | output | ||
otbn_dmem_scramble_new_req_i | input | ||
otbn_imem_scramble_new_req_i | input |
Signals
Name | Type | Description |
---|---|---|
state_q | scramble_ctrl_state_t | |
state_d | scramble_ctrl_state_t | |
dmem_key_valid_q | logic | |
dmem_key_valid_d | logic | |
imem_key_valid_q | logic | |
imem_key_valid_d | logic | |
dmem_key_seed_valid_q | logic | |
dmem_key_seed_valid_d | logic | |
imem_key_seed_valid_q | logic | |
imem_key_seed_valid_d | logic | |
dmem_scramble_req_pending_q | logic | |
dmem_scramble_req_pending_d | logic | |
imem_scramble_req_pending_q | logic | |
imem_scramble_req_pending_d | logic | |
dmem_key_nonce_en | logic | |
imem_key_nonce_en | logic | |
dmem_key_q | otp_ctrl_pkg::otbn_key_t | |
imem_key_q | otp_ctrl_pkg::otbn_key_t | |
dmem_nonce_q | otbn_dmem_nonce_t | |
imem_nonce_q | otbn_imem_nonce_t | |
otp_key_req | logic | |
otp_key_ack | logic | |
otp_key | otp_ctrl_pkg::otbn_key_t | |
otp_nonce | otp_ctrl_pkg::otbn_nonce_t | |
otp_key_seed_valid | logic | |
clk_i | prim_sync_reqack_data | |
rst_ni | prim_sync_reqack_data | |
clk_otp_i | prim_sync_reqack_data | |
rst_otp_ni | prim_sync_reqack_data | |
req_chk_i | prim_sync_reqack_data | |
otp_key_req | prim_sync_reqack_data | |
otp_key_ack | prim_sync_reqack_data | |
req | prim_sync_reqack_data | |
ack | prim_sync_reqack_data | |
key | prim_sync_reqack_data | |
otbn_otp_key_i | prim_sync_reqack_data | |
otbn_otp_key_i | prim_sync_reqack_data | |
otp_key | prim_sync_reqack_data | |
otp_nonce | prim_sync_reqack_data | |
otp_key_seed_valid | prim_sync_reqack_data |
Types
Name | Type | Description |
---|---|---|
scramble_ctrl_state_t | enum logic [1:0] { ScrambleCtrlIdle, ScrambleCtrlDmemReq, ScrambleCtrlImemReq } |
Processes
- unnamed: ( @(posedge clk_i or negedge rst_ni) )
Type: always_ff
- unnamed: ( @(posedge clk_i or negedge rst_ni) )
Type: always_ff
- unnamed: ( @(posedge clk_i or negedge rst_ni) )
Type: always_ff
- unnamed: ( )
Type: always_comb