The present invention relates to a multiprocessor system comprising plural processors.
There have been known SPI (Serial Peripheral Interface) and I2C (Inter-Integrated Circuit) as a method for connecting on-board between processors such as a microcomputer, a microcontroller and the like and other ICs by using a serial interface. Examples of ICs encompass an EEPROM, a shift resistor, a display driver, an A/D converter, and the like. The SPI performs communication between one master and slave(s) regardless of whether the number of processors is one or more. In the I2C, however, in addition to the foregoing way using only one master, a multi-master function is available which performs communication between plural masters and slave(s).
Patent document 1 discloses a multiprocessor system in which plural multiprocessors share a memory.
In
In this arrangement, when the processors 91 to 93 request to read data having the same address in the shared memory 108, requests for the data having the same address will be inputted from the bus control circuits 104b, 105b, and 106b via a control line 110 to the bus arbitration circuit 107b. The bus arbitration circuit 107b accepts the read request from one of the processors according to a predetermined order of priority. Then, the bus arbitration circuit 107b performs the following control to the bus control circuits 104b, 105b, and 106b via a control line 111: connecting an address bus and a data bus of the processor to the shared bus 112; and connecting the data buses of the other processors to the shared bus 112. This allows the processors 91 to 93 to simultaneously read the data having the same address in the shared memory 108.
On the other hand, when the processors 91 to 93 request to read data having different addresses in the shared memory 108, requests for the data having different addresses will be inputted to the bus arbitration circuit 107b via the control line 110. The bus arbitration circuit 107b accepts the read request from one of the processors according to the predetermined order of priority. Then, the bus arbitration circuit 107b performs the following control to the bus control circuits 104b, 105b, and 106b via the control line 111: connecting the address bus and the data bus of the one of the processors to the shared bus 112; and making the other processors enter a wait state. This allows only one of the processors to read the data from the shared memory 108.
[Patent Document 1]
Japanese Unexamined Patent Application Publication, Tokukaihei, No. 11-102348 (published on Apr. 13, 1999)
As is clear from the description for
As is clear from the description for
Also, in order to allow each processor to access to a memory in an SPI comprising plural processors, the processor to be set as a master needs to be switched as needed in order to assign an access right to each of the processors.
Further, in the arrangement of Patent document 1, the bus arbitration circuit 107b is necessary in order to prevent a collision between the processors for the access to the shared memory 108. This causes a complicated system arrangement and an increase in cost.
In light of this, the following is important for a multiprocessor system: Plural processors reliably avoid a collision while having a simple arrangement, and the processors access to the minimum number of memories. Particularly when the plural processors use the same data, the processors' sharing the memory so as to share the same data will largely simplify the arrangement of the multiprocessor system.
The present invention has been made in view of the foregoing problems, and has an object for providing: a multiprocessor system capable of achieving an arrangement so as to reliably avoid a collision between processors for the access to a memory in a simple way and at low cost; and a display device provided with the multiprocessor system.
The multiprocessor system according to the present invention, in order to attain the object, has the following features: In a multiprocessor system comprising plural processors and a memory shared by the plural processors, only one of the processors is a master, the memory is a slave, and the processor other than the master is a monitor for monitoring data read access performed by the master to the memory and acquiring data associated with the processor from among data read by the master from the memory.
In the invention, the monitor monitors the data read access performed by the master to the memory. Then, the monitor acquires the data associated with the processor from among the data read by the master from the memory. Therefore, the monitor does not interfere with the access operation performed by the master. Even if plural monitors exist, the monitors do not interfere with each other. As a result, the collision between the processors can be avoided reliably. Furthermore, any additional arrangement for preventing the collision is not necessary.
Thus, the present invention gives an effect of providing a multiprocessor system capable of achieving an arrangement for reliably avoiding the collision between the processors for the access to the memory in a simple way and at low cost.
The display device according to the present invention, in order to attain the object, comprises the multiprocessor system. In the display device, each of the plural processors performs drive control to a separately assigned region on a display region based on the data read from the memory.
With the invention, in the display device, the same signal can mostly be used in the regions made by the division of the display region. Therefore, by making the data corresponding to the signal be stored in the memory of the multiprocessor system as shared data, the monitor have more opportunities to acquire the data read by the master. This gives an effect that the multiprocessor system works in the display device very effectively.
In addition, the more amount of data the processors share, the smaller the size of the memory can be, thereby achieving an advantage both in design space and cost.
Additional objects, features, and strengths of the present invention will be made clear by the description below. Further, the advantages of the present invention will be evident from the following explanation in reference to the drawings.
The following explains an embodiment for further detailed description for the present invention. Note that the present invention is not limited to the embodiment.
One embodiment of the present invention is described below with reference to
The processor 2 is a microprocessor or a microcontroller, which is an ASIC (described as ASIC1 in the figure), and is a master (MASTER) for controlling slave operation by transmitting a command to the slave in the multiprocessor system 1. In order to control the slave operation, the processor 2 outputs a clock for synchronizing transmitting and receiving operation for a command and data. The clock also determines the timing of receiving a command and data in a monitor described below. The processor 2 is the only master in the multiprocessor system 1.
The processor 3 is a microprocessor or a microcontroller, which is an ASIC (described as ASIC2 in the figure). The processor 3 is a monitor (MONITOR) for monitoring data read access performed by the processor 2 to the memory 4 in the multiprocessor system 1.
The memory 4 is a memory which stores data used by the processors 2 and 3, to which data is written by the processor 2, and which is shared by the processors 2 and 3. Here, the memory 4 is an EEPROM. Other than the EEPROM, the memory 4 may be other memories such as a flash memory or the like. In the multiprocessor system 1, the memory 4 is a slave (SLAVE) in which read operation and write operation are controlled by receiving a command from the processor 2, which is a master.
An interface bus used for transmitting and receiving a command, data, and a clock may be respectively provided for the transmitting and receiving operation for each. However, the style of the interface bus may be set to suit the interface: For example, a style having an interface bus for transmitting and receiving both a command and data and an interface bus for transmitting and receiving a clock; and the like.
The number of processors may be three or more. In this case, all the processors other than the processor 2, which is the master, are the monitors. In the multiprocessor system 1 of the present embodiment, only one processor out of the plural processors is the master, and the processor to be the master is fixed.
Any peripheral IC may be connected as a slave, besides the memory 4. The peripheral IC may be an additional memory, a shift resistor, a display driver, an A/D converter or the like.
In the multiprocessor system 1 having the foregoing arrangement, the data read operation by the processor 2 to the memory 4 is performed as follows.
The processor 2 outputs a command indicating that the data read operation is to be performed on the interface bus, and transmits the command to the memory 4. An address storing data to be read is added to, for example, the latter part of the command, but the address information may be transmitted by the processor 2 after the memory 4 responds to the read request from the processor 2. The addresses transmitted by the processor 2 include not only the addresses for data used by the processor 2 itself, but also the addresses for data used by the processor 3. That is, in correspondence with
When the memory 4 receives the command transmitted from the processor 2, the memory 4 outputs the data which has been stored in the designated address on the interface bus to respond to the processor 2.
The processor 2 acquires only data that the processor (i.e., the processor 2) uses from among data received from the memory 4, and ignores data that the processor does not use. The data that the processor uses here is, in correspondence with
The processor 3 monitors the command outputted on the interface bus by the processor 2, and receives the command. Then, the processor 3 determines whether or not the command is a command to read data from the memory 4. When the command is a command to read data from the memory 4, the processor 3 determines whether or not the address of the data to be read matches the address of the data used by the processor (i.e., the processor 3). When the address of the data to be read matches the address of the data used by the processor, the processor 3 determines that the data is associated with the processor, and then receives and acquires the data outputted on the interface bus by the memory 4 in response to the command. The addresses of the data used by the processor here are, in correspondence with
The processor 3 ignores the command in the following cases: the command outputted by the processor 2 on the interface bus is not a command to read data from the memory 4; and the address of the data to be read does not match the address of the data used by the processor. Therefore, in these cases, when the processor 3 receives the data outputted on the interface bus by the memory 4, the processor 3 does not acquire the data.
Next, the following describes a concrete example of an arrangement in light of an aspect of the processor 3 performing the foregoing operation as a monitor. The processor 2 as a master can be realized by normal master arrangements used for an interface such as an SPI, I2C and the like, so it will not be described here.
The processor 3 comprises an address detection section 3a, an internal memory 3b, a comparison section 3c, a data detection section 3d, and an internal operation circuit 3e.
The address detection section 3a determines whether or not a command outputted from the master (the processor 2) is a command to read data from the slave (the memory 4). When the address detection section 3a determines that the command is a command to read data, the address detection section 3a detects the address of the data to be read which is included in the command. The internal memory 3b is a memory storing an address of data used by the monitor (the processor 3) in advance. The comparison section 3c compares the address detected by the address detection section 3a with the address stored in the internal memory 3b to determine whether or not the detected address matches the stored address. Then, if the detected address matches the stored address, the comparison section 3c will transmit the address comparison result indicating that the addresses matched each other to the data detection section 3d; if the detected address does not match the stored address, the comparison section 3c will transmit the address comparison result indicating that the addresses did not match each other to the data detection section 3d.
The data detection section 3d receives the read data outputted from the slave (the memory 4), and determines whether or not the received data should be acquired into the internal operation circuit 3e based on the address comparison result inputted from the comparison section 3c. When the address comparison result indicating that the addresses matched each other is transmitted from the comparison section 3c, the received data will be acquired into the internal operation circuit 3e; when the address comparison result indicating that the addresses did not match each other is transmitted from the comparison section 3c, the received data will be discarded. The internal operation circuit 3e operates as a processor based on the acquired data.
Thus, in the present embodiment, the monitor monitors the data read access performed by the master to the memory. Also, the monitor acquires the data associated with the processor from among the data read by the master from the memory. Therefore, the monitor never interferes with the access operation performed by the master. Even if the plural monitors exist, the monitors do not interfere with each other. As a result, the collision between the processors can be avoided reliably. In addition, any additional arrangement for preventing the collision is not necessary.
Consequently, this provides a multiprocessor system capable of achieving an arrangement for reliably avoiding the collision between the processors for the access to the memory in a simple way and at low cost.
Next, the following describes an example of an LCD (Liquid Crystal Display) device provided with the multiprocessor system 1 according to the present embodiment.
The LCD device 11 comprises an LCD panel 12. Drive control for a region A1 covering the left half of the display region on the LCD panel 12 is performed by the processor 2 of the multiprocessor system 1, and the drive control for a region A2 covering the right half of the display region on the LCD panel 12 is performed by the processor 3 of the multiprocessor system 1. Performing the drive control separately in the divided regions in this way is convenient for ensuring enough time to write display data to each pixel in an LCD device having high pixel count, that is to say high resolution.
The LCD panel 12 comprises source drivers SD1 to SD8 and gate drivers GD1 to GD6.
The source drivers SD1 to SD4 are cascade-connected, and the gate drivers GD1 to GD3 are also cascade-connected. The source drivers SD1 to SD4 and the gate drivers GD1 to GD3 are drive circuits for the region A1. The processor 2 provides a control signal such as a timing signal and the like to both the drive circuits.
The source drivers SD5 to SD8 are cascade-connected, and the gate drivers GD4 to GD6 are also cascade-connected. The source drivers SD5 to SD8 and the gate drivers GD4 to GD6 are drive circuits for the region A2. The processor 3 provides a control signal such as a timing signal and the like to both the drive circuits.
The timing signals include: a source start pulse signal SP, a latch strobe signal LS, and a gate clock signal GCK, each of which is associated with a horizontal timing used in a source driver SD; a gate start pulse signal GSP and a gate clock signal GSK, each of which is associated with a vertical timing used in a gate driver GD; and the like. Also, as the control signal, an image correction parameter may be included.
In the display device such as an LCD device and the like, even if the display region is divided, the same drive signal may mostly be used in each region. Therefore, the processors share more data which is to be stored in the memory 4. This means that the monitor has many opportunities to acquire the same data as the master acquires, thereby showing that the multiprocessor system 1 of the present embodiment effectively works as a system for performing the drive control for each of the regions made by the division of the display region. The number of regions made by the division of the display region may be three or more, and may be any number more than one. Also, the way of division is not limited to the foregoing way based on a parting line in column-wise on the display panel, but may be the way based on a parting line in row-wise. The multiprocessor system is provided with the processors at least equal in number to the number of regions made by the division. Each of the processors is individually assigned with a region on the display region for which the drive control should be performed.
The signals outputted by the processors 2 and 3 may include a signal for image corrections, and the memory 4 may store an image correction parameter. The image correction parameter is rarely different between the regions made by the division of the display region, and can mostly be used as a common parameter. Therefore, the multiprocessor system 1 of the present embodiment is also effective to image corrections.
Thus, the more amount of data the processors share, the smaller the size of the memory can be, thereby achieving an advantage both in design space and cost.
Further, when the timing of the signals such as shown in
The invention being thus described, it will be obvious that the same way may be varied in many ways. Such variations are not to be regarded as a departure from the spirit and scope of the invention, and all such modifications as would be obvious to one skilled in the art are intended to be included within the scope of the following claims.
The invention is useful for LCD (Liquid Crystal Display) devices.
Number | Date | Country | Kind |
---|---|---|---|
2006 049365 | Feb 2006 | JP | national |
Filing Document | Filing Date | Country | Kind | 371c Date |
---|---|---|---|---|
PCT/JP2006/318695 | 9/21/2006 | WO | 00 | 6/4/2008 |