Help with XILINX ISE VHDL.

Joined
May 12, 2009
Messages
5
Reaction score
0
Greetings:

Im new on programming with VHDL, and I was wondering if someone can help me build a design a generic n-bit unit using VHDL and Xilinx ISE, that com-
putes the derivative of a sequence of 2048 n-bit samples, and
determines the last zero crossing point and the maximum of the
derivative. Both values must be stored in registers, and a signal
provided indicating they were found. The unit should at least
have a input to enable operation, and an output to indicate that
the sequence has been processed.

I know that I need to create at least 3 registers(derivative,zero crossing point and maximum).

If anyone could help me, I''ll really appreciate it.

Thanks in advance.
 
Joined
Dec 9, 2008
Messages
88
Reaction score
0
I suggest you spend $55.00 at DigiKey and buy a CoolRunner II Design kit (Digikey #DO-CPLD-DK-G). It gives you hardware to play with, and a good book to introduce you to writing VHDL and learning the ISE tool.

After you go through that exercise you'll have a template to start your design.

I also like the following sites for VHDL references:

http://www.vhdl-online.de/tutorial/
http://forums.xilinx.com/xlnx/
http://www.eng.auburn.edu/department/ee/mgc/vhdl.html
http://www.eda.org/comp.lang.vhdl/FAQ1.html

John D
 
Joined
May 12, 2009
Messages
5
Reaction score
0
John D:

Thank you very much for the information. But if you or anyone else help me with that for example code structure or anything beside what you gave me.
 
Joined
Dec 9, 2008
Messages
88
Reaction score
0
ISE has templates available. Look for the light bulb labeled "Lanquage Templates".

You can also search around the Xilinx site. Have fun learning VHDL!

John D
 
Joined
May 12, 2009
Messages
5
Reaction score
0
Excellent just what im looking for. but John how do I get the DX/DY(Derivative) of a sequence of 2048N-bits?? how can I wrote that into Xilinx?? I have no idea how to create the derivative function. hope you can help me.
 
Joined
Dec 9, 2008
Messages
88
Reaction score
0
In the z-domain a derivative is simply the difference between adjacent samples, so you can set up something like this in a loop that passes through your data set:

derivative <= sample(z) - sample(z-1);

if (derivative > derivative_max) then
derivative_max <= derivative;
max_location <= z;
end if;

The nice thing about VHDL is you can simulate as much as you want until you get things figured out.

Get a good digital control theory book (Discrete-Time Control Systems) for more theory there.

John D
 
Joined
May 12, 2009
Messages
5
Reaction score
0
Thank you very much John. Great with that function I get the maximum point and Zero crossing point of my samples.

I have to create a function that compares the different values and save it into a register right??? and then call the function that you already created.
 
Joined
May 12, 2009
Messages
5
Reaction score
0
John or anyone else:

How I create a subtract in VHDL no an adder/subtract. only the subtract???
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,744
Messages
2,569,482
Members
44,901
Latest member
Noble71S45

Latest Threads

Top