Faster, Safer, Smarter

Computer scientist Renato Mancuso wants to improve the systems that control our vehicles and devices

On a recent morning in Renato Mancuso’s lab, remote controls, a miniature car, and a collection of blue-propellered quadrotor drones are scattered across a long workbench. Lab members tinker with glinting green circuit boards at their computer stations. All of these items are part of the lab’s goal of improving computer systems that “interact with the physical world and that we rely on to carry on our modern lifestyle,” says Mancuso, an assistant professor of computer science.

We come across many cyber-physical systems in our daily lives. The computer that controls a washing machine is one example—it uses inputs, like the type of clothing you are washing or the water temperature you’d like to use, and has sensors that activate water valves and heating elements. The computer directs what the machine does with your clothing. But Mancuso and the members of his Cyber-Physical Systems Lab, in BU’s Center for Computing & Data Sciences, aren’t interested in washing machines; they are focused on safety-critical cyber-physical systems—for example, the systems that control planes and cars, both manned and autonomous—and ensure they operate safely and efficiently.

“Even a regular non-self-driving car is pretty much a computer on wheels—and we entrust our lives to them,” Mancuso says. All of the projects in his lab are aimed at developing safer, more efficient, and more cost-effective cyber-physical systems. “NASA can afford to spend billions of dollars to create a rover and custom build their [computer] chips to make sure that rover can survive 100 sols on Planet X,” explains Mancuso. “But if we’re talking about bringing safe, autonomous driving to the masses, we’ll want to do that with commercial systems off the shelf. My approaches are targeting this kind of application where we want high-assurance cyber-physical systems that can be built without spending billions of dollars.”

Time Is of the Essence

Recent headlines show the perils of safety-critical system failures. A Norfolk Southern freight train transporting toxic chemicals derailed in East Palestine, Ohio, in February 2023, causing a fire and a chemical spill. The National Transportation Safety Board’s preliminary report on the derailment found that crew members weren’t alerted to an overheated wheel bearing quickly enough. Then, in March 2023, another Norfolk Southern train derailed outside Springfield, Ohio.

Autonomous cars have also had their share of incidents. In June 2023, the Washington Post reported that, according to National Highway Traffic Safety Administration data, Teslas in “autopilot mode” were involved in more than 700 crashes, including 17 fatal accidents, since 2019. The article cited one accident that occurred in North Carolina in March 2023, in which a Tesla allegedly in “autopilot mode” and going 45 mph failed to brake, striking and injuring a teen getting off a school bus.

These incidents emphasize the importance of a key focus of Mancuso’s research: timeliness. Take a car that is supposed to sense an obstacle and apply braking. “In testing that, it’s not enough that it detects that there is a kid-size mannequin on the road. It also has to be sure to brake on time,” says Mancuso. Airbag deployment is another example of the importance of timing. If it deploys too late, then there is a risk of the driver hitting the steering wheel; too early, and the airbag is already partially deflated by the time the driver lands on it.

A regular non-self-driving car is pretty much a computer on wheels—and we entrust our lives to them.

Much of the research in Mancuso’s lab is concerned with narrowing the right window of time for an action to be performed. “Our mission is: Can we guarantee that strong temporal requirements can be met in spite of the increasing complexity of both the software and the hardware in platforms?” he says.

To accomplish that, Mancuso and his students work at the intersection of software and hardware, attempting to improve a system’s context awareness (knowing what’s going on in the environment around it) and self-awareness (knowing what is going on inside itself) without sacrificing, and even improving, timeliness.

“With self-awareness, the system becomes capable of knowing that we are running behind schedule or that we are on track,” says Mancuso, a National Science Foundation CAREER award recipient. “With context awareness in a cyber-physical system, we want to know if a temperature is too high compared to what we expected, or if there are humans around, or perhaps if we are at a certain altitude or going a certain airspeed—properties of the physical world that we have to react to.” In order to create systems that are smarter and have better context awareness, he says, using simple sensors doesn’t quite cut it anymore. “We need cameras, we need things that can give us a more comprehensive understanding of the surrounding space.” But building these smarter, more aware systems also requires more complex computers, which can result in added processing time.

Mancuso is working to create ways for complex, high-performance systems to achieve self-awareness. His lab has been looking into how crucial information about the temporal behavior of applications can be accessed in systems that include something called field programmable gate array (FPGA), a reprogrammable hardware. Francesco Ciraolo (GRS’29,’29) describes it as a “hardware scratch pad, where you can build anything on it.”

In a study, coauthored with PhD student Shahin Roozkhosh (GRS’25,’25) and Denis Hoornaert, a researcher at the Technical University of Munich, Mancuso found that FPGA can be used to “lie” in order to gain control over its temporal properties and access data more quickly. “It’s called CAESAR because it’s a technique we call coherence backstabbing—it’s basically betraying something called a coherence protocol that the CPU [central processing unit] plays when it accesses memory,” says Mancuso.

Mancuso holding a drone in his lab
Mancuso’s lab is concerned with the timeliness of cyber-physical systems—which ensures that safety features are triggered within the optimal period of time.

With a coherence protocol, instead of trying to access stored memory that might be located far away and take time to retrieve, the system checks if other CPUs closer by have that piece of memory. However, Mancuso, winner of BU’s 2023 Gitner Award for Innovation in Teaching with Technology, and his team of researchers were able to demonstrate that an FPGA is capable of accessing memory faster. By programming the FPGA a certain way, Mancuso says, “if the message ‘Hey, do you have this piece of data?’ comes into the FPGA, it can flat out lie about it and say, ‘Yes, I have it.’ So, that piece of data doesn’t have to be in memory; [the FPGA] can make it up or go and fetch it from a local, faster memory, and maybe patch it up and take out information it doesn’t want to pass along and then send that to the CPU.” According to Mancuso, with the ability to “backstab” this protocol, his lab is able to redefine what it means to access data. “Now, access to data is programmable. We can define what the data is and how long it takes to get it.”

Mancuso is trying to push the boundaries of what is controllable in cyber-physical systems. “We are pioneering these new techniques that allow you to say the timing of memory is not beyond your control anymore. Everything is in your hands if you want to play with it.”

“A Godlike Entity”

Mancuso and his lab have been working on another project, that factors cost-effectiveness into their research.

Typically, industrial systems have a special circuitry that is attached externally and is used for debugging—monitoring what is happening within, such as if an application is running slowly, says Mancuso. But that external circuitry is costly.

“You normally attach up to $25,000 worth of equipment to a special port,” he says. With this project, however, his students found that the expensive external debugger is unnecessary. Rather, that kind of application monitoring and debugging can happen online and within the system. “Our technique basically works at the level of operating system and firmware and is able to track live what’s happening to your application. It’s able to tell you, ‘Yep, you have reached this milestone in your progress, and you’re here earlier than expected, so everything is fine.’ Or, ‘You’re here later than expected, and maybe these are the reasons,’ so you can run a little diagnostic.”

He compares it to the services navigation apps have provided people. “When you need to get to a train station, which in this case we’re comparing to the completion of an application, you’re not just happy with knowing you need to get there, but you want to get an estimate of how long it takes, and as you go forward, you want to know if you’re on track or not—will you be there 10 minutes early or 20 minutes late?” he says.

“We can hit the brakes on other things in the system and allow this application to speed up and catch up with [the intended] progress. We can do it over and over again, slowing down and speeding up until we achieve the point by when we want to come.”

Back to full issue