A evolução dos processadores gráficos modernos começou com o aparecimento em 1995 das primeiras placas 3D, seguido pela adoção generalizada de sistemas operacionais de 32 bits e computadores pessoais baratos.
Antes disso, a indústria gráfica consistia principalmente em arquiteturas bidimensionais não prosaicas de computadores não pessoais. As placas gráficas eram mais conhecidas pelas designações alfanuméricas dos chips e tinham um custo enorme. Os jogos em 3D e a computação gráfica se uniram gradualmente, surgindo de diversas fontes, como jogos de arcade e console, projetos da indústria de defesa, simulações de robótica e espaço, além de imagens médicas.
Os primeiros dias dos gráficos 3D do consumidor foram o Velho Oeste das idéias concorrentes: de como implementar equipamentos até o uso de várias técnicas de renderização e interfaces de aplicativos e dados. Os primeiros sistemas gráficos tinham um pipeline de função fixa (FFP) e uma arquitetura que seguia um caminho de processamento muito rigoroso; ao mesmo tempo, quase todos os fabricantes de chips 3D tinham suas próprias APIs.
Os gráficos 3D transformaram a indústria de PC bastante monótona em um show de luz e magia, mas devem sua existência a muitas gerações de inovação. Nesta série de artigos, examinaremos mais de perto a história da GPU: os primeiros dias dos gráficos 3D para consumidores que revolucionaram o 3Dfx Voodoo, a consolidação da indústria na virada do século e as GPGPUs modernas.
1976 - 1995: os primeiros dias de gráficos 3D para consumidores
Os primeiros gráficos 3D reais vieram com o advento de controladores de vídeo chamados shifters de vídeo ou geradores de endereços de vídeo. Eles agiram como intermediários entre o processador central e a tela. O fluxo de dados recebidos foi convertido em uma sequência de dados de vídeo de bit de saída, como brilho e cor, bem como na sincronização composta vertical e horizontal, que armazenou uma linha de pixels e sincronizou cada linha subseqüente e o intervalo do pulso de extinção (o tempo entre a conclusão de uma linha raster e o início de uma nova).
Uma variedade de designs desses dispositivos apareceu na segunda metade da década de 1970 e lançou as bases dos gráficos 3D conhecidos por nós.
Atari 2600 Lançado em setembro de 1977Por exemplo, o chip de vídeo Pixie (CDP1861), lançado pela RCA em 1976, conseguiu emitir vídeo compatível com NTSC com uma resolução de 62x128 ou 64x32 para o impopular console do RCA Studio II.
Um ano depois, o chip de vídeo foi seguido pelo TIA (Television Interface Adapter) 1A, que foi integrado ao Atari 2600 para gerar imagens de tela, efeitos sonoros e ler informações dos controladores de entrada. A TIA foi liderada por Jay Miner, que mais tarde projetou chips para o computador Commodore Amiga.
Em 1978, a Motorola anunciou o lançamento do gerador de endereço de vídeo MC6845. Tornou-se a base dos cartões MDA / CDA (Monochrome / Color Display Adapter) para o IBM PC, lançados em 1981. Este gerador executou as mesmas funções no computador Apple II. No final daquele ano, a Motorola adicionou o gerador de vídeo MC6847, que começou a ser usado em muitos computadores pessoais de primeira geração, incluindo o Tandy TRS-80.
Adaptador de vídeo monocromático para PC IBMUm dispositivo VIC semelhante, fabricado pela Commodore MOS Tech, forneceu saída gráfica para os computadores domésticos Commodore 1980-83.
Em novembro próximo, o controlador ANTIC (Interface de interface de televisão alfanumérica) e o
coprocessador CTIA / GTIA (Adaptador de interface de televisão em cores / gráficos) fizeram sua estreia nos computadores Atari 400. O ANTIC, usando acesso direto à memória (DMA), processou comandos de imagem 2D. Como a maioria dos coprocessadores de vídeo, ele pode gerar gráficos de campo de jogo (planos de fundo, protetores de tela, exibição de óculos) e o CTIA gerou cores e objetos em movimento. A Yamaha e a Texas Instruments também forneceram aos fabricantes de computadores domésticos antigos circuitos integrados similares.
Os próximos estágios da evolução dos gráficos ocorreram principalmente nas indústrias profissionais.
A Intel usou seu chip gráfico 82720 como base para a placa multimodo do controlador de vídeo e vídeo iSBX 275 de US $ 1.000 (vários modos gráficos). O dispositivo pode exibir dados de oito cores com uma resolução de 256x256 (ou cores monocromáticas com uma resolução de 512x512). 32 kilobytes de memória de exibição foram suficientes para desenhar linhas, arcos, retângulos e caracteres de texto. O chip também tinha as funções de zoom, dividir a tela em partes e rolar.
Logo depois, a SGI lançou o IRIS Graphics para estações de trabalho - a placa gráfica GR1.x com a capacidade de conectar placas (filhas) separadas, permitindo expandir o número de cores, usar geometria, buffer Z e sobreposições / substratos.
Naquela época, a visualização 3D industrial e de defesa já estava bastante desenvolvida. A IBM, General Electric e Martin Marietta (que mais tarde compraram o departamento aeroespacial da GE em 1992), juntamente com os prestadores de serviços de defesa, institutos de tecnologia e NASA, desenvolveram vários projetos que exigiam tecnologia para simulações militares e espaciais. Também em 1951, a Marinha desenvolveu um simulador de vôo usando visualização 3D baseada no computador Whirlwind do Instituto de Tecnologia de Massachusetts.
Além das empresas de defesa, havia empresas que forneciam gráficos profissionais para o mercado militar.
A Evans & Sutherland, que forneceu placas gráficas profissionais como
Freedom e
REALimage , também forneceu gráficos para o
simulador de voo CT5 , que custou US $ 20 milhões e foi conduzido pelo
mainframe DEC PDP-11 . Um dos fundadores da empresa, Ivan Sutherland, desenvolveu em 1961 um programa de computador chamado Sketchpad, que tornou possível desenhar formas geométricas usando uma caneta de luz e exibi-las em uma tela CRT em tempo real.
Foi o progenitor da moderna interface gráfica do usuário (GUI).
Em um setor de computadores pessoais menos fechado, apareceu uma série de chips 82C43x da Chips and Technologies, usados no EGA (Extended Graphics Adapter) e competindo com os adaptadores IBM. Em 1985, esses adaptadores foram instalados em muitos clones de PC / AT. Este ano também foi marcante para o computador Commodore Amiga, lançado com o chipset OCS. O chipset consistia em três chips principais, Agnus, Denise e Paula, que reduziam parcialmente a dependência da CPU nos cálculos gráficos e sonoros.
Em agosto de 1985, três imigrantes de Hong Kong, Kwok Yuan Ho, Lee Lau e Benny Lau, fundaram a Array Technology Inc. no Canadá. Até o final do ano, o nome foi alterado para ATI Technologies Inc.
No ano seguinte, a ATI lançou seu primeiro produto, o OEM Color Emulation Card. Foi usado para enviar texto monocromático de fósforo verde, âmbar ou branco para o fundo preto de um monitor TTL através de um conector DE-9 de 9 pinos. O cartão estava equipado com 16 KB de memória. Ela contribuiu muito para o fato de que, no primeiro ano da ATI, a empresa faturou 10 milhões de dólares canadenses. A principal razão para isso foi o contrato para o fornecimento semanal de 7.000 chips para computadores Commodore.
O advento dos monitores coloridos e a falta de padrões comuns levaram à formação da Video Electronics Standards Association (VESA), um dos membros fundadores da ATI, além da NEC e seis outros fabricantes de placas gráficas.
Em 1987, a ATI adicionou a série Graphics Solution Plus para OEMs à sua linha de produtos. Ele usou o barramento ISA IBM PC / XT de 8 bits para o IBM PC com base no Intel 8086/8088. O chip suporta os modos gráficos MDA, CGA e EGA, configuráveis usando dip-switches. Na verdade, era um clone da placa Plantronics Colorplus, mas com espaço para 64 KB de memória. Lançado em 1987, o PEGA1, 1a e 2a (256KBK) da Paradise Systems também eram clones da Plantronics.
ATI EGA 800: emulação VGA de 16 cores, suporte para resolução 800x600Em março, a série EGA Wonder (modelos 1 a 4) apareceu, custando US $ 399. Tinha 256 KB de DRAM e era compatível com emulação CGA, EGA e MDA em resoluções de até 640x350 e com 16 cores. O modo EGA estendido estava disponível nas séries 2,3 e 4.
Os dispositivos de alta tecnologia foram o EGA Wonder 800 com emulação VGA de 16 cores e suporte a resolução 800x600, e a placa VGA Improved Performance (VIP), que era essencialmente um EGA Wonder com um módulo DAC adicionado para fornecer compatibilidade VGA limitada. O último custou US $ 449 mais US $ 99 para o módulo de expansão Compaq.
A ATI estava longe de ser a única empresa a enfrentar uma onda de necessidades crescentes dos consumidores por computadores pessoais.
Muitas empresas e produtos novos apareceram naquele ano ... Entre eles estavam Trident, SiS, Tamerack, Realtek, Oak Technology, LSI G-2 Inc., Hualon, Cornerstone Imaging e Winbond - todos formados em 1986-87. No mesmo período, empresas como AMD, Western Digital / Paradise Systems, Intergraph, Cirrus Logic, Texas Instruments, Gemini e Genoa começaram a fabricar seus primeiros dispositivos gráficos.
Nos anos seguintes, a série Wonder da ATI continuou a produzir produtos novos e empolgantes.
Em 1988, a Small Wonder Graphics Solution foi lançada com a capacidade de conectar um controlador de jogo e uma saída composta (para emulação CGA e MDA), EGA Wonder 480 e 800+ com suporte para EGA estendida e VGA de 16 bits, assim como VGA Wonder e Wonder 16 com Adicionado suporte para VGA e SVGA.
O Wonder 16, equipado com 256 KB de memória, foi vendido por US $ 499, enquanto a versão de 512K custou US $ 699.
Em 1989, a série VGA Wonder / Wonder 16 aprimorada apareceu, incluindo o VGA Edge 16 (série Wonder 1024) a um preço reduzido. Novos recursos incluem uma porta de barramento-mouse e suporte para o VESA Feature Connector. Era um conector banhado a ouro, semelhante a um conector de slot de barramento de dados encurtado, cabeado a outro controlador de vídeo para contornar um barramento de dados sobrecarregado.
As atualizações da série Wonder continuaram a aparecer em 1991. O cartão Wonder XL adicionou compatibilidade de cores VESA 32K e Sierra RAMDAC, que aumentou a resolução máxima da tela para 640x480 a 72 Hz ou 800x600 a 60 Hz. Os preços variavam em uma ampla faixa: US $ 249 para um modelo com 256 KB, US $ 349 para 512 KB e US $ 399 para uma versão com 1 MB de RAM. A versão com desconto foi chamada VGA Charger e foi baseada no Basic-16 do ano anterior.
ATI Graphics Ultra ISA (Mach8 + VGA)A ATI criou uma variante do Wonder XL, em cuja placa de circuito expandido está o chip Creative Sound Blaster 1.5. Um dispositivo chamado VGA Stereo-F / X conseguiu simular o som estéreo dos arquivos monofônicos da Sound Blaster mais ou menos como um rádio FM.
Em maio daquele ano, a série Mach apareceu, começando com o dispositivo Mach8. Ele foi vendido como um chip ou uma placa, o que permitiu o uso de uma interface de software (AI) para participar de operações de desenho 2D, por exemplo, desenhar linhas, preencher cores e combinar bitmaps (Bit BLIT).
Placas gráficas como o ATI VGAWonder GT tornaram possível trabalhar com 2D e 3D, combinando o Mach8 com o núcleo gráfico (28800-2) das placas VGA Wonder + que executavam operações 3D. Graças ao Wonder e ao Mach8, a ATI superou a receita canadense de US $ 100 milhões, principalmente devido aos usuários que mudaram para o Windows 3.0 e ao aumento da carga de trabalho das operações 2D.
No início de 1989, a S3 Graphics foi criada, fabricando seu primeiro chip acelerador 2D e a placa gráfica S3 911 (ou 86C911) 18 meses depois. Recursos importantes da mais recente VRAM de aço de 1 MB e suporte para cores de 16 bits.
No mesmo ano, o S3 911 foi substituído pelo cartão 924 - na verdade, era uma versão atualizada do 911 com suporte a cores de 24 bits; no ano seguinte, ele foi aprimorado novamente na versão 928, que adicionou suporte para cores de 32 bits; também foram lançados os aceleradores 801 e 805. O acelerador 801 usava a interface ISA e o 805 usava VLB. Entre o lançamento do 911 e o advento do acelerador 3D, o mercado estava cheio de cartões 2D para trabalhar com GUIs baseadas no dispositivo S3 original. Os mais notáveis são os laboratórios Tseng, Cirrus Logic, Trident, IIT, ATI (Mach32) e Matrox (MAGIC RGB).
Em janeiro de 1992, a Silicon Graphics Inc (SGI) lançou o OpenGL 1.0, uma interface de programação de aplicativos (API) independente de fornecedor e multiplataforma para gráficos 2D e 3D.
O OpenGL evoluiu da API da SGI chamada IRIS GL (Biblioteca Gráfica do Sistema de Imagem Raster Integrada). A idéia era preservar as funções não gráficas do IRIS e permitir que a API trabalhasse em sistemas fabricados por outras empresas, porque surgiram concorrentes no horizonte que forneciam suas próprias APIs proprietárias.
Inicialmente, o OpenGL era voltado para mercados profissionais do UNIX, mas graças à conveniência de implementar extensões, ele rapidamente se adaptou aos jogos em 3D.
A Microsoft desenvolveu sua própria API concorrente chamada Direct3D e, portanto, não fez muito esforço para garantir que o OpenGL funcionasse da melhor maneira possível no Windows.
Essa situação chegou a um ponto crítico vários anos depois, quando a id Carmack, da id Software, que havia lançado o Doom, um jogo revolucionário para PC, portou o Quake para Windows usando o OpenGL e
criticou abertamente o Direct3D .
Mudando para o futuro: 1997 GLQuake e Quake OriginalA Microsoft foi inflexível - a empresa se recusou a licenciar o MCD (OpenGL Mini Client Driver) para Windows 95, o que permitiu que os fabricantes escolhessem quais recursos poderiam acessar a aceleração de hardware. A SGI respondeu a essa ação desenvolvendo um Driver de cliente instalável (ICD), que não apenas forneceu a mesma funcionalidade, mas também melhorou muito, porque o MCD forneceu apenas rasterização e o ICD adicionou iluminação e transformação (T&L) .
No processo de desenvolvimento do OpenGL, que inicialmente se tornou popular nas estações de trabalho, a Microsoft acompanhou de perto o nascimento do mercado de jogos e desenvolveu sua própria API proprietária. Em fevereiro de 1995, a empresa adquiriu a RenderMorphics, cuja API do Reality Lab recebeu suporte de desenvolvedores de terceiros e tornou-se o núcleo do Direct3D.
Ao mesmo tempo, Brian Hook, do 3dfx, estava escrevendo a API Glide, que mais tarde se tornaria a API dominante de jogos. Isso ocorreu em parte devido à participação da Microsoft no projeto Talisman (ecossistemas de renderização baseados em blocos), pelo qual a empresa teve que limitar os recursos destinados ao DirectX.
Graças à crescente expansão do Windows, a interface D3D tornou-se cada vez mais popular e APIs proprietárias como S3d (S3), Matrox Simple Interface, Creative Graphics Library, C Interface (ATI), SGL (PowerVR), NVLIB (Nvidia) e RRedline (Rendition ) e Glide começaram a perder o amor dos desenvolvedores.
Eles nem sequer foram ajudados pelo fato de alguns dos desenvolvedores dessas APIs proprietárias se unirem aos fabricantes de placas por causa da necessidade constante de expandir a lista de funções. Entre eles estavam um aumento nas resoluções de tela, um aumento na profundidade de cores (de 16 bits para 24 bits e, em seguida, até 32 bits) e métodos para melhorar a qualidade da imagem, como anti-aliasing. Todos esses recursos foram necessários devido ao aumento da taxa de transferência, desempenho gráfico e ciclos mais rápidos de desenvolvimento de produtos.
O ano de 1993 marcou o surgimento de novos concorrentes no mercado gráfico, o mais notável deles foi a Nvidia, fundada em janeiro daquele ano por Jensen Huang, Curtis Reception e Chris Malahowski. Huang era anteriormente o líder do Coreware na LSI, e Reception e Malahowski eram da Sun Microsystems, onde trabalhavam na
arquitetura gráfica GX baseada no SunSPARC .
Pouco tempo depois, colegas novatos Dynamic Pictures, ARK Logic e Rendition se juntaram à Nvidia.
Devido à volatilidade do mercado, muitas empresas gráficas já pararam seus negócios ou foram absorvidas pelos concorrentes. Entre eles estavam Tamerack, Gemini Technology, Genoa Systems, Hualon, Headland Technology (comprada pela SPEA), Acer, Motorola e Acumos (comprada pela Cirrus Logic).
No entanto, a ATI permaneceu a única empresa que passou de vitória em vitória.
Em novembro do mesmo ano, a ATI anunciou o lançamento do chip decodificador 68890 PC TV, que apareceu pela primeira vez dentro da placa Video-It! .. O chip pode capturar vídeo com uma resolução de 320x240 a 15 fps ou 160x120 a 30 fps, além de comprimir / descomprimir em tempo real graças ao Intel i750PD VCP (processador de compactação de vídeo) integrado. Ele também pode se comunicar com a placa gráfica através do barramento de dados, eliminando a necessidade de placas, portas ou cabos adicionais.
Video-it! vendido por US $ 399; O modelo Video-Basic com menos recursos também complementou a linha de produtos.
Cinco meses depois, em março, a ATI lançou um acelerador de 64 bits - Mach64.
O ano fiscal não foi bom para a ATI, sofreu uma perda de CAD 2,7 milhões, perdendo participação de mercado devido à forte concorrência. Entre as placas concorrentes estão o S3 Vision 968, escolhido por muitos fabricantes de placas-mãe, e o Trio64, que recebeu contratos de OEM com Dell (Dimension XPS), Compaq (Presario 7170/7180), AT&T (Globalista), HP (Vectra VE 4) e DEC (Venturis / Celebris).
Vision 968: primeiro acelerador de vídeo S3Lançado em 1995, o Mach64 foi o primeiro. Tornou-se o primeiro adaptador gráfico disponível para PC e Mac no formato Xclaim (450 ou 650 dólares, dependendo da quantidade de memória); como o S3 Trio, fornecia reprodução de vídeo acelerada.
O Mach64 também se tornou o precursor das primeiras placas gráficas profissionais da ATI - 3D Pro Turbo e
3D Pro Turbo + PC2TV , que custam US $ 599 por versão com 2 MB e US $ 899 por 4 MB.
ATI Mach64 VT com suporte para sintonizador de TVNo mês seguinte, uma startup de tecnologia chamada 3DLabs apareceu em cena, nascida quando o departamento de pixel art da DuPont
comprou uma divisão da empresa-mãe junto com um processador GLINT 300SX capaz de executar renderização OpenGL, processamento de fragmentos e rasterização. Devido ao alto custo, os cartões da empresa foram inicialmente direcionados ao mercado profissional. O Fujitsu Sapphire2SX de 4 MB é vendido por US $ 1.600-2.000 e o ELSA GLoria 8 de 8 megabytes por US $ 2.600-2.850. No entanto, o 300SX foi destinado ao mercado de jogos.
No cartão de jogo GLINT 300SX, lançado em 1995, a memória foi reduzida para 2 MB. 1 Z-, — . 50 349 VRAM Direct3D. , 3DLabs Permedia.
, S3 . OEM- high-end Trio64 , . ( , ). Trio64 32- Trio32 OEM- , Diamond, ELSA, Sparkle, STB, Orchid, Hercules Number Nine. Diamond Multimedia 169 ViRGE 569 Diamond Stealth64 Video 4 VRAM Trio64+.
Trident, OEM- 2D-, 9680. Trio64, 170-200 . 3D- .
Power Player 9130 Weitek ProMotion 6410 Alliance Semiconductor ( Alaris Matinee FIS OptiViewPro). , , , ATI Mach64, Matrox MGA 2064W S3 Vision968.
Nvidia
NV1 , , 3D-, GUI.
ST Microelectronic 500- , STG2000. , . Nvidia, ( , Diamond Edge 3D) , Microsoft DirectX 1.0 .
API D3D , NV1 . D3D: , , NV1, : , .
Sega Saturn. NV1 4 Saturn ( , ) 1995 450 .
Microsoft DirectX SDK . , Windows 95. Win 3.1 , , .
1995 ATI 3D- 3D Rage ( Mach 64 GT).
E3 - . . 3D Rage 2D- Mach64 3D-.
DirectX , 3D Rage , API — . EDO RAM 2 3D 640x480x16- 400x300x32-. 32- 600x480 , 2D- 1280x1024. , MPEG - .
ATI Rage II. D3DX MPEG2. - 2 , , / . Rage II+DVD 3D Xpression+, 8 .
ATI 3D-, 3D. , 3dfx, Rendition VideoLogic.
1996 Screamer 2, Windows 95 3dfx Voodoo 13Dfx Interactive Rendition VideoLogic. — 3Dfx Voodoo Graphics .
. 3Dfx, Rendition, Matrox Nvidia.