2021 · 12 citations · 10 references
EngineeringAutonomous SystemsComputer ScienceAutonomous VehiclesSafety EngineeringSystems ArchitectureAutomotive Embedded SystemsDesign For TestabilityEmbedded Software DesignFunctional VerificationSafety-critical Embedded SystemsSoftware TestingSafety-critical SoftwareSafety-critical Software EngineeringSafety-critical Software ValidationSafety-critical Systems AnalysisSafety-critical Systems ArchitectureSoftware FrameworksSoftware Timing AnalysisTiming Constraints
The advanced AI-based software used for autonomous driving comprises multiple highly-coupled modules that are data and control dependent. Deploying those already-integrated software frameworks makes unit testing, a fundamental step in the validation process of critical software, very challenging in safety-critical systems. To tackle this issue, in this paper, we show the steps we followed to develop standalone versions of the modules in an industry-level autonomous driving framework (Apollo) by applying several modifications to its architectural design. We show how the standalone modules have the same functional behavior as their integrated counterpart modules. We exemplify the benefits of standalone modules by performing incremental analysis of the software timing requirements of each module running on a heterogeneous System on Chip (SoC). This is a mandatory step to consolidate and integrate software modules guaranteeing timing constraints (e.g. related to freedom from interference) while maximizing SoC utilization.
10
TensorFlow: A system for large-scale machine learning
Martı́n Abadi, Paul Barham, Jianmin Chen et al. · arXiv (Cornell University) · 2016 · 8.8K citations · Full text
TensorFlow: a system for large-scale machine learning
Martı́n Abadi, Paul Barham, Jianmin Chen et al. · Operating Systems Design and Implementation · 2016 · 6.4K citations
Autoware on Board: Enabling Autonomous Vehicles with Embedded Systems
Shinpei Kato, Shota Tokunaga, Yuya Maruyama et al. · 2018 · 624 citations