Naina
12/06/2023, 4:19 AMMitch Bailey
12/06/2023, 4:27 AMGPIO_MODE_USER_STD_ANALOG and GPIO_MODE_MGMT_STD_ANALOG mode both the input and output buffers are disabled.
If you have unconnected io_out or io_oeb signals, there may be Hi-Z leakage with GPIO_MODE_USER_STD_ANALOG.
The analog_io connection is the same for either one, so I recommend using GPIO_MODE_MGMT_STD_ANALOG.Naina
12/06/2023, 4:47 AMNaina
12/06/2023, 4:55 AMTim Edwards
12/06/2023, 1:46 PMio_oeb to digital (1.8V) power and io_out to either digital power or ground, just to be pedantic, but if you have analog connections and intend to keep the GPIO in GPIO_MODE_MGMT_STD_ANALOG mode, then they can be left open.Naina
12/06/2023, 8:37 PMNaina
12/06/2023, 8:39 PMTim Edwards
12/06/2023, 8:42 PMvdda1 or vdda2 supplies, which are designed for that?Naina
12/06/2023, 8:49 PMNaina
12/06/2023, 8:50 PMTim Edwards
12/06/2023, 8:56 PMio_analog connections which are straight out to pads with no other connections, and gpio_analog on the GPIO (with series resistor) and gpio_nosed (without a series resistor).
On the "caravel" chips (caravel_user_project), you have the analog_io connections on GPIO pins which have the series resistor (and which really ought to have been named gpio_analog to match the pins of the same function on caravan; I guess I am the one to blame for that confusing nomenclature).Naina
12/06/2023, 8:58 PMNaina
12/06/2023, 9:00 PMTim Edwards
12/06/2023, 9:03 PMio_analog[4] with the ESD clamp circuit should be perfect for a 5V supply.Naina
12/06/2023, 9:06 PMNaina
12/06/2023, 9:09 PMTim Edwards
12/06/2023, 9:18 PMNaina
12/06/2023, 9:28 PMNaina
12/06/2023, 9:30 PMTim Edwards
12/06/2023, 9:31 PMNaina
12/06/2023, 9:32 PMJorge Marin
12/08/2023, 12:15 PMTim Edwards
12/08/2023, 1:30 PMTim Edwards
12/08/2023, 1:33 PMJorge Marin
12/08/2023, 2:39 PMTim Edwards
12/08/2023, 2:41 PMuser_defines.v contents.Jorge Marin
12/10/2023, 12:57 PMMitch Bailey
12/10/2023, 2:15 PMuser_defines.v are translated into hard wired defaults during the tapeout process. These defaults may be programmatically overridden, but it needs to be done each time you power up the device. If you want to change the start up defaults, you’ll need to change the user_defines.v settings and resubmit your precheck/tapeout.