It's not possible at all with digital input ports.This AND gate should be designed to deal with voltage between Vilmax and Vihmin (I think it's not possible with a classic AND gate), but it's obvioulsy not written in the Cyclone 10LP datasheet.
I will not have this problem of oscillation beacause I will not apply CLK rising edge when my inputs will be in "analog mode".If the input level is between Vl and Vh, its logic state is undefined and can be read either 0 or 1 by the FPGA fabric. In practice, if you apply a slowly varying voltage to the input, you'll observe an individual threshold of each input. Near this threshold, the logic state will arbitrarily jump and possibly oscillate. No problem as no defined logic state can be expected for the applied input voltage.
Excellent idea !I don't think you have a problem, but you can probably use the "bus hold" function to create a Schmitt trigger input by adding a series resistor. This will increase the source impedance, and the maximum signal frequency will be limited.
Yes, it's exactly the last matter to deal with.What can happen:
* metastability at input FF. (This does not mean it will happen)
The increased current in the input stage and the "bus hold" function are not related to CLK, they are both valid even without an edge on CLK.In my case, I will not need it because I've just not to do rising edge of CLK when the input signal its in the forbidden zone.
But in other situations, your idea seems great, I will simulate it to be sure it's working well.
I know what you mean, but I can´t fully agree.Yes, it's exactly the last matter to deal with.
So if I don't apply rising edge of CLK with the IO FlipFlop, there will be no metastability, and everything will be ok.
And it's possible because I know when the mode is "analog" with forbidden zone on this IO, and when the mode is "digital" with Vih and Vil respected.
Metastability can be a nightmare on a system when it occurs from time to time. Asynchronous inputs always need 2 FF to avoid this, so that metastability stays between these 2 FF.
I agree with that, but I can't avoid this forbidden zone in my design, because it's also connected to an ADC, and add a MUX is impossible : due to size and price.I know what you mean, but I can´t fully agree.
Metastability may occur. Yes, but what´s the "real" problem with metastability: It´s a unknown and unpredictable FF output state.
But with the invalid input voltage, you already have an unpredictable and unknown input state.
So with or without metastability: you have an unknown and unpredictable FF output.
So again my recommendation: Avoid invalid input voltage levels. This is simple and as already mentioned needs no (or low) hardware effort (when using the internal bus keeper or internal pull up) and you get rid of the problems.
True. Without edge of CLK, I avoid metastability on the first FF output, and I avoid more increased current too.The increased current in the input stage and the "bus hold" function are not related to CLK, they are both valid even without an edge on CLK.
Yes, that's one thing interesting :Some wrong assumptions. Increased current consumption and possible oscillations for "analog" input level range will already occur in input buffer (located in the retctangle "Input Pin ... Delay") and don't depend on operating the input register.
Good idea.Anyway, I will try experiment on 10 inputs with varying (in the same time) inputs values from 0.8V to 1.7V, and measuring the Vccio main current (with Vccio = 3.3V).
Simply consider that FPGA inputs have either a single configurable input stage or multiple input stages for different IO standards (e.g. TTL, LVDS, voltage referenced) in parallel. In the shown diagram that focusses on signal flow rather than IO standards, the input stage(s) would be located in the said block.- So why do you think there will be "Increased current consumption and possible oscillations for analog input level range will already occur in input buffer" ? I'm interested with your assumption : I didn't think to this part of the IO block.
Yes, it's possible.Simply consider that FPGA inputs have either a single configurable input stage or multiple input stages for different IO standards (e.g. TTL, LVDS, voltage referenced) in parallel. In the shown diagram that focusses on signal flow rather than IO standards, the input stage(s) would be located in the said block.
We use cookies and similar technologies for the following purposes:
Do you accept cookies and these technologies?
We use cookies and similar technologies for the following purposes:
Do you accept cookies and these technologies?