ahgu
Full Member level 3
- Joined
- Jun 19, 2001
- Messages
- 172
- Helped
- 1
- Reputation
- 2
- Reaction score
- 1
- Trophy points
- 1,298
- Activity points
- 1,552
I have 16bit data that comes in at 128MS/s, and I want to add 128 of them up at that rate, and then /128 after 128 samples.
Would you please recommend a FPGA or CPLD for that purpose. I don't need many IOs.
But the add performance is important. I would prefer XILINX, cost is important.
Just idle speculation, I fear. I would expect a design running synchronous with the sample clock for the time being.Just a small point, your design would not be running at 128Mhz, it is going to have to run at-least double to catch the clock edge and clock in the sample. ( also is the FPGA/CPLD going to be supplying the clock or are the clocks going to be synchronized?)
There is little chance you can perform the whole operation in 1 clock cycle (at 128Mhz)and be ready for the next input with an external jittery clock ( you are going to need to be stable for at least 1 clk cycle to get the data in. and 1 cycle to perform the addition, otherwise as you are doing the addition the value will be changing in one of the operands.
Just curious , what is you budget? €1000? €100? €3??.. would prefer XILINX, cost is important.
I count less than 100 4-input LUT logic elements (Cyclone III or MAX II, other vendors should give similar results). Plus the SPI serializer.
Why are you using a fast ADC, do you actually need the digital boxcar averager? Alternatively an 1 MBPS ADC with respective analog filter could be used, even an analog averager if exactly required.
Makes no sense so far. The shorter the input signal, the better it will be averaged by a low-pass-filter.You mean an analog LPF, cannot because the signal is not continuous, it comes in steps, the length of the steps is much shorter than the RC time.
Just idle speculation, I fear. I would expect a design running synchronous with the sample clock for the time being.
Running a 24 bit accumulator at 128 MHz isn't demanding for recent FPGAs. Single cycle isn't particularly a problem because you still have a pipelining option.
The design can be also described as first order CIC decimator.
If his clock had not been provided by the FPGA ( which at the stage I wrote the above, he had not clarified), then just how are you going to syncronise the FPGA clock with the ADC clock and read the results in the same clock domain?
And in this case you are running a clocked process, and you are staying within the same clock domain. Just because you cross the fpga device boundary doesn't suddenly make it a different clock domain. You will have delays etc to deal with yes, but fpga's have clock management resources for that.You are either running in a clocked logic or not, ( clocked or combinatorial), for clocked processes you would need to syncronise the two clock domains. ( FPGA & ADC)
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?