Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

Problem with VGA Controller

Status
Not open for further replies.

siddharthakala

Member level 2
Joined
Jul 20, 2010
Messages
53
Helped
6
Reputation
12
Reaction score
5
Trophy points
1,288
Location
bangalore
Activity points
1,732
Hi,

I am designing a VGA controller on Nexys3 board. My initial tests worked perfectly, in which I tried to display the screen equally divided in 3 colors Red, Green and blue, and did not have any problem with this. I also ran a similar test in which the screen was vertically divided into strips of 3 pixels width and displayed all 256 colors of the 8 bit VGA, which also worked fine until I had defined the spare area on left and right as black but when I changed the spare area on the right as white keeping the left area as black, I obtained a completely different result, i.e. the screen was still divided into 3 pixel wide strips but mostly the colors were variations of red, I couldnt figure out what the problem is.

Also, one more problem I have is that when I try to display a single color, e.g. try to turn the whole screen red, or green, it would just not display everything. When I synthesize this design, the synthesizer gives a warning that the RGB outputs are constant and will be trimmed off during the optimization process. I think this is where the problem is. I tried to find some synthesis attributes or synthesis settings, but didnt find that would keep the output pins from getting trimmed, but couldnt find anything. Please help me with this.

Thanks
 

Its the internal logic thats getting trimmed - so there is a problem with your code. Have you got a clock stuck at '0' or '1', a clock enable stuck at '0'?
 

I am not using a clock enable. I have tried both synchronous and asynchronous RGB outputs. I am using the DCM (Digital Clock Management) of Spartan6 to generate the required clock, and counters to further produce the horizontal and vertical counts. I have tried making several changes to all segments of the code. The output gets trimmed when I keep them constant. e.g. I try to get a complete red screen, and therefore, generate a constant output of rgb= 8'b111_000_00. This is when I get the warning that rgb <4-0> never change and therefore will be terminated during the optimization process. This is when i get a blank screen. When I try and get variable output i.e. changing colors on different parts of the screen, it gives perfect colors and everything.

I'll try recoding the whole thing differently and see the difference.
 

Status
Not open for further replies.

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top