ROS 2 networking communications in microseconds with hardware acceleration

Dear roboticists,

I’m proud to share that our group at Acceleration Robotics has disclosed our latest FPGA designs which allow bringing ROS 2 message-passing infrastructure completely into hardware. To enhance composability and cover various use cases, we’ve split the complete networking stack in three IP cores: ROBOTCORE ROS 2, RTPS and UDP/IP. Altogether, they allow to exchange small ROS 2 messages in less than 2.5 us (one-way), accelerating networking by more than 62x on average when compared to traditional software implementations on CPUs[1].

When considering the worst case scenario (maximum latency) for small ROS 2 messages, ROBOTCORE ROS 2 remains isochronous reporting a consistent round-trip latency below 5 us. Opposed to this, software implementations on modern CPUs take on average 339 us for the same, but can reach latencies of up to 22.7 ms (22700 us) or more, which means ROBOTCORE ROS 2 is Thousands-Fold (4540x) faster in these worst case scenarios.

Block diagrams of each one of these designs are short descriptions are available below for those interested:

ROBOTCORE UDP/IP ROBOTCORE RTPS ROBOTCORE ROS 2
Accelerated UDP/IP networking stack. UDP/IP on FPGA. Accelerated DDS network communications. DDS-RTPS on FPGA Accelerated ROS 2 network communications. ROS 2 on FPGA

Addressing a major bottlenecks in ROS robotic communications

ROBOTCORE® ROS 2 and friends are the result of the last 5 years working towards faster and more efficient hardware for robots surrounding ROS 2 technologies. This started back in 2018, when we released a series of papers[2][3][4][5] that investigated robot networking and unveiled that modern CPU-based networking solutions, even when optimized, could not cope with many of the real-time needs of modern distributed robotic systems in industry powered by ROS. The disclosures above deliver absolute determinism and isochronous capabilities via hardware. Compared to software-based solutions, it ensures that the communication latency is lower, consuming less energy and that latency remains always the same, regardless of the load of the system. Crucial for real-time robotic systems and solving major bottlenecks in robotic communications today.

To be presented at ROSCon India 2023

We’re excited to disclose this now and present it publicly at the upcoming ROSCon India which our group is organizing and already has 750 confirmed attendees, including the sponsorship of Qualcomm, Analog Devices and NVIDIA among others. Stay tuned for more information on this regard.

For the ROS community, we’re currently considering to hold another Hardware Acceleration Working Group (HAWG) meeting soon to discuss these results and also the upcoming release of RobotPerf which will include new categories and interesting observations.

For more, including power-efficiency or how this minimizes the ROS 2 overhead over DDS (something many DDS vendors are currently criticizing about ROS 2) check the official page of ROBOTCORE ROS 2 and the official announcement.


  1. This considers the ROS 2 layers, the communication middleware implementation (DDS) and the networking stack, most often the Linux Networking Stack (LNS). ↩︎

  2. Gutiérrez, C. S. V., Juan, L. U. S., Ugarte, I. Z., & Vilches, V. M. (2018). Real-time Linux communications: an evaluation of the Linux communication stack for real-time robotic applications. arXiv preprint arXiv:1808.10821. ↩︎

  3. Gutiérrez, C. S. V., Juan, L. U. S., Ugarte, I. Z., & Vilches, V. M. (2018). Towards a distributed and real-time framework for robots: Evaluation of ROS 2.0 communications for real-time robotic applications. arXiv preprint arXiv:1809.02595. ↩︎

  4. Gutiérrez, C. S. V., Juan, L. U. S., Ugarte, I. Z., & Vilches, V. M. (2018). Time-sensitive networking for robotics. arXiv preprint arXiv:1804.07643. ↩︎

  5. Gutiérrez, C. S. V., Juan, L. U. S., Ugarte, I. Z., Goenaga, I. M., Kirschgens, L. A., & Vilches, V. M. (2018). Time synchronization in modular collaborative robots. arXiv preprint arXiv:1809.07295. ↩︎

12 Likes

This is great! Congrats Victor. This is really huge.

How do we get our hands on it?

Jeremy Williams

Williams Robotics

1 Like

Thanks @Jeremy_Williams, indeed! After much lab work, our team’s pretty excited to be tackling use cases with this technology in industry while addressing various bottlenecks with ROS and robotics in general.

You can drop us a note if you have an interesting use case for this tech and provide a general explanation of it. We can then organize a separate chat to discuss a collaboration.

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.