tesina - repositorio.upsin.edu.mxrepositorio.upsin.edu.mx/fragmentos/tesinas/tesin...maya, por ser...
TRANSCRIPT
TESINA
Unidad de Procesamiento Gráfico
QUE PRESENTA
C. EVAN ISSAC TIRADO FLORES
EN CUMPLIMIENTO PARCIAL DE LA
ESTADÍA PRÁCTICA DE
INGENIERÍA MECATRÓNICA
ASESOR ACADÉMICO
M.C. CARLOS MELLADO OSUNA
ORGANISMO RECEPTOR
KELLY SERVICES MÉXICO S.A. DE C.V.
Mazatlán, Sin. 11 de Diciembre de 2016
ii
iii
iv
v
vi
Dedicatoria
A mis padres por su apoyo incondicional que me brindaron durante el transcurso de mis estudios.
vii
Agradecimiento
A mi madre Alma, por haberme apoyado en todo momento, por sus consejos,
sus valores, por la motivación constante que me ha permitido ser una persona de
bien, por preocuparse en cada momento de mi vida, pero más que nada, por su
amor. A mi padre Ernesto, por los ejemplos de perseverancia y constancia que lo
caracterizan y que me ha infundado siempre, por el valor mostrado para salir
adelante y por su amor. A mis hermanos Erick, y Ernesto por su apoyo, por ser los
mejores hermanos, por ser una motivación especial para mí, para seguir adelante y
demostrarles que todo es cuestión de perseverancia y esfuerzos. A mi sobrina
Maya, por ser también una de las mayores motivaciones, a pesar de su corta edad,
se ha convertido en una gran motivación para mí y toda mi familia.
Por último, quisiera también dar un agradecimiento especial a la Universidad
Politécnica de Sinaloa, por darme los conocimientos y habilidades que ahora tengo,
ya que gracias a ellos he logrado desenvolverme como estudiante y como persona.
Quiero agradecer a todos mis profesores con los cuales tuve el privilegio de ser su
alumno y de aprender de todos y cada uno de ellos.
viii
RESUMEN
UNIDAD DE PROCESAMIENTO GRÁFICO
Evan Issac Tirado Flores.
Unidad Académica de Ingeniería Mecatrónica
Universidad Politécnica de Sinaloa
Mazatlán, Sinaloa, Diciembre 2016
Asesor: M.C. Carlos Mellado Osuna
La presente tesina realiza un estudio a lo que es la Unidad de Procesamiento
Gráfico en una computadora, el cual permita analizar detalladamente el
funcionamiento de esta parte tan importante dentro del hardware de las
computadoras que conocemos hoy en día, para que de esta manera se pueda
conocer más a fondo los procesos que realiza la Unidad de Procesamiento Gráfico,
o por sus siglas en ingles GPU (Graphics Processing Unit).
Así mismo se hace énfasis en la importancia de la utilización del software ya que
este también es parte fundamental para que el hardware (GPU) funcione
debidamente. De esta manera se logrará explicar al lector como funciona esta parte
tan fundamental para la utilización de las computadoras y dispositivos móviles.
Además de mostrar cómo ha ido evolucionando a través de los años para mejor el
funcionamiento del mismo, la facilidad de manejo y el gran incremento en cuanto a
su eficiencia para el fácil manejo de los dispositivos que manejamos hoy en día.
ix
INDICE
I. Introducción …………………………………………….………. 1
1.1 Antecedentes …………………………………………….……... 3
1.2 Historia de las computadoras …….…….…….……..…. 3
1.2.1 Primera generación …….…….…….…….…….…….…. 3
1.2.2 Segunda generación …….…….…….…….…….……… 4
1.2.3 Tercera generación …….…….…….…….…….…….…. 4
1.2.4 Cuarta generación …….…….…….…….…….……….. 4
1.3 Historia de las Unidades de Procesamiento Gráfico ………… 6
II. Desarrollo …………………………………………….…….……… 9
2.1 ¿Qué es una GPU? …….…….…….…….…….…….………… 9
2.1.1 ¿Cómo funciona una GPU? …….…….…….……………. 10
2.1.2 Tipos de GPU ………………………………………………. 10
- Tarjetas dedicadas …….…….…….…….…….…….……… 10
- Integrados gráficos …….…….…….…….…….…….……… 11
- Híbridos ………………………………………………… 11
2.1.3 RAMDAC …………………………………………………… 12
2.2 ¿Qué es una tarjeta gráfica o de video? …….…….………… 12
2.2.1 Tipos de tarjetas gráficas …….…….………….................. 13
- Tarjeta MDA ………………………………………………… 13
- Tarjeta CGA …………………………………………………. 13
- Tarjeta HGC …………………………………………… 14
2.2.2 Salidas de video ……………………………………………. 15
- DA-15 …………………………………………………………. 15
- Digital TTL DE-9 …………………………………………….. 15
- SVGA …………………………………………………………. 15
- DVI …………………………………………….…….…….….. 16
- S-Video ……………………………………………………… 16
- Video Compuesto ……………………………………………. 17
x
- Video por componentes ……………………………………. 17
- HDMI …………………………………………………………. 17
- DisplayPort …………………………………………………… 18
2.3 ¿Qué es una CPU? ……………………………………………… 19
2.3.1 Diferencia entre CPU y GPU …………………………… 23
2.4 Programación de la GPU ………………………………………. 25
2.4.1 OpenGL ……………………………………………………… 25
2.4.2 DirectX ……………………………………………………… 26
- Direct3D ……………………………………………….. 26
- Direct Graphics ……………………………………………… 26
- DirectInput ……………………………………………………. 26
- DirectPlay ……………………………………………………. 26
- DirectSound ………………………………………………….. 26
- DirectMusic …………………………………………………… 26
- DirectShow …………………………………………………… 27
- DirectSetup …………………………………………………… 27
- DirectCompute ……………………………………………… 27
2.4.3 BIOS ……………………………………………………… 28
2.4.4 vBIOS ……………………………………………………… 29
2.4.5 ¿Qué es un driver? ………………………………………… 29
2.4.6 ¿Qué función tiene un driver de gráficos? ……………. 30
2.5 Monitores …………………………………………………………. 30
2.5.1 ¿Qué es un monitor? ………………………………………. 30
2.5.2 Un poco más acerca de los monitores ……………….. 31
2.5.3 Parámetros fundamentales …………………………… 32
- Pixel ………………………………………………………… 32
- Tamaño de punto ……………………………………………. 32
- Área útil ……………………………………………………… 32
- Ángulo de visión ……………………………………………... 32
- Luminancia …………………………………….…….……….. 32
- Tiempo de respuesta ……………………………………….. 32
xi
- Contraste ……………………………………………………… 32
- Coeficiente de contraste de imagen ……….…….……… 33
- Consumo …………………………………….…….…….……. 33
- Ancho de banda …………………………………….……….. 33
- Frecuencia de refresco vertical …….…….…….……….. 33
- Frecuencia de refresco horizontal ……..…….…….…….. 33
- Blindaje …………………………………….…….…….……. 33
- Tipo de monitor …………………………………….………… 33
- Líneas de tensión …………………………………….……… 33
2.6 Nuevas tecnologías …………………………………….………. 34
2.6.1 WiDi …………………………………….…….…….………. 34
III. Bibliografía …………………………………….…….…….……… 36
IV. Conclusiones …………………………………….…….…….…… 37
V. Glosario …………………………………….…….…….…….……. 38
xii
INDICE DE FIGURAS Figura 2.1.2.1 Tarjeta dedicada …………………..………………………………….. 11 Figura 2.2.1.1 Salida de video DA-15 macho ……………………………………… 15 Figura 2.2.1.2 Salida de video SVGA ……………………..………………………… 15 Figura 2.2.1.3 Salida de video DVI …………………..……………………………… 16 Figura 2.2.1.4 Salida de video S-Video …………………..……………………….. 16 Figura 2.2.1.5 Salida de video Compuesto …………………….…………………. 17 Figura 2.2.1.6 Salida de video HDMI …………………..………………………….. 17 Figura 2.2.1.7 Cable de video DisplayPort ………………………………………… 18
1
I. INTRODUCCIÓN
Hoy día se está implementando el uso de las computadoras en todos los campos
de trabajo. Las computadoras están en todos lados y existen en muchas formas,
tamaños y colores. Por ejemplo: una calculadora de bolsillo, el reloj de un
microondas, el control remoto de un televisor, los juegos de video, y los cajeros
automáticos, entre otros. En trabajos donde el hombre no se concentra o no pone
la atención debida a causa de la naturaleza repetitiva de la tarea, una computadora
puede realizar la misma durante toda una semana, 24 horas al día, sin pérdida de
velocidad ni precisión.
La computadora es más que una calculadora de alta velocidad. Se ha convertido
en un auxiliar esencial hoy día. ¿Qué cree usted que pasaría si se fuera la luz por
un día a nivel mundial? Para comenzar, además de comer un desayuno frío, no
recibiría el periódico. No podrá llamar a su jefe por teléfono para indicarle que va a
llegar tarde a causa del tapón que se formó al no haber semáforos. Al llegar al
aeropuerto, le dicen que todos los vuelos han sido cancelados. De camino a casa
decide ir al supermercado, pero están cerrado. Es que el supermercado usa
lectores ópticos en sus registradoras digitales. Decide entonces ir a su casa a
concluir su trabajo de la oficina, pero recordó que su reporte está guardado en un
disco de computadora. Claro, que esto es una suposición hipotética. El punto es
que las computadoras están ya tan integradas en nuestra vida diaria, que sin ellas
estaríamos casi paralizados.
Lo práctico que tenemos en las computadoras y ahora en dispositivos móviles, es
la facilidad de manejo y la simplificación de las tareas que antes se realizaban a
pluma y papel, y ahora todo podemos tenerlo bien organizado y manejado
eficazmente mediante una interfaz gráfica de usuario (GUI). El motivo de esta tesina
está básicamente enfocado en esto, la visualización gráfica que nos brinda este tipo
de dispositivos tecnológicos para que podamos ejecutar nuestras tareas fácilmente.
Se tratará de explicar los fundamentos básicos para que estas visualizaciones en
2
pantalla sea explicado un poco más a fondo de lo que nosotros vemos en nuestros
monitores o paneles al observar nuestra PC o nuestro móvil, además de mostrar
funcionalidades de esto que uno no se da cuenta que existen, y están presentes
para que el usuario maneja su interfaz gráfica de forma más cómoda, rápida y con
equipos que ofrezcan una visualización de calidad en tu pantalla.
3
1.1 ANTECEDENTES
La computadora tiene sus comienzos con el hombre pre-histórico. Cuando
éste comenzó a llevar cuentas de sus animales, tierras y cantidades físicas y se dio
cuenta que necesitaba algo más que los dedos de las manos y los pies para contar.
Comenzó a dibujar pequeñas rayas en las paredes, luego a unir pequeñas piedras.
Ya eran tantas las cosas que había que contar que se tuvo que ver obligado a
inventar la multiplicación. Esto con el propósito de representar grandes cantidades
físicas en forma simbólica y así ocupar menos espacio. De ahí, se creó el primer
computador aritmético, EL ABACO. El ábaco fue el pionero en máquinas de contar.
Luego, se desarrollaron un sin número de máquinas, cada una de éstas superando
a sus predecesoras en rapidez y capacidad de almacenamiento, hasta alcanzar lo
que es hoy la computadora.
1.1 HISTORIA DE LAS COMPUTADORAS
La historia de las computadoras consiste de cuatro generaciones. Cada
generación se caracteriza por la arquitectura física de los componentes que la
forman. Se describen a continuación:
1.1.1 Primera Generación (1946 - 1959)
Esta generación se caracteriza por el uso de tubos al vacío para conducir la
electricidad. Las computadoras de esta generación eran muy grandes en tamaño y
lentas al procesar datos. A causa de la gran cantidad de calor que emitían, se
requería que siempre estuvieran en un lugar con mucha ventilación. Una vez que
las computadoras de esta generación comenzaban un proceso, el mismo no podía
ser interrumpido hasta que la computadora lo terminará por completo. Podían
realizar 1,000 instrucciones por segundo.
4
1.1.2 Segunda Generación (1959 - 1964)
Con la aparición de los transistores, estos reemplazan los tubos al vacío de la
primera generación. Un transistor representa 40 tubos al vacío y son más pequeños
y duraderos. Las computadoras de esta generación resultaron más económicas ya
que consumían menos energía y ocupaban menos espacio. Su capacidad de
memoria se amplía al igual que las unidades de entrada y salida de información. Su
velocidad de ejecución aumenta y además surgen los primeros lenguajes de
computación como lo es “FORTRAN”. Estas computadoras podían realizar 10,000
instrucciones por segundo.
1.1.3 Tercera Generación (1965 - 1971)
En la tercera generación los circuitos integrados pasan a sustituir los transistores.
Un circuito integrado es un pequeño encapsulado de silicón que contiene en su
interior miles de transistores. Estos proveen mayor velocidad, durabilidad y a su vez
son más económicos que los transistores de la segunda generación. Las
computadoras de la primera y segunda generación eran muy grandes y ocupaban
mucho espacio. Las computadoras de ésta generación fueron más pequeñas y
menos costosas. Estas computadoras podían realizar 1,000,000 instrucciones por
segundo y podían ejecutar varias tareas al mismo tiempo.
1.1.4 Cuarta Generación (1972 - Actualidad)
Los circuitos integrados pasan a integraciones a larga escala, es decir se aumenta
la cantidad de transistores de manera considerable en cada circuito integrado. En
esta generación aparece el microprocesador. Este a su vez promueve el surgimiento
de las microcomputadoras y las computadoras personales, siendo la primera
computadora personal la APPLE II, en 1977.
5
El circuito integrado hace que las computadoras de esta generación sean mucho
más rápidas. La eficiencia de éstas aumenta considerablemente y se reduce el
tamaño y el costo de las mismas.
Cada generación de computadoras utiliza una nueva invención para conducir la
electricidad. A medida que se reducen los dispositivos electrónicos, la computadora
se hace más portable y su eficiencia aumenta considerablemente. Esto las hace
accesible no sólo a empresas sino también para el uso personal.
1
1 Recinto Universitario De Mayagüe (2010)
http://www.uprm.edu/cti/docs/manuales/manuales-espanol/vax-
vms/bosquejos/Bintcomp.pdf
6
1.2 HISTORIA DE LAS UNIDADES DE PROCESAMIENTO GRÁFICO
Conforme las computadoras iban evolucionando, las Unidades de Procesamiento
Gráfico (GPU) surgieron y también fueron evolucionando a su vez. Los primeros
precursores de las unidades de procesamiento gráficos se remontan a la década de
los 80. Se trataba de pequeños chips controladores, muy parecidos a los que se
usan hoy día para la conectividad Ethernet, Bluetooth o WiFi. Estas primeras
protoGPUs eran bastante básicas y a penas cumplían con un puñado de funciones
que si bien hoy podrían ser consideradas demasiado pequeñas para requerir una
unidad aparte, dadas las capacidades de procesamiento de aquellos procesadores,
sí que podían ser necesarias.
Una de las primeras tarjetas gráficas fue el iSBX 275 de Intel, que llegó al mercado
en 1983, y se basaba en el controlador 82720 GDC de la firma. Y sería la mítica
Commodore Amiga uno de los primeros ordenadores en contar con su propia GPU,
en 1985. Ya para 1986 Texas Instruments había logrado desarrollar un procesador
con capacidades de procesamiento gráfico incluidas, un precursor de los SoC que
actualmente se usan en la industria.
Durante los años 90, las funciones cumplidas por las GPU se incrementaron al
ritmo en que crecían sus capacidades, así fue como al principio las gráficas se
encargaron del renderizado de gráficos 2D, y posteriormente adquirieron una
función fundamental con el auge de los gráficos 3D. Fue por esta época cuando las
GPU comenzaron a ser vistas como un componente obligatorio de las consolas,
especialmente después de lo que supusieron para los gráficos de la PlayStation
original y la Nintendo 64.
De allí hasta el presente, ha habido un complejo proceso de evolución y mejora
de capacidades, se establecieron los estándares OpenGL y Direct3D como APIs
para facilitar el trabajo a los programadores, y en la actualidad vemos como las GPU
7
se están volviendo componentes obligados, siendo que la mayoría de SoCs cuentan
con una GPU integrada.
Las modernas GPU son descendientes de los chips gráficos monolíticos de finales
de la década de 1970 y 1980. Estos chips tenían soporte BitBLT limitado, siendo
BitBLT una primitiva gráfica consistente en que dos mapas de bit son combinados
en uno. Usualmente en estos tiempos no se tenía soporte para dibujo de figuras.
Algunos GPU podían ejecutar varias operaciones en una lista de display y podían
usar DireDMA para reducir la carga en el procesador anfitrión.
Hacia finales de la década de 1980 y principios de la de 1990, los
microprocesadores de propósito general de alta velocidad fueron muy populares
para implementar las GPU más avanzadas. Muchas tarjetas gráficas para PC y
estaciones de trabajo usaban procesadores digitales de señales para implementar
funciones de dibujo rápidas y muchas impresoras láser contenían un procesador de
barrido de imágenes "PostScript" corriendo en un procesador RISC (Computador
con Conjunto de Instrucciones Reducidas) como el AMD 29000.
Conforme la tecnología de proceso de semiconductores fue mejorando,
eventualmente fue posible mover las funciones de dibujo y las BitBLT a la misma
placa y posteriormente al mismo chip a manera de un controlador de búfer de
marcos (frames), tal como el “Video Graphics Array”, mejor conocido como VGA.
VGA fue el último estándar de gráficos introducido por IBM al que se atuvieron la
mayoría de los fabricantes de computadoras compatibles IBM, convirtiéndolo en el
mínimo que todo el hardware gráfico soporta antes de cargar un dispositivo
específico. Por ejemplo, la pantalla de Microsoft Windows aparece mientras la
máquina sigue funcionando en modo VGA, razón por la que esta pantalla aparecerá
siempre con reducción de la resolución y profundidad de color.
8
Aparte de la tecnología conocida como VGA, posteriormente se fueron
introduciendo nuevos controladores de búfer de marcos, tales como S-Video, DVI,
HDMI, DisplayPort los cuales son más conocidos y aun utilizados en la actualidad.2
2 J.J. Torres (2013) https://hipertextual.com/archivo/2013/12/hardware-gpu-grafica/
9
II. DESARROLLO
2.1 ¿Qué es una GPU?
La unidad de procesamiento de gráficos o GPU, en términos simples, es un
coprocesador. Se trata de un componente muy parecido al CPU, solo que el tipo de
procesamiento al que se dedica es al de gráficos. De este modo, la GPU puede
aligerar la carga de información que debe ser procesada por la unidad central, y
esta última puede hacer su trabajo de manera más eficiente. Un coprocesador
especializado para los gráficos Pero entonces, si ambos son esencialmente
procesadores, solo que uno está dedicado esencialmente a gráficos para reducir la
carga del uno al otro.
La mayor parte de la información ofrecida en la especificación de una tarjeta
gráfica se refiere a las características de la GPU, pues constituye la parte más
importante de la tarjeta. Dos de las más importantes de dichas características son
la frecuencia de reloj del núcleo, que en 2006 oscilaba entre 250MHz en las tarjetas
de gama baja y 750MHz en las de gama alta, y el número de pipelines, encargadas
de traducir una imagen 3D compuesta por vértices y líneas en una imagen 2D
compuesta por pixeles.
Según la tarjeta gráfica esté integrada en la placa base o no, utilizará la memoria
RAM propia del ordenador o dispondrá de una propia. Dicha memoria es la memoria
de video o VRAM. Su tamaño oscila entre 128MB y 4GB. La memoria empleada en
2006 estaba basada en tecnología DDR, destacando GDDR2, GDDR3, GDDR4 y
GDDR5. La frecuencia de reloj de la memoria se encontraba entre 400MHz y
3,6GHz.
Samsung ha conseguido hacer memorias GDDR5 a 7GHz, gracias al proceso de
reducción de 50nm, permitiendo un gran ancho de banda en buses muy pequeños.
Una parte importante de la memoria de un adaptador de video es el Z-Buffer,
encargado de gestionar las coordenadas de profundidad de las imágenes en los
gráficos 3D.
10
2.1.1 ¿Cómo funciona una GPU?
A diferencia de los procesadores centrales, diseñados con pocos núcleos pero
altas frecuencias de reloj, las GPU suelen tener grandes cantidades de núcleos de
procesamiento a frecuencias de reloj relativamente bajas. En la actualidad, la
mayoría de los núcleos de procesamiento están dirigidos a dos funciones:
procesamiento de vértices y de píxeles.
El procesamiento de vértices es relativamente sencillo para las unidades de
procesamiento gráfico modernas, siendo de los que menos recursos consumen. En
términos sencillos se trata de obtener la información de los vértices, previamente
calculada por el CPU, y procesar su ordenamiento espacial, rotación, y qué
segmento del vértice será gráficamente visible, para así continuar con el pixelado.
A continuación se procede a procesar los pixeles, o en otras palabras, los gráficos
observables como tal. Éste es el proceso más complejo y que requiera más carga
de procesamiento, pues se aplicaran todas las capas y efectos necesarios para
crear texturas complejas y obtener gráficos lo más realistas posibles.
Por último, una vez procesada la información gráfica, esta es llevada a un monitor
digital o analógico (en este último caso, previo paso por un convertidor), según las
necesidades propias del ordenador.
2.1.2 Tipos de GPU
Actualmente existen tres grandes tipos de unidades de procesamiento gráfico. Más
que por la arquitectura, estos difieren entre ellos por el modo en que son
implementadas las GPU.
- Tarjetas dedicadas: Este tipo de unidades gráficas son las que
proporcionan mayor potencia. Como su nombre lo indica, tienen una serie de
especificaciones y están expresamente diseñadas para cumplir con sus tareas
específicas, por lo que son mucho más eficientes. Generalmente se suele entender
11
que una tarjeta dedicada es aquella que se integra a la tarjeta madre mediante un
puerto aparte. Esto último no siempre es necesario, y lo que realmente define a una
tarjeta gráfica dedicada es que tiene RAM independiente que solo podrá ser
utilizada por el GPU, y mientras cumpla con este requisito puede estar integrada a
la placa base o incluso al CPU.
Figura 2.1.2.1 Tarjeta dedicadas
- Integrados gráficos: A diferencia de las unidades dedicadas, las
integradas utilizan la memoria del sistema para realizar sus funciones. Son este tipo
de soluciones las más comunes en los ordenadores modernos, estando hasta en el
90% de los equipos de cómputo, incluyendo smartphones, tablets y la mayoría de
computadoras personales. Con frecuencia el núcleo central de estas unidades solía
estar en la tarjeta madre, pero más recientemente las cosas han cambiado, y tanto
AMD como Intel suelen integrarlas ahora en sus procesadores, y les han
denominado AMD Accelerated Processing Unit e Intel HD Graphics
respectivamente.
- Híbridos: Diseñadas para mantener precios relativamente bajos y al mismo
tiempo asegurarse niveles de potencia adecuados, las unidades gráficas híbridas
también comparten la memoria del sistema, pero para disminuir el tiempo de
latencia de esta última, integran una cantidad limitada de memoria propia que se
12
encarga de realizar las labores inmediatas. Suele ser éste el tipo de gráficos que
encontraremos en ordenadores portátiles que prometen tarjetas dedicadas.3
2.1.3 RAMDAC
El RAMDAC es un conversor de señal digital a analógico de memoria RAM. Se
encarga de transformar las señales digitales producidas en el ordenador en una
señal analógica que sea interpretable por el monitor. Según el número de bits que
maneje a la vez y la velocidad con que lo haga, el conversor será capaz de dar
soporte a diferentes velocidades de refresh del monitor. Dada la creciente
popularidad de los monitores digitales el RAMDAC está quedando obsoleto, puesto
que no es necesaria la conversión analógica si bien es cierto que muchos conservan
conexión VGA por compatibilidad.
2.2 ¿Qué es una tarjeta gráfica o de video?
Una tarjeta gráfica, tarjeta de video, placa de video, aceleradora de gráficos o
adaptador de pantalla, es una tarjeta de expansión para una computadora,
encargada de procesar los datos provenientes de la CPU y transformarlos en
información comprensible y representable en un dispositivo de salida, como un
monitor o televisor. Las tarjetas gráficas más comunes son las disponibles para las
computadoras compatibles con la IBM PC, debido a la enorme popularidad de éstas,
pero otras arquitecturas también hacen uso de este tipo de dispositivos. Es habitual
que se utilice el mismo término tanto a las habituales tarjetas dedicadas y separadas
como a las GPU integradas en la placa base.
Algunas tarjetas gráficas han ofrecido funcionalidades añadidas como captura de
video, sintonización de TV, decodificación MPEG-21 y MPEG-4 o incluso conectores
Firewire, de ratón, lápiz óptico y joystick.
3 MyPCSet (2015) https://mypcset.wordpress.com/2015/01/27/la-tarjeta-grafica-gpu/
13
Las tarjetas gráficas no son dominio exclusivo de los PC, contaron o cuentan con
ellas dispositivos como los Commodore Amiga, Apple II, Apple III, Apple Macintosh,
Spectravideo SVI-328, equipos MSX y, por supuesto, en las videoconsolas
modernas, como la Wii, la Playstation 3 y la Xbox 360.
2.2.1 Tipos de tarjetas gráficas
Tarjeta MDA: “Monochrome Display Adapter“ o Adaptador
monocromo. Fue lanzada por IBM como una memoria de 4KB
de forma exclusiva para monitores TTL (que representaban los
clásicos caracteres en ámbar y verde9. No disponía de gráficos
y su única resolución era la presentada en modo texto (80x25)
en caracteres de 14x9 puntos, sin ninguna posibilidad de
configuración.
Básicamente ésta tarjeta usa el controlador de video para leer
de la ROM la matriz de puntos que se desea visualizar y se
envía al monitor como información serie. No debe sorprender la
falta de procesamiento gráfico, ya que en estos primeros PC no
existían aplicaciones que realmente pudiesen aprovechar un
buen sistema de video.
Prácticamente todo se limitaba a información en modo texto.
Éste tipo de tarjeta se identifica rápidamente ya que incluye (o
incluía en su día) un puerto de comunicación para la impresora.
Tarjeta CGA: “Coor Graphics Array” o “Color graphics adapter”
según el texto al que se recurra. Aparece en el año 1981
tambien de la mano de IBM y fue muy extendida. Permitía
matrices de caracteres de 8x8 puntos en cada pantalla de 25
filas y 80 columnas, aunque solo usaba 7x7 puntos para
representar los caracteres. Éste detalle le imposibilitaba el
representar subrayados, por lo que los sustituía por diferentes
14
intensidades en el carácter en cuestión. En modo gráfico
admitía resoluciones de hasta 640x200. La memoria era de
16KB y solo era compatible con monitores RGB y Compuestos.
A distancia entre puntos de la rejilla de potencial en los
monitores CGA era mayor. El tratamiento del color, por
supuesto de modo digital, se realizaba con tres bits y uno mas
para intensidades. Así era posible lograr 8 colores con dos
intensidades cada uno, es decir, un total de 16 tonalidades
diferentes pero no reproducibles en todas las resoluciones.
Ésta tarjeta tenía un fallo bastante habitual y era el conocido
como “snow”. Este problema era de carácter aleatorio y
consistía en la aparición de “nieve” en la pantalla (puntos
brillantes e intermitentes que distorsionaban la imagen). Tanto
era asi que algunas BIOS de la época incluían en su Setup la
opción de eliminación de nieve.
Tarjeta HGC: “Hércules Graphic Card” o más popularmente
conocida como Hércules (nombre de la empresa productora),
aparece en el año de 1982, con gran éxito convirtiéndose en un
estándar de video a pesar de no disponer del soporte de las
rutinas de la BIOS por parte de IBM. Su resolución era de
720x348 puntos en monocromo con 64KB de memoria. Al
disponer de color, la única misión de la memoria es la de
referenciar cada uno de los puntos de la pantalla usando
30,58KB para el modo gráfico (1 bit x 720 x 348) y el reso para
el modo texto y otras funciones. Las lecturas se realizaban a
una frecuencia de 50 Hz, gestionadas por el controlador de
video 6845. Los caracteres se dibujaban en matrices de 14x9
puntos.4
4 Wikipedia (2016) https://es.wikipedia.org/wiki/Tarjeta_gráfica
15
2.2.2 Salidas de video
Los sistemas de conexión más habituales entre la tarjeta gráfica y el
dispositivo visualizador (como un monitor o un televisor) son:
DA-15 conector RGB usado mayoritariamente en los Apple Macintosh.
Figura 2.2.1.1 – Salida de video DA-15 macho
Digital TTL DE-9, usado por las primitivas tarjetas de IBM (MDA, CGA
y variantes de EGA y muy contadas VGA).
SVGA, estándar analógico de los años 1990; diseñado para
dispositivos CRT, sufre de ruido eléctrico y distorsión por la conversión
de digital a analógico y el error de muestreo al evaluar los pixeles a
enviar al monitor.
Figura 2.2.1.2 – Salida de video SVGA
16
DVI, sustituto del anterior, fue diseñado para obtener la máxima
calidad de visualización en las pantallas digitales como LCD. Evita la
distorsión y el ruido al corresponder directamente un pixel a
representar con uno del monitor en la resolución nativa del mismo.
Figura 2.2.1.3 – Salida de video DVI
S-Video, incluido para dar soporte a televisores, reproductores de
DVD, videos y videoconsolas.
Figura 2.2.1.4 – Salida de video S-Video
17
Video compuesto, analógico de muy baja resolución mediante
conector RCA.
Video por componentes, utilizado también para proyectores; de
calidad comparable a la de SVGA, dispone de tres clavijas (Y, Cb, Cr).
Figura 2.2.1.5 – Salida de video compuesto
HDMI, tecnología de audio y video cifrado sin compresión en un mismo
cable.
Figura 2.2.1.6 – Salida de video HDMI
18
Display Port, puerto para tarjetas gráficas creado por VESA y rival del
HDMI. La principal ventaja es que posé unas pestañitas que impiden
que el cable se desconecte con facilidad.
Figura 2.2.1.7 – Cable de video DisplayPort5
5 Javier Guerrero Lidón (2012) https://sites.google.com/site/mmelasespenyetas/home/tarjetas-graficas
19
2.3 ¿Qué es una CPU?
CPU, abreviatura de Central Processing Unit (Unidad de Proceso Central). La CPU
es el cerebro del ordenador. A veces es referido simplemente como el procesador
o procesador central. En ordenadores grandes, las CPU requieren uno o más
tableros de circuito impresos. En los ordenadores personales y estaciones de
trabajo pequeñas, la CPU está contenida en un solo chip llamado microprocesador.
Dos componentes típicos de una CPU son:
La unidad de lógica/aritmética (ALU), que realiza operaciones aritméticas y lógicas.
La unidad de control (CU), que extrae instrucciones de la memoria, las descifra y
ejecuta, llamando a la ALU cuando es necesario.
Casi todos los CPU tratan con estados discretos, y por lo tanto requieren una cierta
clase elementos de conmutación para diferenciar y cambiar estos estados. Antes
de la aceptación comercial del transistor, los relés eléctricos y los tubos de vacío
eran usados comúnmente como elementos de conmutación. Aunque éstos tenían
distintas ventajas de velocidad sobre los anteriores diseños puramente mecánicos,
no eran fiables por varias razones. Por ejemplo, hacer circuitos de lógica secuencial
de corriente directa requería hardware adicional para hacer frente al problema del
rebote de contacto. Por otro lado, mientras que los tubos de vacío no sufren del
rebote de contacto, éstos deben calentarse antes de llegar a estar completamente
operacionales y eventualmente fallan y dejan de funcionar por completo.
Generalmente, cuando un tubo ha fallado, el CPU tendría que ser diagnosticado
para localizar el componente que falla para que pueda ser reemplazado. Por lo
tanto, los primeros computadores electrónicos, (basados en tubos de vacío),
generalmente eran más rápidas pero menos confiables que las computadoras
electromecánicas, (basadas en relés). Las computadoras de tubo, como el EDVAC,
tendieron en tener un promedio de ocho horas entre fallas, mientras que las
computadoras de relés, (anteriores y más lentas), como el Harvard Mark I, fallaban
muy raramente. Al final, los CPU basados en tubo llegaron a ser dominantes porque
20
las significativas ventajas de velocidad producidas generalmente pesaban más que
los problemas de confiabilidad. La mayor parte de estos tempranos CPU síncronos
corrían en frecuencias de reloj bajas comparadas con los modernos diseños
microelectrónicos, (ver más abajo para una exposición sobre la frecuencia de reloj).
Eran muy comunes en este tiempo las frecuencias de la señal del reloj con un rango
desde 100 kHz hasta 4 MHz, limitado en gran parte por la velocidad de los
dispositivos de conmutación con los que fueron construidos CPU, memoria de
núcleo, e interfaz de bus externo de un MSI PDP-8/I.
La complejidad del diseño de los CPU se incrementó a medida que varias
tecnologías facilitaron la construcción de dispositivos electrónicos más pequeños y
confiables. La primera de esas mejoras vino con el advenimiento del transistor. Los
CPU transistor izados durante los años 1950 y los años 1960 no tuvieron que ser
construidos con elementos de conmutación abultados, no fiables, y frágiles, como
los tubos de vacío y los relees eléctricos. Con esta mejora, fueron construidos CPU
más complejos y más confiables sobre una o varias tarjetas de circuito impreso que
contenían componentes discretos (individuales).
Durante este período, ganó popularidad un método de fabricar muchos transistores
en un espacio compacto. El circuito integrado (IC) permitió que una gran cantidad
de transistores fueran fabricados en una simple oblea basada en semiconductor o
"chip". Al principio, solamente circuitos digitales muy básicos, no especializados,
como las puertas NOR fueron miniaturizados en IC. Los CPU basadas en estos IC
de "bloques de construcción" generalmente son referidos como dispositivos de
pequeña escala de integración "small-scale integration" (SSI). Los circuitos
integrados SSI, como los usados en el computador guía del Apoyo (Apoyo Guidance
Computer), usualmente contenían transistores que se contaban en números de
múltiplos de diez. Construir un CPU completo usando IC SSI requería miles de chips
individuales, pero todavía consumía mucho menos espacio y energía que diseños
anteriores de transistores discretos. A medida que la tecnología microelectrónica
avanzó, en los IC fue colocado un número creciente de transistores, disminuyendo
21
así la cantidad de IC individuales necesarios para un CPU completo. Los circuitos
integrados MSI y el LSI (de mediana y gran escala de integración) aumentaron el
número de transistores a cientos, y luego a miles.
En 1964, IBM introdujo su arquitectura de computador System/360, que fue usada
en una serie de computadores que podían ejecutar los mismos programas con
velocidades y desempeños diferentes. Esto fue significativo en un tiempo en que la
mayoría de las computadoras electrónicas eran incompatibles entre sí, incluso las
hechas por el mismo fabricante. Para facilitar esta mejora, IBM utilizó el concepto
de microprograma, a menudo llamado "micro código", ampliamente usado aún en
los CPU modernos. La arquitectura System/360 era tan popular que dominó el
mercado del mainframe durante las siguientes décadas y dejó una herencia que
todavía aún perdura en las computadoras modernas, como el IBM Series. En el
mismo año de 1964, Digital Equipment Corporation.
Digital Equipment Corporation (DEC) introdujo otro computador que sería muy
influyente, dirigido a los mercados científicos y de investigación, el PDP-8. DEC
introduciría más adelante la muy popular línea del PDP-11, que originalmente fue
construido con IC SSI pero eventualmente fue implementado con componentes LSI
cuando se convirtieron en prácticos. En fuerte contraste con sus precursores hechos
con tecnología SSI y MSI, la primera implementación LSI del PDP-11 contenía un
CPU integrado únicamente por cuatro circuitos integrados LSI.
Los computadores basados en transistores tenían varias ventajas frente a sus
predecesores. Aparte de facilitar una creciente fiabilidad y un menor consumo de
energía, los transistores también permitían al CPU operar a velocidades mucho más
altas debido al corto tiempo de conmutación de un transistor en comparación a un
tubo o relé. Gracias tanto a esta creciente fiabilidad como al dramático incremento
de velocidad de los elementos de conmutación que por este tiempo eran casi
exclusivamente transistores, se fueron alcanzando frecuencias de reloj del CPU de
decenas de megahertz. Además, mientras que los CPU de transistores discretos y
22
circuitos integrados se usaban comúnmente, comenzaron a aparecer los nuevos
diseños de alto rendimiento como procesadores vectoriales SIMD (Single Instruction
Múltiple Data) o por su traducción al español, Simple Instrucción Múltiples Datos.
Estos primeros diseños experimentales dieron lugar más adelante a la era de las
supercomputadoras especializadas, como los hechos por Cray Inc.
Desde la introducción del primer microprocesador, el Intel 4004, en 1970, y del
primer microprocesador ampliamente usado, el Intel 8080, en 1974, esta clase de
CPUs ha desplazado casi totalmente el resto de los métodos de implementación de
la Unidad Central de Proceso. Los fabricantes de mainframes y minicomputadores
de ese tiempo.
Las generaciones previas de CPU fueron implementadas como componentes
discretos y numerosos circuitos integrados de pequeña escala de integración en una
o más tarjetas de circuitos. Por otro lado, los microprocesadores son CPU
fabricados con un número muy pequeño de IC; usualmente solo uno. El tamaño más
pequeño del CPU, como resultado de estar implementado en una simple pastilla,
significa tiempos de conmutación más rápidos debido a factores físicos como el
decrecimiento de la capacitancia parásita de las puertas. Esto ha permitido que los
microprocesadores síncronos tengan tiempos de reloj con un rango de decenas de
MHz a varios GHz. Adicionalmente, como ha aumentado la capacidad de construir
transistores excesivamente pequeños en un IC, la complejidad y el número de
transistores en un simple CPU también se ha incrementado dramáticamente. Esta
tendencia ampliamente observada es descrita por la ley de Moore, que ha
demostrado hasta la fecha, ser una predicción bastante exacta del crecimiento de
la complejidad de los CPU y otros IC.
Mientras que, en los pasados sesenta años han cambiado drásticamente, la
complejidad, el tamaño, la construcción, y la forma general del CPU, es notable que
el diseño y el funcionamiento básico no ha cambiado demasiado. Casi todos los
23
CPU comunes de hoy se pueden describir con precisión como máquinas de
programa almacenado de von Neumann.
A medida que la ya mencionada ley del Moore continúa manteniéndose verdadera,
se han presentado preocupaciones sobre los límites de la tecnología de transistor
del circuito integrado. La miniaturización extrema de puertas electrónicas está
causando los efectos de fenómenos que se vuelven mucho más significativos, como
el electro-migración, y el sub-umbral de pérdida. Estas más nuevas preocupaciones
están entre los muchos factores que hacen a investigadores estudiar nuevos
métodos de computación como la computadora cuántica, así como ampliar el uso
de paralelismo, y otros métodos que extienden la utilidad del modelo clásico de von
Neumann.
2.3.1 ¿Qué diferencia hay entre una CPU y GPU?
Si bien en un computador genérico no es posible reemplazar la CPU por una GPU,
hoy en día las GPU son muy potentes y pueden incluso superar la frecuencia de
reloj de una CPU antigua (más de 1,5 gigahercios). Pero la potencia de las GPU y
su veloz ritmo de desarrollo reciente se deben a dos factores diferentes. El primer
factor es la alta especialización de las GPU, ya que al estar pensadas para
desarrollar una sola tarea, es posible dedicar más silicio en su diseño para llevar a
cabo esa tarea más eficientemente. Por ejemplo, las GPU actuales están
optimizadas para cálculo con valores en coma flotante, predominantes en los
gráficos 3D.
Por otro lado, muchas aplicaciones gráficas conllevan un alto grado de paralelismo
inherente, al ser sus unidades fundamentales de cálculo (vértices y píxeles)
completamente independientes. Por tanto, es una buena estrategia usar la fuerza
bruta en las GPU para completar más cálculos en el mismo tiempo. Los modelos
actuales de GPU suelen tener cientos de procesadores shader unificados que son
capaces de actuar como vertex shaders, y como pixel shaders, o fragment shaders.
De este modo, una frecuencia de reloj de unos 1-1,5 GHz (el estándar hoy en día
24
en las GPU de más potencia), es muy baja en comparación con lo ofrecido por las
CPU (3,8-4 GHz en los modelos más potentes, no necesariamente más eficientes),
se traduce en una potencia de cálculo mucho mayor gracias a su arquitectura en
paralelo.
Una de las mayores diferencias con la CPU estriba en su arquitectura. A diferencia
del procesador central, que tiene una arquitectura de von Neumann, la GPU se basa
en el Modelo Circulante. Este modelo facilita el procesamiento en paralelo, y la gran
segmentación que posee la GPU para sus tareas.6
6 Danays Costa Alonso (2011) http://www.monografias.com/trabajos83/unidad-central-procesamiento-cpu/unidad-central-procesamiento-cpu.shtml
25
2.4 Programación de la GPU
Al inicio, la programación de la GPU se realizaba con llamadas a servicios de
interrupción de la BIOS. Tras esto, la programación de la GPU se empezó a hacer
en el lenguaje ensamblador específico a cada modelo. Posteriormente, se introdujo
un nivel más entre el hardware y el software, con la creación de interfaces de
programación de aplicaciones (API) específicas para gráficos, que proporcionaron
un lenguaje más homogéneo para los modelos existentes en el mercado. La primera
API usada ampliamente fue el estándar abierto OpenGL (Open Graphics
Language), tras el cual Microsoft desarrolló DirectX.
2.4.1 OpenGL
OpenGL es una especificación estándar que define una API multilenguaje y
multiplataforma para escribir aplicaciones que produzcan gráficos 2D y 3D. La
interfaz consiste en más de 250 funciones diferentes que pueden usarse para
dibujar escenas tridimensionales complejas a partir de primitivas geométricas
simples, tales como puntos, líneas y triángulos. Fue desarrollada originalmente por
Silicon Graphics Inc. (SGI) en 19922 y se usa ampliamente en CAD, realidad virtual,
representación científica, visualización de información y simulación de vuelo.
OpenGL tiene dos propósitos esenciales:
Ocultar la complejidad de la interfaz con las diferentes tarjetas gráficas, presentando
al programador una API única y uniforme.
Ocultar las diferentes capacidades de las diversas plataformas hardware,
requiriendo que todas las implementaciones soporten la funcionalidad completa de
OpenGL (utilizando emulación software si fuese necesario).
El funcionamiento básico de OpenGL consiste en aceptar primitivas tales como
puntos, líneas y polígonos, y convertirlas en píxeles. Este proceso es realizado por
una pipeline gráfica conocida como Máquina de estados de OpenGL.8 La mayor
parte de los comandos de OpenGL bien emiten primitivas a la pipeline gráfica o bien
26
configuran cómo la pipeline procesa dichas primitivas. Hasta la aparición de la
versión 2.0 cada etapa de la pipeline ejecutaba una función prefijada, resultando
poco configurable. A partir de la versión 2.0 algunas etapas son programables
usando un lenguaje de programación llamado GLSL.
OpenGL es una API basada en procedimientos de bajo nivel que requiere que el
programador dicte los pasos exactos necesarios para renderizar una escena. Esto
contrasta con las APIs descriptivas, donde un programador sólo debe describir la
escena y puede dejar que la biblioteca controle los detalles para representarla. El
diseño de bajo nivel de OpenGL requiere que los programadores conozcan en
profundidad la pipeline gráfica, a cambio de darles libertad para implementar
algoritmos gráficos novedosos.
2.4.2 DirectX
Es una colección de API desarrolladas para facilitar las complejas tareas
relacionadas con multimedia, especialmente programación de juegos y vídeo, en la
plataforma Microsoft Windows.
DirectX consta de las siguientes API:
Direct3D: utilizado para el procesamiento y la programación de
gráficos en tres dimensiones (una de las características más usadas
de DirectX).
Direct Graphics: para dibujar imágenes en dos dimensiones (planas),
y para representar imágenes en tres dimensiones.
DirectInput: para procesar datos del teclado, mouse, joystick y otros
controles para juegos.
DirectPlay: para comunicaciones en red.
DirectSound: para la reproducción y grabación de sonidos de ondas.
DirectMusic: para la reproducción de pistas musicales compuestas
con DirectMusic Producer.
27
DirectShow: para reproducir audio y vídeo con transparencia de red.
DirectSetup: para la instalación de componentes DirectX.
DirectCompute: lenguaje e instrucciones especiales para el manejo
de cientos o miles de hilos de procesamiento, especial para
procesadores de núcleos masivos.7
7 Wikipedia (2016) https://es.wikipedia.org/wiki/Unidad_de_procesamiento_gráfico
28
2.4.3 BIOS
BIOS es el acrónimo de Binary Input Output System y se encuentra en todos
los PCs. Su importancia es tal, que sin este componente no podrías ni encender el
equipo.
Este elemento forma parte del chipset y por lo tanto se encuentra sobre la placa
base. Físicamente la BIOS no es más que un pequeño chip que se activa cuando
pulsas el botón de encendido, si quieres saber su ubicación exacta no tienes más
que consultar el manual de tu placa. El termino BIOS se usa tanto para referirse al
programa como para designar el componente físico.
La BIOS tiene varias funciones. La principal es arrancar el PC. Cuando esta
enciende, realiza el test de memoria RAM y comprueba que dispositivos, como por
ejemplo los discos duros, están conectados.
En este proceso se encarga de configurarlos y ofrecérselos al sistema operativo. Si
la BIOS es incapaz de detectar un determinado dispositivo el sistema no podrá
usarlo, aquí puedes ver la importancia de este elemento.
La BIOS, por tanto, se convierte en la encargada de ofrecer la capa más cercana al
hardware.
Hace algunos años, cuando los dispositivos eran más lentos. La BIOS realizaba las
operaciones de entrada y salida, de ahí su nombre. Es decir, llevaba los datos desde
los dispositivos al procesador. Esto ha cambiado y ahora se utilizan otros sistemas
más rápidos como accesos DMA en los cuales el procesador mapea la memoria de
las tarjetas saltándose la BIOS y accediendo directamente a los datos.
La información necesaria para llevar a cabo su función se encuentra almacenada
en una memoria, que se conoce como CMOS el cual es otro chip que se encuentra
sobre la placa. Para que no se pierdan sus datos el sistema usa una pila como
fuente de alimentación y cuando esta se consume el equipo pierde su configuración
y la hora que tiene que volver a configurarse una vez cambiada la pila.8
8 Angel Luis Sánchez (2016) http://computadoras.about.com/od/placa-base/a/Qu-E-Es-La-Bios-Y-Para-Que-Se-Utiliza.htm
29
2.4.4 vBIOS
Video BIOS o vBIOS es un Sistema Básico de Entrada y Salida (Basic Input Output
System) de una tarjeta de gráficos o de un controlador de gráficos integrado en una
computadora. La Video BIOS provee un set de funciones relacionadas con el video
que son usadas por programas para acceder al hardware de video.
Cuando la computadora inicia, por lo regular se muestra el fabricante de la tarjeta
de gráficos, el modelo, la versión del BIOS y el total de memoria de video en
pantalla.
2.4.5 ¿Qué es un driver?
Un controlador de dispositivo o manejador de dispositivo es un programa informático
en colaboración con que permite al sistema operativo interaccionar con un
periférico, haciendo una abstracción del hardware y proporcionando una interfaz
(posiblemente estandarizada) para utilizar el dispositivo. Básicamente, el driver es
una pieza esencial del software, sin la cual el hardware seria inutilizable.
Existen tantos tipos de controladores como tipos de periféricos, y es común
encontrar más de un controlador posible para un mismo dispositivo, cada driver
ofreciendo un nivel distinto de funcionalidades.
Por ejemplo, aparte de los drivers oficiales (normalmente disponibles en el sitio web
del fabricante), se pueden encontrar también los proporcionados por los sistemas
operativos los genéricos, y también versiones no oficiales realizadas por terceros.
30
2.4.6 ¿Qué función tiene un driver de gráficos?
El software o driver de gráficos es un programa hecho específicamente para un
cierto sistema operativo. El sistema operativo utiliza este software para comunicarse
con un hardware en específico (GPU). Existen compañías que desarrollan distintos
drivers de gráficos para sus tarjetas gráficas o microprocesadores con GPU
integrado para que el sistema pueda comunicarse con el hardware de gráficos que
esa misma compañía creo.
Por lo general, existen distintos driver de gráficos para diferentes sistemas
operativos, donde es no es recomendable del todo utilizar versiones genéricas, ya
que podría no sacar provecho en un 100% del GPU que incluye el hardware de
gráficos, además de perder ciertos “features” o modalidades por el simple hecho de
no instalar el driver correcto, o el driver específico para ese dispositivo.
2.5 Monitores
2.5.1 ¿Qué es un monitor?
El monitor es un dispositivo de salida para el ordenador que muestra en su
pantalla los resultados de las operaciones realizadas en él.
Al monitor se lo conoce comúnmente como pantalla de la computadora y es un
periférico que se conecta a la computadora para poder visualizar las acciones y
procesos que se ejecutan. En ese sentido, es clave para su uso, tanto como el
teclado o el mouse.
Un monitor dispone de varios puntos que deben ser considerados para su distinción
en términos de usabilidad y calidad. En principio, los pixeles, o la unidad mínima
representable. También, el tamaño de punto o "dot pitch", que es el espacio entre
dos fósforos coloreados de un pixel. Por otro lado, el área útil, la resolución máxima,
el tamaño de la pantalla, ancho de la banda, Hz o frecuencia de refresco vertical u
horizontal, blindaje, tipo de monitor, líneas de tensión.
31
2.5.2 Un poco más acerca de los monitores
Las primeras computadoras se comunicaban con el operador mediante unas
pequeñas luces, que se encendían o se apagaban al acceder a determinadas
posiciones de memoria o ejecutar ciertas instrucciones.
Años más tarde aparecieron ordenadores que funcionaban con tarjeta perforada,
que permitían introducir programas en el computador. Durante los años 60, la forma
más común de interactuar con un computador era mediante un teletipo, que se
conectaba directamente a este e imprimía todos los datos de una sesión informática.
Fue la forma más barata de visualizar los resultados hasta la década de los 70,
cuando empezaron a aparecer los primeros monitores de CRT (tubo de rayos
catódicos). Seguían el estándar MDA (Monochrome Display Adapter), y eran
monitores monocromáticos (de un solo color) de IBM.
Estaban expresamente diseñados para modo texto y soportaban subrayado,
negrita, cursiva, normal e invisibilidad para textos. Poco después y en el mismo año
salieron los monitores CGA (Color Graphics Adapter –gráficos adaptados a color–)
fueron comercializados en 1981 al desarrollarse la primera tarjeta gráfica a partir del
estándar CGA de IBM. Al comercializarse a la vez que los MDA los usuarios de PC
optaban por comprar el monitor monocromático por su costo.
Tres años más tarde surgió el monitor EGA (Enhanced Graphics Adapter -
adaptador de gráficos mejorados) estándar desarrollado por IBM para la
visualización de gráficos, este monitor aportaba más colores (16) y una mayor
resolución. En 1987 surgió el estándar VGA (Video Graphics Array - Matriz gráfica
de video) fue un estándar muy acogido y dos años más tarde se mejoró y rediseñó
para solucionar ciertos problemas que surgieron, desarrollando así SVGA (Super
VGA), que también aumentaba colores y resoluciones, para este nuevo estándar se
desarrollaron tarjetas gráficas de fabricantes hasta el día de hoy conocidos como
S3 Graphics, NVIDIA o ATI entre otros.
32
2.5.3 Parámetros fundamentales de un monitor
- Píxel: unidad mínima representable en un monitor. Los monitores pueden
presentar píxeles muertos o atascados. Se notan porque aparecen en blanco. Más
común en portátiles.
- Tamaño de punto o (dot pitch): el tamaño de punto es el espacio entre dos
fósforos coloreados de un píxel. Es un parámetro que mide la nitidez de la imagen,
midiendo la distancia entre dos puntos del mismo color; resulta fundamental a
grandes resoluciones. Los tamaños de punto más pequeños producen imágenes
más uniformes. Un monitor de 14 pulgadas suele tener un tamaño de punto de 0,28
mm o menos. En ocasiones es diferente en vertical que en horizontal, o se trata de
un valor medio, dependiendo de la disposición particular de los puntos de color en
la pantalla, así como del tipo de rejilla empleada para dirigir los haces de electrones.
En LCD y en CRT de apertura de rejilla, es la distancia en horizontal, mientras que
en los CRT de máscara de sombra, se mide casi en diagonal. Lo mínimo exigible
en este momento es que sea de 0,28mm. Para CAD o en general para diseño, lo
ideal sería de 0,25 mm o menor. 0,21 en máscara de sombra es el equivalente a
0.24 en apertura de rejilla.
- Área útil: el tamaño de la pantalla no coincide con el área real que se utiliza
para representar los datos.
- Ángulo de visión: es el máximo ángulo con el que puede verse el monitor sin
que se degrade demasiado la imagen. Se mide en grados.
- Luminancia: es la medida de luminosidad, medida en Candela.
- Tiempo de respuesta: también conocido como latencia. Es el tiempo que le
cuesta a un píxel pasar de activo (blanco) a inactivo (negro) y después a activo de
nuevo.
- Contraste: es la proporción de brillo entre un píxel negro a un píxel blanco que
el monitor es capaz de reproducir. Algo así como cuantos tonos de brillo tiene el
monitor.
33
- Coeficiente de contraste de imagen: se refiere a lo vivo que resultan los
colores por la proporción de brillo empleada. A mayor coeficiente, mayor es la
intensidad de los colores (30000:1 mostraría un colorido menos vivo que 50000:1).
- Consumo: cantidad de energía consumida por el monitor, se mide en Vatio.
- Ancho de banda: frecuencia máxima que es capaz de soportar el monitor.
- Frecuencia de refresco vertical: son 2 valores entre los cuales el monitor es
capaz de mostrar imágenes estables en la pantalla.
- Frecuencia de refresco horizontal: similar al anterior pero en sentido
horizontal, para dibujar cada una de las líneas de la pantalla.
- Blindaje: un monitor puede o no estar blindando ante interferencias eléctricas
externas y ser más o menos sensible a ellas, por lo que en caso de estar blindando,
o semi-blindado por la parte trasera llevara cubriendo prácticamente la totalidad del
tubo una plancha metálica en contacto con tierra o masa.
- Tipo de monitor: en los CRT pueden existir 2 tipos, de apertura de rejilla o de
máscara de sombra.
- Líneas de tensión: son unas líneas horizontales, que tienen los monitores de
apertura de rejilla para mantener las líneas que permiten mostrar los colores
perfectamente alineadas; en 19 pulgadas lo habitual suelen ser 2, aunque también
los hay con 3 líneas, algunos monitores pequeños incluso tienen una sola.9
9 Wilmar Ruiz Arredondo (2015) http://timerime.com/es/evento/1975674/
34
2.6 Nuevas tecnologías
La comunicación en todos los ámbitos de nuestras vidas está produciendo un
cambio significativo en nuestra manera de trabajar, de relacionarnos y de aprender.
Los cambios en la tecnología han sido enorme en la última década, lo podemos ver
en la telefonía celular, comparando como era hace 5 años y como es actualmente;
lo podemos observar en las computadoras, la robustez de hardware tanto en
dispositivos móviles como computadoras portátiles y teléfonos celulares se han ido
implementando nuevas modalidades que han hecho cambios rotundos en nuestra
vida diaria.
Actualmente se siguen desarrollando nuevas modalidades para mejorar la forma en
que interactuamos con los dispositivos que utilizamos día con día, para de esta
forma se puede facilitar el uso de los mismos. Una de las nuevas modalidades que
se están implementando últimamente es el Wireless, o por su traducción al español,
sin cables. La forma en que esta comunicación sin cables impacta en el uso de las
computadoras es sorprendente. El Wi-Fi es un ejemplo de cómo puede cambiar la
interacción del usuario usando este tipo de tecnologías. Ahora este tipo de
tecnologías se ha empezado a implementar en la visualización de gráficos del
usuario, para que éste pueda mostrar la imagen de su computadora o su teléfono
celular en una pantalla de forma inalámbrica.
2.6.1 WiDi
Intel Wireless Display, comúnmente conocido como WiDi, es un protocolo de Intel
Corporation, lanzado el 8 de noviembre de 2012, para la transmisión de imagen y
sonido desde cualquier portátil con procesador Intel Core de 3a generación
utilizando como soporte para el protocolo WiDi el protocolo Wi-Fi. Permite a un
dispositivo portátil o un ordenador enviar hasta 1080p HD de video y sonido
envolvente 5.1 a una pantalla compatible de forma inalámbrica.1 A partir de la
versión 3.5 de la Intel Wireless Display, se contará con el apoyo de la norma
Miracast. Además permite visualizar el escritorio del equipo en el televisor de
35
manera que se puedan ver fotos, películas, realizar exposiciones o simplemente
trabajar cómodamente en una pantalla de mayor tamaño.
Entre las ventajas de la utilización de WiDi se encuentra, la eliminación del uso de
cables para la conexión, con lo que se consigue mayor comodidad para el usuario
asi como una gran libertad a la hora de usar computadoras portátiles, el usuario
puede situarse donde le sea más cómodo. Además de contar un soporte de video
1080p HD, se visualiza perfectamente sin problemas. Cuenta también con
reproducción BluRay o DVD.
La tecnología Wireless Display tiene una emisión a una frecuencia de 60Ghz,
bastante eficiente en la transmisión de datos siendo posible emitir video en alta
definición 1080p a 60 cuadros por segundo sin perder calidad. Tiene un alcance
efectivo de 10 metros, y cuenta con compatibilidad con HDCP (High-Bandwidth
Digital Content Protection) permitiendo realizar streaming desde BluRay o DVD.10
10 Carlos Zahumenszky (2012) http://www.xataka.com/xataka/widi-wireless-hd-whdi-wigig-wivu-las-mil-caras-del-video-sin-cables
36
III. BIBLIOGRAFÍA
Alonso, D. C. (2011). Obtenido de http://www.monografias.com/trabajos83/unidad-
central-procesamiento-cpu/unidad-central-procesamiento-cpu.shtml
Arredondo, W. L. (2015). Obtenido de http://timerime.com/es/evento/1975674/ Intel Corp. (2016). Obtenido de
http://www.intel.com/content/www/us/en/support/graphics-drivers/000005749.html
Lidón, J. G. (2016). Obtenido de https://sites.google.com/site/mmelasespenyetas/home/tarjetas-graficas
MyPCSet. (2015). Obtenido de https://mypcset.wordpress.com/2015/01/27/la-tarjeta-grafica-gpu/
Recinto Universitario De Mayagüe. (2010). Obtenido de http://www.uprm.edu/cti/docs/manuales/manuales-espanol/vax-vms/bosquejos/Bintcomp.pdf
Sánchez, A. L. (2016). Obtenido de http://computadoras.about.com/od/placa-base/a/Qu-E-Es-La-Bios-Y-Para-Que-Se-Utiliza.htm
Torres, J. (2013). Obtenido de https://hipertextual.com/archivo/2013/12/hardware-gpu-grafica/
Wikipedia. (2016). Obtenido de https://es.wikipedia.org/wiki/Tarjeta_gráfica
Wikipedia. (2016). Obtenido de https://es.wikipedia.org/wiki/Unidad_de_procesamiento_gráfico
Zahumenszky, C. (2012). Obtenido de http://www.xataka.com/xataka/widi-wireless-hd-whdi-wigig-wivu-las-mil-caras-del-video-sin-cables
37
IV. CONCLUSIONES
Es fácil ver como la tecnología ha ido creciendo a través de los años. En tan
solo 10-20 años se puede observar un cambio enorme en como el ser humano hace
uso de las tecnologías y como afecta en nuestra vida diaria.
Hoy en día para el trabajo, la escuela o por ocio las personas utilizan los dispositivos
móviles y computadoras sin saber cómo estas se fueron desarrollando a través de
los años. Sabiendo cómo estos han ido desarrollándose se puede apreciar el
esfuerzo que cuesta llevar estas tecnologías al mercado, ya que debe de pasar por
una gran cantidad de etapas para que salgan a la venta y pueda ser utilizado con
facilidad por cualquier persona, lo cual es un punto muy importante para cualquier
dispositivo, la facilidad de manejo y visualización, aquí es donde entran en juego la
representación gráfica y el funcionamiento de la GPU. Gracias a que ahora
contamos con diferentes funciones y modalidades en cuanto a la visualización
gráfica de los dispositivos es posible utilizar los celulares y computadoras como lo
hacemos en nuestra vida diaria, además que se cuenta con una alta facilidad de
manejo y eficiencia de las computadoras y teléfonos inteligentes. Siendo que años
atrás las únicas personas que tenían acceso a este tipo de tecnologías debían
contar con estudios referentes al manejo de las computadoras.
38
GLOSARIO
Software: Conjunto de programas, instrucciones y reglas informáticas que permiten ejecutar distintas tareas en una computadora. Hardware: Parte que puedes ver del computador, es decir todos los componentes de su estructura física. FORTRAN: Lenguaje de programación de alto nivel de propósito general, procedimental e imperativo, que está especialmente adaptado al cálculo numérico y a la computación científica. Chipset: Grupo de circuitos integrados que están colocados de fábrica en el cuerpo de la motherboard. Encargado de entablar la conexión correcta entre la placa madre y diversos componentes esenciales de la PC. PC: Computadora Personal, o por sus iniciales en inglés Personal Computer. Pipeline: Serie de sesiones interconectadas a través de las cuales viaja información de datos y comandos. También utilizado para referirse a la cantidad de salidas de video que soporta una GPU. SoC: System-O-a-Chip o por su traducción Sistema en Chip, es un circuito integrado el cual está conformado por todos los componentes de una computadora u otros sistemas electrónicos, todo dentro de un mismo chip. Renderizado: Proceso de generar una imagen o video mediante el calculo de iluminación partiendo de un modelo en 3D. DMA: Función de sistema de computadora que permite a cierto hardware de subsistema acceder a la memoria principal de sistema (RAM), independiente de la Unidad Central de Procesos (CPU). PostScript: Lenguaje de descripción de páginas, utilizado en muchas impresoras y, como formato de transporte de archivos gráficos en talleres de impresión profesional. Coprocesador: Microprocesador de un ordenador utilizado como suplemento de las funciones del procesador principal (CPU). ROM: Read Only Memory, es un circuito integrado de memoria de solo lectura que almacena instrucciones y datos de forma permanente. RAM: Random Access Memory, memoria utilizada como memoria de trabajo de computadoras para el sistema operativo, los programas y la mayor parte del
39
software. Aquí se cargan todas las instrucciones que ejecuta el CPU y otras unidades de la computadora. VRAM: Memoria gráfica de acceso aleatorio (Video Random Access Memory). Memoria RAM que utiliza el controlador gráfico para poder manejar toda la información visual que manda la CPU al sistema. GDDR: Graphics Double Date Rate, fue un tipo de memoria RAM diseñada para tarjetas gráficas y, al igual que la memoria RAM del ordenador, funcionaba según el estándar DDR, enviando dos bits por cada ciclo de reloj, pero en este caso los módulos de memoria GDDR se optimizaron para lograr altas frecuencias de reloj acortando los tiempos de acceso de las células de memoria en comparación con la memoria DDR convencional. TTL: Transistor-Transistor Logic, es una tecnología de construcción de circuitos electrónicos digitales. Resolución: Número de píxeles que puede ser mostrado en una pantalla. RGB: Siglas en inglés de Red, Green y Blue, en español rojo, verde y azul BIOS: Basic Input Output System, Sistema básico de entrada y salida encargado de iniciar y probar el hardware del sistema y cargar un gestor de arranque o un sistema operativo desde un dispositivo de almacenamiento de datos. CRT: Cathode Ray Tube, o por su traducción al español, tubo de rayos catódicos. Es una tecnología que permite visualizar imágenes mediante un haz de rayos catódicos constante dirigido contra una pantalla de vidrio recubierta de fósforo y plomo. DVI: Digital Visual Interface, o Interfaz Visual Digital es una interfaz de video diseñada para obtener la máxima calidad de visualización posible en pantallas digitales. EDVAC: Electronic Discrete Variable Automatic Computer, fue una de las primeras computadoras electrónicas binaria, la cual tuvo el primer programa diseñado para ser almacenado. PDP: Programmed Data Processor, por su traducción al español, Procesador de datos programado. Mainframes: Computadoras usadas primordialmente para grandes organizaciones de aplicaciones críticas, procesamiento de datos en grandes cantidades, tales como estadísticas de consumo e industrias, planeación de recursos de empresas y procesamiento de transacciones. Paralelismo: Función que realiza el procesador para ejecutar varias tareas al mismo tiempo.
40
Shaders: La tecnología shaders o sombreadores es cualquier unidad escrita en un lenguaje de sombreado que se puede compilar independientemente. CAD: Diseño asistido por computadora, o por sus siglas en ingles de Computer-Aided Design. CMOS: Es un chip semiconductor dentro de la tarjeta madre alimentado por una batería, el cual almacena información como hora, fecha y configuraciones especificas del ordenador. Miracast: Es un nuevo protocolo que nos permitirá transmitir audio y vídeo mediante WiFi entre distintos dispositivos. Se apoya en la red WiFi disponible (802.11n), usando las bandas de 2’4GHz y 5GHz.