Configuration - 1.0 English

Versal ACAP CIPS Verification IP (DS996)

Document ID
DS996
Release Date
2022-11-16
Version
1.0 English
APIs Inputs Outputs
set_routing_config

This API is used to provide the routing information inside the Versal ACAP CIPS VIP. It also prints the entire routing information configured.

For example: versal_cips_0.inst.pspmc_0.inst.PS9_VIP_inst.inst.set_routing_config("R5_API","OCM",1)

  • Above API call enables the routing from R5_API to OCM versal_cips_0.inst.pspmc_0.inst.PS9_VIP_inst.inst.set_routing_config("R5_API","OCM",0)
  • Above API call disables the routing from R5_API to OCM

If two masters are trying to access the same slave, then traffic should be handled sequentially.

For example:

R5_API and A72_API are trying to access OCM.
  // Enable routing from R5_API to OCM
   - versal_cips_0.inst.pspmc_0.inst.PS9_VIP_inst.inst.set_routing_config("R5_API","OCM",1)
  // initiate the traffic from R5_API
   …….
// Disable the routing from R5_API to OCM
versal_cips_0.inst.pspmc_0.inst.PS9_VIP_inst.inst.set_routing_config("R5_API","OCM",0)
// Enable routing from A72_API to OCM
   - versal_cips_0.inst.pspmc_0.inst.PS9_VIP_inst.inst.set_routing_config("A72_API","OCM",1)
  // initiate the traffic from A72_API
   ……
[8191:0] source_port_name:

Incoming ports of Versal ACAP CIPS VIP

Supported Source Port Names:

  • S_AXI_FPD
  • S_AXI_GP2
  • S_AXI_LPD
  • NOC_FPD_CCI_0
  • NOC_FPD_CCI_1
  • NOC_FPD_AXI_0
  • NOC_FPD_AXI_1
  • S_ACP_FPD
  • S_ACE_FPD
  • NOC_PMC_AXI_0
  • NOCPSPCIAXI0
  • A72_API
  • NOC_API
  • R5_API
  • CPMPSAXI0
  • CPMPSAXI1

[8191:0] destination_port_name:

Outgoing ports from the PS CIPS VIP

Supported Destination Port Names:

  • FPD_CCI_NOC
  • M_AXI_FPD
  • M_AXI_LPD
  • FPD_AXI_NOC_0
  • FPD_AXI_NOC_1
  • PSNOCPCIAXI0
  • PSNOCPCIAXI1
  • PMC_NOC_AXI_0
  • NOC_LPD_AXI_0
  • PSCPMPCIEAXI
  • OCM
  • REG
  • PSCPMCFG

routing_en:

  • 1: Enables routing for the specified path
  • 0: Disables routing for the specified path
None
get_routing_config

This API call is used to print the configured routing information.

For example: versal_cips_0.inst.pspmc_0.inst.PS9_VIP_inst.inst.get_routing_config();

None None
cfg_slverr_address_range

This API call sets an address range for which SLVERR response is expected.

This API can be called multiple times for multiple such address ranges. It also prints all the configured SLVERR address ranges.

For example: versal_cips_0.inst.pspmc_0.inst.PS9_VIP_inst.inst.cfg_slverr_address_range('hFFFC_0204,'hFFFC_0204,1);

[63:0] slverr_start_address

[63:0] slverr_end_address

set_slv_error

  • 0: SLVERR for the programmed range is disabled
  • 1: SLVERR for the programmed range is enabled
None