Velocity Reviews - Computer Hardware Reviews

Velocity Reviews > Newsgroups > Programming > VHDL > about timing.

Reply
Thread Tools

about timing.

 
 
Amit
Guest
Posts: n/a
 
      03-01-2008

Hello group,

I'm looking at a source code which generates a vsync and hsync signal
for VGA (640x480 pixel by pixel) and in there I see there is a
checking if v_count and h_count condition is checked as follow:



For horizontal and then vertical:

--Generate horizontal and vertical timing signals for video signla
--H_count counts pixels (640 + extra time for sync signals)


if (h_count = 799 ) Then
h_count <= "0000000000";
else
h_count <= h_count + 1;
end if;


if (v_count <= 755) AND (h_count =>659 ) Then
horiz_sync <= '0';
else
horiz_sync <= '1';
end if;



if (v_count >= 524) AND (h_count =>699 ) Then
v_count <= "0000000000";
elsif
v_count <= v_count + 1;
end if;


Questions:

Why does it check for 799 when the resolution is 640?
if it is extra time how is it calculated then?!
same for the vertical? how should I know what number should I use in
condition part?

Thanks,
Amit
 
Reply With Quote
 
 
 
 
kennheinrich@sympatico.ca
Guest
Posts: n/a
 
      03-01-2008
On Mar 1, 4:59 pm, Amit <(E-Mail Removed)> wrote:
> Hello group,
>
> I'm looking at a source code which generates a vsync and hsync signal
> for VGA (640x480 pixel by pixel) and in there I see there is a
> checking if v_count and h_count condition is checked as follow:
>
> For horizontal and then vertical:
>
> --Generate horizontal and vertical timing signals for video signla
> --H_count counts pixels (640 + extra time for sync signals)
>
> if (h_count = 799 ) Then
> h_count <= "0000000000";
> else
> h_count <= h_count + 1;
> end if;
>
> if (v_count <= 755) AND (h_count =>659 ) Then
> horiz_sync <= '0';
> else
> horiz_sync <= '1';
> end if;
>
> if (v_count >= 524) AND (h_count =>699 ) Then
> v_count <= "0000000000";
> elsif
> v_count <= v_count + 1;
> end if;
>
> Questions:
>
> Why does it check for 799 when the resolution is 640?
> if it is extra time how is it calculated then?!
> same for the vertical? how should I know what number should I use in
> condition part?
>
> Thanks,
> Amit


There's always some dead time between when the active pixels on one
line end and those in the the next line start. This called the HBI
(horizontal blanking interval). In the olden days, this time was
needed for the magnetic field of the monitor's deflection coils to
collapse and put the beam back at the left edge of the screen. Same
idea for the dead time between bottom of active video and top of
active picture. I'd expect you could google for a chart, or look for
some Xilinx/Altera app notes, although I think there's more
flexibility (read: slop) in the VGA/computer world than there is in
real (read: television broadcast) video.

- Kenn
 
Reply With Quote
 
 
 
 
Amit
Guest
Posts: n/a
 
      03-02-2008
On Mar 1, 3:36 pm, (E-Mail Removed) wrote:
> On Mar 1, 4:59 pm, Amit <(E-Mail Removed)> wrote:
>
>
>
> > Hello group,

>
> > I'm looking at a source code which generates a vsync and hsync signal
> > for VGA (640x480 pixel by pixel) and in there I see there is a
> > checking if v_count and h_count condition is checked as follow:

>
> > For horizontal and then vertical:

>
> > --Generate horizontal and vertical timing signals for video signla
> > --H_count counts pixels (640 + extra time for sync signals)

>
> > if (h_count = 799 ) Then
> > h_count <= "0000000000";
> > else
> > h_count <= h_count + 1;
> > end if;

>
> > if (v_count <= 755) AND (h_count =>659 ) Then
> > horiz_sync <= '0';
> > else
> > horiz_sync <= '1';
> > end if;

>
> > if (v_count >= 524) AND (h_count =>699 ) Then
> > v_count <= "0000000000";
> > elsif
> > v_count <= v_count + 1;
> > end if;

>
> > Questions:

>
> > Why does it check for 799 when the resolution is 640?
> > if it is extra time how is it calculated then?!
> > same for the vertical? how should I know what number should I use in
> > condition part?

>
> > Thanks,
> > Amit

>
> There's always some dead time between when the active pixels on one
> line end and those in the the next line start. This called the HBI
> (horizontal blanking interval). In the olden days, this time was
> needed for the magnetic field of the monitor's deflection coils to
> collapse and put the beam back at the left edge of the screen. Same
> idea for the dead time between bottom of active video and top of
> active picture. I'd expect you could google for a chart, or look for
> some Xilinx/Altera app notes, although I think there's more
> flexibility (read: slop) in the VGA/computer world than there is in
> real (read: television broadcast) video.
>
> - Kenn



Hello Keen,

Thanks for the explanation. Now, how should we calculate it? how is it
calculated?

Regards,
Amit
 
Reply With Quote
 
David Spencer
Guest
Posts: n/a
 
      03-02-2008
"Amit" <(E-Mail Removed)> wrote in message
news:(E-Mail Removed)...
> On Mar 1, 3:36 pm, (E-Mail Removed) wrote:
>
> Hello Keen,
>
> Thanks for the explanation. Now, how should we calculate it? how is it
> calculated?
>
> Regards,
> Amit


Have a look at http://www.epanorama.net/documents/pc/vga_timing.html.


 
Reply With Quote
 
Amit
Guest
Posts: n/a
 
      03-02-2008
On Mar 1, 7:24 pm, "David Spencer" <(E-Mail Removed)> wrote:
> "Amit" <(E-Mail Removed)> wrote in message
>
> news:(E-Mail Removed)...
>
> > On Mar 1, 3:36 pm, (E-Mail Removed) wrote:

>
> > Hello Keen,

>
> > Thanks for the explanation. Now, how should we calculate it? how is it
> > calculated?

>
> > Regards,
> > Amit

>
> Have a look athttp://www.epanorama.net/documents/pc/vga_timing.html.



Hi David,

Thank you so much. That was a big help.

Regards,
Amit
 
Reply With Quote
 
Tricky
Guest
Posts: n/a
 
      03-03-2008
On Mar 2, 6:27 am, Amit <(E-Mail Removed)> wrote:
> On Mar 1, 7:24 pm, "David Spencer" <(E-Mail Removed)> wrote:
>
> > "Amit" <(E-Mail Removed)> wrote in message

>
> >news:(E-Mail Removed)...

>
> > > On Mar 1, 3:36 pm, (E-Mail Removed) wrote:

>
> > > Hello Keen,

>
> > > Thanks for the explanation. Now, how should we calculate it? how is it
> > > calculated?

>
> > > Regards,
> > > Amit

>
> > Have a look athttp://www.epanorama.net/documents/pc/vga_timing.html.

>
> Hi David,
>
> Thank you so much. That was a big help.
>
> Regards,
> Amit


Video signals are made up of all sorts of timings. If you look at a
video signal on a scope you will see that the actual video data only
makes up about 2/3 of the overall signal. You have to worry about your
syncs, plus flyback as modern monitors are disigned to work with
standardised signals, that were made standard with analogue screens,
which are still in major use.

The counters may also be set to odd numbers depending of the clock
speed of the system.
 
Reply With Quote
 
JK
Guest
Posts: n/a
 
      03-06-2008
On Mar 2, 11:27*am, Amit <(E-Mail Removed)> wrote:
>
> Hi David,
>
> Thank you so much. That was a big help.
>
> Regards,
> Amit


Take a look at
http://www.tkk.fi/Misc/Electronics/f...2rgb/calc.html

Regards,
JK
 
Reply With Quote
 
 
 
Reply

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off




Advertisments