CA2050658A1 - Dual hardware channels and hardware context switching in a graphics rendering processor - Google Patents
Dual hardware channels and hardware context switching in a graphics rendering processorInfo
- Publication number
- CA2050658A1 CA2050658A1 CA2050658A CA2050658A CA2050658A1 CA 2050658 A1 CA2050658 A1 CA 2050658A1 CA 2050658 A CA2050658 A CA 2050658A CA 2050658 A CA2050658 A CA 2050658A CA 2050658 A1 CA2050658 A1 CA 2050658A1
- Authority
- CA
- Canada
- Prior art keywords
- task
- channel
- hardware
- context switching
- graphics processor
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4812—Task transfer initiation or dispatching by interrupt, e.g. masked
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/14—Digital output to display device ; Cooperation and interconnection of the display device with other functional units
- G06F3/1423—Digital output to display device ; Cooperation and interconnection of the display device with other functional units controlling a plurality of local displays, e.g. CRT and flat panel display
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G2360/00—Aspects of the architecture of display systems
- G09G2360/04—Display device controller operating with a plurality of display units
Abstract
An improved graphics processor (10) has rapid response to higher priority tasks. It is implemented with multiple channels of FIFO input circuits (60, 62 and 61, 63) and with task interrupt and context switching capability. The graphics processor (10) servicing a first channel task is interrupted when a higher priority task is available in a second channel. Context switching facilitates interrupting of the lower priority first channel task, then saving of the context of the first channel task, then performing high-er priority second channel task, then restoring the interrupted first channel task, and then continuing with the processing of the restored first channel task. It is also imple-mented with concurrent downloading from a host computer (14) and processing by the graphics processor (10) and implemented with general purpose graphics processingcapability, including multi-level nested interrupts and nested subroutines.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US58270990A | 1990-09-14 | 1990-09-14 | |
US582,709 | 1990-09-14 |
Publications (2)
Publication Number | Publication Date |
---|---|
CA2050658A1 true CA2050658A1 (en) | 1992-03-15 |
CA2050658C CA2050658C (en) | 1997-01-28 |
Family
ID=24330218
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CA002050658A Expired - Fee Related CA2050658C (en) | 1990-09-14 | 1991-09-04 | Dual hardware channels and hardware context switching in a graphics rendering processor |
Country Status (4)
Country | Link |
---|---|
US (1) | US5371849A (en) |
EP (1) | EP0475421A3 (en) |
JP (1) | JPH04299389A (en) |
CA (1) | CA2050658C (en) |
Families Citing this family (55)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AU2509192A (en) * | 1991-08-21 | 1993-03-16 | Digital Equipment Corporation | Address method for computer graphics system |
US5321810A (en) * | 1991-08-21 | 1994-06-14 | Digital Equipment Corporation | Address method for computer graphics system |
US5388841A (en) * | 1992-01-30 | 1995-02-14 | A/N Inc. | External memory system having programmable graphics processor for use in a video game system or the like |
US5394524A (en) * | 1992-08-07 | 1995-02-28 | International Business Machines Corporation | Method and apparatus for processing two graphics data streams in parallel |
US5596749A (en) * | 1992-09-21 | 1997-01-21 | Texas Instruments Incorporated | Arbitration request sequencer |
US5613126A (en) * | 1994-05-31 | 1997-03-18 | Advanced Micro Devices, Inc. | Timer tick auto-chaining technique within a symmetrical multiprocessing system |
US5768626A (en) * | 1994-06-24 | 1998-06-16 | Intel Corporation | Method and apparatus for servicing a plurality of FIFO's in a capture gate array |
DE69615431T2 (en) * | 1995-03-15 | 2002-05-23 | Koninkl Philips Electronics Nv | Data processing system for performing tasks of different priorities and modem incorporating this system |
US5812150A (en) * | 1995-04-28 | 1998-09-22 | Ati Technologies Inc. | Device synchronization on a graphics accelerator |
US5760792A (en) * | 1995-05-01 | 1998-06-02 | Intergraph Corporation | Fifo logical addresses for control and error recovery |
US5794037A (en) * | 1995-05-01 | 1998-08-11 | Intergraph Corporation | Direct access to slave processing by unprotected application using context saving and restoration |
US5659750A (en) * | 1995-05-15 | 1997-08-19 | Nvidia Corporation | Apparatus for context switching of input/output devices in responses to commands from unprivileged application programs |
US5673416A (en) * | 1995-06-07 | 1997-09-30 | Seiko Epson Corporation | Memory request and control unit including a mechanism for issuing and removing requests for memory access |
US5696940A (en) * | 1995-09-29 | 1997-12-09 | Intel Corporation | Apparatus and method for sharing first-in first-out memory space between two streams of data |
US5896141A (en) * | 1996-07-26 | 1999-04-20 | Hewlett-Packard Company | System and method for virtual device access in a computer system |
US6148326A (en) * | 1996-09-30 | 2000-11-14 | Lsi Logic Corporation | Method and structure for independent disk and host transfer in a storage subsystem target device |
US6247040B1 (en) | 1996-09-30 | 2001-06-12 | Lsi Logic Corporation | Method and structure for automated switching between multiple contexts in a storage subsystem target device |
US6081849A (en) * | 1996-10-01 | 2000-06-27 | Lsi Logic Corporation | Method and structure for switching multiple contexts in storage subsystem target device |
US5949994A (en) * | 1997-02-12 | 1999-09-07 | The Dow Chemical Company | Dedicated context-cycling computer with timed context |
JP3530360B2 (en) * | 1997-10-27 | 2004-05-24 | 株式会社ルネサステクノロジ | Data processing device and data processing system |
US6145033A (en) * | 1998-07-17 | 2000-11-07 | Seiko Epson Corporation | Management of display FIFO requests for DRAM access wherein low priority requests are initiated when FIFO level is below/equal to high threshold value |
US6243770B1 (en) * | 1998-07-21 | 2001-06-05 | Micron Technology, Inc. | Method for determining status of multiple interlocking FIFO buffer structures based on the position of at least one pointer of each of the multiple FIFO buffers |
US6119207A (en) * | 1998-08-20 | 2000-09-12 | Seiko Epson Corporation | Low priority FIFO request assignment for DRAM access |
US6252600B1 (en) | 1998-10-02 | 2001-06-26 | International Business Machines Corporation | Computer graphics system with dual FIFO interface |
US6339427B1 (en) * | 1998-12-15 | 2002-01-15 | Ati International Srl | Graphics display list handler and method |
US7233331B2 (en) * | 2000-03-16 | 2007-06-19 | Square Enix Co., Ltd. | Parallel object task engine and processing method |
US6557083B1 (en) * | 2000-06-30 | 2003-04-29 | Intel Corporation | Memory system for multiple data types |
US6724391B1 (en) * | 2000-06-30 | 2004-04-20 | Intel Corporation | Mechanism for implementing Z-compression transparently |
US7196710B1 (en) * | 2000-08-23 | 2007-03-27 | Nintendo Co., Ltd. | Method and apparatus for buffering graphics data in a graphics system |
US6624815B1 (en) | 2000-08-31 | 2003-09-23 | National Semiconductor Corporation | System, method, and apparatus for creating character boxes for on screen displays |
JP2004140575A (en) * | 2002-10-17 | 2004-05-13 | Sony Corp | Data processing apparatus, data processing method and information storage medium, and computer program |
JP4094931B2 (en) * | 2002-10-29 | 2008-06-04 | 三菱電機株式会社 | Transceiver integrated circuit and communication module |
EP1435619A3 (en) * | 2003-01-02 | 2007-07-18 | Samsung Electronics Co., Ltd. | Multimedia apparatus with "Slide-Show" and relevant audio output |
KR20040062311A (en) * | 2003-01-02 | 2004-07-07 | 삼성전자주식회사 | File-list displaying equipment and method in A/V recording/reproducing apparatus |
US7673304B2 (en) * | 2003-02-18 | 2010-03-02 | Microsoft Corporation | Multithreaded kernel for graphics processing unit |
US7701949B1 (en) * | 2003-06-24 | 2010-04-20 | Cisco Technology, Inc. | System and method for switching high priority traffic with low latency |
JP4190476B2 (en) * | 2004-09-22 | 2008-12-03 | 株式会社ソニー・コンピュータエンタテインメント | Graphic processor, control processor, and information processing apparatus |
US7978204B2 (en) * | 2005-04-29 | 2011-07-12 | Nvidia Corporation | Transparency-conserving system, method and computer program product to generate and blend images |
US7716387B2 (en) * | 2005-07-14 | 2010-05-11 | Canon Kabushiki Kaisha | Memory control apparatus and method |
US7580040B2 (en) | 2005-11-10 | 2009-08-25 | Via Technologies, Inc. | Interruptible GPU and method for processing multiple contexts and runlists |
US7583268B2 (en) * | 2005-11-10 | 2009-09-01 | Via Technologies, Inc. | Graphics pipeline precise interrupt method and apparatus |
US7545381B2 (en) * | 2005-11-10 | 2009-06-09 | Via Technologies, Inc. | Interruptible GPU and method for context saving and restoring |
US7590774B2 (en) * | 2005-12-01 | 2009-09-15 | Kabushiki Kaisha Toshiba | Method and system for efficient context swapping |
US7325086B2 (en) * | 2005-12-15 | 2008-01-29 | Via Technologies, Inc. | Method and system for multiple GPU support |
US7340557B2 (en) * | 2005-12-15 | 2008-03-04 | Via Technologies, Inc. | Switching method and system for multiple GPU support |
US8232991B1 (en) * | 2006-11-03 | 2012-07-31 | Nvidia Corporation | Z-test result reconciliation with multiple partitions |
US8854381B2 (en) * | 2009-09-03 | 2014-10-07 | Advanced Micro Devices, Inc. | Processing unit that enables asynchronous task dispatch |
DE102011119004A1 (en) * | 2011-11-19 | 2013-05-23 | Diehl Aerospace Gmbh | Graphics processing device, display device for an aircraft cockpit and method for displaying graphics data |
US9361116B2 (en) * | 2012-12-28 | 2016-06-07 | Intel Corporation | Apparatus and method for low-latency invocation of accelerators |
US10140129B2 (en) | 2012-12-28 | 2018-11-27 | Intel Corporation | Processing core having shared front end unit |
US9417873B2 (en) | 2012-12-28 | 2016-08-16 | Intel Corporation | Apparatus and method for a hybrid latency-throughput processor |
US10346195B2 (en) | 2012-12-29 | 2019-07-09 | Intel Corporation | Apparatus and method for invocation of a multi threaded accelerator |
US10026142B2 (en) * | 2015-04-14 | 2018-07-17 | Intel Corporation | Supporting multi-level nesting of command buffers in graphics command streams at computing devices |
US10503456B2 (en) | 2017-05-05 | 2019-12-10 | Nvidia Corporation | Method and apparatus for rendering perspective-correct images for a tilted multi-display environment |
US11335296B2 (en) | 2020-09-14 | 2022-05-17 | Apple Inc. | Low-latency context switch systems and methods |
Family Cites Families (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3962684A (en) * | 1971-08-31 | 1976-06-08 | Texas Instruments Incorporated | Computing system interface using common parallel bus and segmented addressing |
DE2659662C3 (en) * | 1976-12-30 | 1981-10-08 | Ibm Deutschland Gmbh, 7000 Stuttgart | Priority level controlled interrupt device |
US4398244A (en) * | 1980-05-07 | 1983-08-09 | Fairchild Camera & Instrument Corporation | Interruptible microprogram sequencing unit and microprogrammed apparatus utilizing same |
US4430707A (en) * | 1981-03-05 | 1984-02-07 | Burroughs Corporation | Microprogrammed digital data processing system employing multi-phase subroutine control for concurrently executing tasks |
JPS6039234A (en) * | 1983-08-10 | 1985-03-01 | Mitsubishi Electric Corp | Crt terminal device |
DE3473665D1 (en) * | 1984-06-25 | 1988-09-29 | Ibm | Graphical display apparatus with pipelined processors |
US4858107A (en) * | 1985-03-11 | 1989-08-15 | General Electric Company | Computer device display system using conditionally asynchronous memory accessing by video display controller |
US4744048A (en) * | 1985-10-09 | 1988-05-10 | American Telephone And Telegraph Company | Display context switching arrangement |
JPS62184560A (en) * | 1986-02-07 | 1987-08-12 | Matsushita Electric Ind Co Ltd | Input/output buffer controller |
US4862392A (en) * | 1986-03-07 | 1989-08-29 | Star Technologies, Inc. | Geometry processor for graphics display system |
US4839800A (en) * | 1986-08-29 | 1989-06-13 | Bull Hn Information Systems Inc. | Data processing system with a fast interrupt |
US4916301A (en) * | 1987-02-12 | 1990-04-10 | International Business Machines Corporation | Graphics function controller for a high performance video display system |
US5138702A (en) * | 1987-04-17 | 1992-08-11 | Minolta Camera Co., Ltd. | External image input/output device connectable image processing system |
US5010515A (en) * | 1987-07-28 | 1991-04-23 | Raster Technologies, Inc. | Parallel graphics processor with workload distributing and dependency mechanisms and method for distributing workload |
US4928247A (en) * | 1987-08-13 | 1990-05-22 | Digital Equipment Corporation | Method and apparatus for the continuous and asynchronous traversal and processing of graphics data structures |
JPH0727571B2 (en) * | 1987-10-26 | 1995-03-29 | テクトロニックス・インコーポレイテッド | Raster scan display device and graphic data transfer method |
US4958303A (en) * | 1988-05-12 | 1990-09-18 | Digital Equipment Corporation | Apparatus for exchanging pixel data among pixel processors |
JPH01318140A (en) * | 1988-06-20 | 1989-12-22 | Canon Inc | Multiprocessor system |
US5127098A (en) * | 1989-04-12 | 1992-06-30 | Sun Microsystems, Inc. | Method and apparatus for the context switching of devices |
-
1991
- 1991-09-04 CA CA002050658A patent/CA2050658C/en not_active Expired - Fee Related
- 1991-09-13 EP EP19910115510 patent/EP0475421A3/en not_active Withdrawn
- 1991-09-13 JP JP3261361A patent/JPH04299389A/en active Pending
-
1994
- 1994-03-04 US US08/206,239 patent/US5371849A/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
EP0475421A3 (en) | 1993-02-03 |
EP0475421A2 (en) | 1992-03-18 |
CA2050658C (en) | 1997-01-28 |
JPH04299389A (en) | 1992-10-22 |
US5371849A (en) | 1994-12-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CA2050658A1 (en) | Dual hardware channels and hardware context switching in a graphics rendering processor | |
CA2228929A1 (en) | Multiuser/multi pointing device graphical user interface system | |
EP0377991A3 (en) | Data processing systems | |
EP0150521A3 (en) | Data processing system with improved interrupt handling | |
CA2103988A1 (en) | Method and Apparatus for Processing Interruption | |
WO1992009944A3 (en) | User interface having simulated devices | |
AU1567595A (en) | Distributed protocol framework | |
WO1998043401A3 (en) | Software implementation of modem on computer | |
CA2090709A1 (en) | System to service processor interface for a tablet computer | |
US4811281A (en) | Work station dealing with image data | |
EP1413946A3 (en) | Computer system having a reduced power control circuit | |
MY121811A (en) | Processing arrangements. | |
US5754866A (en) | Delayed interrupts with a FIFO in an improved input/output architecture | |
ATE128777T1 (en) | REAL-TIME INPUT/OUTPUT METHOD FOR A VECTOR PROCESSOR SYSTEM. | |
CA2064162A1 (en) | Personal computer with local bus arbitration | |
CA2168741A1 (en) | Architecture for modular computer system in which one of the modules is dedicated to user-interface task | |
EP0811923A3 (en) | Bus access means for data processing apparatus | |
MY111588A (en) | Personal computer with alternate system controller. | |
JPS5583951A (en) | Information processing system | |
JPS5475244A (en) | Inter-subsystem communication system equipped with dequeue promoting function | |
JPS60263238A (en) | Information processor | |
KR920003181B1 (en) | State transition control method of hardware | |
JPH02224005A (en) | Laptop personal computer | |
GB2225882A (en) | Computer bus structure for multiple processors | |
JPH01195543A (en) | Multi-os system for switch of interruption vector table |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
EEER | Examination request | ||
MKLA | Lapsed |