blob: ff95e9b8fe8c637d9f00e734bbede48052e40a23 [file] [log] [blame]
CAPI=2:
# Copyright lowRISC contributors.
# Licensed under the Apache License, Version 2.0, see LICENSE for details.
# SPDX-License-Identifier: Apache-2.0
name: "lowrisc:ip:kmac:0.1"
description: "Keccak Message Authentication Code (KMAC) and SHA3"
filesets:
files_rtl:
depend:
- lowrisc:prim:all
- lowrisc:prim:prim_dom_and_2share
- lowrisc:prim:arbiter
- lowrisc:prim:double_lfsr
- lowrisc:prim:assert
- lowrisc:prim:count
- lowrisc:prim:sparse_fsm
- lowrisc:prim:mubi
- lowrisc:ip:tlul
- lowrisc:ip:keymgr_pkg
- lowrisc:ip:sha3
- lowrisc:ip:edn_pkg
- lowrisc:prim:edn_req
- lowrisc:ip:kmac_pkg
- lowrisc:ip:lc_ctrl_pkg
- lowrisc:prim:lc_sync
files:
- rtl/kmac_reg_pkg.sv
- rtl/kmac_reg_top.sv
- rtl/kmac_core.sv
- rtl/kmac_msgfifo.sv
- rtl/kmac_staterd.sv
- rtl/kmac_app.sv
- rtl/kmac_entropy.sv
- rtl/kmac_errchk.sv
- rtl/kmac.sv
file_type: systemVerilogSource
files_verilator_waiver:
depend:
# common waivers
- lowrisc:lint:common
- lowrisc:lint:comportable
files:
- lint/kmac.vlt
file_type: vlt
files_ascentlint_waiver:
depend:
# common waivers
- lowrisc:lint:common
- lowrisc:lint:comportable
files:
- lint/kmac.waiver
file_type: waiver
files_veriblelint_waiver:
depend:
# common waivers
- lowrisc:lint:common
- lowrisc:lint:comportable
parameters:
SYNTHESIS:
datatype: bool
paramtype: vlogdefine
targets:
default: &default_target
filesets:
- tool_verilator ? (files_verilator_waiver)
- tool_ascentlint ? (files_ascentlint_waiver)
- tool_veriblelint ? (files_veriblelint_waiver)
- files_rtl
toplevel: kmac
formal:
filesets:
- files_rtl
toplevel: kmac
lint:
<<: *default_target
default_tool: verilator
parameters:
- SYNTHESIS=true
tools:
verilator:
mode: lint-only
verilator_options:
- "-Wall"
syn:
<<: *default_target
# TODO: set default to DC once
# this option is available
# olofk/edalize#89
default_tool: icarus
parameters:
- SYNTHESIS=true