|Non-Confidential||PDF version||ARM 100052_0001_00_en|
|Home > Programmers Model > Programming the CCN-502 > Boot-time programming requirements|
Describes the programming initialization requirements to support coherent transactions and DVMOps. If the network contains only a single SN-F, or if the network contains only three SN-Fs, then it also describes the requirement to program the hnf_sam_control register.
The CCN-502 is configured to support device-type accesses immediately out of reset, so no additional programming is required before beginning device-type system-level communication. However, to send coherent transactions or Distributed Virtual Memory (DVM) operations, the system programmer must ensure that the appropriate RNs are entered into the required snoop and DVM domains.
Many of the CCN-502 configuration and status registers have constraints about when and how you can program them. You must respect these constraints to prevent unpredictable behavior.
The CCN-502 supports either one, two, three, or four SN-Fs, that is, memory. If CCN-502 is configured at build time to include three memory controllers, all versions of the hnf_sam_control register in all HN-Fs must be programmed as described in 3 SN-F memory striping. If CCN-502 is configured at build time to include two or four memory controllers, no programming of the hnf_sam_control registers is required to use those two or four memory controllers.
To use a different collection of memory controllers than was specified at build time, all versions of the hnf_sam_control register across all HN-Fs must be programmed as described in 2.12.4 HN-F SAM.
SN-F configuration must be completed before the first request by the system to normal memory.