manejo de periféricos con la tarjeta nexys - 2 teclado...

38
Teclado PS/2 M. C. Felipe Santiago Espinosa Junio – 2019 Manejo de Periféricos con la Tarjeta Nexys - 2

Upload: others

Post on 04-Oct-2020

10 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Manejo de Periféricos con la Tarjeta Nexys - 2 Teclado PS/2fsantiag/Computo_Reconfig/Manejo_de... · 2019. 6. 18. · El teclado PS/2 El teclado es uno de los principales dispositivos

Teclado PS/2

M. C. Felipe Santiago EspinosaJunio – 2019

Manejo de Periféricoscon la Tarjeta Nexys - 2

Page 2: Manejo de Periféricos con la Tarjeta Nexys - 2 Teclado PS/2fsantiag/Computo_Reconfig/Manejo_de... · 2019. 6. 18. · El teclado PS/2 El teclado es uno de los principales dispositivos

El puerto PS/2 El puerto PS2 fue introducido en las computadoras personales de IBM

como una interfaz para la comunicación de un teclado o ratón. El puerto contiene dos líneas para establecer la comunicación; una para

Datos, en la cual puede haber un flujo serial bidireccional; y la otra es para reloj, con ésta se indica cuando un dato válido puede ser recuperado.

La información es transmitida en un “paquete” de 11 bits que contiene: Bit de Inicio, 8 bits de datos, bit de paridad impar y bit de paro.

Aunque el formato básico es idéntico para un teclado y un ratón, la interpretación de los bits de datos es diferente.

La tarjeta Nexys 2 tiene un puerto PS2 , la tarjeta actúa como anfitrión y el FPGA debe contener el controlador del puerto.

2

Page 3: Manejo de Periféricos con la Tarjeta Nexys - 2 Teclado PS/2fsantiag/Computo_Reconfig/Manejo_de... · 2019. 6. 18. · El teclado PS/2 El teclado es uno de los principales dispositivos

Terminales del Puerto PS/2

La mayoría de dispositivos pueden operar con 3.3 V, sólo los dispositivos más viejos requieren una fuente de 5 volts del puerto.

3

Page 4: Manejo de Periféricos con la Tarjeta Nexys - 2 Teclado PS/2fsantiag/Computo_Reconfig/Manejo_de... · 2019. 6. 18. · El teclado PS/2 El teclado es uno de los principales dispositivos

El teclado PS/2 El teclado es uno de los principales dispositivos periféricos para

introducir datos a un sistema. Básicamente realiza dos funciones:

Envío de códigos. Cuando el usuario presiona una tecla, el teclado envía un código al controlador, correspondiente a la tecla presionada, éste recibe el código y decide si va a realizar una acción o si permanecerá sin cambios.

Ejecución de comandos. Cuando el controlador desea que el teclado realice una acción, como encender sus LEDs, debe enviar un comando para que el teclado lo ejecute.

DatosTeclado

Reloj

Controlador(FPGA)

Datos

Reloj

4

Page 5: Manejo de Periféricos con la Tarjeta Nexys - 2 Teclado PS/2fsantiag/Computo_Reconfig/Manejo_de... · 2019. 6. 18. · El teclado PS/2 El teclado es uno de los principales dispositivos

Envío de códigos El código que el teclado envía al controlador es una trama de 11

con el orden siguiente:

Bit de inicio. La línea de datos normalmente está en un nivel lógico alto, por lo que el bit de inicio es un nivel lógico bajo para indicar al controlador el inicio de la trama.

Byte de datos. Es la representación de la información que el teclado envía al controlador. El dato se envía desde el bit menos significativo (LSB) al bit más significativo (MSB).

Bit de paridad. Este bit lo utiliza el controlador para identificar si la trama es válida. Se utiliza paridad impar.

Bit de paro. Después del bit de paridad, el teclado coloca la línea de datos a un nivel lógico alto para indicar el final de la trama.

5

Page 6: Manejo de Periféricos con la Tarjeta Nexys - 2 Teclado PS/2fsantiag/Computo_Reconfig/Manejo_de... · 2019. 6. 18. · El teclado PS/2 El teclado es uno de los principales dispositivos

Sincronización La señal de reloj es generada por el teclado y se utiliza para la

sincronización durante el envío serial de bits. Su frecuencia máxima es de 33 kHz, sin embargo, la mayoría de los dispositivos operan en un rango entre los 10 kHz y 20 kHz

El teclado coloca los bits de información en los flancos de subida, por lo que el controlador debe leer la línea de datos sincronizando con flanco de bajada.

Cuando se termina el envío de todos los bits de la trama (incluyendo el bit de paro) el teclado deja de generar la señal de reloj.

6

Page 7: Manejo de Periféricos con la Tarjeta Nexys - 2 Teclado PS/2fsantiag/Computo_Reconfig/Manejo_de... · 2019. 6. 18. · El teclado PS/2 El teclado es uno de los principales dispositivos

Solicitud de un comando Un comando tiene un formato similar al de un código: Bit de inicio,

byte de datos, bit de paridad y bit de paro. Un comando es una petición del controlador. El reloj es generado por el teclado. Para la petición de un comando, se requiere del siguiente proceso:

El controlador pone un nivel lógico bajo en la señal de reloj por lo menos 100 μs (para tomar el control de la comunicación).

El controlador inicia el envío colocando un nivel lógico bajo en la señal de datos, este es el bit de inicio y una vez que el teclado lo detecta, comienza con la generación del reloj.

El controlador irá colocando los datos conforme detecte la transición de bajo a alto.

Por último, el controlador espera a que el teclado ponga la línea de reloj en un nivel lógico bajo, que es una indicación de reconocimiento, además de generar el último pulso de reloj.

7

Page 8: Manejo de Periféricos con la Tarjeta Nexys - 2 Teclado PS/2fsantiag/Computo_Reconfig/Manejo_de... · 2019. 6. 18. · El teclado PS/2 El teclado es uno de los principales dispositivos

Las señales durante la solicitud de un comando, del controlador al teclado:

Cuando el controlador envía una orden, debe esperar a recibir el byte de reconocimiento 0xFA.

Solicitud de un comando

8

Page 9: Manejo de Periféricos con la Tarjeta Nexys - 2 Teclado PS/2fsantiag/Computo_Reconfig/Manejo_de... · 2019. 6. 18. · El teclado PS/2 El teclado es uno de los principales dispositivos

Comandos comunes

Comando Descripción

ED Para encender o apagar los LED's: Num Lock, Caps Lock y Scroll Lock. El teclado regresa “FA” despúes de recibir “ED” y el controlador debe enviar un byte en donde los 3 bits menos significativos determinarán el estado de los LED's, el bit 0 ajusta a Scroll Lock, el bit 1 a Num Lock y el bit 2 a Caps Lock (los 5 bits más significativos son ignorados).

EE Eco (prueba de disponibilidad). El teclado regresa “EE” después de recibir “EE”.

F3 Ajusta la frecuencia de repetición de una tecla. Tras enviar “F3” y recibir “FA”, el controlador debe enviar la velocidad de repetición de un código cuando una tecla se mantenga presionada (bytes por segundo).

FE Petición para reenviar, es decir, se solicita al teclado que envíe el código más reciente.

FF Reinicia al teclado.

9

Page 10: Manejo de Periféricos con la Tarjeta Nexys - 2 Teclado PS/2fsantiag/Computo_Reconfig/Manejo_de... · 2019. 6. 18. · El teclado PS/2 El teclado es uno de los principales dispositivos

Códigos de rastreo El código de rastreo es la representación de las teclas cuando

son presionadas. Cada tecla tiene un código de rastreo único.

Si el usuario mantiene presionada una tecla, el teclado se mantiene enviando al controlador su código de rastreo.

El código de rastreo no corresponde con el código ASCII.

Al momento de soltar la tecla presionada, el teclado envía al sistema controlador un código de liberación (0xF0).

10

Page 11: Manejo de Periféricos con la Tarjeta Nexys - 2 Teclado PS/2fsantiag/Computo_Reconfig/Manejo_de... · 2019. 6. 18. · El teclado PS/2 El teclado es uno de los principales dispositivos

Códigos de RastreoLa configuración por default en los teclados modernos es:

11

Page 12: Manejo de Periféricos con la Tarjeta Nexys - 2 Teclado PS/2fsantiag/Computo_Reconfig/Manejo_de... · 2019. 6. 18. · El teclado PS/2 El teclado es uno de los principales dispositivos

Diseño del controlador Un controlador completo debe contar con las siguientes características:

Recepción de datos provenientes del teclado. Envío de comandos para la configuración y manejo del teclado. Detección de errores de Paridad. Detección de errores en la trama, debidos a bits de paro incorrectos.

Sin embargo, se revisará el diseño de un controlador simple que sólo recibe códigos, por medio de una máquina de estados espera los flancos en la señal de reloj, sincroniza la captura serial de datos y notifica la presencia de un código de rastreo listo.

Una aplicación deberá ignorar al carácter 0xF0, que es parte de los códigos de liberación.

12

Page 13: Manejo de Periféricos con la Tarjeta Nexys - 2 Teclado PS/2fsantiag/Computo_Reconfig/Manejo_de... · 2019. 6. 18. · El teclado PS/2 El teclado es uno de los principales dispositivos

Diseño del controlador

clk

cr_listo

rst

dato_ser

flanco

CR(7:0)

U1

teclado

Entradas:

dato_ser: Entrada serial del teclado.flanco: Indica que ocurrió un flanco de bajada en la señal de reloj del teclado.

Salidas:

CR(7:0): Código de rastreo de la tecla presionada.cr_listo: Indicación de que está disponible un código de rastreo.

13

Page 14: Manejo de Periféricos con la Tarjeta Nexys - 2 Teclado PS/2fsantiag/Computo_Reconfig/Manejo_de... · 2019. 6. 18. · El teclado PS/2 El teclado es uno de los principales dispositivos

Diseño del controlador

Idle

Start

Rec

Ready

SyncParity

flanco = '0'

flanco = '1' and dato_ser = '0'

cnt_bits <= cnt_bits;cnt_bits <= cnt_bits;flanco = '0'

CR <= cr_int;cnt_bits <= 0;cr_listo <= '0';

CR <= cr_int;cnt_bits <= 0;cr_listo <= '0';

flanco = '1'

cr_int <= dato_ser & cr_int(7 downto 1);cnt_bits <= cnt_bits + 1;cr_int <= dato_ser & cr_int(7 downto 1);cnt_bits <= cnt_bits + 1;

cnt_bits < 8Stop

flanco = '0'

flanco = '0'

rst = '1'

cnt_bits = 8

cr_listo <= '1';cr_listo <= '1';

flanco = '1'

flanco = '1'

14

Page 15: Manejo de Periféricos con la Tarjeta Nexys - 2 Teclado PS/2fsantiag/Computo_Reconfig/Manejo_de... · 2019. 6. 18. · El teclado PS/2 El teclado es uno de los principales dispositivos

Ratón PS/2

M. C. Felipe Santiago EspinosaJunio – 2019

Manejo de Periféricoscon la Tarjeta Nexys - 2

Page 16: Manejo de Periféricos con la Tarjeta Nexys - 2 Teclado PS/2fsantiag/Computo_Reconfig/Manejo_de... · 2019. 6. 18. · El teclado PS/2 El teclado es uno de los principales dispositivos

El ratón PS/2 El ratón es un periférico que se considera como un dispositivo de entrada o

control de datos, dependiendo de las rutinas que maneja. Tiene su origen en el proyecto dirigido por Douglas C. Engelbart durante la

década de 1960 en el Instituto de Investigación de Stanford (SRI, Stanford Research Institute), donde se buscaban métodos de apuntar y señalar en un monitor de tubos de rayos catódicos.

Su principio de funcionamiento consiste en asumir un sistema de coordenadas relativo en los planos X e Y, en el cuál, los desplazamientos del ratón son traducidos a valores numéricos que representan la magnitud y dirección del desplazamiento.

En la actualidad existen otros dispositivos señaladores derivados del concepto de funcionamiento del ratón: el track-ball, track-point, glide-point, lápiz señalador, pantallas táctiles, etc.

16

Page 17: Manejo de Periféricos con la Tarjeta Nexys - 2 Teclado PS/2fsantiag/Computo_Reconfig/Manejo_de... · 2019. 6. 18. · El teclado PS/2 El teclado es uno de los principales dispositivos

Comunicación Ratón PS2 - Controlador

Maneja el mismo formato de datos que el teclado. El ratón puede enviar datos:

El controlador puede enviar comandos:

17

Page 18: Manejo de Periféricos con la Tarjeta Nexys - 2 Teclado PS/2fsantiag/Computo_Reconfig/Manejo_de... · 2019. 6. 18. · El teclado PS/2 El teclado es uno de los principales dispositivos

La información del desplazamiento y el estado de los botones se agrupa en un paquete de 3 bytes, que se trasmite al controlador en la secuencia siguiente:

18

Page 19: Manejo de Periféricos con la Tarjeta Nexys - 2 Teclado PS/2fsantiag/Computo_Reconfig/Manejo_de... · 2019. 6. 18. · El teclado PS/2 El teclado es uno de los principales dispositivos

Información del ratón

La magnitud de los índices en los campos X e Y representa la cantidad de movimiento que el ratón ha experimentado desde el último reporte. No representan posiciones absolutas.

En el primer campo se tienen dos bits que complementan la información de cada eje, uno indica la dirección de movimiento y el otro si se excedió el rango de valores, que comprende de 0 a 255.

Debe configurarse un modo de operación para determinar cuando el ratón estará enviando la información

19

Page 20: Manejo de Periféricos con la Tarjeta Nexys - 2 Teclado PS/2fsantiag/Computo_Reconfig/Manejo_de... · 2019. 6. 18. · El teclado PS/2 El teclado es uno de los principales dispositivos

Modos de operación del ratónModo de flujo continúo (Stream Mode) Es el más común, en este modo el ratón envía al controlador o anfitrión un reporte cada

que detecta un movimiento o un cambio en el estado de los botones. La frecuencia a la que se reportan los datos se conoce como tasa de muestreo, este parámetro se encuentra en el rango de 10 a 200 muestras/seg.

Modo Remoto (Remote Mode) En este modo las entradas del ratón, movimientos y botones, son leídas en la tasa de

muestreo actual, actualizando contadores y banderas; pero la notificación del estado de los mismos se realiza sólo cuando es requerido por el anfitrión.

Modo de retorno automático (Wrap Mode) Es un modo eco, ya que repite todos los bytes recibidos directamente al anfitrión, sin

respuesta adicional o posterior, incluso si el byte representa un comando válido. Dos excepciones a esto son los comandos reinicio (FFh) y reinicio en modo Wrap (ECh).

20

Page 21: Manejo de Periféricos con la Tarjeta Nexys - 2 Teclado PS/2fsantiag/Computo_Reconfig/Manejo_de... · 2019. 6. 18. · El teclado PS/2 El teclado es uno de los principales dispositivos

Inicialización La secuencia de interacción básica de inicialización que se da entre el

ratón PS/2 y el controlador consiste en los siguientes eventos: Al alimentarse, el ratón ejecuta una rutina interna de comprobación del

dispositivo. Envía el byte AAh indicando que el test se ha realizado satisfactoriamente y luego envía el identificador (ID) del dispositivo; que es 00h para un dispositivo señalizador compatible con el estándar PS/2.

El ratón por defecto inicia en el modo stream, pero el controlador debe enviar el comando F4h para habilitar el envío de datos que inicialmente se encuentra desactivado.

El ratón confirma el comando mediante el byte de reconocimiento (FEh).

El ratón envía el reporte de los datos por cada evento que registre el dispositivo.

21

Page 22: Manejo de Periféricos con la Tarjeta Nexys - 2 Teclado PS/2fsantiag/Computo_Reconfig/Manejo_de... · 2019. 6. 18. · El teclado PS/2 El teclado es uno de los principales dispositivos

Comandos para el ratónCódigo Descripción

E6h Para fijar la escala a 1:1 (escala por defecto).E7h Para fijar la escala a 2:1.

E8h

Para fijar la resolución del ratón, una vez recibido reconocimiento (FAh), el controlador debe enviar otro byte con la resolución a ser empleada:

00h – 1 incremento por milímetro.01h – 2 incrementos por milímetro.02h – 4 incrementos por milímetro. (default)03h – 8 incrementos por milímetro.

EAh Para fijar al ratón en modo Stream (modo activo por default)

EBh Para leer el paquete de datos de movimiento cuando el ratón se encuentra en modo remoto.

ECh Para reiniciar el ratón si está en modo wrap.EEh Para fijar al ratón en modo wrap. F0h Para fijar al ratón en modo remoto.

F2h Para leer el ID (identificador) del ratón. El identificador de un ratón estándar PS/2 es 00h.

22

Page 23: Manejo de Periféricos con la Tarjeta Nexys - 2 Teclado PS/2fsantiag/Computo_Reconfig/Manejo_de... · 2019. 6. 18. · El teclado PS/2 El teclado es uno de los principales dispositivos

E9h

Para solicitar el estado actual del ratón, es un paquete de tres bytes, estructurado de la siguiente forma:

Byte 1Bit0 – Estado del botón derechoBit1 – Estado del botón medioBit2 – Estado del botón izquierdoBit3 – No empleado (fijado a 0)Bit4 – Escala actual (1=2:1; 0=1:1);Bit5 – Estado del reporte de datos (1=habilitado; 0=deshabilitado)Bit6 – Modo actual (1=modo remoto; 0=modo stream)Bit7 – No empleado (fijado a 0)Byte 2 – Resolución actualByte 3 – Tasa de muestreo actual

Después de enviar el paquete de estado, el ratón reinicia los contadores de movimiento.

F3h

Para fijar la tasa de muestreo para el ratón, una vez recibido reconocimiento (FAh), el controlador debe enviar otro byte con la tasa de muestreo a emplear, como sigue: 0Ah – 10 mps 14h – 20 mps 28h – 40 mps 3Ch – 60 mps 50h – 80 mps 64h – 100 mps (default) C8h – 200 mps23

Page 24: Manejo de Periféricos con la Tarjeta Nexys - 2 Teclado PS/2fsantiag/Computo_Reconfig/Manejo_de... · 2019. 6. 18. · El teclado PS/2 El teclado es uno de los principales dispositivos

F4h Para habilitar el reporte de datos cuando el ratón se encuentra en modo Stream.

F5h Para deshabilitar el reporte de datos cuando el ratón se encuentra en modo Stream.

F6h

Para cargar el ratón con los valores por defecto, estos son: Tasa de muestreo – 100 muestras por segundo. Resolución – 4 incrementos por milímetro. Escala – 1:1 Reporte de datos – DeshabilitadoDespués de cargar los valores, el ratón entra en modo Stream.

FEhEste es el comando de reenvío y se emplea cuando el anfitrión requiere que el ratón retransmita el último paquete de los datos enviados. Después de reconocer el comando, el ratón transmite el paquete enviado previamente.

FFh Comando empleado para reiniciar el ratón.

24

Page 25: Manejo de Periféricos con la Tarjeta Nexys - 2 Teclado PS/2fsantiag/Computo_Reconfig/Manejo_de... · 2019. 6. 18. · El teclado PS/2 El teclado es uno de los principales dispositivos

Información que el ratón envíaCódigo Descripción

00h Identificación del Ratón (Mouse ID)

AAh Prueba básica de integridad Post Alimentación exitosa

FCh Prueba básica de integridad Post Alimentación fallida

FAh Acuse de recibo de Comando

FEh Reenvío. Tras la recepción de este código, el controlador PS2 retransmite el byte previo.

25

Page 26: Manejo de Periféricos con la Tarjeta Nexys - 2 Teclado PS/2fsantiag/Computo_Reconfig/Manejo_de... · 2019. 6. 18. · El teclado PS/2 El teclado es uno de los principales dispositivos

Controlador para el MouseEl controlador se diseñó de manera que:

Ignora los caracteres que el ratón envía al ser energizado.

Envía el carácter 0xF4 para habilitar el reporte de datos en modo Stream. Cuando recibe respuesta, inicia un par de contadores (POS_X y POS_Y).

Para simplificar el uso del controlador, en POS_X y POS_Y se manejan posiciones absolutas.

POS_X toma valores en un intervalo entre 0 y 640, iniciando con 320 (0x140).

POS_Y toma valores en un intervalo entre 0 y 480, iniciando con 240 (0xF0).

En forma continua se espera el paquete de 3 bytes con la información necesaria para actualizar los contadores y reflejar el estado de los botones.

C L K L B

R S T P O S_ X(9 :0 )

P O S _Y(9:0 )

P S 2_ CL K

P S 2_ D AT A

R B

U1

MOUSE

26

Page 27: Manejo de Periféricos con la Tarjeta Nexys - 2 Teclado PS/2fsantiag/Computo_Reconfig/Manejo_de... · 2019. 6. 18. · El teclado PS/2 El teclado es uno de los principales dispositivos

Pantalla VGA

M. C. Felipe Santiago EspinosaJunio - 2019

Manejo de Periféricoscon la Tarjeta Nexys - 2

Page 28: Manejo de Periféricos con la Tarjeta Nexys - 2 Teclado PS/2fsantiag/Computo_Reconfig/Manejo_de... · 2019. 6. 18. · El teclado PS/2 El teclado es uno de los principales dispositivos

Monitor VGA Los monitores VGA (Video Graphics Adapter) están soportados por

un Tubo de Rayos Catódicos (CRT). Empleando modulación en amplitud se mueve un flujo de electrones (rayos catódicos) y con ello se muestra la información en una pantalla cubierta de fósforo.

28

Page 29: Manejo de Periféricos con la Tarjeta Nexys - 2 Teclado PS/2fsantiag/Computo_Reconfig/Manejo_de... · 2019. 6. 18. · El teclado PS/2 El teclado es uno de los principales dispositivos

Pantallas LCD Las pantallas LCD usan arreglos de interruptores con los que se impone un voltaje

que cruza una cantidad pequeña de cristal líquido, cambiando la permisividad de la luz en cada pixel.

Las pantallas LCD se han acondicionado para usar las mismas señales que los CRT. 3 señales de color (R, G y B) y 2 señales de sincronía (horizontal y vertical).

Un Controlador desarrollado para un CRT funciona sin problemas en un LCD. El recorrido de la pantalla, sin importar la tecnología, es de izquierda a derecha y de

arriba a abajo, iniciando en la esquina superior izquierda. Un CRT requiere de un intervalo de tiempo para mover el flujo entre cada renglón y

otro intervalo diferente para moverlo de la esquina inferior derecha a la esquina superior izquierda, para iniciar con una nueva pantalla.

A estos intervalos de tiempo en donde el flujo se reinicia se le conoce como tiempo de blanqueo y las pantallas LCD también deben considerarlos para mantener la compatibilidad entre tecnologías.

29

Page 30: Manejo de Periféricos con la Tarjeta Nexys - 2 Teclado PS/2fsantiag/Computo_Reconfig/Manejo_de... · 2019. 6. 18. · El teclado PS/2 El teclado es uno de los principales dispositivos

30

Page 31: Manejo de Periféricos con la Tarjeta Nexys - 2 Teclado PS/2fsantiag/Computo_Reconfig/Manejo_de... · 2019. 6. 18. · El teclado PS/2 El teclado es uno de los principales dispositivos

Características de un display Los modernos displays VGA pueden aceptar diferentes resoluciones, el

controlador define la resolución al temporizar las señales para el patrón de barrido.

El controlador debe producir pulsos de sincronización (de 3.3 V ó 5 V) y asegurar que los datos de video se apliquen a tiempo.

El patrón de barrido define el número de “renglones” que corresponde con el número de pasadas horizontales y el número de “columnas” que corresponde a un área de cada renglón que es asignado a un “elemento de imagen” o pixel.

Los displays típicos manejan de 240 a 1200 renglones y de 320 a 1600 columnas. El tamaño de la pantalla, así como el número de renglones y columnas,

determinan el tamaño de cada pixel. La frecuencia de refresco define el número de barridos completos por segundo

y sus valores comerciales están entre 50 y 120 Hz.

31

Page 32: Manejo de Periféricos con la Tarjeta Nexys - 2 Teclado PS/2fsantiag/Computo_Reconfig/Manejo_de... · 2019. 6. 18. · El teclado PS/2 El teclado es uno de los principales dispositivos

Relación de tiempo Si se considera una frecuencia de refresco de 60 Hz y una resolución de

640x480, la temporización de las señales es:

Los pulsos de sincronía requieren un tiempo previo (front porch) y un tiempo posterior (back proch) para complementar el tiempo de blanqueo.

32

Page 33: Manejo de Periféricos con la Tarjeta Nexys - 2 Teclado PS/2fsantiag/Computo_Reconfig/Manejo_de... · 2019. 6. 18. · El teclado PS/2 El teclado es uno de los principales dispositivos

Ciclos de reloj: Una línea Si el controlador opera a 25 MHz ( T = 40 nS ), se tiene la

siguiente relación:

Línea HorizontalParámetro Duración Ciclos

Línea de video 25.6 uS 640

Front porch 0.88 uS 22

Pulso de sincronía 3.84 uS 96

Back porch 1.68 uS 42

Total : 32 uS 800

33

Page 34: Manejo de Periféricos con la Tarjeta Nexys - 2 Teclado PS/2fsantiag/Computo_Reconfig/Manejo_de... · 2019. 6. 18. · El teclado PS/2 El teclado es uno de los principales dispositivos

Ciclos de reloj: Un cuadroCuadro de video

La equivalencia en renglones es útil porque se pueden anidar los contadores. En la práctica, es posible sumar los pulsos de Front porch y Back porch para reducir las

comparaciones. No hay una relación de tiempo entre el comienzo de un pulso HS y el comienzo de un

pulso VS, el diseñador puede arreglar los contadores para minimizar la lógica de generación de pulsos de sincronía o facilitar el acceso a una RAM de video.

Parámetro Duración Ciclos Renglones

Pantalla de video(480 líneas) 15.36 mS 384 000

(800 x 480) 480

Front porch 320 uS 8 000 10

Pulso de sincronía 60 uS 1 600 2

Back porch 928 uS 23 200 29

Total : 16.668 mS 416 800 521

34

Page 35: Manejo de Periféricos con la Tarjeta Nexys - 2 Teclado PS/2fsantiag/Computo_Reconfig/Manejo_de... · 2019. 6. 18. · El teclado PS/2 El teclado es uno de los principales dispositivos

Generación de pulsos de sincronía

(0 - 799)

96 ciclos 2 renglones = 1600 ciclos

(0 - 520)

35

Page 36: Manejo de Periféricos con la Tarjeta Nexys - 2 Teclado PS/2fsantiag/Computo_Reconfig/Manejo_de... · 2019. 6. 18. · El teclado PS/2 El teclado es uno de los principales dispositivos

Terminales del puerto VGA de la Tarjeta Nexys2 La tarjeta Nexys2 destina 10 señales para el puerto VGA: 8 bits para el color y

2 para la sincronía (HS- Sincronía Horizontal y VS- Sincronía Vertical). Las señales de color utilizan una red resistiva para crear 8 niveles en los colores

Rojo y Verde, y 4 niveles en el azul (el ojo humano es menos sensitivo a los niveles de azul).

36

Page 37: Manejo de Periféricos con la Tarjeta Nexys - 2 Teclado PS/2fsantiag/Computo_Reconfig/Manejo_de... · 2019. 6. 18. · El teclado PS/2 El teclado es uno de los principales dispositivos

Red resistiva El circuito divisor resistivo trabaja en conjunción con la

resistencia de terminación de 75 Ω del display VGA. Produce señales de color con incrementos iguales entre 0

(todos los bits en 0) y 0.7 V (todos los bits en alto). Se pueden generar 256 colores diferentes, uno para cada

patrón de 8 bits. El controlador de video debe generar las señales de sincronía

y las señales de color con la correcta temporización.

37

Page 38: Manejo de Periféricos con la Tarjeta Nexys - 2 Teclado PS/2fsantiag/Computo_Reconfig/Manejo_de... · 2019. 6. 18. · El teclado PS/2 El teclado es uno de los principales dispositivos

Controlador VGA HSYNC y VSYNC son las señales

de sincronía para la pantalla VGA. PIXEL_H es un contador que

indica la posición horizontal del pixel actual (0-639).

PIXEL_V es un contador que indica la posición vertical del pixel actual (0-479).

RGB contiene el valor del pixel actual.

V_AREA: Es una señal auxiliar que se pone en alto cuando el barrido de la salida se encuentra en el área visible de la pantalla.

C L K H S YN C

P IXE L _R G B(7 :0 ) P IX EL _ H(9 :0 )

R S T P IX EL _ V(8 :0 )

R G B (7:0 )

V S YN C

V _ A RE A

U2

vga

38