SPRUHZ7K August 2015 – April 2024 AM5706 , AM5708 , AM5716 , AM5718 , AM5718-HIREL
The PBIAS cell is associated with device MMC1 interface and used together with the MMC1 I/O cells. Its purpose is to provide bias voltage to the MMC1 I/O cells. Without this bias voltage these I/O cells can not function properly.
The PBIAS cell is controlled by software using the CTRL_CORE_CONTROL_PBIAS register. The CTRL_CORE_CONTROL_HYST_1 register is used for hysteresis and drive strength control of the MMC1 I/O cells.
Figure 18-9 shows the PBIAS cell with the control bits and connections between it, the control module and the MMC1 I/O cells.
Table 18-14 describes PBIAS cell and MMC1 I/O cells control bits.
Control bits for PBIAS cell and MMC1 I/O cells | Reset Value | Description |
---|---|---|
CTRL_CORE_CONTROL_PBIAS[27] SDCARD_BIAS_PWRDNZ | 0x0 | This bit turns ON and OFF the PBIAS cell. Software must keep it to 0x0 whenever the PBIAS cell supply voltage is ramping up/down or changing. Thus the PBIAS cell is protected. This bit should be set to 0x1 only after the PBIAS cell supply voltage is stable. This action power up the PBIAS cell. |
CTRL_CORE_CONTROL_PBIAS[26] SDCARD_IO_PWRDNZ | 0x0 | This bit turns ON and OFF the MMC1 I/O cells. Software must keep it to 0x0 whenever the MMC1 IOs supply voltage is ramping up/down or changing. Thus the MMC1 I/O cells are protected. When this bit is set to 0x0, the MMC1 pads are floating. This bit should be set to 0x1 only after the MMC1 IOs supply voltage is stable. This action powers up the MMC1 I/O cells. |
CTRL_CORE_CONTROL_PBIAS[25] SDCARD_BIAS_HIZ_MODE | 0x0 | When this bit is set to 0x1, the PBIAS cell output is in high impedance state and the SDCARD_BIAS_VMODE_ERROR bit sets automatically to 0x1. When SDCARD_BIAS_HIZ_MODE is set to 0x0, the PBIAS cell is in normal operation mode. |
CTRL_CORE_CONTROL_PBIAS[24] SDCARD_BIAS_SUPPLY_HI_OUT | 0x0 | This is status bit indicating whether the MMC1 I/O cells supply voltage is equal to 1,8V or 3,3V. |
CTRL_CORE_CONTROL_PBIAS[23] SDCARD_BIAS_VMODE_ERROR | 0x0 | Status bit wich indicates, during PBIAS cell normal operation mode, whether the voltage defined by the SDCARD_BIAS_VMODE bit is equal to the MMC1 I/Os supply voltage or not. If not, this bit is automatically set to 0x1 4µs after the voltage detection. It is also mapped to the IRQ_CROSSBAR_70 input line and is used as an interrupt source. If both voltage values are not equal an interrupt is generated. |
CTRL_CORE_CONTROL_PBIAS[21] SDCARD_BIAS_VMODE | 0x1 | By controlling this bit software tells the PBIAS cell whether the MMC1 I/O cells supply voltage is equal to 1,8V or 3,3V. Its reset value indicates that the MMC1 I/Os voltage level is 3,3V. |
CTRL_CORE_CONTROL_HYST_1[31] SDCARD_HYST | 0x1 | Hysteresis enabling/disabling for the MMC1 I/Os input buffer. |
CTRL_CORE_CONTROL_HYST_1[30:29] SDCARD_IC | 0x0 | Impedance control (drive strength) for the MMC1 I/Os output buffer. |
When the MMC1 signals are not used, that is MUXMODE different than 0x0 selected, the PBIAS cell must also be configured for proper work of the other interface signals multiplexed on the MMC1 I/O cells. For example, if MUXMODE = 0xE (gpio6_21 to gpio6_26 signals selected) the PBIAS cell and MMC1 I/O cells must be configured. This means that both the cells must be powerd and the appropriate PBAIS cell control bits must also be configured.
The MMC1 interface pads are the following:
All of these pads except the mmc1_sdcd and mmc1_sdwp pads are associated with the PBIAS cell and the CTRL_CORE_CONTROL_PBIAS register and are also controlled by the CTRL_CORE_CONTROL_HYST_1 register.
The PBIAS cell and the MMC1 I/O cells are powered externally through the vddshv8 ball.
The PBIAS cell must be programmed according to the MMC1 I/O cells supply voltage. For details, see Table 18-15.
CTRL_CORE_CONTROL_PBIAS[21] SDCARD_BIAS_VMODE Bit Configuration | PBIAS Cell and MMC1 I/O Cells Supply Voltage | Type of Operation |
---|---|---|
1.8V (0x0) | 1.8V | Normal 1.8V operation |
1.8V (0x0) | 3.3V | Damaging configuration(2) |
3.3V (0x1) | 1.8V | Damaging configuration(2) |
3.3V (0x1) | 3.3V | Normal 3.3V operation |
Table 18-16 summarizes the generation of the CTRL_CORE_CONTROL_PBIAS[23] SDCARD_BIAS_VMODE_ERROR status flag, which depends on the various combinations of bits in the CTRL_CORE_CONTROL_PBIAS register. When this flag sets to 0x1, it is recommended the MMC1 I/O cells to be powered down by setting to 0x0 the CTRL_CORE_CONTROL_PBIAS[26] SDCARD_IO_PWRDNZ bit.
Programmed Voltage Level (SDCARD_BIAS_VMODE) | SDCARD_BIAS_SUPPLY_HI_OUT | SDCARD_BIAS_HIZ_MODE | PWRDNZ Bits | SDCARD_BIAS_VMODE_ERROR |
---|---|---|---|---|
0 | 0 | X | 0 | 0 |
0 | 0 | 0 | 1 | 0 |
0 | 1 | 0 | 1 | 1 |
X | X | 1 | 1 | 1 |
1 | 0 | X | 0 | 0 |
1 | 0 | 0 | 1 | 1 |
1 | 1 | 0 | 1 | 0 |
SDCARD_BIAS_VMODE_ERROR = 0x1 shows that the programmed voltage level is not the same as the voltage indicated by the SDCARD_BIAS_SUPPLY_HI_OUT bit or high impedance mode is selected.
SDCARD_BIAS_VMODE_ERROR = 0x0 shows that the programmed voltage level is the same as the voltage indicated by the SDCARD_BIAS_SUPPLY_HI_OUT bit or it is not considered because SDCARD_PWRDNZ = 0x0.