smc_subsystem_resets

Fan SMC reset-unit controls out to per-subsystem resets.

Drives one reset_ctrl_t per subsystem, 32 in all, from the SS_* reset-unit registers. Implements the external SS_CONFIG and SS_COLD_RESET_N registers with per-bit write locks and reports the synchronized SS_RESET_COMPLETE inputs.

Ports

Table 1. Ports
NameDirectionTypeDescription
clk_iinputlogicSMC core clock.
rst_primary_niinputlogicPrimary reset, active-low, synchronized to clk_i: the stable cold, cool-pin and FLR cool resets combined. Clears SS_CONFIG and SS_COLD_RESET_N, which holds every subsystem cold reset asserted.
hwif_out_iinputreset_unit_reg_pkg::reset_unit__out_tReset-unit register outputs: the SS_* register values and the SS_CONFIG and SS_COLD_RESET_N access strobes.
hwif_in_ooutputreset_unit_reg_pkg::reset_unit__in_tReset-unit register inputs for SS_RESET_COMPLETE, SS_CONFIG and SS_COLD_RESET_N; every other field is zero.
ss_reset_complete_iinputlogic [31:0]Reset-complete indication from each subsystem, one bit per subsystem; synchronized to clk_i and reported in the SS_RESET_COMPLETE register.
ss_config_ooutputlogic [31:0]Per-subsystem configuration bits from the SS_CONFIG register, lockable per bit through SS_CONFIG_LOCK; cleared by the primary reset.
ss_reset_ctrl_ooutputsmc_reset_unit_pkg::reset_ctrl_tPer-subsystem reset controls from the SS_COLD_RESET_N, SS_WARM_RESET_N, hold, and SS_FORCE_TO_REF_CLK registers; SS_COLD_RESET_N bits are write-locked by SS_COLD_RESET_LOCK.