CYW20704
4.5 One-Time Programmable Memory
The CYW20704 includes a One-Time Programmable (OTP) memory, allowing manufacturing customization and avoiding the need
for an on-board NVRAM.If customization is not required, then the OTP does not need to be programmed. Whether the OTP is pro-
grammed or not, it is disabled after the boot process completes to save power.
The OTP size is 2048 bytes.
The OTP is designed to store a minimal amount of information. Aside from OTP data, most user configuration information will be
downloaded into RAM after the CYW20704 boots up and is ready for host transport communication. The OTP contents are limited
to:
■ Parameters required prior to downloading user configuration to RAM.
■ Parameters unique to each part and each customer (i.e., the BD_ADDR, software license key, and USB PID/VID).
The OTP memory is particularly useful in a PC design with USB transport capability because:
■ Some customer-specific information must be configured before enumerating the part on the USB transport.
■ Partorcustomeruniqueinformation(BD_ADDR, softwarelicensekey, andUSBPID/VID)donotneed tobestoredonthehostsystem.
4.5.1 Contents
The following are typical parameters programmed into the OTP memory:
■ BD_ADDR
■ Software license key
■ USB PID/VID
■ USB bus/self-powered status
■ Output power calibration
■ Frequency trimming
■ Initial status LED drive configuration
The OTP contents also include a static error correction table to improve yield during the programming process as well as forward
error correction codes to eliminate any long-term reliability problems. The OTP contents associated with error correction are not vis-
ible by customers.
4.5.2 Programming
OTP memory programming takes place through a combination of Cypress software integrated with the manufacturing test software
and code embedded in CYW20704 firmware.
Document Number: 002-14786 Rev. *E
Page 14 of 49