The present invention relates to a serial/parallel interface module (SPI module) and to a method for reading out data from such a module.
SPI modules of this type are generally known and are used, for example, in occupant protection systems of motor vehicles, as is explained with reference to
In the case of such systems, a plurality of sensors are connected to parallel inputs of the SPI module 10, said sensors providing sensor data (which are stored in the SPI module) at regular intervals of time. These stored sensor data are read out by a microcontroller 20, which is connected to the SPI module, evaluates the sensor data and, in the event of an accident that is detected using the sensor data, triggers the occupant protection system, for example an airbag or a seatbelt pretensioner. The sensor data are, for example, pressure or acceleration data which can be used to detect an accident.
The data stored in the SPI module are read out serially via a data output DO of the SPI module 10, which is connected to a data input DI of the microcontroller 20. The SPI module 10 also has a chip select input CSI, which is connected to a chip select output CSO of the microcontroller 20, a command input DI, which is connected to a data output DO of the microcontroller 20, and a clock input CLK_SPI, which is connected to a corresponding clock output CLK_MC of the microcontroller 20.
Referring to
It is necessary to observe an activation pause tp (which is also referred to as the inter-frame time) between the individual operations of activating the SPI module, as a result of which it is not possible for the data which have been read out to be output to the microcontroller 20 immediately—in terms of time—after the request. These activation pauses contribute considerably to the total transmission duration, as will be explained below with reference to
As the complexity of occupant protection systems increases, the number of sensors used and thus also the number of memories or registers containing sensor data which are to be regularly read out from the SPI module increase. Despite the increasing amount of data, the data processing duration that also comprises reading out the sensor data from the SPI register should, however, be as short as possible.
It is an aim of the present invention to provide an SPI module, which makes it possible to read out, in a temporally optimized manner, data stored therein, and a method for reading an SPI module in an optimized manner.
This aim is achieved by means of an SPI module in accordance with the features of claim 1. The subclaims relate to advantageous refinements of the invention.
The SPI module comprises a plurality of parallel inputs for supplying data, a memory arrangement for storing supplied data in data blocks, a serial command input and a serial data output. The SPI module is designed to provide a plurality of data blocks in direct succession at the serial output upon receipt of a read signal of a first type.
Instead of a separate read command for each data block, one read command of the first type suffices, in the SPI module according to the invention, to output a plurality of data blocks in direct succession. An SPI module of this type is particularly suited to occupant protection systems in motor vehicles having a multiplicity of sensors whose data are supplied, at regular intervals of time, to an evaluation circuit or a microcontroller for the purposes of evaluation. The data from these sensors are stored in a conventional manner in the SPI module in registers provided for this purpose, the registers, unlike conventional SPI modules, not being read individually but rather together, with the result that a data sequence whose length corresponds to the length of one data block multiplied by the number of data blocks which have been read out is provided at the output of the SPI module.
The SPI module is preferably designed to provide one individual data block at its output in a conventional manner upon receipt of a read signal of a second type.
In the module according to the invention, only one activation pause occurs during the read-out operation following receipt of the read signal of the first type, as a result of which the total read-out duration is considerably reduced in comparison with conventional SPI modules.
In one embodiment, provision is made for the SPI module to have a separate input for supplying the read signal of the first type and to be designed to immediately provide the successive data blocks at the serial output upon receipt of such a read signal. This makes it possible to reduce the read-out duration further.
In the case of the SPI module, the number of data blocks which are output in direct succession can preferably be set by means of the read signal of the first type.
The present invention is explained in more detail below with reference to figures.
In the figures, unless specified otherwise, identical reference symbols designate identical parts with the same meaning.
Referring to
In this case, it is possible, in response to the burst read signal, to successively output all of the data blocks stored in the SPI module, which is expedient, in particular, when all of the data stored in the SPI module must be read out at least once at periodic intervals of time. However, it is also possible for the burst read signal to be configured in such a manner that it comprises information relating to the data blocks which are to be output in succession, as a result of which, in response to a burst read signal, only the selected data blocks are provided in direct succession at the data output DO.
Whereas, in conventional SPI modules, it is necessary to observe an activation pause before reading out each data block, only one activation pause occurs, in the SPI module according to the invention, between the receipt of the burst read signal and the beginning of the read-out operation in the case of a burst read operation in which n data blocks are read out, as a result of which the read-out duration can be considerably reduced. In comparison with the example illustrated in
In order to improve understanding,
The read-out circuit 12 is connected to the data input DI of the SPI module in order to receive read-out commands. When a burst read signal is received via the data input DI, the read-out circuit 12 reads, in direct succession, the registers 1-n which are connected to it and provides the data output DO with the data which have been read out, for the purpose of further processing in a microcontroller.
The SPI module 10 is preferably also designed to process conventional read commands which each specify one of the data registers 1-n in order to read out only the contents of one of the data registers and provide them at the data output DO.
The SPI module 10 may be designed in such a manner that, upon receipt of the burst read signal, all of the data registers 1-n, including a status register 0, if appropriate, are read. The read-out circuit 12 is preferably designed to interpret burst read signals which specify selected data registers whose contents are intended to be provided in direct succession at the data output DO. It is thus possible to provide a burst read command that specifies the address of an initial register and a number of data registers to be read starting from this initial register. It is furthermore possible to provide a burst read command that specifies the addresses of individual data registers to be read in direct succession.
A microcontroller, for example, provides the SPI module with the burst read command in the manner explained, the data which are output by the SPI module in response to the burst command being processed further by the microcontroller. Referring to
In a further embodiment of the SPI module according to the invention, provision is made for the burst read signal to be supplied to the SPI module via a separate input, as will be explained below in
The SPI module 10 has, in addition to a data output DO, a clock input CLK_SPI and, in addition to a command input DI, a first chip select input CSI1 and a second chip select input CSI2. In this case, the first chip select input CSI1 corresponds to the chip select input of a conventional SPI module 10 and is used to activate the SPI module 10 in the case of conventional read commands which, in connection with the present explanation, correspond to the read commands of the second type.
The second chip select input CSI2 is used as a signal input for the read command of the first type, that is to say the burst read command.
The functioning of this SPI module will be explained below with reference to
In the left-hand part,
The SPI module 10 interprets a low level at the second chip select input CSI2 as a burst read command, in response to which the SPI module 10 provides n data blocks in direct succession at the data output DO.
Irrespective of the concrete implementation of the burst read command, the SPI module according to the invention makes it possible to read out, in a more rapid manner, the data which are provided by sensors and are stored in the module.
In addition to reading out, in a more rapid manner, the data which are stored in the SPI module, the read-out operation explained—in which a plurality of data blocks are output in direct succession in response to the burst read command—also reduces the computational complexity in a microcontroller connected to the SPI module and facilitates improved utilization of the computing power of the microcontroller.
In this respect, the conventional transmission method shown in
If a read operation according to the invention as shown in
Number | Date | Country | Kind |
---|---|---|---|
DE103 58 974.0-53 | Dec 2003 | DE | national |