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.

Digital BillBoard: help me with code and GAL device

Status
Not open for further replies.

Compy

Member level 2
Joined
Jan 24, 2005
Messages
52
Helped
2
Reputation
4
Reaction score
1
Trophy points
1,288
Activity points
454
Digital BillBoard

m creating a project like digital Billboard

like i will give the Signal 00001 from computer by parallel port and

the Led circuit will print A on 7*5 LED matrix..

i have written code in Vhdl for my Encoder plz take a look at project

and vhdl code . and suggest me the better code and GAL device which is

suitable for this.

plz help me otherwise i'll be fail :(


Project File is
http://www.geocities.com/yasirz_cm/LEdProject.doc

And VHDL code file is
http://www.geocities.com/yasirz_cm/vhdl.txt

Also tell me if i want to save the bit i dont want to use external

latches.. thanks

plz take a look plz plz

Thanks
 

Digital BillBoard

At first, you need to use truth table to reduce the control pin. It increases th speed of your circuit.

Using VHDL and FPGA is very good for your project. Easy to understand and write HDL code.

BB
 

Re: Digital BillBoard

I've Already made the truth table thats why wrote this code..

can't reduce the control pins i have to send minimum 26 diff signals

All i want, look at project file and then VHDL file

& tell me is it correct code and some enhancement :p
 

Digital BillBoard

Hi,
This is an interesting project, but if I was you, I would rather use a case statement to controll the signals.

If you assigne the incomming signals to a bus, and then use that bus in the case statement you can srite a much easier to read code than what you have now.

You can also create "x" number of constants, each with the correct "assignment" of the LEDs and then use these assignments to controll the output bus (put all your LEDs in a bus). This will have two major benefits for you, the first, it wil be a clean and easy code, and second, when you simulate your code, you can step through the code in one step rather than those many that you have.

To check the code, it would be much easier to write a small test bench and test it out rather than asking people to check it for you.

For the GAL! you can use any CPLD from Xilinx or Altera, I think most of those devices can sink up to 20ma, but you may need to add a buffer at the output of your PLD to make sure you do not dammage it. I would suggest the XC9536 from xilinx as the cheapest alternative, it has up to 38 IOs.


Just my 2c,
BR,
/Farhad
 

    Compy

    Points: 2
    Helpful Answer Positive Rating
Re: Digital BillBoard

hi, thanks for the help

i have minimum of 40 inputs.. 5 for input 35 output

and also i want to have just like enable input as well( will discuss later)


m new in VHDL wrote this code after studying different tutorials..

m writing code.. in style u said but..

just do me another favour just give me starting tips.. starting logic code... remaing i will do it by myself..

Thanks

Last day for project Submition (10th fab) :(
 

Re: Digital BillBoard

Compy said:
just do me another favour just give me starting tips.. starting logic code... remaing i will do it by myself..

In your case I would start with a VHDL book first. Most of them cover logical equations and more advanced code writing. As already pointed out "case" statements are the most preferred way. Or see it as an address decoder with many outputs (o;

Also good sources are the vast amount of application notes from CPLD/FPGA vendors. Even includes simple logic designs in Verilog/VHDL.

And there isn't much for you "to do yourself" then if we supply code skeletons here.

I guess you study some engineering...and engineering isn't about always asking other people to do their starting work. That's the job of teachers to point you into the right direction (o;

Last day for project Submition (10th fab) :(

Do not ever post a deadline here!!! Not our fault you started your work too late!


Sorry for my harsh comments...but I just see too many people here studying serious engineering and always rely on other people to do their job.
 

Digital BillBoard

HI Compy,

You can do something like this:

constant Zero_const : std_logic_vector(6 downto 0) := "1000000";


Bu change the data to the number of signals you have, and the valuses you want to set or clear.

And use the other signals and convert them into a bus like in_data : std_logic_vector(4 downto 0);

And then set in_data <= A; etc.


Use in_data in a case statement:

case in_data is
when
Zero => my_LEDs <= Zero_const;

etc.

Just fill in the gaps, change what you are looking for , the number of bits etc and you have a good looking code for your class.

BR,

/Farhad
 

Status
Not open for further replies.

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top