Troy,
You are hitting on something that I've been working on for quite some some. (for personal - not GaTech - projects).

My conclusion has been that I should build around an io subsystem with an embedded processor (all fpga based of course) that I can talk to over Ethernet.

This lets me leverage all the consumer tech with its regular performance and power improvements to run high level and gui stuff while still being able to do serious hard real time work in a no OS environment. The top level consumer platform is really just disposable.

What I am describing is actually a lot more than theoretical - I've built many automated systems and robots with my first generation hardware, and just hit timing closure on the second generation hours ago. What I have described is a bit simplified, but the point is this design approach just werks!

As far as this open graphics stuff goes, I am still convinced that the problem of free software support is disappearing as graphics hardware becomes general purpose.

One example: I have built a mobile robot platform based on the kinect2 that runs ROS and has a Haswell cpu on an itx motherboard. The freenect2 drivers (as compiled) utilize the gl stack for hardware accelerated kinect2 data processing. So this is a real software stack utilizing entirely open software for robotics that uses the internal Intel GPU. I do the entire mapping & localization thing based purely on the kinect2 data. I plan to move this code over to the opencl paths using beignet, again fully open source. I have certainly seen the order-of-magnitude (plus) performance improvement in going from purely cpu to gpu processing during that project.

Anyway: Your application seems so similar to mine that I can only recommend not getting too hung up on open hardware for the user interface. I would think that most of your value is going to be created in the low level engineering and high level management / front-end code. So use whatever disposable platform you want for the front-end that gives you the most bang for the buck. Of course put pressure on the manufacturers by picking the one that is most open that fits your needs. :)

Any platform that gives you a serial, ethernet, or wifi, or I suppose even bluetooth serial (have not tried) can get you interfaced to some embedded system handling hard real time control loops and low level io. These high-level interfaces are not going anywhere, so you are not tying your engineering to any given platform. That being said, I personally try to avoid USB where possible.

-John

Troy Benjegerdes wrote:
Yes, because I'm not going to buy a GPS guidance system for
my tractor, combine, or agricultural imaging drones without
having a long-term path to be able to replace the silicon in
the display console with something I have the source HDL for.

If I do a horribly subjective estimate based on:
http://download.intel.com/pressroom/kits/IntelProcessorHistory.pdf
I suspect we could get somewhere between 75 and 150mhz, which
should be plenty to do better with some peer reviewed software
than what google maps with all its java overhead, random crashes,
and binary blobs can do on my phone.


_______________________________________________
Open-graphics mailing list
[email protected]
http://lists.duskglow.com/mailman/listinfo/open-graphics
List service provided by Duskglow Consulting, LLC (www.duskglow.com)

Reply via email to