The invention relates to a method for the determination of the distance between processor units and at least one reference position in a processor arrangement, and to a processor arrangement.
When a processor arrangement having a large number of processors has been produced in such a way that the local position of the individual processors within the processor arrangement is not known, the individual processors cannot be addressed individually.
However, the processors must be organized before the use of the processor arrangement in order that the local position of the individual processors within the processor arrangement can be determined, and it is thus possible to address the processors individually within the processor arrangement.
It should be possible to carry out the organization process even when faults occur during the course of production of the processor arrangement or even when subsequent failures occur of one or more processors, or of one or more connections between the processors.
One example of a processor arrangement such as this is a pixel arrangement, with one processor being associated with each pixel in the pixel arrangement, and being able to drive that pixel. The pixel may be in the form of an imaging element or else a sensor element, so that the pixel arrangement can be configured as a display unit or as a sensor array.
Considerable problems frequently occur in a pixel arrangement having a large number of pixels, on each page particularly in the case of a large-area dot-matrix display element or a large-area sensor array.
A pixel arrangement such as this has, for example, several million image points, that is to say pixels, on each page for the situation where a so-called “electronic newspaper” is set up.
In the following text, the expression a pixel arrangement means a homogeneous pixel matrix which is driven or addressed from its edges. A display matrix such as this or a sensor matrix, that is to say in general a pixel arrangement such as this, has, for example, active non-linear selection devices such as thin film transistors (TFTs) in liquid crystal display units (LCDs) whose size and dimensions are limited by the characteristics of the thin film transistors as well as by the parasitic resistances of the data lines which are used for transmission of the signals from and to the individual pixels.
In practice, the thin film transistors have to have a current ratio between the current which flows in the on state (Ion) and the current which flows in the off state (Ioff) of 105 to 106. High electrical resistances of the very thin and very long data lines in a pixel arrangement such as this as well as a low current in the on state limit the access time to individual rows and columns of the pixels (which are normally arranged in a matrix) in the pixel arrangement.
This leads to the individual pixel elements being electrically charged only very slowly. Furthermore, an excessively high current when the pixel arrangement is in the off state, when the matrix pixel arrangement is being scanned in rows or columns leads to a charge loss of the electrical charges in the pixel capacitors when they are not actually selected. For this reason, the drive cycle, that is to say the time interval between each occasion on which the individual pixel elements in the pixel arrangement are driven, must not be too long.
The problems mentioned above are explained, for example in T. J. Nelson and J. R. Wullert, Electronic Information Display Technologies, World Scientific, Chapter 8.2, 1997 and in K. Amundson, Microencapsulated Electrophoretic Materials for Electronic Paper Displays, International Display Research Conference, 2000 in conjunction with the design of liquid crystal display units and electrophoretic display units with thin film transistors as drive transistors.
Furthermore, the production process for liquid crystal flat screens is extremely complex and susceptible to faults.
The problems described above become even worse in the case of large-area and flexible displays, that is to say in the case of large-area and flexible display units such as those for an electronic newspaper, and in particular in the situation where low-cost production methods such as printing methods for production of printable transistors are used for the switching elements, that is to say for example in the field of polymer electronics. Transistors such as these typically have an Ion/Ioff ratio of 104 to 105. In any case, the characteristics of transistors which are designed using polymer electronics are even worse than those of conventional thin film transistors based on silicon. Polymer electronic transistors such as these are, however, suitable only for display units with several hundred image rows and image columns.
One particular problem is that the yield for the production of a pixel arrangement is lower, owing to the very large area. This is due to the increased fault probability in a production process such as this. In other words, this means that the number of faulty pixels, image areas or faulty sensor points, that is to say sensor elements, becomes greater as the area of the pixel arrangement becomes larger.
When handling a very thin, flexible and possibly large-area display element, the probability of new defects or damage occurring during the handling process is also high. In the case of conventional addressing of a matrix pixel arrangement, a defect in the matrix would immediately lead to a row error or a column error or even an entire area of the pixel arrangement would fail.
In the prior art, attempts have been made to solve the problems described above by improving the characteristics of the selection transistors, that is to say in particular the ratio of Ion to Ioff and by using better production methods. Attempts have been made to provide protection against, mechanical loading of a flat screen by means of an appropriate housing or else by means of specific packaging.
One embodiment of the invention specifies a method for determination of the distance between processors and at least one reference position in a processor arrangement, as well as a processor arrangement, in which at least some of the problems relating to the prior art mentioned above are reduced.
In one method for determination of the distance between processor units and at least one reference position in a processor arrangement having a large number of processor units, each processor unit is coupled by a bidirectional communication interface to at least one processor unit which is adjacent to it. The processor units interchange electronic messages with one another, in particular between mutually directly adjacent processor units. According to the method, a first message is generated by a first processor unit which is located at the at least one reference position. The first message contains first distance information, which includes the distance between the first processor unit and the reference position, or the distance between a second processor unit, which receives the first message, and the reference position. The first message is transmitted from the first processor unit to the second processor unit. The distance between the second processor unit and the reference position is determined or stored as a function of the first distance information. The second processor unit generates a second message, which contains second distance information, which includes the distance between the second processor unit and the reference position, or the distance between a third processor unit, which receives the second message, and the reference position. The second message is transmitted from the second processor unit to the third processor unit. Each of the messages is transmitted via the bidirectional communication interface of the respective mutually directly adjacent processor units. The distance between the third processor unit and the reference position is determined or stored as a function of the second distance information. The storage is carried out locally in a local memory, which is associated with a respective processor unit. The method steps described above are carried out for all the processor units in the pixel arrangement in an appropriate iterative manner.
In principle, any desired reference position may be used, with the reference position in one embodiment being a position at which a portal processor is located, which will be described in the following text, drives the processor units in the processor arrangement, and initiates communication from outside the processor arrangement. Furthermore, the reference position may be a position within the processor arrangement, with a processor unit in this case being arranged at the reference position, and being associated with it. In this case, the reference position is located at the edge, that is to say at the uppermost or lowermost row or the left-hand or right-hand column in the situation where the processor units in the processor arrangement are arranged in the form of a matrix in rows and columns. Information is transmitted in or from the processor arrangement by means of the portal processor, exclusively via at least some of the processor units which are located at the edge of the processor arrangement.
This procedure obviously means that, on the basis of an “introduction processor unit” at the reference position, normally at the edge of the processor arrangement, that is to say at an outer pixel with respect to the processor arrangement, a first distance is allocated, for example, the distance value “1”, which indicates that the initial processor unit is at a distance “1” from the portal processor. In the situation where the distance between the processor unit which is transmitting the message and the reference position is in each case inserted into the message, and is transmitted to the processor unit intended to receive the message, the distance value “1” is transmitted by the first processor unit to the second processor unit in the first message, and the received distance value is incremented by a value “1” by the second processor unit. The incremented value “2” is now stored as the up-to-date second distance value for the second processor unit. The second distance value is incremented by a value “1” and a third distance value is generated, and is transmitted to the third processor unit, where it is stored. The corresponding procedure is carried out for all of the processor units in a corresponding manner, and the distance value which is associated with a respective processor is always updated after reception of a message with distance information, if the received distance value is less than the stored distance value.
A processor arrangement has a large number of processor units. Each processor unit is coupled via a bidirectional communication interface to at least one processor unit which is adjacent to it. In order to determine the respective distance between a processor unit in the processor arrangement and a reference position, messages are interchanged between the respective processor units, between mutually adjacent processor units, with each message containing distance information which indicates the distance between a processor unit transmitting the message or a processor unit receiving the message and the reference position (also referred to as the distance value) and with each processor unit being designed such that its own distance from the reference position can be determined or stored from the distance information in a received message.
In one embodiment of the invention, the global and direct processor drive that is provided according to the prior art and that takes place via row and column lines has been given up.
Owing to the use of only local information and the interchanging of electronic messages in particular between mutually directly adjacent processors, the procedure is very robust with respect to defects and failures occurring in individual processor units or in individual connections between two processor units.
The pixel arrangement, in one embodiment the matrix pixel arrangement, is partitioned into specific areas, for example into image blocks, and an information-processing unit, the pixel processor, is associated with each area. The area may contain one pixel or one sensor, or two or more pixels or sensors, which are each driven by one processor unit. The processors are themselves distributed in a grid which is coarser than the pixels or sensors and, obviously, this corresponds to spatial undersampling. This reduces the problems involved with wiring and addressing via column lines and row lines in the case of a matrix pixel arrangement, since the respective lines which connect the processor units to one another and to a pixel arrangement drive circuit may, according to one embodiment of the invention be designed to be larger, that is to say physically thicker and thus with a lower electrical resistance. Each pixel group processor autonomously drives the corresponding image area, for example, by means of a passive matrix drive or an active matrix drive. The size of the display subunits is chosen such that the problems as described above relating to slow charging of the pixel elements and to the very short time duration between two drive cycles do not occur with a given selection device and a given wiring technique. In principle, any desired routing rules for the image information to be displayed or for the sensor information to be recorded may be implemented in the pixel group processors so that the image information and the sensor information can be “umgeleitet” in the form of electronic data transmission even when defects occur in the display, that is to say in the display device, which means the pixel arrangement (for example in the event of physical destruction, such as a point defect in the case of holes, cracks etc.). This means that the apparatus according to one embodiment of the invention is more tolerant of defects. Thus, according to one embodiment of the invention, a pixel arrangement and a method are provided, by means of which method it is possible in a very simple manner to determine the distance between a respective pixel and a reference position and thus also the local position of a pixel within the pixel arrangement. The determination process is no longer carried out on the basis of global information, but local information, which is in each case interchanged in the form of messages between two mutually adjacent processor units. In other words, this solves the problem of determination of distances by means of self-organization based on local message interchange between mutually adjacent processor units. The self-organization method thus has different distributed local uniform algorithms, which each interchange messages via the respective bidirectional communication interface. In other words, this means that, according to one embodiment of the invention, the distance determination process for self-organization is carried out on the basis of purely local information.
According to one embodiment of the invention, the expression pixel should be understood as meaning both an imaging unit and a sound-generating unit, for example, a liquid crystal screen unit or a polymer electronics display unit, or in general, any type of screen which has a large number of pixels or a loudspeaker which produces a sound wave, or in general any element which produces an electromagnetic wave. Alternatively, the invention may be used in a pixel arrangement in which at least some of the pixels are in the form of sensor elements, that is to say the pixel arrangement in this case at least partially comprises a sensor array. This could also, for example, be a screen unit with a touchpad integrated in it which, in particular, can also be split between a number of image tiles, in other words between a number of image areas, in which case each image area may have an associated processor unit. At least some of the sensors may, in each case be in the form of sound sensors or pressure sensors (for example a piezo-crystal sensor), or alternatively a gas sensor, a vibration sensor, a deformation sensor or a tensile stress sensor.
According to one alternative embodiment of the invention, each processor unit is coupled to at least one pixel, such that the pixel can be controlled by the respective processor unit associated with it.
According to this refinement of the invention, not only the distances between mutually coupled processor units, but also the distances between the respective pixels, are determined. This is an important principle for the routing (which is used in the course of displaying image information) of incoming image information to be displayed to the individual pixels, by which the respective image information is displayed. In a corresponding manner, the distance determination for the pixels also forms the basis for routing of recorded sensor information from the pixel to the external interfaces to, for example, the portal processor.
According to another embodiment of the invention, at least some of the pixels are each in the form of a sensor. In this case, according to the invention, a distance determination process for individual sensor pixels is carried out in a large-area sensor array.
Alternatively or additionally, at least some of the pixels may each be in the form of an imaging element or, in general, an element which produces and transmits electromagnetic waves, for example, an element which generates and transmits sound. In this case, according to one embodiment of the invention, a distance determination process is carried out for individual imaging elements in a large-area, in one case matrix, display.
The processor units may each be arranged in a hexagonal area, in which case each processor unit in each case has six adjacent processor units, which are each coupled to the processor unit via a bidirectional communication interface.
Furthermore, the pixels may themselves have a hexagonal shape.
The use of a hexagonal shape results in a very high packing density in the respective arrangement.
Alternatively, the processor units may each be arranged in a rectangular area, in which case each processor unit in each case has four adjacent processor units, which are each coupled to the processor unit via a bidirectional communication interface.
Furthermore, the pixels may themselves have a rectangular shape.
According to another embodiment of the invention, before determination of the distance between the pixel processors and the reference position, the local positions of the processor units within the processor arrangement are determined in that, on the basis of a processor unit at an introduction point in the processor arrangement, position determination messages (which have at least one row parameter z and one column parameter s which respectively contains the row number and the column number of the processor unit sending the message or the row number and the column number respectively, of the processor unit receiving the message within the processor arrangement) are transmitted to adjacent processor units, and the respective processor unit carries out the following steps:
This development further extends the concept according to one embodiment of the invention of the local interchange of messages between mutually adjacent processor units since even the local positions of the individual processor units within the processor arrangement are, according to this concept, based on local position information, which is obtained only from the position information received from the directly adjacent processor unit. This allows a procedure which is very robust with respect to faults for self-organization purposes for the processor arrangement.
According to another embodiment of the invention, the processor unit's own distance value is changed using an iterative method when the previously stored distance value is greater than the received distance value increased by a predetermined value, in the respectively received message, and in the situation where a processor unit changes its own distance value, this processor unit produces a distance measurement message and sends it via all the communication interfaces to adjacent processor units, with the distance measurement message in each case containing its own distance as distance information, or the distance value which the receiving processor unit has from the portal processor.
The distance value can be changed by a value which is increased by a predetermined value than its own distance value, in one case by the value “1”.
According to a further embodiment of the invention, a pixel arrangement is provided which has a large number of pixels, which pixels are grouped to form two or more pixel groups, as well as a large number of processor units.
One processor unit is in each case associated with one pixel group, and controls the pixels in the respective pixel group.
This aspect of the invention can be seen in an obvious manner from the fact that the pixels are grouped to form groups, and in each case one processor unit is responsible for “reading” and “writing” control of the pixels in a group, specifically the pixels in a group which is associated with the processor unit.
In other words, this means that the pixel arrangement, in one case a matrix pixel arrangement, is partitioned into specific areas, for example into image blocks, and each area is associated with an information-processing unit, the pixel processor. The area may contain one pixel or some other element which produces an electromagnetic wave, a sensor or two or more pixels, elements which produce electromagnetic waves, or sensors, which are each driven by one processor unit. The processors are distributed in a coarser grid than the pixels or the sensors themselves which, obviously, corresponds to spatial undersampling. This reduces the problems associated with the wiring and addressing via column lines and row lines in a matrix pixel arrangement, since the respective lines which connect the processor units to one another and to a pixel arrangement drive circuit are larger according to one embodiment of the invention, that is to say they are designed to be physically thicker and thus having a lower electrical resistance. Each pixel group processor drives the corresponding image area autonomously, for example, by means of a passive matrix drive or an active matrix drive. The size of the display subunits is chosen such that the problems described above relating to slow charging of the pixel elements and the very short time duration between two drive cycles do not occur for a given selection device and a given wiring technique. In principle, any desired routing rules for the image information to be displayed or for the sensor information to be recorded can be implemented in the pixel group processors, so that the image information or the sensor information can be “umgeleitet” in the form of an electronic data transmission even when defects occur in the display, that is to say in the display device, which means the pixel arrangement (for example in the event of physical destruction such as a point defect, holes, cracks etc.). This leads to the apparatus according to one embodiment of the invention being more tolerant of defects. Thus, according to one embodiment of the invention, a pixel arrangement and method are provided by means of which method it is possible in a very simple manner to determine the distance between a respective pixel and a reference position, and hence also the local position of a pixel within the pixel arrangement. The determination process is no longer carried out on the basis of global information, but on local information, which is in each case interchanged in the form of messages between two mutually adjacent processor units. In other words, the problem of determining the distance by self-organization based on local message interchange between mutually adjacent processor units is solved. The self-organization method thus, has different, distributed, local uniform algorithms, which interchange the respective messages via the respective bidirectional communication interface. In other words, this means that, according to one embodiment of the invention, the distance is determined on a self-organization basis, based on purely local information.
The hierarchical grouping structure may, according to one embodiment of the invention also be applied to the processor units. In other words, this means that the processor units can themselves also in turn be subdivided into groups, which are controlled by further processor units in a different hierarchy level, with one processor unit in a “controlling” group, in this case always controlling all of the processor units in the “controlled” group.
In other words, this means that a first set of processor units can be associated with first processor groups, and a second set of processor units can be associated with second processor groups. The number of processor units in the first set of processor units is greater than the second set of processor units. The processor units in a second processor group are, according to this refinement of the invention, each coupled only to processor units in a respective first processor group which is associated with them. One processor unit in the first processor group is in each case allocated to a pixel group, and controls the pixels in the respective pixel group.
In this context, it should be noted that any desired number of different sets of processor units may be provided, which may be provided in any desired number of hierarchy levels and may in each case be grouped to form groups of processor units which are themselves controlled by a processor unit which is associated with them. This results in a large number of hierarchy levels thus further increasing the control efficiency of the pixel arrangement.
In one method for determination of the distance between the processor units and at least one reference position in the pixel arrangement having a large number of processor units, each processor unit is coupled via a bidirectional communication interface to at least one processor unit adjacent to it. The processor units interchange electronic messages with one another, in particular between mutually directly adjacent processor units. According to the method, a first message is generated by a first processor unit which is located at the at least one reference position. The first message contains first distance information, which includes the distance between the first processor unit or the distance between a second processor unit which receives the first message and the reference position. The first message is transmitted from the first processor unit to the second processor unit. The distance between the second processor unit and the reference position is determined or stored as a function of the first distance information. The second processor unit generates a second message which contains second distance information, which includes the distance between the second processor unit, or the distance between a third processor unit which receives the second message, and the reference position. The second message is transmitted from the second processor unit to the third processor units. The respective messages are in some cases always transmitted via the bidirectional communication interface of the respectively mutually directly adjacent processor units. The distance between the third processor unit and the reference position is determined or stored as a function of the second distance information. The storage is in each case carried out locally in a local memory, which is associated with a respective processor unit. The method steps described above are carried out for all the processor units in the pixel arrangement correspondingly in an iterative manner.
In principle, the reference position may be any desired position, but is a position at which a portal processor, which will be described in the following text, is located, which drives the processor units in the processor arrangement and initiates the communication from outside the pixel arrangement. Furthermore, the reference position may be a position within the pixel arrangement, with one processor unit in this case being arranged at the reference position and being associated with it. In this case, the reference position is located at the edge, that is to say in the uppermost or lowermost row or the left-hand or right-hand column for the situation where the processor units in the pixel arrangement are arranged in the form of a matrix in rows and columns. The information is transmitted in or from the pixel arrangement by means of the portal processor exclusively via at least some of the processor units which are located at the edge of the pixel arrangement.
This procedure obviously means that, starting from an “introduction processor unit” at the reference position, normally at the edge of the pixel arrangement, that is to say at an outer pixel with respect to the processor arrangement, a first distance is allocated, for example, the distance value “1”, thus indicating that the introduction processor unit is at a distance “1” from the portal processor. In the situation where the distance between the processor unit sending the message and the reference position is in each case inserted into the message and is transmitted to the processor unit that is intended to receive the message, the distance value “1” is transmitted by the first processor unit to the second processor unit in the first message, and the received distance value is incremented by a value “1” by the second processor unit. The incremented value “2” is now stored as the updated second distance value of the second processor unit. The second distance value is incremented by a value “1” and a third distance value is generated, and is transmitted to the third processor unit, where it is stored. The corresponding procedure is carried out for all the processor units in a corresponding manner, and the distance value which is associated with a respective processor is always updated after reception of a message with distance information whenever the received distance value is less than the stored distance value.
The pixel arrangement has a large number of processor units. Each processor unit is coupled via a bidirectional communication interface to at least one processor unit which is adjacent to it. In order to determine the respective distance between a processor unit in the pixel arrangement and a reference position, messages are interchanged between the respective processor units, between mutually adjacent processor units, with each message containing distance information which indicates the distance between a processor unit sending the message or a processor unit receiving the message and the reference position (also referred to as the distance value), and with each processor unit being designed such that its own distance from the reference position can be determined, or can be stored, from the distance information in a received message.
According to this embodiment of the pixel arrangement, the global and direct processor drive which is provided according to the prior art is advantageously based on row and column lines.
As a result of the use of only local information and the interchange of electronic messages in particular between mutually directly adjacent processors, the procedure is very robust with respect to defects and failures which occur in individual processor units or in individual connections between two processor units.
According to one embodiment of the invention, each processor unit is coupled to each processor unit which is in each case directly adjacent to it such that it can interchange electronic messages with the adjacent processor units.
According to this embodiment of the pixel arrangement, not only the distances between mutually coupled processor units but, furthermore, also the distances between the respective pixels, are determined. This is an important principle for routing, which is used for the purpose of displaying image information, of incoming image information to be displayed to the individual pixels, by means of which the respective image information is displayed. In a corresponding manner, distance determination for the pixels also forms a basis for routing of recorded sensor information from the pixel to the external interfaces to, for example, the portal processor.
According to another embodiment of the pixel arrangement, at least some of the pixels are in each case in the form of a sensor. In this case, the distance determination according to the invention is carried out for individual sensor pixels in a large-area sensor array.
Alternatively or additionally, at least some of the pixels may each be in the form of an imaging element. In this case, according to the invention, the distance determination process for individual imaging elements is carried out in a large-area, matrix, display.
The processor units may each be arranged in a hexagonal area, in which case each processor unit in each case has six adjacent processor units, which are each coupled to the processor unit via a bidirectional communication interface.
Furthermore, the pixels may themselves have a hexagonal shape.
The use of a hexagonal shape results in a very high packing density in the respective arrangement.
Alternatively, the processor units may each be arranged in a rectangular area, in which case each processor unit has four adjacent processor units, which are each coupled to the processor unit via a bidirectional communication interface.
Furthermore, pixels may themselves have a rectangular shape.
According to a further embodiment of the pixel arrangement, before determination of the distance between the pixel processors and the reference position, the local positions of the processor units within the processor arrangement are determined in that, on the basis of a processor unit at an introduction point of the processor arrangement, position determination messages (which have at least one row parameter z and one column parameter s which respectively contains the row number and the column number of the processor unit sending the message or the row number and the column number respectively, of the processor unit receiving the message within the processor arrangement) are transmitted to adjacent processor units, and the respective processor unit carries out the following steps:
This development of the pixel arrangement further extends the concept according to one embodiment of the invention of the local interchange of messages between mutually adjacent processor units since even the local positions of the individual processor units within the processor arrangement are, according to this concept, based on local position information, which is obtained only from the position information received from the immediately adjacent processor unit. This allows a procedure which is very robust with respect to faults for self-organization purposes for the processor arrangement.
According to another embodiment of the pixel arrangement, the processor unit's own distance value is changed using an iterative method when the previously stored distance value is greater than the received distance value increased by a predetermined value, in the respectively received message, and in the situation where a processor unit changes its own distance value, this processor unit produces a distance measurement message and sends it via all the communication interfaces to adjacent processor units, with the distance measurement message in each case containing its own distance as distance information, or the distance value which the receiving processor unit has from the portal processor.
The distance value can be changed by a value which is greater by a predetermined value than its own distance value, in one case by the value “1”.
The methods and arrangements described above are suitable, for example, for use in the following fields of application.
One embodiment of the invention provides for the processor units and, optionally and additionally, the pixels, that is to say the elements which produce and transmit an electromagnetic wave or the sensors, to be applied to textile material, and by means of electrically conductive couplings, which, for example, are woven into the textile material. Alternatively, the textile material may itself contain electrically conductive structures in order to electrically connect the processor units and/or the pixels to one another. The processor units and/or the pixels are in one case arranged at the intersections within the structure of the textile material, that is to say, for example, at the intersections of the electrically conductive warp and weft threads of a textile fabric.
In one embodiment of the invention, sound transmitters and sound sensors can be applied to the textile material as pixels, with a piece of clothing in one case being manufactured from the textile material. Using the sound transmitter and the sound sensors as pixels, it is possible to determine the position of the piece of clothing, and hence the position of a person who is wearing that piece of clothing in a room or in a building.
Furthermore, it is possible to use sensors integrated according to the invention in a piece of clothing for example to monitor the vital functions of someone who is wearing that piece of clothing.
In general, any desired sensors or actuators may be integrated as pixels in a textile material, and in one case in a piece of clothing.
In one alternative embodiment, the textile material is in the form of textile concrete, or expressed in other words is in the form of reinforcement in concrete.
A textile concrete designed in this way can thus be provided in a simple manner with, for example, pixels designed as pressure sensors and/or as vibration sensors and/or as tensile stress sensors, and/or as deformation sensors. A textile concrete according to one embodiment of the invention such as this may, in particular, be designed to be very flexible on the basis of the self-organizing method for position determination. In a building, the textile concrete may be used with the pixels and the processor units in order to detect possible danger situations in the building (excessive weight loading on a concrete ceiling), and to use the processors to transmit an appropriate warning message to a control computer which is electrically coupled to them via a building interface.
Alternatively, the textile concrete according to one embodiment of the invention may also be used for bridge construction. A bridge with a textile concrete such as this has, in particular, the advantage that it is now very easily possible to determine dangerous vibration or deformation of the bridge structure by means of the integrated pixel sensors, and to transmit an appropriate warning message to a control computer.
Another field of application for the textile concrete according to one embodiment of the invention is for road construction. A road which has the textile concrete can very easily be used for road usage (for example, the number of vehicles etc.) or else for traffic management control, and in general for traffic monitoring or even for speed control, since the pixel sensors which are integrated in the textile concrete can be used to determine the point and time at which a vehicle travels over the corresponding area of the road which is monitored, by a respective sensor.
The accompanying drawings are included to provide a further understanding of the present invention and are incorporated in and constitute a part of this specification. The drawings illustrate the embodiments of the present invention and together with the description serve to explain the principles of the invention. Other embodiments of the present invention and many of the intended advantages of the present invention will be readily appreciated as they become better understood by reference to the following detailed description. The elements of the drawings are not necessarily to scale relative to each other. Like reference numerals designate corresponding similar parts.
a to 2d illustrate plan views and a section view of individual pixels which can be provided in the pixel arrangement, in which case the pixel may have a rectangular shape (
a and 7b illustrate a directional graph (
a and 9b illustrate a sketch of a processor arrangement, modeled as a non-directional graph (
a to 12j illustrate a sketch of the routing tree from
a to 13f illustrate a sketch of the routing tree from
In the following Detailed Description, reference is made to the accompanying drawings, which form a part hereof, and in which is shown by way of illustration specific embodiments in which the invention may be practiced. In this regard, directional terminology, such as “top,” “bottom,” “front,” “back,” “leading,” “trailing,” etc., is used with reference to the orientation of the Figure(s) being described. Because components of embodiments of the present invention can be positioned in a number of different orientations, the directional terminology is used for purposes of illustration and is in no way limiting. It is to be understood that other embodiments may be utilized and structural or logical changes may be made without departing from the scope of the present invention. The following detailed description, therefore, is not to be taken in a limiting sense, and the scope of the present invention is defined by the appended claims.
The processor arrangement 100 is formed on the basis of a so-called “fluidic self assembly” (FSA) from the company Alien Technology™ as described in J. S. Smith, High-Density, low parasitic direct Integration by Fluidic Self-Assembly (FSA), IEDM, pages 201-204, 2000.
The processor arrangement 100 has a substrate 101 with a large number of depressions 102. The substrate 101 is, according to this exemplary embodiment, a thin, flexible plastic film with a large number of depressions stamped in it, via which a suspension having a large number of processor units 103, which are in the form of computer chips 103 and whose size is between 50 μm and 1000 μm, are floated in a liquid. The computer chips 103 are also referred to as nanoblocks. The size and shape of the integrated computer chips 103, which are referred to in the following text as processor units 103, corresponds to that of the depressions 102 so that the processor units 103 are automatically inserted into the depressions 102, that is to say organizing themselves.
This process is illustrated schematically in
The processor arrangement 100 is designed to form an image display device, in which the processor units are used to drive the pixels. For this purpose, an electro-optical medium (for example illuminated, reflective, etc.), an illuminating medium, is placed over the array formed by the processor units 103, to which electrical couplings are created, starting from the corresponding processor units 103 which control the electro-optical medium.
Each processor unit 103 is responsible for the pixel located directly above it, that is to say it drives this pixel, or for the pixel region located above it, that is to say a pixel area with a number of pixels which are grouped to form a pixel area.
The processor units 103 are for this reason also referred to in the following text as pixel processors 103.
In this context, it should be noted that the invention is in no way restricted to imaging elements as the processor arrangement or pixel arrangement, but can likewise be used for a sensor array with a large number of sensors which are electrically coupled to one another and are driven via in each case one or more processor units 103.
According to one embodiment of the invention, arrays may also be used which partially contain imaging elements and partially contain sensor elements.
The individual processor units 103 may, according to one embodiment of the invention, have any desired shapes, for example being rectangular as illustrated in
d illustrates a trapezoidal cross section through the respective processor units 103. The trapezoidal cross section ensures that the individual pixels are self-organizing inserted into the depressions 102 in the pixel arrangement more easily and with a greater probability.
A pixel arrangement which is in the form of an imaging system, that is to say in other words an image producing system, will be described in the following text, without any restriction to generality.
The imaging system 300 according to one exemplary embodiment of the invention is illustrated schematically in the form of a block diagram in
The imaging system 300 has a source 301 which represents the source of the information to be displayed and, according to this exemplary embodiment, contains a central processing unit (CPU), a graphics processor, sensors or other input appliances and, optionally, further components.
Furthermore, a display unit portal 302 is provided, which is electrically coupled to the source 301 and represents the function of an average between the source 301 and the actual pixel arrangement 303, which is likewise coupled to the display unit portal 302 (and which comprises the processor arrangement and the pixels). The display unit portal 302 is, according to one embodiment of the invention, used to generate a trigger, that is to say an initiation signal, according to this exemplary embodiment, an initiation message, for initialization of the self-organization, as well as for information distribution via initial processor units in the processor arrangement 303.
The processor arrangement 303 has an array of uniform, so-called intelligent pixels or pixel regions, which are formed by processor units 103 and by the pixels which are coupled to the processor units 103 and are driven by the processor units 103. The processor units 103 are networked to one another, that is to say they are coupled to one another via bidirectional communication interfaces which are associated with each of the processor units 103.
Some of the processor units 103 from the large number of processor units 103 in the pixel arrangement 303 are used as initial nodes for supplying information from the display unit portal 302 to the processor arrangement 100 for the pixel arrangement 303.
According to this exemplary embodiment, none of the processors—referred to as portal processors in the following text—of the display unit portal 302, has any information whatsoever about the size and configuration of the pixel arrangement 303. In addition, at the start of the method, none of the individual processor units 103 or the pixels which are coupled to the processor units 103 have any information whatsoever about their respective orientation, that is to say alignment, or their local position within the processor arrangement.
In addition, none of the individual pixel processors, that is to say the processor units, has any information whatsoever about its own alignment and position, that is to say its local position within the processor arrangement.
In an initialization phase, which will be explained in detail in the following text (before the first use of the pixel arrangement 303 or after stored information in the pixel arrangement 303 has been reset), the portal processor for the display unit portal 302 initiates self-organization of the processor arrangement, as will be explained in more detail in the following text.
In the course of the self-organization of the processor arrangement, the processor units 103 in the pixel arrangement 303 learn their position and alignment as well as information paths to the image construction, that is to say for supplying image information to be displayed to the respective pixels which are actually intended to display the respective image information.
This learning process is carried out using messages which are interchanged between respectively mutually adjacent processor units in the pixel arrangement 303. Part of the knowledge that has been learned is passed to the exterior again, that is to say to the display unit portal 302, to be precise, to the extent that the display unit portal 302 will require it later in order to supply the image information on the correct paths and in the correct sequence to the pixel arrangement 303 for display of a respective image to be displayed.
The nature of the image information must be taken into account for image construction, that is to say for the procedure for the information distribution of image information to be displayed within the pixel arrangement 303.
According to these exemplary embodiments, individual pixel data for display of a complete image or of a difference image, for example, for compressed video images, is transmitted to the individual pixels, that is to say to be more precise to the individual pixel processors 103. For this purpose, each pixel processor 103 is individually addressed by the portal processor in the display unit portal 302. This leads to routing of the image information (as required in order to display image information) to the corresponding pixels and thus to the corresponding processor units within the pixel arrangement. According to one embodiment of the invention, the following special features of the routing problem must be taken into account for the routing of individual pixel data:
It is thus possible, according to the invention, to distinguish between two phases with regard to the use of a pixel arrangement according to one embodiment of the invention:
In a first phase, the so-called self-organization, the following items are carried out:
In a second phase, the actual use of the pixel arrangement 303 for displaying image data, the image data is sent from the portal processor to the pixel processors, that is to say it is transmitted, by which means the image to be displayed is formed in the pixel arrangement 303.
In the situation where the pixel processors 103 have a rectangular shape, a square shape, they are, as is illustrated in
In other words, this means that this in each case makes it possible to interchange messages between two directly mutually adjacent pixel processors, but does not allow direct message interchange over a longer distance than the direct proximity of a pixel processor 103.
In order to describe the invention in a simpler form, the following text describes only the situation for the hexagonal shape of a pixel processor 103, without any restriction to general applicability.
The pixel arrangement 100 thus has two types of individual component:
The hexagonal pixel processor 103 may have six different alignments, as is illustrated in
As is illustrated in
This exemplary embodiment is based on the assumption that the portal processor for the display unit portal 302 has electrical couplings for pixel processors 103 on only one side of the pixel arrangement 100.
By definition, this is assumed to be the lower side of the pixel arrangement 100, that is to say obviously the south side, with the couplings, likewise by definition, running over the south-west side that is to say over the fifth alignment direction of the respective pixel processors 103.
In this context, it should be noted that both the positioning and the alignment of the individual points at which information is introduced to the pixel processors 103 in the processor arrangement 100 and the shape and alignment of the individual pixel processors 103 in the processor arrangement 100 are in principle undefined.
In different embodiments of the invention, the portal processor
Once the pixel arrangement 303 has been completed, the portal processor admittedly knows the number of its connections to the pixel processors 103, or in other words the number of introduction points for supplying information to pixel processors 103 within the pixel arrangement 303, but does not necessarily know the dimension and the configuration of the pixel arrangement 303, and hence of the processor arrangement, that is to say the actual shape and arrangement of the pixel processors 103 within the processor arrangement 100.
In this context, it should be noted that, in particular, a direction statement, for example the south side, need not necessarily represent a straight line within the processor arrangement 100.
In the case of method elements which will be explained in the following text, the only provision is that the individual connections between the portal processor and the pixel processors 103 should always be made at the same point, according to this exemplary embodiment and via the south-west side 604.
The individual pixel processors 103 or the connections which are both referred to as a generic term for individual components of the processor arrangement, may assume the following states:
1. Fault-Free:
The respective component in the pixel arrangement is operating without any restrictions.
2. Defective:
The respective component in the pixel arrangement has failed completely. If the component is a processor unit, then all of the connections to this processor unit must likewise be declared as defective.
3. Unstable:
The component has partial failures, for example, one direction of a bidirectional connection between the respective processor unit operates only at times (that is to say it has an intermittent contact or is operating methodically incorrectly, for example, a processor which sends an incorrect message).
In order to simplify the description of the invention, the third state is not considered in the following text, that is to say a component is in the following text assumed to be either fault-free or defective. For these exemplary embodiments it is therefore irrelevant whether a component does not exist owing to a specific form of the pixel arrangement (that is to say, for example, a display unit foil which is in the form of a triangle), or whether the respective component has become defective owing to a manufacturing fault or owing to wear having taken place.
The following text considers the clocking of the overall system, that is to say of the entire pixel arrangement 303, when information is passed on as will be explained in more detail in the following text, that is to say when electronic messages are sent between two pixel processors 103 within the pixel arrangement 303, or from the portal processor to a pixel processor 103 at an introduction point to the pixel arrangement 303.
Each pixel processor 103 in the pixel arrangement 303 is designed such that it can carry out the following actions within one clock cycle:
Within one clock cycle, an electronic message can therefore be transmitted only from one pixel processor 103 to an adjacent pixel processor 103.
However, in this context, it should be noted that, according to the invention there need not be a global common clock for the pixel processors 103 throughout the entire processor arrangement 100, although this is assumed in the following text in order to simplify the description of the invention.
In order to make it easy to understand the procedure according to the invention, the following text explains the principles relating to mathematical modeling of the pixel arrangement.
In the following text, the pixel processors 103 and the display unit portal 302 are modeled jointly as a directional graph as well as routing paths as a directional tree.
The choice of routing thus becomes a discrete optimization problem.
Definition 1 (Directional Graph, Non-Directional Graph)
(i)
based on the assumption of a set V and a set E, then: if
g:E→V2=V×V
is a map with the components
g−:E→V and g+:E→V,
that is to say
g:E→V2,
g:E→V2,
e→(g−(e),g+(e)),
so that the tuple is:
(V,E,g)
directional graph with the corner set (node set) V, edge set E and incidence map g. g−(e) is called the initial corner of the edge e ε E and g+(e) is called the terminating corner of the edge e ε E.
(ii)
Let us assume a set V and a set M. The following equivalence relationship is considered:
α:={((x, y), (y, x))εV2×V2; with x, y ε V}⊂V2×V2
with the equivalence classes
[x, y]:={(x, y), (y, x)}, for all x, y ε V.
With a map
u:M→V2/α={[x,y];x,y ε V}
the tuple is
(V, M, u)
non-directional graph with corner set (node set) V, edge set M and incidence map u.
a illustrates a directional graph 700, and
Definition 2 (Terminated Edges, Initiated Edges)
Let us assume that (V, E, g) is a directional graph and that v ε V. Then let us assume that Eterm(v) is the set of the edges terminated by v, that is to say
Eterm(v):={e ε E; g+(e)=v},
and that Einit(v) is the set of the edges initiated by v, that is to say
Einit(v):={e ε E;g−(e)=v};
Definition 3 (Path in a Directional Graph)
Let us assume that (V, E, g) is a directional graph K⊂E.
(i)
For a, b, ε V and n ε N we define
as the set of all the paths from a to b of length n with edges K (ΓKn(a,b)={ }, if no such path exists).
(ii)
For a, b ε V we define
as the set of all paths from a to b with edges from K.
Definition 4 (Directional Tree)
Let us assume that (V, E, g) is a directional graph V≠0. (V, E, g) is called the directional tree, if there is one w ε V such that
|ΓE(w, v)|=1, for all v ε V\{w}
and for all K⊂E,K≠E
|ΓK(w, v)|=0, for at least one v ε V\<w>.
This means that there is one and only one path from w to each corner v≠w, and the edge set cannot be reduced in size. The unique corner w is called the root of the directional tree.
The second condition in the above Definition 4 guarantees the uniqueness of the root, which would otherwise not exist, and prevents the existence of superfluous edges in the tree.
Lemma 5 (Characteristics of a Directional Tree)
Let us assume that (V, E, g) is a directional tree. Then for all a, b ε V
|ΓE(a, b)|+|ΓE(b, a)|≦1.
Definition 6 (Path Length, Throughput)
Let us assume that (V, E, g) is a directional tree with root w ε V. We define
(i)
for each v ε V\{w}, let us assume γE(v)ε ΓE(w, v) is the only path from w to v, that is to say
γE(w, v)={γE(v)}.
(ii)
for each v ε V\{w}, there is one n ε N, where
{γE(v)}=ΓE(w, v)=ΓEn(w, v).
We define |γE(v)|:=n as the path length of the path γE(v).
(iii)
We define |V|<∞ and all v ε V
dE(v):=1+|{z ε V; ΓE(v, z)≠{ }}|ε N
as the throughput of the node v.
Definition 7 (Branch)
Let us assume that (V, E, g) is a directional tree. We define for all v ε V
VE(v):={v}∪{z ε V; ΓE(v, z)≠{ }}
as a branch of the node v.
The Lemma is as follows:
Lemma 8 (Power of the Branch)
Let us assume that (V, E, g) is a directional tree and that v ε V. Then:
dE(v)=|VE(v)|.
The overall network of the imaging system 300, including the portal processor, is described in the following text in the form of a graph. In order to model the fact that existing connections between two nodes always have continuity in two directions, which symbolizes bidirectional communication, a non-directional graph will be considered first of all. An equivalent directional graph will then be derived, in order to define the routing.
Definition 9 (Display Graph)
Let us assume that (V, M, u) is a non-directional graph with
(i)
2≦|V|<∞,1≦|M|<∞,
(ii)
u injective (that is to say no two corners)
(iii)
u(E)∩{[x, x]; x ε V}={ } (that is to say without any loops)
(iv)
Let us assume that w ε V is an excellent node and is called a portal (node).
Let us assume that (V, E, g) is the directional graph for which: for each m ε M let us consider new elements m− and m+ such that
E:={m−; m ε M}∪{m+; m ε M}; |E|=2|M|.
The map g is chosen such that
u(m)={g(m−), g(m+)}, for all m ε M.
In addition
(v)
ΓE(w, v)≠{ } for all v ε V\{w} (that is to say, cohesively),
then (V, E, g) is called a display unit graph, which is also referred to in the following text as a display graph.
A corresponding non-directional graph 900 (see
On the basis of this exemplary embodiment, a hexagonal 4×4 pixel array with a defect is selected. The above Definition 9 is generally satisfied. The networks under consideration have further restrictive characteristics, although these will be mentioned only briefly here, initially.
For the rest of the explanation, it is worthwhile considering not only the portal node 902 but also those nodes 903 which have a direct connection to the portal node 902. As described above, these nodes are referred to as initial nodes 903, that is to say they represent the reference positions with which the initial pixel processors in the pixel arrangement are associated. The edges from the portal node 902 to the initial nodes 903 are referred to in the following text as supply lines 904 and the edges 905 between pixel processors are referred to as network connections.
Definition 10 (Supply Lines, Network Connections, Initial Nodes)
Let us assume that (V, E, g) is a display graph with portal nodes w. The set of supply lines is then defined by
Eport:={e ε E; g−(e)=w}
and the set of network connections by
Enet:={e ε E; g−(e)≠w{circumflex over ( )} g+(e)≠w}.
The set of initial nodes is defined by
Vport:=g+(Eport).
The problem which results when an electronic message is intended to be transmitted to each node in a pixel arrangement graph from the portal node within one time frame (within a refresh rate) will be considered in the following text.
If this is done, as is obvious from this description, of fixed chosen paths and if paths which have separated do not cross again, then this means that a directional tree should be chosen as the sub-graph of the pixel arrangement graph. This directional graph, which is also referred to as a routing tree, then defines the paths for the information flow uniquely, but not the dynamics of the information flow.
The routing tree is not unique; in general, the set of all possible trees is incomprehensibly large.
Definition 11 (Permissible Tree Set, Permissible Edge Set)
Let us assume that (V, E, g) is a display graph with portal nodes w ε V. The set of all permissible directional trees in (V, E, g) is defined as
B:={(V K, g |K); where K⊂E and (V, K, g|K) is a directional tree with the root w}.
The set of all permissible edge sets relating to (V, E, g) is then defined as
κ:={K⊂E; (V, K, g|K)ε B}.
One example of a permissible tree 1000 is illustrated in
The following expressions are introduced on the basis of Definition 10:
Definition 12 (Supply Lines, Network Connections)
Let us assume that (V, E, g) is a display graph with portal nodes w and that K ε κ. The set of supply lines in K is then defined by
Kport:=Eport∩K.
The set of network connections is defined by
Knet:=Enet∩K.
A number of criteria are described in the following text for assessment of trees:
Definition 13 (Tree Assessments)
Let us assume that (V, E, g) is a display graph with portal nodes w ε V and the set κ are permissible edge sets.
(i)
For all v ε V\{w} then
defines the distance between the node v and the root w in the display graph.
(ii)
For all K ε K
defines the maximum distance in the tee (V, K, g|K) defined by K.
is then the maximum distance in the display graph.
(iii)
For all K ε κ
defines the maximum throughput in the tree (V, K, g|K) defined by K.
is then the maximum throughput in the display graph.
At least the following problems may be considered in order to select the “best” trees or edge sets:
(i)
The set of trees whose nodes each have the shortest distance to the root:
Oi:={K ε κ; |γK(v)|=lmin(v) for all v ε V\{w}},
(ii)
Set of trees whose maximum separation is a minimum:
O2:={K ε κ; L(K)=Lmin},
(iii)
Set of trees whose maximum throughput is a minimum:
O3:={K ε κ; D(K)=Dmin}.
As can easily be seen O1⊂O2.
If O2∩O3≠{ }, all the trees from O2∩O3 minimize the functions L and K, and are particularly suitable as a routing tree.
If O2∩O3≠{ } is not true, then relaxed problem descriptions are necessary.
(iv)
Set of trees whose maximum separation is at the most a ε N0 greater than the minimum:
O4a:={K ε κ; L(K)≦Lmin+a}
(v)
Set of trees whose maximum throughout is at the most b ε N0 greater than the minimum:
O5b:={K ε κ; D(K)≦Dmin+b}.
For a suitable choice of a, b ε N0
O4a∩O5b≠{ }is always possible.
However, the problem can also be described as a multi-criteria combinational optimization problem with two target functions.
For the display unit graph illustrated in
The above text has explained how the paths of the information flow can be defined in the display unit network by the choice of a routing tree from a permissible tree set. In order to supply the display unit nodes with the information that is required for image construction, the portal node transmits an electronic message along these paths to each node. Parallel transmission of all the electronic messages is generally not possible, since certain capacities, such as how many messages can be transmitted via one edge in one clock cycle and how many messages can be buffer-stored in a node (queue) must not be exceeded. The timing (dynamics) for the information flow should thus be determined.
In the following text (V, E, g) is assumed to be a display unit graph with the portal nodes w. Let us assume that r:=|V|−1 and V={v0, v1, . . . vr}, v0=w. On the further assumption that K ε κ then certain “overall” routing matrices τ and, subsequently, certain “individual” routing matrices σ1, 1=1, . . . , r, can be introduced.
τ contains the information as to how many electronic messages are to be transmitted via the individual edges from K in the individual clock cycles. In this case, conditions at τ are formulated such that the capacities are complied with and there is one electronic message in each node at the end. No distinction in τ is yet drawn between different messages (that is to say the individual pixel data items). It is not yet directly evident from τ how routing of a specific individual pixel data item through the respective target pixel takes place or can take place. However, it is possible to derive from r certain “individual” routing matrices σ1, 1=1, . . . , r, which precisely describe this routing of the individual pixel data items to the target pixels v1, 1=1, . . . r. The “individual” routing matrices σ1, 1=1, . . . r, are in this case not necessarily unique, although the assessment of the routing on the basis of the routing duration depends essentially only on τ. The following text therefore considers routing as being already given by τ.
Definition 14 (Routing Map, Routing Matrix)
Let us assume that K={k1, . . . ,kr} ε κ (but note that |K|=|V|−1). cport, cnet, q ε N is assumed. A (cport, cnet, q) routing map or matrix through the tree (V,K,g|K) which is defined by K is a matrix
τ=(τij)i=1, . . . , n ε N0n,r, n ε N,
j=1, . . . , r
with the following characteristics
(i)
(ii)
for all v ε V\{w} and 1≦m≦n then
(iii)
for all v ε V\{w} and 1≦m≦n then
(iv)
for all v ε V\{w} then
cport is called the capacity of the supply lines, cnet is called the capacity of the network connections and q is called the maximum queue length.
|τ|:=n
is called the routing duration. The set of all (cport, cnet, q) routing matrices over (V,K,g|K) is referred to as
c
The extension in comparison to the already considered routing trees is primarily that τ also contains a time component.
The matrix entry τij, i ε {1, . . . n} j ε {1, . . . r} states that τij messages are transmitted via the edge kj in the ith clock cycle.
Condition (i) ensures compliance with predetermined supply line capacities and network capacities.
Condition (ii) ensures the necessary causality in the network. Messages can be passed on from a node only when they have previously been transmitted to this node (that is to say at least one clock cycle prior to this).
Condition (iii) takes account of the memory space restrictions in the nodes.
Finally, according to the condition (iv) there is one and only one message in the node after n time units.
Together with the routing tree, the routing matrix thus indicates a routing method with details of the timing of the individual steps, and which supplies the network with messages at the same time.
The following is defined:
Definition 15 (Routing)
Let us assume that cport, cnet, q ε N. A (cport, cnet, q) routing is a tuple (K, τ) comprising a permissible edge length k={k1, . . . kr} ε κ and a routing matrix τ ε Rcport,cnet,q(K). The set of all the routings is referred to as Rcport,cnet,q.
We will now see in the following text how the dynamic routing is produced for each individual node.
For this purpose, matrices σ1 ε {0,1}n,r, 1=1, . . . , r, are determined on the basis of the following algorithm:
It can easily be shown that the algorithm is well-defined and that τr=0n,r. In consequence
for all l,{overscore (l)} ε {1, . . . , r}. A matrix entry σijl=1 states that the message is passed on to v1 in the ith clock cycle via the edge kj.
Two lemmata are stated as an evidential sketch to show that the algorithm is well-defined.
Lemma 16 (to Show that a is Well-Defined)
Let us assume that 1 ε {1, . . . , r}. If τl−1ε N0n,r satisfies the condition (ii) from the Definition 14 for all v ε V\{w} and the condition (iv) from the Definition 14 for v:=el, then σ1 can be chosen on the basis of the algorithm.
Lemma 17 (Characteristics of τ1)
Let us assume that lε {1, . . . , r}. If τl−1ε N0n,r satisfies the preconditions of Lemma 16 and if σ1 is chosen on the basis of the above algorithm, then τ1 also satisfies the preconditions of Lemma 16.
Definition 18 (Routing Matrix to the Individual Nodes)
Let us assume that cport, cnet, q ε N. (K, τ) ε Rc
The matrices τ and σ1, 1=1, . . . , r are often constructed in the reverse manner. We define matrices σ1, 1=1, . . . , r by stating the timing sequence in which the message is passed to v1 via the path γK(v1). τ is then given by
The time sequence for the routing to each individual node and thus the σ1, 1=1, . . . , r must in this case be chosen such that the capacities of edges and nodes are not exceeded, that is to say T satisfies the items (i) and (iii) from the Definition 14.
Criteria relating to a “good” and if possible “optimum” choice of routing methods in a display unit graph are quoted in the following text. In the following text, routing is regarded as being optimum when it corresponds to the shortest possible duration. In order to be able to record this in mathematical language, the following expressions are introduced.
In this case let us assume that (V, E, g) is always a display unit graph and, as before, V={v0, . . . Vr) where v0=w.
Definition 19 (Minimum Routing Duration)
(i)
Let us assume that K={k1, . . . ,kr} ε κ and that cport, cnet, q ε N. Then
defines the minimum routing duration through the tree (V,K,g|K) which is defined by K.
(ii)
Let us assume that cport, cnet, q ε N. Then
defines the minimum routing duration in the display graph.
Definition 20 (Optimum Routing)
(i)
Let us assume that k={k1, . . . ,kr} ε κ and that cport, cnet, q ε N. The expression optimum routing matrix in the tree defined by (V,K,g|K) is understood to be a routing matrix from the following set:
(ii)
Let us assume that cport, cnet, q ε N. The expression optimum routing means a routing from the following set:
The choice of an optimum routing matrix in the already defined routing tree in the sense of definition 20 (i) is simple. This is explained in the present section for the special cases cport and cnet=1 and cport and cnet>1.
The solution to the optimization problem which is posed in Definition 20 (ii) with free choice of the routing tree is considerably more difficult. The problem is generally too complex to solve it exactly. For this reason heuristic methods are explained in the following text in order to solve this problem. The solution to the optimization problem from definition 20 (i) with a defined routing tree in this case provides important strategies for good choice of the routing tree.
First of all, the special case will be explained in which cport=cnet=1.
Let us assume that q ε N undefined and that K ε κ. Without any restriction to generality, then Kport=Eport (otherwise consider u ε Vport\g+(Kport) not as an initial node, that is to say set Vport:=g+(Kport)).
Since cport=1 it can easily be seen that
Equality therefore exists. In this context, let us assume that
The idea of the following routing is that one electronic message will enter the initial nodes via each supply line in each clock cycle, and will be passed on step-by-step in the subsequent time intervals to their respective destination nodes, that is to say to the destination pixel processor. First of all, the messages are fed to the nodes which are further away, while later on the messages are fed to the nodes which are located close to the portal node, that is to say the pixel processor. Corresponding routing is illustrated in
u ε Vport is considered, and d:=dK(u)=|vK(u)| is set. It is assumed that
VK(u)={vq
ΓK(vq
for i>j. This is satisfied in particular, when
|γK(vq
for i>j. Let us now assume that 1 ε { 1, . . . , d} undefined and that (kp
Then, for all i ε {1, . . . , n} and j ε {1, . . . , r} set
In order to show that σq1 defines a routing matrix vq1 it is sufficient to show that
z+(d−1)≦n,
this is because the n clock cycles are then sufficient to pass the message from σq1 to its destination vq1 on the basis of our design.
On the basis of (1), 1≧z and thus
z+(d−1)≦d≦n
and this is thus shown.
On the basis of the above considerations, the σ1 can finally be determined for all 1 ε {1, . . . , r} by consideration of all the initial nodes. As normal,
is formed.
It can easily be seen that T then actually defines a (1,1,q) routing via (V, K, g|K) for any q ε N and, on the basis of the above considerations, is optimum. Thus:
a illustrates the initial state, in which all of the messages 1201 are stored in the portal node 1202. After a first clock cycle, the first two messages 1201 are supplied to the initial pixel processors 1203, that is to say to the pixel processors in the pixel arrangement 100 via which the information can be supplied via the pixel arrangement to the respective pixel processors, where they are buffer-stored (see
As one possible advantageous strategy for the choice of an optimum routing with free choice of the routing tree in the sense of Definition 20 (ii), it can be stated:
Choose the routing tree such that all the initial nodes as far as possible have a throughput of the same magnitude (to be more precise, they differ by a maximum of the value 1), and set the routing matrix in accordance with the above statements.
The following text briefly explains the second special case, in which:
c:=cport=cnet>1, q>c.
Let us assume that K ε κ. Without restriction to generality, once again Kport=Eport.
In this case, it is more difficult to state the minimum routing duration in advance. A routing matrix is thus developed which defines an optimum (cport, cnet, q) routing via (V,K,g|K). Finally, the minimum routing duration can be determined from this. The idea for this variant of the routing process is equivalent to that already developed for the case where cport=cnet=1 except that, in this case c=cport=cnet messages are always introduced at the same time into one initial node, in order to be passed on from there with that node which is furthest away and has not yet been notified. A routing process such as this is once again sketched in
First of all, let us assume that:
It is assumed that u ε Vport and that d:=dK(u)=|VK(u)|. It is assumed that VK(u)=(vq
|γK(vq
if i>j. It is assumed that 1 ε {1, . . . , d} and that
that is to say the next smaller integer to
It is assumed that (kp
As before, in this way determine the concept {tilde over (σ)}1 for all 1 ε {1, . . . , r} and set
Now delete all those lines in {tilde over (τ)}, which are equal to 0, that is to say set
n:=min{ñ ε N; τij=0 for all {circumflex over (n)}<i<ñ and j=1, . . . , r}
and
τ:=({tilde over (τ)}ij)i=1, . . . , n
j=1, . . . , r
It can be shown that τ defines an optimum (cport, cnet, q) routing via (V,K,g|K) for any q≧c. Furthermore
The actual magnitude of n now depends on the specific structure of the branches of the initial nodes, but can easily be calculated. To do this, the number of clock cycles nu which are required in order to route all the messages to the nodes in the branch of u is first of all calculated for each u ε Vport. VK(u) and d are in this case assumed to be as above. Then:
This results in the routing duration n becoming:
An alternative strategy for the choice of optimum routing with free choice of the routing tree in the sense of Definition 20(ii) is thus:
Choose the routing tree such that all the initial nodes as far as possible have the same throughput and the tree is “sufficiently widely branched” in the branches of the initial nodes such that n comes as close to
as possible. Set the routing matrix in accordance with the above considerations.
“Sufficiently wide branching” is obviously present when the following statement is true for all the introduction nodes: consider the branch of the introduction node, and organize the associated nodes on the basis of increasing path length. The path lengths of the nodes should then increment only all c nodes by the value of 1, that is to say c nodes of the path length 2, c nodes of the path length 3 . . .
If the respective nodes and supply lines have small capacities, it is more important to ensure that there is a uniform throughput in the introduction node since, in this case, the throughput through the introduction nodes is normally the critical factor for the lower limit on the routing duration. In this case, the introduction nodes to a certain extent represent a constriction of the tree. If the capacities are higher, on the other hand, it is more important to ensure that there are a sufficiently large number of branches in the tree, and thus short path lengths. In this case, it is normally the path lengths which form the lower limit to the routing duration. In contrast, very high capacities are no longer worthwhile at all, since the hexagonal network limits the number of branches and certain minimum path lengths of the topology of the network, that is to say the topology of the networking or coupling of the pixel processors in the processor arrangement is predetermined.
Exemplary embodiments of the methods for self-organization of the pixel processors in the pixel arrangement will be explained in the following text.
The exemplary embodiments are based on the assumption of the following situation:
According to the present exemplary embodiments in the fault-free state, all of the pixel processors 1401, 1402 are completely networked to one another via the corresponding supply lines and the bidirectional communication interfaces.
The problem mentioned above is solved by self-organization based on local message interchange between two mutually directly adjacent processor units 1401, 1402.
The self-organization method thus comprises distributed uniform algorithms, which transmit these electronic messages via their communication interfaces.
During the course of the method, the processor units 1401, 1402 learn their alignment and their two-dimensional position within the processor arrangement, as well as the distance between the respective processor unit and the portal processor, in general a reference position. The reference position may also be the position of a processor unit which is located at the introduction point to the pixel arrangement. In further steps, routing paths between the individual processor units and the portal processor are marked locally. The algorithms for selection of the routing paths are in this case designed such that the routing duration is as short as possible, with a uniform information flow. The self-organization also defines the algorithm for distribution of the information using the pixel arrangement in the course of image construction, that is to say in order to display a digitized image on the pixel arrangement. Owing to the specific concept of the method, the shape of the pixel arrangement and hence also failed individual components are irrelevant, therefore resulting in a high degree of fault intolerance according to one embodiment of the invention.
The entire method comprises the combination of the following method elements:
The following text is based on the assumption of hexagonal networking of the pixel processors within the pixel arrangement 100 without any restriction to generality.
In an orthogonal situation, or other two-dimensional network, however, the algorithms are transmitted according to one embodiment of the invention in a completely analogous manner to this description, as stated below.
According to one communication layer model, functions which are located underneath the functions required according to one embodiment of the invention, for example, ping messages, protection of the transmission by means of checksums, reception confirmation, requesting defective messages once again, etc. will not be considered in the following text. However, these can be implemented without any problems in the course of the invention.
For the method steps described in the following text, it can be stated in general that each pixel processor sets up a data record for each of its adjacent pixel processors on the basis of received messages, with this data record being used to store the information obtained in a memory that is associated with the respective processor.
In a first method element, the pixel processors learn a uniform alignment.
Since all of the connections of the portal processor are, on the basis of the above convention, linked to the introduction points by means of the south-west face on the corresponding initial pixel processors, this can be used in order to achieve coherence.
Measurement coherence messages are sent for this purpose, containing as the parameters, a number of connections by which the receiving connection is separated in the counterclockwise direction from the east direction, as defined above.
Each pixel processor is set to be incoherent for initialization purposes.
On receiving a measurement coherence message 1501 (see
The method element for uniform alignment is started by the portal processor transmitting the measurement coherence message (2) with the parameter value 2 to the respective introduction pixel processors via its connections. The method element is terminated when the last processor unit has become coherent.
The number of clock cycles required to carry out the process corresponds to the maximum distance between a pixel processor and the portal processor. One or two more clock cycles may also possibly be required before the final message communication “dies”.
In a further method element, the pixel processors interchange electronic messages between one another in order to automatically determine their local position within the pixel arrangement.
Since the hexagonal array of pixel processors within the pixel arrangement in each case comprises offset rows, the coordinate system is selected according to this exemplary embodiment such that the column numbers in the rows are alternately even or odd.
In this context, it should be mentioned that, if the pixel arrangement structure is orthogonal, the coordinate system can very easily be chosen canonically.
In the case of a hexagonal array, the procedure described above makes it possible for a processor to determine the positions of its adjacent pixel processors, independently of the geometry of the pixel arrangement, from its own position (i, j) in the row i and column j.
The respective positions are illustrated in
For position determination according to this exemplary embodiment, measurement position messages 1701, 1702, 1703, 1704, 1705, 1706 are interchanged, which contain two parameters, specifically the row number and the column number, which the processor unit sending the measurement position message 1701, 1702, 1703, 1704, 1705, 1706 has calculated as the position as shown by it for the processor unit receiving the respective message 1701, 1702, 1703, 1704, 1705, 1706.
The position of each pixel processor is defined as (0,0) for initialization purposes. The process of position determination starts in each pixel processor as soon as it has become coherent, as has been explained above.
The measurement position messages 1701, 1702, 1703, 1704, 1705, 1706 are then sent via all the connections, as illustrated in
On receiving a measurement position message 1701, 1702, 1703, 1704, 1705, 1706 with a row parameter z and a column parameter s, the respective receiving processor unit carries out the following steps:
The method element is ended when no more position changes occur.
The number of clock cycles required to carry out the process is limited as a maximum of a maximum distance between a pixel processor and another pixel processor in the processor arrangement. One or two more clock cycles may also be required before the last message communication “dies”. Normally, however, the method element can generally be carried out even more quickly, depending on the geometry of the processor arrangement in 1800.
In this context, it should be noted that, in the representation of hexagonal pixel images or orthogonal pixel images, the portal processor always produces a map on to the coordinate system of the processor arrangement 1800 determined in this way. During the formation of routing paths, which is carried out in a subsequent method element, the information which has now been stored locally is transmitted to the portal processor, so that it is possible to produce an appropriate map in the portal processor.
The local position of the respective pixel processor 1801 within the processor arrangement 1800 is shown in the form of a value tuple in the pixel arrangement in
In an additional method element, the respective distance between a processor unit and the portal processor, that is to say the length of the path from the pixel processor to the portal processor (see also Definition 6) is determined, in general the distance between a processor unit 1801 in the processor arrangement 1800 and a predetermined reference position.
In order to initialize this method element, the distance between each processor unit 1801 is defined to be “infinite”. According to this exemplary embodiment, the distance between each pixel processor and the portal processor is defined as a value which is greater than the maximum value, which may be assumed to be the distance within the pixel arrangement.
Without any restriction to generality, it is assumed that the steps in the method elements described above have already been carried out.
The process of distance determination is then started via the portal processor by sending measurement distance (0) messages to the processor units at the introduction points to the processor arrangement 1800.
On receiving a measurement distance message with a distance parameter a, the processor unit which in each case receives the measurement distance message carries out the following steps:
The method element is terminated when no more distance changes occur.
In the processor arrangement 2100 according to the second exemplary embodiment, the lowermost row 2101 in the processor arrangement 2100 contains both processor units 2102 which are not coupled to the portal processor, as well as processor units 2103 which are coupled to the portal processor via their communication interfaces 2104, which are arranged on the south-west side. According to the second exemplary embodiment, every third processor unit in the lowermost row 2101 is connected to the portal processor via its communication interface located on the south-west side.
The number of clock cycles required to carry out the process corresponds to the maximum distance between one processor unit and the portal processor. Once again, one or two more clock cycles may also be required until the final message communication “dies”.
In this context, it should be noted that each processor unit can store the distance between its direct adjacent processor units and the portal processor on the basis of the respectively received messages, for subsequent local use.
In this method element, the processor unit's own distance value is obviously changed in an iterative process when the previously stored distance value is greater than the received distance value increased by a predetermined value in the respectively received message. For the situation where a processor unit changes its own distance value, it produces a measurement distance message, and sends this via all the communication interfaces to adjacent processor units, with the measurement distance message in each case including its own distance as distance information or the distance value for the distance between the receiving processor unit and the portal processor, a value which is increased by a predetermined value on its own distance value, and a distance value which is increased by the value “1”.
The method element for regular backwards organization will be described in the following text.
In order to make it possible to carry out the following method steps, it is necessary for the distance between a pixel processor and a respective reference position to have been determined, and for it thus to be known, and stored as respective distance information in the memory of the respective processor.
In the method element described in the following text, the connections between the respective processor units are referred to in the following text as instances which are denoted channels.
The sets of the processor units with the portal processor as the root node and the channels as edges between the respective processor units form a tree. This tree is used for the subsequent routing, as has been described above in conjunction with graph-based theoretical principles.
The channels are defined in the regular manner such that each processor unit is connected by the shortest path to the portal node.
For initialization purposes, each pixel processor 1500 is defined as being “unorganized”. The organization process is started over all the connections by the portal processor transmitting measurement organize messages 2201, 2202, 2203, 2204, 2205, 2206 which have no parameters whatsoever.
On receiving a measurement organize message 2201, 2202, 2203, 2204, 2205, 2206 the processor unit which in each case receives the message carries out the following steps:
On receiving a measurement channel message, the processor which receives the measurement channel message defines the sender as a “successor”. In a corresponding manner, the connection between the processor unit and the “successor” is then a channel.
The method element is terminated once all of the processor units have been organized in this way.
By way of example,
The number of clock cycles required to carry out the method element for self-organization in the backwards direction, corresponds to the maximum distance between a pixel processor and the portal processor. In this case as well, one or two more clock cycles may be required before the last message communication “dies”.
The regular backwards organization leads to well-balanced trees for fault-free rectangular displays, that is to say display units.
Since all of the processor units within the processor arrangement 1800, 2100 are connected to the portal by the respectively shortest path, this algorithm determines an element in the “optimum set” O1, as defined above. In the case of horizontal cracks 2600, 2700, as illustrated in
The throughput of a pixel processor is of considerable importance for setting up routing tables.
The throughput is the number of pixel information items which must in each case be processed or passed on for this processor to construct an image.
The mathematical definition of the throughput is given above in Definition 6.
This number is identical to the number of pixel information items which are received via the input channel.
In order to carry out the following method element steps, a tree structure must have been organized in the process arrangement 1800, 2100, for example by means of channels, as described above.
The method element is started by the portal processor by sending measurement count notes messages, which have no parameters, via all of the connections to the respective introduction processor units.
On receiving an incoming measurement count nodes message 2801 via the input channel, the respective processor receiving the measurement count nodes message carries out the following steps:
The method element is terminated once the portal processor has received a measurement nodes size message via all of the connections.
The number of clock cycles required to carry out the method element corresponds to twice the maximum distance between a pixel processor and the portal processor. In this case as well, one or two more clock cycles may also be required before the last message communication “dies”.
The respective throughput value is stated in the respective pixel processors. These examples show that throughputs are very high for those introduction processor units which have to supply the region of the respective processor arrangement 1800 or 2100 which is shadowed by the respective horizontal crack 2600, 2700.
The following text therefore describes an alternative organization method, which can react even more flexibly to the faults, that is to say to defects and irregular shapes of a processor arrangement 1800, 2100.
In order to achieve a throughput which is as uniform as possible, a heuristic solution approach for the selection of a routing tree comprises the successive transmission of so-called measurement token messages, which “occupy spaces” in the processor arrangement 1800, 2100.
By analogy with the gradual coloring of the processor arrangement 1800, 2100 by means of color streams, each introduction point is sent a different “color” with the token. This results in the processor arrangement 1800, 2100 being subdivided into color regions, which are each supplied from the portal node via an introduction processor unit.
In other words, this means that one “color” or an individual marking is in each case provided for each processor unit that is supplied via a respective introduction processor unit.
In the following text, the expression “color” is used for clearer representation purposes and an area which is marked with the same marking is, in a corresponding manner, referred to as a “color region”.
The following heuristic strategies are used for distribution:
After the complete coloring of the processor arrangement 1800, 2100, reorganization is necessary within the colored areas since the method element does not result in the formation of optimum “meandering channels” 3501, as illustrated by way of example in
First of all, the method element for processing of the messages used for token allocation will be described in the following subsections.
The distance determination within a color region is very largely identical to the general distance determination process as described above, to a reference position.
The color distance in this case determines the length of the shortest path from a processor unit to the portal processor, in which case all of the processor units on the path must belong to the same color region.
For initialization, the color distance for each processor unit is defined as being infinite, and its color is undefined. According to this exemplary embodiment, the distance between each pixel processor and the portal processor is defined as a value which is greater than the maximum value which can be assumed to be the distance within the pixel arrangement. The processor unit likewise marks its adjacent processor units as being undefined, colored with the color distance infinite.
On receiving a measurement color distance message, with the color c and the color distance parameter a, the respective processor unit receiving the measurement color distance message carries out the following steps:
According to one embodiment of the invention, measurement block token messages are used to block adjacent processor units against received token messages, that is to say that once a measurement block token message such as this has been received, no more tokens may be sent to these blocked adjacent processor units.
At the same time, the color and color distance are signaled in the same way as for the measurement color distance message.
For initialization purposes, all of the adjacent processor units to a processor unit are set to be unblocked.
On reception of an incoming measurement block token message 3301 with the color c and the color distance parameter a as message parameters, the respective processor unit receiving the measurement block token message carries out the following steps:
According to one embodiment of the invention, so-called measurement token messages are used for coloring, that is to say for marking processor units and thus for definition of color regions, that is to say areas to be marked within the processor arrangement 1800, 2100.
With regard to the processing of measurement token messages, a distinction should be drawn between whether the processor unit is still uncolored or has already been colored by a token.
On reception of an incoming measurement token message 3401 with the weight g and the color f as message parameters, an uncolored processor unit which receives the measurement token message 3401 carries out the following steps:
On reception of a measurement token message with the weight g and the color f via the input channel, an already colored processor unit, in contrast, carries out a different procedure.
Let us consider a sequence R=(SE, SW, E, W, NE, NW), which corresponds to a sequence R of (south-east, south-west, east, west, north-east, north-west) for an even column number, and a sequence R=(SW, SE, W, E, NW, NE) which corresponds to a sequence (south-west, south-east, west, east, north-west, north-east) for an odd column number with the following method steps being carried out:
Since the channels cannot be set optimally for the choice of the color regions, owing to the method element described above, as is illustrated in
In this context, it should be noted that the portal processor uses a different parameter “stamp” for each reorganization process.
On reception of an incoming measurement delete channels message 3601 with the parameter “stamp”, the processor unit receiving the respective measurement delete channels message carries out the following steps:
After deletion of the old channels, new channels are set within a color region by the use of measurement color organize messages.
The processing of incoming measurement column organize messages 3701 and the sending of measurement column organize messages 3702, 3703, 3704, 3705, 3706 are very largely identical to the processing of measurement organize messages as described above.
However, one difference is that the adjacent processor units under consideration must have the same colors as the processing processor unit, and that the color distance is used as the criterion rather than the distance.
In order to carry out the method element described above, all of the described steps as far as the distance determination should have been carried out as explained above in the pixel array.
The connections are specifically identified as “channels” as above in the first exemplary embodiment.
In a first step, the portal processor in each case sends a measurement color distance message 4001 (see
This ensures individual and unique marking in each case, starting from each initial processor unit.
In a second step, the portal processor sends successive measurement token messages with the parameters (g, f) and with an identical weight g ε N0 but a different color parameter f via all of the connections, in order to color all of the processor units in the processor arrangement 1800, 2100.
The method element is terminated when measurement block token messages have arrived via all the connections of the pixel processor, that is to say when the processor arrangement 1800, 2100 has been colored in completely.
In this context, it should be noted that the entire processor arrangement 1800, 2100 can always be colored in completely using this method.
However, meandering paths 3801 are formed on the basis of the configuration of this method element within the colored areas, so that the processor units are not connected by the shortest possible distance to the portal processor.
In a third step, the portal processor therefore sends a measurement delete channels message via all of the connections, as explained above, in order to delete the channels that have been formed. Directly after this message, a measurement color organize message is sent via all of the connections, and forms new channels within the colored areas, with these new channels representing the shortest connections.
The method element is terminated once all of the processor units have been organized in this way. The number of clock cycles required to carry out the processes corresponds to the maximum color distance between a pixel processor and the portal processor. In this case as well, one or two more clock cycles may also be required before the last message communication “dies”.
The routing tree that is produced depends on the weight g which is contained as a parameter in the respective measurement token message.
The weight g indicates by how many the color distance of a processor unit may be greater than the distance itself. The greater the weight g, the better the resultant tree is normally balanced, but also the longer the paths normally are in this tree. In order to explain this, reference should be made to
The best choice for the weight normally depends on the transport characteristics of the respective connections, that is to say how many messages can be sent per clock cycle via one connection. The smaller this number, the greater the best weight must normally be.
Two methods for selection of a routing tree have been described above.
Once a routing tree has been chosen, that is to say once the corresponding channels have been chosen, then optimum routing for this tree can be determined very easily. The principles relating to this have been explained in conjunction with the description of the theoretical graph principles.
In a first step, all of the pixel processors, that is to say the processor units within the processor arrangement 1800, 2100, are numbered successively.
The numbers are then used as destination addresses for the routing process. In a second step, the local information which has been gathered is transmitted from the respective processor units to the portal processor. The overall routing table is then created in the portal processor.
According to this exemplary embodiment, measurement numbering messages are used for successively numbering all of the processor units in the pixel arrangement 1800, 2100. This is dependent on the throughput of the respective processor units already having been determined, for example, using the method element described above.
The numbering method element is started by the portal processor by sending measurement numbering messages 4301 via the output channels of the portal processor with these messages being transmitted to the initial processor units.
Once throughputs d1, d2, d3, . . . have been determined for the corresponding adjacent processor units, the respective measurement numbering message 4302 is transmitted with the parameters 1, 1+d1, 1+d1+d2, . . . as message parameters.
After reception of a measurement numbering message 4301 with the parameter n via the respective input channel of the processor unit (see
The method element is terminated when the last processor has been successively numbered by the last processor unit. The number of clock cycles required to carry out the method element corresponds to the maximum distance to a processor unit via channels from the portal processor. With this method element as well, one or two more clock cycles may still be required before the last message communication “dies”.
The number of a processor unit can easily be used as an address for routing of data or images, since each output channel of a processor unit is allocated a unique number interval. Each processor unit can thus set up a simple routing table.
By way of example, the example illustrated in
The locally produced information is signaled to the portal processor by means of measurement collect information messages, which contain the following message parameters.
The measurement collect information messages are each sent from the processor units as soon as the respective processor unit has been successively numbered.
This information allows the pixel processor on the one hand to map pixel images onto the actual pixel array (sampling), and on the other hand to route this image data with the aid of the pixel numbers.
When sending an overall image, that is to say when supplying the data to all of the processor units, those messages which have the longest path are in this case sent first of all, as explained above, in conjunction with the description of the theoretical graph principles.
This routing table then also results directly in the routing duration, with which the routing trees are assessed.
During further operation with the display, a pixel image can be sent in a very simple manner with the aid of the pixel numbers and the previously described routing tables. To do this, a portal processor sends messages of the measurement RGB type provided with the following parameters:
The selection and the assessment of routing matrices have been described above, that is to say essentially of routing paths. In this case, the assessment criterion is the routing duration. Since an actual combinational optimization process normally cannot be carried out in a short time owing to the complexity, an alternative has been described above.
The freely variable parameter is the weight g. The portal processor can easily carry out this process several times with a different weight g for (partial) optimization of the routing duration.
The weights g=0, 1, 2, 3, . . . are normally considered and investigated.
These have been found to be advantageous for numerical analysis purposes. That routing which has the shortest routing duration can then finally be used.
In order to make it possible to carry out the process repeatedly, the portal processor uses the measurement retry message, which deletes all the channels, color regions and color distances, as is illustrated in
On reception of an incoming measurement retry message 4801 with the parameter “stamp”, the respective processor unit receiving the measurement retry message 4801 carries out the following steps:
During operation of the pixel arrangement, usage can results in faults which were not yet apparent at the time at which the self-organization process described above was carried out. Further messages may be used for self-identification of these faults.
On the basis of the model assumptions described above, a fault can exist from the viewpoint of a local processor, only when an adjacent processor which has been connected until then can no longer be accessed. In contrast, it cannot assess whether only the connection to this adjacent processor or whether the adjacent processor itself has failed. However, when an event such as this occurs, a fault message, which is referred to in the following text as a measurement error message, can be sent to the portal processor, which message self-identifies the portal processor, using its own pixel number as a message parameter and additionally contains the number of the newly failed connection.
One possible reaction of the portal processor to a message such as this is a global reset of the pixel arrangement with the aid of a measurement reset message.
In reaction to this message, each pixel processor passes this message onto all of the adjacent processors, and deletes all the data which has been determined during the organization process. Each pixel processor should comply with a specific dead time, before the end of which it does not react to any further messages, in order to terminate this process. The dead time prevents the processing of the measurement reset message being repeated indefinitely.
In summary,
In this context, it should be noted that the message catalog may, of course, be functionally extended by adding any desired additional messages.
According to this exemplary embodiment, each processor is for control and/or reading purposes coupled to 4*4 pixels 4902, which are in each case grouped to form a pixel block 4903.
The individual pixel group processors are networked to one another, as described above in an orthogonal network by means of local next-adjacent connections 4904.
One or more connections may run between any two processors 4901, in order, for example, to allow bidirectional data transmission or else the separate distribution of the supply voltages. As explained above, the layer of the pixels 4902 contains the individual pixel elements, with each pixel block 4903 being driven by means of a conventional matrix drive, as is illustrated by way of example in
The matrix controller 5000 in
This keeps the vertical wiring complexity between the two levels, the processor level and the pixel level simple, since only one serial data transmission is carried out via only one line, and with the clock signals also being obtained from the data signal itself.
In this context, it should be noted that there may be more than two levels, that is to say groups of pixel group processors may in turn be combined to form groups, thus resulting in a deeper hierarchical tree structure.
The pixel group processors may be orthogonally networked to one another as in the figure, although other networking systems are likewise also possible, in particular hexagonal networking, as explained above.
Furthermore, the pixel group processors may interchange their messages in any desired formats. However, they interchange message blocks with one another which, for example, may contain address codes, with the aid of which the image information contained in the data packets can subsequently be passed from one processor to another. This also makes it possible to bypass defects in the matrix, which is not possible in the case of rigid x/y addressing via row lines and column lines.
Depending on the performance of the pixel group processors, they may also carry out other tasks in addition to information transmission and information distribution, such as compression or decompression of image information.
The architecture may also be used for large-area sensor arrays, such as fingerprint sensors, touchpads or script identification sensors.
For example, it is possible for each pixel group processor to wait for an event, that is to say an input using a pin etc., to occur in a pixel group with this data then being sent or routed to the edge of the respective matrix. This makes it possible to avoid the necessity for an external addressing unit to always scan the entire sensor area. This obviously corresponds to local triggering by an event instead of global image evaluation.
By way of example, the pixel group processors may be incorporated in a suitable mounting substrate, such as that described according to the first exemplary embodiment, with the aid of a technique such as fluidic self-assembly, as is described in J. S. Smith, High-Density, low parasitic direct Integration by Fluidic Self-Assembly (FSA), IEDM, pages 201-204, 2000.
The connections between the processors, as well as the sensor or display matrices, may then be applied in further process steps to the mounting substrate with the processors.
The above functional layers can be produced in a preferred manner by means of circuits which can be printed, such as those provided for polymer electronics.
It should be noted that the method elements described above may all be carried out independently of one another, that is to say autonomously. They each require only the input information that is required for that particular method element. However, in principle, it is irrelevant how the required input information has been determined. Nevertheless, the considerable advantages involved with the interleaving and joint implementation of several or all of the method elements should be mentioned, since, in this case, the concept according to the invention and as described above is implemented on a general basis.
Although specific embodiments have been illustrated and described herein, it will be appreciated by those of ordinary skill in the art that a variety of alternate and/or equivalent implementations may be substituted for the specific embodiments shown and described without departing from the scope of the present invention. For example, the functional circuit 52, 54, 56, and 58 of
Number | Date | Country | Kind |
---|---|---|---|
101 58 784.8 | Nov 2001 | DE | national |
101 58 781.3 | Nov 2001 | DE | national |
Filing Document | Filing Date | Country | Kind |
---|---|---|---|
PCT/DE02/04373 | 11/28/2002 | WO |