Darío San Martín Molina
03/07/2022, 7:08 PMTim Edwards
03/07/2022, 9:43 PManalog_io
pins, and note that due to a different indexing system, analog_io[0]
corresponds to GPIO 7 (that is, you are not allowed to use the lowest six GPIOs for analog signals). The management SoC program that initializes the GPIOs should set the GPIO mode for that pin to analog (configuration word 0x000a
otherwise known as GPIO_MODE_USER_STD_ANALOG
).Tim Edwards
03/07/2022, 9:45 PManalog_io
pin on the wrapper, for ESD protection, so take that into account. I assume that your Vctrl
signal probably does not draw current, and so it is not an issue.Matt Venn
03/08/2022, 10:49 AMMatt Venn
03/08/2022, 10:49 AMDarío San Martín Molina
03/08/2022, 11:25 AMMatt Venn
03/08/2022, 11:26 AMDarío San Martín Molina
03/08/2022, 11:27 AMMatt Venn
03/08/2022, 11:37 AMTim Edwards
03/08/2022, 1:32 PMTim Edwards
03/08/2022, 1:39 PMDarío San Martín Molina
03/16/2022, 5:19 PMuser_analog_project_wrapper
I see some are called gpio_analog[x] while other are called io_analog[x], you mentioned I should use io_analog
but then I noticed that in the example user_analog_project_wrapper
you connected the outputs of the example_por blocks to gpio_analog[] pins and not to io_analog[] pins.
I'm trying to ensure I use the correct pins for my VCO inputs and outputs (whether it's io_analog[] pins or gpio_analog[] pins, or io_in[] pins, etc...) and also I want ensure I set the io_oeb[] correctly.
Could you please have a look at the attached Schematic picture and let me know if I'm correct in my usage of pin types:
- vctrl is the analog control voltage for the VCO --> I have connected it to io_analog[0]
- vsel0/1/2/3 are digital 1.8V inputs to turn on/off some switches on current mirrors to have multiple bias current modes --> I have connected them to io_in[0]
to io_in[3]
. Since I assume io_in[x] are for digital input signals. Is this correct?
- out_div128_buf and out_div256_buf --> These are the VCO output frequency divided by 128 and 256 in order to get below the 50MHz max output frequency of the output pads. I have tied them to io_analog[1]
and io_analog[2]
. Correct?
Regarding the io_oeb[]
, do I need to care about these, given the pin connectivity mentioned above? ThanksDarío San Martín Molina
03/16/2022, 5:26 PMio_analog[]
are the 11 "bare pads" you talked about in another thread, and hence they don't have any associated io_oeb[]
to care about (if these are "bare pads" indeed then I guess they are ok to use for my output VCO divided-down frequency?). But, since I'm using io_in[3:0]
as inputs for my vsel's, then I should set io_oeb[3:0]
to 1.8V?Tim Edwards
03/16/2022, 5:56 PMio_analog
pins unless you have analog signals that are high voltage (> 3.3V), negative voltage, or high speed (> 50MHz digital or equivalent analog bandwidth). As soon as you connect something to those lines, you are entirely responsible for all ESD circuitry to protect your circuits. You could, for example, connect your VCO undivided output (buffered) to one of those pads. gpio_analog
is what you want to use for the slow (< 50MHz) speed signals. For digital, avoid channels 0 to 7 except as a last resort (if you run out of signals to connect to). They have duplicate use by the management SoC for the housekeeping SPI and UART, and so are connected to other things on the development board that will just make it harder for you to test your own circuit.Darío San Martín Molina
03/16/2022, 6:31 PMio_clamp_low[]
and io_clamp_high[]
, I noticed in the example user_analog_project_wrapper
(the one with the 2 example_por s) all io_clamp_low
are tied to vssa1
and io_clamp_high[2:1]
are also tied to vssa1
, but io_clamp_high[0]
is tied to io_analog[4]
, why is that? What should I do with these pins in my user_analog_project_wrapper
, should I tie them ALL to vssa1? (I posted this question somewhere else but I removed it to avoid duplication)Tim Edwards
03/16/2022, 9:10 PM