Entity: keccak_round_fpv
- File: keccak_round_fpv.sv
Diagram
Description
Copyright lowRISC contributors. Licensed under the Apache License, Version 2.0, see LICENSE for details. SPDX-License-Identifier: Apache-2.0
Testbench module for keccak_f. Intended to be used with a formal tool.
Generics
| Generic name | Type | Value | Description |
|---|---|---|---|
| Width | int | 1600 |
Ports
| Port name | Direction | Type | Description |
|---|---|---|---|
| clk_i | input | ||
| rst_ni | input | ||
| valid_i | input | ||
| rand_valid_i | input | ||
| rand_i | input | [Width-1:0] | |
| done_o | output |
Signals
| Name | Type | Description |
|---|---|---|
| masked_state | logic [Width-1:0] | |
| masked_state_d | logic [Width-1:0] | |
| unmasked_state | logic [Width-1:0] | |
| unmasked_state_d | logic [Width-1:0] | |
| msg_valid | logic | Data input |
| msg_addr | logic [DInAddr-1:0] | |
| msg_data | logic [DInWidth-1:0] | |
| msg_ready_masked | logic | |
| msg_ready_unmasked | logic | |
| run | logic | |
| clear | logic | |
| masked_complete | logic | |
| unmasked_complete | logic | |
| compare_states | logic [Width-1:0] | |
| data_0 | logic [1599:0] | Test with value 0 |
| in_progress | logic | |
| st | st_e | |
| st_d | st_e | |
| digest_0 | logic [255:0] |
Constants
| Name | Type | Value | Description |
|---|---|---|---|
| W | int | Width/25 | |
| L | int | $clog2(W) | |
| NumRound | int | 12 + 2*L | Keccak-f only |
| RndW | int | $clog2(NumRound+1) | |
| DInWidth | int | 64 | currently only 64bit supported |
| DInEntry | int | Width / DInWidth | |
| DInAddr | int | $clog2(DInEntry) |
Types
| Name | Type | Description |
|---|---|---|
| st_e | enum logic [2:0] { StIdle, StMsg, StRun, StComplete } |
Processes
- unnamed: ( )
Type: always_comb
- unnamed: ( @(posedge clk_i or negedge rst_ni) )
Type: always_ff
Description
Data input : SHA3-256
- 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
Instantiations
- u_masked: keccak_round
Description
Masked Keccak round
- u_unmasked: keccak_round