I think you might have to do this in a PRU: I believe the SPI clock divider input runs at 48 MHz, so it can divide down to 24 MHz, 16 MHz, 12 MHz, etc. But I have also read someplace that it doesn’t work above 16 MHz. You should also keep in mind that the SPI device driver takes the passed speed parameter as “maximum speed”, and so might actually run at a lower clock speed than you believe you requested.
So if you get SPI really running at 16 MHz, you would still have to run SPI0 and SPI1 interfaces in parallel with half your ADCs on each interface. Or you could do it by bit-banging GPIOs to talk to each ADC separately using a PRU. As to the feasibility of doing it in the ARM processor: I think you can do this easily in the AM3359 bare metal, but maybe not in the Linux environment. Without realtime patches, you get 10-100 msec maximum latency. With exactly the right kernel mods I think you can get interrupt drivers to respond in a max of 50 usecs. But this is precisely why TI included the PRUs. From: Julian David Rath Sent: Monday, March 10, 2014 3:15 AM To: [email protected] Subject: [beagleboard] 4 Channel SPI Hi, I just found out that this is a better place to ask my question, it seams like there is also a beaglebone Google group, little confusing. So here my cross-post: I'd like to connect 4 ADS8528[0] daisy-chained via SPI to a BBB. I want to test it in different iterations first I want to measure the 32 Analog input channels captured by the ADS8528s with 1kHz and at the end with 200kHz. Those ADS8528 using 4 SPI Channels in daisy-chain mode. So I did some calculations on the needed bandwidth: for 1Khz: 12Bit * 32Channels * 4KHz = 384 Kbit/s On 4 SPI Channels that means: 12* 32*1Khz = 96 Kbit/s per SPI channel for 200Khz: 12Bit * 32Channels * 200KHz = 76.8 Mbit/s = 9.6MByte/s On 4 SPI Channels that means: 76.8Mb/s /4 = 19.2 Mbit/s per SPI channel Now 2 things: * Should/Can I use the built-in SPI of the BBB or do I have to implement 4 channels SPI bus by hand (High datarates PRUSS I guess)? * Do you think the high datarates for the 200Khz are achievable? Thanks, /Julian [0]: http://www.ti.com/product/ads8528 -- 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]. For more options, visit https://groups.google.com/d/optout. -- 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]. For more options, visit https://groups.google.com/d/optout.
