US20140095744A1 - Data transfer device and method - Google Patents
Data transfer device and method Download PDFInfo
- Publication number
- US20140095744A1 US20140095744A1 US14/011,264 US201314011264A US2014095744A1 US 20140095744 A1 US20140095744 A1 US 20140095744A1 US 201314011264 A US201314011264 A US 201314011264A US 2014095744 A1 US2014095744 A1 US 2014095744A1
- Authority
- US
- United States
- Prior art keywords
- data
- blank
- horizontal
- signal
- pieces
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F5/00—Methods or arrangements for data conversion without changing the order or content of the data handled
- G06F5/06—Methods or arrangements for data conversion without changing the order or content of the data handled for changing the speed of data flow, i.e. speed regularising or timing, e.g. delay lines, FIFO buffers; over- or underrun control therefor
- G06F5/10—Methods or arrangements for data conversion without changing the order or content of the data handled for changing the speed of data flow, i.e. speed regularising or timing, e.g. delay lines, FIFO buffers; over- or underrun control therefor having a sequence of storage locations each being individually accessible for both enqueue and dequeue operations, e.g. using random access memory
- G06F5/12—Means for monitoring the fill level; Means for resolving contention, i.e. conflicts between simultaneous enqueue and dequeue operations
- G06F5/14—Means for monitoring the fill level; Means for resolving contention, i.e. conflicts between simultaneous enqueue and dequeue operations for overflow or underflow handling, e.g. full or empty flags
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N1/00—Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
- H04N1/21—Intermediate information storage
- H04N1/2104—Intermediate information storage for one or a few pictures
- H04N1/2112—Intermediate information storage for one or a few pictures using still video cameras
- H04N1/2129—Recording in, or reproducing from, a specific memory area or areas, or recording or reproducing at a specific moment
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N23/00—Cameras or camera modules comprising electronic image sensors; Control thereof
- H04N23/80—Camera processing pipelines; Components thereof
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/04—Synchronising
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/04—Synchronising
- H04N5/06—Generation of synchronising signals
- H04N5/067—Arrangements or circuits at the transmitter end
- H04N5/073—Arrangements or circuits at the transmitter end for mutually locking plural sources of synchronising signals, e.g. studios or relay stations
- H04N5/0736—Arrangements or circuits at the transmitter end for mutually locking plural sources of synchronising signals, e.g. studios or relay stations using digital storage buffer techniques
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/18—Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast
Definitions
- the present disclosure is related to a data transfer device, a data transfer method and a semiconductor device.
- a device receives image data, stores the image data in a memory, reads the image data from the memory, and performs image processing such as decoding on the read image data.
- the device may be a digital still camera which displays image data read from a memory on a display unit.
- a device includes various processing circuits, whereby each processing circuit accesses a memory to write in data and read data. Access requests to the memory from two or more processing circuits may occur simultaneously. When access requests to the memory conflict with each other, access to the memory by one or more processing circuits needing image data may be delayed from a desired timing. Delay of access to the memory may result in a so-called transfer failure where one or a plurality of processing circuits are unable to acquire necessary image data at desired timings. For example, when a digital still camera transfers image data to a display unit, a delayed readout of image data from the memory may result in the read image data missing a desired transfer timing to the display unit. The transfer failure may cause a disturbance in the image displayed on the display unit.
- a data transfer device includes a transfer control circuit that reads data stored in a first storage unit to store the data in a second storage unit, outputs data in the second storage unit in response to a data request signal, and outputs a state signal in accordance with an amount of stored data in the second storage unit, wherein the state signal indicates whether the second storage unit is in a first storage state in which the amount of stored data in the second storage unit is relatively large or in a second storage state in which the amount of stored data in the second storage unit is relatively small; a blank control unit that receives the state signal from the transfer control circuit and outputs a blank addition signal, wherein when the state signal indicates that the second storage unit is in the second storage state, the blank control unit outputs the blank addition signal until the second storage unit changes to the first storage state based on the state signal; a horizontal synchronizing signal generating unit that generates a horizontal synchronizing signal and delays, in accordance with the blank addition signal, a horizontal count value and the horizontal synchronizing signal, which is
- FIG. 1 is a schematic block diagram of an imaging device
- FIG. 2 is a partial block diagram of an image signal processor
- FIG. 3A is a schematic view of an output image of an imaging unit
- FIG. 3B is a timing diagram illustrating output of the imaging unit
- FIG. 4A is an explanatory diagram of re-input data
- FIG. 4B is a timing diagram illustrating transfer of re-input data
- FIG. 5 is a block diagram of a signal generating unit
- FIGS. 6 to 10 are flow charts illustrating processes performed by a blank control unit
- FIGS. 11 and 12 are flow charts illustrating processes performed by a horizontal synchronizing signal generating unit
- FIGS. 13A and 13B are flow charts illustrating processes performed by a vertical synchronizing signal generating unit
- FIG. 14 is a flow chart illustrating processes performed by an image data output unit
- FIGS. 15 to 17 are operation timing diagrams of a signal generating unit.
- FIGS. 18A and 18B are schematic views of image data of one frame.
- FIG. 1 illustrates an imaging device that is a digital still camera or the like.
- the imaging device includes an imaging unit 11 , an image signal processor (ISP) 12 , a memory 13 , and a display device 14 .
- ISP image signal processor
- the imaging unit 11 includes an imaging optical system 21 , an image sensor unit 22 , and an analog front end (AFE) 23 .
- the imaging optical system 21 includes a plurality of lenses (such as a focusing lens) which focuses light from a subject, and a diaphragm which adjusts the amount of light having passed through the lenses.
- the imaging optical system 21 guides an optical image of the subject to the image sensor unit 22 .
- the image sensor unit 22 includes a Bayer array color filter and a plurality of imaging elements. Each imaging element is a charge coupled device (CCD) image sensor. Each imaging element outputs an imaging signal (analog signal) corresponding to the amount of light received via the color filter.
- CCD charge coupled device
- the AFE 23 converts the imaging signal received from the image sensor unit 22 from analog to digital to create captured data, and outputs the captured data.
- the AFE 23 supplies a control signal SR supplied from the image signal processor 12 to the image sensor unit 22 in accordance with a synchronizing signal.
- the synchronizing signal includes a vertical synchronizing signal representing a separator of a single field and a horizontal synchronizing signal representing a separator of a single line.
- the image signal processor 12 includes a plurality of processing units 31 to 37 , a direct memory access (DMA) arbitration unit 38 , a memory controller 39 , and a CPU (control unit) 40 .
- the plurality of processing units 31 to 37 may include a sensor interface (sensor I/F) 31 , an input image correction unit 32 , a correction unit 33 , an image processing unit 34 , a still image codec unit 35 , a memory card interface (memory card I/F) 36 , and a display interface (display I/F) 37 .
- the sensor I/F 31 , the input image correction unit 32 , the correction unit 33 , the image processing unit 34 , the still image codec unit 35 , the memory card I/F 36 , the display I/F 37 , and the DMA arbitration unit 38 are connected to one another via an internal bus 41 .
- the DMA arbitration unit 38 is connected to the memory 13 via the memory controller 39 .
- the memory 13 is an example of the first storage unit.
- the memory 13 is a synchronous dynamic random access memory (SDRAM).
- SDRAM synchronous dynamic random access memory
- the memory 13 stores captured data which is outputted from the imaging unit 11 and routed through the sensor I/F 31 .
- the memory 13 stores processed image data generated by the processing units 32 to 35 .
- the sensor I/F 31 receives captured data (RGB-format Bayer data) from the imaging unit 11 and stores the captured data in the memory 13 .
- the input image correction unit 32 performs correction on image data stored in the memory 13 and outputs corrected image data.
- the correction performed on the image data may be gamma correction which adjusts luminance or contrast, shading correction which adjusts uneven brightness, and the like.
- the corrected image data generated by the input image correction unit 32 is supplied to one or a plurality of circuits depending on an operating mode of the imaging device.
- the corrected image data is stored in the memory 13 when the imaging device is in a first operating mode, supplied to the display I/F 37 when the imaging device is in a second operating mode, and supplied to the correction unit 33 when the imaging device is in a third operating mode.
- the correction unit 33 performs correction on image data read from the memory 13 or image data supplied from the input image correction unit 32 and stores the corrected image data in the memory 13 .
- correction performed by the correction unit 33 may be a process for correcting image distortion attributable to the imaging optical system 21 , color correction such as tone modification based on set parameters, and the like.
- the image processing unit 34 performs resolution conversion, edge enhancement, denoising, and the like.
- the image processing unit 34 may include a plurality of image processing units.
- the still image codec unit 35 reads image data stored in the memory 13 , encodes the image data according to a certain method such as joint photographic experts group (JPEG), and stores the encoded image data (coded data) in the memory 13 .
- JPEG joint photographic experts group
- the processing units 31 to 35 are non-restrictive examples and may be modified as appropriate.
- the memory card I/F 36 is connected to a detachable memory card 15 that is mounted to the imaging device.
- the memory card I/F 36 stores data (for example, compressed image data) stored in the memory 13 in the memory card 15 .
- the display I/F 37 is connected to the display device 14 .
- the display device 14 is a liquid crystal display (LCD).
- the display device 14 displays an image to be photographed (photographic frame), displays a photographed image, displays remaining battery level of the imaging device and a photography mode, and the like.
- the display I/F 37 reads image data stored in the memory 13 and outputs the image data to the display device 14 .
- the display device 14 may be an electronic view finder (EVF) or an interface for connecting the image signal processor 12 to an external monitor (for example, a high-definition multimedia interface (HDMI)).
- EMF electronic view finder
- HDMI high-definition multimedia interface
- the sensor I/F 31 , the input image correction unit 32 , the correction unit 33 , the image processing unit 34 , the still image codec unit 35 , the memory card I/F 36 , and the display I/F 37 respectively include direct memory access controllers (DMACs) 31 a to 37 a .
- the DMACs 31 a to 37 a output access requests in accordance with processes performed by corresponding circuits 31 to 37 . For example, in order for the sensor I/F 31 to store captured data outputted from the imaging unit 11 in the memory 13 , the DMAC 31 a provided in the sensor I/F 31 outputs a write request.
- the DMAC 37 a In order for the display I/F 37 to read image data to be displayed on the display device 14 from the memory 13 , the DMAC 37 a provided in the display I/F 37 outputs a read request.
- the respective DMACs 31 a to 37 a are examples of transfer control circuits.
- the DMA arbitration unit 38 arbitrates mutually conflicting requests outputted from the DMACs 31 a to 37 a of the circuits 31 to 37 according to priorities respectively set to the processing units 31 to 37 , and permits one of the circuits 31 to 37 to access the memory 13 .
- the circuit with the access permission outputs a control signal for accessing the memory 13 .
- the control signal is a read request
- the memory controller 39 reads data from the memory 13 and outputs the read data to the request source in accordance with the control signal.
- the memory controller 39 outputs a write request and the data outputted from the source of the write request to the memory 13 , and the memory 13 stores the data.
- the CPU 40 integrally controls the entire image signal processor 12 .
- the CPU 40 controls setting of information necessary for processes to the respective processing units, writing of data, reading of data, and the like.
- the CPU 40 sets operating modes and various parameters according to operation signals from an operating unit (not illustrated).
- the image signal processor 12 receives image data GD outputted from the imaging unit 11 .
- the image data GD is stored in the memory 13 via the correction circuit 31 b and the transfer control circuit (TFRch) 31 a included in the sensor I/F 31 and via the memory interface (memory I/F) 45 .
- the correction circuit 31 b performs certain correction on the image data GD.
- the correction may be white balance adjustment, gain adjustment, defect signal correction, or the like.
- the transfer control circuit 31 a corresponds to the DMAC 31 a illustrated in FIG. 1 .
- the memory I/F 45 corresponds to the DMA arbitration unit 38 and the memory controller 39 illustrated in FIG. 1 .
- the transfer control circuit 31 a outputs a request signal REQ to write to the memory 13 .
- the memory I/F 45 outputs a memory access permission signal ACK.
- the transfer control circuit 31 a outputs an address signal ADDR indicating an area to which image data is to be written and image data MDT.
- the address signal ADDR and the image data MDT are supplied to the memory 13 via the memory I/F 45 .
- the image data MDT is stored in a storage area of the memory 13 which corresponds to the address signal ADDR.
- the input image correction unit 32 includes a transfer control circuit 32 a , a signal generating unit 32 b , and a correction circuit 32 c .
- the transfer control circuit 32 a outputs a request signal REQ for reading image data from the memory 13 in response to a correction start signal.
- the memory I/F 45 outputs a memory access permission signal ACK.
- the transfer control circuit 32 a outputs an address signal ADDR which indicates an area from which image data is to be read.
- the memory 13 outputs data MDT stored in the storage area of the memory 13 corresponding to the address signal ADDR. The data MDT outputted from the memory 13 is supplied to the transfer control circuit 32 a via the memory I/F 45 .
- the transfer control circuit 32 a outputs image data to the signal generating unit 32 b in response to the data request by the signal generating unit 32 b .
- the signal generating unit 32 b outputs synchronizing signals VD and HD and image data PD to the correction circuit 32 c .
- the transfer control circuit 32 a and the signal generating unit 32 b are examples of a data transfer unit or a data transfer device.
- the correction circuit 32 c receives the image data PD in accordance with the synchronizing signals VD and HD, performs correction on the image data PD, and generates corrected image data.
- the corrected image data is supplied to the display device 14 .
- the corrected image data may be also stored in the memory 13 in one operating mode and stored in the correction circuit 33 b of the correction unit 33 as depicted by the dashed line in another operating mode.
- the image signal processor 12 temporarily stores image data received from the imaging unit 11 in the external memory 13 and reacquires the image data from the memory 13 .
- the image signal processor 12 performs a process (a first process) on the image data read from the memory 13 and stores the processed image data in the memory 13 . Subsequently, when another process (a second process) is requested, the image signal processor 12 reacquires the processed image data from the memory 13 .
- a process for reacquiring image data from the external memory 13 may be referred to as a re-input process.
- the correction unit 33 includes a transfer control circuit 33 a and a correction circuit 33 b .
- the transfer control circuit 33 a exchanges various signals with the memory I/F 45 and accesses the memory 13 .
- the correction circuit 33 b performs correction on image data read from the memory 13 or image data supplied from the correction circuit 32 c and stores the corrected image data in the memory 13 .
- the image processing unit 34 includes a transfer control circuit 34 a and a processing circuit 34 b .
- the transfer control circuit 34 a exchanges various signals with the memory I/F 45 and accesses the memory 13 .
- the processing circuit 34 b performs one or a plurality of processes on the image data read from the memory 13 and stores the processed image data in the memory 13 .
- the image data PD outputted from the signal generating unit 32 b includes image data read from the memory 13 and blank data added to the image data by the signal generating unit 32 b .
- the blank data is used by the correction circuit 32 c to perform correction.
- Image data GD and PD will now be described.
- the image data GD includes a plurality of pieces of pixel data GP.
- the plurality of pieces of pixel data GP respectively corresponds to the plurality of imaging elements that constitutes the image sensor unit 22 of the imaging unit 11 illustrated in FIG. 1 .
- the imaging unit 11 outputs pixel data GP corresponding to analog signals of the plurality of imaging elements in a sequence depicted by arrows in FIG. 3A in accordance with an arrangement of the imaging elements.
- the imaging unit 11 outputs the image data GD at timings in accordance with a clock signal CLK, vertical synchronizing signals VDs, and horizontal synchronizing signals HDs.
- One cycle of the vertical synchronizing signals VDs is a period in which image data GD of one frame (one screen) is outputted
- one cycle of the horizontal synchronizing signals HDs is a period in which one line of image data GD is outputted.
- image data PD includes image data GD of one frame and blank data BD.
- the image data GD may correspond to a valid image.
- a horizontal image size HIMG indicates the number of pieces of data in the image data GD in a horizontal direction.
- a vertical image size VIMG indicates the number of pieces of data in the image data GD in a vertical direction or, in other words, the number of lines in the image data GD.
- the signal generating unit 32 b ( FIG. 2 ) outputs blank data and image data in accordance with a clock signal CLK, a vertical synchronizing signal VD, and a horizontal synchronizing signal HD.
- the blank data BD includes vertical preceding blank data VSB that is outputted before line data including a first line of the image data GD, vertical subsequent blank data VEB that is outputted after line data including a final line of the image data GD, horizontal preceding blank data HSB that is outputted before the respective lines of the image data GD, and horizontal subsequent blank data HEB that is outputted after the respective lines of the image data GD.
- the image data PD is two-dimensionally arranged (in a matrix pattern) in an output sequence in accordance with synchronizing signals VD and HD
- the blank data BD is arranged on a circumference of the image data GD.
- a size (for example, the number of pixels or the number of lines) of an area corresponding to each piece of blank data VSB, VEB, HSB, and HEB may be referred to as a blank size.
- the number of lines or, in other words, the number of pieces of data in the vertical direction in the vertical preceding blank data VSB is referred to as a vertical preceding blank size VSB and the number of lines in the vertical subsequent blank data VEB is referred to as a vertical subsequent blank size VEB.
- the numbers of pieces of data in the horizontal preceding blank data HSB and the horizontal subsequent blank data HEB of each line will be respectively referred to as a horizontal preceding blank size HSB and horizontal subsequent blank size HEB.
- a structure of the image data GD illustrated in FIG. 3A may not always be adequate for the correction performed by the correction circuit 32 c ( FIG. 2 ).
- the correction circuit 32 c when performing correction on one piece of pixel data, the correction circuit 32 c requires the one piece of pixel data that is the correction object as well as a plurality of pieces of pixel data surrounding the one piece of pixel data. Therefore, the correction circuit 32 c is unable to perform correction on pixel data on the periphery of the image data GD illustrated in FIG. 3A and, as a result, the number of pieces of pixel data after correction is reduced by the number of pieces of peripheral pixel data.
- the correction circuit 32 c is able to perform correction on pixel data on the periphery of the image data GD. As a result, a reduction in the number of pieces of pixel data after correction is prevented.
- the correction is one of the reasons for adding the blank data BD.
- the plurality of transfer control circuits 31 a to 34 a accesses the memory 13 via the memory I/F 45 . Therefore, transfer of image data to the transfer control circuit 32 a is intermittently performed.
- the signal generating unit 32 b sequentially outputs image data PD in accordance with synchronizing signals VD and HD.
- a transfer timing of image data from the memory 13 to the transfer control circuit 32 a differs from a timing at which the signal generating unit 32 b requests image data. Therefore, the transfer control circuit 32 a includes a first-in-first-out (FIFO) memory 32 d which temporarily stores image data.
- the transfer control circuit 32 a stores image data transferred from the memory 13 in the FIFO memory 32 d .
- the transfer control circuit 32 a outputs image data in the FIFO memory 32 d in accordance with a data request made by the signal generating unit 32 b .
- the FIFO memory 32 d is an example of the second storage unit.
- the signal generating unit 32 b includes a blank control unit (denoted by “BLNK Ctrl”) 51 , a horizontal synchronizing signal generating unit (denoted by “HD Gen”) 52 , a vertical synchronizing signal generating unit (denoted by “VD Gen”) 53 , and an output data generating unit (denoted by “IMG Gen”) 54 .
- BLNK Ctrl blank control unit
- HD Gen horizontal synchronizing signal generating unit
- VD Gen vertical synchronizing signal generating unit
- IMG Gen output data generating unit
- the transfer control circuit 32 a starts processing in response to a start signal OPEN. First, the transfer control circuit 32 a outputs a request signal REQ. Upon receiving a memory access permission signal ACK from the memory I/F 45 illustrated in FIG. 2 , the transfer control circuit 32 a outputs an address signal ADDR. The transfer control circuit 32 a receives image data MDT outputted from the memory 13 via the memory I/F 45 and stores the image data MDT in the FIFO memory 32 d . The transfer control circuit 32 a reads image data RDT from the FIFO memory 32 d in response to a data request signal DTEN supplied from the output data generating unit 54 , and outputs the image data RDT to the output data generating unit 54 in accordance with a clock signal CLK.
- the transfer control circuit 32 a transfers image data stored in the memory 13 illustrated in FIG. 2 to the output data generating unit 54 . After transferring the number of pieces of image data corresponding to the horizontal image size HIMG and the vertical image size VIMG stored in a register 32 e , the transfer control circuit 32 a ends processing on image data of one frame.
- the transfer control circuit 32 a outputs a memory state signal FST corresponding to a state of the FIFO memory 32 d .
- the FIFO memory 32 d stores the input data MDT at a position (address) indicated by a write pointer WP and updates the write pointer WP.
- the FIFO memory 32 d outputs data RDT at a position (address) indicated by a read pointer RP and updates the read pointer RP. Updating the pointers WP and RP means changing the pointers WP and RP to a value indicating a position where a next piece of data is to be written or a position where a next piece of data is to be read.
- the data RDT is an example of first output data.
- the FIFO memory 32 d adopts values obtained by adding a certain value (for example, “1”) to the pointers WP and RP as updated pointers WP and RP.
- n for example, 512
- the FIFO memory 32 d outputs data RDT at a position indicated by the read pointer RP, and updates the read pointer RP so that the read pointer RP indicates a position of a next piece of readout data (for example, by adding “+1” to the read pointer RP).
- the read pointer RP reaches a value (for example, 512) corresponding to the memory capacity
- the FIFO memory 32 d cycles the read pointer RP by a value (for example, 0 to 511) corresponding to the memory capacity.
- the transfer control circuit 32 a Based on the write pointer WP and the read pointer RP, the transfer control circuit 32 a monitors the amount of data stored in the FIFO memory 32 d and controls writing of data to the FIFO memory 32 d .
- the transfer control circuit 32 a outputs a memory state signal FST corresponding to the amount of stored data in the FIFO memory 32 d.
- the transfer control circuit 32 a calculates the number of pieces of data MNM stored in the FIFO memory 32 d .
- the number of pieces of data MNM is the number of pieces of unread data among the data stored in the FIFO memory 32 d .
- the transfer control circuit 32 a compares the available capacity MEP with the number of pieces of data that is transferred to the transfer control circuit 32 a from the memory 13 in response to one request signal REQ (burst transfer amount). When the available capacity MEP is equal to or greater than the burst transfer amount, the transfer control circuit 32 a outputs a request signal REQ to the memory I/F 45 illustrated in FIG. 2 .
- the transfer control circuit 32 a calculates data storage efficiency MRT.
- the data storage efficiency MRT is a proportion (percentage: %) of the number of pieces of data MNM to the available capacity MEP.
- the data storage efficiency MRT represents a storage state of data in the FIFO memory 32 d .
- the transfer control circuit 32 a outputs a memory state signal FST based on the data storage efficiency MRT.
- the FIFO memory 32 d when the data storage efficiency MRT is lower than 20%, the FIFO memory 32 d is in an approximately empty state (EMPTY). When the data storage efficiency MRT is equal to or higher than 20% and lower than 80%, the FIFO memory 32 d is in a somewhat full state (MODERATE). When the data storage efficiency MRT is equal to or higher than 80%, the FIFO memory 32 d is in an approximately full state (FULL).
- the transfer control circuit 32 a outputs memory state signals FST which distinguish and indicate the three states.
- the transfer control circuit 32 a outputs a memory state signal FST having a value “0” representing a first state (EMPTY), a memory state signal FST having a value “1” representing a second state (MODERATE), and a memory state signal FST having a value “2” representing a third state (FULL).
- EMPY a memory state signal
- MODERATE a memory state signal
- FULL third state
- the values of the data storage efficiency MRT and the values of the memory state signals FST are exemplary and may be modified as appropriate.
- the register 32 e stores various parameters related to operations of the transfer control circuit 32 a and the signal generating unit 32 b .
- the various parameters include the various sizes (HIMG, VIMG, VSB, VEB, HSB, and HEB) described above and an inter-synchronizing signal blank size VHB.
- the inter-synchronizing signal blank size VHB represents the number of pieces of blank data that is transferred between a vertical synchronizing signal VD and a first-line horizontal synchronizing signal HD.
- the blank control unit 51 starts processing in response to the start signal OPEN.
- the blank control unit 51 receives the clock signal CLK, the memory state signal FST outputted from the transfer control circuit 32 a , the vertical preceding blank size VSB, the vertical succeeding blank size VEB, the horizontal preceding blank size HSB, and the horizontal succeeding blank size HEB stored in the register 32 e , a horizontal count value HCNT outputted from the horizontal synchronizing signal generating unit 52 , and a vertical count value VCNT outputted from the vertical synchronizing signal generating unit 53 .
- the blank control unit 51 generates and outputs a blank addition signal BAD and a blank deletion signal BSK based on the memory state signal FST, the vertical preceding blank size VSB, the vertical succeeding blank size VEB, the horizontal preceding blank size HSB, the horizontal succeeding blank size HEB, the horizontal count value HCNT, and the vertical count value VCNT.
- the horizontal synchronizing signal generating unit 52 starts processing in response to the start signal OPEN.
- the horizontal synchronizing signal generating unit 52 receives the horizontal preceding blank size HSB, the horizontal succeeding blank size HEB, the inter-synchronizing signal blank size VHB, and the horizontal image size HIMG stored in the register 32 e .
- the horizontal synchronizing signal generating unit 52 receives the clock signal CLK, the blank addition signal BAD and the blank deletion signal BSK outputted from the blank control unit 51 , the vertical synchronizing signal VD outputted from the vertical synchronizing signal generating unit 53 , and the output data PD outputted from the output data generating unit 54 .
- the horizontal synchronizing signal generating unit 52 outputs a horizontal synchronizing signal HD in accordance with the clock signal CLK and at a timing based on the horizontal preceding blank size HSB, the horizontal succeeding blank size HEB, the inter-synchronizing signal blank size VHB, the horizontal image size HIMG, the blank addition signal BAD, the blank deletion signal BSK, and the vertical synchronizing signal VD.
- the horizontal synchronizing signal generating unit 52 includes a horizontal counter which counts the number of pieces of output data PD and outputs a count value HCNT of the horizontal counter (also referred to as a horizontal count value).
- the horizontal synchronizing signal generating unit 52 presets the horizontal count value HCNT to a certain value (for example, “1”) in response to the vertical synchronizing signal VD and the horizontal synchronizing signal HD.
- the vertical synchronizing signal generating unit 53 starts processing in response to the start signal OPEN.
- the vertical synchronizing signal generating unit 53 receives the vertical preceding blank size VSB, the vertical succeeding blank size VEB, and the vertical image size VIMG stored in the register 32 e .
- the vertical synchronizing signal generating unit 53 receives the clock signal CLK, and the horizontal synchronizing signal HD and the horizontal count value HCNT outputted from the horizontal synchronizing signal generating unit 52 .
- the vertical synchronizing signal generating unit 53 outputs the vertical synchronizing signal VD in accordance with the clock signal CLK and at a timing based on the vertical preceding blank size VSB, the vertical succeeding blank size VEB, the vertical image size VIMG, the horizontal synchronizing signal HD, and the horizontal count value HCNT.
- the vertical synchronizing signal generating unit 53 includes a vertical counter which counts the horizontal synchronizing signal HD and outputs a count value VCNT of the vertical counter (also referred to as a vertical count value).
- the vertical synchronizing signal generating unit 53 presets the vertical count value VCNT to a certain value (for example, “0”) in response to the vertical synchronizing signal VD.
- the output data generating unit 54 supplies the data request signal DTEN to the transfer control circuit 32 a and receives the image data RDT outputted from the transfer control circuit 32 a .
- the output data generating unit 54 receives the vertical preceding blank size VSB, the vertical image size VIMG, the horizontal preceding blank size HSB, and the horizontal image size HIMG stored in the register 32 e .
- the output data generating unit 54 receives the vertical synchronizing signal VD and the vertical count value VCNT outputted from the vertical synchronizing signal generating unit 53 and the horizontal synchronizing signal HD and the horizontal count value HCNT outputted from the horizontal synchronizing signal generating unit 52 .
- the output data generating unit 54 outputs the image data PD based on the vertical preceding blank size VSB, the vertical image size VIMG, the horizontal preceding blank size HSB, the horizontal image size HIMG, the vertical synchronizing signal VD, the vertical count value VCNT, the horizontal synchronizing signal HD, and the horizontal count value HCNT.
- the image data PD includes the image data RDT supplied from the transfer control circuit 32 a and the blank data BD.
- the blank control unit 51 determines whether or not re-input has started.
- an H-level start signal OPEN indicates start of re-input.
- the start signal OPEN is at an L-level
- the blank control unit 51 determines that re-input has not started (NO in block 101 ) and stands by (loop in block 101 ).
- the start signal OPEN is at the H-level
- the blank control unit 51 determines that re-input has started (YES in block 101 ).
- the blank control unit 51 determines whether or not the vertical synchronizing signal VD has been asserted (for example, at the H-level). For example, when the vertical synchronizing signal VD has not been asserted (NO in block 102 ), the blank control unit 51 stands by. When the vertical synchronizing signal VD is asserted, in block 103 , the blank control unit 51 calculates the total number of pieces of adjustable blank data BRM.
- the total number of pieces of blank data BRM is a sum of the number of pieces of data of the horizontal succeeding blank data HEB and the number of pieces of data of the vertical succeeding blank data VEB in the image data PD illustrated in FIG. 4A .
- Transfer of the image data GD is completed within a certain period (for example, one vertical scanning period from the assertion of one vertical synchronizing signal VD to the assertion of a next vertical synchronizing signal VD).
- the vertical preceding blank data VSB is necessary for determining whether or not each piece of line data in the image data PD of one frame is line data including the image data GD.
- the horizontal preceding blank data HSB is necessary for determining a start of the image data GD in data of each line.
- the number of pieces of blank data may be modified from the moment transfer of the image data GD ends until the next horizontal synchronizing signal HD is received.
- the number of pieces of blank data may be modified from the moment transfer of the image data GD ends until the next vertical synchronizing signal VD is received.
- the horizontal succeeding blank data HEB and the vertical succeeding blank data VEB are adjustable blank data whose size is changeable.
- the total number of pieces of blank data BRM may be calculated according to the following equation.
- the blank control unit 51 stores the total number of pieces of blank data BRM calculated in block 103 as an initial value IBRM in, for example, the register 32 e.
- the blank control unit 51 determines whether or not a VEB output area or, in other words, the vertical succeeding blank data VEB is currently being outputted.
- the blank control unit 51 executes block 106
- the blank control unit 51 executes block 109 illustrated in FIG. 7 .
- the blank control unit 51 determines whether or not an HEB output area or, in other words, whether or not the horizontal succeeding blank data HEB is currently being outputted.
- the blank control unit 51 executes a blank control process in block 107 . Details of block 107 will be given later.
- the blank control unit 51 returns to block 105 .
- the blank control unit 51 determines whether or not processing of one frame has been ended.
- the blank control unit 51 determines whether or not the total number of pieces of blank data BRM is equal to the initial value IBRM. When the total number of pieces of blank data BRM is equal to the initial value IBRM (YES in block 109 ), the blank control unit 51 executes block 110 . On the other hand, when the total number of pieces of blank data BRM is not equal to the initial value IBRM (determination of NO), the blank control unit 51 executes block 111 .
- the blank control unit 51 determines whether or not the re-input process has been ended. For example, an L-level start signal OPEN indicates that the process has been ended. Therefore, when the start signal OPEN is at the H-level, the blank control unit 51 determines that the process has not been ended (start of re-input) (NO in block 110 ) and executes block 102 illustrated in FIG. 6 . On the other hand, when the start signal OPEN is at the L-level, the blank control unit 51 determines that the process has been ended (YES in block 110 ) and terminates the re-input process.
- start signal OPEN is at the H-level
- start signal OPEN determines that the process has not been ended (start of re-input) (NO in block 110 ) and executes block 102 illustrated in FIG. 6 .
- start signal OPEN is at the L-level
- the blank control unit 51 determines that the process has been ended (YES in block 110 ) and terminates the re-input process.
- the blank control unit 51 calculates the number of deleted pieces of blank data. For example, when outputting vertical succeeding blank data VEB, the blank control unit 51 calculates the number of deleted pieces SKCN of the vertical succeeding blank data VEB according to the following equation.
- roundup represents a function for rounding up a numerical value obtained by division.
- the blank control unit 51 determines whether or not the horizontal count value HCNT is at a blank data deletion position.
- the blank data deletion position corresponds to a value obtained by subtracting the number of deleted pieces SKCN from a standard number of pieces of output data RLN among the number of pieces of data to be included in one line.
- the blank control unit 51 in order to make a transition to processing of a next line, the blank control unit 51 asserts a blank deletion signal BSK or, in other words, outputs an H-level blank deletion signal BSK.
- the blank control unit 51 checks a data storage state of the FIFO memory 32 d .
- the blank control unit 51 checks a value of the memory state signal FST and executes processes based on the value. For example, when the memory state signal FST indicates a “FULL” state of the FIFO memory 32 d , the blank control unit 51 executes block 121 .
- the memory state signal FST indicates an “EMPTY” state of the FIFO memory 32 d
- the blank control unit 51 executes block 131 illustrated in FIG. 9 .
- the blank control unit 51 executes block 141 illustrated in FIG. 10 .
- the blank control unit 51 determines whether or not the total number of pieces of blank data BRM is equal to the initial value IBRM. When the total number of pieces of blank data BRM is equal to the initial value IBRM (YES in block 121 ), the blank control unit 51 ends the processing. On the other hand, when the total number of pieces of blank data BRM differs from the initial value IBRM (NO in block 121 ), the blank control unit 51 executes block 122 .
- the blank control unit 51 calculates the number of pieces of blank data to be deleted from the total number of pieces of blank data BRM (the number of deleted pieces SKCN).
- the blank control unit 51 determines whether or not the number of deleted pieces SKCN is smaller than the number of pieces of data CBN of horizontal succeeding blank data HEB that is deletable.
- the number of pieces of data CBN of horizontal succeeding blank data HEB that is deletable corresponds to the number of pieces of data in blank data not yet transferred in one piece of line data at the present moment.
- the number of pieces of data CBN may be calculated according to the following equation.
- ⁇ 1 represents an example of a constant for adjusting processing timings.
- the constant may be determined based on a result of the determination in block 123 and in consideration of the number of pieces of blank data that is transferred until the blank deletion signal BSK is asserted.
- the blank control unit 51 executes block 125 , and when the number of deleted pieces SKCN is equal to or greater than the number of pieces of data CBN (NO in block 123 ), the blank control unit 51 executes block 124 .
- the blank control unit 51 determines whether or not the horizontal count value HCNT is at a blank data deletion position.
- the blank data deletion position corresponds to a value obtained by subtracting the number of deleted pieces SKCN from the standard number of pieces of output data RLN among the number of pieces of data that is transferred in one line.
- the blank control unit 51 stands by (loop).
- the horizontal count value HCNT is equal to the blank data deletion position (YES in block 125 )
- the blank control unit 51 executes block 126 .
- the blank control unit 51 in order to make a transition to processing of a next line, the blank control unit 51 asserts a blank deletion signal BSK or, in other words, outputs an H-level blank deletion signal BSK.
- the blank control unit 51 determines whether or not the horizontal count value HCNT is equal to or greater than the number of pieces of data in lines in which the number of pieces of blank data is not adjusted (the standard number of pieces of output data RLN).
- the horizontal count value HCNT is equal to or greater than the standard number of pieces of output data RLN (YES in block 131 )
- the blank control unit 51 executes block 132 .
- the horizontal count value HCNT is smaller than the standard number of pieces of output data RLN (NO in block 131 )
- the blank control unit 51 executes block 120 illustrated in FIG. 8 .
- the blank control unit 51 determines whether or not the FIFO memory 32 d is in a “FULL” state. When the FIFO memory 32 d is not in a “FULL” state (NO in block 134 ), the blank control unit 51 executes block 132 . On the other hand, when the FIFO memory 32 d is in a “FULL” state, the blank control unit 51 terminates the blank control process.
- the blank control unit 51 determines whether or not the horizontal count value HCNT is equal to or greater than the number of pieces of data in lines in which the number of pieces of blank data is not adjusted (the standard number of pieces of output data RLN).
- the horizontal count value HCNT is equal to or greater than the standard number of pieces of output data RLN (YES in block 141 )
- the blank control unit 51 executes block 142 .
- the horizontal count value HCNT is smaller than the standard number of pieces of output data RLN (NO in block 141 )
- the blank control unit 51 executes block 120 illustrated in FIG. 8 .
- the blank control unit 51 determines whether or not the current setting is a setting for adding blank data.
- the register 32 e illustrated in FIG. 5 stores a blank addition mode BLMD set by a user.
- the blank control unit 51 adds blank data using a similar method as in an “EMPTY” state.
- the blank control unit 51 does not add blank data.
- the blank control unit 51 executes block 143 .
- the blank control unit 51 ends the blank control process.
- the blank control unit 51 determines whether or not the FIFO memory 32 d is in a “FULL” state. When the FIFO memory 32 d is not in a “FULL” state (NO in block 145 ), the blank control unit 51 executes block 142 . On the other hand, when the FIFO memory 32 d is in a “FULL” state, the blank control unit 51 ends the blank control process.
- FIG. 11 illustrates processes related to the horizontal count value HCNT.
- the horizontal synchronizing signal generating unit 52 determines whether or not re-input has been started. For example, the horizontal synchronizing signal generating unit 52 determines that re-input has started based on an H-level start signal OPEN (YES in block 201 ). If not, the horizontal synchronizing signal generating unit 52 determines that re-input has not started (NO in block 201 ).
- the horizontal synchronizing signal generating unit 52 determines whether or not the vertical synchronizing signal VD has been asserted (for example, at the H-level). For example, when the vertical synchronizing signal VD has not been asserted (NO in block 202 ), the horizontal synchronizing signal generating unit 52 stands by until the vertical synchronizing signal VD is asserted. Once the vertical synchronizing signal VD is asserted, in block 203 , the horizontal synchronizing signal generating unit 52 presets the horizontal count value HCNT to a certain value (for example, “1”).
- the horizontal synchronizing signal generating unit 52 determines whether or not the horizontal synchronizing signal HD and the vertical synchronizing signal VD have been negated.
- the horizontal synchronizing signal generating unit 52 executes block 203
- the horizontal synchronizing signal HD and the vertical synchronizing signal VD have been negated (YES in block 204 )
- the horizontal synchronizing signal generating unit 52 executes block 205 .
- the horizontal synchronizing signal generating unit 52 increments the horizontal count value HCNT.
- the horizontal synchronizing signal generating unit 52 determines whether or not the re-input process has been ended. For example, when the start signal OPEN is at an H-level, the horizontal synchronizing signal generating unit 52 determines that the process has not been ended (NO in block 206 ) and executes block 204 . On the other hand, when the start signal OPEN is at the L-level, the horizontal synchronizing signal generating unit 52 determines that re-input has been ended (YES in block 206 ) and terminates the process.
- FIG. 12 illustrates processes related to the horizontal synchronizing signal HD.
- the horizontal synchronizing signal generating unit 52 determines whether or not re-input has been started. For example, the horizontal synchronizing signal generating unit 52 determines that re-input has started based on an H-level start signal OPEN (YES in block 211 ). If not, the horizontal synchronizing signal generating unit 52 determines that re-input has not started (NO in block 211 ).
- the horizontal synchronizing signal generating unit 52 determines whether or not the vertical synchronizing signal VD has been asserted (for example, at the H-level). For example, when the vertical synchronizing signal VD has not been asserted (NO in block 212 ), the horizontal synchronizing signal generating unit 52 stands by until the vertical synchronizing signal VD is asserted. Once the vertical synchronizing signal VD is asserted, in block 213 , the horizontal synchronizing signal generating unit 52 determines whether or not the horizontal count value HCNT is equal to the inter-synchronizing signal blank size VHB. If not equal (NO in block 213 ), the horizontal synchronizing signal generating unit 52 stands by.
- the horizontal synchronizing signal generating unit 52 asserts the horizontal synchronizing signal HD.
- the horizontal synchronizing signal generating unit 52 outputs an H-level horizontal synchronizing signal HD as pulses.
- the horizontal synchronizing signal generating unit 52 determines the horizontal count value HCNT and the blank deletion signal BSK, determines whether or not the horizontal count value HCNT is equal to the standard number of pieces of output data RLN, and determines whether or not the blank deletion signal BSK has been asserted.
- the horizontal synchronizing signal generating unit 52 executes block 216 .
- the horizontal synchronizing signal generating unit 52 executes block 217 .
- the horizontal synchronizing signal generating unit 52 determines whether or not the blank addition signal BAD has been asserted (for example, at the H-level). If the blank addition signal BAD has not been asserted (NO in block 216 ), the horizontal synchronizing signal generating unit 52 executes block 214 . If the blank addition signal BAD has been asserted (YES in block 216 ), the horizontal synchronizing signal generating unit 52 stands by.
- the horizontal synchronizing signal generating unit 52 determines whether or not the re-input process has been ended. For example, when the start signal OPEN is at an H-level, the horizontal synchronizing signal generating unit 52 determines that the process has not been ended (NO in block 217 ) and executes block 218 . When the start signal OPEN is at the L-level, the horizontal synchronizing signal generating unit 52 determines that re-input has been ended (YES in block 217 ) and terminates the process.
- the horizontal synchronizing signal generating unit 52 determines whether or not the vertical synchronizing signal VD has been asserted (for example, at the H-level). If the vertical synchronizing signal VD has been asserted (YES in block 218 ), the horizontal synchronizing signal generating unit 52 executes block 213 . If the vertical synchronizing signal VD has not been asserted (NO in block 218 ), the horizontal synchronizing signal generating unit 52 executes block 215 .
- FIG. 13A illustrates processes related to the vertical count value VCNT.
- the vertical synchronizing signal generating unit 53 determines whether or not re-input has been started. For example, the vertical synchronizing signal generating unit 53 determines that re-input has been started based on an H-level start signal OPEN (YES in block 301 ), and if not, determines that re-input has not been started (NO in block 301 ).
- the vertical synchronizing signal generating unit 53 determines whether or not the vertical synchronizing signal VD has been asserted (for example, at the H-level). For example, when the vertical synchronizing signal VD has not been asserted (NO in block 302 ), the vertical synchronizing signal generating unit 53 stands by. Once the vertical synchronizing signal VD is asserted, in block 303 , the vertical synchronizing signal generating unit 53 presets the vertical count value VCNT to a certain value (for example, “0”).
- the vertical synchronizing signal generating unit 53 determines whether or not the horizontal synchronizing signal HD has been asserted. If the horizontal synchronizing signal HD has not been asserted (NO in block 304 ), the vertical synchronizing signal generating unit 53 executes block 303 . If the horizontal synchronizing signal HD has been asserted (YES in block 304 ), in block 305 , the vertical synchronizing signal generating unit 53 increments the vertical count value VCNT.
- the vertical synchronizing signal generating unit 53 determines whether or not the vertical count value VCNT has become equal to the number of lines in one frame.
- the number of lines in one frame is a sum of the vertical preceding blank size VSB, the vertical image size VIMG, and the vertical succeeding blank size VEB.
- the vertical synchronizing signal generating unit 53 executes block 303 .
- the vertical synchronizing signal generating unit 53 executes block 307 .
- the vertical synchronizing signal generating unit 53 determines whether or not the re-input process has been ended. For example, when the start signal OPEN is at an H-level, the vertical synchronizing signal generating unit 53 determines that the process has not been ended (NO in block 307 ) and executes block 302 . On the other hand, when the start signal OPEN is at the L-level, the vertical synchronizing signal generating unit 53 determines that re-input has been ended (YES in block 307 ) and terminates the process.
- FIG. 13B illustrates processes related to the vertical synchronizing signal VD.
- the vertical synchronizing signal generating unit 53 determines whether or not re-input has been started. For example, when the vertical synchronizing signal generating unit 53 determines that re-input has been started based on an H-level start signal OPEN (YES in block 311 ), in block 312 , the vertical synchronizing signal generating unit 53 asserts the vertical synchronizing signal VD (for example, at the H-level).
- the vertical synchronizing signal generating unit 53 determines whether or not transfer of one frame has been ended. For example, this determination is made based on the vertical count value VCNT and the horizontal count value HCNT. When the vertical count value VCNT is equal to the number of lines in one frame and the horizontal count value HCNT is equal to the number of pieces of data in the horizontal direction in the vertical succeeding blank data VEB adjusted in accordance with addition or deletion of blank data, the vertical synchronizing signal generating unit 53 determines that transfer of one frame has been ended.
- the vertical synchronizing signal generating unit 53 executes block 312 , and when transfer of one frame has not been ended (NO in block 313 ), the vertical synchronizing signal generating unit 53 executes block 314 .
- the vertical synchronizing signal generating unit 53 determines whether or not the re-input process has been ended. For example, when the start signal OPEN is at an H-level, the vertical synchronizing signal generating unit 53 determines that the process has not been ended (NO in block 314 ) and executes block 313 . On the other hand, when the start signal OPEN is at the L-level, the vertical synchronizing signal generating unit 53 determines that re-input has been ended (YES in block 314 ) and terminates the process.
- the output data generating unit 54 determines whether or not the vertical synchronizing signal VD has been asserted (for example, at the H-level). For example, when the vertical synchronizing signal VD has not been asserted (NO in block 401 ), the output data generating unit 54 stands by. Once the vertical synchronizing signal VD has been asserted, in block 402 , the output data generating unit 54 outputs blank data.
- the output data generating unit 54 determines whether or not the vertical count value VCNT has become equal to the vertical preceding blank size VSB.
- the output data generating unit 54 stands by.
- the output data generating unit 54 determines whether the horizontal synchronizing signal HD has been asserted (for example, at the H-level).
- the output data generating unit 54 stands by.
- the output data generating unit 54 determines whether the horizontal count value HCNT has become equal to the horizontal preceding blank size HSB. When the horizontal count value HCNT is not equal to the horizontal preceding blank size HSB (NO in block 405 ), the output data generating unit 54 stands by. When the horizontal count value HCNT becomes equal to the horizontal preceding blank size HSB (YES in block 405 ), in block 406 , the output data generating unit 54 asserts the data request signal DTEN (for example, at the H-level) and outputs image data PD that is equivalent to the image data RDT supplied from the transfer control circuit 32 a.
- DTEN for example, at the H-level
- the output data generating unit 54 determines whether or not the horizontal count value HCNT has become equal to the sum of the horizontal preceding blank size HSB and the horizontal image size HIMG. In other words, the output data generating unit 54 determines whether or not output of the image data GD in one line has been completed.
- the output data generating unit 54 executes block 406 .
- the output data generating unit 54 outputs blank data in block 408 .
- the output data generating unit 54 determines whether or not the vertical count value VCNT has become equal to the sum of the vertical preceding blank size VSB and the vertical image size VIMG. In other words, the output data generating unit 54 determines whether or not output of the image data GD in one frame has been completed.
- the output data generating unit 54 executes block 404 , and when the vertical count value VCNT is equal to the sum (YES in block 409 ), the output data generating unit executes block 401 .
- the signal generating unit 32 b calculates the total number of pieces of blank data BRM per frame.
- the total number of pieces of blank data BRM is “80”.
- the vertical preceding blank size VSB is “0” and the vertical preceding blank data VSB is not outputted.
- the inter-synchronizing signal blank size VHB is outputted in response to the vertical synchronizing signal VD.
- the transfer control circuit 32 a illustrated in FIG. 2 outputs a request signal REQ to the memory I/F 45 and reads image data of the memory 13 . Therefore, in the example illustrated in FIG. 15 , the memory state signal FST or, in other words, a state of the FIFO memory 32 d of the transfer control circuit 32 a changes from “EMPTY” to “FULL”.
- the horizontal count value HCNT is preset to a certain value (for example, “1”) and processing on a first line is performed.
- a certain value for example, “1”
- image data is outputted.
- the memory state signal FST changes from “FULL” to “MODERATE”.
- the horizontal succeeding blank data HEB is outputted.
- the memory state signal FST changes from “EMPTY” to “MODERATE” and then to “FULL”.
- the horizontal count value HCNT is preset to a certain value (for example, “1”) and processing on a second line is performed.
- a certain value for example, “1”
- image data is outputted.
- the horizontal succeeding blank data HEB is outputted.
- the memory state signal FST changes from “EMPTY” to “MODERATE”, a “FULL” state has not yet been reached. Therefore, the blank addition signal BAD is asserted.
- Blank data is outputted based on the asserted blank addition signal BAD, and the total number of pieces of blank data BRM is decremented every time a piece of blank data is outputted.
- the memory state signal FST changes from “MODERATE” to “FULL” in accordance with data read from the memory 13 illustrated in FIG. 2 .
- the blank addition signal BAD is negated and the horizontal synchronizing signal HD is asserted.
- the blank addition signal BAD is asserted so that the memory state signal FST changes to “FULL”.
- the period during which the horizontal succeeding blank data HEB is outputted is extended until the memory state signal FST changes to “FULL”. With the extension of the output period of the horizontal succeeding blank data HEB, the total number of pieces of blank data BRM is reduced.
- the horizontal count value HCNT is preset and processing on a third line is performed.
- the memory state signal FST is “MODERATE”.
- the memory state signal FST changes from “MODERATE” to “FULL”. Since the total number of pieces of blank data BRM is smaller than the initial value IBRM, the number of deleted pieces SKCN is calculated. In this example, the number of deleted pieces SKCN is “4”.
- the blank deletion signal BSK is asserted at a timing where blank data is deleted.
- the horizontal synchronizing signal HD is asserted in accordance with the assertion of the blank deletion signal BSK.
- the number of deleted pieces SKCN is added to the total number of pieces of blank data BRM.
- the horizontal count value HCNT is preset to a certain value and processing on a fourth line is performed.
- the horizontal preceding blank data HSB is outputted, output of image data is started.
- the horizontal succeeding blank data HEB is outputted.
- the memory state signal FST is “EMPTY”. Therefore, the blank addition signal BAD is asserted. Blank data is outputted based on the asserted blank addition signal BAD, and the total number of pieces of blank data BRM is decremented every time a piece of blank data is outputted.
- the memory state signal FST changes from “EMPTY” to “MODERATE” and then to “FULL” in accordance with data read from the memory 13 illustrated in FIG. 2 .
- the blank addition signal BAD is negated and the horizontal synchronizing signal HD is asserted.
- the horizontal synchronizing signal HD is asserted, the horizontal count value HCNT is preset, and processing of a (VIMG+1)-th line is performed.
- the horizontal count value HCNT is incremented each time a piece of blank data is outputted.
- the number of deleted pieces SKCN per line of the vertical succeeding blank data VEB is calculated.
- the number of deleted pieces SKCN is obtained by dividing a result of subtracting the total number of pieces of blank data BRM from the initial value IBRM by the vertical preceding blank size VSB.
- the number of deleted pieces SKCN is “6”.
- the blank deletion signal BSK is asserted at a position where the horizontal count value HCNT is equal to a value obtained by subtracting the number of deleted pieces SKCN from the standard number of pieces of output data RLN.
- the horizontal synchronizing signal HD is asserted in accordance with the assertion of the blank deletion signal BSK and processing of a next line (a (VIMG+2)-th line) is started.
- the number of deleted pieces SKCN is added to the total number of pieces of blank data BRM.
- the processing described above is repeated until a final line of one frame or, in other words, a (VIMG+VEB)-th line of one frame.
- the total number of pieces of blank data BRM becomes equal to the initial value IBRM. Therefore, the number of pieces of image data PD that is outputted between two vertical synchronizing signals VD is equal to the number of pieces of image data PD that is outputted when blank data is not controlled. Accordingly, the time between two vertical synchronizing signals VD or, in other words, a cycle of the vertical synchronizing signal VD remains unchanged.
- the size (the number of pieces of data) of the horizontal succeeding blank data HEB in each line including the image data GD varies according to the timing at which the horizontal synchronizing signal HD is outputted.
- the output timing of the horizontal synchronizing signal HD is based on the blank addition signal BAD and the blank deletion signal BSK or, in other words, based on a data storage state in the FIFO memory 32 d .
- the number of pieces of data of the blank data BD in each piece of line data of the vertical succeeding blank data VEB is adjusted in accordance with the size of the horizontal succeeding blank data HEB in each line.
- FIG. 18B illustrates image data PD of one frame in a case where the number of pieces of data of the horizontal succeeding blank data HEB and the number of pieces of data of blank data BD in each piece of line data of the vertical succeeding blank data VEB are not adjusted.
- the overall numbers of pieces of data in the image data PD illustrated in FIG. 18A and the image data PD illustrated in FIG. 18B are the same.
- the present embodiment achieves the following advantageous effects.
- the transfer control circuit 32 a stores image data MDT read from the memory 13 in the FIFO memory 32 d .
- the transfer control circuit 32 a outputs image data RDT read from the FIFO memory 32 d to the output data generating unit 54 in response to a data request signal DTEN outputted from the output data generating unit 54 .
- the transfer control circuit 32 a outputs a memory state signal FST corresponding to the storage state of data in the FIFO memory 32 d .
- the output data generating unit 54 After outputting output data PD (the image data RDT) with the horizontal image size HIMG in accordance with a horizontal count value HCNT, the output data generating unit 54 outputs blank data BD.
- the blank control unit 51 determines that the state of the FIFO memory 32 d is “EMPTY” or “MODERATE” in a period in which the output data generating unit 54 outputs horizontal succeeding blank data HEB, the blank control unit 51 asserts a blank addition signal BAD until the state of the FIFO memory 32 d changes to “FULL”.
- the correction circuit 32 c receives image data PD in accordance with the horizontal synchronizing signal HD and the vertical synchronizing signal VD and performs processing on the image data PD.
- a transfer failure is caused by a horizontal synchronizing signal HD during transfer of image data PD of one line, an error may occur in the processing.
- corresponding image data of one line or image data of one frame may be once again read from the memory 13 and a delay of processing may occur.
- the present inventors considered generating a weight signal for interrupting processing in the case of a transfer failure.
- the blank control unit 51 adjusts an output timing of the horizontal synchronizing signal HD during a period in which the vertical succeeding blank data VEB is transferred in accordance with the total number of pieces of blank data BRM or, in other words, the number of pieces of blank data BD increased or decreased in each line including the image data GD. Accordingly, the blank control unit 51 adjusts the number of pieces of blank data BD in each piece of line data. Therefore, the number of pieces of data of image data PD outputted from the output data generating unit 54 between vertical synchronizing signals VD becomes equal to the number of pieces of data of image data PD when the number of pieces of blank data BD is not adjusted. Since the cycle of the vertical synchronizing signal VD is unchanged and processing time for one frame is also unchanged, for example, when consecutively processing successive frames as in the case of a moving image, the processing is performed without modifying frame rates.
- the request signal REQ may be outputted in accordance with the data amount MNM and/or the data storage efficiency MRT.
- the transfer control circuit 32 a may output the memory state signal FST in accordance with the data amount MNM and/or the available capacity MEP.
- the state of the FIFO memory 32 d may be determined to be one of two or one of four or more states, whereby the memory state signal FST may be outputted in accordance with the determined state.
- the total number of pieces of blank data BRM may be set by a user.
- the set value is stored in the register 32 e .
- the value set by the user or, in other words, the value stored in the register 32 e may be adopted as the initial value IBRM.
- the initial value IBRM stored in the register 32 e is read, and the readout value is adopted as the total number of pieces of blank data BRM.
- block 104 illustrated in FIG. 6 may be omitted.
- the numbers of pieces of data of blank data BD may differ among pieces of line data.
Abstract
Description
- This application is based upon and claims the benefit of priority from prior Japanese Patent Application No. 2012-220497, filed on Oct. 2, 2012, the entire contents of which are incorporated herein by reference.
- The present disclosure is related to a data transfer device, a data transfer method and a semiconductor device.
- Devices that handle image data transfer image data such as moving images and still images in accordance with a horizontal synchronizing signal and a vertical synchronizing signal. For example, refer to Japanese Laid-Open Patent Publication Nos. 8-63136 and 2009-200938. A device receives image data, stores the image data in a memory, reads the image data from the memory, and performs image processing such as decoding on the read image data. For example, the device may be a digital still camera which displays image data read from a memory on a display unit.
- A device includes various processing circuits, whereby each processing circuit accesses a memory to write in data and read data. Access requests to the memory from two or more processing circuits may occur simultaneously. When access requests to the memory conflict with each other, access to the memory by one or more processing circuits needing image data may be delayed from a desired timing. Delay of access to the memory may result in a so-called transfer failure where one or a plurality of processing circuits are unable to acquire necessary image data at desired timings. For example, when a digital still camera transfers image data to a display unit, a delayed readout of image data from the memory may result in the read image data missing a desired transfer timing to the display unit. The transfer failure may cause a disturbance in the image displayed on the display unit.
- According to an aspect of the invention, a data transfer device includes a transfer control circuit that reads data stored in a first storage unit to store the data in a second storage unit, outputs data in the second storage unit in response to a data request signal, and outputs a state signal in accordance with an amount of stored data in the second storage unit, wherein the state signal indicates whether the second storage unit is in a first storage state in which the amount of stored data in the second storage unit is relatively large or in a second storage state in which the amount of stored data in the second storage unit is relatively small; a blank control unit that receives the state signal from the transfer control circuit and outputs a blank addition signal, wherein when the state signal indicates that the second storage unit is in the second storage state, the blank control unit outputs the blank addition signal until the second storage unit changes to the first storage state based on the state signal; a horizontal synchronizing signal generating unit that generates a horizontal synchronizing signal and delays, in accordance with the blank addition signal, a horizontal count value and the horizontal synchronizing signal, which is output in accordance with the horizontal count value and a standard number of pieces of output data; and an output data generating unit that receives image data having a horizontal image size from the transfer control circuit and outputs the image data having the horizontal image size in accordance with the horizontal count value and the horizontal synchronizing signal, wherein after the outputting the image data having the horizontal image size is completed, the output data generating unit outputs blank data until a next horizontal synchronizing signal is outputted.
- The object and advantages of the invention will be realized and attained by means of the elements and combinations particularly pointed out in the claims.
- It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory and are not restrictive of the invention.
- The embodiment, together with objects and advantages thereof, may best be understood by reference to the following description of the presently preferred embodiments together with the accompanying drawings in which:
-
FIG. 1 is a schematic block diagram of an imaging device; -
FIG. 2 is a partial block diagram of an image signal processor; -
FIG. 3A is a schematic view of an output image of an imaging unit; -
FIG. 3B is a timing diagram illustrating output of the imaging unit; -
FIG. 4A is an explanatory diagram of re-input data; -
FIG. 4B is a timing diagram illustrating transfer of re-input data; -
FIG. 5 is a block diagram of a signal generating unit; -
FIGS. 6 to 10 are flow charts illustrating processes performed by a blank control unit; -
FIGS. 11 and 12 are flow charts illustrating processes performed by a horizontal synchronizing signal generating unit; -
FIGS. 13A and 13B are flow charts illustrating processes performed by a vertical synchronizing signal generating unit; -
FIG. 14 is a flow chart illustrating processes performed by an image data output unit; -
FIGS. 15 to 17 are operation timing diagrams of a signal generating unit; and -
FIGS. 18A and 18B are schematic views of image data of one frame. - A data transfer device and a semiconductor device according to an embodiment will be described with reference to the accompanying drawings.
-
FIG. 1 illustrates an imaging device that is a digital still camera or the like. The imaging device includes animaging unit 11, an image signal processor (ISP) 12, amemory 13, and adisplay device 14. - The
imaging unit 11 includes an imagingoptical system 21, animage sensor unit 22, and an analog front end (AFE) 23. The imagingoptical system 21 includes a plurality of lenses (such as a focusing lens) which focuses light from a subject, and a diaphragm which adjusts the amount of light having passed through the lenses. The imagingoptical system 21 guides an optical image of the subject to theimage sensor unit 22. For example, theimage sensor unit 22 includes a Bayer array color filter and a plurality of imaging elements. Each imaging element is a charge coupled device (CCD) image sensor. Each imaging element outputs an imaging signal (analog signal) corresponding to the amount of light received via the color filter. The AFE 23 converts the imaging signal received from theimage sensor unit 22 from analog to digital to create captured data, and outputs the captured data. The AFE 23 supplies a control signal SR supplied from theimage signal processor 12 to theimage sensor unit 22 in accordance with a synchronizing signal. The synchronizing signal includes a vertical synchronizing signal representing a separator of a single field and a horizontal synchronizing signal representing a separator of a single line. - The
image signal processor 12 includes a plurality ofprocessing units 31 to 37, a direct memory access (DMA)arbitration unit 38, amemory controller 39, and a CPU (control unit) 40. For example, the plurality ofprocessing units 31 to 37 may include a sensor interface (sensor I/F) 31, an inputimage correction unit 32, acorrection unit 33, animage processing unit 34, a stillimage codec unit 35, a memory card interface (memory card I/F) 36, and a display interface (display I/F) 37. The sensor I/F 31, the inputimage correction unit 32, thecorrection unit 33, theimage processing unit 34, the stillimage codec unit 35, the memory card I/F 36, the display I/F 37, and theDMA arbitration unit 38 are connected to one another via aninternal bus 41. - The
DMA arbitration unit 38 is connected to thememory 13 via thememory controller 39. Thememory 13 is an example of the first storage unit. For example, thememory 13 is a synchronous dynamic random access memory (SDRAM). Thememory 13 stores captured data which is outputted from theimaging unit 11 and routed through the sensor I/F 31. In addition, thememory 13 stores processed image data generated by theprocessing units 32 to 35. - The sensor I/
F 31 receives captured data (RGB-format Bayer data) from theimaging unit 11 and stores the captured data in thememory 13. The inputimage correction unit 32 performs correction on image data stored in thememory 13 and outputs corrected image data. For example, the correction performed on the image data may be gamma correction which adjusts luminance or contrast, shading correction which adjusts uneven brightness, and the like. The corrected image data generated by the inputimage correction unit 32 is supplied to one or a plurality of circuits depending on an operating mode of the imaging device. For example, the corrected image data is stored in thememory 13 when the imaging device is in a first operating mode, supplied to the display I/F 37 when the imaging device is in a second operating mode, and supplied to thecorrection unit 33 when the imaging device is in a third operating mode. - The
correction unit 33 performs correction on image data read from thememory 13 or image data supplied from the inputimage correction unit 32 and stores the corrected image data in thememory 13. For example, correction performed by thecorrection unit 33 may be a process for correcting image distortion attributable to the imagingoptical system 21, color correction such as tone modification based on set parameters, and the like. For example, theimage processing unit 34 performs resolution conversion, edge enhancement, denoising, and the like. Theimage processing unit 34 may include a plurality of image processing units. The stillimage codec unit 35 reads image data stored in thememory 13, encodes the image data according to a certain method such as joint photographic experts group (JPEG), and stores the encoded image data (coded data) in thememory 13. - The
processing units 31 to 35 are non-restrictive examples and may be modified as appropriate. - The memory card I/
F 36 is connected to adetachable memory card 15 that is mounted to the imaging device. The memory card I/F 36 stores data (for example, compressed image data) stored in thememory 13 in thememory card 15. The display I/F 37 is connected to thedisplay device 14. For example, thedisplay device 14 is a liquid crystal display (LCD). Thedisplay device 14 displays an image to be photographed (photographic frame), displays a photographed image, displays remaining battery level of the imaging device and a photography mode, and the like. For example, the display I/F 37 reads image data stored in thememory 13 and outputs the image data to thedisplay device 14. Thedisplay device 14 may be an electronic view finder (EVF) or an interface for connecting theimage signal processor 12 to an external monitor (for example, a high-definition multimedia interface (HDMI)). - The sensor I/
F 31, the inputimage correction unit 32, thecorrection unit 33, theimage processing unit 34, the stillimage codec unit 35, the memory card I/F 36, and the display I/F 37 respectively include direct memory access controllers (DMACs) 31 a to 37 a. The DMACs 31 a to 37 a output access requests in accordance with processes performed by correspondingcircuits 31 to 37. For example, in order for the sensor I/F 31 to store captured data outputted from theimaging unit 11 in thememory 13, theDMAC 31 a provided in the sensor I/F 31 outputs a write request. In order for the display I/F 37 to read image data to be displayed on thedisplay device 14 from thememory 13, theDMAC 37 a provided in the display I/F 37 outputs a read request. The respective DMACs 31 a to 37 a are examples of transfer control circuits. - For example, the
DMA arbitration unit 38 arbitrates mutually conflicting requests outputted from the DMACs 31 a to 37 a of thecircuits 31 to 37 according to priorities respectively set to theprocessing units 31 to 37, and permits one of thecircuits 31 to 37 to access thememory 13. The circuit with the access permission outputs a control signal for accessing thememory 13. When the control signal is a read request, thememory controller 39 reads data from thememory 13 and outputs the read data to the request source in accordance with the control signal. Thememory controller 39 outputs a write request and the data outputted from the source of the write request to thememory 13, and thememory 13 stores the data. - The
CPU 40 integrally controls the entireimage signal processor 12. TheCPU 40 controls setting of information necessary for processes to the respective processing units, writing of data, reading of data, and the like. TheCPU 40 sets operating modes and various parameters according to operation signals from an operating unit (not illustrated). - Next, a flow of image data will be described.
- As illustrated in
FIG. 2 , theimage signal processor 12 receives image data GD outputted from theimaging unit 11. The image data GD is stored in thememory 13 via thecorrection circuit 31 b and the transfer control circuit (TFRch) 31 a included in the sensor I/F 31 and via the memory interface (memory I/F) 45. Thecorrection circuit 31 b performs certain correction on the image data GD. For example, the correction may be white balance adjustment, gain adjustment, defect signal correction, or the like. Thetransfer control circuit 31 a corresponds to theDMAC 31 a illustrated inFIG. 1 . The memory I/F 45 corresponds to theDMA arbitration unit 38 and thememory controller 39 illustrated inFIG. 1 . Thetransfer control circuit 31 a outputs a request signal REQ to write to thememory 13. The memory I/F 45 outputs a memory access permission signal ACK. Thetransfer control circuit 31 a outputs an address signal ADDR indicating an area to which image data is to be written and image data MDT. The address signal ADDR and the image data MDT are supplied to thememory 13 via the memory I/F 45. The image data MDT is stored in a storage area of thememory 13 which corresponds to the address signal ADDR. - The input
image correction unit 32 includes atransfer control circuit 32 a, asignal generating unit 32 b, and acorrection circuit 32 c. Thetransfer control circuit 32 a outputs a request signal REQ for reading image data from thememory 13 in response to a correction start signal. The memory I/F 45 outputs a memory access permission signal ACK. Thetransfer control circuit 32 a outputs an address signal ADDR which indicates an area from which image data is to be read. Thememory 13 outputs data MDT stored in the storage area of thememory 13 corresponding to the address signal ADDR. The data MDT outputted from thememory 13 is supplied to thetransfer control circuit 32 a via the memory I/F 45. - The
transfer control circuit 32 a outputs image data to thesignal generating unit 32 b in response to the data request by thesignal generating unit 32 b. Thesignal generating unit 32 b outputs synchronizing signals VD and HD and image data PD to thecorrection circuit 32 c. Thetransfer control circuit 32 a and thesignal generating unit 32 b are examples of a data transfer unit or a data transfer device. Thecorrection circuit 32 c receives the image data PD in accordance with the synchronizing signals VD and HD, performs correction on the image data PD, and generates corrected image data. The corrected image data is supplied to thedisplay device 14. The corrected image data may be also stored in thememory 13 in one operating mode and stored in thecorrection circuit 33 b of thecorrection unit 33 as depicted by the dashed line in another operating mode. - As described above, the
image signal processor 12 temporarily stores image data received from theimaging unit 11 in theexternal memory 13 and reacquires the image data from thememory 13. Theimage signal processor 12 performs a process (a first process) on the image data read from thememory 13 and stores the processed image data in thememory 13. Subsequently, when another process (a second process) is requested, theimage signal processor 12 reacquires the processed image data from thememory 13. In the following description, a process for reacquiring image data from theexternal memory 13 may be referred to as a re-input process. - The
correction unit 33 includes atransfer control circuit 33 a and acorrection circuit 33 b. In a similar manner to thetransfer control circuits transfer control circuit 33 a exchanges various signals with the memory I/F 45 and accesses thememory 13. Thecorrection circuit 33 b performs correction on image data read from thememory 13 or image data supplied from thecorrection circuit 32 c and stores the corrected image data in thememory 13. Theimage processing unit 34 includes atransfer control circuit 34 a and aprocessing circuit 34 b. In a similar manner to thetransfer control circuits transfer control circuit 34 a exchanges various signals with the memory I/F 45 and accesses thememory 13. Theprocessing circuit 34 b performs one or a plurality of processes on the image data read from thememory 13 and stores the processed image data in thememory 13. - The image data PD outputted from the
signal generating unit 32 b includes image data read from thememory 13 and blank data added to the image data by thesignal generating unit 32 b. For example, the blank data is used by thecorrection circuit 32 c to perform correction. - Image data GD and PD will now be described.
- As illustrated in
FIG. 3A , the image data GD includes a plurality of pieces of pixel data GP. The plurality of pieces of pixel data GP respectively corresponds to the plurality of imaging elements that constitutes theimage sensor unit 22 of theimaging unit 11 illustrated inFIG. 1 . Theimaging unit 11 outputs pixel data GP corresponding to analog signals of the plurality of imaging elements in a sequence depicted by arrows inFIG. 3A in accordance with an arrangement of the imaging elements. In doing so, as illustrated inFIG. 3B , theimaging unit 11 outputs the image data GD at timings in accordance with a clock signal CLK, vertical synchronizing signals VDs, and horizontal synchronizing signals HDs. One cycle of the vertical synchronizing signals VDs is a period in which image data GD of one frame (one screen) is outputted, and one cycle of the horizontal synchronizing signals HDs is a period in which one line of image data GD is outputted. - As illustrated in
FIG. 4A , image data PD includes image data GD of one frame and blank data BD. The image data GD may correspond to a valid image. A horizontal image size HIMG indicates the number of pieces of data in the image data GD in a horizontal direction. A vertical image size VIMG indicates the number of pieces of data in the image data GD in a vertical direction or, in other words, the number of lines in the image data GD. - As illustrated in
FIG. 4B , thesignal generating unit 32 b (FIG. 2 ) outputs blank data and image data in accordance with a clock signal CLK, a vertical synchronizing signal VD, and a horizontal synchronizing signal HD. As illustrated inFIG. 4A , the blank data BD includes vertical preceding blank data VSB that is outputted before line data including a first line of the image data GD, vertical subsequent blank data VEB that is outputted after line data including a final line of the image data GD, horizontal preceding blank data HSB that is outputted before the respective lines of the image data GD, and horizontal subsequent blank data HEB that is outputted after the respective lines of the image data GD. As illustrated inFIG. 4A , when the image data PD is two-dimensionally arranged (in a matrix pattern) in an output sequence in accordance with synchronizing signals VD and HD, the blank data BD is arranged on a circumference of the image data GD. - In the following description, a size (for example, the number of pixels or the number of lines) of an area corresponding to each piece of blank data VSB, VEB, HSB, and HEB may be referred to as a blank size. For example, the number of lines or, in other words, the number of pieces of data in the vertical direction in the vertical preceding blank data VSB is referred to as a vertical preceding blank size VSB and the number of lines in the vertical subsequent blank data VEB is referred to as a vertical subsequent blank size VEB. The numbers of pieces of data in the horizontal preceding blank data HSB and the horizontal subsequent blank data HEB of each line will be respectively referred to as a horizontal preceding blank size HSB and horizontal subsequent blank size HEB.
- A structure of the image data GD illustrated in
FIG. 3A may not always be adequate for the correction performed by thecorrection circuit 32 c (FIG. 2 ). For example, when performing correction on one piece of pixel data, thecorrection circuit 32 c requires the one piece of pixel data that is the correction object as well as a plurality of pieces of pixel data surrounding the one piece of pixel data. Therefore, thecorrection circuit 32 c is unable to perform correction on pixel data on the periphery of the image data GD illustrated inFIG. 3A and, as a result, the number of pieces of pixel data after correction is reduced by the number of pieces of peripheral pixel data. On the other hand, with the structure of the image data PD illustrated inFIG. 4A , thecorrection circuit 32 c is able to perform correction on pixel data on the periphery of the image data GD. As a result, a reduction in the number of pieces of pixel data after correction is prevented. The correction is one of the reasons for adding the blank data BD. - As described above, the plurality of
transfer control circuits 31 a to 34 a accesses thememory 13 via the memory I/F 45. Therefore, transfer of image data to thetransfer control circuit 32 a is intermittently performed. Thesignal generating unit 32 b sequentially outputs image data PD in accordance with synchronizing signals VD and HD. In other words, a transfer timing of image data from thememory 13 to thetransfer control circuit 32 a differs from a timing at which thesignal generating unit 32 b requests image data. Therefore, thetransfer control circuit 32 a includes a first-in-first-out (FIFO)memory 32 d which temporarily stores image data. Thetransfer control circuit 32 a stores image data transferred from thememory 13 in theFIFO memory 32 d. Thetransfer control circuit 32 a outputs image data in theFIFO memory 32 d in accordance with a data request made by thesignal generating unit 32 b. TheFIFO memory 32 d is an example of the second storage unit. - Next, the
transfer control circuit 32 a and thesignal generating unit 32 b will be described in detail. - As illustrated in
FIG. 5 , thesignal generating unit 32 b includes a blank control unit (denoted by “BLNK Ctrl”) 51, a horizontal synchronizing signal generating unit (denoted by “HD Gen”) 52, a vertical synchronizing signal generating unit (denoted by “VD Gen”) 53, and an output data generating unit (denoted by “IMG Gen”) 54. - The
transfer control circuit 32 a starts processing in response to a start signal OPEN. First, thetransfer control circuit 32 a outputs a request signal REQ. Upon receiving a memory access permission signal ACK from the memory I/F 45 illustrated inFIG. 2 , thetransfer control circuit 32 a outputs an address signal ADDR. Thetransfer control circuit 32 a receives image data MDT outputted from thememory 13 via the memory I/F 45 and stores the image data MDT in theFIFO memory 32 d. Thetransfer control circuit 32 a reads image data RDT from theFIFO memory 32 d in response to a data request signal DTEN supplied from the outputdata generating unit 54, and outputs the image data RDT to the outputdata generating unit 54 in accordance with a clock signal CLK. In this manner, thetransfer control circuit 32 a transfers image data stored in thememory 13 illustrated inFIG. 2 to the outputdata generating unit 54. After transferring the number of pieces of image data corresponding to the horizontal image size HIMG and the vertical image size VIMG stored in aregister 32 e, thetransfer control circuit 32 a ends processing on image data of one frame. - The
transfer control circuit 32 a outputs a memory state signal FST corresponding to a state of theFIFO memory 32 d. TheFIFO memory 32 d stores the input data MDT at a position (address) indicated by a write pointer WP and updates the write pointer WP. TheFIFO memory 32 d outputs data RDT at a position (address) indicated by a read pointer RP and updates the read pointer RP. Updating the pointers WP and RP means changing the pointers WP and RP to a value indicating a position where a next piece of data is to be written or a position where a next piece of data is to be read. The data RDT is an example of first output data. When sequentially writing or reading data, theFIFO memory 32 d adopts values obtained by adding a certain value (for example, “1”) to the pointers WP and RP as updated pointers WP and RP. - The
FIFO memory 32 d cyclically manages the write pointer WP and the read pointer RP. For example, theFIFO memory 32 d stores one piece of input data MDT at a position indicated by the write pointer WP and updates (+1) the write pointer WP. When the write pointer WP equals or exceeds a value n (for example, 512) corresponding to memory capacity, theFIFO memory 32 d resets (=0) the value of the write pointer WP. In this manner, theFIFO memory 32 d cycles the write pointer WP by a value (for example, 0 to 511) corresponding to memory capacity. - In a similar manner, the
FIFO memory 32 d outputs data RDT at a position indicated by the read pointer RP, and updates the read pointer RP so that the read pointer RP indicates a position of a next piece of readout data (for example, by adding “+1” to the read pointer RP). When the read pointer RP reaches a value (for example, 512) corresponding to the memory capacity, theFIFO memory 32 d resets (=0) the value of the read pointer RP. In this manner, theFIFO memory 32 d cycles the read pointer RP by a value (for example, 0 to 511) corresponding to the memory capacity. - Based on the write pointer WP and the read pointer RP, the
transfer control circuit 32 a monitors the amount of data stored in theFIFO memory 32 d and controls writing of data to theFIFO memory 32 d. Thetransfer control circuit 32 a outputs a memory state signal FST corresponding to the amount of stored data in theFIFO memory 32 d. - Based on the write pointer WP and the read pointer RP, the
transfer control circuit 32 a calculates the number of pieces of data MNM stored in theFIFO memory 32 d. The number of pieces of data MNM is the number of pieces of unread data among the data stored in theFIFO memory 32 d. Based on a storage capacity MMX of theFIFO memory 32 d and the number of pieces of data MNM, thetransfer control circuit 32 a calculates an available capacity MEP (=storage capacity MMX—the number of pieces of data MNM). Thetransfer control circuit 32 a compares the available capacity MEP with the number of pieces of data that is transferred to thetransfer control circuit 32 a from thememory 13 in response to one request signal REQ (burst transfer amount). When the available capacity MEP is equal to or greater than the burst transfer amount, thetransfer control circuit 32 a outputs a request signal REQ to the memory I/F 45 illustrated inFIG. 2 . - Based on the storage capacity MMX and the number of pieces of data MNM in the
FIFO memory 32 d, thetransfer control circuit 32 a calculates data storage efficiency MRT. The data storage efficiency MRT is a proportion (percentage: %) of the number of pieces of data MNM to the available capacity MEP. The data storage efficiency MRT represents a storage state of data in theFIFO memory 32 d. Thetransfer control circuit 32 a outputs a memory state signal FST based on the data storage efficiency MRT. - For example, when the data storage efficiency MRT is lower than 20%, the
FIFO memory 32 d is in an approximately empty state (EMPTY). When the data storage efficiency MRT is equal to or higher than 20% and lower than 80%, theFIFO memory 32 d is in a somewhat full state (MODERATE). When the data storage efficiency MRT is equal to or higher than 80%, theFIFO memory 32 d is in an approximately full state (FULL). Thetransfer control circuit 32 a outputs memory state signals FST which distinguish and indicate the three states. For example, thetransfer control circuit 32 a outputs a memory state signal FST having a value “0” representing a first state (EMPTY), a memory state signal FST having a value “1” representing a second state (MODERATE), and a memory state signal FST having a value “2” representing a third state (FULL). The values of the data storage efficiency MRT and the values of the memory state signals FST are exemplary and may be modified as appropriate. - The
register 32 e stores various parameters related to operations of thetransfer control circuit 32 a and thesignal generating unit 32 b. The various parameters include the various sizes (HIMG, VIMG, VSB, VEB, HSB, and HEB) described above and an inter-synchronizing signal blank size VHB. The inter-synchronizing signal blank size VHB represents the number of pieces of blank data that is transferred between a vertical synchronizing signal VD and a first-line horizontal synchronizing signal HD. - The
blank control unit 51 starts processing in response to the start signal OPEN. Theblank control unit 51 receives the clock signal CLK, the memory state signal FST outputted from thetransfer control circuit 32 a, the vertical preceding blank size VSB, the vertical succeeding blank size VEB, the horizontal preceding blank size HSB, and the horizontal succeeding blank size HEB stored in theregister 32 e, a horizontal count value HCNT outputted from the horizontal synchronizingsignal generating unit 52, and a vertical count value VCNT outputted from the vertical synchronizingsignal generating unit 53. Theblank control unit 51 generates and outputs a blank addition signal BAD and a blank deletion signal BSK based on the memory state signal FST, the vertical preceding blank size VSB, the vertical succeeding blank size VEB, the horizontal preceding blank size HSB, the horizontal succeeding blank size HEB, the horizontal count value HCNT, and the vertical count value VCNT. - The horizontal synchronizing
signal generating unit 52 starts processing in response to the start signal OPEN. The horizontal synchronizingsignal generating unit 52 receives the horizontal preceding blank size HSB, the horizontal succeeding blank size HEB, the inter-synchronizing signal blank size VHB, and the horizontal image size HIMG stored in theregister 32 e. The horizontal synchronizingsignal generating unit 52 receives the clock signal CLK, the blank addition signal BAD and the blank deletion signal BSK outputted from theblank control unit 51, the vertical synchronizing signal VD outputted from the vertical synchronizingsignal generating unit 53, and the output data PD outputted from the outputdata generating unit 54. The horizontal synchronizingsignal generating unit 52 outputs a horizontal synchronizing signal HD in accordance with the clock signal CLK and at a timing based on the horizontal preceding blank size HSB, the horizontal succeeding blank size HEB, the inter-synchronizing signal blank size VHB, the horizontal image size HIMG, the blank addition signal BAD, the blank deletion signal BSK, and the vertical synchronizing signal VD. The horizontal synchronizingsignal generating unit 52 includes a horizontal counter which counts the number of pieces of output data PD and outputs a count value HCNT of the horizontal counter (also referred to as a horizontal count value). The horizontal synchronizingsignal generating unit 52 presets the horizontal count value HCNT to a certain value (for example, “1”) in response to the vertical synchronizing signal VD and the horizontal synchronizing signal HD. - The vertical synchronizing
signal generating unit 53 starts processing in response to the start signal OPEN. The vertical synchronizingsignal generating unit 53 receives the vertical preceding blank size VSB, the vertical succeeding blank size VEB, and the vertical image size VIMG stored in theregister 32 e. The vertical synchronizingsignal generating unit 53 receives the clock signal CLK, and the horizontal synchronizing signal HD and the horizontal count value HCNT outputted from the horizontal synchronizingsignal generating unit 52. The vertical synchronizingsignal generating unit 53 outputs the vertical synchronizing signal VD in accordance with the clock signal CLK and at a timing based on the vertical preceding blank size VSB, the vertical succeeding blank size VEB, the vertical image size VIMG, the horizontal synchronizing signal HD, and the horizontal count value HCNT. The vertical synchronizingsignal generating unit 53 includes a vertical counter which counts the horizontal synchronizing signal HD and outputs a count value VCNT of the vertical counter (also referred to as a vertical count value). The vertical synchronizingsignal generating unit 53 presets the vertical count value VCNT to a certain value (for example, “0”) in response to the vertical synchronizing signal VD. - The output
data generating unit 54 supplies the data request signal DTEN to thetransfer control circuit 32 a and receives the image data RDT outputted from thetransfer control circuit 32 a. The outputdata generating unit 54 receives the vertical preceding blank size VSB, the vertical image size VIMG, the horizontal preceding blank size HSB, and the horizontal image size HIMG stored in theregister 32 e. The outputdata generating unit 54 receives the vertical synchronizing signal VD and the vertical count value VCNT outputted from the vertical synchronizingsignal generating unit 53 and the horizontal synchronizing signal HD and the horizontal count value HCNT outputted from the horizontal synchronizingsignal generating unit 52. The outputdata generating unit 54 outputs the image data PD based on the vertical preceding blank size VSB, the vertical image size VIMG, the horizontal preceding blank size HSB, the horizontal image size HIMG, the vertical synchronizing signal VD, the vertical count value VCNT, the horizontal synchronizing signal HD, and the horizontal count value HCNT. The image data PD includes the image data RDT supplied from thetransfer control circuit 32 a and the blank data BD. - Next, processes performed by the
blank control unit 51 will be described with reference toFIGS. 6 to 10 . - As illustrated in
FIG. 6 , first, inblock 101, theblank control unit 51 determines whether or not re-input has started. For example, an H-level start signal OPEN indicates start of re-input. When the start signal OPEN is at an L-level, theblank control unit 51 determines that re-input has not started (NO in block 101) and stands by (loop in block 101). When the start signal OPEN is at the H-level, theblank control unit 51 determines that re-input has started (YES in block 101). - Next, in
block 102, theblank control unit 51 determines whether or not the vertical synchronizing signal VD has been asserted (for example, at the H-level). For example, when the vertical synchronizing signal VD has not been asserted (NO in block 102), theblank control unit 51 stands by. When the vertical synchronizing signal VD is asserted, inblock 103, theblank control unit 51 calculates the total number of pieces of adjustable blank data BRM. The total number of pieces of blank data BRM is a sum of the number of pieces of data of the horizontal succeeding blank data HEB and the number of pieces of data of the vertical succeeding blank data VEB in the image data PD illustrated inFIG. 4A . Transfer of the image data GD is completed within a certain period (for example, one vertical scanning period from the assertion of one vertical synchronizing signal VD to the assertion of a next vertical synchronizing signal VD). The vertical preceding blank data VSB is necessary for determining whether or not each piece of line data in the image data PD of one frame is line data including the image data GD. The horizontal preceding blank data HSB is necessary for determining a start of the image data GD in data of each line. On the other hand, in each piece of line data, the number of pieces of blank data may be modified from the moment transfer of the image data GD ends until the next horizontal synchronizing signal HD is received. In a similar manner, in the image data PD of one frame, the number of pieces of blank data may be modified from the moment transfer of the image data GD ends until the next vertical synchronizing signal VD is received. The horizontal succeeding blank data HEB and the vertical succeeding blank data VEB are adjustable blank data whose size is changeable. The total number of pieces of blank data BRM may be calculated according to the following equation. -
BRM=HEB×VIMG+(HSB+HIMG+HEB)×VEB - In
block 104, theblank control unit 51 stores the total number of pieces of blank data BRM calculated inblock 103 as an initial value IBRM in, for example, theregister 32 e. - Next, in
block 105, theblank control unit 51 determines whether or not a VEB output area or, in other words, the vertical succeeding blank data VEB is currently being outputted. When the vertical succeeding blank data VEB is not being outputted (NO in block 105), theblank control unit 51 executesblock 106, and when the vertical succeeding blank data VEB is being outputted (YES in block 105), theblank control unit 51 executes block 109 illustrated inFIG. 7 . - In
block 106 illustrated inFIG. 6 , theblank control unit 51 determines whether or not an HEB output area or, in other words, whether or not the horizontal succeeding blank data HEB is currently being outputted. When the horizontal succeeding blank data HEB is being outputted (YES in block 106), theblank control unit 51 executes a blank control process inblock 107. Details ofblock 107 will be given later. After the process ofblock 107, theblank control unit 51 returns to block 105. When the horizontal succeeding blank data HEB is not being outputted (NO in block 106), inblock 108, theblank control unit 51 determines whether or not processing of one frame has been ended. For example, theblank control unit 51 compares the vertical count value VCNT with a size of the image data PD in the vertical direction (=VSB+VIMG+VEB), and determines that the processing of one frame has not been ended when the vertical count value VCNT is smaller than the vertical size (NO in block 108). On the other hand, when the vertical count value VCNT is equal to the vertical size, theblank control unit 51 determines that the processing of one frame has been ended (determination of YES). - In
block 109 illustrated inFIG. 7 , theblank control unit 51 determines whether or not the total number of pieces of blank data BRM is equal to the initial value IBRM. When the total number of pieces of blank data BRM is equal to the initial value IBRM (YES in block 109), theblank control unit 51 executesblock 110. On the other hand, when the total number of pieces of blank data BRM is not equal to the initial value IBRM (determination of NO), theblank control unit 51 executes block 111. - In
block 110, theblank control unit 51 determines whether or not the re-input process has been ended. For example, an L-level start signal OPEN indicates that the process has been ended. Therefore, when the start signal OPEN is at the H-level, theblank control unit 51 determines that the process has not been ended (start of re-input) (NO in block 110) and executes block 102 illustrated inFIG. 6 . On the other hand, when the start signal OPEN is at the L-level, theblank control unit 51 determines that the process has been ended (YES in block 110) and terminates the re-input process. - When the total number of pieces of blank data BRM is not equal to the initial value IBRM (NO in block 109), in block 111, the
blank control unit 51 calculates the number of deleted pieces of blank data. For example, when outputting vertical succeeding blank data VEB, theblank control unit 51 calculates the number of deleted pieces SKCN of the vertical succeeding blank data VEB according to the following equation. -
SKCN=roundup((IBRM−BRM)/(VSB+VIMG+VEB−VCNT+1)) - In the equation, “roundup” represents a function for rounding up a numerical value obtained by division.
- Next, in
block 112, theblank control unit 51 determines whether or not the horizontal count value HCNT is at a blank data deletion position. The blank data deletion position corresponds to a value obtained by subtracting the number of deleted pieces SKCN from a standard number of pieces of output data RLN among the number of pieces of data to be included in one line. The standard number of pieces of output data RLN is the number of pieces of data in line data for which the number of pieces of blank data is not adjusted and is a sum of the horizontal preceding blank size HSB, the horizontal image size HIMG, and the horizontal succeeding blank size HEB (=HSB+HIMG+HEB). In other words, theblank control unit 51 compares the horizontal count value HCNT with the blank data deletion position (=(HSB+HIMG+HEB−SKCN)−1). When the horizontal count value HCNT differs from the blank data deletion position (NO in block 112), theblank control unit 51 stands by (loop). On the other hand, when the horizontal count value HCNT is equal to the blank data deletion position (YES in block 112), theblank control unit 51 executesblock 113. - In
block 113, in order to make a transition to processing of a next line, theblank control unit 51 asserts a blank deletion signal BSK or, in other words, outputs an H-level blank deletion signal BSK. Inblock 114, theblank control unit 51 adds the calculated number of deleted pieces of blank data to the total number of pieces of blank data BRM (BRM=BRM+SKCN) and subsequently returns to block 109. - Next, blank control in
block 107 inFIG. 6 will be described in detail. - As illustrated in
FIG. 8 , first, inblock 120, theblank control unit 51 checks a data storage state of theFIFO memory 32 d. For example, theblank control unit 51 checks a value of the memory state signal FST and executes processes based on the value. For example, when the memory state signal FST indicates a “FULL” state of theFIFO memory 32 d, theblank control unit 51 executesblock 121. When the memory state signal FST indicates an “EMPTY” state of theFIFO memory 32 d, theblank control unit 51 executes block 131 illustrated inFIG. 9 . When the memory state signal FST indicates a “MODERATE” state of theFIFO memory 32 d, theblank control unit 51 executes block 141 illustrated inFIG. 10 . - In
block 121, theblank control unit 51 determines whether or not the total number of pieces of blank data BRM is equal to the initial value IBRM. When the total number of pieces of blank data BRM is equal to the initial value IBRM (YES in block 121), theblank control unit 51 ends the processing. On the other hand, when the total number of pieces of blank data BRM differs from the initial value IBRM (NO in block 121), theblank control unit 51 executesblock 122. - In
block 122, theblank control unit 51 calculates the number of pieces of blank data to be deleted from the total number of pieces of blank data BRM (the number of deleted pieces SKCN). The number of deleted pieces SKCN is obtained by subtracting the total number of pieces of blank data BRM from the initial value IBRM (SKCN=IBRM−BRM). - Next, in
block 123, in order to determine which of the values of the number of deleted pieces SKCN and the number of pieces of data CBN is to be adopted, theblank control unit 51 determines whether or not the number of deleted pieces SKCN is smaller than the number of pieces of data CBN of horizontal succeeding blank data HEB that is deletable. The number of pieces of data CBN of horizontal succeeding blank data HEB that is deletable is set in accordance with a value obtained by subtracting the horizontal count value HCNT at the present moment from the standard number of pieces of output data RLN (=HSB+HIMG+HEB). In other words, the number of pieces of data CBN of horizontal succeeding blank data HEB that is deletable corresponds to the number of pieces of data in blank data not yet transferred in one piece of line data at the present moment. In other words, the number of pieces of data CBN may be calculated according to the following equation. -
CBN=(HSB+HIMG+HEB−HCNT)−1 - In the equation above, “−1” represents an example of a constant for adjusting processing timings. The constant may be determined based on a result of the determination in
block 123 and in consideration of the number of pieces of blank data that is transferred until the blank deletion signal BSK is asserted. - When the number of deleted pieces SKCN is smaller than the number of pieces of data CBN (SKCN<CBN) (YES in block 123), the
blank control unit 51 executesblock 125, and when the number of deleted pieces SKCN is equal to or greater than the number of pieces of data CBN (NO in block 123), theblank control unit 51 executesblock 124. - In
block 124, theblank control unit 51 sets the number of pieces of blank data that is deletable at the present moments as the number of deleted pieces SKCN. In other words, theblank control unit 51 sets the number of deleted pieces SKCN so as to equal the number of pieces of data CBN in block 123 (SKCN=CBN). - Next, in
block 125, theblank control unit 51 determines whether or not the horizontal count value HCNT is at a blank data deletion position. The blank data deletion position corresponds to a value obtained by subtracting the number of deleted pieces SKCN from the standard number of pieces of output data RLN among the number of pieces of data that is transferred in one line. In other words, theblank control unit 51 compares the horizontal count value HCNT with the blank data deletion position (=(HSB+HIMG+HEB−SKCN)−1). When the horizontal count value HCNT differs from the blank data deletion position (NO in block 125), theblank control unit 51 stands by (loop). On the other hand, when the horizontal count value HCNT is equal to the blank data deletion position (YES in block 125), theblank control unit 51 executesblock 126. - In
block 126, in order to make a transition to processing of a next line, theblank control unit 51 asserts a blank deletion signal BSK or, in other words, outputs an H-level blank deletion signal BSK. - Next, in
block 127, theblank control unit 51 adds the number of deleted pieces of blank data to the total number of pieces of blank data BRM (BRM=BRM+SKCN) and subsequently terminates the blank control process. - When a transition is made from
block 120 inFIG. 8 to block 131 inFIG. 9 , in order to determine whether or not the horizontal count value HCNT has exceeded the HEB output area, theblank control unit 51 determines whether or not the horizontal count value HCNT is equal to or greater than the number of pieces of data in lines in which the number of pieces of blank data is not adjusted (the standard number of pieces of output data RLN). When the horizontal count value HCNT is equal to or greater than the standard number of pieces of output data RLN (YES in block 131), theblank control unit 51 executesblock 132. When the horizontal count value HCNT is smaller than the standard number of pieces of output data RLN (NO in block 131), theblank control unit 51 executes block 120 illustrated inFIG. 8 . - In
block 132, in order to add blank data, theblank control unit 51 asserts the blank addition signal BAD (for example, theblank control unit 51 outputs an H-level blank addition signal BAD). Inblock 133, theblank control unit 51 decrements the total number of pieces of blank data BRM (BRM=BRM−1). - Next, in
block 134, based on the memory state signal FST, theblank control unit 51 determines whether or not theFIFO memory 32 d is in a “FULL” state. When theFIFO memory 32 d is not in a “FULL” state (NO in block 134), theblank control unit 51 executesblock 132. On the other hand, when theFIFO memory 32 d is in a “FULL” state, theblank control unit 51 terminates the blank control process. - When a transition is made from
block 120 inFIG. 8 to block 141 inFIG. 10 , in order to determine whether or not the horizontal count value HCNT has exceeded the HEB output area, theblank control unit 51 determines whether or not the horizontal count value HCNT is equal to or greater than the number of pieces of data in lines in which the number of pieces of blank data is not adjusted (the standard number of pieces of output data RLN). When the horizontal count value HCNT is equal to or greater than the standard number of pieces of output data RLN (YES in block 141), theblank control unit 51 executesblock 142. When the horizontal count value HCNT is smaller than the standard number of pieces of output data RLN (NO in block 141), theblank control unit 51 executes block 120 illustrated inFIG. 8 . - In
block 142, theblank control unit 51 determines whether or not the current setting is a setting for adding blank data. For example, theregister 32 e illustrated inFIG. 5 stores a blank addition mode BLMD set by a user. When the blank addition mode BLMD is set to “1” and theFIFO memory 32 d is in a “MODERATE” state, theblank control unit 51 adds blank data using a similar method as in an “EMPTY” state. On the other hand, when the blank addition mode BLMD is set to “0” and theFIFO memory 32 d is in a “MODERATE” state, theblank control unit 51 does not add blank data. As described above, when the current setting is a setting for adding blank data (YES in block 142), theblank control unit 51 executesblock 143. When the current setting is not a setting for adding blank data (NO in block 142), theblank control unit 51 ends the blank control process. - In
block 143, in order to add blank data, theblank control unit 51 asserts the blank addition signal BAD (for example, theblank control unit 51 outputs an H-level blank addition signal BAD). Inblock 144, theblank control unit 51 decrements the total number of pieces of blank data BRM (BRM=BRM−1). - In
block 145, based on the memory state signal FST, theblank control unit 51 determines whether or not theFIFO memory 32 d is in a “FULL” state. When theFIFO memory 32 d is not in a “FULL” state (NO in block 145), theblank control unit 51 executesblock 142. On the other hand, when theFIFO memory 32 d is in a “FULL” state, theblank control unit 51 ends the blank control process. - Next, processes performed by the horizontal synchronizing
signal generating unit 52 will be described with reference toFIGS. 11 and 12 . -
FIG. 11 illustrates processes related to the horizontal count value HCNT. First, inblock 201, based on the start signal OPEN, the horizontal synchronizingsignal generating unit 52 determines whether or not re-input has been started. For example, the horizontal synchronizingsignal generating unit 52 determines that re-input has started based on an H-level start signal OPEN (YES in block 201). If not, the horizontal synchronizingsignal generating unit 52 determines that re-input has not started (NO in block 201). - Next, in
block 202, the horizontal synchronizingsignal generating unit 52 determines whether or not the vertical synchronizing signal VD has been asserted (for example, at the H-level). For example, when the vertical synchronizing signal VD has not been asserted (NO in block 202), the horizontal synchronizingsignal generating unit 52 stands by until the vertical synchronizing signal VD is asserted. Once the vertical synchronizing signal VD is asserted, inblock 203, the horizontal synchronizingsignal generating unit 52 presets the horizontal count value HCNT to a certain value (for example, “1”). - Next, in
block 204, the horizontal synchronizingsignal generating unit 52 determines whether or not the horizontal synchronizing signal HD and the vertical synchronizing signal VD have been negated. When at least one of the horizontal synchronizing signal HD and the vertical synchronizing signal VD has been asserted (NO in block 204), the horizontal synchronizingsignal generating unit 52 executesblock 203, and when the horizontal synchronizing signal HD and the vertical synchronizing signal VD have been negated (YES in block 204), the horizontal synchronizingsignal generating unit 52 executesblock 205. - In
block 205, the horizontal synchronizingsignal generating unit 52 increments the horizontal count value HCNT. - Next, in
block 206, based on the start signal OPEN, the horizontal synchronizingsignal generating unit 52 determines whether or not the re-input process has been ended. For example, when the start signal OPEN is at an H-level, the horizontal synchronizingsignal generating unit 52 determines that the process has not been ended (NO in block 206) and executes block 204. On the other hand, when the start signal OPEN is at the L-level, the horizontal synchronizingsignal generating unit 52 determines that re-input has been ended (YES in block 206) and terminates the process. -
FIG. 12 illustrates processes related to the horizontal synchronizing signal HD. - First, in
block 211, based on the start signal OPEN, the horizontal synchronizingsignal generating unit 52 determines whether or not re-input has been started. For example, the horizontal synchronizingsignal generating unit 52 determines that re-input has started based on an H-level start signal OPEN (YES in block 211). If not, the horizontal synchronizingsignal generating unit 52 determines that re-input has not started (NO in block 211). - Next, in
block 212, the horizontal synchronizingsignal generating unit 52 determines whether or not the vertical synchronizing signal VD has been asserted (for example, at the H-level). For example, when the vertical synchronizing signal VD has not been asserted (NO in block 212), the horizontal synchronizingsignal generating unit 52 stands by until the vertical synchronizing signal VD is asserted. Once the vertical synchronizing signal VD is asserted, inblock 213, the horizontal synchronizingsignal generating unit 52 determines whether or not the horizontal count value HCNT is equal to the inter-synchronizing signal blank size VHB. If not equal (NO in block 213), the horizontal synchronizingsignal generating unit 52 stands by. If equal (YES in block 213), inblock 214, the horizontal synchronizingsignal generating unit 52 asserts the horizontal synchronizing signal HD. For example, the horizontal synchronizingsignal generating unit 52 outputs an H-level horizontal synchronizing signal HD as pulses. - Next, in
block 215, the horizontal synchronizingsignal generating unit 52 determines the horizontal count value HCNT and the blank deletion signal BSK, determines whether or not the horizontal count value HCNT is equal to the standard number of pieces of output data RLN, and determines whether or not the blank deletion signal BSK has been asserted. When the horizontal count value HCNT is equal to the standard number of pieces of output data RLN or the blank deletion signal BSK has been asserted, the horizontal synchronizingsignal generating unit 52 executesblock 216. When the horizontal count value HCNT is not equal to the standard number of pieces of output data RLN and the blank deletion signal BSK has not been asserted, the horizontal synchronizingsignal generating unit 52 executesblock 217. - In
block 216, the horizontal synchronizingsignal generating unit 52 determines whether or not the blank addition signal BAD has been asserted (for example, at the H-level). If the blank addition signal BAD has not been asserted (NO in block 216), the horizontal synchronizingsignal generating unit 52 executesblock 214. If the blank addition signal BAD has been asserted (YES in block 216), the horizontal synchronizingsignal generating unit 52 stands by. - Next, in
block 217, based on the start signal OPEN, the horizontal synchronizingsignal generating unit 52 determines whether or not the re-input process has been ended. For example, when the start signal OPEN is at an H-level, the horizontal synchronizingsignal generating unit 52 determines that the process has not been ended (NO in block 217) and executes block 218. When the start signal OPEN is at the L-level, the horizontal synchronizingsignal generating unit 52 determines that re-input has been ended (YES in block 217) and terminates the process. - In
block 218, the horizontal synchronizingsignal generating unit 52 determines whether or not the vertical synchronizing signal VD has been asserted (for example, at the H-level). If the vertical synchronizing signal VD has been asserted (YES in block 218), the horizontal synchronizingsignal generating unit 52 executesblock 213. If the vertical synchronizing signal VD has not been asserted (NO in block 218), the horizontal synchronizingsignal generating unit 52 executesblock 215. - Next, processes of the vertical synchronizing
signal generating unit 53 will be described. -
FIG. 13A illustrates processes related to the vertical count value VCNT. - First, in
block 301, based on the start signal OPEN, the vertical synchronizingsignal generating unit 53 determines whether or not re-input has been started. For example, the vertical synchronizingsignal generating unit 53 determines that re-input has been started based on an H-level start signal OPEN (YES in block 301), and if not, determines that re-input has not been started (NO in block 301). - In
block 302, the vertical synchronizingsignal generating unit 53 determines whether or not the vertical synchronizing signal VD has been asserted (for example, at the H-level). For example, when the vertical synchronizing signal VD has not been asserted (NO in block 302), the vertical synchronizingsignal generating unit 53 stands by. Once the vertical synchronizing signal VD is asserted, inblock 303, the vertical synchronizingsignal generating unit 53 presets the vertical count value VCNT to a certain value (for example, “0”). - In
block 304, the vertical synchronizingsignal generating unit 53 determines whether or not the horizontal synchronizing signal HD has been asserted. If the horizontal synchronizing signal HD has not been asserted (NO in block 304), the vertical synchronizingsignal generating unit 53 executesblock 303. If the horizontal synchronizing signal HD has been asserted (YES in block 304), inblock 305, the vertical synchronizingsignal generating unit 53 increments the vertical count value VCNT. - In
block 306, the vertical synchronizingsignal generating unit 53 determines whether or not the vertical count value VCNT has become equal to the number of lines in one frame. The number of lines in one frame is a sum of the vertical preceding blank size VSB, the vertical image size VIMG, and the vertical succeeding blank size VEB. When the vertical count value VCNT is not equal to the number of lines in one frame (NO in block 306), the vertical synchronizingsignal generating unit 53 executesblock 303. When the vertical count value VCNT is equal to the number of lines in one frame (YES in block 306), the vertical synchronizingsignal generating unit 53 executesblock 307. - In
block 307, based on the start signal OPEN, the vertical synchronizingsignal generating unit 53 determines whether or not the re-input process has been ended. For example, when the start signal OPEN is at an H-level, the vertical synchronizingsignal generating unit 53 determines that the process has not been ended (NO in block 307) and executes block 302. On the other hand, when the start signal OPEN is at the L-level, the vertical synchronizingsignal generating unit 53 determines that re-input has been ended (YES in block 307) and terminates the process. -
FIG. 13B illustrates processes related to the vertical synchronizing signal VD. - First, in
block 311, based on the start signal OPEN, the vertical synchronizingsignal generating unit 53 determines whether or not re-input has been started. For example, when the vertical synchronizingsignal generating unit 53 determines that re-input has been started based on an H-level start signal OPEN (YES in block 311), inblock 312, the vertical synchronizingsignal generating unit 53 asserts the vertical synchronizing signal VD (for example, at the H-level). - In
block 313, the vertical synchronizingsignal generating unit 53 determines whether or not transfer of one frame has been ended. For example, this determination is made based on the vertical count value VCNT and the horizontal count value HCNT. When the vertical count value VCNT is equal to the number of lines in one frame and the horizontal count value HCNT is equal to the number of pieces of data in the horizontal direction in the vertical succeeding blank data VEB adjusted in accordance with addition or deletion of blank data, the vertical synchronizingsignal generating unit 53 determines that transfer of one frame has been ended. When transfer of one frame has been ended (YES in block 313), the vertical synchronizingsignal generating unit 53 executesblock 312, and when transfer of one frame has not been ended (NO in block 313), the vertical synchronizingsignal generating unit 53 executesblock 314. - In
block 314, based on the start signal OPEN, the vertical synchronizingsignal generating unit 53 determines whether or not the re-input process has been ended. For example, when the start signal OPEN is at an H-level, the vertical synchronizingsignal generating unit 53 determines that the process has not been ended (NO in block 314) and executes block 313. On the other hand, when the start signal OPEN is at the L-level, the vertical synchronizingsignal generating unit 53 determines that re-input has been ended (YES in block 314) and terminates the process. - Processes of the output
data generating unit 54 will be described with reference toFIG. 14 . - First, in
block 401, the outputdata generating unit 54 determines whether or not the vertical synchronizing signal VD has been asserted (for example, at the H-level). For example, when the vertical synchronizing signal VD has not been asserted (NO in block 401), the outputdata generating unit 54 stands by. Once the vertical synchronizing signal VD has been asserted, inblock 402, the outputdata generating unit 54 outputs blank data. - Next, in
block 403, the outputdata generating unit 54 determines whether or not the vertical count value VCNT has become equal to the vertical preceding blank size VSB. When the vertical count value VCNT is not equal to the vertical preceding blank size VSB (NO in block 403), the outputdata generating unit 54 stands by. When the vertical count value VCNT becomes equal to the vertical preceding blank size VSB (YES in block 403), inblock 404, the outputdata generating unit 54 determines whether the horizontal synchronizing signal HD has been asserted (for example, at the H-level). When the horizontal synchronizing signal HD has not been asserted (NO in block 404), the outputdata generating unit 54 stands by. When the horizontal synchronizing signal HD is asserted (YES in block 404), inblock 405, the outputdata generating unit 54 determines whether the horizontal count value HCNT has become equal to the horizontal preceding blank size HSB. When the horizontal count value HCNT is not equal to the horizontal preceding blank size HSB (NO in block 405), the outputdata generating unit 54 stands by. When the horizontal count value HCNT becomes equal to the horizontal preceding blank size HSB (YES in block 405), inblock 406, the outputdata generating unit 54 asserts the data request signal DTEN (for example, at the H-level) and outputs image data PD that is equivalent to the image data RDT supplied from thetransfer control circuit 32 a. - Next, in
block 407, the outputdata generating unit 54 determines whether or not the horizontal count value HCNT has become equal to the sum of the horizontal preceding blank size HSB and the horizontal image size HIMG. In other words, the outputdata generating unit 54 determines whether or not output of the image data GD in one line has been completed. When the horizontal count value HCNT is not equal to the sum (NO in block 407), the outputdata generating unit 54 executesblock 406. When the horizontal count value HCNT is equal to the sum (YES in block 407), the outputdata generating unit 54 outputs blank data inblock 408. - Next, in
block 409, the outputdata generating unit 54 determines whether or not the vertical count value VCNT has become equal to the sum of the vertical preceding blank size VSB and the vertical image size VIMG. In other words, the outputdata generating unit 54 determines whether or not output of the image data GD in one frame has been completed. When the vertical count value VCNT is not equal to the sum (NO in block 409), the outputdata generating unit 54 executesblock 404, and when the vertical count value VCNT is equal to the sum (YES in block 409), the output data generating unit executesblock 401. - Next, operations of the
transfer control circuit 32 a and thesignal generating unit 32 b will be described with reference toFIGS. 15 and 16 . - First, when the vertical synchronizing signal VD is asserted, the
signal generating unit 32 b calculates the total number of pieces of blank data BRM per frame. In the example illustrated inFIG. 15 , the total number of pieces of blank data BRM is “80”. In the example, the vertical preceding blank size VSB is “0” and the vertical preceding blank data VSB is not outputted. - The inter-synchronizing signal blank size VHB is outputted in response to the vertical synchronizing signal VD. During an output period of the inter-synchronizing signal blank size VHB, the
transfer control circuit 32 a illustrated inFIG. 2 outputs a request signal REQ to the memory I/F 45 and reads image data of thememory 13. Therefore, in the example illustrated inFIG. 15 , the memory state signal FST or, in other words, a state of theFIFO memory 32 d of thetransfer control circuit 32 a changes from “EMPTY” to “FULL”. - Next, when the horizontal synchronizing signal HD is asserted, the horizontal count value HCNT is preset to a certain value (for example, “1”) and processing on a first line is performed. In other words, after the horizontal preceding blank data HSB is outputted, image data is outputted. In accordance with the output of the image data, the memory state signal FST changes from “FULL” to “MODERATE”. Once a certain number of pieces (horizontal image size HIMG) of image data is outputted, the horizontal succeeding blank data HEB is outputted. At this point, in accordance with data read from the
memory 13 illustrated inFIG. 2 , the memory state signal FST changes from “EMPTY” to “MODERATE” and then to “FULL”. In this manner, in a period during which the horizontal succeeding blank data HEB is outputted, the state of theFIFO memory 32 d changes to “FULL”. Therefore, when an output period of the horizontal succeeding blank data HEB ends, the horizontal synchronizing signal HD is asserted for processing of a next line. - In accordance with the assertion of the horizontal synchronizing signal HD, the horizontal count value HCNT is preset to a certain value (for example, “1”) and processing on a second line is performed. In other words, after the horizontal preceding blank data HSB is outputted, image data is outputted. Once a certain number of pieces (horizontal image size HIMG) of image data is outputted, the horizontal succeeding blank data HEB is outputted. While the memory state signal FST changes from “EMPTY” to “MODERATE”, a “FULL” state has not yet been reached. Therefore, the blank addition signal BAD is asserted. Blank data is outputted based on the asserted blank addition signal BAD, and the total number of pieces of blank data BRM is decremented every time a piece of blank data is outputted. At this point, the memory state signal FST changes from “MODERATE” to “FULL” in accordance with data read from the
memory 13 illustrated inFIG. 2 . As a result, the blank addition signal BAD is negated and the horizontal synchronizing signal HD is asserted. - As described above, the blank addition signal BAD is asserted so that the memory state signal FST changes to “FULL”. The period during which the horizontal succeeding blank data HEB is outputted is extended until the memory state signal FST changes to “FULL”. With the extension of the output period of the horizontal succeeding blank data HEB, the total number of pieces of blank data BRM is reduced.
- Next, as illustrated in
FIG. 16 , when a next vertical synchronizing signal VD is asserted, the horizontal count value HCNT is preset and processing on a third line is performed. In other words, after the horizontal preceding blank data HSB is outputted, output of image data is started. When a certain number of pieces (the horizontal image size HIMG) of image data is outputted, the memory state signal FST is “MODERATE”. During the output period of the horizontal succeeding blank data HEB, the memory state signal FST changes from “MODERATE” to “FULL”. Since the total number of pieces of blank data BRM is smaller than the initial value IBRM, the number of deleted pieces SKCN is calculated. In this example, the number of deleted pieces SKCN is “4”. Based on the calculated number of deleted pieces SKCN, the blank deletion signal BSK is asserted at a timing where blank data is deleted. The horizontal synchronizing signal HD is asserted in accordance with the assertion of the blank deletion signal BSK. The number of deleted pieces SKCN is added to the total number of pieces of blank data BRM. - In a similar manner, in accordance with the assertion of a next horizontal synchronizing signal HD, the horizontal count value HCNT is preset to a certain value and processing on a fourth line is performed. In other words, after the horizontal preceding blank data HSB is outputted, output of image data is started. Once a certain number of pieces (horizontal image size HIMG) of image data is outputted, the horizontal succeeding blank data HEB is outputted. At this point, the memory state signal FST is “EMPTY”. Therefore, the blank addition signal BAD is asserted. Blank data is outputted based on the asserted blank addition signal BAD, and the total number of pieces of blank data BRM is decremented every time a piece of blank data is outputted. At this point, the memory state signal FST changes from “EMPTY” to “MODERATE” and then to “FULL” in accordance with data read from the
memory 13 illustrated inFIG. 2 . As a result, the blank addition signal BAD is negated and the horizontal synchronizing signal HD is asserted. - Processing in a VEB output area or, in other words, processing during a period in which the vertical succeeding blank data VEB is outputted will be described with reference to
FIG. 17 . - First, the horizontal synchronizing signal HD is asserted, the horizontal count value HCNT is preset, and processing of a (VIMG+1)-th line is performed. The horizontal count value HCNT is incremented each time a piece of blank data is outputted.
- The number of deleted pieces SKCN per line of the vertical succeeding blank data VEB is calculated. For example, the number of deleted pieces SKCN is obtained by dividing a result of subtracting the total number of pieces of blank data BRM from the initial value IBRM by the vertical preceding blank size VSB. For example, the number of deleted pieces SKCN is “6”. Based on the number of deleted pieces SKCN and the standard number of pieces of output data RLN, the blank deletion signal BSK is asserted at a position where the horizontal count value HCNT is equal to a value obtained by subtracting the number of deleted pieces SKCN from the standard number of pieces of output data RLN. The horizontal synchronizing signal HD is asserted in accordance with the assertion of the blank deletion signal BSK and processing of a next line (a (VIMG+2)-th line) is started. The number of deleted pieces SKCN is added to the total number of pieces of blank data BRM.
- The processing described above is repeated until a final line of one frame or, in other words, a (VIMG+VEB)-th line of one frame. Once processing of the (VIMG+VEB)-th line ends or, in other words, the processing of one frame ends, the total number of pieces of blank data BRM becomes equal to the initial value IBRM. Therefore, the number of pieces of image data PD that is outputted between two vertical synchronizing signals VD is equal to the number of pieces of image data PD that is outputted when blank data is not controlled. Accordingly, the time between two vertical synchronizing signals VD or, in other words, a cycle of the vertical synchronizing signal VD remains unchanged.
- As illustrated in
FIG. 18A , in the image data PD of one frame, the size (the number of pieces of data) of the horizontal succeeding blank data HEB in each line including the image data GD varies according to the timing at which the horizontal synchronizing signal HD is outputted. The output timing of the horizontal synchronizing signal HD is based on the blank addition signal BAD and the blank deletion signal BSK or, in other words, based on a data storage state in theFIFO memory 32 d. The number of pieces of data of the blank data BD in each piece of line data of the vertical succeeding blank data VEB is adjusted in accordance with the size of the horizontal succeeding blank data HEB in each line. -
FIG. 18B illustrates image data PD of one frame in a case where the number of pieces of data of the horizontal succeeding blank data HEB and the number of pieces of data of blank data BD in each piece of line data of the vertical succeeding blank data VEB are not adjusted. The overall numbers of pieces of data in the image data PD illustrated inFIG. 18A and the image data PD illustrated inFIG. 18B are the same. - The present embodiment achieves the following advantageous effects.
- The
transfer control circuit 32 a stores image data MDT read from thememory 13 in theFIFO memory 32 d. Thetransfer control circuit 32 a outputs image data RDT read from theFIFO memory 32 d to the outputdata generating unit 54 in response to a data request signal DTEN outputted from the outputdata generating unit 54. Thetransfer control circuit 32 a outputs a memory state signal FST corresponding to the storage state of data in theFIFO memory 32 d. After outputting output data PD (the image data RDT) with the horizontal image size HIMG in accordance with a horizontal count value HCNT, the outputdata generating unit 54 outputs blank data BD. Based on the memory state signal FST, when theblank control unit 51 determines that the state of theFIFO memory 32 d is “EMPTY” or “MODERATE” in a period in which the outputdata generating unit 54 outputs horizontal succeeding blank data HEB, theblank control unit 51 asserts a blank addition signal BAD until the state of theFIFO memory 32 d changes to “FULL”. - Accordingly, in data transfer where the image data MDT stored in the
memory 13 is transferred to thecorrection circuit 32 c, a transfer failure is suppressed in which the image data RDT to be outputted to thecorrection circuit 32 c misses an output timing. In other words, when the blank addition signal BAD is asserted at a timing at which a horizontal synchronizing signal HD is outputted based on the horizontal count value HCNT, the horizontal synchronizingsignal generating unit 52 outputs the horizontal synchronizing signal HD in response to a negation of the blank addition signal BAD. Therefore, when the horizontal synchronizing signal HD is outputted, the state of theFIFO memory 32 d is “FULL”. As a result, even if data readout from thememory 13 is delayed by an access made by thecorrection unit 33 or the like illustrated inFIG. 1 , the amount of stored data in theFIFO memory 32 d is unlikely to fall below “0”. Therefore, a transfer failure is suppressed. - Since transfer failures are reduced at the
transfer control circuit 32 a and thesignal generating unit 32 b, processes performed by thecorrection circuit 32 c are performed in a reliable manner. For example, thecorrection circuit 32 c receives image data PD in accordance with the horizontal synchronizing signal HD and the vertical synchronizing signal VD and performs processing on the image data PD. When a transfer failure is caused by a horizontal synchronizing signal HD during transfer of image data PD of one line, an error may occur in the processing. In such a case, corresponding image data of one line or image data of one frame may be once again read from thememory 13 and a delay of processing may occur. In addition, the present inventors considered generating a weight signal for interrupting processing in the case of a transfer failure. However, configuring a circuit for exchanging weight signals or configuring thecorrection circuit 32 c to be capable of interrupting processing with weight signals increases the circuit size of thecorrection circuit 32 c accordingly. Therefore, in the present embodiment, since thecorrection circuit 32 c performs processing based on image data PD of one line by the horizontal synchronizing signal HD, a circuit for weight signals is not required and thecorrection circuit 32 c need not be configured so as interrupt processing based on image data PD of one line. As a result, an increase in circuit size of theimage signal processor 12 including thecorrection circuit 32 c is suppressed. - The
blank control unit 51 adjusts an output timing of the horizontal synchronizing signal HD during a period in which the vertical succeeding blank data VEB is transferred in accordance with the total number of pieces of blank data BRM or, in other words, the number of pieces of blank data BD increased or decreased in each line including the image data GD. Accordingly, theblank control unit 51 adjusts the number of pieces of blank data BD in each piece of line data. Therefore, the number of pieces of data of image data PD outputted from the outputdata generating unit 54 between vertical synchronizing signals VD becomes equal to the number of pieces of data of image data PD when the number of pieces of blank data BD is not adjusted. Since the cycle of the vertical synchronizing signal VD is unchanged and processing time for one frame is also unchanged, for example, when consecutively processing successive frames as in the case of a moving image, the processing is performed without modifying frame rates. - The embodiments may be modified as follows.
- The request signal REQ may be outputted in accordance with the data amount MNM and/or the data storage efficiency MRT.
- The
transfer control circuit 32 a may output the memory state signal FST in accordance with the data amount MNM and/or the available capacity MEP. - In the embodiments described above, the state of the
FIFO memory 32 d may be determined to be one of two or one of four or more states, whereby the memory state signal FST may be outputted in accordance with the determined state. - The total number of pieces of blank data BRM may be set by a user. For example, the set value is stored in the
register 32 e. In this case, the value set by the user or, in other words, the value stored in theregister 32 e may be adopted as the initial value IBRM. Inblock 103 illustrated inFIG. 6 , the initial value IBRM stored in theregister 32 e is read, and the readout value is adopted as the total number of pieces of blank data BRM. In this example, block 104 illustrated inFIG. 6 may be omitted. - During a period in which the vertical succeeding blank data VEB is transferred, the numbers of pieces of data of blank data BD may differ among pieces of line data.
- All examples and conditional language recited herein are intended for pedagogical purposes to aid the reader in understanding the principles of the invention and the concepts contributed by the inventor to furthering the art, and are to be construed as being without limitation to such specifically recited examples and conditions, nor does the organization of such examples in the specification relate to a showing of the superiority and inferiority of the invention. Although the embodiments of the present inventions have been described in detail, it should be understood that the various changes, substitutions, and alterations could be made hereto without departing from the spirit and scope of the invention.
Claims (11)
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012220497A JP6136171B2 (en) | 2012-10-02 | 2012-10-02 | Data transfer device, data transfer method, and semiconductor device |
JP2012-220497 | 2012-10-02 |
Publications (2)
Publication Number | Publication Date |
---|---|
US20140095744A1 true US20140095744A1 (en) | 2014-04-03 |
US9043514B2 US9043514B2 (en) | 2015-05-26 |
Family
ID=50386327
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US14/011,264 Expired - Fee Related US9043514B2 (en) | 2012-10-02 | 2013-08-27 | Data transfer device and method |
Country Status (3)
Country | Link |
---|---|
US (1) | US9043514B2 (en) |
JP (1) | JP6136171B2 (en) |
CN (1) | CN103716532B (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170034401A1 (en) * | 2014-03-25 | 2017-02-02 | Seiko Epson Corporation | Imaging device, image processing device, display control device and imaging display apparatus |
US20170094191A1 (en) * | 2014-03-26 | 2017-03-30 | Sony Corporation | Image sensor and electronic device |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4912549A (en) * | 1988-09-07 | 1990-03-27 | Rca Licensing Corporation | Video signal synchronization system as for an extended definition widescreen television signal processing system |
US5500682A (en) * | 1992-09-04 | 1996-03-19 | Matsushita Electric Industrial Co., Ltd. | Memory equipment for writing/reading a defective video signal in a FIFO memory device consectively |
US5513145A (en) * | 1992-03-17 | 1996-04-30 | Fujitsu Limited | FIFO memory device capable of writing contiguous data into rows |
US20020015053A1 (en) * | 2000-08-04 | 2002-02-07 | Takatoshi Fukuda | Image processing device and image processing method |
US20050249280A1 (en) * | 2004-05-10 | 2005-11-10 | Yoshimasa Kondo | Image data compression apparatus, enencoder electronic equipment, and image data compression method |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3453864B2 (en) | 1994-08-19 | 2003-10-06 | ソニー株式会社 | Image data transfer control device |
JP3370206B2 (en) | 1995-04-20 | 2003-01-27 | シャープ株式会社 | Digital camera device |
CN1264096C (en) * | 2003-11-17 | 2006-07-12 | 中兴通讯股份有限公司 | Data handling method of FIFO memory device |
US7093061B2 (en) * | 2004-02-19 | 2006-08-15 | Avago Technologies Fiber Ip (Singapore) Pte. Ltd. | FIFO module, deskew circuit and rate matching circuit having the same |
JP2009200938A (en) | 2008-02-22 | 2009-09-03 | Toshiba Corp | Buffer controller and receiver |
JP5633355B2 (en) * | 2010-12-14 | 2014-12-03 | 富士通セミコンダクター株式会社 | Data transfer device, data transfer method, and semiconductor device |
-
2012
- 2012-10-02 JP JP2012220497A patent/JP6136171B2/en active Active
-
2013
- 2013-08-27 US US14/011,264 patent/US9043514B2/en not_active Expired - Fee Related
- 2013-09-27 CN CN201310452298.5A patent/CN103716532B/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4912549A (en) * | 1988-09-07 | 1990-03-27 | Rca Licensing Corporation | Video signal synchronization system as for an extended definition widescreen television signal processing system |
US5513145A (en) * | 1992-03-17 | 1996-04-30 | Fujitsu Limited | FIFO memory device capable of writing contiguous data into rows |
US5500682A (en) * | 1992-09-04 | 1996-03-19 | Matsushita Electric Industrial Co., Ltd. | Memory equipment for writing/reading a defective video signal in a FIFO memory device consectively |
US20020015053A1 (en) * | 2000-08-04 | 2002-02-07 | Takatoshi Fukuda | Image processing device and image processing method |
US20050249280A1 (en) * | 2004-05-10 | 2005-11-10 | Yoshimasa Kondo | Image data compression apparatus, enencoder electronic equipment, and image data compression method |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170034401A1 (en) * | 2014-03-25 | 2017-02-02 | Seiko Epson Corporation | Imaging device, image processing device, display control device and imaging display apparatus |
US10044912B2 (en) * | 2014-03-25 | 2018-08-07 | Seiko Epson Corporation | Imaging device and image processing device for outputting image signal to be displayed, and display control device and imaging display apparatus for displaying image signal |
US20170094191A1 (en) * | 2014-03-26 | 2017-03-30 | Sony Corporation | Image sensor and electronic device |
US9912879B2 (en) * | 2014-03-26 | 2018-03-06 | Sony Corporation | Embedding tag information to image data of a moving image |
US10382705B2 (en) * | 2014-03-26 | 2019-08-13 | Sony Corporation | Image sensor and electronic device |
Also Published As
Publication number | Publication date |
---|---|
CN103716532B (en) | 2017-07-18 |
CN103716532A (en) | 2014-04-09 |
JP2014075625A (en) | 2014-04-24 |
US9043514B2 (en) | 2015-05-26 |
JP6136171B2 (en) | 2017-05-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8558914B2 (en) | Imaging device, imaging method, and electronic apparatus for dynamically determining ratios of exposures to optimize multi-stage exposure | |
US9262314B2 (en) | Data transfer device | |
US8194155B2 (en) | Information processing apparatus, buffer control method, and computer program | |
US8928782B2 (en) | Image processing device and image capture device | |
JP2012085135A (en) | Timing generator, imaging apparatus and dot clock output method | |
US7996603B2 (en) | DRAM controller that forces a refresh after a failed refresh request | |
US9043514B2 (en) | Data transfer device and method | |
US20190051270A1 (en) | Display processing device and imaging device | |
US10346323B2 (en) | Data transfer device and data transfer method for smoothing data to a common bus | |
US10719458B2 (en) | Data transfer device, image processing device, and imaging device | |
US10277811B2 (en) | Display control device and imaging device | |
US11314664B2 (en) | Memory access device, image processing device and imaging device | |
US20200358949A1 (en) | Image capturing apparatus and control method therefor | |
WO2019043822A1 (en) | Memory access device, image processing device, and imaging device | |
US10452583B2 (en) | Data transfer device and data transfer method having a shorter time interval between pieces of final transfer data in a frame image | |
US9019404B2 (en) | Image processing apparatus and method for preventing image degradation | |
JP6111853B2 (en) | Data transfer device, data transfer method, and semiconductor device | |
Komatsu et al. | Milbeaut image signal processing LSI chip for mobile phones | |
JP2012209798A (en) | Image processing system and imaging apparatus | |
JP5224492B2 (en) | Image data transfer control device, image data transfer method, and camera having the image data transfer device | |
WO2019153264A1 (en) | Iimage pre-processing method and device, image sensor interface, image processing method and device | |
CN115136583A (en) | Imaging apparatus, imaging system, and imaging method | |
JP2009278199A (en) | Imaging apparatus | |
JP2017005538A (en) | Image processing device, image processing method and program | |
JP2015102912A (en) | Bus control apparatus and method, and imaging apparatus |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: FUJITSU SEMICONDUCTOR LIMITED, JAPAN Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:YOSHIDA, YUJI;REEL/FRAME:031106/0051 Effective date: 20130815 |
|
AS | Assignment |
Owner name: SOCIONEXT INC., JAPAN Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:FUJITSU SEMICONDUCTOR LIMITED;REEL/FRAME:035508/0637 Effective date: 20150302 |
|
STCF | Information on status: patent grant |
Free format text: PATENTED CASE |
|
AS | Assignment |
Owner name: AKONNI BIOSYSTEMS, INC., MARYLAND Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:HOLMBERG, REBECCA;GINDLESPERGER, ALISSA ERIN;STOKES, TINSLEY JANNA;AND OTHERS;SIGNING DATES FROM 20150826 TO 20150827;REEL/FRAME:036450/0561 |
|
MAFP | Maintenance fee payment |
Free format text: PAYMENT OF MAINTENANCE FEE, 4TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1551); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY Year of fee payment: 4 |
|
FEPP | Fee payment procedure |
Free format text: MAINTENANCE FEE REMINDER MAILED (ORIGINAL EVENT CODE: REM.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
LAPS | Lapse for failure to pay maintenance fees |
Free format text: PATENT EXPIRED FOR FAILURE TO PAY MAINTENANCE FEES (ORIGINAL EVENT CODE: EXP.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
STCH | Information on status: patent discontinuation |
Free format text: PATENT EXPIRED DUE TO NONPAYMENT OF MAINTENANCE FEES UNDER 37 CFR 1.362 |
|
FP | Lapsed due to failure to pay maintenance fee |
Effective date: 20230526 |