The data processor units (MAC Unit, Arithmetic Logic Unit, shifter, etc) have a very high throughput of data, and need very high speed memory. The L1 (level 1) Data Cache provides this directly on-chip with the processor. It is the fastest but also the smallest, and typically stores frequently-accessed data.
Data Cache Controller
The Data Cache Controller serves simply to operate the Data Cache.
Data Address Unit
The Data Address Unit serves simply to calculate addresses within the Data Cache.