I think I can read in about 3 pcs. LT2500-32 via the PRU in Software.
The LT2500 ADC delivers 32 bit results via SPI, and with the capture and
conversion time slots it needs 100 MHz SPI to process each 1MHz sample.
The ADC feeds its data to a shift register in a Xilinx 2c64 Coolrunner.
The PRU then reads it bytewise and writes the collected 32 bit words
into a ring buffer in the shared RAM.
Up to now I have tested 1 ADC, but bandwidth should be enough for 3,
just so.
regards, Gerhard
Am 22.04.21 um 15:53 schrieb [email protected]:
I got it working, and I hope to never revisit it. It was kind of a
surprise. I selected a 1MS/s 16-bit SPI ADC and assumed a 16 Mhz SPI
clock to get the data out. I totally missed that the ADC can’t
sample, convert, and send at the same time, so I basically have 300nS
to get my 16 bit out. Everything else I had done with the PRU
monitored and responded to an external clock, so this is the first
time I was generating the clock and sampling the incoming data. I had
noticed a previous oddity where I had some debugging statements (set
an output pin) and when I removed them things stopped working. There
is definitely a speed limit.
*From:* [email protected] <[email protected]>
*On Behalf Of *Andrew P. Lentvorski
*Sent:* Thursday, April 22, 2021 5:01 AM
*To:* BeagleBoard <[email protected]>
*Subject:* [beagleboard] Re: PRU I/O max speed
I would be stunned if the GPIOs don't have synchronizer flip-flops as
they are sampling a signal asynchronous to the 200MHz clock. That
would account for 2 clocks. You probably need one extra to clock data
into R31. And then one clock to read R31.
50MHz is a pretty smoking speed for SPI--you normally need to start
thinking about series termination and some basic signal integrity.
You normally need the clock to capture to flop directly if you want
things to work.
I suspect you probably need to use the 16-bit Parallel Capture Mode
while feeding your clock out back as clock in. You'll still probably
be 4 clocks behind when the data hits R31, but the data will get
*captured* by the PRU<n>_CLOCKIN edge properly so the delay will now
be deterministic if you are generating the 50MHz clock yourself.
On Thursday, February 25, 2021 at 12:15:18 PM UTC-8 [email protected]
<mailto:[email protected]> wrote:
With a sample size of one, r31 appears to be 4 instructions behind
the state of the pin.
On Thursday, February 25, 2021 at 12:26:16 PM UTC-5 Paul Beam wrote:
I am, unfortunately, bit-banging SPI with the PRU, and I seem
to be running into a speed limit < 50 MHz I desire. I can
certainly create a clock that fast, but reading data seems to
be delayed. I can see on the logic analyzer a "0" clearly
being read as a '1" so there is either a delay in my clock
output or a delay in my input or both. I would like to think
that r30 and r31 are tied directly to the outside world, but
now I am thinking there is something in between that is either
clocked or just has significant output delays. Anyone else
encountered this?
--
For more options, visit http://beagleboard.org/discuss
---
You received this message because you are subscribed to a topic in the
Google Groups "BeagleBoard" group.
To unsubscribe from this topic, visit
https://groups.google.com/d/topic/beagleboard/9GdOGgGv-eY/unsubscribe.
To unsubscribe from this group and all its topics, send an email to
[email protected]
<mailto:[email protected]>.
To view this discussion on the web visit
https://groups.google.com/d/msgid/beagleboard/f88c700e-69c2-4ac4-bc64-d44a1715460dn%40googlegroups.com
<https://groups.google.com/d/msgid/beagleboard/f88c700e-69c2-4ac4-bc64-d44a1715460dn%40googlegroups.com?utm_medium=email&utm_source=footer>.
--
For more options, visit http://beagleboard.org/discuss
---
You received this message because you are subscribed to the Google
Groups "BeagleBoard" group.
To unsubscribe from this group and stop receiving emails from it, send
an email to [email protected]
<mailto:[email protected]>.
To view this discussion on the web visit
https://groups.google.com/d/msgid/beagleboard/02f301d7377e%24d9e9e3b0%248dbdab10%24%40gmail.com
<https://groups.google.com/d/msgid/beagleboard/02f301d7377e%24d9e9e3b0%248dbdab10%24%40gmail.com?utm_medium=email&utm_source=footer>.
--
For more options, visit http://beagleboard.org/discuss
---
You received this message because you are subscribed to the Google Groups "BeagleBoard" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/beagleboard/78b77aa0-0115-7281-8319-78e14b26a6ce%40hoffmann-hochfrequenz.de.