The disclosed embodiments relate generally to electronic devices, and more specifically to systems, devices, and methods for on-vehicle sensor signal processing based on hardware realization of neural networks.
In modern vehicles, an intricate network of sensors plays a pivotal role in monitoring and collecting a vast array of data to ensure optimal performance, safety, and efficiency. These sensors, ranging from those embedded in the engine to those associated with advanced driver-assistance systems, continuously generate a substantial volume of data during operation. This data encompasses a diverse range of parameters such as engine performance, environmental conditions, and vehicle dynamics. To make sense of this wealth of information and enable informed decision-making, the data must be transmitted to a central processor within the vehicle's electronic control unit (ECU). This processor acts as the brain of the vehicle, orchestrating real-time analysis and adjustments to various systems. Efficient and timely transmission of this sensor-derived data to the processor is essential for maintaining the vehicle's optimal functionality, ensuring a smooth driving experience, and enhancing overall safety. It would be beneficial to have a more efficient data management mechanism to collect, communicate, and process sensor data of a vehicle than the current practice.
Accordingly, there is a need for methods, systems, devices, circuits, and/or interfaces that address at least some of the deficiencies identified above and provide an efficient on-vehicle data management mechanism that relies on analog hardware realization of neural networks to process sensor data, providing better power and data communication performance than the current practice (e.g., which collects and processes sensor data in a vehicle's ECU in a consolidated manner). Analog neural network circuits have been modelled and manufactured to realize trained neural networks. In some embodiments, a neural network circuit is placed in proximity to a sensor unit (e.g., vibration and pressure sensors coupled to vehicle wheels) to collect sensor data captured by the sensor unit and generate one or more output data items to be streamed wirelessly to the vehicle's ECU for further processing. The one or more output data items are communicated to the ECU in place of the raw sensor data that has a large data volume. By these means, the neural network circuit helps reserve both the bandwidth of a data communication link and power consumption of an operating sensor node of the vehicle.
Some implementations of this application are directed to a neuromorphic analog signal processor (NASP) for assessing roadway conditions of a vehicle and tire integrity (e.g., tread wear) of automotive tires. The NASP is coupled to accelerometers and/or a tire pressure sensor in a sensor unit and configured to receive vibration data captured by the accelerometers and/or tire pressure data recorded by the tire pressure sensor. In some embodiments, the sensor unit includes both the accelerometers and the tire pressure sensor and operates continuously to generate sensor data samples at a rate in a range of 0-20 kHz. Further, in some situations, the sensor data samples are transmitted directly over a wireless communication link, which consumes substantial power and can only be implemented intermittently. Alternatively, in some embodiments, the NASP receives the sensor data samples and extracts embeddings (also called descriptors, features, or output data items) from analog signals associated with the sensor data samples. In some embodiments, these embeddings significantly reduce the volume of the sensor data sample, while providing comprehensive characterization of rotational motion of the vehicle's wheel components and facilitating identification of diverse combinations of roadway conditions, tire structural integrity, tread wear, wheel bolt looseness, wheel bolt loss, and many other vehicle conditions.
In one aspect, a method is applied in on-vehicle data processing. The method includes obtaining a temporal sequence of sensor data samples that is collected by a sensor that is a tire pressure sensor or a three-axis accelerometer. The sensor is physically coupled to a tire of a vehicle. The method further includes converting the temporal sequence of sensor data samples into a plurality of first parallel data items, applying the plurality of first parallel data items to a plurality of first inputs of a neural network circuit, and generating, by the neural network circuit, one or more output data items based on the plurality of first parallel data items. The one or more output data items indicate a condition of the road, the vehicle, or a component of the vehicle.
In some embodiments, the temporal sequence of sensor data samples includes a temporal sequence of pressure data samples collected by the sensor system. The method further includes obtaining a temporal sequence of motion data samples that is collected by the three-axis accelerometer of the vehicle, converting the temporal sequence of motion data samples into a plurality of second parallel data items, and applying the plurality of second parallel data items to a plurality of second inputs of the neural network circuit. The one or more output data items are generated based on both the second parallel data items and the first parallel data items.
In another aspect of this application, a vehicle includes a neural network circuit and a sensor that is a tire pressure sensor or a three-axis accelerometer. The sensor is physically coupled to a tire of the vehicle and configured to collect a temporal sequence of sensor data samples used to provide a plurality of first parallel data items. The neural network circuit is coupled to the sensor and configured to receive the plurality of first parallel data items via a plurality of first inputs and generate one or more output data items based on the plurality of first parallel data items. The one or more output data items indicate a condition of the road, the vehicle, or a component of the vehicle.
In yet another aspect of this application, an electronic device (e.g., a sensor unit) includes a neural network circuit coupled to a sensor that includes a tire pressure sensor and/or a three-axis accelerometer. The sensor is physically coupled to a tire of a vehicle and configured to collect a temporal sequence of sensor data samples used to provide a plurality of first parallel data items. The neural network circuit is coupled to the sensor system and configured to receive the plurality of first parallel data items via a plurality of first inputs and generate one or more output data items based on the plurality of first parallel data items. The one or more output data items indicate a condition of the road, the vehicle, or a component of the vehicle.
Thus, methods, systems, and devices as disclosed are implemented based on hardware realization of trained neural networks.
For a better understanding of the aforementioned systems, methods, and devices, as well as additional systems, methods, and devices that provide analog hardware realization of neural networks, reference should be made to the Description of Embodiments below, in conjunction with the following drawings in which like reference numerals refer to corresponding parts throughout the figures.
Reference will now be made to embodiments, examples of which are illustrated in the accompanying drawings. In the following description, numerous specific details are set forth in order to provide a thorough understanding of the present invention. However, it will be apparent to one of ordinary skill in the art that the present invention may be practiced without requiring these specific details.
The techniques described herein can be used to design and/or manufacture an analog neuromorphic integrated circuit that is mathematically equivalent to a trained neural network (either feed-forward or recurrent neural networks). According to some embodiments, the process begins with a trained neural network that is first converted into a transformed network comprised of standard elements. Operation of the transformed network is simulated using software with known models representing the standard elements. The software simulation is used to determine the individual resistance values for each of the resistors in the transformed network. Lithography masks are laid out based on the arrangement of the standard elements in the transformed network. Each of the standard elements are laid out in the masks using an existing library of circuits corresponding to the standard elements to simplify and speed up the process. In some embodiments, the resistors are laid out in one or more masks separate from the masks including the other elements (e.g., operational amplifiers) in the transformed network. In this manner, if the neural network is retrained, only the masks containing the resistors, or other types of fixed-resistance elements, representing the new weights in the retrained neural network need to be regenerated, which simplifies and speeds up the process. The lithography masks are then sent to a fab for manufacturing the analog neuromorphic integrated circuit.
In some embodiments, components of the system 100 described above are implemented in one or more computing devices or server systems as computing modules.
Some embodiments store the layout or the organization of the input neural networks including the number of neurons in each layer, the total number of neurons, operations, or activation functions of each neuron, and/or the connections between the neurons, in the memory 214, as the neural network topology.
In some embodiments, the example computations described herein are performed by a weight matrix computation or weight quantization module (e.g., using a resistance calculation module), which computes the weights for connections of the transformed neural networks, and/or corresponding resistance values for the weights.
This section describes an example process for quantizing resistor values corresponding to weights of a trained neural network, according to some embodiments. The example process substantially simplifies the process of manufacturing chips using analog hardware components for realizing neural networks. As described above, some embodiments use resistors to represent neural network weights and/or biases for operational amplifiers that represent analog neurons. The example process described here specifically reduces the complexity in lithographically fabricating sets of resistors for the chip. With the procedure of quantizing the resistor values, only select values of resistances are needed for chip manufacture. In this way, the example process simplifies the overall process of chip manufacture and enables automatic resistor lithographic mask manufacturing on demand.
Stated another way, in some embodiments, a neural network includes a plurality of layers, each of which includes a plurality of neurons. The neural network is implemented using an analog circuit including a plurality of resistors 440 and a plurality of amplifiers 424, and each neuron is implemented using at least a subset of resistors (e.g., positive weighting resistors 440RP and negative weighting resistors 440RN) and one or more amplifiers (e.g., amplifier 424). The neuron circuit 400 includes a combination circuit including an operational amplifier 424, a subset of resistors 440, two or more input interfaces, and an output interface. The combination circuit is configured to obtain two or more input signals (e.g., U1 and U2) at the two or more input interfaces, combine the two or more input signals (e.g., in a substantially linear manner), and generate an output Uout. Broadly, the two or more input signals includes a number N of signals, and is linearly combined to generate the output Uout as follows:
For each input signal Ui, a corresponding weight wi is determined based on resistance of the subset of resistors 440 as follows:
For example, referring to
For each input signal Ui, a corresponding weight wi is determined as follows:
In some embodiments, the following optimization procedure is applied to quantize resistance values of each resistance and minimize an error of the output Uout:
Some embodiments use TaN or Tellurium high resistivity materials. In some embodiments, the minimum value Rmin of resistor 440 is determined by minimum square that can be formed lithographically. The maximum value Rmax is determined by length, allowable for resistors (e.g., resistors made from TaN or Tellurium) to fit to the desired area, which is in turn determined by the area of an operational amplifier square on lithographic mask. In some embodiments, the area of arrays of resistors 440RN and 440PR is formed in back end of line (BEOL), which allows the arrays of resistors are stacked, and is smaller in size than the area of the operational amplifier 424 formed in front end of line (FEOL).
Some embodiments use an iterative approach for resistor set search. Some embodiments select an initial (random or uniform) set {R1, . . . , Rn} within the defined range. Some embodiments select one of the elements of the resistor set as a R−=R+ value. Some embodiments alter each resistor within the set by a current learning rate value until such alterations produce ‘better’ set (according to a value function). This process is repeated for all resistors within the set and with several different learning rate values, until no further improvement is possible.
In some embodiments, a value function of a resistor set is defined. Specifically, possible weight options are calculated for each weight wi according to equation (2). Expected error value for each weight option is estimated based on potential resistor relative error r_err determined by IC manufacturing technology. Weight options list is limited or restricted to [−wlim; wlim] range. Some values, which have expected error beyond a high threshold (e.g., 10 times r_err), are eliminated. The value function is calculated as a square mean of distance between two neighboring weight options. In an example, the weight options are distributed uniformly within [−wlim; wlim] range, and the value function is minimal.
In an example, the required weight range [−wlim; wlim] for a neural network is set to [−5, 5], and the other parameters include N=20, r_err=0.1%, rmin=100 KΩ, rmax=5 MΩ. Here, rmin and rmax are minimum and maximum values for resistances, respectively.
In one instance, the following resistor set of length 20 was obtained for abovementioned parameters: [0.300, 0.461, 0.519, 0.566, 0.648, 0.655, 0.689, 0.996, 1.006, 1.048, 1.186, 1.222, 1.261, 1.435, 1.488, 1.524, 1.584, 1.763, 1.896, 2.02]MΩ. Resistances of both resistors R− and R+ are equal to 1.763 MΩ.
Some embodiments determine Rn and Rp using an iterative algorithm such as the algorithm described above. Some embodiments set Rp=Rn (the tasks to determine Rn and Rp are symmetrical—the two quantities typically converge to a similar value). Then for each weight wi, some embodiments select a pair of resistances {Rni, Rpi} that minimizes the estimated weight error value:
Some embodiments subsequently use the {Rni; Rpi; Rn; Rp}values set to implement neural network schematics. In one instance, the schematics produced mean square output error (sometimes called S mean square output error, described above) of 11 mV and max error of 33 mV over a set of 10,000 uniformly distributed input data samples, according to some embodiments. In one instance, S model was analyzed along with digital-to-analog converters (DAC), analog-to-digital converters (ADC), with 256 levels as a separate model. The S model produces 14 mV mean square output error and 49 mV max output error on the same data set, according to some embodiments. DAC and ADC have levels because they convert analog value to bit value and vice-versa. 8 bits of digital value is equal to 256 levels. Precision cannot be better than 1/256 for 8-bit ADC.
Some embodiments calculate the resistance values for analog IC chips, when the weights of connections are known, based on Kirchhoff's circuit laws and basic principles of operational amplifiers (described below in reference to
Some embodiments manufacture resistors in a lithography layer where resistors are formed as cylindrical holes in the SiO2 matrix, and the resistance value is set by the diameter of hole. Some embodiments use amorphous TaN, TiN of CrN or Tellurium as the highly resistive material to make high density resistor arrays. Some ratios of Ta to N Ti to N and Cr to N provide high resistance for making ultra-dense high resistivity elements arrays. For example, for TaN, Ta5N6, Ta3N5, the higher the N ratio to Ta, the higher is the resistivity. Some embodiments use Ti2N, TiN, CrN, or Cr5N, and determine the ratios accordingly. TaN deposition is a standard procedure used in chip manufacturing and is available at all major Foundries.
In some embodiments, a subset of weight resistors 440 have variable resistance. For example, the subset of weight resistors 440 includes resistors R+414, R2+410, and R1−404. Further, in some embodiments, a neural network includes a plurality of neural layers, and the subset of weight resistors 440 having variable resistance are applied to implement neurons in a subset of neural layers that is directly coupled to an output of the neural network. For example, the neural network has more than 10 layers, and weight resistors 440 having variable resistance is used to implement one or more neurons in the last one or two layers of the neural network. More details on resistor-based weight adjustment in the neuron circuit 400 are explained below with reference to
The operational amplifier 424 includes a plurality of complementary metal-oxide semiconductor (CMOS) transistors (e.g., having both P-type transistors and N-type transistors). In some embodiments, performance parameters of each CMOS transistor (e.g., drain current ID) are determined by a ratio of geometric dimensions: W (a channel width) to L (a channel length) of the respective CMOS transistor. The operational amplifiers 424 includes one or more of a differential amplifier stage 550A, a second amplifier stage 550B, an output stage 550C, and a biasing stage 550D. Each circuit stage of the operational amplifier 424 is formed based on a subset of the CMOS transistors.
A biasing stage 550D includes NMOS transistor M12546 and resistor R1521 (with an example resistance value of 12 kΩ), and is configured to generate a reference current. A current mirror is formed based on NMOS transistors M11544 and M12546, and provides an offset current to the differential pair (M1526 and M3530) based on the reference current of the biasing stage 550D. The differential amplifier stage 550A (differential pair) includes NMOS transistors M1526 and M3530. Transistors M1, M3 are amplifying, and PMOS transistors M2528 and M4532 play a role of active current load. A first amplified signal 552 is outputted from a drain of transistor M3530, and provided to drive a gate of PMOS transistor M7536 of a second amplifier stage 500B. A second amplified signal 554 is outputted from a drain of transistor M1526, and provided to drive a gate of PMOS transistor M5 (inverter) 534, which is an active load on the NMOS transistor M6535. A current flowing through the transistor M5534 is mirrored to the NMOS transistor M8538. Transistor M7536 is included with a common source for a positive half-wave signal. The M8 transistor 538 is enabled by a common source circuit for a negative half-wave signal. The output stage 550C of the operational amplifier 424 includes P-type transistor M9540 and N-type transistor M10542, and is configured to increase an overall load capacity of the operational amplifier 424. In some embodiments, a plurality of capacitors (e.g., C1512 and C2514) is coupled to the power supplies 502 and 508, and configured to reduce noise coupled into the power supplies and stabilize the power supplies 502 and 508 for the operational amplifier 424.
In some embodiments, an electronic device includes a plurality of resistors 440RN and 440RP and one or more amplifiers 424 coupled to the plurality of resistors 440RN and 440RP. In some embodiments, the one or more amplifiers 424 and the plurality of resistors 440RN and 440RP are formed on a substrate of an integrated circuit. In some embodiments, the integrated circuit implementing the neural network is packaged and used in an electronic device as a whole. Conversely, in some embodiments, at least one of the one or more amplifiers 424 is formed on an integrated circuit, and packaged and integrated on a printed circuit board (PCB) with remaining resistors or amplifiers of the same neural network. In some embodiments, the plurality of resistors 440RN and 440RP and the one or more amplifiers 424 of the same neural network are formed on two or more separate integrated circuit substrates, which are packaged separately and integrated on the same PCB to form the electronic device. Two or more packages of the electronic device are configured to communicate signals with each other and implement the neural network collaboratively.
Analog circuits that model trained neural networks and manufactured according to the techniques described herein, can provide improved performance per watt advantages, can be useful in implementing hardware solutions in edge environments, and can tackle a variety of applications, such as drone navigation and autonomous cars. The cost advantages provided by the proposed manufacturing methods and/or analog network architectures are even more pronounced with larger neural networks. Also, analog hardware embodiments of neural networks provide improved parallelism and neuromorphism. Moreover, neuromorphic analog components are not sensitive to noise and temperature changes, when compared to digital counterparts.
Chips manufactured according to the techniques described herein provide order of magnitude improvements over conventional systems in size, power, and performance, and are ideal for edge environments, including for retraining purposes. Such analog neuromorphic chips can be used to implement edge computing applications or in Internet-of-Things (IoT) environments. Due to the analog hardware, initial processing (e.g., formation of descriptors for image recognition), that can consume over 80-90% of power, can be moved on chip, thereby decreasing energy consumption and network load that can open new markets for applications.
Various edge applications can benefit from use of such analog hardware. For example, for video processing, the techniques described herein can be used to include direct connection to CMOS sensor without digital interface. Various other video processing applications include road sign recognition for automobiles, camera-based true depth and/or simultaneous localization and mapping for robots, room access control without server connection, and always-on solutions for security and healthcare. Such chips can be used for data processing from radars and lidars, and for low-level data fusion. Such techniques can be used to implement battery management features for large battery packs, sound/voice processing without connection to data centers, voice recognition on mobile devices, wake up speech instructions for IoT sensors, translators that translate one language to another, large sensors arrays of IoT with low signal intensity, and/or configurable process control with hundreds of sensors.
Neuromorphic analog chips can be mass produced after standard software-based neural network simulations/training, according to some embodiments. A client's neural network can be easily ported, regardless of the structure of the neural network, with customized chip design and production. Moreover, a library of ready to make on-chip solutions (network emulators) are provided, according to some embodiments. Such solutions require only training, one lithographic mask change, following which chips can be mass produced. For example, during chip production, only part of the lithography masks need to be changed.
In some embodiments, the one or more sensor units 602 of the sensor system are distributed on the one or more tires 620 of the vehicle 600. For example, the one or more sensor units include a plurality of sensor units 602 disposed on a plurality of tires 620 of the vehicle 600. More specifically, in an example, the plurality of sensor units 602 includes five sensor units 602A, 602B, 602C, 602D, and 602E coupled to a left front tire 620A, a right front tire 620B, a left rear tire 620C, a right rear tire 620D, and a spare tire 620E, respectively. In some embodiments, each sensor unit 602 includes a tire pressure sensor 622P (
In some embodiments, each sensor unit 602 includes a respective sensor 622, analog-to-digital converter (ADC) 624, a sensor controller 626, a wireless transceiver 628, and a power source 630 (e.g., including a battery and an associated voltage regulator). The respective sensor 622 of each sensor unit 602 is configured to measure an analog sensor signal 632 associated with tire pressure of a respective tire 620, and the ADC 624 is configured to sample and digitalize the analog sensor signal 632 based on a sampling rate (e.g., 1 KHz) to generate a temporal sequence of sensor data samples 634. Under some circumstances, the wireless transceiver 628 is coupled to the wireless communication link 612, and configured to transmit the temporal sequence of sensor data samples 634 to the ECU 606 via at least the wireless communication link 612. Further, in some embodiments, each sensor unit 602 further includes a frontend signal processor 636 coupled to the ADC 624. The frontend signal processor 636 is configured to process the temporal sequence of sensor data samples 634 to generate one or more output data items 638. The wireless transceiver 628 is configured to transmit the one or more output data items 638 to the ECU 606 via at least the wireless communication link 612. As such, the one or more output data items are transmitted continuously to the tire monitor receiver 604 while the measured sensor data samples 634 are not transmitted directly to the tire monitor receiver 604, thereby reducing an amount of data transmitted to the tire monitor receiver 604.
Additionally, in some embodiments, the frontend signal processor 636 of each sensor unit 602 includes a neural network circuit (NNC) 640 that implements a neural network 4200 (e.g., a CNN, a recurrent neural network (RNN), a transformer, and an autoencoder. The neural network circuit 640 is configured to generate the one or more output date items 638 including a condition indicator of a component of the vehicle 600. In some embodiments, the one or more output date items 638 correspond to embeddings generated by the neural network 200 based on the sensor data samples 634. In some embodiments, the neural network circuit 640 includes a plurality of operational amplifiers 424 and a plurality of resistors 440 (
In some embodiments, a sensor unit 602 of the TPMS 610 includes a three-axis accelerometer 622P (
In some embodiments, a sensor unit 602 of the TPMS 610 includes a tire pressure sensor configured to measure tire pressure data samples 634 directly. The tire pressure data samples 634 are used to determine a condition of a road, the vehicle 600, or associated components. The condition includes one or more of: a type and a condition of a road on which the vehicle is driven, a structural integrity of a tire, a condition of a tire tread, and wear or loss of wheel bolts. Additionally, in some embodiments, the tire pressure data samples 634 are transmitted continuously to the tire monitor receiver 604 having an antenna in an autonomous sensor node. Alternatively, in some embodiments, the tire pressure data samples 634 are processed by the neural network circuit 640 and converted to one or more output data items 638 indicating a road condition, a vehicle condition, and/or a condition of a component of the vehicle (e.g., a tire condition). The component of the vehicle is one or more of: a wheel hub, a suspension elements, springs, a shock absorber, and a frame. Any vibration caused by movement and moving parts of the vehicle 600 has a definite imprint (character). An imprint change is optionally determined by vibration transmitted to the wheel and then being detected by the tire pressure sensor of the sensor unit 602 of the TPMS 610.
In some embodiments, the temporal sequence of sensor data samples 634 includes a temporal sequence of pressure data samples 634P collected by the tire pressure sensor 622P. The accelerometer 622A collects a temporal sequence of motion data samples 634A, and a shift register 702B converting the temporal sequence of motion data samples 634A into a plurality of second parallel data items 704B. In some embodiments, the sensor unit 602 further includes a plurality of second latches (not shown) coupled to the shift register 702B and configured to hold the plurality of second parallel data items 704B concurrently. The plurality of second parallel data items 704B are applied on a plurality of second inputs of the neural network circuit 640. The one or more output data items are 638 generated based on both the second parallel data items 704B and the first parallel data items 704A.
Stated another way, in some embodiments, only the temporal sequence of pressure data samples 634P collected by the tire pressure sensor 622P are processed by the neural network circuit 640 to generate the one or more output data items 638. Alternatively, in some embodiments, only the temporal sequence of motion data samples 634A collected by the accelerometers 622A are processed by the neural network circuit 640 to generate the one or more output data items 638. Alternatively and additionally, in some embodiments, a combination of the pressure data samples 634P and the motion data samples 634A is processed by the neural network circuit 640 to generate the one or more output data items 638.
Further, in some embodiments, the neural network circuit 640 includes a digital-to-analog converter (DAC) 706, a neural network core 640C, and an ADC 708. The DAC 706 is configured to receive the plurality of first parallel data items 704A via the plurality of first inputs and convert the plurality of first parallel data items 704A to a plurality of analog input signals 710. The neural network core 640C is coupled to the DAC 706 and is configured to convert the plurality of analog input signals 710 to one or more analog output signals 712. The ADC 708 is coupled to the neural network core 640C, and configured to convert the one or more analog output signals 712 to the one or more output data items 638. In some embodiments, the one or more output data items 638 include a parallel data item. Further, in some embodiments, the parallel data item is serialized before it is transmitted by the wireless transceiver 628 and communicated via the wireless communication link 612.
In some embodiments, the neural network circuit 640 includes a neuromorphic analog signal processor (NASP), which is configured to process raw sensor signals captured by a sensor 622 (e.g., including a tire pressure sensor, a 3-axis, accelerometer, or both). A neural network 200 includes artificial neurons that perform computations and axons connecting the neurons based on weights between the nodes, and the neural network circuit 640 implements the neural network 200 using circuitry elements. Referring to
In some embodiments, the neural network 200 is trained and/or optimized by software programs, and converted to circuit schematics and layouts that are further realized on an electronic chip by semiconductor manufacturing technology. An area utilization rate of the electronic chip can be close to, or reach, 100% under some circumstances. In an example, weights of the neural network 200 are realized with an 8-bit accuracy level on the electronic chip. By these means, the neural network circuit 640 yields a fast time to market with desirable neural network performance, while having no or little risk of technical failure. Furthermore, in some embodiments, the NASP includes a hybrid core including an analog portion and a digital portion.
In some embodiments, the tire pressure sensors 622P or the three-axis accelerometers 622A of the sensor unit 602 are attached to vehicle wheels and configured to collect the sensor data samples 634P or 632A continuously at a sampling rate. In some embodiments, a stream of sensor data samples 634 is generated and transferred wirelessly to analytic equipment (e.g., tire monitor receiver 604 in
In some embodiments, the neural network 200 realized by the neural network circuit 640 includes an autoencoder configured to generate embeddings. The embeddings may identify a new class describing the stream of sensor data samples having a new data pattern, although the autoencoder is trained to identify a plurality of sensor data patterns that does not include the new data pattern. The neural network circuit 640 is configured to generate the one or more output data items 638 representing the embeddings outputted by the corresponding neural network 200. The one or more output data items 638 correspond to sensor data samples 634 associated with a range of different vibration signals that are provided by the TPMS having built-in vibration sensors (e.g., accelerometer 622A, tire pressure sensors 622P). In some embodiments, the one or more output data items 638 are further analyzed by a digital system (e.g., ECU 606 in
In some embodiments, a second sequence of sensor data samples 634B are collected during a second temporal window 802B, and the second temporal window 802B immediately follows the first temporal window 802A. After being generated based on the first sequence of sensor data samples 634A, the one or more output data items 638 are determined and updated based on the second sequence of sensor data samples 634B. Further, referring to
Alternatively, referring to
Alternatively, referring to
In some embodiments, a first subset of the plurality of operational amplifiers 424 (e.g., 424A and 424B) corresponds to a first layer, and a second subset of the plurality of operational amplifiers (e.g., including 424X) corresponds to a second layer that follows the first layer. Outputs (e.g., 908A and 908B) of the first subset of the plurality of operational amplifiers 424 are fed into a set of bit lines (e.g., 904A and 904B) coupled to inputs of the second subset of the plurality of operational amplifiers 424 (e.g., including 424X). Further, in some embodiments, the first layer includes an input layer of a corresponding neural network 200, and a set of bit lines (e.g., 904C and 904D) coupled to inputs of the first subset of the plurality of operational amplifiers 424 (e.g., 424A and 424B) are configured to receive the parallel data items 704A associated with the sensor data samples 634P. Alternatively, in some embodiments, the second layer includes an output layer of a corresponding neural network 200. Outputs (e.g., 908X) of the second subset of the plurality of operational amplifiers 424 provide one or more output data items 638 of the neural network circuit 640 to be transmitted to an ECU 606 (
In some embodiments, the crossbar array of resistive elements 920 includes one of: a crossbar array of NOR memory cells, a crossbar array of phase-change memory (PCM) memory cells, and a crossbar array of magnetoresistive memory cells. Each resistive element 06 includes one of: a NOR memory cell, a PCM memory cell, and a magnetoresistive memory cell.
In some embodiments, the neural network 200 has one or more first layers 1002 having adjustable weights and one or more second layers 1004 having fixed weights. The adjustable weights of the one or more first layers 1002 are adjusted after the neural network 200 is retrained or used in different situations. The neural network circuit 640 corresponding to the neural network 200 includes a plurality of first neuron circuits 400A and a plurality of second neuron circuits 400B. The first neuron circuits 400A and the second neuron circuits 400B correspond to neurons of the one or more first layers 1002 and the one or more second layers 1004 of the neural network 200, respectively. The weight resistors 440 of the second neuron circuits 400B are fixed, and at least a subset of the weight resistors 440 of the first neuron circuits 400A are adjustable, such that the neural network circuit 400 is usable after the neural network 200 is retrained or used in different situations (e.g., for individual tires). Further, in some embodiments, the plurality of first neuron circuits 400A form one or more first successive layers including an output layer 208 of the corresponding neural network 200. The plurality of second neuron circuits 400B form one or more second successive layers including an input layer 202 of the corresponding neural network 200. The second and first successive layers may be applied for data pattern detection and interpretation/classification, respectively. In some embodiments, the one or more second layers 1004 include 80-90% of all layers of the neural network 200, and the one or more first layers 1002 include remaining 10-20% of all layers of the neural network 200.
In some embodiments, the neural network 200 is trained for more than hundreds of cycles (also known as epochs). After a predefined number of cycles (e.g., 200 cycles), weights of the one or more second layers 1004 are fixed, and weights of the one or more first layers 1002 continue to be adjusted. Stated another way, in some embodiments, the one or more first layers 1002 and the one or more second layers 1004 are identified in accordance with a determination whether their associated weights are fixed after the predefined of cycles during a training process. This property is also used in a transfer learning technique. As such, the stream of sensor data sample 634 (
In some embodiments not shown, the neural network circuit 640 corresponding to the neural network 200 includes a fixed neuromorphic analog core configured to generate the one or more output data items 638 (e.g., corresponding to embeddings). The fixed neuromorphic analog core 1004 consumes substantially low power that is below a threshold power level and has a substantially low latency that is below a latency threshold. The neural network circuit 640 further includes, or is coupled to, a fully flexible digital core configured to classify the one or more output data items. The fully flexible digital core is optionally included in the ECU 606 of the vehicle 600 (
In some embodiments, the component of the vehicle 600 includes one of: a wheel hub, a suspension element, a shock absorber, and a frame.
In some embodiments, the temporal sequence of sensor data samples 634 include a temporal sequence of pressure data samples 634P collected by the tire pressure sensor 622P. The electronic device obtains a temporal sequence of motion data samples 634A that is collected by the three-axis accelerometer 622A of the vehicle 600, and converts the temporal sequence of motion data samples 634A into a plurality of second parallel data items 704B. The plurality of second parallel data items 704B is applied on a plurality of second inputs of the neural network circuit 640. The one or more output data items 638 are generated based on both the second parallel data items 704B and the first parallel data items 704A.
In some embodiments, the electronic device measures the temporal sequence of sensor data samples 634 within a first temporal window 802A (
In some embodiments, the electronic device includes a plurality of latches for holding the plurality of first parallel data items 704A concurrently. In some embodiments, the electronic device includes a wireless transceiver 628 (
In some embodiments, the electronic device includes a digital-to-analog converter (DAC) 706, a neural network core 640C coupled to the DAC, and an analog-to-digital converter (ADC) 708 coupled to the neural network core 640C (
In some embodiments, the neural network circuit 640 is configured to implement one of a convolutional neural network (CNN), a recurrent neural network (RNN), a transformer, and an autoencoder.
In some embodiments, the neural network circuit 640 further comprises a plurality of operational amplifiers 424 and a plurality of resistors 440. Each amplifier 424 forms a respective neuron circuit with a subset of resistors 440 to implement a respective neuron of a neural network. Resistances of the plurality of resistors 440 depend on weights associated with neuron inputs of the respective neuron of the neural network. Further, in some embodiments, at least a subset of the plurality of resistors 440 is selected from a crossbar array of resistive elements 906 (
In some embodiments, a subset of the plurality of resistors 440 is variable resistors 440 configured to implement one or more layers of the neural network 200. The electronic device adjusts resistances of the variable resistors 440 adaptively for the sensor of the vehicle 600. Further, in some embodiments, the one or more layers 1002 (
In some embodiments, the neural network 200 corresponding to the neural network circuit 640 is trained to identify a plurality of sensor data patterns via the one or more output data items 638, and the one or more output data items 638 are generated to identify a new pattern of sensor data samples distinct from the plurality of sensor data patterns.
The terminology used in the description of the invention herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the invention. As used in the description of the invention and the appended claims, the singular forms “a,” “an,” and “the” are intended to include the plural forms as well, unless the context clearly indicates otherwise. It will also be understood that the term “and/or” as used herein refers to and encompasses any and all possible combinations of one or more of the associated listed items. It will be further understood that the terms “comprises” and/or “comprising,” when used in this specification, specify the presence of stated features, steps, operations, elements, and/or components, but do not preclude the presence or addition of one or more other features, steps, operations, elements, components, and/or groups thereof.
The foregoing description, for purpose of explanation, has been described with reference to specific embodiments. However, the illustrative discussions above are not intended to be exhaustive or to limit the invention to the precise forms disclosed. Many modifications and variations are possible in view of the above teachings. The embodiments were chosen and described in order to best explain the principles of the invention and its practical applications, to thereby enable others skilled in the art to best utilize the invention and various embodiments with various modifications as are suited to the particular use contemplated.