Tracking Automotive Electronics Related Sensory and Their Traceability by Boundary Scan Technology

: This paper proposes several Python-based test methods to study a series of MCU-associated sensors. In light of today's automotive electronics, many electric systems are involved in modularized bare dies such as power management ICs along with embedded programming. As to the application of autonomous driving like the ADAS system, having many Multiple-Chips Modules (MCM) which are popular in SoC related functional boards. It is necessary to have these electrical systems follow stringent safety standards and regulations by the International Electrotechnical Commission (IEC). That is to ensure the electronic systems to be designed, implemented, operated within safety range. That is traceable according to the prerequisite Safety Integrity Level (SIL) besides the Automotive Safety Integrity Level (ASIL) towards five classes. These classes further evolved into higher requirements such as IEC-61508 and more recently the ISO-26262. All of these, have driven many companies to research and develop a suite of methods and strategies to solve some of the “reliability” associated issues, especially in the area of autonomous driving. This paper proposes the boundary scan based test methodology to cop with government’s regulations by tracking some of the major sensors in responses to motion, temperature and dynamic forces based on a JTAG’s sensor board in case study A. Thereafter, using an NXP’s automotive board to trace on board electronics, mainly the CPU and MCU via the MODBUS is made possible to log and record test results through VB.XML.NET. These languages speak uniformly to the relational data base in one “DataSet” by in-memory cache of the data retrieved from a database, in case study B. Both are realized by the JTAG’s Functional Test (JFT) system, to log the “pass or fail” results in a sequential execution. This paper illustrates how-to reach this goal through the process in use of the public-domain based open frame-ware, and to demonstrate them on a JTAG’s Provision platform throughout the development stages.


Introduction
Testing automotive electronics is a system work, it is because the circuit boards are usually equipped with complex CPUs, MCU in combination along with a slew of memory chips. They are tested by the conventional Boundary Scan-based Technology (BST) plus the emulation the Built-In-Self Test (BIST) as per IEEE1149.1.6 and dot 7 based standards. In the case A), it involves many sensors under test on the schematics; this study first introduces how FCT extracts dynamic data from various sensory devices in response to temperate, pressure, vibration and in contacting to be tested functionally, and they are validated to pass or fail to their spec. In case A), it is proposed to use a typical NXP's LPC2468FET208, a master chip working around various sensors. In case b), another NXP's iMX6 chip is proposed In the case B). Both case A) and B) have JTAG o run traceability study. Both are accessible to the common Test Access Port (TAP). The indifference of TDI, TDO, TCK, TMS, TRST for BST, or just TCK and TMS for BIST.
[17] The iMX 6 chip family is designed to have the embedded system, and which is equipped with Built-In-Self-Test (BIST) for Signature Analysis. On the other hand, the Boundary Scan Test (BST) is to qualify these on-board dies [3] and MCMs [1] before burn-in test [5], are to be free of manufacturing defectives [6]. This proposal incorporates JTAG's Boundary Scan Diagnostics (BSD) and DLL Application Program in Interface (API) with a series of software modules by taking advantages of Python programming and MODBUS-based remote terminal unit (RTU), through Microsoft's NET framework. This approach is capable of transmitting and receiving the RS-485 based protocols via VB.Net-XML links. The test results are accumulated by JTAG's AEX Manager System for self-test [7], and thus to complete the traceability procedures in case B). Accomplished records log on a JTAG based Provision System, i.e., it uploading the Pass or FAIL data into an EEPROM automatically. This approach is to ensure both cases under test working around one data base by JTAG even though they belong to different technologies. [18]

Python Based Scripting Applications: JTAG Functional Tests: Case Study A)
In Figure 1, it demonstrates a JTAG based sensory board [4], consisting of four sensors such as 1) temperature sensor (I2C-TCN75AV) 2) pressure sensor (I2C-AT42QT2169) 3) vibration sensor (I2C MMA7660FCT) and 4) contact sensor (ADS7843). To do so, it is required to measure an ADC output and to check the digital voltage readouts of the temperature sensor within the expected limits. Besides, this UUT is expected to log on the time-set in Year/Date/Time as to set the CPU based Real Time Clock device. Other situations may require the test to make a 'decision' on the next GO, depending on the reading back data if necessary to cut off certain operations. Once these declarations are made, they are transmissible and receivable through an I2C bus [2] based master and slave architecture, i.e., the NXP chip is the master and its associated sensors are slaves. In current approaches of the ADAS systems, it has been around for some time, started as early as 1995, the Mitsubishi Motors have introduced so called the Parking Distance Control (PDC). Later, the Toyota has developed the Cruise Control (ACC), both may not be as effective as today's Lidar but it is compact and weatherproof in a long-range detection of blind spots at 79 GHz RF frequency range. [10,12].

Temperature Sensor Measurement by JFT
The following Figure 2, it illustrates how the temperature measurement is developed for Microchip TCN75A I2C based temperature sensor, basically the JFT defines a specific set of Python functions dedicated to support functional instructions such as WriteVar, GetVar, DeclareGroup, WriteGroup, GetGroup, GetDeviceInstructionList, etc. drivers, used to activate the boundary scan based TAP pins, to write or read values to and from the device based on the IEEE1149.1 specific instructions such as Clamp, High-Z, Bypass, Infra, Inter, Ext. etc., and to allow the JFT access any register available within the boundary-scan devices, which is defined in the BSDL file, and subsequently they are executed as the boundary scan cells to drive and sense the test signals in and out the sensor chips by the master chip as follows; [19].

Pressure Sensor Measurement by JFT
Still in the boundary scan test (BST) [8], the pressure sensor application is to use the functionality of the I2C-busbased control of the chip from the Atmel Q touch controller device, to check if the subject is encountering a "force" from a foreign object, its FCT based functional programming listed as shown in Figures 3, 4.

Dynamic Sensor Measurement by JFT
This device from NXP is an Orientation/Motion Detection Sensor, it's based on a "3-Axis accelerometer" with digital output via the I2C bus, of which is a capacitive MEMS sensor featuring a low pass filter, compensation for 0-g offset and gain errors, and is converted into 16-bit digital values at a user configuration within in JFT. The device can be used for sensor data changes, object orientation, and gesture detection during an "interrupt", effects taking place at at the pin (INT) is designed in the schematics as depicted in Figure 5. The Renesas' R-Car platform addresses a wide range of automotive applications such as Automated Driving or ADAS, connected Gateway, In-Vehicle Infotainment, Cockpit and Dashboard. It is designed for the next generation of automotive computing, and cars [15] have come to so called "derivable computers" by Tesla as well, countless LAN-connected MCUs, etc. acquiring the data from actuators and sensors to create autonomous driving, this advanced navigation systems and infotainment systems driving more pleasant by using video recognition based Artificial Intelligence (AI) technologies in supporting the ISO2626 safety standard up to ASIL D level. The proposed emulation according to the motion from a Freescale chip as per MMA7660FCT, its a I2C based "Accelerometer". This motion detection sensor is designed with MEMS based capacitive sensing so called g-cell. It is a signal conditioning ASIC chip, sensing element of the g-cell like a mechanical structure, formed from the semiconductor materials (polysilicon) through the masking and etching processes; theoretically the sensor can be modeled as a movable beam that moves between two mechanically fixed beams. When two gaps are formed between the movable beams, the first stationary beam and the second movable beam are sensed by the ASIC using the switched capacitor techniques to measure the g-cell capacitors, and thus to extract the "acceleration data" from the difference between the two capacitors. The ASIC also performs signal conditioning and filtering, by providing a digital output that is proportional to the acceleration in relation to the JFT programmed scales, of which is depicted in Figure 6.

Evidence of Touch Contact on a LCD
In the application of touch-contacting, this approach uses the ADS7843 device which is a 12-bit sampling Analog-to-Digital Converter (ADC) device along with a synchronous serial interface, both low on resistance, switching them for driving the touch-on during interruption. This is patented device including a shutdown mode which only needs power dissipation under 0.5µW during contact. An onboard switch makes this sensor ideally to experiment the sensory theory, and its associated instrumentation, the schematics in Figure  7 illustrates the TFT at work, and expressed in Figure 8.

Results of Python Based FCT in a Sequential Test Procedure
JFT uses Python as the high-level language, and the Python is a well-known object-oriented interpreter-based language, and is a freeware from www.python.org, which is installed on the JTAG's Provision Development System, and their results of the above test procedures are depicted in the following Figure 9.

Tracing on an SoC Based Board via the MODBUS-RTU Protocols: Case Study B)
An NXP [18] based automotive circuit board is proposed for this case study B), the iMX 6 Dual/Quad automotive processors represent an SoC-based processing power, with a high degree of functional integration. These processors were developed to meet the requirements in automotive infotainment, telematics, HMI, and display-based clusters like the one in Figure 10.
This block diagram of unit under case study is depicted in Figure 11, red marked terminals on both figures led to develop a series of software applications based on the open architecture from the MODBUS protocol. It is used to accept database in complex proceedings, due to its easy use and portable in file exchanges, and that is chosen for this study.
[13] This is used to communicate between devices through the serial interface of RS-485 linking with the Modbus/RTU. This paper proposes a strategy to represent the data, object file (compiled file) in an XML format. This XML file will be sent to other devices through the serial interface of RS-485 using Modbus based Remote Terminal Units (RTU). The process "traceability" word is used to store all the different steps of the procedure in a VB.NET as follow: Each X correspond to 1 Bit

Party Check
The above stated WORD in party is corresponding to its fourth byte; for an example, PPPP 0101 0000 0000 where the Ps corresponding to the word's parity; such as ABCD 0101 1111 0001; In case of computation mode, complemented exclusive OR of the first three bytes, to be experimented as follows: A=complement of (0+1+0)=0 B=complement of (1+1+0)=1 C=complement of (0+1+0)=0 D=complement of (1+1+1)=0 The parity is represented as "0100", this computation is applied to validate the consistency of a word used in the process which is reading in a consistent word: 0100 0101 1111 0001, i.e., the process of traceability in words is used to store all the different steps as follows: Where: Each X correspond to 1 Bit Assuming, the definition of parameters, i.e., P112, at its communication address I-254, when the system using RS-485 protocols to perform serial communication under supervision of MODBUS, each driver associated address is unique, and not repeatable, unless using "0" for broadcasting. With regarding RTU transmission, every 8-bit data is formatted in 2x4 bits per 16-bits word in carriage return check (CRC), they are formatted as follows: RTU format: START (P112) ADR 8-bit address (I-254) CMD 8-bits instruction DATA (n-1)....... DATA 0 CRC CHK Low CRC CHK High END end:

Case Study of the NXP 6Q Board Under Testing
The i.MAX Dual/6 Quad processors represent the integrated multimedia processors. These processors are part of a growing family of multimedia that is focused, featuring an advanced implementation of the quad Arm® Cortex®-A9 core, and which operates at speeds up to 800 MHz. They include 2D and 3D graphics processors, 1080p video processing, and integrated power management. [9][10][11].
Each processor consists of a 64-bit DR3/DDR3L/LPDDR2-800 memory interface and several other interfaces for connecting peripherals, such as WLAN, Bluetooth®, GPS, hard drive, displays, and camera sensors, the block diagram is shown in Figure 11 below. This exercise has prepared to use "transferability" to validate the above-mentioned ADAS related algorithms in FCT, and to define the systems-related sensors such as camera rigging to produce images in the data-set in a test sequence, to mimic the off-road conditions related to control and command systems as to a human behavior model. Figure 11. The architecture of the NXP 6Q board under "traceability" study. Their Traceability by Boundary Scan Technology

Generation of .BAS drivers (VB.net) for MODBUS
This design approach utilizes the Modbus protocol stacks for C#, VB.net, Java, and for C++ while they are maintaining similar functionality. The C++ editions of the Modbus, aren't much different in VB.net, drivers of which written as follows: Attribute VB_Name="modProcessTraceabilityStatusWords" Public Type TraceAndStatusWords int_step_count As Integer str_grid_display_flag () As String str_execute_type () As String str_execute_description () As String str_execute_param () As String dbl_rb_traceability_word As Double dbl_new_traceability_word As Double dbl_pass_status_word As Double dbl_fail_tatus_word As Double str_log As String str_status As String str_time As String End Type Besides, XML is a general-purpose tag-based language, used to transfer and store data across applications. XML is a platform-independent language so that the information formatted in XML can be used in any other platform, i.e., the VB.net format, thus chosen for traceability study, and that provides a sequence of reading, writing and other operations in XML formatted files as well.

Conclusion
In conclusion, this R&D work demonstrates using an MCU-based NXP chip to experiment the automotive sensory-related motions in the areas of vibration, pressure, temperature, and detection. They are accompanied by the advancement of JTAG based boundary-scan technology as per IEEE1149.1 specified functional test (FCT), written in Python language. Further, this proposal applies another NXP i.MAX Dual/6 board with a built-in SoC chip, to validate the automotive electronics required traceability, through a string of MODBUS-based RS-485 protocols. This is made to data linking the Remote Terminal Units (RTU), written in the standard net.XML. This procedure is to execute the protocol in a 16-bit word, recording the performance of the devices under evaluation through the VB.net-based computer programming. In this study, the next step of work is planned to pursue a higher degree of execution, related to the area of the IEEE1149.7 based Signature Analysis (SI). The SI is a linear calculation as averse to the current vector-based boundary scan test, it gives validation of the automotive electronics during autonomous driving conditions. [14,16]