SlideShare una empresa de Scribd logo
1 de 21
INDICE
VISUALIZACION DE CARACTERES PERSONALIZADOS EN UN MONITOR VGA................................... 3
1.-MARCO TEORICO............................................................................................................... 3
1.1-VGA DISPLAY PUERTO................................................................................................... 3
1.2.-FRECUENCIA DE LA SEÑAL DE 60 HZ, 640X480 VGA ....................................................... 4
1.3.-EL TIEMPO DE SEÑAL VGA............................................................................................ 6
2.-DESCRIPCION DEL PROGRAMA ........................................................................................... 6
3.-DIAGRAMA DE FLUJO......................................................................................................... 8
4.-PROGRAMAS EN ISE........................................................................................................... 9
4.1.-PROGRAMA DE ALTO NIVEL Font_tes_top .................................................................... 9
4.2.- PROGRAMA DE INSTANCIACION VGA_SYNC-UNIT.......................................................11
4.3.-PROGRAMA DE INSTANCIACION FONT_GEN_UNIT......................................................15
4.4.-PROGRAMA FONT_UNTI-FROM-ROM..........................................................................17
5.-CONCLUSIONES................................................................................................................19
6.-PRUEBAS..........................................................................................................................20
6.-BIBLIOGRAFIA...................................................................................................................21
VISUALIZACION DE CARACTERES PERSONALIZADOS EN UN MONITOR
VGA
1.-MARCO TEORICO
1.1-VGA DISPLAY PUERTO
El FPGA Spartan-3E StarterKit incluye unpuertoVGA medianteunconectorDB15.
Este puerto se conectadirectamente alamayoría de losmonitoresde PCo pantallasLCD de
pantallaplanautilizandouncable estandar del monitor. Comose muestraenlaFigura1.La parte
superiordel tablero.
El Spartan-3E FPGA impulsadirectamente las cincoseñalesVGA atravésde resistencias.Cada
líneade color tiene unaresistenciaenserie,conunbitcada uno para VGA_RED,VGA_GREEN y
VGA_BLUE. Las resistenciasenserie,encombinaciónconlaimpedanciade 75Ω integradoenel
cable VGA,aseguran que lasseñalesde colorpermanecenenel 0V VGA-especificadogama0.7V.
Las señalesVGA_RED,VGA_GREEN y VGA_BLUE altoso bajospara generarlosocho coloresque se
muestranenla Tabla1.
El siguientesistemaVGA yla informaciónde tiempoes proporcionadocomounejemplode cómo
el FPGA podría conducir unmonitorVGA enel modo640 por 480.
1.2.-FRECUENCIA DE LA SEÑAL DE 60 HZ, 640X480 VGA
Los display CRT-basados pantallasVGA utilizanamplitudmodulada, moviendohacesde electrones
(o cátodo) para mostrarla informaciónenunapantallarecubiertade fósforo.LCDsutilizanuna
serie de interruptores que puede imponerunvoltaje atravésde una pequeñacantidadde cristal
líquido,cambiandoasíla luz a travésdel cristal sobre unabase de pixel porpixel.Aunque la
siguiente descripciónse limitaalosmonitoresCRT,losmonitoresLCDhan evolucionadopara
utilizarlosmismostiemposde señal comopantallasCRT.Enconsecuencia,lasiguiente discusión
se refiere tantoa lostubosde rayos catódicosy LCDs.
Dentrode una pantallaCRT, formasde onda de corriente pasana travésde las bobinas para
producircamposmagnéticos que loshacesde electronesse desvíanal atravesarlasuperficie de la
pantallaenun patrónde barrido,horizontal de izquierdaaderechay verticalmente de arribaa
abajo.Comose muestraenla Figura2, la información sólose muestracuandoel hazse mueve en
la direcciónizquierdaadelante aderechayde arriba a abajo yno durante el tiempode las
declaracionesde lavigade nuevoa laorillaizquierdaolaparte superiordel monitor.Porlotanto,
gran parte del potencial de tiempode visualizaciónse pierde enlos periodosde supresióncuando
el haz se restablece yestabilizadoparacomenzarunnuevopase de visualizaciónhorizontal o
vertical.
La resoluciónde visualizacióndefine el tamañode lasvigas, lafrecuenciaalacual el haz pasaa
travésde la pantalla,yla frecuenciaala que se modulael haz de electrones.
ModernaspantallasVGA admitenvariasresolucionesde pantalla,yel controladorVGA dictala
resoluciónmediante laproducciónde señalesde temporizaciónparacontrolarlospatronesde
trama. El controladorproduce impulsosde sincronizaciónde nivel TTLque marcan la frecuenciaa
la que lacorriente fluye atravésde las bobinasde deflexión,yaseguraque losdatosde píxeleso
vídeose aplicaal haz de electronesenel momentocorrecto.
Los datosde vídeonormalmente proviene de unamemoriade actualizaciónde vídeoconunoo
más bytesasignado acada posiciónde pixel. Spartan-3EStarterKitutilizatresbitsporpíxel,
produciendo unade lasocho posiblescoloresque se muestranenlaTabla 1.
Comose muestraenla Figura 2, el controladorVGA generala sincronizaciónhorizontal (HS) y
vertical sync(VS) señalesde lostiemposycoordinalaentregade datosde vídeoen cada reloj de
píxeles.
La frecuenciade píxel defineel tiempodisponibleparamostrarun píxel de lainformación.Laseñal
VSdefine lafrecuenciade refrescode lapantalla,ola frecuenciaalaque toda la informaciónen la
pantallase vuelve adibujar.
1.3.-EL TIEMPO DE SEÑAL VGA
Los tiemposde señal enlatabla 2 se derivande 640 píxeles porpantalla480 filausandoun 25
MHz de reloj de píxeles y60 Hz ± 1 refresco.Figura3 muestrala relaciónentre cadaunode los
símbolosde sincronización.
En general,uncontadorsincronizadoporel reloj de píxelescontrolalasincronizaciónhorizontal.
Descifrandovaloresdel contadorgeneranlaseñal HS.Este contador rastreaenla pantallalaactual
ubicacióndel pixelenunafiladeterminada.
Un contador separadoel seguimientode lasincronizaciónvertical.El contadorvertical
sincronizacióncon cadapulsoHS y losvaloresdecodificadosgeneranla señal VS.Este contador
rastrea laactual filade lapantalla.Estosdos contadoresque se ejecutancontinuamente formanla
direcciónenunamemoriaintermediade visualización.Porejemplo,el DDRSDRAMproporciona
un búferde visualizaciónideal.
2.-DESCRIPCION DEL PROGRAMA
Este proyectoimplementalacomunicaciónporel puertoVGA del moduloSpartan3E con un
monitorLCD mostrandocaracteresencódigo ASCII,guardadosenbanco de datos.
En el programa de alto nivel se definenlasentradas,tenemos 2entradas:
-La entradade reloj ,usamosel reloj internodel Spartande 50MHZ .
-Una entradade reset, usaremosel pulsadorde latarjetaSpartan D18.
-Las salidasdel puertoVGA RGB.
-Las salidasde control hsync,vsyncdel puertoVGA.
Este programautilizadosprogramasde instanciaciónvga_sync_unityfont_sync_unit.
La rutinavga_sync_unitse usapara lasincronizacióndel monitorLCDa una frecuenciade
60Hz,haciendoundivisorde frecuenciade reloj de 50Mhz con 0.83 Mhz.
Tambienestarutinadefine el tamañode loscaracteres.
Toda la comunicaciónporel puertoVGA se describe enel librode PongChu.
La rutinaFont_sync_unit cuentaconuna subrutinafrom_unitdonde colocantodosloscaracteres
que se mostraran , podría decirse que es nuestrabase de datos.
La rutina Font_sync_unitalmacenatodosestosdatosenlamemoriaROMdel Spartany también
el colorde loscaracteres, el color elegidoesazul cuyo códigoes:
Los caracteresutilizadosson
ESCUELA: INGENIERIA ELECTRONICA
ALUMNO:CalcinaHuanca Yhan K.
CURSO :MICROELECTRONICA
2015-B
DOCENTE:Ing.Raul Yanyachi
3.-DIAGRAMA DE FLUJO
Declaración de
entradas y salidas
Archivo de
alto nivel
Font-test_top
Declaración de los programas
de instanciacion
Subrutina
Vga_sync_unit
Subrutina
Font_gen-unit
Divisorde frecuenciade
60Hz para entrada del
monitor VGA
VGA 640X480 PARÁMETROS
DE SINCRONIZACIÓN
SUBRUTINA DE
INSTANCIACIO
N
Almacena los caracteres
en la memoria ROM
Color de caracteres
Base de datos
4.-PROGRAMAS EN ISE
4.1.-PROGRAMA DE ALTO NIVEL Font_tes_top
libraryIEEE;
use IEEE.STD_LOGIC_1164.ALL;
use ieee.numeric_std.all;
--------------------------------------------------------------------------------
entityfont_test_genis
Port ( clk: in STD_LOGIC;
video_on: in STD_LOGIC;
pixel_x, pixel_y: STD_LOGIC_VECTOR(9 DOWNTO 0);
rgb_text: out STD_LOGIC_VECTOR(2 DOWNTO 0));
endfont_test_gen;
--------------------------------------------------------------------------------
architecture arch of font_test_genis
signal rom_addr:std_logic_vector(10downto0);
signal char_addr:std_logic_vector(6downto0);
signal row_addr:std_logic_vector(3downto0);
signal bit_addr:std_logic_vector(2downto0);
signal font_word:std_logic_vector(7downto0);
signal font_bit,text_bit_on:std_logic;
--------------------------------------------------------------------------------
begin
-- instantiate fontROM
font_unit:entitywork.font_rom
port map(clk=>clk,addr=>rom_addr,data=>font_word);
-- fontROM interface
char_addr<=pixel_y(5downto4) & pixel_x(7downto3);
row_addr<=pixel_y(3downto0);
rom_addr <= char_addr & row_addr;
bit_addr<=pixel_x(2downto0);
font_bit<= font_word(to_integer(unsigned(notbit_addr)));
-- "on" regionlimitedtotop-leftcorner
text_bit_on<=
font_bitwhenpixel_x(9downto8)="00" and
pixel_y(9downto6)="0000" else
'0';
-- rgb multiplexingcircuit
process(video_on,font_bit,text_bit_on)
begin
if video_on='0'then
rgb_text<= "000"; --blank
else
if text_bit_on='1'then
rgb_text<= "010"; -- green
else
rgb_text<= "000"; -- black
endif;
endif;
endprocess;
-------------------------------------------------------------------------------
endarch;
4.2.- PROGRAMA DE INSTANCIACION VGA_SYNC-UNIT
libraryIEEE;
use IEEE.STD_LOGIC_1164.ALL;
use ieee.numeric_std.all;
-- Uncommentthe followinglibrarydeclarationif using
-- arithmeticfunctionswithSignedorUnsignedvalues
--use IEEE.NUMERIC_STD.ALL;
-- Uncommentthe followinglibrarydeclarationif instantiating
-- any Xilinx primitivesinthiscode.
--libraryUNISIM;
--use UNISIM.VComponents.all;
entityvga_syncis
Port ( clk,reset: in STD_LOGIC;
hsync,vsync : out STD_LOGIC;
video_on,p_tick: out STD_LOGIC;
pixel_x,pixel_y:out STD_LOGIC_VECTOR (9 downto0));
endvga_sync;
architecture comportaof vga_sync is
-- VGA 640X480 PARÁMETROSDE SINCRONIZACIÓN
constantHD: integer:=640; -- zona visible horizontal
constantHF: integer:=16; --borde derecho
constantHB: integer:=48; --borde izquierdo
constantHR: integer:=96; --retrazadohorizontal
constantVD: integer:=480; --zonavisible vertical
constantVF: integer:=10; --borde inferior
constantVB: integer:=33;--borde superior
constantVR: integer:=2; --retrazadovertical
signal mod2_reg,mod2_next:std_logic;
signal v_count_reg,v_count_next:unsigned(9downto0);
signal h_count_reg,h_count_next:unsigned(9downto0);
-- bufferde salida
signal v_sync_reg,h_sync_reg:std_logic;
signal v_sync_next,h_sync_next:std_logic;
-- señalesde estado
signal h_end,v_end,pixel_tick:std_logic;
begin
process(clk,reset)
begin
if reset='1' then
mod2_reg <= '0';
v_count_reg<= (others=>'0');
h_count_reg<= (others=>'0');
v_sync_reg<= '0';
h_sync_reg<= '0';
elsif (clk'eventandclk='1') then
mod2_reg <= mod2_next;
v_count_reg<= v_count_next;
h_count_reg<= h_count_next;
v_sync_reg<= v_sync_next;
h_sync_reg<= h_sync_next;
endif;
endprocess;
-- generadorde 25 MHz
mod2_next<= not mod2_reg;
-- 25 MHz pixel tick
pixel_tick<='1' whenmod2_reg='1' else '0';
-- findel contadorhorizontal
h_end<= '1' when
h_count_reg=(HD+HF+HB+HR-1) else '0'; --799
-- findel contadorvertica
v_end<= '1' when
v_count_reg=(VD+VF+VB+VR-1) else'0';--524
-- contador para el hsync
process(h_count_reg,h_end,pixel_tick)
begin
if pixel_tick='1'then -- 25 MHz
if h_end='1' then
h_count_next<= (others=>'0');
else
h_count_next<= h_count_reg+ 1;
endif;
else h_count_next<=h_count_reg;
endif;
endprocess;
-- contador para el vsync
process(v_count_reg,h_end,v_end,pixel_tick)
begin
if pixel_tick='1'andh_end='1' then
if (v_end='1') then
v_count_next<= (others=>'0');
else
v_count_next<= v_count_reg+ 1;
endif;
else
v_count_next<= v_count_reg;
endif;
endprocess;
-- hsync y vsyncse registranbufferparaevitarposiblesglitch
h_sync_next<= '1' when
(h_count_reg>=(HD+HF)) and(h_count_reg<=(HD+HF+HR-1)) else '0';
-- entre 656 y 751
v_sync_next<= '1' when
(v_count_reg>=(VD+VF))and(v_count_reg<=(VD+VF+VR-1)) else '0';
--entre 490 y 491
-- videoon/off
video_on<= '1' when(h_count_reg<HD) and(v_count_reg<VD) else '0';
-- señalesde salida
hsync<= h_sync_reg;
vsync<= v_sync_reg;
pixel_x <=std_logic_vector(h_count_reg);
pixel_y<=std_logic_vector(v_count_reg);
p_tick<= pixel_tick;
endcomporta;
4.3.-PROGRAMA DE INSTANCIACION FONT_GEN_UNIT
libraryIEEE;
use IEEE.STD_LOGIC_1164.ALL;
use ieee.numeric_std.all;
--------------------------------------------------------------------------------
entityfont_test_genis
Port ( clk: in STD_LOGIC;
video_on: in STD_LOGIC;
pixel_x, pixel_y: STD_LOGIC_VECTOR(9 DOWNTO 0);
rgb_text: out STD_LOGIC_VECTOR(2 DOWNTO 0));
endfont_test_gen;
--------------------------------------------------------------------------------
architecture arch of font_test_genis
signal rom_addr:std_logic_vector(10downto0);
signal char_addr:std_logic_vector(6downto0);
signal row_addr:std_logic_vector(3downto0);
signal bit_addr:std_logic_vector(2downto0);
signal font_word:std_logic_vector(7downto0);
signal font_bit,text_bit_on:std_logic;
--------------------------------------------------------------------------------
begin
-- instantiate fontROM
font_unit:entitywork.font_rom
port map(clk=>clk,addr=>rom_addr,data=>font_word);
-- fontROM interface
char_addr<=pixel_y(5downto4) & pixel_x(7downto3);
row_addr<=pixel_y(3downto0);
rom_addr <= char_addr & row_addr;
bit_addr<=pixel_x(2downto0);
font_bit<= font_word(to_integer(unsigned(notbit_addr)));
-- "on" regionlimitedtotop-leftcorner
text_bit_on<=
font_bitwhenpixel_x(9downto8)="00" and
pixel_y(9downto6)="0000" else
'0';
-- rgb multiplexingcircuit
process(video_on,font_bit,text_bit_on)
begin
if video_on='0'then
rgb_text<= "000"; --blank
else
if text_bit_on='1'then
rgb_text<= "010"; -- green
else
rgb_text<= "000"; -- black
endif;
endif;
endprocess;
-------------------------------------------------------------------------------
endarch;
4.4.-PROGRAMA FONT_UNTI-FROM-ROM
libraryIEEE;
use IEEE.STD_LOGIC_1164.ALL;
use ieee.numeric_std.all;
---------------------------------------------------------------------------------
entityfont_romis
Port ( clk: in STD_LOGIC;
addr :JEH in STD_LOGIC_VECTOR (10 DOWNTO0);
data : out STD_LOGIC_VECTOR(7 DOWNTO0));
endfont_rom;
---------------------------------------------------------------------------------
architecture arch of font_romis
constantADDR_WIDTH: integer:=11;
constantDATA_WIDTH: integer:=8;
signal addr_reg:std_logic_vector(ADDR_WIDTH-1downto0);
type rom_type isarray (0 to 2**ADDR_WIDTH-1)
of std_logic_vector(DATA_WIDTH-1downto0);
-- ROM definition
constantROM: rom_type:=( -- 2^11-by-8
-- code x45
"00000000", -- 0
"00000000", -- 1
"11111110", -- 2 *******
"01100110", -- 3 ** **
"01100010", -- 4 ** *
"01101000", -- 5 ** *
"01111000", -- 6 ****
"01101000", -- 7 ** *
"01100000", -- 8 **
"01100010", -- 9 ** *
"01100110", -- a ** **
"11111110", -- b *******
"00000000", -- c
"00000000", -- d
"00000000", -- e
"00000000", -- f
-- code x53
"00000000", -- 0
"00000000", -- 1
"01111100", -- 2 *****
"11000110", -- 3 ** **
"11000110", -- 4 ** **
"01100000", -- 5 **
"00111000", -- 6 ***
"00001100", -- 7 **
"00000110", -- 8 **
"11000110", -- 9 ** **
"11000110", -- a ** **
"01111100", -- b *****
"00000000", -- c
"00000000", -- d
"00000000", -- e
"00000000", -- f
-- code x43
"00000000", -- 0
"00000000", -- 1
"00111100", -- 2 ****
"01100110", -- 3 ** **
"11000010", -- 4 ** *
"11000000", -- 5 **
"11000000", -- 6 **
"11000000", -- 7 **
"11000000", -- 8 **
"11000010", -- 9 ** *
"01100110", -- a ** **
"00111100", -- b ****
"00000000", -- c
"00000000", -- d
"00000000", -- e
"00000000", -- f
ASIGNACION DESALIDAS
# PlanAheadGeneratedphysical constraints
NET "clk"LOC = C9;
NET "hsync"LOC = F15;
NET "reset"LOC = D18;
NET "rgb[0]"LOC = G15;
NET "rgb[1]"LOC = H15;
NET "rgb[2]"LOC = R14;
NET "vsync"LOC = F14;
5.-CONCLUSIONES
-Para el usode subrutinasse hizousode componentsque el software Xilinx proporciona.
- El tamañode la señal de la pantallason640x480 pixeles.
-Se utilizóel reloj internodel FPGA de 50Mhz y undivisorde frecuenciaa60Hz para la entradaal
puertoVGA.
6.-PRUEBAS
SPARTAN 3E
Conexión SPARTAN con Monitor VGA del laboratorio
Visualizacion de los caracteres en el monitor VGA
6.-BIBLIOGRAFIA
http://www.uhu.es/raul.jimenez/MICROELECTRONICA/prac1.pdf
http://www.xilinx.com/support/documentation/data_sheets/ds312.pdf
https://www.pantechsolutions.net/cpld-fpga-boards/vga-interfacing-with-spartan-3-primer
https://www.um.edu.mt/__data/assets/pdf_file/0008/66779/MNE_2202_-_Project.pdf

Más contenido relacionado

La actualidad más candente

로그인은 어떻게 동작하나?
로그인은 어떻게 동작하나?로그인은 어떻게 동작하나?
로그인은 어떻게 동작하나?Heemin Kim
 
Programación estructurada plc
Programación estructurada plcProgramación estructurada plc
Programación estructurada plcMario RH
 
Quiz 1 sdac portas lógicas
Quiz 1 sdac portas lógicasQuiz 1 sdac portas lógicas
Quiz 1 sdac portas lógicasCarlos Pereira
 
Webinar: Desenvolvendo projetos com ESP32
Webinar: Desenvolvendo projetos com ESP32Webinar: Desenvolvendo projetos com ESP32
Webinar: Desenvolvendo projetos com ESP32Embarcados
 

La actualidad más candente (7)

로그인은 어떻게 동작하나?
로그인은 어떻게 동작하나?로그인은 어떻게 동작하나?
로그인은 어떻게 동작하나?
 
Transmissor de fm
Transmissor de fmTransmissor de fm
Transmissor de fm
 
Programación estructurada plc
Programación estructurada plcProgramación estructurada plc
Programación estructurada plc
 
Aula 11-fet
Aula 11-fetAula 11-fet
Aula 11-fet
 
Tudo sobre relés
Tudo sobre relésTudo sobre relés
Tudo sobre relés
 
Quiz 1 sdac portas lógicas
Quiz 1 sdac portas lógicasQuiz 1 sdac portas lógicas
Quiz 1 sdac portas lógicas
 
Webinar: Desenvolvendo projetos com ESP32
Webinar: Desenvolvendo projetos com ESP32Webinar: Desenvolvendo projetos com ESP32
Webinar: Desenvolvendo projetos com ESP32
 

Destacado

Impact Of The Internet
Impact Of The InternetImpact Of The Internet
Impact Of The InternetMMASBeth
 
Anna Georgiou CV 2015
Anna Georgiou CV 2015Anna Georgiou CV 2015
Anna Georgiou CV 2015Anna Georgiou
 
Bakteri aeromonas hydrophila www.atjehnanan.wordpress.com
Bakteri aeromonas hydrophila  www.atjehnanan.wordpress.comBakteri aeromonas hydrophila  www.atjehnanan.wordpress.com
Bakteri aeromonas hydrophila www.atjehnanan.wordpress.comMisbahuddin Atjeh
 
HOW TO USE IFTTT TO AUTOMATE YOUR ONLINE LIFE
HOW TO USE IFTTT TO AUTOMATE YOUR ONLINE LIFEHOW TO USE IFTTT TO AUTOMATE YOUR ONLINE LIFE
HOW TO USE IFTTT TO AUTOMATE YOUR ONLINE LIFEJoseph Rivera
 
Adwords Remarketing
Adwords RemarketingAdwords Remarketing
Adwords Remarketingoab92
 
Teknologiateollisuuden / Suomen talousnäkymät, tammikuu 2017
Teknologiateollisuuden / Suomen talousnäkymät, tammikuu 2017Teknologiateollisuuden / Suomen talousnäkymät, tammikuu 2017
Teknologiateollisuuden / Suomen talousnäkymät, tammikuu 2017TechFinland
 
UANG . Ekonomi kelas X. Man 7 Jakarta
UANG . Ekonomi kelas X. Man 7 Jakarta UANG . Ekonomi kelas X. Man 7 Jakarta
UANG . Ekonomi kelas X. Man 7 Jakarta afida syakiriyah
 
Sistem Gerak Manusia - Biologi
Sistem Gerak Manusia - Biologi Sistem Gerak Manusia - Biologi
Sistem Gerak Manusia - Biologi alainbagus
 
Dominating the Paid Media Universe
Dominating the Paid Media UniverseDominating the Paid Media Universe
Dominating the Paid Media UniverseSamantha Noble
 
UNDANG-UNDANG PERKOPERASIAN PASCA PUTUSAN MAHKAMAH KONSTITUSI
UNDANG-UNDANG PERKOPERASIAN PASCA PUTUSAN MAHKAMAH KONSTITUSIUNDANG-UNDANG PERKOPERASIAN PASCA PUTUSAN MAHKAMAH KONSTITUSI
UNDANG-UNDANG PERKOPERASIAN PASCA PUTUSAN MAHKAMAH KONSTITUSIhenra saragih
 

Destacado (20)

Impact Of Internet
Impact Of InternetImpact Of Internet
Impact Of Internet
 
Past irregular cards
Past irregular cardsPast irregular cards
Past irregular cards
 
Impact Of The Internet
Impact Of The InternetImpact Of The Internet
Impact Of The Internet
 
香港六合彩
香港六合彩香港六合彩
香港六合彩
 
Anna Georgiou CV 2015
Anna Georgiou CV 2015Anna Georgiou CV 2015
Anna Georgiou CV 2015
 
香港六合彩
香港六合彩香港六合彩
香港六合彩
 
Bakteri aeromonas hydrophila www.atjehnanan.wordpress.com
Bakteri aeromonas hydrophila  www.atjehnanan.wordpress.comBakteri aeromonas hydrophila  www.atjehnanan.wordpress.com
Bakteri aeromonas hydrophila www.atjehnanan.wordpress.com
 
The case for SAP training
The case for SAP trainingThe case for SAP training
The case for SAP training
 
HOW TO USE IFTTT TO AUTOMATE YOUR ONLINE LIFE
HOW TO USE IFTTT TO AUTOMATE YOUR ONLINE LIFEHOW TO USE IFTTT TO AUTOMATE YOUR ONLINE LIFE
HOW TO USE IFTTT TO AUTOMATE YOUR ONLINE LIFE
 
Adwords Remarketing
Adwords RemarketingAdwords Remarketing
Adwords Remarketing
 
TIK BAB_1
TIK BAB_1TIK BAB_1
TIK BAB_1
 
Teknologiateollisuuden / Suomen talousnäkymät, tammikuu 2017
Teknologiateollisuuden / Suomen talousnäkymät, tammikuu 2017Teknologiateollisuuden / Suomen talousnäkymät, tammikuu 2017
Teknologiateollisuuden / Suomen talousnäkymät, tammikuu 2017
 
Curriculum Builder
Curriculum BuilderCurriculum Builder
Curriculum Builder
 
UANG . Ekonomi kelas X. Man 7 Jakarta
UANG . Ekonomi kelas X. Man 7 Jakarta UANG . Ekonomi kelas X. Man 7 Jakarta
UANG . Ekonomi kelas X. Man 7 Jakarta
 
Sistem Gerak Manusia - Biologi
Sistem Gerak Manusia - Biologi Sistem Gerak Manusia - Biologi
Sistem Gerak Manusia - Biologi
 
DI/TII di Aceh
DI/TII di  AcehDI/TII di  Aceh
DI/TII di Aceh
 
Dominating the Paid Media Universe
Dominating the Paid Media UniverseDominating the Paid Media Universe
Dominating the Paid Media Universe
 
Ty22006
Ty22006Ty22006
Ty22006
 
PPT koperasi
PPT koperasiPPT koperasi
PPT koperasi
 
UNDANG-UNDANG PERKOPERASIAN PASCA PUTUSAN MAHKAMAH KONSTITUSI
UNDANG-UNDANG PERKOPERASIAN PASCA PUTUSAN MAHKAMAH KONSTITUSIUNDANG-UNDANG PERKOPERASIAN PASCA PUTUSAN MAHKAMAH KONSTITUSI
UNDANG-UNDANG PERKOPERASIAN PASCA PUTUSAN MAHKAMAH KONSTITUSI
 

Similar a Visualización de caracteres personalizados en un monitor VGA

Reparacion de monitores
Reparacion de monitoresReparacion de monitores
Reparacion de monitoresjosesuruy
 
DDAA FPGA - Diseño De Una Memoria Buffer FIFO
DDAA   FPGA - Diseño De Una Memoria Buffer FIFODDAA   FPGA - Diseño De Una Memoria Buffer FIFO
DDAA FPGA - Diseño De Una Memoria Buffer FIFOFernando Marcos Marcos
 
dispositivos de imagen
dispositivos de imagendispositivos de imagen
dispositivos de imagenmuertesanta
 
Dispositivos Para Imagen
Dispositivos Para ImagenDispositivos Para Imagen
Dispositivos Para Imagenmuertesanta
 
Pfc prototipo electrónico para la valoración de amplificadores operacionales
Pfc prototipo electrónico para la valoración de amplificadores operacionalesPfc prototipo electrónico para la valoración de amplificadores operacionales
Pfc prototipo electrónico para la valoración de amplificadores operacionalesguofee
 
Pfc prototipo electrónico para la valoración de amplificadores operacionales
Pfc prototipo electrónico para la valoración de amplificadores operacionalesPfc prototipo electrónico para la valoración de amplificadores operacionales
Pfc prototipo electrónico para la valoración de amplificadores operacionalesguofee
 
Brochure%20 ns integral-(2.1)_spanish
Brochure%20 ns integral-(2.1)_spanishBrochure%20 ns integral-(2.1)_spanish
Brochure%20 ns integral-(2.1)_spanishpepe Pepediaz
 
Manual Krautkramer DMS 2 - Medición de Espesores (Thickness Measurement)
Manual Krautkramer DMS 2 - Medición de Espesores (Thickness Measurement)Manual Krautkramer DMS 2 - Medición de Espesores (Thickness Measurement)
Manual Krautkramer DMS 2 - Medición de Espesores (Thickness Measurement)Giovanny Montaño
 
Agilent technologies1670g.en.es
Agilent technologies1670g.en.esAgilent technologies1670g.en.es
Agilent technologies1670g.en.esJoseph Gonzalez
 
Instituto de educacion superior tecnologico público de abancay
Instituto de educacion superior tecnologico público de abancayInstituto de educacion superior tecnologico público de abancay
Instituto de educacion superior tecnologico público de abancayhaydedecorea
 
Manual de servicio tecnico monitor crt lg flatron
Manual de servicio tecnico monitor crt lg flatronManual de servicio tecnico monitor crt lg flatron
Manual de servicio tecnico monitor crt lg flatronAlejandro Suarez
 
Adquisición de datos
Adquisición de datosAdquisición de datos
Adquisición de datosWilly Bujaico
 
T-ESPEL-ENI-0307-P.pptx
T-ESPEL-ENI-0307-P.pptxT-ESPEL-ENI-0307-P.pptx
T-ESPEL-ENI-0307-P.pptxJackRamirez10
 
identificacion de los nombres,y caracteristicas del monitor TRC o CRT
identificacion de los nombres,y caracteristicas del monitor TRC o CRTidentificacion de los nombres,y caracteristicas del monitor TRC o CRT
identificacion de los nombres,y caracteristicas del monitor TRC o CRTAngieHiguera96
 

Similar a Visualización de caracteres personalizados en un monitor VGA (20)

Reparacion de monitores
Reparacion de monitoresReparacion de monitores
Reparacion de monitores
 
DDAA FPGA - Diseño De Una Memoria Buffer FIFO
DDAA   FPGA - Diseño De Una Memoria Buffer FIFODDAA   FPGA - Diseño De Una Memoria Buffer FIFO
DDAA FPGA - Diseño De Una Memoria Buffer FIFO
 
dispositivos de imagen
dispositivos de imagendispositivos de imagen
dispositivos de imagen
 
Dispositivos Para Imagen
Dispositivos Para ImagenDispositivos Para Imagen
Dispositivos Para Imagen
 
presentacion.pptx
presentacion.pptxpresentacion.pptx
presentacion.pptx
 
Pfc prototipo electrónico para la valoración de amplificadores operacionales
Pfc prototipo electrónico para la valoración de amplificadores operacionalesPfc prototipo electrónico para la valoración de amplificadores operacionales
Pfc prototipo electrónico para la valoración de amplificadores operacionales
 
Pfc prototipo electrónico para la valoración de amplificadores operacionales
Pfc prototipo electrónico para la valoración de amplificadores operacionalesPfc prototipo electrónico para la valoración de amplificadores operacionales
Pfc prototipo electrónico para la valoración de amplificadores operacionales
 
Brochure%20 ns integral-(2.1)_spanish
Brochure%20 ns integral-(2.1)_spanishBrochure%20 ns integral-(2.1)_spanish
Brochure%20 ns integral-(2.1)_spanish
 
Osciloscopio
OsciloscopioOsciloscopio
Osciloscopio
 
Manual Krautkramer DMS 2 - Medición de Espesores (Thickness Measurement)
Manual Krautkramer DMS 2 - Medición de Espesores (Thickness Measurement)Manual Krautkramer DMS 2 - Medición de Espesores (Thickness Measurement)
Manual Krautkramer DMS 2 - Medición de Espesores (Thickness Measurement)
 
Agilent technologies1670g.en.es
Agilent technologies1670g.en.esAgilent technologies1670g.en.es
Agilent technologies1670g.en.es
 
Semana6
Semana6Semana6
Semana6
 
Instituto de educacion superior tecnologico público de abancay
Instituto de educacion superior tecnologico público de abancayInstituto de educacion superior tecnologico público de abancay
Instituto de educacion superior tecnologico público de abancay
 
Manual de servicio tecnico monitor crt lg flatron
Manual de servicio tecnico monitor crt lg flatronManual de servicio tecnico monitor crt lg flatron
Manual de servicio tecnico monitor crt lg flatron
 
Videoclass4
Videoclass4Videoclass4
Videoclass4
 
Pb2013 069
Pb2013 069Pb2013 069
Pb2013 069
 
Intro a Logo
Intro a LogoIntro a Logo
Intro a Logo
 
Adquisición de datos
Adquisición de datosAdquisición de datos
Adquisición de datos
 
T-ESPEL-ENI-0307-P.pptx
T-ESPEL-ENI-0307-P.pptxT-ESPEL-ENI-0307-P.pptx
T-ESPEL-ENI-0307-P.pptx
 
identificacion de los nombres,y caracteristicas del monitor TRC o CRT
identificacion de los nombres,y caracteristicas del monitor TRC o CRTidentificacion de los nombres,y caracteristicas del monitor TRC o CRT
identificacion de los nombres,y caracteristicas del monitor TRC o CRT
 

Último

tema05 estabilidad en barras mecanicas.pdf
tema05 estabilidad en barras mecanicas.pdftema05 estabilidad en barras mecanicas.pdf
tema05 estabilidad en barras mecanicas.pdfvictoralejandroayala2
 
Reporte de simulación de flujo del agua en un volumen de control MNVA.pdf
Reporte de simulación de flujo del agua en un volumen de control MNVA.pdfReporte de simulación de flujo del agua en un volumen de control MNVA.pdf
Reporte de simulación de flujo del agua en un volumen de control MNVA.pdfMikkaelNicolae
 
PPT ELABORARACION DE ADOBES 2023 (1).pdf
PPT ELABORARACION DE ADOBES 2023 (1).pdfPPT ELABORARACION DE ADOBES 2023 (1).pdf
PPT ELABORARACION DE ADOBES 2023 (1).pdfalexquispenieto2
 
ARBOL DE CAUSAS ANA INVESTIGACION DE ACC.ppt
ARBOL DE CAUSAS ANA INVESTIGACION DE ACC.pptARBOL DE CAUSAS ANA INVESTIGACION DE ACC.ppt
ARBOL DE CAUSAS ANA INVESTIGACION DE ACC.pptMarianoSanchez70
 
Residente de obra y sus funciones que realiza .pdf
Residente de obra y sus funciones que realiza  .pdfResidente de obra y sus funciones que realiza  .pdf
Residente de obra y sus funciones que realiza .pdfevin1703e
 
2. UPN PPT - SEMANA 02 GESTION DE PROYECTOS MG CHERYL QUEZADA(1).pdf
2. UPN PPT - SEMANA 02 GESTION DE PROYECTOS MG CHERYL QUEZADA(1).pdf2. UPN PPT - SEMANA 02 GESTION DE PROYECTOS MG CHERYL QUEZADA(1).pdf
2. UPN PPT - SEMANA 02 GESTION DE PROYECTOS MG CHERYL QUEZADA(1).pdfAnthonyTiclia
 
Una estrategia de seguridad en la nube alineada al NIST
Una estrategia de seguridad en la nube alineada al NISTUna estrategia de seguridad en la nube alineada al NIST
Una estrategia de seguridad en la nube alineada al NISTFundación YOD YOD
 
Procesos-de-la-Industria-Alimentaria-Envasado-en-la-Produccion-de-Alimentos.pptx
Procesos-de-la-Industria-Alimentaria-Envasado-en-la-Produccion-de-Alimentos.pptxProcesos-de-la-Industria-Alimentaria-Envasado-en-la-Produccion-de-Alimentos.pptx
Procesos-de-la-Industria-Alimentaria-Envasado-en-la-Produccion-de-Alimentos.pptxJuanPablo452634
 
Falla de san andres y el gran cañon : enfoque integral
Falla de san andres y el gran cañon : enfoque integralFalla de san andres y el gran cañon : enfoque integral
Falla de san andres y el gran cañon : enfoque integralsantirangelcor
 
Voladura Controlada Sobrexcavación (como se lleva a cabo una voladura)
Voladura Controlada  Sobrexcavación (como se lleva a cabo una voladura)Voladura Controlada  Sobrexcavación (como se lleva a cabo una voladura)
Voladura Controlada Sobrexcavación (como se lleva a cabo una voladura)ssuser563c56
 
clases de dinamica ejercicios preuniversitarios.pdf
clases de dinamica ejercicios preuniversitarios.pdfclases de dinamica ejercicios preuniversitarios.pdf
clases de dinamica ejercicios preuniversitarios.pdfDanielaVelasquez553560
 
Ingeniería de Tránsito. Proyecto Geométrico de calles y carreteras, es el pro...
Ingeniería de Tránsito. Proyecto Geométrico de calles y carreteras, es el pro...Ingeniería de Tránsito. Proyecto Geométrico de calles y carreteras, es el pro...
Ingeniería de Tránsito. Proyecto Geométrico de calles y carreteras, es el pro...wvernetlopez
 
hitos del desarrollo psicomotor en niños.docx
hitos del desarrollo psicomotor en niños.docxhitos del desarrollo psicomotor en niños.docx
hitos del desarrollo psicomotor en niños.docxMarcelaArancibiaRojo
 
Introducción a los sistemas neumaticos.ppt
Introducción a los sistemas neumaticos.pptIntroducción a los sistemas neumaticos.ppt
Introducción a los sistemas neumaticos.pptEduardoCorado
 
Seleccion de Fusibles en media tension fusibles
Seleccion de Fusibles en media tension fusiblesSeleccion de Fusibles en media tension fusibles
Seleccion de Fusibles en media tension fusiblesSaulSantiago25
 
Magnetismo y electromagnetismo principios
Magnetismo y electromagnetismo principiosMagnetismo y electromagnetismo principios
Magnetismo y electromagnetismo principiosMarceloQuisbert6
 
TEXTURA Y DETERMINACION DE ROCAS SEDIMENTARIAS
TEXTURA Y DETERMINACION DE ROCAS SEDIMENTARIASTEXTURA Y DETERMINACION DE ROCAS SEDIMENTARIAS
TEXTURA Y DETERMINACION DE ROCAS SEDIMENTARIASfranzEmersonMAMANIOC
 
Elaboración de la estructura del ADN y ARN en papel.pdf
Elaboración de la estructura del ADN y ARN en papel.pdfElaboración de la estructura del ADN y ARN en papel.pdf
Elaboración de la estructura del ADN y ARN en papel.pdfKEVINYOICIAQUINOSORI
 
Rendimiento-de-Maquinaria y precios unitarios para la construcción de una ma...
Rendimiento-de-Maquinaria y precios unitarios  para la construcción de una ma...Rendimiento-de-Maquinaria y precios unitarios  para la construcción de una ma...
Rendimiento-de-Maquinaria y precios unitarios para la construcción de una ma...RichardRivas28
 
Proyecto de iluminación "guia" para proyectos de ingeniería eléctrica
Proyecto de iluminación "guia" para proyectos de ingeniería eléctricaProyecto de iluminación "guia" para proyectos de ingeniería eléctrica
Proyecto de iluminación "guia" para proyectos de ingeniería eléctricaXjoseantonio01jossed
 

Último (20)

tema05 estabilidad en barras mecanicas.pdf
tema05 estabilidad en barras mecanicas.pdftema05 estabilidad en barras mecanicas.pdf
tema05 estabilidad en barras mecanicas.pdf
 
Reporte de simulación de flujo del agua en un volumen de control MNVA.pdf
Reporte de simulación de flujo del agua en un volumen de control MNVA.pdfReporte de simulación de flujo del agua en un volumen de control MNVA.pdf
Reporte de simulación de flujo del agua en un volumen de control MNVA.pdf
 
PPT ELABORARACION DE ADOBES 2023 (1).pdf
PPT ELABORARACION DE ADOBES 2023 (1).pdfPPT ELABORARACION DE ADOBES 2023 (1).pdf
PPT ELABORARACION DE ADOBES 2023 (1).pdf
 
ARBOL DE CAUSAS ANA INVESTIGACION DE ACC.ppt
ARBOL DE CAUSAS ANA INVESTIGACION DE ACC.pptARBOL DE CAUSAS ANA INVESTIGACION DE ACC.ppt
ARBOL DE CAUSAS ANA INVESTIGACION DE ACC.ppt
 
Residente de obra y sus funciones que realiza .pdf
Residente de obra y sus funciones que realiza  .pdfResidente de obra y sus funciones que realiza  .pdf
Residente de obra y sus funciones que realiza .pdf
 
2. UPN PPT - SEMANA 02 GESTION DE PROYECTOS MG CHERYL QUEZADA(1).pdf
2. UPN PPT - SEMANA 02 GESTION DE PROYECTOS MG CHERYL QUEZADA(1).pdf2. UPN PPT - SEMANA 02 GESTION DE PROYECTOS MG CHERYL QUEZADA(1).pdf
2. UPN PPT - SEMANA 02 GESTION DE PROYECTOS MG CHERYL QUEZADA(1).pdf
 
Una estrategia de seguridad en la nube alineada al NIST
Una estrategia de seguridad en la nube alineada al NISTUna estrategia de seguridad en la nube alineada al NIST
Una estrategia de seguridad en la nube alineada al NIST
 
Procesos-de-la-Industria-Alimentaria-Envasado-en-la-Produccion-de-Alimentos.pptx
Procesos-de-la-Industria-Alimentaria-Envasado-en-la-Produccion-de-Alimentos.pptxProcesos-de-la-Industria-Alimentaria-Envasado-en-la-Produccion-de-Alimentos.pptx
Procesos-de-la-Industria-Alimentaria-Envasado-en-la-Produccion-de-Alimentos.pptx
 
Falla de san andres y el gran cañon : enfoque integral
Falla de san andres y el gran cañon : enfoque integralFalla de san andres y el gran cañon : enfoque integral
Falla de san andres y el gran cañon : enfoque integral
 
Voladura Controlada Sobrexcavación (como se lleva a cabo una voladura)
Voladura Controlada  Sobrexcavación (como se lleva a cabo una voladura)Voladura Controlada  Sobrexcavación (como se lleva a cabo una voladura)
Voladura Controlada Sobrexcavación (como se lleva a cabo una voladura)
 
clases de dinamica ejercicios preuniversitarios.pdf
clases de dinamica ejercicios preuniversitarios.pdfclases de dinamica ejercicios preuniversitarios.pdf
clases de dinamica ejercicios preuniversitarios.pdf
 
Ingeniería de Tránsito. Proyecto Geométrico de calles y carreteras, es el pro...
Ingeniería de Tránsito. Proyecto Geométrico de calles y carreteras, es el pro...Ingeniería de Tránsito. Proyecto Geométrico de calles y carreteras, es el pro...
Ingeniería de Tránsito. Proyecto Geométrico de calles y carreteras, es el pro...
 
hitos del desarrollo psicomotor en niños.docx
hitos del desarrollo psicomotor en niños.docxhitos del desarrollo psicomotor en niños.docx
hitos del desarrollo psicomotor en niños.docx
 
Introducción a los sistemas neumaticos.ppt
Introducción a los sistemas neumaticos.pptIntroducción a los sistemas neumaticos.ppt
Introducción a los sistemas neumaticos.ppt
 
Seleccion de Fusibles en media tension fusibles
Seleccion de Fusibles en media tension fusiblesSeleccion de Fusibles en media tension fusibles
Seleccion de Fusibles en media tension fusibles
 
Magnetismo y electromagnetismo principios
Magnetismo y electromagnetismo principiosMagnetismo y electromagnetismo principios
Magnetismo y electromagnetismo principios
 
TEXTURA Y DETERMINACION DE ROCAS SEDIMENTARIAS
TEXTURA Y DETERMINACION DE ROCAS SEDIMENTARIASTEXTURA Y DETERMINACION DE ROCAS SEDIMENTARIAS
TEXTURA Y DETERMINACION DE ROCAS SEDIMENTARIAS
 
Elaboración de la estructura del ADN y ARN en papel.pdf
Elaboración de la estructura del ADN y ARN en papel.pdfElaboración de la estructura del ADN y ARN en papel.pdf
Elaboración de la estructura del ADN y ARN en papel.pdf
 
Rendimiento-de-Maquinaria y precios unitarios para la construcción de una ma...
Rendimiento-de-Maquinaria y precios unitarios  para la construcción de una ma...Rendimiento-de-Maquinaria y precios unitarios  para la construcción de una ma...
Rendimiento-de-Maquinaria y precios unitarios para la construcción de una ma...
 
Proyecto de iluminación "guia" para proyectos de ingeniería eléctrica
Proyecto de iluminación "guia" para proyectos de ingeniería eléctricaProyecto de iluminación "guia" para proyectos de ingeniería eléctrica
Proyecto de iluminación "guia" para proyectos de ingeniería eléctrica
 

Visualización de caracteres personalizados en un monitor VGA

  • 1.
  • 2. INDICE VISUALIZACION DE CARACTERES PERSONALIZADOS EN UN MONITOR VGA................................... 3 1.-MARCO TEORICO............................................................................................................... 3 1.1-VGA DISPLAY PUERTO................................................................................................... 3 1.2.-FRECUENCIA DE LA SEÑAL DE 60 HZ, 640X480 VGA ....................................................... 4 1.3.-EL TIEMPO DE SEÑAL VGA............................................................................................ 6 2.-DESCRIPCION DEL PROGRAMA ........................................................................................... 6 3.-DIAGRAMA DE FLUJO......................................................................................................... 8 4.-PROGRAMAS EN ISE........................................................................................................... 9 4.1.-PROGRAMA DE ALTO NIVEL Font_tes_top .................................................................... 9 4.2.- PROGRAMA DE INSTANCIACION VGA_SYNC-UNIT.......................................................11 4.3.-PROGRAMA DE INSTANCIACION FONT_GEN_UNIT......................................................15 4.4.-PROGRAMA FONT_UNTI-FROM-ROM..........................................................................17 5.-CONCLUSIONES................................................................................................................19 6.-PRUEBAS..........................................................................................................................20 6.-BIBLIOGRAFIA...................................................................................................................21
  • 3. VISUALIZACION DE CARACTERES PERSONALIZADOS EN UN MONITOR VGA 1.-MARCO TEORICO 1.1-VGA DISPLAY PUERTO El FPGA Spartan-3E StarterKit incluye unpuertoVGA medianteunconectorDB15. Este puerto se conectadirectamente alamayoría de losmonitoresde PCo pantallasLCD de pantallaplanautilizandouncable estandar del monitor. Comose muestraenlaFigura1.La parte superiordel tablero. El Spartan-3E FPGA impulsadirectamente las cincoseñalesVGA atravésde resistencias.Cada líneade color tiene unaresistenciaenserie,conunbitcada uno para VGA_RED,VGA_GREEN y VGA_BLUE. Las resistenciasenserie,encombinaciónconlaimpedanciade 75Ω integradoenel cable VGA,aseguran que lasseñalesde colorpermanecenenel 0V VGA-especificadogama0.7V. Las señalesVGA_RED,VGA_GREEN y VGA_BLUE altoso bajospara generarlosocho coloresque se muestranenla Tabla1.
  • 4. El siguientesistemaVGA yla informaciónde tiempoes proporcionadocomounejemplode cómo el FPGA podría conducir unmonitorVGA enel modo640 por 480. 1.2.-FRECUENCIA DE LA SEÑAL DE 60 HZ, 640X480 VGA Los display CRT-basados pantallasVGA utilizanamplitudmodulada, moviendohacesde electrones (o cátodo) para mostrarla informaciónenunapantallarecubiertade fósforo.LCDsutilizanuna serie de interruptores que puede imponerunvoltaje atravésde una pequeñacantidadde cristal líquido,cambiandoasíla luz a travésdel cristal sobre unabase de pixel porpixel.Aunque la siguiente descripciónse limitaalosmonitoresCRT,losmonitoresLCDhan evolucionadopara utilizarlosmismostiemposde señal comopantallasCRT.Enconsecuencia,lasiguiente discusión se refiere tantoa lostubosde rayos catódicosy LCDs. Dentrode una pantallaCRT, formasde onda de corriente pasana travésde las bobinas para producircamposmagnéticos que loshacesde electronesse desvíanal atravesarlasuperficie de la pantallaenun patrónde barrido,horizontal de izquierdaaderechay verticalmente de arribaa abajo.Comose muestraenla Figura2, la información sólose muestracuandoel hazse mueve en la direcciónizquierdaadelante aderechayde arriba a abajo yno durante el tiempode las declaracionesde lavigade nuevoa laorillaizquierdaolaparte superiordel monitor.Porlotanto, gran parte del potencial de tiempode visualizaciónse pierde enlos periodosde supresióncuando el haz se restablece yestabilizadoparacomenzarunnuevopase de visualizaciónhorizontal o vertical.
  • 5. La resoluciónde visualizacióndefine el tamañode lasvigas, lafrecuenciaalacual el haz pasaa travésde la pantalla,yla frecuenciaala que se modulael haz de electrones. ModernaspantallasVGA admitenvariasresolucionesde pantalla,yel controladorVGA dictala resoluciónmediante laproducciónde señalesde temporizaciónparacontrolarlospatronesde trama. El controladorproduce impulsosde sincronizaciónde nivel TTLque marcan la frecuenciaa la que lacorriente fluye atravésde las bobinasde deflexión,yaseguraque losdatosde píxeleso vídeose aplicaal haz de electronesenel momentocorrecto. Los datosde vídeonormalmente proviene de unamemoriade actualizaciónde vídeoconunoo más bytesasignado acada posiciónde pixel. Spartan-3EStarterKitutilizatresbitsporpíxel, produciendo unade lasocho posiblescoloresque se muestranenlaTabla 1. Comose muestraenla Figura 2, el controladorVGA generala sincronizaciónhorizontal (HS) y vertical sync(VS) señalesde lostiemposycoordinalaentregade datosde vídeoen cada reloj de píxeles. La frecuenciade píxel defineel tiempodisponibleparamostrarun píxel de lainformación.Laseñal VSdefine lafrecuenciade refrescode lapantalla,ola frecuenciaalaque toda la informaciónen la pantallase vuelve adibujar.
  • 6. 1.3.-EL TIEMPO DE SEÑAL VGA Los tiemposde señal enlatabla 2 se derivande 640 píxeles porpantalla480 filausandoun 25 MHz de reloj de píxeles y60 Hz ± 1 refresco.Figura3 muestrala relaciónentre cadaunode los símbolosde sincronización. En general,uncontadorsincronizadoporel reloj de píxelescontrolalasincronizaciónhorizontal. Descifrandovaloresdel contadorgeneranlaseñal HS.Este contador rastreaenla pantallalaactual ubicacióndel pixelenunafiladeterminada. Un contador separadoel seguimientode lasincronizaciónvertical.El contadorvertical sincronizacióncon cadapulsoHS y losvaloresdecodificadosgeneranla señal VS.Este contador rastrea laactual filade lapantalla.Estosdos contadoresque se ejecutancontinuamente formanla direcciónenunamemoriaintermediade visualización.Porejemplo,el DDRSDRAMproporciona un búferde visualizaciónideal. 2.-DESCRIPCION DEL PROGRAMA Este proyectoimplementalacomunicaciónporel puertoVGA del moduloSpartan3E con un monitorLCD mostrandocaracteresencódigo ASCII,guardadosenbanco de datos. En el programa de alto nivel se definenlasentradas,tenemos 2entradas: -La entradade reloj ,usamosel reloj internodel Spartande 50MHZ . -Una entradade reset, usaremosel pulsadorde latarjetaSpartan D18.
  • 7. -Las salidasdel puertoVGA RGB. -Las salidasde control hsync,vsyncdel puertoVGA. Este programautilizadosprogramasde instanciaciónvga_sync_unityfont_sync_unit. La rutinavga_sync_unitse usapara lasincronizacióndel monitorLCDa una frecuenciade 60Hz,haciendoundivisorde frecuenciade reloj de 50Mhz con 0.83 Mhz. Tambienestarutinadefine el tamañode loscaracteres. Toda la comunicaciónporel puertoVGA se describe enel librode PongChu. La rutinaFont_sync_unit cuentaconuna subrutinafrom_unitdonde colocantodosloscaracteres que se mostraran , podría decirse que es nuestrabase de datos. La rutina Font_sync_unitalmacenatodosestosdatosenlamemoriaROMdel Spartany también el colorde loscaracteres, el color elegidoesazul cuyo códigoes: Los caracteresutilizadosson ESCUELA: INGENIERIA ELECTRONICA ALUMNO:CalcinaHuanca Yhan K. CURSO :MICROELECTRONICA 2015-B DOCENTE:Ing.Raul Yanyachi
  • 8. 3.-DIAGRAMA DE FLUJO Declaración de entradas y salidas Archivo de alto nivel Font-test_top Declaración de los programas de instanciacion Subrutina Vga_sync_unit Subrutina Font_gen-unit Divisorde frecuenciade 60Hz para entrada del monitor VGA VGA 640X480 PARÁMETROS DE SINCRONIZACIÓN SUBRUTINA DE INSTANCIACIO N Almacena los caracteres en la memoria ROM Color de caracteres Base de datos
  • 9. 4.-PROGRAMAS EN ISE 4.1.-PROGRAMA DE ALTO NIVEL Font_tes_top libraryIEEE; use IEEE.STD_LOGIC_1164.ALL; use ieee.numeric_std.all; -------------------------------------------------------------------------------- entityfont_test_genis Port ( clk: in STD_LOGIC; video_on: in STD_LOGIC; pixel_x, pixel_y: STD_LOGIC_VECTOR(9 DOWNTO 0); rgb_text: out STD_LOGIC_VECTOR(2 DOWNTO 0)); endfont_test_gen; -------------------------------------------------------------------------------- architecture arch of font_test_genis signal rom_addr:std_logic_vector(10downto0); signal char_addr:std_logic_vector(6downto0); signal row_addr:std_logic_vector(3downto0); signal bit_addr:std_logic_vector(2downto0); signal font_word:std_logic_vector(7downto0); signal font_bit,text_bit_on:std_logic; -------------------------------------------------------------------------------- begin -- instantiate fontROM font_unit:entitywork.font_rom port map(clk=>clk,addr=>rom_addr,data=>font_word);
  • 10. -- fontROM interface char_addr<=pixel_y(5downto4) & pixel_x(7downto3); row_addr<=pixel_y(3downto0); rom_addr <= char_addr & row_addr; bit_addr<=pixel_x(2downto0); font_bit<= font_word(to_integer(unsigned(notbit_addr))); -- "on" regionlimitedtotop-leftcorner text_bit_on<= font_bitwhenpixel_x(9downto8)="00" and pixel_y(9downto6)="0000" else '0'; -- rgb multiplexingcircuit process(video_on,font_bit,text_bit_on) begin if video_on='0'then rgb_text<= "000"; --blank else if text_bit_on='1'then rgb_text<= "010"; -- green else rgb_text<= "000"; -- black endif; endif; endprocess; ------------------------------------------------------------------------------- endarch;
  • 11. 4.2.- PROGRAMA DE INSTANCIACION VGA_SYNC-UNIT libraryIEEE; use IEEE.STD_LOGIC_1164.ALL; use ieee.numeric_std.all; -- Uncommentthe followinglibrarydeclarationif using -- arithmeticfunctionswithSignedorUnsignedvalues --use IEEE.NUMERIC_STD.ALL; -- Uncommentthe followinglibrarydeclarationif instantiating -- any Xilinx primitivesinthiscode. --libraryUNISIM; --use UNISIM.VComponents.all; entityvga_syncis Port ( clk,reset: in STD_LOGIC; hsync,vsync : out STD_LOGIC; video_on,p_tick: out STD_LOGIC; pixel_x,pixel_y:out STD_LOGIC_VECTOR (9 downto0)); endvga_sync; architecture comportaof vga_sync is -- VGA 640X480 PARÁMETROSDE SINCRONIZACIÓN constantHD: integer:=640; -- zona visible horizontal constantHF: integer:=16; --borde derecho constantHB: integer:=48; --borde izquierdo constantHR: integer:=96; --retrazadohorizontal constantVD: integer:=480; --zonavisible vertical
  • 12. constantVF: integer:=10; --borde inferior constantVB: integer:=33;--borde superior constantVR: integer:=2; --retrazadovertical signal mod2_reg,mod2_next:std_logic; signal v_count_reg,v_count_next:unsigned(9downto0); signal h_count_reg,h_count_next:unsigned(9downto0); -- bufferde salida signal v_sync_reg,h_sync_reg:std_logic; signal v_sync_next,h_sync_next:std_logic; -- señalesde estado signal h_end,v_end,pixel_tick:std_logic; begin process(clk,reset) begin if reset='1' then mod2_reg <= '0'; v_count_reg<= (others=>'0'); h_count_reg<= (others=>'0'); v_sync_reg<= '0'; h_sync_reg<= '0'; elsif (clk'eventandclk='1') then mod2_reg <= mod2_next; v_count_reg<= v_count_next; h_count_reg<= h_count_next; v_sync_reg<= v_sync_next; h_sync_reg<= h_sync_next; endif;
  • 13. endprocess; -- generadorde 25 MHz mod2_next<= not mod2_reg; -- 25 MHz pixel tick pixel_tick<='1' whenmod2_reg='1' else '0'; -- findel contadorhorizontal h_end<= '1' when h_count_reg=(HD+HF+HB+HR-1) else '0'; --799 -- findel contadorvertica v_end<= '1' when v_count_reg=(VD+VF+VB+VR-1) else'0';--524 -- contador para el hsync process(h_count_reg,h_end,pixel_tick) begin if pixel_tick='1'then -- 25 MHz if h_end='1' then h_count_next<= (others=>'0'); else h_count_next<= h_count_reg+ 1; endif; else h_count_next<=h_count_reg; endif; endprocess; -- contador para el vsync process(v_count_reg,h_end,v_end,pixel_tick)
  • 14. begin if pixel_tick='1'andh_end='1' then if (v_end='1') then v_count_next<= (others=>'0'); else v_count_next<= v_count_reg+ 1; endif; else v_count_next<= v_count_reg; endif; endprocess; -- hsync y vsyncse registranbufferparaevitarposiblesglitch h_sync_next<= '1' when (h_count_reg>=(HD+HF)) and(h_count_reg<=(HD+HF+HR-1)) else '0'; -- entre 656 y 751 v_sync_next<= '1' when (v_count_reg>=(VD+VF))and(v_count_reg<=(VD+VF+VR-1)) else '0'; --entre 490 y 491 -- videoon/off video_on<= '1' when(h_count_reg<HD) and(v_count_reg<VD) else '0'; -- señalesde salida hsync<= h_sync_reg; vsync<= v_sync_reg; pixel_x <=std_logic_vector(h_count_reg); pixel_y<=std_logic_vector(v_count_reg);
  • 15. p_tick<= pixel_tick; endcomporta; 4.3.-PROGRAMA DE INSTANCIACION FONT_GEN_UNIT libraryIEEE; use IEEE.STD_LOGIC_1164.ALL; use ieee.numeric_std.all; -------------------------------------------------------------------------------- entityfont_test_genis Port ( clk: in STD_LOGIC; video_on: in STD_LOGIC; pixel_x, pixel_y: STD_LOGIC_VECTOR(9 DOWNTO 0); rgb_text: out STD_LOGIC_VECTOR(2 DOWNTO 0)); endfont_test_gen; -------------------------------------------------------------------------------- architecture arch of font_test_genis signal rom_addr:std_logic_vector(10downto0); signal char_addr:std_logic_vector(6downto0); signal row_addr:std_logic_vector(3downto0); signal bit_addr:std_logic_vector(2downto0); signal font_word:std_logic_vector(7downto0); signal font_bit,text_bit_on:std_logic; -------------------------------------------------------------------------------- begin -- instantiate fontROM font_unit:entitywork.font_rom port map(clk=>clk,addr=>rom_addr,data=>font_word);
  • 16. -- fontROM interface char_addr<=pixel_y(5downto4) & pixel_x(7downto3); row_addr<=pixel_y(3downto0); rom_addr <= char_addr & row_addr; bit_addr<=pixel_x(2downto0); font_bit<= font_word(to_integer(unsigned(notbit_addr))); -- "on" regionlimitedtotop-leftcorner text_bit_on<= font_bitwhenpixel_x(9downto8)="00" and pixel_y(9downto6)="0000" else '0'; -- rgb multiplexingcircuit process(video_on,font_bit,text_bit_on) begin if video_on='0'then rgb_text<= "000"; --blank else if text_bit_on='1'then rgb_text<= "010"; -- green else rgb_text<= "000"; -- black endif; endif; endprocess; ------------------------------------------------------------------------------- endarch;
  • 17. 4.4.-PROGRAMA FONT_UNTI-FROM-ROM libraryIEEE; use IEEE.STD_LOGIC_1164.ALL; use ieee.numeric_std.all; --------------------------------------------------------------------------------- entityfont_romis Port ( clk: in STD_LOGIC; addr :JEH in STD_LOGIC_VECTOR (10 DOWNTO0); data : out STD_LOGIC_VECTOR(7 DOWNTO0)); endfont_rom; --------------------------------------------------------------------------------- architecture arch of font_romis constantADDR_WIDTH: integer:=11; constantDATA_WIDTH: integer:=8; signal addr_reg:std_logic_vector(ADDR_WIDTH-1downto0); type rom_type isarray (0 to 2**ADDR_WIDTH-1) of std_logic_vector(DATA_WIDTH-1downto0); -- ROM definition constantROM: rom_type:=( -- 2^11-by-8 -- code x45 "00000000", -- 0 "00000000", -- 1 "11111110", -- 2 ******* "01100110", -- 3 ** ** "01100010", -- 4 ** * "01101000", -- 5 ** * "01111000", -- 6 ****
  • 18. "01101000", -- 7 ** * "01100000", -- 8 ** "01100010", -- 9 ** * "01100110", -- a ** ** "11111110", -- b ******* "00000000", -- c "00000000", -- d "00000000", -- e "00000000", -- f -- code x53 "00000000", -- 0 "00000000", -- 1 "01111100", -- 2 ***** "11000110", -- 3 ** ** "11000110", -- 4 ** ** "01100000", -- 5 ** "00111000", -- 6 *** "00001100", -- 7 ** "00000110", -- 8 ** "11000110", -- 9 ** ** "11000110", -- a ** ** "01111100", -- b ***** "00000000", -- c "00000000", -- d "00000000", -- e "00000000", -- f -- code x43 "00000000", -- 0 "00000000", -- 1
  • 19. "00111100", -- 2 **** "01100110", -- 3 ** ** "11000010", -- 4 ** * "11000000", -- 5 ** "11000000", -- 6 ** "11000000", -- 7 ** "11000000", -- 8 ** "11000010", -- 9 ** * "01100110", -- a ** ** "00111100", -- b **** "00000000", -- c "00000000", -- d "00000000", -- e "00000000", -- f ASIGNACION DESALIDAS # PlanAheadGeneratedphysical constraints NET "clk"LOC = C9; NET "hsync"LOC = F15; NET "reset"LOC = D18; NET "rgb[0]"LOC = G15; NET "rgb[1]"LOC = H15; NET "rgb[2]"LOC = R14; NET "vsync"LOC = F14; 5.-CONCLUSIONES -Para el usode subrutinasse hizousode componentsque el software Xilinx proporciona. - El tamañode la señal de la pantallason640x480 pixeles. -Se utilizóel reloj internodel FPGA de 50Mhz y undivisorde frecuenciaa60Hz para la entradaal puertoVGA.
  • 20. 6.-PRUEBAS SPARTAN 3E Conexión SPARTAN con Monitor VGA del laboratorio
  • 21. Visualizacion de los caracteres en el monitor VGA 6.-BIBLIOGRAFIA http://www.uhu.es/raul.jimenez/MICROELECTRONICA/prac1.pdf http://www.xilinx.com/support/documentation/data_sheets/ds312.pdf https://www.pantechsolutions.net/cpld-fpga-boards/vga-interfacing-with-spartan-3-primer https://www.um.edu.mt/__data/assets/pdf_file/0008/66779/MNE_2202_-_Project.pdf