Trouble finding an adequate SBC/Embedded PC - Page 1
Forum section: electronics / general

author: Aleksandar B.
author_rank: Contributor
timestamp: November 02, 2015, 08:02:22 pm
content: Hi,I am working on a project with some very specific requirements, and I have trouble finding a platform which suits my needs.These are the requirements:-CPU with minimum 4 cores,-More than 1 GHz frequency,-At least 512 MB RAM,-UART which runs at 10.5 MegaBAUD,-Capable of running a commercial RTOS (Preferably QNX Neutrino, but it's not mandatory).As a first pass solution, I used BeagleBone Black, but it doesn't cut the mustard. It's 1 GHz and 1Mbps UART is just not enough.Basically what I need to do is get some information through the UART, do some basic linear algebra functions, and send the result out through the UART.Does anyone know a platform that meets all the requirements?

author: dr.diesel
author_rank: Super Contributor
timestamp: November 02, 2015, 08:09:48 pm
content: Do you have any size requirements? I know you mention SBC, lots of variation here.

author: Aleksandar B.
author_rank: Contributor
timestamp: November 02, 2015, 08:39:48 pm
content: No special size requirements. As long as it gets the job done, it can be big (but not huge). Let's say that the PC/104 (96x90) would be more than fine and I wouldn't go above miniATX (150x150).

author: Rasz
author_rank: Super Contributor
timestamp: November 03, 2015, 09:14:52 am
content: FT2232H solves your uart, so you are looking for a board with usb, that should simplify things for you

author: John_ITIC
author_rank: Frequent Contributor
timestamp: November 04, 2015, 02:59:45 am
content: Quote from: Aleksandar B. on November 02, 2015, 08:02:22 pmYou could use an FPGA-based platform with a hard CPU core. The UART would then go into the FPGA logic and everything would be very flexible. If there is not enough engineering skills or if the development cost would be too high, then this would be a no-go. You didn't mention the budget (if any exists)...Note that if you choose a SOC design, you could off-load lots of the serial port processing to hardware, getting by with less CPU cycles and cores.https://www.altera.com/products/soc/overview.html

author: westfw
author_rank: Super Contributor
timestamp: November 04, 2015, 08:24:46 am
content: QuoteDoes such a thing even exist? I thought that async topped out at ~1MHz, externally clocked (USRT) topped out at ~6MHz, and you needed self-clocking signals (manchester encoding or even fancier, like ethermet) by the time you hit 10Mbaud...

author: Aleksandar B.
author_rank: Contributor
timestamp: November 04, 2015, 09:52:02 am
content: Quote from: westfw on November 04, 2015, 08:24:46 amYes, it does. I use it with the stm32f407vg microcontroller. I successfully communicated between two microcontrollers at this baud rate.

author: Kjelt
author_rank: Super Contributor
timestamp: November 04, 2015, 12:55:13 pm
content: Would an external USART chip you have to add be an option?For instance:The SC16C850SV is a 1.8 V, low power single channel Universal Asynchronous Receiverand Transmitter (UART) used for serial data communications. Its principal function is toconvert parallel data into serial data and vice versa. The UART can handle serial datarates up to 20 Mbit/s (4? sampling rate).

author: Kalvin
author_rank: Super Contributor
timestamp: November 04, 2015, 01:37:49 pm
content: What do you need the 10Mbit/s Uart for? Could it be substituted by a SPI?

author: Gabri74
author_rank: Regular Contributor
timestamp: November 04, 2015, 03:59:48 pm
content: I guess you can use the PRUs on the AM335x on the beaglebone to achieve that serial speed.It's not for the faint of heart but it's specially designed for this sort of things.Here you can find some documentation and examples.http://processors.wiki.ti.com/index.php/PRU-ICSSThis gui used the PRU to build a 100MSPS logic analyzer, so you can look at is code for pointers (pun intended):https://github.com/abhishek-kakkar/BeagleLogicThere are plenty of Linux modules/sbc out there, from 25€ and up, but I don't think you can achieve that sort of serial speeds using aserial driver in the kernel, but I'm not sure. I know that serial is quite heavy on the kernel...Regarding your constraint for minimum speed at 1.2GHz, keep in mind that speed grade in arm processor (like the freescale i.MX6) aredependent on temperature range and package type. As far as I remember, for the freescale e.g. the 1.2 GHz version is only available in commercial grade, but if you need industrial or automotive range maximum frequency available is 800 MHz.