UPGRADE YOUR BROWSER

We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

cancel
Showing results for 
Search instead for 
Did you mean: 
Observer scott_wilson46
Observer
4,312 Views
Registered: ‎03-20-2012

VGA input for ML506 (clock source)

Hi,

I hope this is the right place to post this.  I am trying to get the VGA input working on my ML506 board.  I am assuming that the vga clock coming from theAD9980 is coming into the ML506 on pin AH18.  I have set up the iic interface with:

 

WHEN "0100" => SDA_BUFFER <= "1001100" & WRITE & ACK & "00000001" & ACK & "00110010" & ACK & STOP_BIT;
WHEN "0101" => SDA_BUFFER <= "1001100" & WRITE & ACK & "00000010" & ACK & "00000000" & ACK & STOP_BIT;
WHEN "0110" => SDA_BUFFER <= "1001100" & WRITE & ACK & "00000011" & ACK & "01001000" & ACK & STOP_BIT;

 

which should set up the AD9980 to work with 640x480 @ 50Hz.  I am then ANDing the HSOUT and VSOUT signals together to indicate to the FPGA that there is a pixel valid.  I expect there may be more synchronization I have to perform to make sure the beginning of a frame lines up but this should at least get something through my system.  

 

My DVI output is blank which makes me suspect that there isn't a clock signal on the AH18 pin.  

 

My code for getting pixels in is:

 

assign de = vsout & hsout;

always @(posedge vga_clk or posedge reset)
begin
if (reset)
begin
pixel_valid_out <= 1'b0;
r_out <= 8'd0;
g_out <= 8'd0;
b_out <= 8'd0;
end
else
begin
pixel_valid_out <= de;
r_out <= r_in;
g_out <= g_in;
b_out <= b_in;
end
end

 

Any ideas?

 

Best Regards,

Scott Wilson

0 Kudos
3 Replies
Professor
Professor
4,297 Views
Registered: ‎08-14-2007

Re: VGA input for ML506 (clock source)

 

My DVI output is blank which makes me suspect that there isn't a clock signal on the AH18 pin.  

 

 

That seems to be a pretty big leap to conclusions.  Have you tried to put a counter on the

vga_clk and run a bit to an LED to see if it is running?  I'd be much more likely to suspect

the framing signals if there is no DVI output.

 

-- Gabor

-- Gabor
0 Kudos
4,256 Views
Registered: ‎05-15-2012

Re: VGA input for ML506 (clock source)

Hi,
I apologize for not answering back sooner.  I guess I should have been more explicit in my diagnosis of the issue.  I know that the vga_clk clock is not running because I attached a register to it that after reset would go high if the clock was there:

 

always @(posedge vga_clk or posedge reset)

  if (reset)

     led_0 <= 1'b0;

  else

    led_0 <= 1'b1;

 

and the LED I have attached this signal to is always unlit.

 

Cheers,

Scott 

0 Kudos
Professor
Professor
4,252 Views
Registered: ‎08-14-2007

Re: VGA input for ML506 (clock source)

I haven't looked at the ML506 schematics, so I may be wrong, but most boards drive

the LED cathodes low to light them.  So unless you have an inversion on led_0,

then always unlit means led_0 == 1 and the clock is running.  I commonly use a

counter to "see" a clock running like:

 

reg [24:0] vga_ctr = 0;

 

always @ (posedge vga_clk) vga_ctr <= vga_ctr + 1;

 

assign led_0 = vga_ctr[24];

 

If the LED blinks, you have a clock.  Normally if the counter sits at zero the LED is on steady.

 

-- Gabor

-- Gabor
0 Kudos