onsemi FD512x Ax Digital Controller User Manual

September 18, 2024
onsemi

FD512x Ax Digital Controller

“`html

Specifications

  • Product Name: FD512x Digital Controller
  • Model Number: UM70108/D
  • Manufacturer: www.onsemi.com
  • Publication Order Number: UM70108/D
  • Release Date: July, 2024

Product Information

The FD512x Digital Controller is a programmable device designed
for machine vendors to configure their equipment at the factory. It
offers extensive configuration options to meet customer
applications and system requirements. The controller features
emulated multi-time programmable one-time program (OTP) sections
for storing custom configurations.

Product Usage Instructions

Configuration File Format

When using the software GUI to optimize a design, a
configuration file (.cfg format) is generated. The file includes
system and device-specific information. The file contains header
lines with GUI and system data, followed by details for each device
to be configured.

Writing Data into the RAM

  1. Determine the I2C bus slave address of the digital
    controller.

  2. Read and parse the rail, register address, and data fields from
    the configuration file.

  3. Use the custom protocol specified in the guide to write data to
    the registers of the controller.

Burning Data into OTP Section

The configuration data stored in registers can be saved into the
OTP section of the controller for permanent storage.

Reading CRC from Device

  1. Write data 0xAA to address 0xDD using the write byte
    protocol.

  2. Wait for 500 ms for the download process to complete.

  3. Read data from address 0xDD using the read protocol to obtain
    the CRC value.

  4. Read data from address 0xEE using the read word protocol to
    retrieve the CRC value.

CRC Calculation

The CRC for FD512x configuration is calculated using a specific
method mentioned in the provided Python code.

FAQ (Frequently Asked Questions)

Q: What is the purpose of the OTP sections in the FD512x

controller?

A: The OTP sections allow for storing custom configurations
permanently in the controller.

Q: How should I determine the slave address on the I2C bus of

the digital controller?

A: The slave address can be determined based on the specific
setup of your equipment and communication protocol
requirements.

Q: What is the significance of CRC in FD512x digital

controllers?

A: CRC (Cyclic Redundancy Check) is used for data error checking
to ensure data integrity during communication and storage
processes.

“`

USER MANUAL www.onsemi.com

FD512x Configuration Programming Guide

UM70108/D
Description This document is intended for programming machine
vendors that use their own equipment at the factory to configure FD512x digital controller.
This controller can be extensively configured to meet the needs of customer applications and system requirements. This controller contains emulated multi- time programmable one-time program (OTP) sections, which allows the storage of custom configurations.
This configuration programming guide describes how to implement and load the data from the configuration file into the controller and burn into the OTP section.
Content
· Configuration File Format · Writing Data from the Configuration File into the RAM
of the Controller
· Burn the Data from the RAM into the OTP Section · Reading CRC (Cyclic Redundancy Check) from
the Device
· CRC Calculation · Communication Protocol used for Programming · Multi- Section of OTP Memory · Package Dimension · Connections for Configuration Programming · Part Number Identification
Configuration File Format When using the software GUI to optimize a design,
a configuration file (also known as a system file) is generated in a .cfg format. The .cfg file format contains both system and device specific information.
A .cfg file contains header lines which include the GUI information and system information, followed by device information. The system information will tell how many device will be shown in the config file. The device information includes rail information and the information for the controller to be reprogrammed. An example of a partial .cfg file is shown in Figure 1.
The information after the line “Config Start” contains the serial address and the part number of the controller being programmed followed by device specific data. This data consist of the rail, register address (hex format) and data (hex format). The information for reprogram will end before “Config End.”

GUI Information //Version 1.1 //Cloud Power GUI GUI Information System Information U0 – 0xa0 – ( FD512x Ax ) System Information End Device Start : U0 – 0xa0 – ( FD512x Ax ) Rail Start // GUI_CHECKSUM – 0x2510 Rail End Config Start: U0 – 0xa0 – ( FD512x Ax ) N/A 0000 000104B0 N/A 0001 00C80640 N/A 0002 00311901 N/A 0003 00000003 N/A 0004 01010101 N/A 0005 00000000 N/A 0006 00C8012C N/A 0007 000040F0 N/A 0008 00000000 N/A 0009 00000000 N/A 000A 00010384 …. …. …. …. N/A 008A 13579BDF N/A 008B 00001919 N/A 008C 00000000 N/A 008D 00000000 N/A 008E 00000280 Config End Device End

System Information Device Information

Figure 1. Partial .cfg File Example

Figure 2. Device Data Example for .cfg File
The register address field consists of 2 bytes of hex data and data field consists of 4 bytes of hex data.

© Semiconductor Components Industries, LLC, 2024

1

July, 2024 – Rev. 0

Publication Order Number: UM70108/D

UM70108/D

Writing Data from the Configuration File into the RAM of the Controller
Determine the slave address on the I2C bus of the digital controller to be programmed. All I2C communication will be with this device. The following sequence of steps should then be used to write the configuration to the registers:
1. Set initial password by doing a write byte operation. · Write data 0x00 to address 0xD2.
2. Set register write password by doing a write word operation. · Write data 0xC93F to address 0xFA.
3. Read and parse the rail, register address and data fields.
4. Use custom protocol mentioned in this document to write data listed in the configuration file.
Burn the Data from the RAM into the OTP Section The configuration data stored in registers can be saved to
OTP in the digital controller by following these steps: 1. Set initial password by doing a write byte operation. · Write data 0x00 to address 0xD2. 2. Set register write password by doing a write word operation. · Write data 0xC93F to address 0xFA. 3. Set OTP write password by doing a write word operation. · Write data 0xF1CA to address 0xFC. 4. Write the data 0xAA to address 0xD5 by doing the write byte protocol. 5. Delay 1 second for upload process complete. 6. Read data from address 0xD5 by doing the read byte protocol. · If the return value is 0xCC, the upload was a success.
Reading CRC (Cyclic Redundancy Check) from Device The FD512x digital controllers is designed with a
multi-section OTP memory for configuration storage. Each OTP section has a 16-bit CRC (Cyclic Redundancy Check) calculation for data error checking. The following procedure is provided to read the 16-bit CRC value from the device.
1. Set initial password by doing a write byte operation. · Write data 0x00 to address 0xD2.
2. Set register write password by doing a write word operation. · Write data 0xC93F to address 0xFA.
3. Set OTP write password by doing a write word operation. · Write data 0xF1CA to address 0xFC.
4. Write the data 0xAA to address 0xDD by doing the write byte protocol.

5. Delay 500 ms for download process complete. 6. Read data from address 0xDD by doing the read
byte protocol. · If the return value is 0xCC, the download was a success.
7. Read data from address 0xEE by doing the read word protocol. The return data is the CRC value.
CRC Calculation The CRC for FD512x configuration is calculated by the
method mentioned below (python code).

Single Byte Iteration def crc_cal_16(data_in, crc_data): for i in range(0,

8): data_tmp = data_in >> i data_tmp = data_tmp ^ crc_data if data_tmp & 0x0001: crc_data = (crc_data >> 1) ^ 0xA001 else: crc_data = crc_data >> 1 return crc_data

Array of Bytes to Use for Calculation def compute_crc16(byte_array): crc16 =

0xffff for data in byte_array: crc16 = crc_cal_16(data, crc16) return crc16
The byte array must be applied by below order
Reg0x0000[7:0] Reg0x0000[15:8] Reg0x0000[23:16] Reg0x0000[31:24] Reg0x0001[7:0] Reg0x0001[15:8] Reg0x0001[23:16] Reg0x0001[31:24] Reg0x0002[7:0] Reg0x0002[15:8] Reg0x0002[23:16] Reg0x0002[31:24] : : : Reg0x008F[7:0] Reg0x008F[15:8] Reg0x008F[23:16] Reg0x008F[31:24] Reg0x0090[7:0] Reg0x0090[15:8] Reg0x0090[23:16] Reg0x0090[31:24] Total byte from configuration is 716 bytes, but the CRC calculation require 830 bytes. Use 0x00 from byte 717~830 for CRC calculation.

www.onsemi.com 2

UM70108/D

Communication Protocol used for Programming There are several communication protocols used during
the programming:
· Read/Write Byte · Read/Write Word · Read/Write Custom
Read/Write Byte and Read/Write Word are simply following SMBus specification.
There are two steps to completing the Read/Write Custom protocol process.
1. Setting the register address: use register address as data write to address 0xF8 by using the write word protocol.
2. Setting the register data so that it can be read or written. Using the read/write block protocol will be accessed by address 0xF9. In Block protocol, the first byte of data is indicating the number of bytes for the transfer; this number will be 4 because the register data is 4 bytes data. After the number of byte, it will be [7:0] of register data; the next one will be [15:8] of register data, and the next one will be [23:16]; and the last one will be [31:24].
Figure 3. Read Custom Protocol

Package Dimension The FD512x digital controllers product family includes 3
different PN’s with different package dimensions: – – FD5121 QFN40, 5x5mm 40pins – – FD5123 QFN48, 6x6mm 48pins – – FD5125 QFN56, 7x7mm 56pins
Please refer to Appendix 2 for more details on packages.
Connections for Configuration Programming To reprogram the FD512x digital controller, connections
to power supplies and the I2C interface should be made as Figures 6 to 8.
The PMBus® Slave Address for FD512x can be set in 2 different way, 1)Set by configuration file directly, 2)Set by the resistor value on the CONFIG pin. The resistor value on the CONFIG pin is to set the offset value, the final PMBus Slave Address is based address + offset. Table 1 is showing the default PMBus Slave Address setting, be aware that based address can be set by the configuration as well.
The method of PMBus Slave Address is determined by register 0x00AF[6:0]. If the value for this parameter is NOT 0, it means #1 method is used and the value in this parameter is the MSB 7bit of PMBus Slave Address.
When value in register 0x00AF[6:0] is 0, it means #2 method is used, the based address is set by register 0x008E[9:7].
Please be aware that the PMBus Address may get change if Vcc of controller power cycle and the value in register 0x00AF[9:0] is different before and after configuration programming.

Figure 4. Write Custom Protocol
Multi-Section of OTP Memory The FD512x digital controller is designed with a
multi-section OTP memory for configuration storage. The typical limit for the number of re-writes by the user is 18. Once this limit has been reached, no further uploads will be possible. Therefore, careful planning should be considered before executing memory uploads.
It is recommended to exercise saving/loading configuration files as an alternate to saving to memory when optimizing systems to conserve available write attempts. Issuing an upload command will change the data and the remaining write attempt will reduce by 1.
The following procedure is provided to check the number of remaining writes. If the number read back is 0, the OTP has exhausted the number of writes allowed:
1. Read data from address 0xCF by the read byte protocol. The return data is the number of remaining writes.
www.onsemi.com 3

UM70108/D

Table 1. RESISTOR VALUE VS. DEFAULT PMBus SLAVE ADDRESS

Resistor Value 1.3 kW (GND)
4.12 kW 7.32 kW 11.3 kW 15.8 kW 21 kW 21.4 kW 35.7 kW 45.2 kW 59 kW 76.8 kW 102 kW 143 kW 215 kW 383 kW 1240 kW (Open)

Offset 0x00 0x02 0x04 0x06 0x08 0x0A 0x0C 0x0E 0x10 0x12 0x14 0x16 0x18 0x1A 0x1C 0x1E

Default PMBus Slave Address (8 bit) 0xA0 0xA2 0xA4 0xA6 0xA8 0xAA 0xAC 0xAE 0xB0 0xB2 0xB4 0xB6 0xB8 0xBA 0xBC 0xBE

Part Number Identification It is important that the part number in the config file
matches the controller to be programmed. A catastrophic fault may happen if the configuration file being programmed into the controller does not match to the part number in the config file. Below is ways to identify the controller information:
· Read the data from register 0xAD by using the read
block protocol. The number of byte return should be 0x04, 1st byte
is 0x21 for FD5121, 0x23 for FD5123 and 0x25 for FD5125, 2nd byte data should be 0x51, 3rd byte data should be 0xFD, 4th byte data should be 0x00.
· Read the data from register 0xAE by using the read
block protocol. The number of byte should be 0x02, the 2nd byte
data is to define the revision of controller. · 0xA0 means revision A0.

3
Based Address 0x00AF[9:7]

4

1

Offset

R/W

Figure 5. PMBus Slave Address

www.onsemi.com 4

UM70108/D
APPENDIX 1: SCHEMATIC

VINSEN 38 VAUX/VSYS 37

3.3VCC
C? 2.2u
C? 2.2u

SM_DAT SM_CLK

3.3V

R? 3.32K

R? 3.32K

U?
39 VCC3V3 40 VDD1V8

21 VOSEN_A 22 VORTN_A

32 VOSEN_B 31 VORTN_B

23
24 25
26 27
28 29 30

ISEN1 ISEN2
ISEN3 ISEN4 ISEN5 ISEN6 ISEN7
ISEN8

13 EN12

9 10

SMDATA SMCLK

14 RESET_L

FD5121

PGOOD12 12 PGOOD21 16 ALERT#/FAULT# 11 OCP_L/FAULT# 33

TMON_x 35 TMON_y/VSYS 36

PWM1 8 PWM2

1 VDDIO 15

SDATA/SVTO

19 20

EN2/SVTI MDATA/SVD
SVC

17 18

EN2/CONFIG 34 R?

41 PAD

Figure 6. I2C / PMBus Communication Bus

www.onsemi.com 5

3.3VCC
C? 2.2u

U?
47 VCC3V3
48 V1V8 C? 2.2u

VINSEN 46 VSYS/VAUX 45

UM70108/D

PGOOD12 16 PGOOD21 20
FAULT12/SM_ALRT 15 OCP_L/FAULT21 41

SM_DAT SM_CLK

25 VOSEN_A 26 VORTN_A
40 VOSEN_B 39 VORTN_B

3.3V

R? 3.32K

R? 3.32K

27 28 29 30

ISEN1 ISEN2 ISEN3

31 32 33 34 35 36 37 38

ISEN4 ISEN5 ISEN6 ISEN7 ISEN8 ISEN9 ISEN10 ISEN11 ISEN12

17 EN12

13 14

SM_DATA SM_CLK

18 RESET_L

FD5123

TMONx 43 TMONy/VSYS/ISYS 44

PWM12 PWM11 PWM10

1 2 3 4

PWM9 PWM8 PWM7

5 6 7

PWM6 PWM5 PWM4 PWM3 PWM2 PWM1

8 9 10 11 12

VDDIO 19

SVC/SVD MDATA/SVD/SVC

22 21

EN2/SVTI SDATA/SVTO

24 23

EN2/CONFIG 42 R?

Figure 7. I2C / PMBus Communication Bus

www.onsemi.com 6

UM70108/D

VINSEN 54 VAUX/VSYS 53

SM_DAT SM_CLK

3.3V
C? 2.2u
C? 2.2u

3.3V

R?

R?

3.32K 3.32K

U? 56 VCC3V3 55 V1V8

29 VOSEN_A
30 VORTN_A
48 VOSEN_B 47 VORTN_B

31

32 33 34 35 36 37 38 39 40 41 42 43 44 45 46

ISEN1 ISEN2 ISEN3 ISEN4 ISEN5 ISEN6 ISEN7 ISEN8 ISEN9 ISEN10 ISEN11 ISEN12 ISEN13 ISEN14 ISEN15 ISEN16

21 EN12

17 18

SM_DATA SM_CLK

22 RESET_L

FD5125

FD5125
PGOOD12 20 PGOOD21 24 FAULT12/SM_ALRT 19 OCP_L/FAULT21 49
TMON_X 51 TMON_Y/VSYS 52

PWM1 PWM2 PWM3 PWM4 PWM5 PWM6 PWM7 PWM8 PWM9 PWM10 PWM11 PWM12 PWM13 PWM14 PWM15 PWM16

16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1

VDDIO 23

SVC MDATA/SVD

26 25

EN21/SVTI

28 27

SDATA/SVTO

EN2/CONFIG 50 R?

57 PAD

Figure 8. I2C / PMBus Communication Bus

www.onsemi.com 7

UM70108/D
APPENDIX 2: PACKAGE DIMENSIONS
QFN40 5×5, 0.4P CASE 485FW ISSUE O

DATE 17 JAN 2019

www.onsemi.com 8

UM70108/D

1 48 SCALE 2:1
D
PIN ONE
ÉÉÉÉÉÉÉÉÉ LOCATION

QFN48 6×6, 0.4P CASE 485BA ISSUE A

AB E

L

L

L1

DETAIL A
ALTERNATE TERMINAL CONSTRUCTIONS

2X dan1
2X

0.10 C 0.10 C

TOP VIEW

0.10 C

DETAIL B

(A3)

0.08 C
NOTE 4

A1 SIDE VIEW

DETAIL A

D2

13

K
25

A

ÉÉÉÉ EXPOSED Cu

MOLD CMPD

DETAIL B

ALTERNATE

CONSTRUCTION

C

SEATING PLANE

DATE 16 FEB 2010

NOTES: 1. DIMENSIONING AND TOLERANCING PER ASME Y14.5M, 1994. 2. CONTROLLING DIMENSIONS: MILLIMETERS. 3. DIMENSION b APPLIES TO PLATED TERMINAL AND IS MEASURED BETWEEN 0.15 AND 0.30mm FROM TERMINAL TIP 4. COPLANARITY APPLIES TO THE EXPOSED PAD AS WELL AS THE TERMINALS.

MILLIMETERS

DIM MIN MAX

A 0.80 1.00

A1 0.00 0.05

A3 0.20 REF

b 0.15 0.25

D 6.00 BSC

D2 4.40 4.60

E 6.00 BSC

E2 4.40 4.60

e

0.40 BSC

K

0.20 MIN

L 0.30 0.50

L1 0.00 0.15

E2

1

48

37

e

e/2

BOTTOM VIEW

48X L
48X b 0.07 C A B 0.05 C NOTE 3

SOLDERING FOOTPRINT*

6.40 4.66

48X
0.68

4.66

6.40

PKG OUTLINE

0.40 PITCH

48X
0.25

DIMENSIONS: MILLIMETERS

*For additional information on our Pb-Free strategy and soldering details, please download the onsemi Soldering and Mounting Techniques Reference Manual, SOLDERRM/D.

www.onsemi.com 9

UM70108/D
www.onsemi.com 10

UM70108/D

onsemi is licensed by Philips Corporation to carry the I2C Bus Protocol. PMBus is a registered trademark of SMIF, Inc.

onsemi,

, and other names, marks, and brands are registered and/or common law trademarks of Semiconductor Components Industries, LLC dba “onsemi” or its affiliates

and/or subsidiaries in the United States and/or other countries. onsemi owns the rights to a number of patents, trademarks, copyrights, trade secrets, and other intellectual property. A listing of onsemi’s product/patent coverage may be accessed at www.onsemi.com/site/pdf/Patent-Marking.pdf. onsemi reserves the right to make changes at any time to any products or information herein, without notice. The information herein is provided “as-is” and onsemi makes no warranty, representation or guarantee regarding the accuracy of the

information, product features, availability, functionality, or suitability of its products for any particular purpose, nor does onsemi assume any liability arising out of the application or use

of any product or circuit, and specifically disclaims any and all liability, including without limitation special, consequential or incidental damages. Buyer is responsible for its products

and applications using onsemi products, including compliance with all laws, regulations and safety requirements or standards, regardless of any support or applications information

provided by onsemi. “Typical” parameters which may be provided in onsemi data sheets and/or specifications can and do vary in different applications and actual performance may

vary over time. All operating parameters, including “Typicals” must be validated for each customer application by customer’s technical experts. onsemi does not convey any license

under any of its intellectual property rights nor the rights of others. onsemi products are not designed, intended, or authorized for use as a critical component in life support systems

or any FDA Class 3 medical devices or medical devices with a same or similar classification in a foreign jurisdiction or any devices intended for implantation in the human body. Should

Buyer purchase or use onsemi products for any such unintended or unauthorized application, Buyer shall indemnify and hold onsemi and its officers, employees, subsidiaries, affiliates,

and distributors harmless against all claims, costs, damages, and expenses, and reasonable attorney fees arising out of, directly or indirectly, any claim of personal injury or death

associated with such unintended or unauthorized use, even if such claim alleges that onsemi was negligent regarding the design or manufacture of the part. onsemi is an Equal

Opportunity/Affirmative Action Employer. This literature is subject to all applicable copyright laws and is not for resale in any manner.

ADDITIONAL INFORMATION
TECHNICAL PUBLICATIONS: Technical Library: www.onsemi.com/design/resources /technical-documentation onsemi Website: www.onsemi.com

ONLINE SUPPORT: www.onsemi.com/support For additional information, please contact your local Sales Representative at www.onsemi.com/support/sales

www.onsemi.com

11

Read User Manual Online (PDF format)

Read User Manual Online (PDF format)  >>

Download This Manual (PDF format)

Download this manual  >>

Related Manuals