Fault Localization Method by Partitioning Memory Using Memory Map and the Stack for Automotive ECU Software Testing
Source abstract
Abstract
Recently, the usage of the automotive Electronic Control Unit (ECU) and its software in cars is increasing. Therefore, as the functional complexity of such software increases, so does the likelihood of software-related faults. Therefore, it is important to ensure the reliability of ECU software in order to ensure automobile safety. For this reason, systematic testing methods are required that can guarantee software quality. However, it is difficult to locate a fault during testing with the current ECU development system because a tester performs the black-box testing using a Hardware-in-the-Loop (HiL) simulator. Consequently, developers consume a large amount of money and time for debugging because they perform debugging without any information about the location of the fault. In this paper, we propose a method for localizing the fault utilizing memory information during black-box testing. This is likely to be of use to developers who debug automotive software. In order to observe whether symbols stored in the memory have been updated, the memory is partitioned by a memory map and the stack, thus the fault candidate region is reduced. A memory map method has the advantage of being able to finely partition the memory, and the stack method can partition the memory without a memory map. We validated these methods by applying these to HiL testing of the ECU for a body control system. The preliminary results indicate that a memory map and the stack reduce the possible fault locations to 22% and 19% of the updated memory, respectively.
Source: crossref · Quality: baseline
Research context
OpenAlex topics: Real-time simulation and control systems · Software Testing and Debugging Techniques · Real-Time Systems Scheduling
SciVX discovery tags are terminology-based. OpenAlex topics are source-provided classifications.
Affiliations
Department of Electrical and Computer Engineering, Ajou University, Suwon 16499, Korea
Funding
Ministry of Science, ICT & Future Planning
References (25)
Show source-provided references
1. Altinger, H., Wotawa, F., and Schurius, M. (2014, January 21–25). Testing methods used in the automotive industry: Results from a survey. Proceedings of the 2014 Workshop on Joining AcadeMiA and Industry Contributions to Test Automation and Model-Based Testing, San Jose, CA, USA.10.1145/2631890.2631891 ↗
2. Zhang, H., Li, W., and Chen, W. (2010, January 16–18). Model-based hazard analysis method on automotive programmable electronic system. Proceedings of the 3rd International Conference on Biomedical Engineering and Informatics (BMEI), Yantai, China.10.1109/BMEI.2010.5639860 ↗
3. Tatar, M., and Mauss, J. (2014, January 5–7). Systematic test and validation of complex embedded system. Proceedings of the Embedded Real Time Software and Systems (ERTS) 2014, Toulouse, France.
4. A survey of software fault localization10.1109/TSE.2016.2521368 ↗
5. Siegl, S., Hielscher, K.-S., and German, R. (October, January 27). Model based requirements analysis and testing of automotive systems with timed usage models. Proceedings of the 18th IEEE International Requirements Engineering Conference (RE), Sydney, Australia.
6. Black box and white box testing techniques—A literature review
7. Choi, K.-Y., Seo, J., Jang, S., and Lee, J.-W. (2015). Advances in Computer Science and Ubiquitous Computing, Springer Singapore.
8. Wong, W.E., Horgan, J.R., London, S., and Mathur, A.P. (1995, January 24–28). Effect of test set minimization on fault detection effectiveness. Proceedings of the 17th international conference on Software engineering (ICSE), Seattle, WA, USA.10.1145/225014.225018 ↗
9. Low-power design of 8-b embedded CoolRisc microcontroller cores10.1109/4.597297 ↗
10. Padmanabhuni, B., and Tan, H.B.K. (2011). Techniques for defending from buffer overflow vulnerability security exploits. IEEE Internet Comput.10.1109/MIC.2011.137 ↗
11. Software fault localization10.1081/E-ESE-120044231 ↗
12. Baah, G.K., Podgurski, A., and Harrold, M.J. (2011, January 5–9). Mitigating the confounding effects of program dependences for effective fault localization. Proceedings of the 19th ACM SIGSOFT Symposium and the 13th European Conference on Foundations of Software Engineering, Szeged, Hungary.10.1145/2025113.2025136 ↗
13. Nguyen, H., Shen, Z., Tan, Y., and Gu, X. (2013, January 8–11). FChain: Toward black-box online fault localization for cloud systems. Proceedings of the 33rd International Conference on Distributed Computing Systems (ICDCS), Philadelphia, PA, USA.10.1109/ICDCS.2013.26 ↗
14. Functional debug techniques for embedded systems10.1109/MDT.2008.66 ↗
15. Caliebe, P., Lauer, C., and German, R. (2011, January 4–7). Flexible integration testing of automotive ECUs by combining AUTOSAR and XCP. Proceedings of the 2011 IEEE International Conference on Computer Applications and Industrial Electronics (ICCAIE), Penang, Malaysia.10.1109/ICCAIE.2011.6162106 ↗
16. Hillenbrand, M., and Müller-Glaser, K.D. (2009, January 23–26). An approach to supply simulations of the functional environment of ECUs for hardware-in-the-loop test systems based on EE-architectures conform to AUTOSAR. Proceedings of the 20th IEEE/IFIP International Symposium on Rapid System Prototyping, Paris, France.10.1109/RSP.2009.14 ↗
17. Bruckmann, H., Strenkert, J., Keller, U., Wiesner, B., and Junghanns, A. (July, January 30). Model-based development of a dual-clutch transmission using rapid prototyping and SiL. Proceedings of the 2009 International VDI Congress Transmissions in Vehicles, Friedrichshafen, Germany.
18. Chrisofakis, E., Junghanns, A., Kehrer, C., and Rink, A. (2011, January 20–22). Simulation-based development of automotive control software with Modelica. Proceedings of the 8th International Modelica Conference, Dresden, Germany.10.3384/ecp110631 ↗
19. Conformance testing of SGSF-064-1 using CANoe
20. Lee, J.-W., Choi, K.-Y., Jang, S., and Lee, J.-W. (2015). Advances in Computer Science and Ubiquitous Computing, Springer Singapore.
21. Wu, R., Zhang, H., Cheung, S.-C., and Kim, S. (2014, January 21–26). CrashLocator: Locating crashing faults based on crash stacks. Proceedings of the 2014 International Symposium on Software Testing and Analysis (ISSTA), San Jose, CA, USA.10.1145/2610384.2610386 ↗
22. Egan, M.H., and McDonald, C. (2014, January 20–23). Program visualization and explanation for novice C programmers. Proceedings of the 16th Australasian Computing Education Conference (ACE), Auckland, New Zealand.
23. Jeffrey, D., Nagarajan, V., and Gupta, R. (2010). Execution suppression: An automated iterative technique for locating memory errors. Trans. Program. Lang. Syst., 32.10.1145/1745312.1745314 ↗
24. A practical multi-word compare-and-swap operation10.1007/3-540-36108-1_18 ↗
25. GNU Binary Utilities. Available online: https://sourceware.org/binutils/docs/binutils/index.html.