System and method for extracting and restoring a video buffer from/to a video acquisition cycle
DCFirst Claim
1. An image acquisition system for acquiring digital video data from a video sequence and storing the frames in a computer memory, the image acquisition system comprising:
- a buffer memory which receives and stores the digital video data;
a computer memory which includes a plurality of frame buffers each operable to store digital video data corresponding to a video frame;
a direct memory access (DMA) controller coupled to the buffer memory which is operable to transfer digital video data from the buffer memory to the computer memory;
a frame buffer access list which stores information indicating availability of said plurality of frame buffers in said computer memory;
wherein said direct memory access controller is operable to access said frame buffer access list and uses values in said frame buffer access list to transfer said digital video data from said buffer memory to available ones of said frame buffers in the computer memory, wherein said values in said frame buffer access list determine said available ones of said frame buffers;
wherein said values in said frame buffer access list are manipulable to exclude one or more selected frame buffers of the plurality of frame buffers from receiving said digital video data, wherein after a first manipulation of the frame buffer access list to exclude the one or more selected frame buffers from the plurality of frame buffers, said direct memory access controller continues to transfer said digital video data from said buffer memory to remaining available ones of the plurality of frame buffers.
1 Assignment
Litigations
0 Petitions
Accused Products
Abstract
A system and method for dynamically re-programming the acquisition cycle of a video acquisition system. The video acquisition system comprises a host computer and a video source. The host computer comprises a CPU, a system memory, and a video capture board. The video capture board receives a video signal from the video source. The video signal comprises a sequence of frames. The video capture board includes a DMA Controller which writes video frames to system memory under the control of a circularly linked list of commands. The linked list contains a plurality of sublists, each of which schedules the DMA transfer of a video frame to a corresponding video buffer in system memory. By removing a sublist from the linked list, a video buffer is removed from the set of buffers targeted for data transfer by the DMA Controller. By adding a sublist to the linked list, a video buffer is restored to the targeted set. A current or recently completed video buffer is removed from the targeted set in response to a request asserted by an application program.
25 Citations
19 Claims
-
1. An image acquisition system for acquiring digital video data from a video sequence and storing the frames in a computer memory, the image acquisition system comprising:
-
a buffer memory which receives and stores the digital video data; a computer memory which includes a plurality of frame buffers each operable to store digital video data corresponding to a video frame; a direct memory access (DMA) controller coupled to the buffer memory which is operable to transfer digital video data from the buffer memory to the computer memory; a frame buffer access list which stores information indicating availability of said plurality of frame buffers in said computer memory; wherein said direct memory access controller is operable to access said frame buffer access list and uses values in said frame buffer access list to transfer said digital video data from said buffer memory to available ones of said frame buffers in the computer memory, wherein said values in said frame buffer access list determine said available ones of said frame buffers; wherein said values in said frame buffer access list are manipulable to exclude one or more selected frame buffers of the plurality of frame buffers from receiving said digital video data, wherein after a first manipulation of the frame buffer access list to exclude the one or more selected frame buffers from the plurality of frame buffers, said direct memory access controller continues to transfer said digital video data from said buffer memory to remaining available ones of the plurality of frame buffers. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A method for acquiring digital video data from a video sequence into a computer memory which comprises a plurality of frame buffers, the method comprising:
-
receiving digital video data; storing the digital video data in a buffer memory; a direct memory access controller transferring said digital video data from the buffer memory to available ones of said frame buffers, wherein each of said frame buffers is sufficient to store a video frame; wherein said transferring is controlled by a frame buffer access list, wherein said frame buffer access list stores information which indicates availability of said plurality of frame buffers for digital video data transfer; manipulating values in said frame buffer access list to exclude one or more selected frame buffers of the plurality of frame buffers from receiving said digital video data; and said direct memory access controller continuing to transfer said digital video data from said buffer memory to remaining available ones of the plurality of frame buffers after said manipulating, wherein said one or more selected frame buffers do not receive said digital video data. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17)
-
-
18. An image acquisition system comprising:
-
a processor; a system memory; a direct memory access (DMA) controller configured to read and execute nodes in a circularly-linked control list stored in system memory, wherein the DMA controller (a) receives a first stream of digitized video frames and (b) transfers the first stream of digitized video frames to a set of video buffers in system memory under the control of the control list; wherein the control list comprises a set of sublists in one-to-one correspondence with the set of video buffers in system memory, wherein each of the sublists contains one or more transfer nodes, wherein each of said one or more transfer nodes (c) specifies a target address in system memory and a data transfer length and (d) instructs the DMA controller to transfer video data comprising at least a portion of one of said digitized video frames to system memory starting at the target address, wherein the data transfer length defines the number of data units to be transferred to system memory starting at the target address; wherein the processor is configured to alter the linkage structure of the control list to remove a first sublist from control list so that a first video buffer corresponding to the first sublist is no longer targeted for transfers by the DMA controller.
-
-
19. A method comprising:
-
receiving a first stream of video data and buffering the first stream of video data in a First-In-First-Out buffer (FIFO); performing a series of direct memory access (DMA) transfers from the FIFO to a set of video buffers in a system memory under the control of a circularly-linked control list stored in the system memory, wherein the control list comprises a set of sublists in one-to-one correspondence with the set of video buffers in system memory, wherein each of the sublists contains one or more transfer nodes, wherein each of said one or more transfer nodes specifies a target address in system memory and a data transfer length for one of said series of DMA transfers; altering the linkage structure of the control list to remove a first sublist from control list so that a first video buffer corresponding to the first sublist is no longer targeted by any of said series of DMA transfers.
-
Specification