|Title of Invention||
SYSTEM FOR PROCESSING DATA FOR DISPLAY ON A MATRIX SCREEN
|Abstract||System for processing data for display on a matrix screen, of the type comprising a symbol generator (101) connected to an image memory (103) itself connected to a correlator (105) making it possible to implement a processing based on microregions so as to generate the final image to be displayed on a matrix screen (102), characterized in that the image memory (103) is organized so as to be able to read n pixels in parallel and in that the correlator (105) is organized so as to process these n pixels in parallel.|
|Full Text||FORM 2
THE PATENTS ACT 1970
[39 OF 1970]
THE PATENTS RULES, 2003
[See Section 10; rule 13]
"SYSTEM FOR PROCESSING DATA FOR DISPLAY ON A
THALES AVIONICS S.A., of Aerodrome de Villacoublay , F-78140 Velizy Villacoublay, France,
The following specification particularly describes the invention and the manner in which it is to be performed:
SYSTEM FOR PROCESSING DATA FOR DISPLAY ON A MATRIX SCREEN
The present invention relates to a system for processing data for display on a matrix screen. It applies more particularly to the displaying on a liquid crystal screen of the symbolic representations relating to the parameters for aiding the piloting and navigation of an aircraft.
The various mechanical or electromechanical instruments intended for advising the pilot of an aircraft as to the behaviour of the latter, its position in space, the course to be followed, engine monitoring etc., have long since been begun to be replaced by visualization systems on which these indications are displayed in a synthetic manner. In particular, this allows progress towards ever more symbolic representation of these various parameters, thus affording the pilot a much more vivid and hence much more directly meaningful representation of the situation encountered. The hardware used initially comprised cathode-ray tubes on which the display was undertaken in so-called "bird's eye" mode. Technical progress has led to the replacement of these tubes by flat screens, generally liquid crystal screens, the matrix control of which imposes "television" scan type pictorialization. Furthermore these liquid crystal screens allow colour visualization, which is universally used nowadays and which requires a particular addressing of the primary colour subpixels forming the coloured pixels proper.
The digital processing of the various data originating from the sensors, making it possible to define the symbols displayed on the screen, quite naturally leads to the obtaining of display data in a vector form which is particularly suited to "bird's eye" scanning. Television scanning is achieved in a well known manner by determining in a processor the values of the
luminance and of the chrominance of each pixel of the matrixwise controlled screen. These values are stored in a random access memory, so as to follow the data stream corresponding to the bird's eye display. This memory is subsequently read sequentially to achieve television display. In fact, two memories are used, written and then read alternately so as to ease their management.
The transformation system thus briefly described exhibits various drawbacks. More particularly the strokes represented by alignments of pixels are too small to be viewed properly, the oblique strokes form staircases, and the colours at the points where several strokes cross blend to give false colours.
In a patent filed on 28 August 1987 under No. 87 12 039 and granted on 29 April 1994 under No. 2 619 982, the company THOMSON-CSF proposed a solution to this problem, consisting in using a set of subpixels, dubbed a microregion as it is widely known, to represent each dot. The distribution of the luminances and chrominances of the subpixels within these microregions obeys a law which is variable as a function of the result to be obtained and which makes it possible to alleviate the various drawbacks mentioned above. For example the representation of a stroke will correspond to a distribution of the luminance having the shape of a Gaussian in a direction transverse to this stroke, and this will give the desired thickness for good visibility and will "erase" the staircase effects. Numerous distribution laws which make it possible to tackle most of the situations encountered are currently known. In this basic patent, the processing corresponding to the use of these microregions, often referred to as filtering, is performed in a processing unit known as a "UMIP", standing for microregion unit, placed between the pixel memory and the matrix screen. This implies that the digital processing is performed
on all the pixels, thus requiring particularly considerable computational power.
In a French patent application filed on 23 August 1990 under No. 90 10587, published on 3 February 1995 under No. 2 666 165, and granted via the European channel on 2 6.04.1995 under No. 0472463, the company SEXTANT Avionique proposed that the processing defining the microregions be performed by placing the UMIP performing this processing ahead of the image memory. The throughput of the processing in this UMIP is thus much lower, since it corresponds only to the dot actually displayed, but on the other hand the size of the image memory must be much larger, since it is necessary to store n times the set of pixels of the screen, n being equal to the number of pixels contained in a microregion.
It will be noted in passing that all these systems, both those of the prior art and that of the invention, apply equally to the processing of pixels as to that of subpixels. The choice between the processing level is made essentially as a function of the nature of the display screen used, which may allow either global processing as in the case of "STRIPE" type displays, or which requires processing at the subpixel level as in the case of "QUAD" type displays.
Therefore, in the standard case of a microregion composed of 4x4 = 16 pixels the volume of the memory is multiplied by 16. Such a memory is technically realizable but it has a prohibitive volume and a prohibitive cost.
In a patent application filed on 21 December 1995 under No. 95 15 261 and granted on 6 February 199 8 under No. 2 742 899, the company SEXTANT Avionique proposed an improvement to the previous system consisting in inserting between the UMIP and the image memory a
device substantially equivalent to a cache memory, which makes it possible to limit the matrix aspect due to the microregions to a single dimension, transverse or vertical. The volume of the image memory is thus partially limited, but one introduces the need to empty the cache memory regularly when it is full, this requiring that the processing be stopped during this time and entailing a reduction in the processing capacity of the graphics generator.
To alleviate these drawbacks, the invention proposes a system for processing data for display on a matrix screen, of the type comprising a symbol generator connected to an image memory itself connected to a correlator making it possible to implement a processing based on microregions so as to generate the final image to be displayed on a matrix screen, mainly characterized in that the image memory is organized so as to be able to read n pixels in parallel and in that the correlator is organized so as to process these n pixels in parallel.
According to another characteristic, the correlator is divided into two parts making it possible to process the luminance and the chrominance separately so as to make it possible to perform a hierarchical processing of the colours.
According to another characteristic, it comprises means for separately processing the colour of the strokes and the colour of the background, and a mixer for making it possible to outline the elements of scenery displayed on the background in tone on tone mode;
According to another characteristic, the correlator is organized in m substantially identical parallel lines making it possible for the m pixels of one of the axes of the microregions used to be processed in parallel.
Other features and advantages of the invention will become clearly apparent in the following description presented by way of nonlimiting example with regard to the appended figures which represent:
Figure 1, a general schematic diagram of the
system according to the invention;
Figure 2, the timing diagram for the operation
of a system according to the invention;
Figure 3/ a schematic diagram of a correlator
intended for a system according to the
Figure 4, an example of tables of filters
intended to be implemented in a system
according" to the invention,
Figure 5, a detailed schematic diagram of a
subset of the correlator 3 03 of Figure 3;
Figures 6a and 6b, a complete schematic diagram
of this same correlator;
Figures 7 and 8, illustrations of the luminance
chrominance product at the output of the system
according to the invention; and
Figure 9, a schematic diagram of a mixer making
it possible to perform the processing
illustrated in Figures 7 and 8.
The invention therefore proposes to place the UMIP between the image memory and the matrix screen, this corresponding to the basic structure described in the first patent cited above. The volume of the memory is then strictly limited to the quantity required to represent the set of pixels and subpixels of this matrix screen, thereby very substantially limiting the volume and cost thereof. To be able nevertheless to obtain the hign capacity to draw tracks with a sufficiently small throughput, the processing between the memory and the UMIP is performed in parallel on n pixels or subpixels. The number of dots processed per cycle is thus multiplied by n and the throughput of the
UMIP, for the same display capacity, is itself multiplied by n.
In the exemplary embodiment described below, we confine ourselves to a device making it possible to process the subpixels of the display two by two using microregions of size 4 by 4. This example corresponds to standard practice with regard to the size of the microregions, in conjunction v/ith the use of a QUAD type display, which imposes processing at the subpixel level.
Represented in figure 1 is a general schematic of a system according to the invention.
This system therefore comprises a symbol generator 101, known in the art, which makes it possible to obtain the values of the positions and of the chrominances of the various subpixels intended to represent the symbols which will ultimately be displayed on a display screen 102 of the LCD type.
The data thus obtained from the generator 101 are stored in an image memory 103. This memory is of the double page type, .each page of which possesses a capacity at least equal to the number of subpixels of the display 102.
This double-page organization makes it possible, in a known manner, to simultaneously write to a page from the symbol generator and read from the other page for transmission to the display via processing means of the UMIP type 104.
According to the invention, the memory 103 is furthermore organized in such a way as to allow simultaneous reading of two subpixels in parallel, it being possible to do this without any particular problem with the means known in the art.
The UMIP 104 comprises on the one hand a correlator 105 having two paths in parallel and on the other hand a sequencer 106.
This sequencer makes it possible to manage the registering in the memory 103 of the information originating from the symbol generator 101, and on the other hand to synchronize the reading of this memory with the processing in the correlator, as well as the displaying on the screen 102 of the subpixels thus processed. This sequencing is performed according to a timing diagram which is illustrated in Figure 2. The synchronization signal is provided simultaneously to the symbol generator 101, to the image memory 103, to the correlator 105 and to the display 102.
By way of example, the real-time cycle running between two synchronization pulses lasts 16 ms.
This sequencer is formed of a set of logic circuits operating on the basis of a clock and which are connected so as to deliver, according to Boolean logic for example, the signals required by the various entities to which the sequencer is linked. To obtain the most compact set possible, the sequencer is preferably installed in a known manner in a circuit of the FPGA type.
According to the invention, the correlator 105 allows the parallel processing of two dots with microregions of size 4X4. This makes it possible to obtain real-time processing corresponding to the rate of display of the subpixels in the display 102.
The position, determined by the generator 101, in the subpixel of the dot to be displayed makes it possible to determine the filter (type, or profile, of the microregion) to be used to move the luminous dot in this subpixel in such a way as to obtain the desired
effect. To do this, 16 different filters are used, thereby allowing processing whose fineness is 1/4 of a subpixel. The operations for processing the luminance and the chrominance are separate. Colour codes are used to represent the chrominance, this making it possible to manage a priority between these colours when the tracks of two symbols overlap, by displaying for example a red dot at the crossover of a red line and a blue line.
Furthermore, to be able to make it possible to distinguish symbols whose colour is the same as that of the background, for example a white line on a white background, the correlator performs an outlining of the patterns, consisting for example in edging this white line with two fine black lines.
Represented in Figure 3 is a schematic diagram of the correlator 105.
The latter receives as input the values of the positions and of the colours (chrominances) of the two subpixels 1 and 2 read in parallel from the memory 103. The values of the positions are applied to two identical tables 3 01 and 3 02, which contain the values of 16 filters (microregions) used. The values of these filters have been determined, either experimentally or by calculation, so as each to correspond to an offset between the position of the physical subpixel and that of the subpixel drawn, as explained above. For each subpixel, a filter is therefore selected respectively from each table.
Each of these filters contains luminous weighting coefficients of the 4x4 subpixels which make up the microregion corresponding to the filter. In the exemplary embodiment described this number of luminous levels is limited to 8, this being entirely adequate as experience shows. Hence, for each incoming subpixel,
the tables of filters 301 and 302 each make it possible to obtain 16 coefficients of luminous levels each corresponding to one of the subpixels of the microregion.
By way of example, represented in Figure 4 is a table of 16 filters each of which is selected as a function of the shifts dx and dy of the subpixel with respect to the luminous centre of the microregion.
These coefficients are then applied to a luminance correlator 303 which will be described later. The values of the colours of the subpixels 1 and 2 are for their part applied to a chrominance correlator 3 04, itself described later.
The data originating from this chrominance correlator are then applied on the one hand to a stroke colour generator 3 05 and on the other hand to a background colour generator 306, themselves also described later.
Finally, the outgoing data from the luminance correlator 3 03 and from the two colour generators 3 05 and 3 06 are applied to a mixer 3 07, itself described later, which ultimately delivers the actual values of the subpixels 1 and 2 to be displayed in the matrix screen 102 to obtain the visualization effect.
The luminance and chrominance correlators 3 03 and 3 04 are formed by the union of independent and generic subsets whose number is equal to that of the subpixels contained in the vertical dimension of the microregions. Subsequently in this text we shall refer to these subsets as "lines" since they serve to process the successive subpixels of a display line of the matrix display.
The link between these various lines for taking into account the relations between the subpixels of the
microregions in the vertical direction is effected by way of FIFO type memories placed at the output of the lines and which reinject the content of the outputs into the lines. This aspect of the correlators will be described in relation to the complete schematic represented in Figure 6.
Represented in Figure 5 is the schematic of one of these lines, comprising a correlator for the luminance and a correlator for the chrominance. These correlators essentially use logic functions of the OR, SUP and SUP/ECR type. These functions will be described subsequently in this text. This diagram also comprises D-type flip-flops 504, the well-known role of which is essentially to ensure the link between the other entities while simultaneously affording a memory effect and a delay effect so as to comply with the sequencing required for overall operation. In this schematic diagram, on each occasion just one D-type flip-flop has been represented for the understanding of the manner of operation but there will if required be the necessary number thereof in series so as to obtain proper sequencing.
The luminance correlator thus embodied makes it possible at an instant T to combine the coefficients of two new incoming microregions with the coefficients already contained in the correlator and which originate from the successive correlations of the coefficients of all the previous microregions. The values of the coefficients of the microregions immediately preceding those incoming will in the general case be predominant but, as in any correlation, the coefficients of the earlier microregions will have some effect which will wane as they become more remote in time.
The luminance correlator embodied according to this diagram makes it possible to obtain a smoothing effect on the actor elements of the image (the strokes) which
pass through it. On the other hand in this exemplary embodiment the scenery elements of the image (the background) are not smoothed and hence do not pass through the luminance correlator. It would nevertheless be possible, by way of a variant embodiment, to use a second luminance correlator to smooth the elements of the scenery also.
The chrominance correlator, as embodied in this exemplary embodiment, comprises two paths which allow independent processing of the actor elements of the image and the background scenery elements, as defined above. To do this, each incoming subpixel comprises an attribute, generated at the level of the symbol generator 101, which makes it possible to route the corresponding information towards the stroke path or towards the background path. This attribute also makes it possible to route the subpixels corresponding to the scenery elements towards the luminance path.
The data corresponding to the colours, computed in the symbol generator, are so in the form of colour codes which are hierarchized. This makes it possible to obtain priority in -the display of certain colours, so as on the one hand not to have a blend of colours giving an erratic result, and on the other hand to allow through certain priority information. In this regard reference may be made to the example given above of the crossing of a red stroke and a blue stroke. For this, the stroke colour path is connected to the luminance path in such a way as to correctly manage the intersections and the superpositions of strokes of different colours, which therefore comprise different levels of priorities on display. This hierarchy is obtained in the diagram with the aid of the SUP functions, which are hard-wired in such a way that after correlation only the high-order codes corresponding to the priority colours are preserved.
In the example described, the background path merely duplicates the colour codes entering by way of the OR function 501. It therefore does not make it possible to deal with the problem of the superposition of two different colours for the background. This corresponds to a simplification which is justified by the fact that in the modes of display used hitherto this kind of conflict does not exist. For this problem to be dealt with in the future, it would be entirely possible to use, as for the stroke path, SUP functions to make it possible to manage the hierarchy between these colours. This hierarchy would itself be obtained with the aid of the colour codes as for the stroke path.
The action of the colour correlators is to thicken the theoretical track with a square profile of width equal to the width of the microregions, that is to say 4 subpixels in the exemplary embodiment described. To do this, two subpixels are processed simultaneously by injecting the respective coefficients of the associated microregions into the interlaced structure of the two channels of the correlators. The processing is synchronous, that is.to say that at each clock edge the coefficients propagate from cell to cell so as to undergo the correlations. The D-type flip-flops are used to perform this propagation. The correlation with the results of the correlations performed on the previous lines is performed at the level of the last cells of the correlators, which receive, via return paths originating from FIFO memories loaded with these previous results, the coefficients corresponding to these results.
The SUP/ECR function is a complex logic function which possesses 3 coefficient inputs, which will be denoted A, B and C, 2 control inputs, denoted E and ABC, and an output denoted S. It is carried out by the conventional means of combinatorial analysis, in such a way as to
perform the functions corresponding to the following truth table:
E ABC S Comments
1 1 c C overwrites A and B
1 2 B B overwrites A and C
1 4 A A overwrites B and C
0 3 sup(B,C) retain the larger of B or C
0 5 sup(A,C) retain the larger of A or C
0 6 sup(A,B) retain the larger of A or B
0 7 sup(A,B,C) retain the largest of A, B or C
This SUP/ECR function is used in the luminance correlator to combine luminous levels on the basis of the two control inputs which receive as drive signals those originating from the corresponding outputs of the SUP functions.
The SUP function is used in the chrominance correlator to combine colour codes.
It comprises three inputs intended for the coefficients, which will be denoted A, B and C, and three outputs, denoted S, E and ABC, intended to be connected to the corresponding inputs of the SUP/ECR functions described above. It too is carried out according to the conventional methods of combinatorial analysis so that the values of the outputs as a function of the values of the coefficients: input comply with the following truth table:
Luminance coeff. E ABC S Comments
A>B and C 1 4 A overwriting by A
B>A and C 1 2 B overwriting by B
C>A and B 1 1 C overwriting by C
A=C>B 0 5 A blend A and C
A=B>C 0 6 A blend A and B
B=C>A 0 3 B blend B and C
A=B=C 0 7 A blend A, B and C
In the example described the complete correlator, represented in Figure 6, comprises four lines.
As was explained above, to obtain the desired correlation the output of each line is reinjected onto the last stage of the previous line with the aid of FIFO type memory 601. Thus line 4 feeds line 3, line 3 line 2 and line 2 line 1.
The output of line 1 is therefore that of the correlator itself, which determines the luminance and the chrominance of the subpixels 1 and 2.
For the luminance the value obtained has to be
multiplied by a fixed factor so as to adapt it to the
dynamic range of the display used. This is carried out
in the mixer 604.
For the chrominance on the other hand, since only colour codes are available, it is necessary to transform them into levels of intensity for each primary component, red, green and blue. These colour codes are therefore transformed in a stroke colour generator 602 on the one hand and a background colour generator 6 03 on the other hand into three colour levels, for each primary colour. The number of these levels as well as their distribution is adapted to the type of display used, according to a known method.
When using a display of known QUAD type for example, with as in the exemplary embodiment described in this text, operation at subpixel level, each outgoing colour code is transformed into a single primary colour as a function of its position in the output stream. In this way different intensity levels can be assigned to each of the two green subpixels of the QUAD pixel.
Ultimately the outgoing data from the correlator corresponding to the luminance, to the stroke colour
and the background colour of the two pixels, are combined in a mixer 604 which makes it possible to construct the subpixels actually intended for display in the matrix display. It can carry out two distinct functions.
A first function consists in performing the luminance
times chrominance product so as to obtain inside an
object of specified colour the intensity profile of the
Thus, as represented in Figure 7, by taking for example a cross section through a stroke displayed with a specified colour, the colour information exhibits a rectangular shape 701 in this section, and the luminance a Gaussian shape 702. It will be noted that it is indeed this Gaussian shape which is characteristic of the processing by microregions. The product of the luminance times the colour gives a coloured Gaussian-shaped section 703, which does indeed correspond to what is desired, that is to say a colour whose intensity rises progressively from the edges of the stroke to its centre, subsequently falling symmetrically on the other side. This does indeed correspond to the thickening of the stroke so as to make it more visible, with blurring on its edges making it possible among other things to erase the staircase effects.
The second function of the mixer consists in managing the inlaying of the image elements into the background, by performing an outlining function, in particular in the case cited above where it is necessary to display a colour tone on tone, by causing for example a white line to stand out against a white background.
To do this, as represented in Figure 8, the mixer performs the product of the background times the image. The background is represented here by a rectangle 801
which is slightly wider than the image element 802. The outlined image 803 is obtained, in which it is indeed seen that the image proper, which is of the same colour as the background, comprises a Gaussian-shaped profile which terminates in two black troughs which outline the image with respect to the remainder of the background, whose level may be substantially the same as that of the Gaussian.
Since two subpixels are processed simultaneously, two identical and independent mixers which each operate in parallel will be used in the exemplary embodiment described here of the invention.
Represented in Figure 9 is a schematic diagram of an exemplary embodiment of such a mixer.
The luminance information and stroke colour information are applied to linearizing circuits 901, intended to compensate for the nonlinear response of the matrix display, more particularly in the case of LCD type displays.
The product of these luminance data and stroke colour data is obtained via the function Min 902. This function ensures that only the smallest data of the two paths are retained. This ensures that the subpixel will be blanked out if it does not correspond to the colour required and ensures a correct luminance level as a function of the luminance profile of the level fixed by the primary colour.
The display is thus saturated so as always to have a Very visible image.
The two items of information aire then applied to a multiplexer 903 controlled by the output of the MIN circuit. It delivers the stroke luminance information
LT for a subpixel belonging to the ridge of the smoothed stroke.
The background colour information is likewise applied to a linearizing circuit which makes it possible to obtain the background luminance LF, for a pixel belonging to an element of the background.
Finally, an averaging circuit 904, which receives both LT and LF, makes it possible to obtain an average luminance between that of the background and that of the stroke, for a pixel belonging to the superposition between the stroke and the background.
These three values are applied to a multiplexer 905 which is controlled by a selector 906. For this purpose this selector, which operates according to the rules of combinatorial analysis, applies the rules of the following truth table, in which LS is the outgoing luminance level from the correlator, ocl is a threshold fixed as a function of the content of the table of filters used in such a way that the central pixels of the microregions have priority in display so that the stroke may always be. seen, and a2 is a threshold fixed in such a way that the inlaying of a stroke on a low level background preserves an optimal smoothing level so as to be able to preserve the profile of the stroke:
LS Background Lum. MUX Pixel
= 0 LF 0 LF
>al X 2 LT
Finally a computation function 907 makes it possible to obtain a threshold value intended for use by external circuits to allow optimal inlaying of the synthetic
1. System for processing data for display on a matrix screen, of the type comprising a symbol generator (101) connected to an image memory (103) itself connected to a correlator (105) making it possible to implement a processing based on microregions so as to generate the final image to be displayed on a matrix screen (102), characterized in that the image memory (103) is organized so as to be able to read n pixels in parallel and in that the correlator (105) is organized so as to process these n pixels in parallel.
2. System as claimed in claim 1, wherein the correlator is divided into two parts (303, 304) making it possible to process the luminance and the chrominance separately so as to make it possible to perform a hierarchical processing of the colours.
3. System as claimed in any one of the preceding claims, wherein it comprises means (305, 306) for separately processing the colour of the strokes and the colour of the background, and a mixer (307) for making it possible to outline the elements of scenery displayed on the background in tone on tone mode.
4. System as claimed in any one of claims 1 to 3, wherein the correlator is organized in m substantially identical parallel lines making it possible for the m pixels of one of the axes of the microregions used to be processed in parallel.
day of November,
A PAL) SAGAR ICANTS
(JAY OF REMFRY ATTORNEY FOR THE
|Indian Patent Application Number||IN/PCT/2001/01463/MUM|
|PG Journal Number||24/2007|
|Date of Filing||22-Nov-2001|
|Name of Patentee||THALES AVIONICS S. A.|
|Applicant Address||AERODROME DE VILLACOUBLAY, F-78140 VELIZY VILLACOUBLAY, FRANCE.|
|PCT International Classification Number||G 09 G 1/16|
|PCT International Application Number||PCT/FR00/01232|
|PCT International Filing date||2000-05-05|