| Author |
Message |
kevin
Guest
|
Posted:
Fri Dec 03, 2004 12:57 am Post subject:
how to start with development of eda tools |
|
|
how to start with development of eda tools(e.g simulation tools and
synthesizing tools): what knowledge should i know and where i can find
the
informations(tutorial, guides or something else)
thanks!
br |
|
| Back to top |
|
 |
Hendra
Guest
|
Posted:
Fri Dec 03, 2004 6:21 am Post subject:
Re: how to start with development of eda tools |
|
|
qizhang@kth.se (kevin) wrote in message news:<b5c1b76d.0412021157.360a7def@posting.google.com>...
| Quote: | how to start with development of eda tools(e.g simulation tools and
synthesizing tools): what knowledge should i know and where i can find
the
informations(tutorial, guides or something else)
thanks!
br
|
1. Review your digital logic design. Especially the combinational,
synchronous sequential and state machine design. I say this because
using the tools wouldn't make sense if you don't know the theory.
2. You should have experience of building simple circuits with TTL
chips. This will get you a physical feeling with gates, decoder, mux,
flipflop etc.
3. Buy an FPGA board. Get Spartan 3 kit (sold directly from Xilinx) or
other FPGA boards from third party vendors such as Digilent or Xess.
4. Start using your EDA tools, such as Xilinx Webpack. I would say you
should start from Schematics first, then move to HDL. Don't start
directly with HDL because it may misguide you to think that HDL is
just like C. Doing schematics first also force you to think in term of
hardware, not software. This will help later when you do your project
with HDL.
5. Learn either Verilog or VHDL. The book that I read to learn Verilog
is Verilog HDL by Samir Palnitkar. It is the best Verilog book for
beginner. I recommend Verilog because it is much easier to learn. VHDL
is Very Hard and Difficult to Learn :-)
6. Go back to your EDA tools and start using Verilog with the tools.
Some Useful URLs:
www.xilinx.com/ise/webpack : Free Xilinx EDA tools. Comes with
simulator and synthesis tool.
www.digilentinc.com: FPGA board vendor
www.xess.com : Another FPGA board vendor
www.xilinx.com/products/spartan3/s3boards.htm : Spartan 3 Starter Kit
www.engr.sjsu.edu/crabill : This website has some HDL projects to work
with.
xup.msu.edu : Xilinx University website. It has links to the EDA
tutorials along with projects to work with your EDA tools.
Have fun!
Hendra |
|
| Back to top |
|
 |
Thomas Reinemann
Guest
|
Posted:
Fri Dec 03, 2004 1:35 pm Post subject:
Re: how to start with development of eda tools |
|
|
Hendra wrote:
| Quote: | 3. Buy an FPGA board. Get Spartan 3 kit (sold directly from Xilinx) or
other FPGA boards from third party vendors such as Digilent or Xess.
4. Start using your EDA tools, such as Xilinx Webpack. I would say you
should start from Schematics first, then move to HDL. Don't start
directly with HDL because it may misguide you to think that HDL is
just like C. Doing schematics first also force you to think in term of
hardware, not software. This will help later when you do your project
with HDL.
|
I agree, today students think more in software than in hardware. Therefore
hardware has to be introduced. But only three points have to be respected,
to *start* with HDLs:
- loops have to be expressed by the "process"-statement in VHDL (AFAIK
"always" in Verilog)
- one bit is stored in a signal, assignments happen on a clock edge
- results of logic functions are assigned to signals, within the
"process"-statement
Classical approaches teach logic elements and logic minimation, but this is
counterproductive. Today you should think in logic functions (LUts) and not
in gates, in vectors and not in shift registers.
Bye Tom. |
|
| Back to top |
|
 |
kevin
Guest
|
Posted:
Fri Dec 03, 2004 2:03 pm Post subject:
Re: how to start with development of eda tools |
|
|
u1000393@email.sjsu.edu (Hendra) wrote in message news:<3ef7b4ba.0412021721.47c30cc9@posting.google.com>...
| Quote: | qizhang@kth.se (kevin) wrote in message news:<b5c1b76d.0412021157.360a7def@posting.google.com>...
how to start with development of eda tools(e.g simulation tools and
synthesizing tools): what knowledge should i know and where i can find
the
informations(tutorial, guides or something else)
thanks!
br
1. Review your digital logic design. Especially the combinational,
synchronous sequential and state machine design. I say this because
using the tools wouldn't make sense if you don't know the theory.
2. You should have experience of building simple circuits with TTL
chips. This will get you a physical feeling with gates, decoder, mux,
flipflop etc.
3. Buy an FPGA board. Get Spartan 3 kit (sold directly from Xilinx) or
other FPGA boards from third party vendors such as Digilent or Xess.
4. Start using your EDA tools, such as Xilinx Webpack. I would say you
should start from Schematics first, then move to HDL. Don't start
directly with HDL because it may misguide you to think that HDL is
just like C. Doing schematics first also force you to think in term of
hardware, not software. This will help later when you do your project
with HDL.
5. Learn either Verilog or VHDL. The book that I read to learn Verilog
is Verilog HDL by Samir Palnitkar. It is the best Verilog book for
beginner. I recommend Verilog because it is much easier to learn. VHDL
is Very Hard and Difficult to Learn :-)
6. Go back to your EDA tools and start using Verilog with the tools.
Some Useful URLs:
www.xilinx.com/ise/webpack : Free Xilinx EDA tools. Comes with
simulator and synthesis tool.
www.digilentinc.com: FPGA board vendor
www.xess.com : Another FPGA board vendor
www.xilinx.com/products/spartan3/s3boards.htm : Spartan 3 Starter Kit
www.engr.sjsu.edu/crabill : This website has some HDL projects to work
with.
xup.msu.edu : Xilinx University website. It has links to the EDA
tutorials along with projects to work with your EDA tools.
Have fun!
Hendra
|
Hi Hendra:
Thanks for your reply!
But what you said seems how to use vhdl/verilog to do fpga design, but
in fact, these are what i have been doing for years, and what interest
me more now is the algorithms and principles of simulation and
synthesizing, and i really want to make a tiny simulation tools(like
simili) or synthszing tools,
that's what i want :-).
Thank you again
br
kevin |
|
| Back to top |
|
 |
vax, 9000
Guest
|
Posted:
Fri Dec 03, 2004 6:28 pm Post subject:
Re: how to start with development of eda tools |
|
|
kevin wrote:
| Quote: | u1000393@email.sjsu.edu (Hendra) wrote in message
news:<3ef7b4ba.0412021721.47c30cc9@posting.google.com>...
Hi Hendra:
Thanks for your reply!
But what you said seems how to use vhdl/verilog to do fpga design, but
in fact, these are what i have been doing for years, and what interest
me more now is the algorithms and principles of simulation and
synthesizing, and i really want to make a tiny simulation tools(like
simili) or synthszing tools,
that's what i want :-).
|
start from http://www.geda.seul.org/ ?
vax, 9000
| Quote: |
Thank you again
br
kevin |
|
|
| Back to top |
|
 |
Hendra
Guest
|
Posted:
Sat Dec 04, 2004 2:18 am Post subject:
Re: how to start with development of eda tools |
|
|
qizhang@kth.se (kevin) wrote in message
| Quote: | what interest me more now is the algorithms and principles of simulation and
synthesizing, and i really want to make a tiny simulation tools(like
simili) or synthszing tools,
that's what i want :-).
|
Are you saying that you want to make your own simulator and your own
synthesis tool? Well, I don't know anything about that! Perhaps the
LRM (Language Reference Manual) from IEEE may help you, because it is
made more for the developer who makes the simulator and synthesis
tool, rather than for the engineers who just use it.
Hendra |
|
| Back to top |
|
 |
Hendra
Guest
|
Posted:
Sat Dec 04, 2004 2:58 pm Post subject:
Re: how to start with development of eda tools |
|
|
Thomas Reinemann <thomas.reinemann@mb.uni-magdeburg.de> wrote >
| Quote: | Classical approaches teach logic elements and logic minimation, but this is
counterproductive.
|
Why does the academic community still teach methods that are not used
in the industry, such as K-Map?
Hendra |
|
| Back to top |
|
 |
Mike Treseler
Guest
|
Posted:
Sat Dec 04, 2004 8:06 pm Post subject:
Re: how to start with development of eda tools |
|
|
kevin wrote:
| Quote: | But what you said seems how to use vhdl/verilog to do fpga design, but
in fact, these are what i have been doing for years, and what interest
me more now is the algorithms and principles of simulation and
synthesizing, and i really want to make a tiny simulation tools(like
simili) or synthszing tools,
that's what i want :-).
|
It's good to know what you want, but the playing field is large,
so consider exploring a bit. Simulation attempts to answers the question:
"How can I predetermine that the hardware described by my HDL
or netlist text will function as I expect without actually
building and testing it."
http://www.google.com/search?q=digital+hardware+description+simulation+theory
I expect that you will find that software tools like Simili are not
as tiny as they might look.
Synthesis attempts to answer the question
"How can I build a physical logic circuit that will function
exactly as predicted by the simulation of my hardware description text"
http://www.google.com/search?q=digital+hardware+synthesis+theory
Good luck.
-- Mike Treseler |
|
| Back to top |
|
 |
kevin
Guest
|
Posted:
Sat Dec 04, 2004 8:19 pm Post subject:
Re: how to start with development of eda tools |
|
|
Personaly:
I think the first step for a eda tools must be a compiler which
translate our vhdl or verilog codes to some intermediate format(like
the binary format in modelsim), and then use some simulate and
schedule algorithm and policy to do analysis and calucate, then get
the result. So, I think they are the key to success.
this is just my personal opinion :-) |
|
| Back to top |
|
 |
Thomas Reinemann
Guest
|
Posted:
Mon Dec 06, 2004 12:30 pm Post subject:
Re: how to start with development of eda tools |
|
|
Hendra wrote:
| Quote: | Thomas Reinemann <thomas.reinemann@mb.uni-magdeburg.de> wrote
Classical approaches teach logic elements and logic minimation, but this
is counterproductive.
Why does the academic community still teach methods that are not used
in the industry, such as K-Map?
|
I don't know the right translation, but I would it call mental or cerebral
inertia. You are right, but youself said a beginner shall start with
schematics. We all have been taught in this way. Just now these paradigms
have to be replaced.
Bye Tom |
|
| Back to top |
|
 |
glen herrmannsfeldt
Guest
|
Posted:
Mon Dec 06, 2004 10:41 pm Post subject:
Re: how to start with development of eda tools |
|
|
Hendra wrote:
| Quote: | Thomas Reinemann <thomas.reinemann@mb.uni-magdeburg.de> wrote
Classical approaches teach logic elements and logic minimation, but this is
counterproductive.
Why does the academic community still teach methods that are not used
in the industry, such as K-Map?
|
Why do we teach addition in first grade if everyone has
hand calculators to do it?
I do think it is still useful to know how to at least simple
logic minimization by hand. (In case you are lost on a desert
island with a pile of TTL chips.)
It is useful to have at least some idea how much logic will be
generated for different designs, or even if they are synthesizable
at all. (FF's that trigger on both edges, for example.)
In many cases I prefer HDL to GUI schematic entry tools. It just
takes too much work moving around little rectangles and getting all
the lines to go the right way. It is nice to have a tool that will
generate a schematic from HDL, though.
-- glen |
|
| Back to top |
|
 |
Stephen Williams
Guest
|
Posted:
Fri Dec 17, 2004 10:16 pm Post subject:
Re: how to start with development of eda tools |
|
|
kevin wrote:
| Quote: | how to start with development of eda tools(e.g simulation tools and
synthesizing tools): what knowledge should i know and where i can find
the
informations(tutorial, guides or something else)
|
People have already given you the hardware experiences you'll need.
Add to that list at least one graduate level course in compiler
construction, and/or equivilent experience.
The techniques for how simulation engines work come from operations
research (discrete event simulations) with a dose of queuing theory.
Most digital simulators are to some degree simle discreet event
simulations underneath. This sort of information should be relatively
easy to find. (I had coursework and work experience to draw on here.)
The techniques for synthesis are deeply hidded from the public. It's
probably easier to get documentation for building an atomic bomb:-)
There are all kinds of books on combinational logic synthesis, but
for synthesis of algorithms (i.e. sequential, behavioral code) the
only book I can find is:
Logic Synthesis for Control Automata
Samary Baranov
Kluwer Acedemic Publishers
Of course, it makes no mention of behavioral, sequential code. You
have to make the mental connections yourself.
--
Steve Williams "The woods are lovely, dark and deep.
steve at icarus.com But I have promises to keep,
http://www.icarus.com and lines to code before I sleep,
http://www.picturel.com And lines to code before I sleep." |
|
| Back to top |
|
 |
|
|
|
|