UFS uses a layered architecture, consisting of a UFS host/device controller layer, a transport layer (UniPro), and a physical layer (MIPI M-PHY). The host interface layer is the interface between the host (e.g., a smartphone) and the UFS storage device. UFS is also divided by host and device, with the host handling the data transfer from the application processor to the device as storage IC and the device managing the flash memory chips and other hardware components. A command queue system manages data transfers between the host and the device. This approach allows the device to handle multiple read and write requests simultaneously, improving performance.
UFS uses advanced power management techniques to reduce power consumption. For example, the memory type supports a feature called "power gating," which allows unused components to be turned off to save power.
For security reasons, UFS needs to encrypt/decrypt the payload. The UFS device prohibits writing into its locations when configured as write protected but there are no such restrictions for read. To address this concern, the UFS controller encrypts the data during the write and decrypts the data during the read. Several encryption algorithms are supported: AES-XTS, Bit locker-AES-CBC, AES-ECB, and ESSIV-AES-CBC, with different AES key sizes – 128, 192, and 256 bits. The higher the key size, the higher the security level.