I tried the example and removed the clipping the ROI to the size of the canvas and also took out the image plot to make sure we would get accurate times. I get the same frame rate with that example as I did with my own code (around 12 fps). Also, I neglected to mention that for my own code I placed calls to timers just before and just after the call to imgGrab, and the time difference is what you would expect: about .083 seconds (average) to retrieve one frame.
I know nothing about the internal structure of the PCI-1422, but considering that we are retrieving images from the same SDRAM memory that is being used to acquire images, are we seeing some sort of bus contention on the PCI-1422 itself? Also, the camera I'm using is an evaluation board, and I have access
to the schematics and should soon have access to the CPLD design. So I can verify the design of the camera itself. I'm glad to hear that you expect to be able to transfer at 45MB/sec. That probably means that there is something not quite right either in the camera interface or perhaps in the computer system being used. But if you have any other ideas, I'd be glad to hear them.
Thanks for the response.