# US 7,746,349 B1 · Method and apparatus for display of data

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 7,746,349 B1
- Document ID: US7746349B1
- Status: Granted
- Kind: B1
- Application number: 11/083,695
- Filed: 2005-03-16
- Granted: 2010-06-29
- Earliest claimed: 2005-03-16
- Assignees: NVIDIA Corporation
- Inventors: Krishnaraj S. Rao; David G. Reed; Sean Jeffrey Treichler
- Web page: https://patentgrep.com/patent/US7746349B1

## CPC

- G09G 5/222: {Control of the character-code memory}
- G06T 1/20: Processor architectures; Processor configuration, e.g. pipelining
- G09G 2360/125: using unified memory architecture [UMA]
- G09G: ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION (arrangements for transferring data between digital computers and displays G06F3/14; static indicating arrangements comprising an association of a number of separate sources or light control cells G09F9/00; static indicating arrangements comprising integral associations of a number of light sources H01J, H01K, H10H, H05B33/12; scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission, details thereof H04N1/00)
- G06T: IMAGE DATA PROCESSING OR GENERATION, IN GENERAL

## Abstract

To display a row of characters in the VGA alphanumeric mode, the ASCII and attribute bits for all such characters are retrieved from the main memory and stored in a local cache memory. The font and unused bits that are also retrieved from the memory during the retrieval of ASCII and attribute bits are discarded. The stored ASCII and attribute bits for each such character is then used to compute the address of the associated font bits in the main memory. Next, for each character, the font bits are retrieved from the main memory using a burst read operation and using the computed address for that font. The font bits associated with all the characters in the row are stored in the local cache memory and are subsequently scanned out to be used in the display of the characters.

## Claims

### Claim 1

A method for processing characters to be displayed on a monitor in a first mode, the method comprising:
performing multiple memory accesses of a memory with a memory controller to retrieve a first set of N parameter values each associated with a different one of N characters to be displayed in a row of the monitor, wherein the multiple memory accesses cause a memory latency;
sending the retrieved values from the memory controller to a graphics processing unit using an isochronous VGA controller,
wherein the isochronous VGA controller is disposed in the graphics processing unit and the graphics processing unit is disposed in a video adapter,
wherein the memory controller and the graphics processing unit are disposed on two separate integrated circuits and the memory latency handled by the VGA controller while maintaining VGA compatibility,
wherein the memory controller is disposed as an integral part of a computer system,
wherein the video adapter is an add-in card coupled to the memory controller via a communication link;
storing the retrieved first set of N parameter values;
computing N memory addresses each computed using a different one of the retrieved first set of N parameter values;
performing burst memory operations to retrieve a second set of N parameter values, each parameter value of the second set of N parameter values associated with a different one of the N characters to be displayed in the row of the monitor;
storing the retrieved second set of N parameter values; and
scanning out the stored second set of N parameter values for use in the display of the N characters of the row.

### Claim 2 (depends on 1)

The method of claim 1 wherein each parameter value of the first set of N parameter values includes a pair of ASCII and attribute parameter values, and wherein each pair of ASCII and attribute parameter values is associated with a different one of the N characters.

### Claim 3 (depends on 2)

The method of claim 2 wherein each parameter value of the second set of N parameter values is a font parameter value associated with a different one of the N characters.

### Claim 4 (depends on 3)

The method of claim 3 further comprising:
storing a second set of N ASCII and attribute parameter values associated with N characters of a second row of the monitor while the first set of N ASCII and attribute parameter values remain stored.

### Claim 5 (depends on 4)

The method of claim 4 further comprising:
storing a second set of N font parameter values associated with the N characters of the second row while the first set of N font parameter values remain stored.

### Claim 6 (depends on 4)

The method of claim 4 further comprising:
storing a second set of N font parameter values associated with the N characters of the second row while the first set of N font parameter values are scanned out.

### Claim 7 (depends on 5)

The method of claim 5 wherein the ASCII and attribute parameter values associated with each character are stored in a same addressable location of a memory.

### Claim 8 (depends on 7)

The method of claim 7 wherein performing the burst memory operations include performing N burst memory operations.

### Claim 9 (depends on 8)

The method of claim 8 wherein said mode is a VGA alphanumeric mode and said N is either an integer varying from 1 to 80 or an integer varying from 1 to 132.

### Claim 10

A graphics processing unit coupled to a display monitor adapted to display characters, the graphics processing unit comprising:
an interface to a memory controller for accessing stored information;
at least one local memory unit, and
a graphics controller unit configured to retrieve a first set of N parameter values, each associated with a different one of N characters to be displayed in a row of the monitor, and to store the retrieved first set of N parameter values in the at least one local memory unit, said graphics controller unit further configured to compute N memory addresses each computed using a different one of the N parameter values and further configured to perform burst memory operations to retrieve a second set of N parameter values using the computed addresses, each parameter value of the second set of N parameter values being associated with a different one of the N characters to be displayed in the row of the monitor;
wherein said graphics controller unit is further configured to store the retrieved second set of N parameter values in the at least one local memory unit, and is further configured to scan out the stored second set of N parameter values for use in the display of the N characters;
wherein the graphics controller unit comprises an isochronous VGA controller used to handle memory latency caused by retrieving N parameter values or caused by having the memory controller and the graphics processing unit being disposed on two separate integrated circuits, while maintaining VGA compatibility,
wherein the memory controller is disposed as an integral part of a computer system,
wherein the isochronous VGA controller is disposed in the graphics processing unit and the graphics processing unit is disposed in a video adapter,
wherein the video adapter is an add-in card coupled to the memory controller via a communication link.

### Claim 11 (depends on 10)

The graphics processing unit of claim 10 wherein each parameter value of the first set of N parameter values includes a pair of ASCII and attribute parameter values, and wherein each pair of ASCII and attribute parameter values is associated with a different one of the N characters.

### Claim 12 (depends on 11)

The graphics processing unit of claim 11 wherein each parameter value of the second set of N parameter values is a font parameter value associated with a different one of the N characters.

### Claim 13 (depends on 12)

The graphics processing unit of claim 12 wherein said graphics controller unit is further configured to store a second set of N ASCII and attribute parameter values associated with N characters of a second row of the monitor in the at least one local memory unit while the first set of N ASCII and attribute parameter values remain stored.

### Claim 14 (depends on 13)

The graphics processing unit of claim 13 wherein said graphics controller unit is further configured to store a second set of N font parameter values associated with the N characters of the second row while the first set of N font parameter values remain stored.

### Claim 15 (depends on 13)

The graphics processing unit of claim 13 wherein said graphics controller unit is further configured to store a second set of N font parameter values associated with the N characters of the second row while the first set of N font parameters are scanned out.

### Claim 16 (depends on 10)

The graphics processing unit of claim 10 wherein said characters are displayed in a VGA alphanumeric mode and said N is either an integer varying from 1 to 80 or an integer varying from 1 to 132.

### Claim 17

A computer system comprising:
a central processing unit further comprising a memory controller;
a system memory coupled to the memory controller;
a display monitor adapted to display characters;
a media access controller unit; and
a graphics processing unit comprising:
at least one local memory unit,
a graphics controller unit configured to retrieve a first set of N parameter values, each associated with a different one of N characters to be displayed in a row of the monitor, and to store the retrieved first set of N parameter values in the at least one local memory unit, said graphics controller unit further configured to compute N addresses of the system memory each computed using a different one of the N parameter values and further configured to perform burst read operations of the system memory to retrieve a second set of N parameter values using the computed addresses, each parameter value of the second set of N parameter values being associated with a different one of the N characters to be displayed in the row of the monitor;
wherein said graphics controller unit is further configured to store the retrieved second set of N parameter values in the at least one local memory unit, and is further configured to scan out the stored second set of N parameter values for use in the display of the N characters;
wherein the graphics controller unit comprises an isochronous VGA controller used to handle memory latency caused by retrieving N parameter values or caused by having the memory controller and the graphics processing unit being disposed on two separate integrated circuits, while maintaining VGA compatibility, wherein the memory controller is disposed as an integral part of a computer system,
wherein the isochronous VGA controller is disposed in the graphics processing unit and the graphics processing unit is disposed in a video adapter,
wherein the video adapter is an add-in card coupled to the memory controller via a communication link.

### Claim 18

A computer system comprising:
a central processing unit;
a system memory;
a control unit coupled to the central processing unit and comprising a memory controller configured to access the system memory;
a display monitor adapted to display characters;
a media access controller unit; and
a graphics processing unit comprising:
at least one local memory unit,
a graphics controller unit configured to retrieve a first set of N parameter values, each associated with a different one of N characters to be displayed in a row of the monitor, and to store the retrieved first set of N parameter values in the at least one local memory unit, said graphics controller unit further configured to compute N addresses of the system memory each computed using a different one of the N parameter values and further configured to perform burst read operations of the system memory to retrieve a second set of N parameter values using the computed addresses, each parameter value of the second set of N parameter values being associated with a different one of the N characters to be displayed in the row of the monitor;
wherein said graphics controller unit is further configured to store the retrieved second set of N parameter values in the at least one local memory unit, and is further configured to scan out the stored second set of N parameter values for use in the display of the N characters;
wherein the graphics controller unit comprises an isochronous VGA controller used to handle memory latency caused by retrieving N parameter values or caused by having the memory controller and the graphics processing unit being disposed on two separate integrated circuits, while maintaining VGA compatibility,
wherein the memory controller is disposed as an integral part of a computer system,
wherein the isochronous VGA controller is disposed in the graphics processing unit and the graphics processing unit is disposed in a video adapter,
wherein the video adapter is an add-in card coupled to the memory controller via a communication link.
