Throughout this description, the embodiments and examples shown should be considered as exemplars, rather than limitations on the apparatus and methods of the present invention.
An embodiment of the invention will be hereinafter explained in detail with reference to the drawings.
In
The MFP 100 has a main control unit 1, an operation unit 2, a scanner unit 3, and a printer unit 4. A control system of the MFP 100 has plural CPUs including a main CPU 11 in the main control unit 1, a panel CPU 21 of the operation unit 2, a scanner CPU 31 of the scanner unit 3, and a printer CPU 41 of the printer unit 4.
The main control unit 1 includes the main CPU 11, a ROM (read only memory) 12, a RAM 13, a shared RAM 14, an image processing unit 15, a network interface 16, and an HDD 17 serving as a storage device. Reference numeral 18 denotes an image data bus.
The main CPU 11 controls operations of the entire MFP 100. A control program and the like are stored in the ROM 12. The RAM 13 temporarily stores a control program and data. The shared RAM 14 is used when two-way communication is performed between the main CPU 11 and the printer CPU 41. The image processing unit 15 processes image data read by the scanner unit 3 to perform processing such as filtering and includes plural FIFO memories.
The MFP 100 can transmit and receive image data to and from the PC 200 via the network interface 16 connected to the network 300. The HDD 17 temporarily stores image data processed by the image processing unit 15. An image based on the image data stored in the HDD 17 is printed on a sheet by the printer unit 4.
The operation unit 2 has the panel CPU 21 connected to the main CPU 11, various operation keys 22, and a display device 23 made of liquid crystal or the like. The operation keys 22 includes keys for performing various instructions for a print size, color printing or monochrome printing, and the like and designating intensity of sharpness and the like.
The scanner unit 3 irradiates light on an original placed on an original table with an exposure lamp, receives reflected light with a CCD to read an image of the original, and converts the image into image data. The scanner unit 3 has the scanner CPU 31 that controls operations of the entire scanner unit and a CCD driver 32 that drives a color image sensor. The scanner unit 3 includes a scanning motor driver 33 that controls a scanning motor for moving the exposure lamp along a lower surface of the original table and an image correcting unit 34.
The image correcting unit 34 includes an A/D conversion circuit that converts analog signals of R, G, and B outputted from the color image sensor into digital signals, respectively, and a shading correction circuit that corrects fluctuation in an output signal due to variation or the like of the color image sensor.
The printer unit 4 has the printer CPU 41 that controls operations of the printer unit, a laser driver 42 that drives a laser, a conveyance control unit 43 that controls conveyance of a sheet, and a control unit 44 that performs charging, development, and transfer.
The image processing unit 15, the network interface 16, the image correcting unit 34, and the laser driver 42 are connected by the image data bus 18.
The PC 200 provides the image forming apparatus 100 with print data. The PC 200 creates print data such as a text and a figure using application software. The print data created by the PC 200 is supplied to the image forming apparatus 100 via the network 300.
Image data read by the scanner unit 3 are sequentially inputted to the memory circuit 53. Plural (in this example, for five lines) image data, each of which temporally shifted by one line, are simultaneously outputted from the memory circuit 53.
Image data of a line serving as a reference (hereinafter referred to as reference line data) and image data of plural lines before and behind the reference line data are supplied to the arithmetic circuit 54. The arithmetic circuit 54 applies matrix operations such as filtering processing, color conversion processing, and gradation processing to the respective image data inputted. An output of the arithmetic circuit 54 is supplied to the printer unit 4.
The operation unit 2 and the ROM 12 are connected to the main CPU 11. It is possible to indicate intensity of sharpness and the like with the operations keys 22 of the operation unit 2. A filtering coefficient and the like for the filtering processing are stored in the ROM 12. Since a method of the matrix operations in the arithmetic circuit 54 is a well-known technique and is not an aim of the invention, a detailed explanation of the method is omitted.
The memory control unit 51 uses four FIFO memories M1, M2, M3, and M4 in the memory circuit 53. The memory control unit 51 has a memory access control circuit 61, a line counter 62, an input selection circuit 63, an output selection circuit 64, and input terminals 65, 66, and 67.
The scanner unit 3 repeats main scanning (line scanning) plural times while performing sub-scanning once to read an image of an original and sequentially supplies image data Din for each line read to the input terminal 65 of the memory control unit 51. The scanner unit 3 supplies a line synchronization signal H generated on the basis of the main scanning to the input terminal 66 and supplies a sub-scanning area signal V representing an image effective area generated on the basis of the sub-scanning to the input terminal 67.
The line synchronization signal H and the sub-scanning area signal V are inputted to the memory access control circuit 61 and the line counter 62, respectively. The line counter 62 counts the number of lines of the input image data Din using the line synchronization signal H and the sub-scanning area signal V and outputs a counter value of the number of lines. The memory access control circuit 61 creates ON/OFF control signals for memory access to the FIFO memories M1 to M4 using the line synchronization signal H, the sub-scanning area signal V, and the counter value from the line counter 62.
The input selection circuit 63 selects the FIFO memories, in which the input image data Din are written, in order. The input selection circuit 63 includes plural selectors 631 to 634 and performs control to select one of the FIFO memories M1 to M4 in order according to the ON/OFF control signals for memory access and write the input image data Din in order.
In the writing of the image data in the FIFO memories, the number of lines of input image data is counted and, for example, a first line of the input image data is written in the FIFO memory M1 and a second line is written in the FIFO memory 2. A third line is written in the FIFO memory M3 and a fourth line is written in the FIFO memory M4.
The output selection circuit 64 selects readout of image data from the FIFO memories M1 to M4 according to a counter value of the line counter 62. A detailed structure and operations of the output selection circuit 64 will be explained with reference to
In
Image data D0 to D4 for five lines are simultaneously inputted to the arithmetic circuit 54 of the arithmetic processing unit 52. Among the image data D0 to D4 for five lines, D0 corresponds to the input image data Din inputted to the input terminal 65 and D1 to D4 correspond to the data R1 to R4 outputted from the output selection circuit 64.
The arithmetic circuit 54 applies a matrix operation such as filter processing to the respective image data D0 to D4 inputted and outputs image data Dout subjected to the arithmetic processing from the output terminal 68.
For example, in the selector 71, the input terminal 0 is connected to the output terminal of the FIFO memory M1, the input terminal 1 is connected to the output terminal of the FIFO memory M2, the input terminal 2 is connected to the output terminal of the FIFO memory M3, and the input terminal 3 is connected to the output terminal of the FIFO memory M4.
The input terminals 0, 1, 2, and 3 of the selector 72 are connected to the output terminals of the FIFO memories M4, M1, M2, and M3, respectively. The input terminals 0, 1, 2, and 3 of the selector 73 are connected to the output terminals of the FIFO memories M3, M4, M1, and M2, respectively. The imputer terminals 0, 1, 2, and 3 of the selector 74 are connected to the output terminals of the FIFO memories M2, M3, M4, and M1, respectively.
Sings M1 to M4 affixed beside the input terminals 0, 1, 2, and 3 of the respective selectors 71 to 74 indicate to which FIFO memories M1 to M4 the respective input terminals 0, 1, 2, and 3 are connected. In this way, the input terminals 0, 1, 2, and 3 of the respective selectors 71 to 74 are connected to the output terminals of the FIFO memories M1 to M4 while being sequentially shifted.
The selectors 71 to 74 select and output one of the image data supplied to the input terminals 0, 1, 2, and 3. The selectors 71 to 74 are subjected to selection control according to a counter value of the line counter 62.
For example, when the counter value is 1, the selectors 71 to 74 select and output image data inputted to the input terminals 3 thereof, respectively. When the counter value is 2, the selectors 71 to 74 select and output image data inputted to the input terminals 0 thereof, respectively. When the counter value is 3, the selectors 71 to 74 select and output image data inputted to the input terminals 1, respectively. When the counter value is 4, the selectors 71 to 74 select and output image data inputted to the input terminals 2, respectively.
When the counter value increases to 5, the selectors 71 to 74 select and output image data inputted to the input terminals 3 thereof again. Subsequently, the selectors 71 to 74 cyclically repeat the same selection operation according to an increase in the counter value.
In
W1 to W4 indicate writing timing of image data in the FIFO memories M1, M2, M3, and M4. R1 to R4 indicate output timing of the output selection circuit 64. It is indicated that image data read out from the FIFO memories M1, M2, M3, and M4 are outputted at timing of R1 to R4. D0 to D4 indicate input timing of image data to the arithmetic circuit 54.
Writing of image data in the FIFO memories M1, M2, M3, and M4 is selected by the input selection circuit 63. The image data are sequentially written in any one of the FIFO memories. At the timing of W1, the image data of the lines L1, L5, and the like are written in the FIFO memory M1. At the timing of W2, the image data of the lines L2, L6, and the like are written in the FIFO memory M2. At the timing of W3, image data of the lines L3, L7, and the like are written in the FIFO memory M3. At the timing of W4, the image data of the lines L4, L8, and the like are written in the FIFO memory M4.
The memory access control circuit 61 outputs memory access signals to the FIFO memories M1, M2, M3, and M4 and controls any one of the FIFO memories to come into an enable state. At the timing of W1 to W4, the memory access control circuit 61 writes image data in the FIFO memories M1, M2, M3, and M4.
In this way, the image data each shifted by one line are periodically written in the FIFO memories M1 to M4 once in four lines. Consequently, the number of times of access of writing is reduced.
On the other hand, the image data written in the FIFO memories M1, M2, M3, and M4 are read out in order from data written first and supplied to the output selection circuit 64. The output selection circuit 64 selects the image data inputted to the input terminals 0 to 3 of the four selectors 71, 72, 73, and 74 according to a count value of the line counter 62 and outputs the image data in order.
At a certain count value, the selector 71 selects an output of the FIFO memory M1, the selector 72 selects an output of the FIFO memory M4, the selector 73 selects an output of the FIFO memory M3, and the selector 74 selects an output of the FIFO memory M2. At the next count value, the selector 71 selects an output of the FIFO memory M2, the selector 72 selects an output of the FIFO memory M1, the selector 73 selects an output of the FIFO memory M4, and the selector 74 selects an output from the FIFO memory M3.
In this way, the selectors 71 to 74 rearrange the group of image data (D1 to D4), which are read out from the FIFO memories M1, M2, M3, and M4, in order for each line and output the image data in accordance with the progress of the count of the line counter 62. As a result, readout is executed at the timing indicated by R1 to R4 in
The group of image data (D1 to D4) shifted in order for each line are simultaneously outputted from the selectors 71 to 74 of the output selection circuit 64. The respective image data delayed in line from the FIFO memories M1, M2, M3, and M4 are rearranged and supplied to the arithmetic circuit 54.
As indicated by timing t1, t2, t3, and t4 in
As described above, in the image forming apparatus of the invention, writing access to the FIFO memories only has to be performed once for four lines with respect to any one of the FIFO memories. When the image processing unit 15 is constituted by an ASIC, it is possible to reduce power consumption by reducing the number of times of access to the FIFO memories.
In the example explained above, the image data for five lines are supplied to the arithmetic circuit 54. However, it is also possible that image data for seven lines are simultaneously inputted to the arithmetic circuit 54, image data of a fourth line is set as reference line data, and arithmetic processing is performed using image data of three lines before and three lines behind the reference line data. Alternatively, it is also possible that image data for three lines are simultaneously inputted to the arithmetic circuit 54, image data of a second line is set as reference line data, and arithmetic processing is performed using image data of one line before and one line behind the reference line data.
Although exemplary embodiments of the present invention have been shown and described, it will be apparent to those having ordinary skill in the art that a number of changes, modifications, or alterations to the invention as described herein may be made, none of which depart from the spirit of the present invention. All such changes, modifications, and alterations should therefore be seen as within the scope of the present invention.