US20060208764A1 - Graphics Controller Integrated Circuit without Memory Interface - Google Patents

Graphics Controller Integrated Circuit without Memory Interface Download PDF

Info

Publication number
US20060208764A1
US20060208764A1 US11/382,433 US38243306A US2006208764A1 US 20060208764 A1 US20060208764 A1 US 20060208764A1 US 38243306 A US38243306 A US 38243306A US 2006208764 A1 US2006208764 A1 US 2006208764A1
Authority
US
United States
Prior art keywords
integrated circuit
memory
data
circuitry
complementary mos
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Abandoned
Application number
US11/382,433
Inventor
Deepraj Puar
Ravi Ranganathan
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Intellectual Ventures I LLC
Original Assignee
Individual
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=22997392&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=US20060208764(A1) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by Individual filed Critical Individual
Priority to US11/382,433 priority Critical patent/US20060208764A1/en
Publication of US20060208764A1 publication Critical patent/US20060208764A1/en
Assigned to FAUST COMMUNICATIONS HOLDINGS, LLC reassignment FAUST COMMUNICATIONS HOLDINGS, LLC ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: NEOMAGIC CORPORATION
Assigned to INTELLECTUAL VENTURES I LLC reassignment INTELLECTUAL VENTURES I LLC MERGER (SEE DOCUMENT FOR DETAILS). Assignors: FAUST COMMUNICATIONS HOLDINGS, LLC
Priority to US13/439,585 priority patent/US20120188260A1/en
Abandoned legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • G06F3/153Digital output to display device ; Cooperation and interconnection of the display device with other functional units using cathode-ray tubes
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G1/00Control arrangements or circuits, of interest only in connection with cathode-ray tube indicators; General aspects or details, e.g. selection emphasis on particular characters, dashed line or dotted line generation; Preprocessing of data
    • G09G1/06Control arrangements or circuits, of interest only in connection with cathode-ray tube indicators; General aspects or details, e.g. selection emphasis on particular characters, dashed line or dotted line generation; Preprocessing of data using single beam tubes, e.g. three-dimensional or perspective representation, rotation or translation of display pattern, hidden lines, shadows
    • G09G1/14Control arrangements or circuits, of interest only in connection with cathode-ray tube indicators; General aspects or details, e.g. selection emphasis on particular characters, dashed line or dotted line generation; Preprocessing of data using single beam tubes, e.g. three-dimensional or perspective representation, rotation or translation of display pattern, hidden lines, shadows the beam tracing a pattern independent of the information to be displayed, this latter determining the parts of the pattern rendered respectively visible and invisible
    • G09G1/16Control arrangements or circuits, of interest only in connection with cathode-ray tube indicators; General aspects or details, e.g. selection emphasis on particular characters, dashed line or dotted line generation; Preprocessing of data using single beam tubes, e.g. three-dimensional or perspective representation, rotation or translation of display pattern, hidden lines, shadows the beam tracing a pattern independent of the information to be displayed, this latter determining the parts of the pattern rendered respectively visible and invisible the pattern of rectangular co-ordinates extending over the whole area of the screen, i.e. television type raster
    • G09G1/165Details of a display terminal using a CRT, the details relating to the control arrangement of the display terminal and to the interfaces thereto
    • G09G1/167Details of the interface to the display terminal specific for a CRT
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/003Details of a display terminal, the details relating to the control arrangement of the display terminal and to the interfaces thereto
    • G09G5/006Details of the interface to the display terminal
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/36Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
    • G09G5/363Graphics controllers
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/36Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
    • G09G5/39Control of the bit-mapped memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units

Definitions

  • This invention is related to graphics controller systems and, more particularly, to graphics controller systems with low power dissipation.
  • a typical graphics controller system has a graphics controller integrated circuit 10 , which has a graphics engine 12 for manipulating video data, and a CPU interface 13 , display interface 14 and video memory interface 15 .
  • the graphics controller integrated circuit 10 receives video image data from a CPU (central processing unit) through the CPU interface 13 , and after processing the data, stores that information through the video memory interface 15 in a separate video memory 11 , also called the video frame buffer.
  • the graphics controller 10 also makes sure that the image data is regularly retrieved from the video memory (through the interface 15 ) and fed to a display unit through the display interface 14 with a frequency which satisfies the refresh requirements of the display.
  • video image data may also be received from other sources, such as a device with a PCMCIA (Personal Computer Memory Card International Association) connector.
  • PCMCIA Personal Computer Memory Card International Association
  • the video memory interface 15 of the graphics controller integrated circuit 10 has ports dedicated to interface with the video memory 11 .
  • the number of ports required for this interface 15 is the sum of the address, data and control signals required to access the video memory 11 .
  • the memory 11 has a size which is a function of the video frame buffer required to support the display resolution. While dynamic random access memory (DRAM) is most commonly used for the video frame buffer, some high performance systems use VRAMs (DRAMs with serial data ports added).
  • a typical VGA (Video Graphics Adapter standard) display in an IBM-compatible mobile computer, often called a notebook computer, with an LCD (liquid crystal display) panel uses a single 256K ⁇ 16 DRAM integrated circuit as a video frame buffer.
  • a typical SVGA (Super VGA standard) system uses two such DRAMs organized as 256K ⁇ 32.
  • a 16-bit data path requires one DRAM package and approximately 30 signal lines to handle the memory address, data, and control signals, while a 32-bit data path requires two DRAM packages and 50 signal lines. Power dissipation is increased as more signal lines are added since each signal line has a parasitic capacitance associated with the package I/O pin, as well as with the conducting trace on the motherboard of the mobile computer system. Therefore, an increase in graphics performance is accompanied by an increase in power dissipation, pin count and package count.
  • the present invention solves or substantially mitigates these problems with a high performance graphics controller system having low power dissipation, and low pin and package counts.
  • a graphics controller system with increased performance simultaneously with a reduction in power dissipation, point count and package count.
  • Previously external video memory is integrated with the graphics controller system to eliminate the memory interface.
  • the reduction in pin count is used to add the pins associated with a PCMCIA host adapter and thus allow the integration of that function on the same chip, so as to further reduce the package count on the mother board.
  • the present invention also provides for particular arrangements for logic circuits and output buffer circuits so that large amounts of logic circuitry sufficient to perform graphics controller system functions may be integrated with the large amounts of memory sufficient to act as a high performance video memory. Furthermore, the present invention provides for a wide bus between the integrated video memory and the functional blocks of the graphics controller system. The present invention has circuits in these blocks for manipulating the video data from the wide bus so that data transfer remains compatible to the various operational VGA modes.
  • FIG. 1 illustrates the general organization of a graphics controller system in the prior art
  • FIG. 2 illustrates the general organization of a graphics controller integrated circuit according to the present invention
  • FIG. 3A is a circuit diagram of a CMOS logic inverter as connected in a prior art integrated circuit manufactured according to a logic process
  • FIG. 3B is a circuit diagram of a CMOS logic inverter as connected in a prior art integrated circuit manufactured according to a DRAM process
  • FIG. 4 is a circuit diagram of a CMOS logic inverter as connected according to the present invention in an integrated circuit manufactured according to a DRAM process;
  • FIG. 5 is a cross-sectional diagram of a P-channel transistor in an N-type well, which form most of the analog circuits in the graphics controller portion of the integrated circuit shown in FIG. 2 ;
  • FIG. 6A is a circuit diagram of a CMOS driver stage of an output buffer found in the prior art
  • FIG. 6B is a circuit diagram of a CMOS driver stage of an output buffer according to the present invention
  • FIG. 7 is a block diagram detailing the organization of a graphics controller system according to the present invention.
  • FIG. 8 illustrates the organization of the output signals of the Bus Read Latch of the graphics controller system of FIG. 7 ;
  • FIGS. 9A-9D illustrate the organization of the multiplexer at the output of the Bus Read Latch of the graphics controller system of FIG. 7 .
  • the graphics controller functions are integrated on the same integrated circuit substrate as the video memory, as shown in FIG. 2 .
  • a single integrated circuit 20 has a portion of its substrate for an advanced graphics engine 22 , the circuitry which handles the graphics controller functions and manipulates the video data.
  • the integrated circuit 20 also has another portion of the substrate for a video memory 21 , in the form of a DRAM.
  • a 128-bit wide data interface 25 connects the graphics engine 22 and the DRAM 21 .
  • the DRAM has 7.3 megabits, organized as 56K ⁇ 128 bits. In every memory cycle, 128 bits are accessed which can then be multiplexed down to the required number of bits for communication to the CPU through a CPU interface 23 or to the display through a display interface 24 .
  • the integrated circuit 20 also has other interfaces, such as an infrared interface 26 for wireless transmission of data between the mobile computer and another device, a PCMCIA host adaptor interface 27 for connections to devices, such as modems, hard disks, etc., which are designed to meet the PCMCIA specification, and a video stream interface 28 for receiving video signals from a variety of sources, such as television or VCR signals.
  • the video stream interface 28 is adapted to the VAFC (VESA Advanced Feature Connector) standards being promulgated by the Video Electronics Standards Association (VESA).
  • VAFC VESA Advanced Feature Connector
  • Integrating a large block of DRAM (approximately 7 megabits) on the same substrate with a large block of logic (approximately 40K to 50K of logic gates) required for the graphics engine 22 and various interfaces is not simply a matter of placing DRAM and logic circuits on the same integrated circuit substrate.
  • the optimum technologies for a DRAM and for a logic circuit are electrically incompatible. Hence various steps, described below, must be taken to ensure that the performance of the DRAM circuits and the logic circuits are fully maintained and not compromised.
  • An integrated circuit process used for building logic gates uses one of the external supply voltages (V DD or V SS depending upon the substrate type) as the voltage to bias the substrate.
  • an integrated circuit process used for building a DRAM uses an internally generated substrate bias voltage which is different from the external supply voltages. This is done primarily to lower the junction capacitance of the memory cell bit lines of the DRAM, as well as to improve the memory cell refresh time.
  • the substrate material is P-type silicon.
  • a logic process uses the externally supplied V SS , or ground, voltage to connect to the substrate.
  • the V SS line is also used in the circuit areas to provide the ground path for current flow in the pulldown, N-channel transistors in the logic circuits.
  • FIG. 3A illustrates this point with a representative logic gate, an inverter having a pull-down, N-channel transistor 31 and a pull-up, P-channel transistor 32 .
  • the PMOS transistor 32 has its source connected to a metal line 42 at the positive supply voltage, V DD
  • the NMOS transistor 31 has its source connected to a metal line 41 at V SS .
  • node 30 represents a metal-to-N+ source contact and node 40 represents a metal-to-P+ substrate contact.
  • V SS metal tracks in the logic integrated circuit serves two functions: 1) as a substrate tap every 25-50 microns across the substrate surface, and 2) as a source terminal of the N-channel transistors of the logic circuits.
  • the substrate taps are necessary to protect the circuits from going into a latch-up condition during operation, since each logic gate has both N-type and P-type transistors.
  • the typical DRAM array is built with only N-type transistors and capacitors, and a major goal is to minimize the parasitic capacitance of the memory bit line.
  • the N-type bit line junction areas contribute to a majority of the bit line capacitance and since the junction capacitance is greatly reduced by a reverse junction bias voltage, the P-type substrate is typically biased at ⁇ 1.5 volts, termed V BB .
  • V BB This voltage is generated from an on-chip charge pump and thus has a limited capacity and a high output impedance. This results in the substrate voltage being relatively “noisy” due to the precharging and discharging of the large junction areas associated with the memory array, that are capacitively coupled to the substrate.
  • the small amount of on-chip logic which handles the memory address decoding and the data read and write functions typically uses the V SS metal tracks only to connect to the source terminal of the N-channel, pulldown transistors and not as a substrate tap.
  • an inverter in FIG. 3B , a pull-down, N-channel transistor 33 has its source connected to a V SS metal line 43 .
  • the P-type substrate of the NMOS transistor 33 is at V BB .
  • DRAMs typically do not have any substrate taps in the middle of the circuitry.
  • the substrate taps are only made at the edges of the die. Since most of the logic blocks in a DRAM consist of a few cells, repeated many times, which together form a small portion of the total chip area, large P-to-N diffusion spacings, typically 25 microns, can be maintained in the logic cells to avoid latch-up. In contrast, in a logic circuit, which has many different cell types connected in a relatively random manner, the cell size is very important as it determines the total chip area. The P-to-N diffusion spacings are minimized, typically 5 microns, which requires the use of substrate taps in every cell to avoid latch-up.
  • the present invention combines the random logic, the graphics engine 12 and interfaces, with the DRAM 11 , in an integrated circuit 20 manufactured in accordance with a DRAM process.
  • the logic circuits of the integrated circuit are redesigned to decouple the V SS line connected to the source terminals of the N-channel, pulldown transistors from the P-substrate tap.
  • the source of the N-channel, pulldown transistor 35 of a representational logic circuit is connected to a V SS line 45 (at 0 volts), while the substrate is tapped by a V BB line 47 (at ⁇ 1.5 volts).
  • V BB line 47 at ⁇ 1.5 volts
  • the graphics engine 22 of the integrated circuit 20 has analog circuits.
  • a low-pass filter is often used and an RC circuit is required.
  • the capacitor of the RC circuit has been typically formed by an NMOS transistor with its gate forming one terminal and the shorted source/drains forming the other terminal of the capacitor. Since the body bias of this transistor is the noisy substrate voltage generated from the on-chip charge pump required for the DRAM 21 , some of the noise couples inevitably into the low-pass filter circuit.
  • the analog circuits according to the present invention are designed with mostly P-channel transistors within independent N-wells which are connected to the positive and relatively quiet reference voltage, V DD , as shown in FIG. 5 .
  • the N-wells isolate the terminals 37 and 38 of the capacitors and the rest of the analog circuits from the “noisy” substrate voltage.
  • FIG. 6A Shown in FIG. 6A is a representative output driver stage found in the prior art. Basically an inverter, the driver stage has two transistors, an N-channel, pulldown, driver transistor 50 having its source connected to a voltage supply bus 52 at an external negative supply voltage, V SSQ , and a P-channel, pullup, driver transistor 51 having its source connected to a voltage supply bus 53 at an external positive supply voltage, V DDQ .
  • the output signal voltages invariably tend to overshoot the V DDQ and V SSQ supply voltages due to an impedance mismatch between the driver transistors and the external load.
  • the output signal voltage, DATA OUT is being driven high in response to an internal signal, dataout*, going low at the input terminal 57 , for instance, the prior art design results in a parasitic diode 55 , marked by dotted lines, becoming forward-biased when the overshoot exceeds 0.6 volts.
  • the diode 55 is formed by the junction of the drain of the P-channel, pullup transistor 50 and the N-well holding the transistor, which is also connected to V DDQ .
  • This forward-biasing action results in the injection of positive charges, or holes, into the substrate which works against the on-chip substrate bias voltage generator.
  • the amount of hole injection is a function of the severity of the overshoot, the number of output buffers, and the frequency of switching. If the substrate bias voltage generator is overwhelmed by excessive hole injection, functional failures or soft errors occur in the on-chip DRAM.
  • a new output driver circuit shown in FIG. 6B .
  • the same reference numerals are used where the operation or connection of the referenced element remains unchanged from FIG. 6A . Different reference numerals are used if the operation or connection of the element is different.
  • the new, representative driver circuit for each bank of buffer circuits at particular V DDQ and V SSQ voltages, the N-wells in which the P-channel driver transistors 51 of the bank are located are raised to a voltage higher than the V DDQ voltage for the bank.
  • An on-chip bias generator is connected to the V DDQ bus 53 for a reference to generate a voltage at NV DD , 1 volt higher than V DDQ .
  • the bias generator (not shown) is connected to a bus 59 at NV DD , which is connected to the N-wells of each of the P-channel transistors 51 . If several P-channel transistors 51 are in a single N-well, the bus 59 is connected to the N-well in a series of taps, one located near each transistor 51 . This arrangement lowers the possibility of latch-up.
  • a different NV DD bias generator referencing the V DDQ supply for that bank, is used to generate the higher voltage. This allows the N-well(s) of an output buffer bank which is driven from a +3.3V supply to be biased at +4.3V, while an output buffer bank driven by a +5.0V supply, has its N-well(s) biased at +6.0V.
  • the parasitic diode 58 formed by the drain of the transistor 51 and the N-well holding the transistor 51 now has an extra 1 volt of N-well bias.
  • the diode 58 does not become forward-biased unless the overshoot exceeds 1.6V. This extra margin of safety results in a greatly diminished level of hole injection into the substrate and thus prevents the occurrence of soft errors or functional failures in the on-chip DRAM.
  • Integrating the video memory, the DRAM 21 , with a graphics controller results in significant power savings compared to present graphics controller systems with external DRAM.
  • Capacitance in present graphics controller systems is comprised of the capacitance of the I/O pins of the DRAM packages and the controller package plus capacitance of the traces on the motherboard which carries and connects the DRAM and controller packages.
  • the present invention has a roughly twenty-fold reduction of the video memory address, data and control bus capacitance. This results in an equivalent power savings since most of these lines are continuously switching at high frequencies.
  • the controller i.e., the graphics engine 22
  • the controller has 128 bits of data available after one DRAM read cycle.
  • the graphics controller system in the prior art requires four or eight read cycles, depending upon a 32-bit or 16-bit wide DRAM organization, respectively. Since a fixed amount of power is consumed every DRAM cycle, the present invention has a savings of three-fourths to seven-eighths of the prior art power dissipation.
  • the present invention uses memory very efficiently.
  • the capacity of the video memory 21 is not required to fall on high order binary boundaries, such as combinations of DRAM integrated circuits forming a memory of 32K ⁇ 128 bits, or 64K ⁇ 128 bits, the next larger size.
  • the addition of memory blocks, with a typical size of 256K(2 18 ) bits each achieves the required capacity for the video memory 11 .
  • Memory capacity can be customized for a particular application. For example, a 1024 ⁇ 768 ⁇ 8 display requirement requires a video memory of 6.4 megabits, which can be built with 24 memory blocks. With external DRAMs, a video memory of 8 megabits is required since the standard DRAM package has 4 megabits.
  • the video memory 21 of the integrated circuit 20 can be organized to be of any width, depth or capacity and need not follow the multiplexed addressing architecture associated with standard DRAMs.
  • FIG. 7 illustrates the organization of the advanced graphics controller system of FIG. 2 in greater detail.
  • the memory 21 is organized from dynamic RAM memory cells arranged 56K ⁇ 128 bits wide. Stated differently in terms of memory blocks, the memory 21 has the storage capacity of 218 ⁇ 28 bits.
  • the 128-bit interface 25 in FIG. 2 is realized by a 128-bit wide bus 61 , organized as sixteen 8-bit bytes, so that a Write operation can be performed at the byte level into the memory 21 .
  • GUI Graphics User Interface
  • the CPU Interface 23 of FIG. 2 is realized by a Host Bus Interface block 63 in FIG. 7
  • the Display Interface 24 is by a CRT Display block 64 and an LCD Display Interface block 65 . All the blocks 62 - 65 are indicated by dotted lines in FIG. 7 .
  • Not shown in FIG. 7 are the Infrared Interface 26 , PCMCIA Host Adaptor 27 and the Video Source Interface 28 .
  • the circuits for the Interfaces 26 and 28 , and Adaptor 27 are presently found in separate printed circuit boards in personal computer systems and may be integrated onto the single integrated circuit with the techniques described previously.
  • the GUI acceleration block 62 has a 128-bit wide register 70 , which receives data from the bus 61 .
  • the register 70 splits its contents into two parts, 64-bits apiece, to a 64-bit BIT BLock Transfer (BITBLT) operation unit 71 for performing the operations.
  • the output of the unit 71 is fed into an assemble register 72 on a 64-bit wide path. After a BITBLT operation, the register 72 builds up a 128-bit word for transfer back to the bus 61 .
  • This organization represents the best compromise between performance and space on the integrated circuit; the transfer rate is maximized between the memory 21 and the operation unit 71 , yet an optimum size of 64 bits for the unit 71 is maintained.
  • a 128-bit BITBLT operation unit occupies a very large amount of integrated circuit space, while a unit for 32 bits slows BITBLT operations too much.
  • the host bus interface block 63 lies between the bus of the host, i.e., the CPU of the computer system, and the bus 61 .
  • the interface block 63 provides a bidirectional data path between the 128-bit bus 61 and a 32-bit bus of the host.
  • the block 63 has a Bus Read Latch 73 which holds a 128-bit wide word from the bus 61 .
  • the output of the latch 73 is connected to the input of a multiplexer 74 , which selects 32 bits from the 128-bit latch 73 for the host bus.
  • the selected 32 bits should contain four consecutive bytes in the host bus address space. Depending upon the VGA-compatible format and other extended storage formats in use, these four bytes may be scattered among the 16 bytes, 16 ⁇ 8 bits equals 128 bits, of data stored in the latch 73 .
  • the output of the latch 73 is illustrated in FIG. 8 with each of the bytes labeled 0 -F.
  • the multiplexer 74 is implemented as four separate single byte multiplexers 74 A- 74 D, one for each byte read back upon the host bus.
  • Each of the 8-to-1 multiplexers 74 A- 74 D are illustrated in FIGS. 9A-9D respectively together with the particular input bytes from the latch 73 .
  • Each of the multiplexers 74 A- 74 D respectively generates bytes 0 - 3 for the host bus.
  • control signals selda(2:0), seldb(2:0), seldc(2:0), and seldc(2:0), for the multiplexers 74 A- 74 D is listed in VHDL code in TABLES 1 and 2.
  • These control signals are derived from VGA standard control bits in programmable control registers which determine the storage format in use, and additional internal state information in the memory controller state machine.
  • the present invention uses the following standard control bits:
  • control bits are used to generate control signals, tmp_pack, pack, rdplanar and wrplanar, which are used ultimately in generating the selda(2:0), seldb(2:0), seldc(2:0), and seldc(2:0) control signals. From these control signals, other control signals are generated for each of the multiplexers 74 A- 74 D. For example, the control logic and signals for the first multiplexer 74 A are illustrated in FIG. 2A . The control signals in TABLE 1 generate control signals sela(0)-sela(7). These eight control signals then generate the three selda control signals.
  • the block 63 also has a FIFO (First-In, First Out) register 77 which has its input terminals connected to the 32-bit host bus for transfer of data from the host bus.
  • the output terminals of the FIFO 77 also 32 bits wide, are connected to a graphics controller unit 76 , which also has its input terminals connected to the output terminals of the multiplexer 74 .
  • the graphics controller unit 76 manipulates data bits and can selectively load a single, or multiple, byte to the bus 61 through four drivers 75 in response to commands from the CPU (not shown).
  • the 32 bits sent from the Bus Read Latch 73 to the graphics controller unit 76 during a memory write operation are always the four bytes from the four VGA planes containing the last byte read from the memory module 60 on the host bus.
  • the multiplexer 74 is set properly in a VGA compatible mode upon completion of each Read operation. This setting for the multiplexer 74 is again dependent upon VGA or extended mode and is derived from logic equations similar to those shown in TABLES 1 and 2.
  • the four drivers 75 reverse the data selection operation performed by the multiplexer 74 .
  • the multiplexer 74 selects four bytes out of the 16 bytes read from the memory 60 to forward to the host bus.
  • the drivers 75 position the four bytes from the host bus in a write operation properly in the 16 byte slots on the memory bus 61 so that the data is stored properly for subsequent retrieval. Control of these drivers 75 is derived from the memory controller control states and control register bits that define the VGA-compatible storage format, or other additional extended storage format, in use.
  • the CRT display block 64 provides a data path between the memory 21 and the CRT display which is compatible with the VGA standard.
  • the block 64 has a Data Rotate unit 80 , which receives 128 bits from the bus 61 .
  • the unit 80 is connected over four 32-bit paths to the input terminals of a CRT FIFO register 81 which has a capacity of 4 words, each word 128 bits wide. Stated differently, the FIFO register 81 is 128 bits wide and four stages deep, and can be filled in four memory fetches.
  • the output terminals of the FIFO register 81 are connected to a VGA Display Path unit 82 over a 32-bit wide path.
  • All VGA compatible graphics controllers for notebook computers today are based on a 16-bit or 32-bit memory bus to an external video memory buffer.
  • the present 128-bit bus architecture allows improved performance while reducing power consumption.
  • byte swapping is required in transferring data from the memory bus 61 to the FIFO register 81 . This swapping is implemented in the Data Rotate unit 80 . From the 128 bits of the FIFO register 81 , 32 bits are selected and sent to the VGA Display Path unit 82 .
  • the code in TABLE 3 specifies the control signals and implementation in terms of the control register bits which define the VGA storage format or extended mode storage format in use, as well as the memory controller control states.
  • the control signals are:
  • fontcy is a signal derived from the internal state machine and indirectly from the previously identified control signal, GR6[0]; a control signal, such as fontcy, is found in present VGA compatible controllers to determine a font or ASCII fetch operation in text mode.
  • swap 0, swap 1 are the 0 and 1-order bits of the CRT address counters found in VGA compatible controllers; these signals are derived from the Chain-4 and Odd/Even control signals mentioned previously.
  • rscntb0, rscntb 1 are the 0 and 1-order bits of the 5-bit row scan counter found in VGA compatible controllers; the row scan counter is used for tracking the rows of a character in text mode.
  • lword is the Chain-4, or SR4[3], control signal identified previously.
  • crsr_dtct is the cursor detect signal in VGA-compatible controllers.
  • TEXT, apa are the true and inverted of the GR6[0] control signal previously identified.
  • control signals are used to generate further signals, memc1_dta and memc2_dta. Stated generally, these two signals are either the crsr_dtct signal in text mode, or bit 96 (or bit 36 respectively) of the data bits from the 128-bit word on the bus 61 in graphics mode.
  • the signals, mema_dta are basically the four 32-bit words of data formed from the 128-bit word on the bus 61 .
  • the words for the bit locations, 127 - 96 and 63 - 32 are modified so that the bits 96 and 32 are either crsr_dtct in text mode or respectively data bits 96 and 32 from the bus 61 .
  • swapa and swapb are the control signals to the multiplexers in the Data Rotate unit 80 . It should be noted that the symbol, “&”, represents a concatenation of signals.
  • the code listed in TABLE 4 illustrates the operation of the Data Rotate unit 80 , which receives the mema_dta signals as input and transmits crt_fin signals as output to the FIFO register 81 .
  • the first VGA (32-bit) word, crt_fin(31 DOWNTO 0) may be filled by any one of the four incoming 32-bit words from the bus 61 , depending upon the state of control signals swapa.
  • the third VGA (32-bit) word, crt_fin(95 DOWNTO 64) may be filled by any one of the four incoming 32-bit words from the bus 61 , depending upon the state of control signals swapb.
  • the second and fourth VGA words, crt_fin(63 DOWNTO 32) and crt_fin(127 DOWNTO 96), are respectively filled by the third and first incoming 32-bit words from the bus 61 .
  • TABLE 4 The firs set of mux corresponding to first VGA word in fifo.
  • the CRT FIFO 81 then selectively feeds 32-bit words into a VGA Display Path unit 82 and a Color Palette RAM 83 .
  • the RAM 83 is, in turn, connected to a digital-to-analog converter (DAC) 84 .
  • DAC digital-to-analog converter
  • the RAM 83 feeds 18 bits of data, 6 bits for each component color, to the DAC 84 .
  • the DAC 84 generates the analog signals for a CRT color display.
  • the RAM 83 also feeds data into the LCD Display Interface block 65 which is organized for dual scan LCD panel displays.
  • the general operation of the block 65 is that a Shader unit 96 receives the data from the RAM 83 .
  • the unit 96 generates the grayscale values for the LCD pixels.
  • the word, grayscale implies intensity for a color LCD display.
  • These values are sent to a Formatter unit 92 which, as the name implies, formats the grayscale values for the integrated circuit(s) which drive the electrodes of the LCD display.
  • the Shader unit 96 also sends its grayscale values through several buffer units 95 , 94 , 93 , 90 and 91 (and along the bus 61 ) before being formatted and transmitted by the Formatter unit 92 for a dual scan operation.
  • Dual scan LCD panels are commonly used today in notebook computers and the buffer units of the block 65 provide for the memory by which, in alternating operation, the display in one LCD panel is updated by the Shader unit 96 while the display in the second panel is maintained from memory.

Abstract

A CMOS integrated circuit that comprises a graphics controller system that consists of a graphics engine and video memory together with some interface blocks, a PCMCIA host adapter, an infrared interface for generating video images on a LCD or CRT display unit, and a video stream interface for receiving video signals. Since the video memory is integrated on the same integrated circuit as the graphics controller, no package pins are required for the memory interface. The pins thus saved are used to provide access to an on-chip PCMCIA host adapter. The internal memory interface is 128 bits wide. Simultaneous performance improvement and power dissipation reduction is achieved because of the wide memory interface and the elimination of the large parasitic capacitances associated with a package pin connection.

Description

    CROSS-REFERENCE TO RELATED APPLICATIONS
  • This is a divisional application of U.S. patent application Ser. No. 10/908,259, filed May 4, 2005, which is a divisional application of U.S. patent application Ser. No. 10/803,783, filed Mar. 18, 2004, which is a divisional patent application of U.S. patent application Ser. No. 10/042,952, filed Jan. 7, 2002, which is a continuation of U.S. patent application Ser. No. 09/467,942, filed Dec. 21, 1999 (now U.S. Pat. No. 6,356,497), which is a continuation of U.S. patent application Ser. No. 08/883,538, filed Jun. 26, 1997 (now U.S. Pat. No. 6,041,010), which is a continuation of U.S. patent application Ser. No. 08/581,086, filed Dec. 29, 1995 (abandoned) which is a divisional application of U.S. patent application Ser. No. 08/262,412, filed Jun. 20, 1994 (abandoned), all of which are incorporated herein by reference in their entirety.
  • BACKGROUND OF THE INVENTION
  • This invention is related to graphics controller systems and, more particularly, to graphics controller systems with low power dissipation.
  • As shown in FIG. 1, a typical graphics controller system has a graphics controller integrated circuit 10, which has a graphics engine 12 for manipulating video data, and a CPU interface 13, display interface 14 and video memory interface 15. The graphics controller integrated circuit 10 receives video image data from a CPU (central processing unit) through the CPU interface 13, and after processing the data, stores that information through the video memory interface 15 in a separate video memory 11, also called the video frame buffer. The graphics controller 10 also makes sure that the image data is regularly retrieved from the video memory (through the interface 15) and fed to a display unit through the display interface 14 with a frequency which satisfies the refresh requirements of the display. In some more advanced graphics controller systems, video image data may also be received from other sources, such as a device with a PCMCIA (Personal Computer Memory Card International Association) connector.
  • The video memory interface 15 of the graphics controller integrated circuit 10 has ports dedicated to interface with the video memory 11. The number of ports required for this interface 15 is the sum of the address, data and control signals required to access the video memory 11. The memory 11 has a size which is a function of the video frame buffer required to support the display resolution. While dynamic random access memory (DRAM) is most commonly used for the video frame buffer, some high performance systems use VRAMs (DRAMs with serial data ports added). A typical VGA (Video Graphics Adapter standard) display in an IBM-compatible mobile computer, often called a notebook computer, with an LCD (liquid crystal display) panel uses a single 256K×16 DRAM integrated circuit as a video frame buffer. A typical SVGA (Super VGA standard) system uses two such DRAMs organized as 256K×32.
  • Wider data paths between the video memory and the graphics controller allow greater bandwidth for data transfer. However, the wider data paths also increase the pin count of the graphics controller package and the package count of the DRAMs with the accompanying increased manufacturing complexity and costs. A 16-bit data path requires one DRAM package and approximately 30 signal lines to handle the memory address, data, and control signals, while a 32-bit data path requires two DRAM packages and 50 signal lines. Power dissipation is increased as more signal lines are added since each signal line has a parasitic capacitance associated with the package I/O pin, as well as with the conducting trace on the motherboard of the mobile computer system. Therefore, an increase in graphics performance is accompanied by an increase in power dissipation, pin count and package count.
  • The present invention solves or substantially mitigates these problems with a high performance graphics controller system having low power dissipation, and low pin and package counts.
  • SUMMARY OF THE INVENTION
  • According to the invention, there is provided a graphics controller system with increased performance simultaneously with a reduction in power dissipation, point count and package count. Previously external video memory is integrated with the graphics controller system to eliminate the memory interface. The reduction in pin count is used to add the pins associated with a PCMCIA host adapter and thus allow the integration of that function on the same chip, so as to further reduce the package count on the mother board.
  • The present invention also provides for particular arrangements for logic circuits and output buffer circuits so that large amounts of logic circuitry sufficient to perform graphics controller system functions may be integrated with the large amounts of memory sufficient to act as a high performance video memory. Furthermore, the present invention provides for a wide bus between the integrated video memory and the functional blocks of the graphics controller system. The present invention has circuits in these blocks for manipulating the video data from the wide bus so that data transfer remains compatible to the various operational VGA modes.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • FIG. 1 illustrates the general organization of a graphics controller system in the prior art;
  • FIG. 2 illustrates the general organization of a graphics controller integrated circuit according to the present invention;
  • FIG. 3A is a circuit diagram of a CMOS logic inverter as connected in a prior art integrated circuit manufactured according to a logic process; FIG. 3B is a circuit diagram of a CMOS logic inverter as connected in a prior art integrated circuit manufactured according to a DRAM process;
  • FIG. 4 is a circuit diagram of a CMOS logic inverter as connected according to the present invention in an integrated circuit manufactured according to a DRAM process;
  • FIG. 5 is a cross-sectional diagram of a P-channel transistor in an N-type well, which form most of the analog circuits in the graphics controller portion of the integrated circuit shown in FIG. 2;
  • FIG. 6A is a circuit diagram of a CMOS driver stage of an output buffer found in the prior art; FIG. 6B is a circuit diagram of a CMOS driver stage of an output buffer according to the present invention;
  • FIG. 7 is a block diagram detailing the organization of a graphics controller system according to the present invention;
  • FIG. 8 illustrates the organization of the output signals of the Bus Read Latch of the graphics controller system of FIG. 7; and
  • FIGS. 9A-9D illustrate the organization of the multiplexer at the output of the Bus Read Latch of the graphics controller system of FIG. 7.
  • DETAILED DESCRIPTION
  • In accordance with the present invention, the graphics controller functions are integrated on the same integrated circuit substrate as the video memory, as shown in FIG. 2. A single integrated circuit 20 has a portion of its substrate for an advanced graphics engine 22, the circuitry which handles the graphics controller functions and manipulates the video data. The integrated circuit 20 also has another portion of the substrate for a video memory 21, in the form of a DRAM. A 128-bit wide data interface 25 connects the graphics engine 22 and the DRAM 21. The DRAM has 7.3 megabits, organized as 56K×128 bits. In every memory cycle, 128 bits are accessed which can then be multiplexed down to the required number of bits for communication to the CPU through a CPU interface 23 or to the display through a display interface 24.
  • The integrated circuit 20 also has other interfaces, such as an infrared interface 26 for wireless transmission of data between the mobile computer and another device, a PCMCIA host adaptor interface 27 for connections to devices, such as modems, hard disks, etc., which are designed to meet the PCMCIA specification, and a video stream interface 28 for receiving video signals from a variety of sources, such as television or VCR signals. The video stream interface 28 is adapted to the VAFC (VESA Advanced Feature Connector) standards being promulgated by the Video Electronics Standards Association (VESA).
  • Integrating a large block of DRAM (approximately 7 megabits) on the same substrate with a large block of logic (approximately 40K to 50K of logic gates) required for the graphics engine 22 and various interfaces is not simply a matter of placing DRAM and logic circuits on the same integrated circuit substrate. The optimum technologies for a DRAM and for a logic circuit are electrically incompatible. Hence various steps, described below, must be taken to ensure that the performance of the DRAM circuits and the logic circuits are fully maintained and not compromised.
  • An integrated circuit process used for building logic gates uses one of the external supply voltages (VDD or VSS depending upon the substrate type) as the voltage to bias the substrate. On the other hand, an integrated circuit process used for building a DRAM uses an internally generated substrate bias voltage which is different from the external supply voltages. This is done primarily to lower the junction capacitance of the memory cell bit lines of the DRAM, as well as to improve the memory cell refresh time.
  • For example, in commonly used CMOS technology today, the substrate material is P-type silicon. A logic process uses the externally supplied VSS, or ground, voltage to connect to the substrate. The VSS line is also used in the circuit areas to provide the ground path for current flow in the pulldown, N-channel transistors in the logic circuits. FIG. 3A illustrates this point with a representative logic gate, an inverter having a pull-down, N-channel transistor 31 and a pull-up, P-channel transistor 32. The PMOS transistor 32 has its source connected to a metal line 42 at the positive supply voltage, VDD, and the NMOS transistor 31 has its source connected to a metal line 41 at VSS. The P-type substrate in which the NMOS transistor is placed is also connected to the VSS line 41. In FIGS. 3A (and 3B and 4), node 30 represents a metal-to-N+ source contact and node 40 represents a metal-to-P+ substrate contact.
  • Thus the same VSS metal tracks in the logic integrated circuit serves two functions: 1) as a substrate tap every 25-50 microns across the substrate surface, and 2) as a source terminal of the N-channel transistors of the logic circuits. The substrate taps are necessary to protect the circuits from going into a latch-up condition during operation, since each logic gate has both N-type and P-type transistors.
  • In a CMOS DRAM, however, the typical DRAM array is built with only N-type transistors and capacitors, and a major goal is to minimize the parasitic capacitance of the memory bit line. Since the N-type bit line junction areas contribute to a majority of the bit line capacitance and since the junction capacitance is greatly reduced by a reverse junction bias voltage, the P-type substrate is typically biased at −1.5 volts, termed VBB. This voltage is generated from an on-chip charge pump and thus has a limited capacity and a high output impedance. This results in the substrate voltage being relatively “noisy” due to the precharging and discharging of the large junction areas associated with the memory array, that are capacitively coupled to the substrate.
  • In the DRAM, the small amount of on-chip logic which handles the memory address decoding and the data read and write functions typically uses the VSS metal tracks only to connect to the source terminal of the N-channel, pulldown transistors and not as a substrate tap. As shown by a representative logic gate, an inverter, in FIG. 3B, a pull-down, N-channel transistor 33 has its source connected to a VSS metal line 43. The P-type substrate of the NMOS transistor 33 is at VBB.
  • In fact, DRAMs typically do not have any substrate taps in the middle of the circuitry. The substrate taps are only made at the edges of the die. Since most of the logic blocks in a DRAM consist of a few cells, repeated many times, which together form a small portion of the total chip area, large P-to-N diffusion spacings, typically 25 microns, can be maintained in the logic cells to avoid latch-up. In contrast, in a logic circuit, which has many different cell types connected in a relatively random manner, the cell size is very important as it determines the total chip area. The P-to-N diffusion spacings are minimized, typically 5 microns, which requires the use of substrate taps in every cell to avoid latch-up.
  • To combine a significant amount of random logic to a significant amount of DRAM in a single integrated circuit requires that this problem be overcome. The present invention combines the random logic, the graphics engine 12 and interfaces, with the DRAM 11, in an integrated circuit 20 manufactured in accordance with a DRAM process. The logic circuits of the integrated circuit are redesigned to decouple the VSS line connected to the source terminals of the N-channel, pulldown transistors from the P-substrate tap. As shown in FIG. 4, the source of the N-channel, pulldown transistor 35 of a representational logic circuit is connected to a VSS line 45 (at 0 volts), while the substrate is tapped by a VBB line 47 (at −1.5 volts). The P-to-N diffusion spacings are then minimized without deleterious consequences.
  • Additionally, the graphics engine 22 of the integrated circuit 20 has analog circuits. In an exemplary analog circuit, a low-pass filter is often used and an RC circuit is required. Heretofore, the capacitor of the RC circuit has been typically formed by an NMOS transistor with its gate forming one terminal and the shorted source/drains forming the other terminal of the capacitor. Since the body bias of this transistor is the noisy substrate voltage generated from the on-chip charge pump required for the DRAM 21, some of the noise couples inevitably into the low-pass filter circuit. To avoid this problem, the analog circuits according to the present invention are designed with mostly P-channel transistors within independent N-wells which are connected to the positive and relatively quiet reference voltage, VDD, as shown in FIG. 5. The N-wells isolate the terminals 37 and 38 of the capacitors and the rest of the analog circuits from the “noisy” substrate voltage.
  • On the periphery of the integrated circuit are buffer circuits for transferring signals to and from the external world. Problems arise with the DRAM technology in the driver stage circuit of each output buffer. Shown in FIG. 6A is a representative output driver stage found in the prior art. Basically an inverter, the driver stage has two transistors, an N-channel, pulldown, driver transistor 50 having its source connected to a voltage supply bus 52 at an external negative supply voltage, VSSQ, and a P-channel, pullup, driver transistor 51 having its source connected to a voltage supply bus 53 at an external positive supply voltage, VDDQ. The words, “negative” and “positive,” refer to one supply voltage relative to the other supply voltage and the “Q” in the subscript indicates that the supply voltages are not necessarily the same as the supply voltages, VDD and VSS, in the other parts of the integrated circuit. This allows the interior portions of the integrated circuit to operate at voltage levels, 0-+3.3V, while the peripheral output driver circuits operate at different levels, 0-+5.0V, for example. Furthermore, the separation of supply voltages provides for some insulation from noise between the interior and peripheral portions of the integrated circuit. The drains of the two transistors 50 and 51 are connected together and to an output terminal 54. The gates of the transistors 50 and 51 are also connected together to an input terminal 57 connected to the rest of the buffer circuit (not shown).
  • During the switching of output signals, the output signal voltages invariably tend to overshoot the VDDQ and VSSQ supply voltages due to an impedance mismatch between the driver transistors and the external load. When the output signal voltage, DATA OUT, is being driven high in response to an internal signal, dataout*, going low at the input terminal 57, for instance, the prior art design results in a parasitic diode 55, marked by dotted lines, becoming forward-biased when the overshoot exceeds 0.6 volts. The diode 55 is formed by the junction of the drain of the P-channel, pullup transistor 50 and the N-well holding the transistor, which is also connected to VDDQ. This forward-biasing action results in the injection of positive charges, or holes, into the substrate which works against the on-chip substrate bias voltage generator. The amount of hole injection is a function of the severity of the overshoot, the number of output buffers, and the frequency of switching. If the substrate bias voltage generator is overwhelmed by excessive hole injection, functional failures or soft errors occur in the on-chip DRAM.
  • To avoid this problem, a new output driver circuit, shown in FIG. 6B, is used. In the drawing, the same reference numerals are used where the operation or connection of the referenced element remains unchanged from FIG. 6A. Different reference numerals are used if the operation or connection of the element is different. In the new, representative driver circuit, for each bank of buffer circuits at particular VDDQ and VSSQ voltages, the N-wells in which the P-channel driver transistors 51 of the bank are located are raised to a voltage higher than the VDDQ voltage for the bank. An on-chip bias generator is connected to the VDDQ bus 53 for a reference to generate a voltage at NVDD, 1 volt higher than VDDQ. The bias generator (not shown) is connected to a bus 59 at NVDD, which is connected to the N-wells of each of the P-channel transistors 51. If several P-channel transistors 51 are in a single N-well, the bus 59 is connected to the N-well in a series of taps, one located near each transistor 51. This arrangement lowers the possibility of latch-up.
  • For each bank of output buffers on the same integrated circuit, a different NVDD bias generator, referencing the VDDQ supply for that bank, is used to generate the higher voltage. This allows the N-well(s) of an output buffer bank which is driven from a +3.3V supply to be biased at +4.3V, while an output buffer bank driven by a +5.0V supply, has its N-well(s) biased at +6.0V.
  • As shown in FIG. 6B, the parasitic diode 58 formed by the drain of the transistor 51 and the N-well holding the transistor 51 now has an extra 1 volt of N-well bias. The diode 58 does not become forward-biased unless the overshoot exceeds 1.6V. This extra margin of safety results in a greatly diminished level of hole injection into the substrate and thus prevents the occurrence of soft errors or functional failures in the on-chip DRAM.
  • Integrating the video memory, the DRAM 21, with a graphics controller results in significant power savings compared to present graphics controller systems with external DRAM. Capacitance in present graphics controller systems is comprised of the capacitance of the I/O pins of the DRAM packages and the controller package plus capacitance of the traces on the motherboard which carries and connects the DRAM and controller packages. The present invention has a roughly twenty-fold reduction of the video memory address, data and control bus capacitance. This results in an equivalent power savings since most of these lines are continuously switching at high frequencies.
  • Another source of power savings is the 128-bit wide memory word which can be transferred between the graphics engine 22 and the video memory 21. The controller, i.e., the graphics engine 22, has 128 bits of data available after one DRAM read cycle. In comparison, the graphics controller system in the prior art requires four or eight read cycles, depending upon a 32-bit or 16-bit wide DRAM organization, respectively. Since a fixed amount of power is consumed every DRAM cycle, the present invention has a savings of three-fourths to seven-eighths of the prior art power dissipation.
  • Furthermore, the present invention uses memory very efficiently. The capacity of the video memory 21 is not required to fall on high order binary boundaries, such as combinations of DRAM integrated circuits forming a memory of 32K×128 bits, or 64K×128 bits, the next larger size. In the present invention, the addition of memory blocks, with a typical size of 256K(218) bits each, achieves the required capacity for the video memory 11. Memory capacity can be customized for a particular application. For example, a 1024×768×8 display requirement requires a video memory of 6.4 megabits, which can be built with 24 memory blocks. With external DRAMs, a video memory of 8 megabits is required since the standard DRAM package has 4 megabits. The video memory 21 of the integrated circuit 20 can be organized to be of any width, depth or capacity and need not follow the multiplexed addressing architecture associated with standard DRAMs.
  • With the ability to incorporate large amounts of logic and memory in a single integrated circuit, the present invention provides for a video memory and logic for graphics control operations in one integrated circuit. FIG. 7 illustrates the organization of the advanced graphics controller system of FIG. 2 in greater detail. As stated previously, the memory 21 is organized from dynamic RAM memory cells arranged 56K×128 bits wide. Stated differently in terms of memory blocks, the memory 21 has the storage capacity of 218×28 bits. The 128-bit interface 25 in FIG. 2 is realized by a 128-bit wide bus 61, organized as sixteen 8-bit bytes, so that a Write operation can be performed at the byte level into the memory 21. Connected to the bus 61 is a Graphics User Interface (GUI) Acceleration block 62, part of the Graphics Engine 22 of FIG. 2. The CPU Interface 23 of FIG. 2 is realized by a Host Bus Interface block 63 in FIG. 7, and the Display Interface 24 is by a CRT Display block 64 and an LCD Display Interface block 65. All the blocks 62-65 are indicated by dotted lines in FIG. 7. Not shown in FIG. 7 are the Infrared Interface 26, PCMCIA Host Adaptor 27 and the Video Source Interface 28. The circuits for the Interfaces 26 and 28, and Adaptor 27 are presently found in separate printed circuit boards in personal computer systems and may be integrated onto the single integrated circuit with the techniques described previously.
  • The GUI acceleration block 62 has a 128-bit wide register 70, which receives data from the bus 61. The register 70 splits its contents into two parts, 64-bits apiece, to a 64-bit BIT BLock Transfer (BITBLT) operation unit 71 for performing the operations. The output of the unit 71 is fed into an assemble register 72 on a 64-bit wide path. After a BITBLT operation, the register 72 builds up a 128-bit word for transfer back to the bus 61. This organization represents the best compromise between performance and space on the integrated circuit; the transfer rate is maximized between the memory 21 and the operation unit 71, yet an optimum size of 64 bits for the unit 71 is maintained. A 128-bit BITBLT operation unit occupies a very large amount of integrated circuit space, while a unit for 32 bits slows BITBLT operations too much.
  • The host bus interface block 63 lies between the bus of the host, i.e., the CPU of the computer system, and the bus 61. The interface block 63 provides a bidirectional data path between the 128-bit bus 61 and a 32-bit bus of the host. The block 63 has a Bus Read Latch 73 which holds a 128-bit wide word from the bus 61. The output of the latch 73 is connected to the input of a multiplexer 74, which selects 32 bits from the 128-bit latch 73 for the host bus. For host Read operations, the selected 32 bits should contain four consecutive bytes in the host bus address space. Depending upon the VGA-compatible format and other extended storage formats in use, these four bytes may be scattered among the 16 bytes, 16×8 bits equals 128 bits, of data stored in the latch 73.
  • The output of the latch 73 is illustrated in FIG. 8 with each of the bytes labeled 0-F. To implement 4-byte access properly for all VGA-compatible and additional extended storage formats, the multiplexer 74 is implemented as four separate single byte multiplexers 74A-74D, one for each byte read back upon the host bus. Each of the 8-to-1 multiplexers 74A-74D are illustrated in FIGS. 9A-9D respectively together with the particular input bytes from the latch 73. Each of the multiplexers 74A-74D respectively generates bytes 0-3 for the host bus.
  • The logic to generate the control signals, selda(2:0), seldb(2:0), seldc(2:0), and seldc(2:0), for the multiplexers 74A-74D is listed in VHDL code in TABLES 1 and 2. These control signals are derived from VGA standard control bits in programmable control registers which determine the storage format in use, and additional internal state information in the memory controller state machine. The present invention uses the following standard control bits:
      • SR4[3]=Chain-4
      • GR5[3]=Read Mode
      • GR5[4]=Odd/Even
      • GR4[0]=Read Map Select[0]
      • GR4[1]=Read Map Select[1]
      • GR6[0]=APA/Text*, Graphics Mode
  • and an extended mode control bit:
  • PACPIX=Packed Pixel Format
    TABLE 1
    tmp.sub.-- pack <= sr4.sub.-- 3 OR pacpix; - - chain4 or packed mode
    for read mode force pack mode for host write cyc(hwcyc),
    read model (gr5.sub.-- 3) and memtst in addition to tmp.sub.-- pack.
    pack <= tmp.sub.-- pack OR gr5.sub.-- 3 OR hwcyc OR mtest;
    rdplanar <= NOT(pack OR gr5.sub.-- 4);
    wrplanar <= NOT(tmp.sub.-- pack OR gr5.sub.-- 4);
  • As indicated in the code listed in TABLE 1, these control bits are used to generate control signals, tmp_pack, pack, rdplanar and wrplanar, which are used ultimately in generating the selda(2:0), seldb(2:0), seldc(2:0), and seldc(2:0) control signals. From these control signals, other control signals are generated for each of the multiplexers 74A-74D. For example, the control logic and signals for the first multiplexer 74A are illustrated in FIG. 2A. The control signals in TABLE 1 generate control signals sela(0)-sela(7). These eight control signals then generate the three selda control signals. The code in TABLE 2 shows how the multiplexer 74A responds to the control signals by selecting one of input eight bytes, mrd_dta(X DOWNTO Y), as the output byte, cpul0.
    TABLE 2
    first eight 8 to 1 mux (7:0)
    sela(0) <= ((gr5.sub.-- 4 = ‘1‘ AND gr4(1) = ‘1‘ AND rmad(0) = ‘1‘));
    sela(1) <= ((rdplanar = ‘1‘ AND gr4 = “01”));
    sela(2) <= ((rdplanar = ‘1‘ AND gr4 = “10”) OR
      (gr5.sub.-- 4 = ‘1‘ AND gr4(1) = ‘1‘ AND rmad(0) = ‘0‘));
    sela(3) <= ((rdplanar = ‘1‘ AND gr4 = “11”));
    sela(4) <= ((rdplanar = ‘1‘ AND gr4 = “00”) OR
      (pack = ‘1‘ AND rmad = “00”) OR
      (gr5.sub.-- 4 = ‘1‘ AND gr4(1) = ‘0‘ AND rmad(0) = ‘0‘));
    sela(5) <= ((pack = ‘1‘ AND rmad = “01”) OR
      (gr5.sub.-- 4 = ‘1‘ AND gr4(1) = ‘0‘ AND rmad(0) = ‘1‘));
    sela(6) <= ((pack = ‘1‘ AND rmad = “10”));
    sela(7) <= ((pack = ‘1‘ AND rmad = “11”));
    PROCESS(sela)
    BEGIN
    CASE sela IS
    WHEN “00000001” =>
      selrda <= “000”;
    WHEN “00000010” =>
      selrda <= “001”;
    WHEN “00000100” =>
      selrda <= “010”;
    WHEN “00001000” =>
      selrda <= “011”;
    WHEN “00010000” =>
      selrda <= “100”;
    WHEN “00100000” =>
      selrda <= “101”;
    WHEN “01000000” =>
      selrda <= “110”;
    WHEN OTHERS =>
      selrda <= “111”;
    END CASE;
    END PROCESS;
    PROCESS(selrda,mrd.sub.-- dta)
    BEGIN
    CASE selrda IS
    WHEN “000” =>
      cpu10 <= mrd.sub.-- dta(79 DOWNTO 72);
    WHEN “001” =>
      cpu10 <= mrd.sub.-- dta(119 DOWNTO 112);
    WHEN “010” =>
      cpu10 <= mrd.sub.-- dta(111 DOWNTO 104);
    WHEN “011” =>
      cpu10 <= mrd.sub.-- dta(103 DOWNTO 96);
    WHEN “100” =>
      cpu10 <= mrd.sub.-- dta(127 DOWNTO 120);
    WHEN “101” =>
      cpu10 <= mrd.sub.-- dta(95 DOWNTO 88);
    WHEN “110” =>
      cpu10 <= mrd.sub.-- dta(63 DOWNTO 56);
    WHEN OTHERS =>
      cpu10 <= mrd.sub.-- dta(31 DOWNTO 24);
    END CASE;
    END PROCESS;
    second eight 8 to 1 mux (15:8)
    selb(0) <= ((rdplanar = ‘1‘ AND gr4 = “00”));
    selb(1) <= ((rdplanar = ‘1‘ AND gr4 = “10”));
    selb(2) <= ((gr5.sub.-- 4 = ‘1‘ AND gr4(1) = ‘1‘ AND rmad(0) = ‘0‘));
    selb(3) <= (rg5.sub.-- 4 = ‘1‘ AND gr4(1) = ‘1‘ AND rmad(0) = ‘1‘));
    selb(4) <= ((pack = ‘1‘ AND rmad = “00”) OR
      (gr5.sub.-- 4 = ‘1‘ AND gr4(1) = ‘0‘ AND rmad(0) = ‘0‘));
    selb(5) <= ((rdplanar = ‘1‘ AND gr4 = “01”) OR
      (gr5.sub.-- 4 = ‘1‘ AND gr4(1) = ‘0‘ AND rmad(0) = ‘1‘) OR
      (pack = ‘1‘ AND rmad = “01”));
    selb(6) <= ((pack = ‘1‘ AND rmad = “10”));
    selb(7) <= ((pack = ‘1‘ AND rmad = “11”);
    PROCESS(selb)
    BEGIN
    CASE selb IS
    WHEN “00000001” =>
      selrdb <= “000”;
    WHEN “00000010” =>
      selrdb <= “001”;
    WHEN “00000100” =>
      selrdb <= “010”;
    WHEN “00001000” =>
      selrdb <= “011”;
    WHEN “00010000” =>
      selrdb <= “100”;
    WHEN “00100000” =>
      selrdb <= “101”;
    WHEN “01000000” =>
      selrdb <= “110”;
    WHEN OTHERS =>
      selrdb <= “111”;
    END CASE;
    END PROCESS;
    PROCESS(selrdb,mrd.sub.-- dta)
    BEGIN
    CASE selrdb IS
    WHEN “000” =>
      cpu11 <= mrd.sub.-- dta(95 DOWNTO 88);
    WHEN “001” =>
      cpu11 <= mrd.sub.-- dta(79 DOWNTO 72);
    WHEN “010” =>
      cpu11 <= mrd.sub.-- dta(103 DOWNTO 96);
    WHEN “011” =>
      cpu11 <= mrd.sub.-- dta(71 DOWNTO 64);
    WHEN “100” =>
      cpu11 <= mrd.sub.-- dta(119 DOWNTO 112);
    WHEN “100” =>
      cpu11 <= mrd.sub.-- dta(87 DOWNTO 80);
    WHEN “110” =>
      cpu11 <= mrd.sub.-- dta(55 DOWNTO 48);
    WHEN OTHERS =>
      cpu11 <= mrd.sub.-- dta(23 DOWNTO 16);
    END CASE;
    END PROCESS;
    third eight 8 to 1 mux (23:16)
    selc(0) <= ((gr5.sub.-- 4 = ‘1‘ AND gr4(1) = ‘0‘ AND rmad(0) = ‘0‘) OR
      (rdplanar = ‘1‘ AND gr4 = “00”));
    selc(1) <= ((rdplanar = ‘1‘ AND gr4 = “01”));
    selc(2) <= ((gr5.sub.-- 4 = ‘1‘ AND gr4(1) = ‘0‘ AND rmad(0) = ‘1‘));
    selc(3) <= ((rdplanar = ‘1‘ AND gr4 = “11”));
    selc(4) <= ((pack = ‘1‘ AND rmad = “00”));
    selc(5) <= ((pack = ‘1‘ AND rmad = “01”));
    selc(6) <= ((rdplanar = ‘1‘ AND gr4 = “10”) OR
      (gr5.sub.-- 4 = ‘1‘ AND gr4(1) = ‘1‘ AND rmad(0) = ‘0‘) OR
      (pack = ‘1‘ AND rmad = “10”));
    selc(7) <= (gr5.sub.-- 4 = ‘1‘ AND gr4(1) = ‘1‘ AND rmad(0) = ‘1‘));
    PROCESS(selc)
    BEGIN
    CASE selc IS
    WHEN “00000001” =>
      selrdc <= “000”;
    WHEN “00000010” =>
      selrdc <= “001”;
    WHEN “00000100” =>
      selrdc <= “010”;
    WHEN “00001000” =>
      selrdc <= “011”;
    WHEN “00010000” =>
      selrdc <= “100”;
    WHEN “00100000” =>
      selrdc <= “101”;
    WHEN “01000000” =>
      selrdc <= “110”;
    WHEN OTHERS =>
      selrdc <= “111”;
    END CASE;
    END PROCESS;
    PROCESS(selrdc,mrd.sub.-- dta)
    BEGIN
    CASE selrdc IS
    WHEN “000” =>
      cpu12 <= mrd.sub.-- dta(63 DOWNTO 56);
    WHEN “001” =>
      cpu12 <= mrd.sub.-- dta(55 DOWNTO 48);
    WHEN “010” =>
      cpu12 <= mrd.sub.-- dta(31 DOWNTO 24);
    WHEN “011” =>
      cpu12 <= mrd.sub.-- dta(39 DOWNTO 32);
    WHEN “100” =>
      cpu12 <= mrd.sub.-- dta(111 DOWNTO 104);
    WHEN “101” =>
      cpu12 <= mrd.sub.-- dta(79 DOWNTO 72);
    WHEN “110” =>
      cpu12 <= mrd.sub.-- dta(47 DOWNTO 40);
    WHEN OTHERS =>
      cpu12 <= mrd.sub.-- dta(15 DOWNTO 8);
    END CASE;
    END PROCESS;
    fourth eight 8 to 1 mux (31:24)
    seld(0) <= ((rdplanar = ‘1‘ AND gr4 = “00”));
    seld(1) <= ((rdplanar = ‘1‘ AND gr4 = “01”) OR
      (gr5.sub.-- 4 = ‘1‘ AND gr4(1) = ‘0‘ AND rmad(0) = ‘1‘));
    seld(2) <= ((rdplanar = ‘1‘ AND gr4 = “10”));
    seld(3) <= ((gr5.sub.-- 4 = ‘1‘ AND gr4(1) = ‘0‘ AND rmad(0) = ‘0‘));
    seld(4) <= ((pack = ‘1‘ AND rmad = “00”));
    seld(5) <= ((pack = ‘1‘ AND rmad = “01”));
    seld(6) <= ((pack = ‘1‘ AND rmad = “10”) OR
      (gr5.sub.-- 4 = ‘1‘ AND gr4(1) = ‘1‘ AND rmad(0) = ‘0‘));
    seld(7) <= ((pack = ‘1‘ AND rmad = “11”) OR
      (gr5.sub.-- 4 = ‘1‘ AND gr4(1) = ‘1‘ AND rmad(0) = ‘1‘) OR
      (rdplanar = ‘1‘ AND gr4 = “11”));
    PROCESS(seld)
    BEGIN
    CASE seld IS
    WHEN “00000001” =>
      selrdd <= “000”;
    WHEN “00000010” =>
      selrdd <= “001”;
    WHEN “00000100” =>
      selrdd <= “010”;
    WHEN “00001000” =>
      selrdd <= “011”;
    WHEN “00010000” =>
      selrdd <= “100”;
    WHEN “00100000” =>
      selrdd <= “101”;
    WHEN “01000000” =>
      selrdd <= “110”;
    WHEN OTHERS =>
      selrdd <= “111”;
    END CASE;
    END PROCESS;
    PROCESS(selrdd,mrd.sub.-- dta)
    BEGIN
    CASE selrdd IS
    WHEN “000” =>
      cpu13 <= mrd.sub.-- dta(31 DOWNTO 24);
    WHEN “001” =>
      cpu13 <= mrd.sub.-- dta(23 DOWNTO 16);
    WHEN “010” =>
      cpu13 <= mrd.sub.-- dta(15 DOWNTO 8);
    WHEN “011” =>
      cpu13 <= mrd.sub.-- dta(55 DOWNTO 48);
    WHEN “100” =>
      cpu13 <= mrd.sub.-- dta(103 DOWNTO 96);
    WHEN “101” =>
      cpu13 <= mrd.sub.-- dta(71 DOWNTO 64);
    WHEN “110” =>
      cpu13 <= mrd.sub.-- dta(39 DOWNTO 32);
    WHEN OTHERS =>
      cpu13 <= mrd.sub.-- dta(7 DOWNTO 0);
    END CASE;
    END PROCESS
  • The code in TABLE 2 similarly illustrates the details of the control signals and operation of the multiplexers 74B-74D respectively.
  • With reference to FIG. 7 once again, the block 63 also has a FIFO (First-In, First Out) register 77 which has its input terminals connected to the 32-bit host bus for transfer of data from the host bus. The output terminals of the FIFO 77, also 32 bits wide, are connected to a graphics controller unit 76, which also has its input terminals connected to the output terminals of the multiplexer 74. The graphics controller unit 76 manipulates data bits and can selectively load a single, or multiple, byte to the bus 61 through four drivers 75 in response to commands from the CPU (not shown). For VGA compatibility, the 32 bits sent from the Bus Read Latch 73 to the graphics controller unit 76 during a memory write operation are always the four bytes from the four VGA planes containing the last byte read from the memory module 60 on the host bus. The multiplexer 74 is set properly in a VGA compatible mode upon completion of each Read operation. This setting for the multiplexer 74 is again dependent upon VGA or extended mode and is derived from logic equations similar to those shown in TABLES 1 and 2. The four drivers 75 reverse the data selection operation performed by the multiplexer 74. The multiplexer 74 selects four bytes out of the 16 bytes read from the memory 60 to forward to the host bus. The drivers 75 position the four bytes from the host bus in a write operation properly in the 16 byte slots on the memory bus 61 so that the data is stored properly for subsequent retrieval. Control of these drivers 75 is derived from the memory controller control states and control register bits that define the VGA-compatible storage format, or other additional extended storage format, in use.
  • The CRT display block 64 provides a data path between the memory 21 and the CRT display which is compatible with the VGA standard. The block 64 has a Data Rotate unit 80, which receives 128 bits from the bus 61. The unit 80 is connected over four 32-bit paths to the input terminals of a CRT FIFO register 81 which has a capacity of 4 words, each word 128 bits wide. Stated differently, the FIFO register 81 is 128 bits wide and four stages deep, and can be filled in four memory fetches. The output terminals of the FIFO register 81 are connected to a VGA Display Path unit 82 over a 32-bit wide path. All VGA compatible graphics controllers for notebook computers today are based on a 16-bit or 32-bit memory bus to an external video memory buffer. The present 128-bit bus architecture, in comparison, allows improved performance while reducing power consumption. However, to achieve VGA compatibility and improve performance, byte swapping is required in transferring data from the memory bus 61 to the FIFO register 81. This swapping is implemented in the Data Rotate unit 80. From the 128 bits of the FIFO register 81, 32 bits are selected and sent to the VGA Display Path unit 82. The code in TABLE 3 specifies the control signals and implementation in terms of the control register bits which define the VGA storage format or extended mode storage format in use, as well as the memory controller control states.
  • The control signals are:
  • fontcy is a signal derived from the internal state machine and indirectly from the previously identified control signal, GR6[0]; a control signal, such as fontcy, is found in present VGA compatible controllers to determine a font or ASCII fetch operation in text mode.
  • swap 0, swap 1 are the 0 and 1-order bits of the CRT address counters found in VGA compatible controllers; these signals are derived from the Chain-4 and Odd/Even control signals mentioned previously.
  • rscntb0, rscntb 1 are the 0 and 1-order bits of the 5-bit row scan counter found in VGA compatible controllers; the row scan counter is used for tracking the rows of a character in text mode.
  • lword is the Chain-4, or SR4[3], control signal identified previously.
  • crsr_dtct is the cursor detect signal in VGA-compatible controllers; and
  • TEXT, apa are the true and inverted of the GR6[0] control signal previously identified.
    TABLE 3
    FIFO INPUT MUXING EQUATIONS:
    swap0a <= (((not fontcy( and swap0) OR (fontcy AND rscntb0));
    swap1a <= (((not fontcy) AND swap1) OR (fontcy AND rscntb1));
    swap1b <= (((not fontcy) and (swap1 OR (not 1word))) OR
    (fontcy AND rscntb1))
    memc1.sub.-- dta <= (crsr.sub.-- dtct AND TEXT) OR (mem.sub.--
    dta(96) AND apa);
    memc2.sub.-- dta <= crsr.sub.-- dtct AND TEXT) OR (mem.sub.-- dta(32)
    AND
    apa);
    mema.sub.-- dta (127 DOWNTO 96) <= mem.sub.-- dta(127
    DOWNTO 97) & memc1.sub.-- dta;
    mema.sub.-- dta (95 DOWNTO 64) <= mem.sub.-- dta(95 DOWNTO 64);
    mema.sub.-- dta (63 DOWNTO 32) <= mem.sub.-- dta(63 DOWNTO 33)
    & memc2.sub.-- dta;
    mema.sub.-- dta (31 DOWNTO 0) <= mem.sub.-- dta(31 DOWNTO 0);
    swapa <= swap1a & swap0a;
    swapb <= swap1b & swap0a;
  • These control signals are used to generate further signals, memc1_dta and memc2_dta. Stated generally, these two signals are either the crsr_dtct signal in text mode, or bit 96 (or bit 36 respectively) of the data bits from the 128-bit word on the bus 61 in graphics mode. The signals, mema_dta, are basically the four 32-bit words of data formed from the 128-bit word on the bus 61. The words for the bit locations, 127-96 and 63-32, are modified so that the bits 96 and 32 are either crsr_dtct in text mode or respectively data bits 96 and 32 from the bus 61. Finally, swapa and swapb are the control signals to the multiplexers in the Data Rotate unit 80. It should be noted that the symbol, “&”, represents a concatenation of signals.
  • The code listed in TABLE 4 illustrates the operation of the Data Rotate unit 80, which receives the mema_dta signals as input and transmits crt_fin signals as output to the FIFO register 81. The first VGA (32-bit) word, crt_fin(31 DOWNTO 0), may be filled by any one of the four incoming 32-bit words from the bus 61, depending upon the state of control signals swapa. Similarly, the third VGA (32-bit) word, crt_fin(95 DOWNTO 64), may be filled by any one of the four incoming 32-bit words from the bus 61, depending upon the state of control signals swapb. The second and fourth VGA words, crt_fin(63 DOWNTO 32) and crt_fin(127 DOWNTO 96), are respectively filled by the third and first incoming 32-bit words from the bus 61.
    TABLE 4
    The firs set of mux corresponding to first VGA word in fifo.
    CASE swapa IS
    WHEN “00” =>
    crt.sub.-- fin(31 DOWNTO 0) <= mema.sub.-- dta(127 DOWNTO 96);
    WHEN “01” =>
    crt.sub.-- fin(31 DOWNTO 0) <= mema.sub.-- dta(95 DOWNTO 64);
    WHEN “10” =>
    crt.sub.-- fin(31 DOWNTO 0) <= mema.sub.-- dta(63 DOWNTO 32);
    WHEN OTHERS =>
    crt.sub.-- fin(31 DOWNTO 0) <= mema.sub.-- dta(31 DOWNTO 0);
    END CASE;
    END PROCESS;
    The second set of mux corresponding to third VGA word in fifo
    CASE swapb IS
    WHEN “00” =>
    crt.sub.-- fin(95 DOWNTO 64) <= mema.sub.-- dta(127 DOWNTO 96);
    WHEN “01” =>
    crt.sub.-- fin(95 DOWNTO 64) <= mema.sub.-- dta(95 DOWNTO 64);
    WHEN “10” =>
    crt.sub.-- fin(95 DOWNTO 64) <= mema.sub.-- dta(63 DOWNTO 32);
    WHEN OTHERS =>
    crt.sub.-- fin(95 DOWNTO 64) <= mema.sub.-- dta(31 DOWNTO 0);
    END CASE;
    END PROCESS;
    No muxes for second and fourth VGA group of data from memory to
    fifo
    crt.sub.-- fin(63 DOWNTO 32) <= mem.sub.-- dta(95 DOWNTO 64);
    crt.sub.-- fin(127 DOWNTO 96) <= mem.sub.-- dta(31 DOWNTO 0);
    crt.sub.-- fin(127 downto 0) are the 128 data bits going into the crt
    fifo as input
  • The CRT FIFO 81 then selectively feeds 32-bit words into a VGA Display Path unit 82 and a Color Palette RAM 83. The RAM 83 is, in turn, connected to a digital-to-analog converter (DAC) 84. The RAM 83 feeds 18 bits of data, 6 bits for each component color, to the DAC 84. The DAC 84 generates the analog signals for a CRT color display.
  • The RAM 83 also feeds data into the LCD Display Interface block 65 which is organized for dual scan LCD panel displays. The general operation of the block 65 is that a Shader unit 96 receives the data from the RAM 83. The unit 96 generates the grayscale values for the LCD pixels. In passing, it should be noted that the word, grayscale, implies intensity for a color LCD display. These values are sent to a Formatter unit 92 which, as the name implies, formats the grayscale values for the integrated circuit(s) which drive the electrodes of the LCD display. The Shader unit 96 also sends its grayscale values through several buffer units 95, 94, 93, 90 and 91 (and along the bus 61) before being formatted and transmitted by the Formatter unit 92 for a dual scan operation. Dual scan LCD panels are commonly used today in notebook computers and the buffer units of the block 65 provide for the memory by which, in alternating operation, the display in one LCD panel is updated by the Shader unit 96 while the display in the second panel is maintained from memory.
  • Therefore, while the description above provides a full and complete disclosure of the preferred embodiments of the present invention, various modifications, alternate constructions and equivalents may be employed without departing from the true scope and spirit of the invention. For example, while the present invention has been described in terms of an integrated circuit with a memory capacity of some 7.3 megabits and some 40-50K logic gates, one could use the present invention to build an integrated circuit of reduced size. An integrated circuit having a memory capacity of 2 megabits, the capacity of basic VGA video memory in graphics cards, with 30K logic gates, the approximate amount of logic in present graphics controller integrated circuits, still realizes the advantages of the present invention. Costs, power dissipation and occupied space are reduced, and performance is enhanced, for instance. The present invention, therefore, should be limited only by the metes and bounds of the appended claims.

Claims (7)

1. A complementary MOS integrated circuit, containing NMOS transistors and PMOS transistors, comprising
circuitry for processing, controlling or manipulating data of an electronic system interconnected with said complementary MOS integrated circuit, said circuitry including at least 30K logic gates, said circuitry further including an n-bit graphics processor with the number “n” being either 32 or 64 bits;
a memory for storing and retrieving at least a portion of said data, said memory having a capacity of at least 2 megabits; and
a data interface located between said data processing, controlling or manipulating circuitry and said memory, said data interface being “m” bits wide, where the number “m” is a multiple of the number “n” and the number “m” is at least twice as large as the number “n”;
whereby the integration of the multiple functions performed by said circuitry, said memory and said data interface into single said complementary MOS integrated circuit can result in a lower number of integrated circuit packages, and lower power dissipation, in said electronic system in which said complementary MOS integrated circuit resides.
2. A complementary MOS integrated circuit, containing NMOS transistors and PMOS transistors, comprising
circuitry for processing, controlling or manipulating data of an electronic system interconnected with said complementary MOS integrated circuit, said circuitry including at least 30K logic gates, said circuitry further including an n-bit processor, or processing element, with the number “n” being either 32 or 64 bits;
a memory for storing and retrieving at least a portion of said data, said memory having a capacity of at least 2 megabits; and
a data interface located between said data processing, controlling or manipulating circuitry and said memory, said data interface being “m” bits wide, where the number “m” is a multiple of the number “n” and the number “m” is at least twice as large as the number “n”;
whereby the integration of the multiple functions performed by said circuitry, said memory and said data interface into single said complementary MOS integrated circuit can result in a lower number of integrated circuit packages, and lower power dissipation, in said electronic system in which said complementary MOS integrated circuit resides.
3. A complementary MOS integrated circuit, containing NMOS transistors and PMOS transistors, comprising
circuitry for processing, controlling or manipulating data of an electronic system interconnected with said complementary MOS integrated circuit, said circuitry including at least 30K logic gates, said circuitry including graphics operational circuitry processing, controlling or manipulating said data up to 64 bits at time;
a memory for storing and retrieving at least a portion of said data, said memory having a capacity of at least 2 megabits; and
a data interface located between said data processing, controlling or manipulating circuitry and said memory, said data interface being “m” bits wide, where the number “m” is a multiple of the number “64” and the number “m” is at least twice as large as the number “64”;
whereby the integration of the multiple functions performed by said circuitry, said memory and said data interface into single said complementary MOS integrated circuit can result in a lower number of integrated circuit packages, and lower power dissipation, in said electronic system in which said complementary MOS integrated circuit resides.
4. The complementary MOS integrated circuit of claim 3 wherein said graphics operational circuitry includes a Bit Block Transfer operation unit performing operations upon said data up to a predetermined number of bits at a time responsive to instructions.
5. The complementary MOS integrated circuit of claim 4 wherein said Bit Block Transfer operation unit performs operations upon said data 64 bits at a time responsive to instructions.
6. The complementary MOS integrated circuit of claim 4 wherein said graphics operational circuitry includes a graphics controller unit.
7. The complementary MOS integrated circuit of claim 6 wherein said graphics controller unit can selectively load a single, or multiple, bytes, to said data interface at one time.
US11/382,433 1994-06-20 2006-05-09 Graphics Controller Integrated Circuit without Memory Interface Abandoned US20060208764A1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US11/382,433 US20060208764A1 (en) 1994-06-20 2006-05-09 Graphics Controller Integrated Circuit without Memory Interface
US13/439,585 US20120188260A1 (en) 1994-06-20 2012-04-04 Graphics controller integrated circuit without memory interface

Applications Claiming Priority (8)

Application Number Priority Date Filing Date Title
US26241294A 1994-06-20 1994-06-20
US58108695A 1995-12-29 1995-12-29
US08/883,538 US6041010A (en) 1994-06-20 1997-06-26 Graphics controller integrated circuit without memory interface pins and associated power dissipation
US09/467,942 US6356497B1 (en) 1994-06-20 1999-12-21 Graphics controller integrated circuit without memory interface
US10/042,952 US6771532B2 (en) 1994-06-20 2002-01-07 Graphics controller integrated circuit without memory interface
US10/803,783 US6920077B2 (en) 1994-06-20 2004-03-18 Graphics controller integrated circuit without memory interface
US10/908,259 US7106619B2 (en) 1994-06-20 2005-05-04 Graphics controller integrated circuit without memory interface
US11/382,433 US20060208764A1 (en) 1994-06-20 2006-05-09 Graphics Controller Integrated Circuit without Memory Interface

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
US10/908,259 Division US7106619B2 (en) 1994-06-20 2005-05-04 Graphics controller integrated circuit without memory interface

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US13/439,585 Continuation US20120188260A1 (en) 1994-06-20 2012-04-04 Graphics controller integrated circuit without memory interface

Publications (1)

Publication Number Publication Date
US20060208764A1 true US20060208764A1 (en) 2006-09-21

Family

ID=22997392

Family Applications (9)

Application Number Title Priority Date Filing Date
US08/698,627 Expired - Lifetime US5650955A (en) 1994-06-20 1996-08-16 Graphics controller integrated circuit without memory interface
US08/699,090 Expired - Lifetime US5703806A (en) 1994-06-20 1996-08-16 Graphics controller integrated circuit without memory interface
US08/883,538 Expired - Lifetime US6041010A (en) 1994-06-20 1997-06-26 Graphics controller integrated circuit without memory interface pins and associated power dissipation
US09/467,942 Expired - Lifetime US6356497B1 (en) 1994-06-20 1999-12-21 Graphics controller integrated circuit without memory interface
US10/042,952 Expired - Fee Related US6771532B2 (en) 1994-06-20 2002-01-07 Graphics controller integrated circuit without memory interface
US10/803,783 Expired - Fee Related US6920077B2 (en) 1994-06-20 2004-03-18 Graphics controller integrated circuit without memory interface
US10/908,259 Expired - Fee Related US7106619B2 (en) 1994-06-20 2005-05-04 Graphics controller integrated circuit without memory interface
US11/382,433 Abandoned US20060208764A1 (en) 1994-06-20 2006-05-09 Graphics Controller Integrated Circuit without Memory Interface
US13/439,585 Abandoned US20120188260A1 (en) 1994-06-20 2012-04-04 Graphics controller integrated circuit without memory interface

Family Applications Before (7)

Application Number Title Priority Date Filing Date
US08/698,627 Expired - Lifetime US5650955A (en) 1994-06-20 1996-08-16 Graphics controller integrated circuit without memory interface
US08/699,090 Expired - Lifetime US5703806A (en) 1994-06-20 1996-08-16 Graphics controller integrated circuit without memory interface
US08/883,538 Expired - Lifetime US6041010A (en) 1994-06-20 1997-06-26 Graphics controller integrated circuit without memory interface pins and associated power dissipation
US09/467,942 Expired - Lifetime US6356497B1 (en) 1994-06-20 1999-12-21 Graphics controller integrated circuit without memory interface
US10/042,952 Expired - Fee Related US6771532B2 (en) 1994-06-20 2002-01-07 Graphics controller integrated circuit without memory interface
US10/803,783 Expired - Fee Related US6920077B2 (en) 1994-06-20 2004-03-18 Graphics controller integrated circuit without memory interface
US10/908,259 Expired - Fee Related US7106619B2 (en) 1994-06-20 2005-05-04 Graphics controller integrated circuit without memory interface

Family Applications After (1)

Application Number Title Priority Date Filing Date
US13/439,585 Abandoned US20120188260A1 (en) 1994-06-20 2012-04-04 Graphics controller integrated circuit without memory interface

Country Status (3)

Country Link
US (9) US5650955A (en)
JP (1) JPH10502181A (en)
WO (1) WO1995035572A1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080113737A1 (en) * 2006-11-10 2008-05-15 Igt Dynamic display systems for gaming machines
US20090131168A1 (en) * 2006-11-10 2009-05-21 Igt Systems and methods for improving a button assembly
US8360892B2 (en) 2006-11-10 2013-01-29 Igt Flexibly configurable button panels for gaming machines

Families Citing this family (67)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10502181A (en) * 1994-06-20 1998-02-24 ネオマジック・コーポレイション Graphics controller integrated circuit without memory interface
JPH0991397A (en) * 1995-09-25 1997-04-04 Nec Corp Separation type pc card
JPH1040679A (en) * 1996-03-05 1998-02-13 Cirrus Logic Inc Single chip frame buffer, frame buffer produced on single chip display sub-system, and structuring method of frame buffer
EP0889478A4 (en) * 1996-03-21 2000-07-19 Hitachi Ltd Data processor with built-in dram
US6504548B2 (en) 1998-09-18 2003-01-07 Hitachi, Ltd. Data processing apparatus having DRAM incorporated therein
US5748547A (en) * 1996-05-24 1998-05-05 Shau; Jeng-Jye High performance semiconductor memory devices having multiple dimension bit lines
US20050036363A1 (en) * 1996-05-24 2005-02-17 Jeng-Jye Shau High performance embedded semiconductor memory devices with multiple dimension first-level bit-lines
US6558049B1 (en) * 1996-06-13 2003-05-06 Texas Instruments Incorporated System for processing video in computing devices that multiplexes multiple video streams into a single video stream which is input to a graphics controller
US5900011A (en) * 1996-07-01 1999-05-04 Sun Microsystems, Inc. Integrated processor/memory device with victim data cache
US5991305A (en) * 1997-02-14 1999-11-23 Advanced Micro Devices, Inc. Integrated multiport switch having independently resettable management information base (MIB)
US6118462A (en) 1997-07-01 2000-09-12 Memtrax Llc Computer system controller having internal memory and external memory control
US8489861B2 (en) * 1997-12-23 2013-07-16 Round Rock Research, Llc Split embedded DRAM processor
US6760833B1 (en) * 1997-08-01 2004-07-06 Micron Technology, Inc. Split embedded DRAM processor
US6903733B1 (en) 1997-11-24 2005-06-07 Pixelworks, Inc. Ultra-high bandwidth multi-port memory system for image scaling applications
US6339434B1 (en) 1997-11-24 2002-01-15 Pixelworks Image scaling circuit for fixed pixed resolution display
US6789146B1 (en) * 1998-02-12 2004-09-07 Micron Technology, Inc. Socket for receiving a single-chip video controller and circuit board containing the same
EP0967588A1 (en) * 1998-06-23 1999-12-29 Koninklijke Philips Electronics N.V. Display controller with animation circuit
US6279135B1 (en) 1998-07-29 2001-08-21 Lsi Logic Corporation On-the-fly row-syndrome generation for DVD controller ECC
US6158040A (en) * 1998-07-29 2000-12-05 Neomagic Corp. Rotated data-aligmnent in wade embedded DRAM for page-mode column ECC in a DVD controller
US6115837A (en) * 1998-07-29 2000-09-05 Neomagic Corp. Dual-column syndrome generation for DVD error correction using an embedded DRAM
US6167551A (en) * 1998-07-29 2000-12-26 Neomagic Corp. DVD controller with embedded DRAM for ECC-block buffering
US6346946B1 (en) * 1998-10-23 2002-02-12 Micron Technology, Inc. Graphics controller embedded in a core logic unit
US6329997B1 (en) 1998-12-04 2001-12-11 Silicon Motion, Inc. 3-D graphics chip with embedded DRAM buffers
US6704023B1 (en) 1998-12-04 2004-03-09 Silicon Motion, Inc. 3-D graphics chip with embedded DRAMbuffers
US6535217B1 (en) * 1999-01-20 2003-03-18 Ati International Srl Integrated circuit for graphics processing including configurable display interface and method therefore
US6424658B1 (en) 1999-01-29 2002-07-23 Neomagic Corp. Store-and-forward network switch using an embedded DRAM
US6519756B1 (en) * 1999-10-05 2003-02-11 Sun Microsystems, Inc. Method and apparatus for building an integrated circuit
US6717577B1 (en) 1999-10-28 2004-04-06 Nintendo Co., Ltd. Vertex cache for 3D computer graphics
US6618048B1 (en) 1999-10-28 2003-09-09 Nintendo Co., Ltd. 3D graphics rendering system for performing Z value clamping in near-Z range to maximize scene resolution of visually important Z components
JP3504202B2 (en) * 1999-12-21 2004-03-08 株式会社ナナオ Display device
US7080234B2 (en) * 2000-03-08 2006-07-18 Sun Microsystems, Inc. VLIW computer processing architecture having the problem counter stored in a register file register
WO2001067234A2 (en) * 2000-03-08 2001-09-13 Sun Microsystems, Inc. Vliw computer processing architecture having a scalable number of register files
US6631439B2 (en) 2000-03-08 2003-10-07 Sun Microsystems, Inc. VLIW computer processing architecture with on-chip dynamic RAM
US7538772B1 (en) 2000-08-23 2009-05-26 Nintendo Co., Ltd. Graphics processing system with enhanced memory controller
US6636214B1 (en) 2000-08-23 2003-10-21 Nintendo Co., Ltd. Method and apparatus for dynamically reconfiguring the order of hidden surface processing based on rendering mode
US6980218B1 (en) * 2000-08-23 2005-12-27 Nintendo Co., Ltd. Method and apparatus for efficient generation of texture coordinate displacements for implementing emboss-style bump mapping in a graphics rendering system
US6707458B1 (en) 2000-08-23 2004-03-16 Nintendo Co., Ltd. Method and apparatus for texture tiling in a graphics system
US6811489B1 (en) 2000-08-23 2004-11-02 Nintendo Co., Ltd. Controller interface for a graphics system
US6937245B1 (en) * 2000-08-23 2005-08-30 Nintendo Co., Ltd. Graphics system with embedded frame buffer having reconfigurable pixel formats
US7576748B2 (en) 2000-11-28 2009-08-18 Nintendo Co. Ltd. Graphics system with embedded frame butter having reconfigurable pixel formats
US7196710B1 (en) 2000-08-23 2007-03-27 Nintendo Co., Ltd. Method and apparatus for buffering graphics data in a graphics system
US6700586B1 (en) 2000-08-23 2004-03-02 Nintendo Co., Ltd. Low cost graphics with stitching processing hardware support for skeletal animation
US6785780B1 (en) * 2000-08-31 2004-08-31 Micron Technology, Inc. Distributed processor memory module and method
US6771270B1 (en) * 2000-10-26 2004-08-03 Hewlett-Packard Development Company, L.P. Graphics memory system that utilizes a variable width, stall-free object builder for coalescing and aligning read data
US6621128B2 (en) 2001-02-28 2003-09-16 United Microelectronics Corp. Method of fabricating a MOS capacitor
US6882082B2 (en) * 2001-03-13 2005-04-19 Micron Technology, Inc. Memory repeater
US7173627B2 (en) * 2001-06-29 2007-02-06 Intel Corporation Apparatus, method and system with a graphics-rendering engine having a graphics context manager
US6885374B2 (en) * 2001-06-29 2005-04-26 Intel Corporation Apparatus, method and system with a graphics-rendering engine having a time allocator
US20030067469A1 (en) * 2001-10-09 2003-04-10 Atousa Soroushi Inklayer image with transparency
US6826628B2 (en) * 2001-10-26 2004-11-30 O2Micro International Limited PCI-PCMCIA smart card reader
TW548419B (en) * 2002-02-01 2003-08-21 Via Tech Inc Circuit structure of integrated graphing function chip and its test method
US6972735B2 (en) * 2002-03-20 2005-12-06 Raymond T. Hebert Head-mounted viewing system for single electronic displays using biocular lens with binocular folding mirrors
AU2003233110A1 (en) * 2002-05-10 2003-11-11 Nec Corporation Display driver ic, display module and electrical device incorporating a graphics engine
US7027056B2 (en) * 2002-05-10 2006-04-11 Nec Electronics (Europe) Gmbh Graphics engine, and display driver IC and display module incorporating the graphics engine
US6870228B2 (en) * 2002-08-07 2005-03-22 Broadcom Corporation System and method to reduce noise in a substrate
JP2005175003A (en) * 2003-12-08 2005-06-30 Matsushita Electric Ind Co Ltd Decoupling capacitor and semiconductor integrated circuit
US8445946B2 (en) * 2003-12-11 2013-05-21 International Business Machines Corporation Gated diode memory cells
US20110026323A1 (en) 2009-07-30 2011-02-03 International Business Machines Corporation Gated Diode Memory Cells
US7341765B2 (en) * 2004-01-27 2008-03-11 Battelle Energy Alliance, Llc Metallic coatings on silicon substrates, and methods of forming metallic coatings on silicon substrates
US7616090B2 (en) * 2004-05-20 2009-11-10 Von Duprin, Inc. Electronic security system
KR100541459B1 (en) * 2004-06-24 2006-01-10 삼성전자주식회사 Computer system
KR100490944B1 (en) * 2004-07-22 2005-05-19 엠시스랩 주식회사 Display driver having dram cell and timing control method for the same
US20080133848A1 (en) * 2006-12-01 2008-06-05 Patel Mukesh K Embedded Memory And Multi-Media Accelerator And Method Of Operating Same
TWI515707B (en) * 2011-04-25 2016-01-01 群創光電股份有限公司 Image display system, shift register and a method for controlling a shift register
DE102015004665A1 (en) 2014-11-22 2016-05-25 Oliver Bartels Graphic controller for measuring devices for displaying a short latency histogram
JP6992737B2 (en) * 2018-12-14 2022-01-13 オムロン株式会社 Design support equipment and design support program
CN112199059B (en) * 2020-09-18 2023-11-14 航天科工防御技术研究试验中心 Generalized intelligent data terminal

Citations (70)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4191956A (en) * 1977-04-22 1980-03-04 U.S. Philips Corporation Device for the display of data on a display apparatus
US4228528A (en) * 1979-02-09 1980-10-14 Bell Telephone Laboratories, Incorporated Memory with redundant rows and columns
US4303986A (en) * 1979-01-09 1981-12-01 Hakan Lans Data processing system and apparatus for color graphics display
US4330849A (en) * 1977-11-17 1982-05-18 Fujitsu Limited Complementary semiconductor memory device
US4472792A (en) * 1981-05-13 1984-09-18 Hitachi, Ltd. Semiconductor memory
US4612458A (en) * 1985-08-28 1986-09-16 Advanced Micro Devices, Inc. Merged PMOS/bipolar logic circuits
US4656605A (en) * 1983-09-02 1987-04-07 Wang Laboratories, Inc. Single in-line memory module
US4691295A (en) * 1983-02-28 1987-09-01 Data General Corporation System for storing and retreiving display information in a plurality of memory planes
US4730316A (en) * 1985-07-25 1988-03-08 International Computers Limited Digital integrated circuits
US4740782A (en) * 1982-07-12 1988-04-26 Hosiden Electronics Co., Ltd. Dot-matrix liquid crystal display
US4812836A (en) * 1985-04-30 1989-03-14 Fanuc Ltd Picture processing apparatus
US4816815A (en) * 1984-01-28 1989-03-28 Ricoh Company, Ltd. Display memory control system
US4845640A (en) * 1987-03-11 1989-07-04 Megascan Technology, Inc. High-speed dual mode graphics memory
US4862415A (en) * 1985-08-14 1989-08-29 Fujitsu Limited Complementary semiconductor device reducing latch-up phenomenon
US4956708A (en) * 1988-06-09 1990-09-11 Oki Electric Industry Co., Ltd. Frame memory control system
US4991112A (en) * 1987-12-23 1991-02-05 U.S. Philips Corporation Graphics system with graphics controller and DRAM controller
US5023614A (en) * 1989-09-13 1991-06-11 Advanced Micro Devices, Inc. Switchable DAC with current surge protection
US5027212A (en) * 1989-12-06 1991-06-25 Videologic Limited Computer based video/graphics display system
US5031092A (en) * 1982-11-26 1991-07-09 Inmos Limited Microcomputer with high density ram in separate isolation well on single chip
US5083047A (en) * 1989-10-26 1992-01-21 Kabushiki Kaisha Toshiba Precharged-type logic circuit having dummy precharge line
US5083294A (en) * 1989-08-04 1992-01-21 Fujitsu Limited Semiconductor memory device having a redundancy
US5144223A (en) * 1991-03-12 1992-09-01 Mosaid, Inc. Bandgap voltage generator
US5148393A (en) * 1988-07-07 1992-09-15 Kabushiki Kaisha Toshiba Mos dynamic semiconductor memory cell
US5170154A (en) * 1990-06-29 1992-12-08 Radius Inc. Bus structure and method for compiling pixel data with priorities
US5175806A (en) * 1989-03-28 1992-12-29 Computer Design, Inc. Method and apparatus for fast surface detail application to an image
US5198708A (en) * 1990-04-06 1993-03-30 Mosaid Inc. Transition detection circuit
US5218674A (en) * 1990-09-14 1993-06-08 Hughes Aircraft Company Hardware bit block transfer operator in a graphics rendering processor
US5227863A (en) * 1989-11-14 1993-07-13 Intelligent Resources Integrated Systems, Inc. Programmable digital video processing system
US5258843A (en) * 1987-09-04 1993-11-02 Texas Instruments Incorporated Method and apparatus for overlaying displayable information
US5265203A (en) * 1990-09-14 1993-11-23 Hughes Aircraft Company Hardware multiprocess scheduler in a graphics rendering processor
US5264712A (en) * 1989-03-20 1993-11-23 Hitachi, Ltd. Semiconductor integrated circuit, method of fabricating the same and apparatus for fabricating the same
US5265218A (en) * 1992-05-19 1993-11-23 Sun Microsystems, Inc. Bus architecture for integrated data and video memory
US5267201A (en) * 1990-04-06 1993-11-30 Mosaid, Inc. High voltage boosted word line supply charge pump regulator for DRAM
US5276798A (en) * 1990-09-14 1994-01-04 Hughes Aircraft Company Multifunction high performance graphics rendering processor
US5283761A (en) * 1992-07-22 1994-02-01 Mosaid Technologies Incorporated Method of multi-level storage in DRAM
US5293540A (en) * 1991-07-29 1994-03-08 Nview Corporation Method and apparatus for merging independently generated internal video with external video
US5293586A (en) * 1988-09-30 1994-03-08 Hitachi, Ltd. Data processing system for development of outline fonts
US5297148A (en) * 1989-04-13 1994-03-22 Sundisk Corporation Flash eeprom system
US5303334A (en) * 1992-03-05 1994-04-12 Adobe Systems Incorporated System for generating a rasterized graphic image
US5305283A (en) * 1990-04-06 1994-04-19 Mosaid, Inc. Dram column address latching technique
US5319388A (en) * 1992-06-22 1994-06-07 Vlsi Technology, Inc. VGA controlled having frame buffer memory arbitration and method therefor
US5323343A (en) * 1989-10-26 1994-06-21 Mitsubishi Denki Kabushiki Kaisha DRAM device comprising a stacked type capacitor and a method of manufacturing thereof
US5336915A (en) * 1991-01-09 1994-08-09 Kabushiki Kaisha Toshiba Semiconductor integrated circuit device having analog circuit and digital circuit formed on one chip
US5353402A (en) * 1992-06-10 1994-10-04 Ati Technologies Inc. Computer graphics display system having combined bus and priority reading of video memory
US5363500A (en) * 1990-01-25 1994-11-08 Seiko Epson Corporation System for improving access time to video display data using shadow memory sized differently from a display memory
US5365126A (en) * 1991-01-24 1994-11-15 Texas Instruments Incorporated Graphics system including an output buffer circuit with controlled Miller effect capacitance
US5386573A (en) * 1992-05-20 1995-01-31 Nec Corporation Single chip microcomputer with interrupt processing capability during hold states
US5392393A (en) * 1993-06-04 1995-02-21 Sun Microsystems, Inc. Architecture for a high performance three dimensional graphics accelerator
US5396586A (en) * 1990-09-12 1995-03-07 Texas Instruments Incorporated Apparatus and method for filling regions bounded by conic curves
US5398047A (en) * 1988-05-11 1995-03-14 Hitachi, Ltd. Semiconductor integrated circuit device including high-speed operating circuit and low-speed operating circuit, and system using the same
US5404042A (en) * 1990-05-02 1995-04-04 Mitsubishi Denki Kabushiki Kaisha Semiconductor memory device having a plurality of well regions of different conductivities
US5414662A (en) * 1990-04-06 1995-05-09 Mosaid Technologies Incorporated Dynamic random access memory using imperfect isolating transistors
US5426467A (en) * 1990-11-30 1995-06-20 Sony Corporation Video special effect processor
US5434969A (en) * 1983-12-30 1995-07-18 Texas Instruments, Incorporated Video display system using memory with a register arranged to present an entire pixel at once to the display
US5442748A (en) * 1993-10-29 1995-08-15 Sun Microsystems, Inc. Architecture of output switching circuitry for frame buffer
US5448733A (en) * 1993-07-16 1995-09-05 International Business Machines Corp. Data search and compression device and method for searching and compressing repeating data
US5473573A (en) * 1994-05-09 1995-12-05 Cirrus Logic, Inc. Single chip controller-memory device and a memory architecture and methods suitable for implementing the same
US5537128A (en) * 1993-08-04 1996-07-16 Cirrus Logic, Inc. Shared memory for split-panel LCD display systems
US5572655A (en) * 1993-01-12 1996-11-05 Lsi Logic Corporation High-performance integrated bit-mapped graphics controller
US5650955A (en) * 1994-06-20 1997-07-22 Neomagic Corporation Graphics controller integrated circuit without memory interface
US5659715A (en) * 1993-11-30 1997-08-19 Vlsi Technology, Inc. Method and apparatus for allocating display memory and main memory employing access request arbitration and buffer control
US5694143A (en) * 1994-06-02 1997-12-02 Accelerix Limited Single chip frame buffer and graphics accelerator
US5712664A (en) * 1993-10-14 1998-01-27 Alliance Semiconductor Corporation Shared memory graphics accelerator system
US5717697A (en) * 1990-06-27 1998-02-10 Texas Instruments Incorporated Test circuits and methods for integrated circuit having memory and non-memory circuits by accumulating bits of a particular logic state
US5790839A (en) * 1996-12-20 1998-08-04 International Business Machines Corporation System integration of DRAM macros and logic cores in a single chip architecture
US5861961A (en) * 1992-04-29 1999-01-19 Canon Kabushiki Kaisha Integrated graphics system for a color copier
US6000027A (en) * 1992-08-25 1999-12-07 Texas Instruments Incorporated Method and apparatus for improved graphics/image processing using a processor and a memory
US6346946B1 (en) * 1998-10-23 2002-02-12 Micron Technology, Inc. Graphics controller embedded in a core logic unit
US6424658B1 (en) * 1999-01-29 2002-07-23 Neomagic Corp. Store-and-forward network switch using an embedded DRAM
US6480199B1 (en) * 1998-06-25 2002-11-12 Sony Corporation Image processing apparatus

Family Cites Families (44)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US260578A (en) * 1882-07-04 Dry and plastic materials
US492840A (en) * 1893-03-07 Method of producing raised metallic designs on-bottles
US383080A (en) * 1888-05-15 Coach-la iv
US474366A (en) * 1892-05-10 Advertising-wagon
US547892A (en) * 1895-10-15 Ernst paul rjessner
US165441A (en) * 1875-07-13 Improvement in vehicle-springs
US334524A (en) * 1886-01-19 Pipe-testing machine
GB269049A (en) 1926-09-08 1927-04-14 Berkel Patent Nv Improvements relating to the removal of slices clear of the rotary knives of slicingmachines
US2217066A (en) * 1938-07-11 1940-10-08 Crosley Corp Station preselector
US2208344A (en) * 1939-04-10 1940-07-16 Printasign Corp Advertising display device
US3628286A (en) * 1970-03-07 1971-12-21 Gakken Co Ltd An amphibian toy
FR2426292A1 (en) * 1978-05-18 1979-12-14 Thomson Csf GRAPHIC TERMINAL PROCESSOR
US4211293A (en) * 1979-02-21 1980-07-08 Dresser Industries, Inc. Variable orifice sleeve valve hydraulic jar tool
US4815815A (en) * 1979-11-13 1989-03-28 Kei Mori Device and a method of directing light energy to a predetermined area in the sea
JPS60252394A (en) * 1984-05-22 1985-12-13 インタ−ナショナル ビジネス マシ−ンズ コ−ポレ−ション Color image display unit
DE3628286A1 (en) * 1986-08-20 1988-02-25 Staerk Juergen Dipl Ing Dipl I Processor with integrated memory
US4754433A (en) * 1986-09-16 1988-06-28 Ibm Corporation Dynamic ram having multiplexed twin I/O line pairs
US5202962A (en) * 1987-03-31 1993-04-13 Hitachi, Ltd. Graphic processor suitable for graphic data transfer and conversion processes
GB8718057D0 (en) * 1987-07-30 1987-09-03 Int Computers Ltd Digital display system
US5047760A (en) * 1988-03-23 1991-09-10 Dupont Pixel Systems Limited Crossbar converter
GB8807849D0 (en) * 1988-04-05 1988-05-05 Int Computers Ltd Data processing apparatus with page mode memory
JPH01271766A (en) 1988-04-25 1989-10-30 Canon Inc Image forming processor
US4951232A (en) * 1988-09-12 1990-08-21 Silicon Graphics, Inc. Method for updating pipelined, single port Z-buffer by segments on a scan line
JPH02201797A (en) * 1989-01-31 1990-08-09 Toshiba Corp Semiconductor memory device
JP3114209B2 (en) * 1990-01-25 2000-12-04 セイコーエプソン株式会社 Information processing apparatus, method for speeding up display unit, and display control one-chip IC
CA2043995C (en) * 1990-06-13 1997-06-24 Kenji Ohta Magneto-optical recording/reproducing device
JPH06102842A (en) * 1990-08-06 1994-04-15 Texas Instr Inc <Ti> Graphic display system including video random access memory having divided serial register and operation counter
JPH04134396A (en) 1990-09-27 1992-05-08 Toshiba Corp Display controller
GB9027678D0 (en) * 1990-12-20 1991-02-13 Ncr Co Videographics display system
US5321806A (en) * 1991-08-21 1994-06-14 Digital Equipment Corporation Method and apparatus for transmitting graphics command in a computer graphics system
US5198706A (en) * 1991-10-15 1993-03-30 National Semiconductor Ferroelectric programming cell for configurable logic
DE69227436T2 (en) * 1991-12-17 1999-04-15 Sgs Thomson Microelectronics Integrated circuit with mutually controlled differential data lines
US5283781A (en) * 1991-12-23 1994-02-01 Square D Company Apparatus for receiving and modifying a serial data packet from a communications network to indicate its status
US5383500A (en) * 1992-03-19 1995-01-24 Shell Oil Company Automatic refuelling system
KR940003026A (en) 1992-07-13 1994-02-19 김광호 Semiconductor device using triple well
US5469401A (en) * 1992-07-14 1995-11-21 Mosaid Technologies Incorporated Column redundancy scheme for DRAM using normal and redundant column decoders programmed with defective array address and defective column address
US5702779A (en) * 1995-07-17 1997-12-30 Webasto Sunroofs Inc Plastic panel assembly for use in a vehicle
US5660965A (en) * 1996-06-17 1997-08-26 Xerox Corporation Toner processes
US6083047A (en) * 1997-01-16 2000-07-04 Berg Technology, Inc. Modular electrical PCB assembly connector
US5929729A (en) * 1997-10-24 1999-07-27 Com Dev Limited Printed lumped element stripline circuit ground-signal-ground structure
DE19829224B4 (en) * 1998-06-30 2005-12-15 Brainlab Ag Method for localizing treatment goals in the area of soft body parts
US20040166241A1 (en) 2003-02-20 2004-08-26 Henkel Loctite Corporation Molding compositions containing quaternary organophosphonium salts
JP4471123B2 (en) 2003-04-17 2010-06-02 日産化学工業株式会社 Porous underlayer film and composition for forming underlayer film for forming porous underlayer film
US7366281B2 (en) 2003-11-12 2008-04-29 Ge Invision Inc. System and method for detecting contraband

Patent Citations (79)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4191956A (en) * 1977-04-22 1980-03-04 U.S. Philips Corporation Device for the display of data on a display apparatus
US4330849A (en) * 1977-11-17 1982-05-18 Fujitsu Limited Complementary semiconductor memory device
US4303986A (en) * 1979-01-09 1981-12-01 Hakan Lans Data processing system and apparatus for color graphics display
US4228528B2 (en) * 1979-02-09 1992-10-06 Memory with redundant rows and columns
US4228528B1 (en) * 1979-02-09 1983-07-26
US4228528A (en) * 1979-02-09 1980-10-14 Bell Telephone Laboratories, Incorporated Memory with redundant rows and columns
US4472792A (en) * 1981-05-13 1984-09-18 Hitachi, Ltd. Semiconductor memory
US4740782A (en) * 1982-07-12 1988-04-26 Hosiden Electronics Co., Ltd. Dot-matrix liquid crystal display
US5031092A (en) * 1982-11-26 1991-07-09 Inmos Limited Microcomputer with high density ram in separate isolation well on single chip
US4691295A (en) * 1983-02-28 1987-09-01 Data General Corporation System for storing and retreiving display information in a plurality of memory planes
US4656605A (en) * 1983-09-02 1987-04-07 Wang Laboratories, Inc. Single in-line memory module
US5434969A (en) * 1983-12-30 1995-07-18 Texas Instruments, Incorporated Video display system using memory with a register arranged to present an entire pixel at once to the display
US4816815A (en) * 1984-01-28 1989-03-28 Ricoh Company, Ltd. Display memory control system
US4812836A (en) * 1985-04-30 1989-03-14 Fanuc Ltd Picture processing apparatus
US4730316A (en) * 1985-07-25 1988-03-08 International Computers Limited Digital integrated circuits
US4862415A (en) * 1985-08-14 1989-08-29 Fujitsu Limited Complementary semiconductor device reducing latch-up phenomenon
US4612458A (en) * 1985-08-28 1986-09-16 Advanced Micro Devices, Inc. Merged PMOS/bipolar logic circuits
US4845640A (en) * 1987-03-11 1989-07-04 Megascan Technology, Inc. High-speed dual mode graphics memory
US5258843A (en) * 1987-09-04 1993-11-02 Texas Instruments Incorporated Method and apparatus for overlaying displayable information
US4991112A (en) * 1987-12-23 1991-02-05 U.S. Philips Corporation Graphics system with graphics controller and DRAM controller
US5398047A (en) * 1988-05-11 1995-03-14 Hitachi, Ltd. Semiconductor integrated circuit device including high-speed operating circuit and low-speed operating circuit, and system using the same
US4956708A (en) * 1988-06-09 1990-09-11 Oki Electric Industry Co., Ltd. Frame memory control system
US5148393A (en) * 1988-07-07 1992-09-15 Kabushiki Kaisha Toshiba Mos dynamic semiconductor memory cell
US5293586A (en) * 1988-09-30 1994-03-08 Hitachi, Ltd. Data processing system for development of outline fonts
US5264712A (en) * 1989-03-20 1993-11-23 Hitachi, Ltd. Semiconductor integrated circuit, method of fabricating the same and apparatus for fabricating the same
US5175806A (en) * 1989-03-28 1992-12-29 Computer Design, Inc. Method and apparatus for fast surface detail application to an image
US5297148A (en) * 1989-04-13 1994-03-22 Sundisk Corporation Flash eeprom system
US5083294A (en) * 1989-08-04 1992-01-21 Fujitsu Limited Semiconductor memory device having a redundancy
US5023614A (en) * 1989-09-13 1991-06-11 Advanced Micro Devices, Inc. Switchable DAC with current surge protection
US5083047A (en) * 1989-10-26 1992-01-21 Kabushiki Kaisha Toshiba Precharged-type logic circuit having dummy precharge line
US5323343A (en) * 1989-10-26 1994-06-21 Mitsubishi Denki Kabushiki Kaisha DRAM device comprising a stacked type capacitor and a method of manufacturing thereof
US5227863A (en) * 1989-11-14 1993-07-13 Intelligent Resources Integrated Systems, Inc. Programmable digital video processing system
US5027212A (en) * 1989-12-06 1991-06-25 Videologic Limited Computer based video/graphics display system
US5363500A (en) * 1990-01-25 1994-11-08 Seiko Epson Corporation System for improving access time to video display data using shadow memory sized differently from a display memory
US5406523A (en) * 1990-04-06 1995-04-11 Mosaid Technologies Incorporated High voltage boosted word line supply charge pump and regulator for DRAM
US5267201A (en) * 1990-04-06 1993-11-30 Mosaid, Inc. High voltage boosted word line supply charge pump regulator for DRAM
US5198708A (en) * 1990-04-06 1993-03-30 Mosaid Inc. Transition detection circuit
US5414662A (en) * 1990-04-06 1995-05-09 Mosaid Technologies Incorporated Dynamic random access memory using imperfect isolating transistors
US5305283A (en) * 1990-04-06 1994-04-19 Mosaid, Inc. Dram column address latching technique
US5404042A (en) * 1990-05-02 1995-04-04 Mitsubishi Denki Kabushiki Kaisha Semiconductor memory device having a plurality of well regions of different conductivities
US5717697A (en) * 1990-06-27 1998-02-10 Texas Instruments Incorporated Test circuits and methods for integrated circuit having memory and non-memory circuits by accumulating bits of a particular logic state
US5170154A (en) * 1990-06-29 1992-12-08 Radius Inc. Bus structure and method for compiling pixel data with priorities
US5396586A (en) * 1990-09-12 1995-03-07 Texas Instruments Incorporated Apparatus and method for filling regions bounded by conic curves
US5276798A (en) * 1990-09-14 1994-01-04 Hughes Aircraft Company Multifunction high performance graphics rendering processor
US5218674A (en) * 1990-09-14 1993-06-08 Hughes Aircraft Company Hardware bit block transfer operator in a graphics rendering processor
US5265203A (en) * 1990-09-14 1993-11-23 Hughes Aircraft Company Hardware multiprocess scheduler in a graphics rendering processor
US5426467A (en) * 1990-11-30 1995-06-20 Sony Corporation Video special effect processor
US5336915A (en) * 1991-01-09 1994-08-09 Kabushiki Kaisha Toshiba Semiconductor integrated circuit device having analog circuit and digital circuit formed on one chip
US5365126A (en) * 1991-01-24 1994-11-15 Texas Instruments Incorporated Graphics system including an output buffer circuit with controlled Miller effect capacitance
US5144223A (en) * 1991-03-12 1992-09-01 Mosaid, Inc. Bandgap voltage generator
US5293540A (en) * 1991-07-29 1994-03-08 Nview Corporation Method and apparatus for merging independently generated internal video with external video
US5303334A (en) * 1992-03-05 1994-04-12 Adobe Systems Incorporated System for generating a rasterized graphic image
US5861961A (en) * 1992-04-29 1999-01-19 Canon Kabushiki Kaisha Integrated graphics system for a color copier
US5265218A (en) * 1992-05-19 1993-11-23 Sun Microsystems, Inc. Bus architecture for integrated data and video memory
US5386573A (en) * 1992-05-20 1995-01-31 Nec Corporation Single chip microcomputer with interrupt processing capability during hold states
US5353402A (en) * 1992-06-10 1994-10-04 Ati Technologies Inc. Computer graphics display system having combined bus and priority reading of video memory
US5319388A (en) * 1992-06-22 1994-06-07 Vlsi Technology, Inc. VGA controlled having frame buffer memory arbitration and method therefor
US5283761A (en) * 1992-07-22 1994-02-01 Mosaid Technologies Incorporated Method of multi-level storage in DRAM
US6000027A (en) * 1992-08-25 1999-12-07 Texas Instruments Incorporated Method and apparatus for improved graphics/image processing using a processor and a memory
US5572655A (en) * 1993-01-12 1996-11-05 Lsi Logic Corporation High-performance integrated bit-mapped graphics controller
US5392393A (en) * 1993-06-04 1995-02-21 Sun Microsystems, Inc. Architecture for a high performance three dimensional graphics accelerator
US5448733A (en) * 1993-07-16 1995-09-05 International Business Machines Corp. Data search and compression device and method for searching and compressing repeating data
US5537128A (en) * 1993-08-04 1996-07-16 Cirrus Logic, Inc. Shared memory for split-panel LCD display systems
US5712664A (en) * 1993-10-14 1998-01-27 Alliance Semiconductor Corporation Shared memory graphics accelerator system
US5442748A (en) * 1993-10-29 1995-08-15 Sun Microsystems, Inc. Architecture of output switching circuitry for frame buffer
US5659715A (en) * 1993-11-30 1997-08-19 Vlsi Technology, Inc. Method and apparatus for allocating display memory and main memory employing access request arbitration and buffer control
US5473573A (en) * 1994-05-09 1995-12-05 Cirrus Logic, Inc. Single chip controller-memory device and a memory architecture and methods suitable for implementing the same
US5694143A (en) * 1994-06-02 1997-12-02 Accelerix Limited Single chip frame buffer and graphics accelerator
US5650955A (en) * 1994-06-20 1997-07-22 Neomagic Corporation Graphics controller integrated circuit without memory interface
US5703806A (en) * 1994-06-20 1997-12-30 Neomagic Corporation Graphics controller integrated circuit without memory interface
US6041010A (en) * 1994-06-20 2000-03-21 Neomagic Corporation Graphics controller integrated circuit without memory interface pins and associated power dissipation
US6356497B1 (en) * 1994-06-20 2002-03-12 Neomagic Corporation Graphics controller integrated circuit without memory interface
US6771532B2 (en) * 1994-06-20 2004-08-03 Neomagic Corporation Graphics controller integrated circuit without memory interface
US6920077B2 (en) * 1994-06-20 2005-07-19 Neomagic Corporation Graphics controller integrated circuit without memory interface
US20120188260A1 (en) * 1994-06-20 2012-07-26 Intellectual Ventures I Llc Graphics controller integrated circuit without memory interface
US5790839A (en) * 1996-12-20 1998-08-04 International Business Machines Corporation System integration of DRAM macros and logic cores in a single chip architecture
US6480199B1 (en) * 1998-06-25 2002-11-12 Sony Corporation Image processing apparatus
US6346946B1 (en) * 1998-10-23 2002-02-12 Micron Technology, Inc. Graphics controller embedded in a core logic unit
US6424658B1 (en) * 1999-01-29 2002-07-23 Neomagic Corp. Store-and-forward network switch using an embedded DRAM

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080113737A1 (en) * 2006-11-10 2008-05-15 Igt Dynamic display systems for gaming machines
US20090131168A1 (en) * 2006-11-10 2009-05-21 Igt Systems and methods for improving a button assembly
EP2084683A2 (en) * 2006-11-10 2009-08-05 Igt Dynamic display systems for gaming machines
US8337314B2 (en) 2006-11-10 2012-12-25 Igt Systems and methods for improving a button assembly
US8360892B2 (en) 2006-11-10 2013-01-29 Igt Flexibly configurable button panels for gaming machines
US8684846B2 (en) 2006-11-10 2014-04-01 Igt Dynamic display systems for gaming machines
US8858342B2 (en) 2006-11-10 2014-10-14 Igt Flexibly configurable button panels for gaming machines

Also Published As

Publication number Publication date
US6920077B2 (en) 2005-07-19
US6771532B2 (en) 2004-08-03
US20020149560A1 (en) 2002-10-17
US6041010A (en) 2000-03-21
US5650955A (en) 1997-07-22
US20050180225A1 (en) 2005-08-18
US20120188260A1 (en) 2012-07-26
US6356497B1 (en) 2002-03-12
WO1995035572A1 (en) 1995-12-28
US20040179015A1 (en) 2004-09-16
JPH10502181A (en) 1998-02-24
US7106619B2 (en) 2006-09-12
US5703806A (en) 1997-12-30

Similar Documents

Publication Publication Date Title
US7106619B2 (en) Graphics controller integrated circuit without memory interface
US8860633B2 (en) Method and apparatus for configuring multiple displays associated with a computing system
US5325338A (en) Dual port memory, such as used in color lookup tables for video systems
EP0760512B1 (en) Low pin count - wide memory devices and systems and methods using the same
US6573765B2 (en) Input-output buffer circuit and method for avoiding inadvertent conduction of a pull-up transistor
US4723226A (en) Video display system using serial/parallel access memories
JPH06100895B2 (en) Electronic device
EP0189576B1 (en) Multiple pixel mapped video memory system
US4368461A (en) Digital data processing device
US6160561A (en) Method for displaying data on a video display
US5065356A (en) Shared use of keyboard and memory lines
US5363494A (en) Bus interface circuit for connecting bus lines having different bit ranges
US5519667A (en) Random access memory with apparatus for reducing power consumption
KR102404059B1 (en) Interface circuit and interface device
US5440522A (en) Connection/disconnection control circuit for data lines between memory groups
US11483000B2 (en) Interface circuit and interface device
JPH05182454A (en) Dual port memory device
Kotani et al. A 50-MHz 8-Mbit video RAM with a column direction drive sense amplifier
US5670983A (en) Video controller with shared configuration pins
US4841298A (en) Bit pattern conversion system
JP2002278519A (en) Active matrix liquid crystal display and drive method therefor
US6654913B1 (en) Alternate port apparatus for manufacturing test of integrated serial bus and method therefor
JP2565145B2 (en) Image display device
JPH0637259A (en) Semiconductor integrated circuit
JPH04353697A (en) Semiconductor device

Legal Events

Date Code Title Description
AS Assignment

Owner name: FAUST COMMUNICATIONS HOLDINGS, LLC, DELAWARE

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:NEOMAGIC CORPORATION;REEL/FRAME:020617/0966

Effective date: 20080213

AS Assignment

Owner name: INTELLECTUAL VENTURES I LLC, DELAWARE

Free format text: MERGER;ASSIGNOR:FAUST COMMUNICATIONS HOLDINGS, LLC;REEL/FRAME:026636/0268

Effective date: 20110718

STCB Information on status: application discontinuation

Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION