smc_misc_wrap

Wrap SMC miscellaneous register targets on the misc AXI-Lite map.

Demultiplexes the misc map onto cold scratch registers, cold-and-warm scratch registers, the chip_config registers (version ID, chip ID and lifecycle state) and the NDM reset registers. Addresses outside those windows reach an error slave that returns DECERR with read data 0xBADCAB1E.

Parameters

Table 1. Parameters
NameTypeDefaultDescription
CHIP_IDint unsigned0Chip identifier reported by the chip_config CHIP_ID register.
LC_STATE_WIDTHint unsigned8Width of lc_state_i, which the chip_config LC_STATE register reports.

Ports

Table 2. Ports
NameDirectionTypeDescription
clk_iinputlogicSMC core clock.
rst_niinputlogicPrimary reset, active-low, synchronized to the SMC core clock; resets the demux, the cold scratch registers, chip_config, and the NDM reset registers.
rst_warm_niinputlogicWarm reset, active-low, synchronized to the SMC core clock; resets the cold-and-warm scratch registers.
test_en_iinputlogicScan test mode enable, forwarded to the test input of the AXI-Lite demux.
reg_axi_lite_req_iinputsmc_pkg::smc_axil_32_32_req_tRequest from the peripheral crossbar for the misc map.
reg_axi_lite_resp_ooutputsmc_pkg::smc_axil_32_32_resp_tResponse to the peripheral crossbar.
lc_state_iinputlogic [LC_STATE_WIDTH-1:0]Lifecycle state, reported through the chip_config LC_STATE register.
ndmreset_request_iinputlogic [smc_config_pkg::CpuClusterCount-1:0]NDM reset request per CPU cluster, synchronized to the SMC core clock and readable in the NDMRESET_REQUEST register.
ndmreset_process_ooutputlogic [smc_config_pkg::CpuClusterCount-1:0]Firmware response to each cluster's NDM reset request, from the NDMRESET_PROCESS register.