I want to extend OCM with BRAM to simplify my boot process (which will eventually be authenticated - fewer partitions, fewer things to keep track of when hardening the system).
I'd like to boot to OCM, configure the PL, and then use the BRAMs in the PL as part of the instruction space. How do I jump execution from one portion of memory to the other? I would guess just load the instruction pointer with the new offset, but how do I do that keeping security in mind?
axi slave sit on a specific address range within the 32bit range of the arm processor(s). So as you say just execute a jump instruction to the mmaped address of the bram, nothing more. Make sure that the bram slave is marked as cacheable, otherwise the performance will be pitiful. I am not sure what kind of security you want. BRAMs are embedded within the chip and volatile so they would be quite difficult to read. If you have physical security of the chip then BRAMs are no less secure than OCM.
- Please mark the Answer as "Accept as solution" if information provided is helpful. Give Kudos to a post which you think is helpful and reply oriented.