Hi,
I would like to ask a question on CCS 4.0’s Image Viewer. The processor I am using is DM6437, and an external image sensor (CMOS camera) is connected with it.
If there is a constant flow of image data received from external image sensor, for example, CCDC’s DDR2 output address is set to 0x81000000, then what do we get when the Image Viewer’s view is refreshed?
Suppose frame rate of the sensor is 25fps, so each frame takes occupies 40ms. When we press “refresh”, or open “properties” window and then click “OK”, which of the consecutive frames are we going to retrieve? For 640×480 video, I actually find Image Viewer always took several seconds to update the window, during which time there can be almost over a hundred of frames coming from the external, one replaces another in their DDR2 repository.
So in this case, what do we actually get? Do we get precisely frame n corresponding to the moment “refresh” command is issued (plus some delay), or do we actually get a mixture: something like
1. 0~10% from frame n
2. 11~20% from frame n+1
3. 21~30% from frame n+2
(figures here are completely for illustration sake. I actually believe there might be much smaller fraction from each individual frame)
or other combinations?
As evidenced in the picture above: with a still lamp on top, Image Analyzer displays a clear image of the lamp; but when I am waving hands between the camera and the lamp when CCS is updating image, Image Analyzer’s display is quite unexplainable. Is this a combined image of many frames, hence contains many different positions of the hand during its movement?
Could anyone explain Image Viewer’s retrieving mechanism here for me?
Also, considering that VPFE is connected via high-bandwidth (128-bit) bus to SBL(shared buffer logic), then to EMIF (64-bit bus), and the transfer works in burst mode according to SPRU977A, TMS320DM643x DMP Video Processing Front End (VPFE) User's Guide (Rev. A), so transferring of video data into DDR2 should not interfere other tasks in normal conditions. But in terms of emulator’s retrieving data from DDR2, with which Image Viewer’s display result is intimately related, is it that fast? Is it possible for it to have the above mentioned “fractional combination” result?
I have checked the emulator’s clock and it is shown as 35MHz in CCS setup. Is that fast enough? Is the interface (JTAG) between emulator and DDR2 fast enough to avoid the said “fractional combination”?
Thanks,
Zheng