Documentos de Académico
Documentos de Profesional
Documentos de Cultura
VGA
Construir un circuito controlador de video es más simple de lo que
piensas. Enoch construyó un monitor VGA
controlador con solo dos contadores binarios ascendentes de 10 bits, cuatro flip-
flops SR y 11 compuertas AND.
Aunque no es un reemplazo para una tarjeta gráfica, es una excelente manera de
mostrar imágenes.
entender las señales de video y
la construcción de circuitos de controlador de video es
Siempre un desafío. Pero las cosas son
cada vez más fácil Hace poco tomé otro
mira la señal de video VGA y
me di cuenta de que podía construir un VGA
Controlador de monitor con solo dos binarios
mostradores, cuatro chanclas y 11 Y
puertas Sí, es cierto, solo dos de 10 bits
contadores binarios, cuatro chanclas SR,
y 11 Y puertas! Ahora, por supuesto,
este no es un reemplazo para tu alta
finalice la tarjeta gráfica en su PC, ni tampoco
incluso una tarjeta de video de gama baja, pero es
capaz de mostrar imágenes en un
Monitor VGA estándar. Más
importante, este simple monitor VGA
circuito controlador le permite fácilmente
entender cómo el monitor VGA
funciona y cómo controlarlo. Cuando yo
introduje esto a mi introducción
clase de diseño de lógica digital, los estudiantes
estaban totalmente asombrados de que pudiera ser
así de simple
PÍXELES EN PANTALLA
Para comenzar, necesitas
entender cómo un monitor VGA
trabajos. La pantalla del monitor para un
formato VGA estándar contiene
640 columnas por 480 filas de
elementos de imagen llamados píxeles
(ver Figura 1). Una imagen es
mostrado en la pantalla por
encendido y apagado individual
píxeles Encendiendo un píxel
no representa mucho, pero
combinando numerosos píxeles
genera una imagen El monitor
continuamente escanea a través del
pantalla completa, girando rápidamente
píxeles individuales de encendido y apagado.
Aunque los píxeles están activados
uno a la vez, obtienes el
impresión de que todos los píxeles son
encendido porque el monitor escanea con rapidez. Es por eso que los monitores antiguos con
U
Columna 0
Fila 0
Columna 639
Fila 479
640 píxeles por fila
480 píxeles
por columna
Vertical
recordar
Horizontal
recordar
Horizontal
escanear
VGA
Monitor
Pantalla
Figura 1: el monitor VGA tiene 640 columnas y 480 filas. Comienza el escaneo
desde la fila 0, columna 0 y se mueve hacia la derecha y hacia abajo hasta llegar a la fila
479 columna 639
Página 2
13
Número 172
Noviembre de 2004
BODEGA DE CIRCUITO ®
www.circuitcellar.com
las señales de sincronización son lógicas 1
valor. Una exploración de fila comienza con el
señal de sincronización horizontal baja para
3.77 μs (ver sección B en la Figura 3). UNA
1.79-μs de alto en la señal sigue esto
(Ver sección C en la Figura 3). A continuación, el
se envían datos para las tres señales de color,
un píxel a la vez, para el 640
columnas para 25,42 μs. Finalmente despues
el último píxel de la columna, hay otro
0.79 μs de inactividad en el RGB
líneas de señal para el retroceso horizontal
antes de que salga la señal de sincronización horizontal
bajo nuevamente para el siguiente escaneo de fila. los
el tiempo total para completar el escaneo de una fila es
31,77 μs.
El tiempo para la sincronización vertical
la señal es análoga a la horizontal
uno. El activo vertical bajo de 64 μs
la señal de sincronización restablece el escaneo a la parte superior
esquina izquierda de la pantalla (ver sección P
en la figura 3). Sigue una altura de 1,020 μs
esto en la señal. A continuación, están los
480 escaneos de fila de 31.77 μs, que dan un total
de 15,250 μs (480 × 31.77), como se muestra
en la sección R.
Finalmente, después del escaneo de la última fila, hay
son otros 450 μs antes de la vertical
la señal de sincronización baja nuevamente para comenzar
otro escaneo de pantalla completo en el
Esquina superior izquierda. Se necesita un total de
16,784 μs para completar una pantalla completa
escanear.
Para que el monitor funcione
correctamente, simplemente obtenga la horizontal y
sincronización vertical de señales correctas
y luego enviar los datos RGB para
cada píxel en la columna y fila de la derecha
posición. Por ejemplo, si quieres
encienda el píxel rojo en la fila 13 y
columna 48, espere a que llegue el escaneo
fila 13 y columna 48 y luego establezca el
señal roja a la lógica 1. Para lograr
esto, necesitas generar el
señales de sincronización horizontal y vertical
correctamente basado en los diagramas de tiempo
se muestra en la Figura 3. También debe
realizar un seguimiento de la fila actual y
la columna cuenta para que sepa
donde está el escaneo. Resulta que tu
puede hacer ambas cosas usando el
mismo componente, que es el binario
en el mostrador Necesitas dos contadores.
Uno es para generar el horizontal
sincronizar y mantener el tracto de la columna
contar. El segundo es para generar el
sincronización vertical y seguimiento de la
número de filas.
CONTEO DE CICLOS DE RELOJ
Obtener el momento correcto para el
dos señales de sincronización es simple
si usa la frecuencia de reloj correcta.
Para obtener la pantalla 480 × 640
resolución, use un reloj con un 25.175-
Frecuencia de MHz. Un reloj más alto
frecuencia es necesaria para un mayor
resolución de la pantalla. Para los 25.175 MHz
reloj, el período es el siguiente:
66
10
175.25
1
×
o aproximadamente 0.0397 μs por reloj
ciclo. Para la sección B de la horizontal
señal de sincronización, necesita 3.77
μs, que es aproximadamente 95 reloj
ciclos (3.77 / 0.0397). Para la sección C en
Figura 3, necesita 1.79 μs, que es
aproximadamente 45 ciclos de reloj.
Del mismo modo, necesita 640 ciclos de reloj
(sección D) para las 640 columnas de
píxeles y 20 ciclos de reloj para la sección
MI.
El número total de ciclos de reloj.
necesario para cada escaneo de fila es 800 reloj
ciclos (95 + 45 + 640 + 20). Aviso
que con un reloj de 25.175 MHz,
la sección D requiere exactamente 640 ciclos,
generando las 640 columnas por fila. Si
usa una velocidad de reloj diferente, usted
obtendrá una resolución de pantalla diferente.
El número de ciclos de reloj requeridos
por las cuatro regiones en la horizontal
La señal de sincronización se resume en la Tabla 1.
Porque la señal de sincronización vertical es
análogo a la sincronización horizontal
señal, puedes realizar lo mismo
cálculos como con el horizontal
sincronizar regiones para obtener el número de
ciclos necesarios para cada región vertical.
Sin embargo, en lugar de usar el número
de períodos de un reloj de 25.175 MHz, el
los tiempos para cada región vertical son
múltiplos del ciclo horizontal. por
ejemplo, el tiempo para un horizontal
el ciclo es de 31.77 μs, y la sección P
requiere 64 μs, que es aproximadamente
dos ciclos horizontales (2 × 31.77).
La sección Q requiere 1.020 μs, que
es igual a 32 ciclos horizontales
(1.020 / 31,77). El cálculo para
la sección R es 480 ciclos horizontales
(15,250 μs / 31.77 μs). Por supuesto, tiene
ser exactamente 480 veces, porque tú
necesita tener 480 filas por pantalla. los
cantidad de ciclos horizontales requeridos
por las cuatro regiones en la sincronización vertical
La señal también se resume en la Tabla 1.
Si usa un reloj de 25.175 MHz para
conducir un contador para que aumente a
cada ciclo de reloj, todo lo que tienes que hacer
para obtener la sincronización horizontal correcta
señal es contar el número correcto de
ciclos para cada región. Comenzando el
cuenta en cero, establece la sincronización horizontal
señal (H_Sync_out) a cero (para baja).
Cuando el recuento llegue a 95, establezca
H_Sync_out a uno (para alto). Cuando
el recuento alcanza 140 (95 + 45), sigue
H_Sync_out a la una. Cuando el recuento
alcanza 780 (95 + 45 + 640), continuar
para mantener H_Sync_out en uno. Finalmente cuando
el recuento alcanza 800 (95 + 45 + 640 + 20
), establezca H_Sync_out en cero y restablezca el
contador a cero. Esto completa un período
de la señal H_Sync_out.
Del mismo modo, puedes usar otro
contador para la señal de sincronización vertical.
El reloj para este contador se deriva
desde el mostrador horizontal para que el
contador vertical cuenta una vez por cada
ciclo horizontal CIRCUITO CONTROLADOR VGA