Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

Implement ADC using fbga

Status
Not open for further replies.

icd

Junior Member level 3
Joined
Jan 25, 2012
Messages
25
Helped
0
Reputation
0
Reaction score
0
Trophy points
1,281
Activity points
1,506
Hi guys,
Is it possible to implement ADC using fbga ?

Thanks
 

Hi guys,
Is it possible to implement ADC using fbga ?
Depending on what the performance requirements for the ADC are, the answer can be yes (mostly). The basic idea is that the FPGA generates a pulse width modulated output signal. This PWM signal is then low pass filtered to generate an analog voltage which is essentially the FPGA's estimate of the analog signal's voltage. External to the FPGA, in addition the low pass filter, you would need an analog comparator which compares the analog signal that you are trying to digitize with that of the filtered PWM signal just discussed. That comparator output is then a digital signal where a '1' indicates that the analog signal is higher than the FPGA's estimate; a '0' indicates that the analog signal is lower than the FPGA's estimate. If the FPGA's estimate is too high, then adjust it down; if it is too low, then adjust it up.

The limitations of the FPGA based ADC is primarily conversion speed. Since the FPGA is only receiving a 1 bit feedback on it's current estimate it can take a while for it to refine the estimate to match the analog voltage. Also, the PWM signal that needs to be filtered needs time to adjust to a new value. The more precision you desire, the longer the PWM stream needs to be. For example: for an 8 bit ADC you would need to output 256 clocks of '1' or '0' for the PWM output...this takes time. Lastly, if the analog voltage's range is just right, and the FPGA has differential inputs you might be able to use those differential input pins to implement the comparator instead of having it as an external device.

In short, it can be done, but the applications are for relatively low precision and slow A/D conversions.

Kevin Jennings
 
  • Like
Reactions: icd

    icd

    Points: 2
    Helpful Answer Positive Rating
PSOC from cypress semiconductor has an inbuilt ADC and DAC at the same time it also has logic cells like CPLD to implement custom logic
 
  • Like
Reactions: icd

    icd

    Points: 2
    Helpful Answer Positive Rating
Depending on what the performance requirements for the ADC are, the answer can be yes (mostly). The basic idea is that the FPGA generates a pulse width modulated output signal. This PWM signal is then low pass filtered to generate an analog voltage which is essentially the FPGA's estimate of the analog signal's voltage. External to the FPGA, in addition the low pass filter, you would need an analog comparator which compares the analog signal that you are trying to digitize with that of the filtered PWM signal just discussed. That comparator output is then a digital signal where a '1' indicates that the analog signal is higher than the FPGA's estimate; a '0' indicates that the analog signal is lower than the FPGA's estimate. If the FPGA's estimate is too high, then adjust it down; if it is too low, then adjust it up.

The limitations of the FPGA based ADC is primarily conversion speed. Since the FPGA is only receiving a 1 bit feedback on it's current estimate it can take a while for it to refine the estimate to match the analog voltage. Also, the PWM signal that needs to be filtered needs time to adjust to a new value. The more precision you desire, the longer the PWM stream needs to be. For example: for an 8 bit ADC you would need to output 256 clocks of '1' or '0' for the PWM output...this takes time. Lastly, if the analog voltage's range is just right, and the FPGA has differential inputs you might be able to use those differential input pins to implement the comparator instead of having it as an external device.

In short, it can be done, but the applications are for relatively low precision and slow A/D conversions.

Kevin Jennings

K-J, your sugestion seems to be a low quality ADC using way too many components.

Hi guys,
Is it possible to implement ADC using fbga ?

Thanks

If you mean creating an ADC circuit from scratch with an FPGA the short answer is: No! You would need plenty of analog components to perform the conversion and you probably wouldn't even need the FPGA in the end. I can't see how an FPGA can be used to create an ADC.

If you mean using an FPGA with an ADC, there are some but most use external ADCs.
 
  • Like
Reactions: icd

    icd

    Points: 2
    Helpful Answer Positive Rating
Is it possible to implement ADC using fbga ?

Sure, no problem. Generally won't make much sense doing that, when compared to readily available better alternative. But definitely possible, which is what you asked. :p
 
  • Like
Reactions: icd

    icd

    Points: 2
    Helpful Answer Positive Rating
Thanks guys. i think the answer is no ;)
 

K-J, your sugestion seems to be a low quality ADC using way too many components.
An external resistor and a capacitor are the total number of external components needed in certain situations. In other situations, an op-amp would also be needed to be the comparator. Doesn't seem like 'way too many' to me. As to quality, I'm not sure what you mean. If you mean performance in terms of conversions per second, I agree and stated that in the first post. As to number of bits of precision, I would disagree, in many situation it would be fairly comparable.

If you mean creating an ADC circuit from scratch with an FPGA the short answer is: No! You would need plenty of analog components to perform the conversion and you probably wouldn't even need the FPGA in the end. I can't see how an FPGA can be used to create an ADC.
Well then we disagree. I posted how you could implement an ADC with an FPGA (or other programmable logic), apparently you didn't understand the post.

If you mean using an FPGA with an ADC, there are some but most use external ADCs.
No, I meant implementing an ADC inside an FPGA (with a couple of external components). The real question though is under what circumstances would one really want to do this? ADC are fairly inexpensive, low pin count and higher performance than any programmable logic solution would likely be...but the OP simply asked if it could be done (it can), not whether or not you should bother to (in most instances, no).

Kevin Jennings
 
  • Like
Reactions: icd

    icd

    Points: 2
    Helpful Answer Positive Rating
Status
Not open for further replies.

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top