Matrix-array sensor with temporal coding without arbitration
10341587 ยท 2019-07-02
Assignee
Inventors
- Camille DUPOIRON (GRENOBLE, FR)
- Gilles Sicard (Crolles, FR)
- Arnaud Verdant (Saint-Nazaire les Eymes, FR)
Cpc classification
H04N25/77
ELECTRICITY
H04N25/766
ELECTRICITY
H04N25/75
ELECTRICITY
International classification
Abstract
A matrix-array sensor comprises a matrix of detection elements arranged in rows and columns and a readout circuit for each column, the elements of one and the same column linked to the corresponding readout circuit via a bus, each element comprising a sensor, a charge integrator configured to accumulate charge generated by the sensor, a comparator configured to generate a trigger signal when a voltage level across the terminals of this comparator reaches a threshold level, and a bus access logic circuit which is configured to receive, as input, the trigger signal and to attempt to transmit, over the bus, an address of the element in the column, wherein the elements of one and the same column have predetermined bus access priority levels, and wherein the bus access logic circuit of each element is configured: to abandon transmission of the address and reset the charge integrator of the detection element if the bus is pre-empted by an element having a higher priority level; to count the number of attempts made before being able to transmit the address; and to communicate the number to the readout circuit along with the address of the element.
Claims
1. A matrix-array sensor comprising a matrix of detection elements that are arranged in rows and in columns and a readout circuit for each column, the detection elements of one and the same column being linked to the corresponding readout circuit via a bus, each detection element comprising a sensor for generating an electric current having an intensity that is representative of a physical quantity to be detected, a charge integrator configured to accumulate charge generated by said sensor, a comparator configured to generate a trigger signal when a voltage level across the terminals of this comparator reaches a threshold level, and a bus access logic circuit configured to receive, as input, said trigger signal and, following reception of said signal, to attempt to transmit, over said bus, an address of said detection element in the column, wherein the detection elements of one and the same column have different bus access priority levels, and wherein said bus access logic circuit of each detection element is configured: to abandon transmission of said address and reset the charge integrator of the detection element if the bus is pre-empted by a detection element having a higher priority level; to count a number of attempts made before being able to transmit said address; and to communicate said number to said readout circuit along with said address of the detection element.
2. The matrix-array sensor as claimed in claim 1, wherein said bus comprises a plurality of elementary buses, the bus access logic circuit of each detection element being configured to transmit said address over an elementary bus chosen according to the number of attempts it has made before being able to transmit the address of the detection element.
3. The matrix-array sensor as claimed in claim 2, wherein each bus access logic circuit is configured to abandon transmission of the address of the detection element the moment an elementary bus of said bus is pre-empted by a detection element having a higher priority level.
4. The matrix-array sensor as claimed in claim 2, wherein each said readout circuit comprises a plurality of readout modules that are associated with respective elementary buses and wherein each bus access logic circuit is configured to abandon transmission of the address of the detection element when the elementary bus over which it is attempting to carry out the transmission is pre-empted by a detection element having a higher priority level, and to carry out the transmission otherwise.
5. The matrix-array sensor as claimed in claim 1, wherein each bus access logic circuit is configured to wait for the bus to be available after having made a predetermined maximum number of transmission attempts.
6. The matrix-array sensor as claimed in claim 1, wherein said readout circuit is configured to determine a light intensity level received by a detection element having transmitted its address from the instant in time at which said address was transmitted and the number of transmission attempts made.
7. The matrix-array sensor as claimed in claim 1, wherein each bus access logic circuit is configured to order the sensor and the comparator of the detection element to turn off after having transmitted its address, and to order them to turn back on again after a frame period.
8. The matrix-array sensor as claimed in claim 1, wherein each bus access logic circuit is configured to order the sensor and the comparator of the detection element to turn off after having made an attempt to transmit the address of said detection element at the same time, and after one and the same number of attempts, as the detection element having the priority level immediately above it.
9. The matrix-array sensor as claimed in claim 1, wherein the priority levels of the detection elements of a column are predetermined.
10. The matrix-array sensor as claimed in claim 9, wherein the priority levels of the detection elements of a column correspond to their rank in said column.
11. The matrix-array sensor as claimed in claim 1, wherein the priority levels of the detection elements of a column depend both on their rank in said column and on the number of bus access attempts already made.
12. An image sensor formed by a matrix-array sensor as claimed in claim 1, wherein said detection elements are pixels comprising, as a sensor, a photodetector.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
(1) Other features, details and advantages of the invention will become apparent upon reading the description provided with reference to the appended drawings, which are given by way of example and in which:
(2)
(3)
(4)
(5)
(6)
(7)
(8)
(9)
DETAILED DESCRIPTION
(10)
(11) The invention differs from the prior art mainly in the technique it employs to solve bus access conflicts.
(12) According to one particular embodiment of the invention, all of the pixels are reset at the same time, at regular intervals corresponding to a predefined frame period. As a variant, the reset time may vary depending on the column.
(13) Although generally the case, it is not essential for the pixels PX of the matrix MP actually to be arranged in a rectangular pattern. What is necessary is for it to be possible to identify columns, i.e. ordered series of pixels linked to one and the same readout circuit via a bus.
(14)
(15) Conventionally, the pixel comprises a photodetector PHD (typically a photodiode, for example a pinned photodiode), a charge integration capacitor INT, a comparator CMP and a bus access logic circuit CLA, connected to a bus B. In the embodiment of
(16) The photodetectorintegration capacitorcomparator assembly is completely conventional. The photodetector PHD, when it is illuminated, generates charge which is integrated by the capacitor INT, causing the voltage V across its terminals to vary. Generally, the photodetector PHD generates a current I which discharges the capacitor INT, the value of the initialization voltage of which is V.sub.RST. At a time t after initialization, the value of the voltage V is therefore:
(17)
(18) C being the capacitance value of the capacitor INT.
(19) The voltage V is applied to one input of a comparator CMP, and a threshold voltage V.sub.TH is applied to another input (not shown). When V reaches the threshold V.sub.TH, the comparator generates a (binary) trigger signal FL, which is delivered as input to the bus access logic circuit CLA. This circuit has four main functions: Transmitting, over the bus B, a signal APX, consisting of multiple bits, representing the address of the pixel within the column (stated otherwise, its rank i), to inform the readout circuit of the column that a trigger has occurred; Managing bus access conflicts between pixels of the column; to do this, it receives a binary signal from the block of pixels of the column belonging to rows of lower rank (preceding pixels), L.sub.1?L.sub.i?1, and sends a binary signal to the block of pixels of the column belonging to rows of higher rank (following pixels), L.sub.i+1?L.sub.m. Turning off (binary signals EXT1, EXT2) the photodetector and the comparator of the pixel once the signal APX has been transmitted correctly or, as will be explained below, when there is no need to transmit the information (these elements are then turned back on at the start of the next frame period); Resetting (binary signal RST) the photodetector and the charge integrator in the event of a bus access conflict preventing the transmission of the signal APX.
(20) Optionally, the bus access logic circuit CLA may also switch off the photodetector and the comparator of the pixel in order to pool the spatial information of the image; to do this, it exchanges signals with its nearest neighbors: it receives a signal from the pixel of the column belonging to row L.sub.i?1 of immediately lower rank and it transmits a signal to the pixel of the column belonging to row L.sub.i+1 of immediately higher rank. This mechanism will be described below.
(21) When it receives a trigger signal, after a time T from reset, the bus access logic circuit CLA seeks to transmit the signal APX over the first elementary bus B1. If the elementary bus B1, or any other elementary bus of the bus B, is already occupied by a pixel of lower rank, the circuit CLA abandons transmission and sends a reset signal RST to the photodetector PHD and to the integrator INT. Stated otherwise, the lower the rank of the pixel, the higher its priority level (the inverse is also possible). After a time T, the comparator generates the trigger signal anew, and the circuit CLA once again attempts to access the bus. This time, however, access is attempted over the elementary bus B2. In the event of another failure, a third and last access is attempted, after reset, over the elementary bus of highest rank, B3 (of course, the number of elementary buses, and hence of attempts, may be different and in particular greater). In the event of a conflict on this elementary bus of highest rank, with a pixel having a higher priority level, no reset takes place: instead, the circuit CLA simply maintains its request until the bus is free. To determine the light intensity level IL at the pixel, the readout circuit (or a processor processing the data provided by the readout circuit) takes into account both the time of reception of the signal APX and the number of resets performed, this number being expressed by the rank of the elementary bus used. More specifically, the light intensity IL is proportional to the intensity of the photocurrent I, which is given by:
(22)
where C is the capacitance value of the integration capacitor, V.sub.RST is its reset voltage, T.sub.R is the time of reception of the signal APX by the readout circuit, N is the number of the elementary bus used (N=1 for B1, N=2 for B2, N=3 for B3).
(23) An error is introduced only if the circuit CLA has to wait for the last elementary bus (B3) to be free.
(24) The pixel of rank 1 differs from that of
(25) Before describing the structure of the bus access logic circuit CLA in greater detail, it is appropriate to explain its operation with the aid of
(26) The flowchart of
(27) Step E0 corresponds to the overall reset of the matrix. As explained above, following this reset, the pixel PX (like all of the other pixels of the matrix) starts to integrate the charge photogenerated by its photodetector. The voltage V across the terminals of its integration capacitor varies (decreases, in general) linearly, until reaching the threshold value V.sub.TH at a time T. At this point, the comparator CMP generates the trigger signal FL (step E1). The logic circuit CLA then checks whether the maximum number of resets (two in the example of
(28)
(29) A column consisting of 5 pixels PX1-PX5, a bus formed of three elementary buses B1, B2 and B3, and a readout circuit CL are considered. The pixels PX1, PX2, PX4 and PX5 are exposed to one and the same light intensity, and the pixel PX3 to an intensity that is lower by a factor of 2.
(30) At time T.sub.1=T (
(31) At time T.sub.2=2*T (
(32) At time T.sub.3=3*T (
(33) Lastly, at time T.sub.4=4*T (
(34) As mentioned above, it is possible and advantageous also to employ a mechanism for pooling spatial information. Most often, within an image, luminosity varies little between nearby pixels. It is therefore very common for several adjacent pixels to seek to access the bus at the same time. This results in numerous conflicts, which consume energy and may even degrade the quality of the reconstructed image by causing errors in the estimation of the light intensity, as explained above for pixel PX5. According to this optional mechanism, when two adjacent pixels seek to access one and the same elementary bus at the same time, the pixel having the lowest priority level is not reset, but waits. It therefore never sends its address to the readout circuit. However, this does not lead to a loss of information, since during reconstruction of the image those pixels that have not sent their address are assigned the same light intensity as their nearest neighbor of higher priority level.
(35)
(36) At time T.sub.1=T (
(37) At time T.sub.2=2*T, the pixel PX3 accesses the elementary bus B1 and PX4 seeks to access the elementary bus B2. The conflict is resolved in favor of PX3, whose priority level is higher, while PX4 is reset. Although the access conflict takes place between closest neighbors, the mechanism for pooling spatial information does not intervene (and hence PX4 is not turned off) because the elementary buses in question are different.
(38) Lastly, at time T.sub.3=3*T, the pixel PX4 transmits its address APX over the elementary bus B3.
(39)
(40) It should be noted that the number of bus access attempts has been decreased from 11 to 7 and that the majority of pixels have been turned off earlier than in the preceding case (
(41) The longer the time taken by a pixel to transmit its address over the bus, the greater the number of conflicts, and therefore the greater the number of pixels that will be turned off by the mechanism for pooling spatial information, decreasing consumption. However, if this time is relatively long, pixels illuminated by similar but distinct intensity levels will be liable to come into conflict, and hence to be assigned an identical intensity level, which manifests as noise.
(42) Returning to the functional diagram of
(43) As illustrated by
(44) The bus selection module MCB (
(45) The bus access module MAB (
(46) The signal EB.sub.SUP and the trigger signal FL are applied to the inputs of an AND logic gate PLE1. The signal SAB output by this logic gate takes a 1 logic value if and only if FL=1 (i.e. if the trigger signal is present and the pixel must therefore attempt to access the bus) and EB.sub.SUP=0 (i.e. no pixel having a higher priority level has pre-empted the bus); this signal confirms that the bus may indeed be accessed. The signal SAB is delivered to an input, referred to as the activation input, of the address multiplexer MXA, which also receives, over another input referred to as the selection input, the signal NB. The address multiplexer NB has a plurality of outputs with M bits, which are linked to respective elementary buses (B1, B2, B3). The number M of bits must be sufficient to identify all of the pixels of a column; typically M=?log.sub.2(m)?, where m is the number of rows of the matrix and ? ? denotes the ceiling function. When it receives the signal SAB over its activation input, the access multiplexer delivers, over the output determined by the signal NB present on its selection input, the M-bit signal APX, which unequivocally identifies the pixel within the column.
(47) An element introducing a delay may be added to the input of the signal FL in the module MAB to ensure effective timing of the circuit.
(48) The signal SAB is also delivered: To an input of a NAND logic gate PLE2, which receives, over its other input, the trigger signal FL. The output signal of this logic gate is the signal RST which orders the photodetector PHD to reset and the counter CMPT to increment. To an input of an OR logic gate PLO, the output of which is the signal RST (bus occupation) which constitutes the signal RST.sub.SUP for the pixel of higher rank. Furthermore, the signal SAB is taken from an output of the module MAB to form the signal EXT2 which, just like EXT1, orders the photodetector PHD and the comparator CMP to turn off.
(49) The readout circuit receives the address signals APX, applies a timestamp thereto and transmits everything together (address; bus over which the address has been received; timestamp) to a processor which proceeds to reconstruct the image. As a variant, the readout circuit may directly calculate the light intensity associated with each pixel (equation 2) and transmit the calculated value to the processor. The production of such a circuit does not present any particular difficulty to a person skilled in the art, who is an expert in the field of digital electronics.
(50) The invention has been described with reference to one particular embodiment, but numerous variants may be envisaged. For example: As shown in
(51) The number of elementary buses, or more generally the number of possible resets in each frame, is one of the most important design parameters for an image sensor according to the invention. The greater this number, the lower the probability that the acquisition time of an address signal will be rendered incorrect by repeated conflicts (the case of the pixel PX5 in
(52)
(53)
(54)
where d is the dynamic range of the signal (for a signal coded over nb bits, d=2.sup.nb) and EQM is the mean squared error of the pixels in the image under consideration with respect to the corresponding pixels of the reference image (
(55) By increasing to 3 elementary buses (
(56) Increasing to 4 elementary buses (
(57) It is possible to implement a gradual wakeup strategy, in which the number of elementary buses used is dynamically adjusted (within the limits of a maximum dictated by the number of available conductors) according to the measured quality of the image and a required quality level.
(58) In the embodiment described above, the priority level of a pixel is entirely predetermined and more specifically depends solely on its rank within the column; this may be referred to as an intrinsic priority. According to another embodiment of the invention, the priority depends mainly on the elementary bus over which the pixel intends to transmit its address (and hence on the number of transmission attempts already made). This may be referred to as an extrinsic priority. Concretely, with reference to the architecture of
(59) The invention has been described with reference to the case of an image sensor comprising a matrix of pixels, each comprising a photodetector. The invention applies more generally to any type of matrix-array sensor comprising an arrangement of detection elements, each comprising an elementary sensor configured to generate an electric current having an intensity that is representative of (for example, proportional to) a physical quantity to be detected. This may be, for example, a heat sensor, a chemical sensor, a pressure sensor, etc.