SPRUHM8K December 2013 – May 2024 TMS320F28374D , TMS320F28375D , TMS320F28376D , TMS320F28377D , TMS320F28377D-EP , TMS320F28377D-Q1 , TMS320F28378D , TMS320F28379D , TMS320F28379D-Q1
RAM blocks that are accessible from both the CPU and their respective DMA are called global shared RAMs (GSx RAMs). Each shared RAM can be owned by either CPU subsystem based on the configuration of their respective bits (one bit for each GSx memory) in the GSxMSEL register. When a particular GSx RAM block is owned by the CPU1 subsystem, CPU1 and CPU1.DMA have full access to that RAM block, whereas CPU2 and CPU2.DMA have only read access (no fetch/write access). Similarly, when a particular GSx RAM block is owned by the CPU2 subsystem, CPU1 and CPU1.DMA has only read access (no fetch/write access) to that RAM block, whereas CPU2 and CPU2.DMA has full access.
Table 3-12 shows the features of the GSx RAM.
GSxMSEL | CPU1 | CPU1 | CPU1 | CPU1.DMA | CPU1.DMA | CPU2 | CPU2 | CPU2 | CPU2.DMA | CPU2.DMA |
---|---|---|---|---|---|---|---|---|---|---|
Fetch | Read | Write | Read | Write | Fetch | Read | Write | Read | Write | |
0 | Yes | Yes | Yes | Yes | Yes | No | Yes | No | Yes | No |
1 | No | Yes | No | Yes | No | Yes | Yes | Yes | Yes | Yes |
Like other shared RAM, these RAMs also have a different levels of access protection which can be enabled or disabled by configuring specific bits in the GSxACCPROT registersmapped in each subsystem.
Master select and access protection configuration for each GSx RAM block can be individually locked by the user to prevent further update to these bit fields. The user can also choose to permanently lock the configuration to individual bit fields by setting the specific bit fields in the GSxCOMMIT register (refer to the register description for more details). Once configuration is committed for a particular GSx RAM block, the configuration cannot be changed further until CPUx.SYSRS is issued. Only the CPU1 software can change the master select configuration by writing into the GSxMSEL register, mapped on the CPU1. The GSxMSEL register, which is mapped to the CPU2 subsystem, is a status register that can only be used by CPU2 software to know the master ownership for each GSx RAM block.