Frame buffer memory
First Claim
1. An apparatus, responsive to control, address and data signals from a computer, for storing pixel data representing a screen image consisting of rows and columns of pixels, each pixel having display attributes controlled according to associated stored pixel data, said apparatus comprising:
- a random access memory comprising addressable storage locations, each storage location being fixedly associated with a separate horizontally contiguous set of said pixels, each storage location storing a pixel data word comprising pixel data controlling display attributes of said pixels associated with said storage location;
an input/output controller for storing an address conveyed from said computer by said address signals, for addressing a storage location in said random access memory in accordance with said stored address, and for selectively incrementing/decrementing first and second portions of said stored address in accordance with ones of said control signals, said pixel data words being stored in said random access memory at storage locations such that when said first portion of said stored address is selectively incremented/decremented, a new storage location addressed in accordance with said stored address is associated with a first set of pixels horizontally adjacent to a second set of pixels associated with a storage location last addressed by said stored address, and such that when said second portion of said stored address is selectively incremented/decremented, said new storage location addressed in accordance with said stored address is associated with a third set of pixels vertically adjacent to said second set of pixels; and
a data controller repsonsive to others of said control signals for reading pixel data words stored in said random access memory at storage locations addressed by said input/output controller, and for writing pixel data words into said ramdom access memory at storage locations addressed by said input/output controller.
1 Assignment
0 Petitions
Accused Products
Abstract
A frame buffer memory has a random access memory (RAM) for storing pixel data words, each word containing pixel data corresponding to a separate set of a plurality pixels along a horizontal raster line of a screen display. Each word is separately addressed.The RAM is organized into tiles, with each tile comprising an array of pixel data word rows and columns corresponding to a separate rectangular subset of horizontally and vertically contiguous display pixels. The RAM is addressed by sequentially applying row and column addresses. A first subset of the column address determines which pixel word row within each tile is addressed, while and a second subset of the column address determines which pixel word column within each tile is addressed. All other bits of the row and column addresses determine which tile is addressed.
Means are provided to selectively increment or decrement the first and second subsets of the column address without changing any other address bits, such that words within a selected tile row or column may be successively addressed allowing rapid reading and writing of sequences of pixel data corresponding to contiguous rows or columns of display pixels.
A first-in, first-out buffer, provided to store the sequences of data read from the RAM, also includes a barrel shifter to shift bit positions of the data words so stored to facilitate proper pixel alignment during a horizontal scrolling operation.
A logic circuit is provided to rapidly modify sequences of data read from the RAM and stored in the buffer prior to rewriting the data to the RAM thereby allowing rapid alteration of pixel attributes.
59 Citations
11 Claims
-
1. An apparatus, responsive to control, address and data signals from a computer, for storing pixel data representing a screen image consisting of rows and columns of pixels, each pixel having display attributes controlled according to associated stored pixel data, said apparatus comprising:
-
a random access memory comprising addressable storage locations, each storage location being fixedly associated with a separate horizontally contiguous set of said pixels, each storage location storing a pixel data word comprising pixel data controlling display attributes of said pixels associated with said storage location; an input/output controller for storing an address conveyed from said computer by said address signals, for addressing a storage location in said random access memory in accordance with said stored address, and for selectively incrementing/decrementing first and second portions of said stored address in accordance with ones of said control signals, said pixel data words being stored in said random access memory at storage locations such that when said first portion of said stored address is selectively incremented/decremented, a new storage location addressed in accordance with said stored address is associated with a first set of pixels horizontally adjacent to a second set of pixels associated with a storage location last addressed by said stored address, and such that when said second portion of said stored address is selectively incremented/decremented, said new storage location addressed in accordance with said stored address is associated with a third set of pixels vertically adjacent to said second set of pixels; and a data controller repsonsive to others of said control signals for reading pixel data words stored in said random access memory at storage locations addressed by said input/output controller, and for writing pixel data words into said ramdom access memory at storage locations addressed by said input/output controller.
-
-
2. An apparatus, responsive to control, address and data signals from a computer, for storing pixel data representing a screen image consisting of rows and columns of pixels, each pixel having display attributes controlled according to associated stored pixel data, said apparatus comprising:
-
a random access memory comprising addressable storage locations, each storage location being fixedly associated with a separate horizontally contiguous set of said pixels, each storage location storing a pixel data word comprising pixel data controlling display attributes of the set of said pixels associated with said storage location; an input/output controller for storing an address conveyed from said computer by said address signals, and for addressing a storage location in said ramdom access memory in accordance with said stored address; and a data controller responsive to said control signals from said computer, said data controller comprising means for receiving input pixel data words conveyed by said data signals from said computer, means for reading pixel data words stored in said random access memory at storage locations addressed by said input/output controller, means for modifying pixel data words read to produce modified pixel data words, and means for writing said input pixel data words and said modified pixel data words into said random access memory at storage locations addressed by said input/output controller. - View Dependent Claims (3, 4, 5)
-
-
6. An apparatus responsive to control, address and data signals from a computer for storing pixel data representing a screen image consisting of rows and columns of pixels, each pixel having display attributes controlled according to associated stored pixel data, said apparatus comprising:
-
a random access memory comprising addressable storage locations, each storage location being fixedly associated with a separate horizontally contiguous set of said pixels, each storage location storing a pixel data word comprising pixel data controlling display attributes of the set of said pixels associated with said storage location; an input/output controller for storing an address conveyed from said computer by said address signals, for addressing a storage location in said random access memory in accordance with said stored address, and for selectively incrementing or decrementing first and second portions of said stored address in accordance with ones of said control signals, said pixel data words being stored in said random access memory at storage locations such that when said first portion of said stored address is selectively incremented or decremented, a new storage location addressed in accordance with said stored address is associated with a first set of pixels horizontally adjacent to a second set pixels associated with pixel data stored in a last addressed storage location last addressed by said stored address, and such that when said second portion of said stored address is selectively incremented or decremented, said new storage location addressed by said stored address is associated with a third set of pixels vertically adjacent to said second set of pixels; and a data controller responsive to others of said control signals for reading pixel data words stored in said random access memory at storage locations addressed by said input/output controller, for receiving pixel data words transmitted from said computer via said data signals, means for transmitting pixel data words read to said computer, means for modifying pixel data words read to produce modified pixel data words, and means for writing pixel data words read, pixel data words received from said computer and said modified pixel data words into said random access memory at storage locations addressed by said input/output controller. - View Dependent Claims (7, 8, 9)
-
-
10. A method for defining a display comprising rows and columns of pixels, each such pixel having display attributes controlled accoridng to associated stored pixel data, said method comprising the steps of:
-
storing said pixel data in a random access memory comprising addressable storage locations, each storage location being fixedly associated with a separate horizontally contiguous set of said pixels, each storage location storing a pixel data word comprising pixel data controlling attributes of the set of said pixels associated with said storage location; storing an address conveyed from a computer; addressing a storage location in said random access memory in accordance with said stored address; selectively incrementing or decrementing first and second portions of said stored address in accordance with control signals from said computer, said pixel data words being stored in said random access memory at storage locations such that when said first portion of said stored address is selectively incremented or decremented, a new storage location addressed in accordance with said stored address is associated with a first set of pixels horizontally adjacent to a second set pixels associated with pixel data stored in a storage location last addressed by said stored address, and such that when said second portion of said stored address is selectively incremented or decremented, said new memory address defined by said stored address is associated with a third set of pixels vertically adjacent to said second set of pixels; reading pixel data words stored in said random access memory at storage locations addressed by said stored address; modifying pixel data words read to produce modified pixel data words; and writing said modified pixel data words into said random access memory at storage locations addressed by said stored address. - View Dependent Claims (11)
-
Specification