Programmable Devices
CPLDs, FPGAs, SoC FPGAs, Configuration, and Transceivers
Announcements
FPGA community forums and blogs on community.intel.com are migrating to the new Altera Community and are read-only. For urgent support needs during this transition, please visit the FPGA Design Resources page or contact an Altera Authorized Distributor.

just beginning

Altera_Forum
Honored Contributor II
1,818 Views

Hello. 

I am Rick Phillips. I am a student at Ivy Tech taking a course in digital electronics. Part of the course is about AHDL and VHDL. I am new to programming. I find that there are a lot of terms that I am not familiar with and there are some concepts that I need to know. Our textbook gives some description of how to use AHDL and VHDL to describe basic logic gates and flip-flops. I can follow the explanations somewhat. I get lost when it comes accessing libraries and I do not understand some of the terms such as literals, standard logic, primitives, and a lot of others. I feel that it is important that I understand the basics because we are required to use Quartus II for our labs. I really need a better background in order to proceed or I will just go through the motions without really understanding what I am doing. 

 

Can anyone suggest any material, websites, or training from Altera that start from the beginning assuming very little background. 

 

Thank you, 

 

Rick Phillips
0 Kudos
6 Replies
Altera_Forum
Honored Contributor II
792 Views

http://en.wikipedia.org/wiki/literal_(computer_science) 

This is a good source. Nothing can replace a teacher, a group discussion.  

 

libraries , literals, standard logic, primitives 

 

Let me try. 

1. Library 

In computing world, Library refers to a set of functions 

( function is a basic math term Y= f(x) )  

which you will use in your program (Code) while wring the program.  

These are generally / universally used by all and made by, usually experts, packaged and kept in the system . The code you write can use any of these and they get assembed in your final program which runs in the computer ( executable) 

 

2. Literals 

http://en.wikipedia.org/wiki/literal_(computer_science) 

In computer science (http://en.wikipedia.org/wiki/computer_science), a literal is a notation for representing a fixed value (http://en.wikipedia.org/wiki/value_(computer_science)) in source code (http://en.wikipedia.org/wiki/source_code).  

 

3. standard logic, primitives 

 

AND, OR, NOT,NAND,NOR -- these are all standard LOGIC functions. 

primitives are basic functions one uses. 

 

best of luck 

 

GKM
0 Kudos
Altera_Forum
Honored Contributor II
792 Views

Its a shame you are being taught AHDL. Its is essentially a dead language now and it has very little support. Quartus will still compile it but it is very limited in scope compared to VHDL or Verilog. It will be useful from a Hardware basics POV, but for actual design VHDL is far superior. 

 

All HDL languages are not programming languages, they are Hardware Description Languages. The best way to learn them is first to understand the basic hardware components. When designing a system first you need to work out whats going on before writing any code. HDL is really just another way of writing a circuit schematic. If you come from this angle hopefully it will help you by not overloading your learning. 

 

I think KM above has expalined your main questions above. Ill try and expand on them, using VHDL, assuming you understand some basic logic; 

 

If we have a signal a, in VHDL a literal would be: 

 

A <= '1'; or A <= '0';  

This means 'A' is always 1 or 0; 

 

an equation using primitive could be: 

 

A <= B and C; 

A is now the boolean AND of signals B and C; 

you can write much more complex equations with primitives: 

 

A <= (B and C) xor (D or E); 

 

As for standard logic functions, It may mean registers. The basic template for a D type flip flop in VHDL is: 

 

process(clk) begin if rising_edge(clk) then q <= d; end if; end process; You can make this more complicated by putting boolean equations in place of D above, so the output of a primitive logic equation has a D type flip flop on the end of it.
0 Kudos
Altera_Forum
Honored Contributor II
792 Views

GKM and Tricky, 

Thanks for the replies. Both replies make sense. I like the idea of HDL being a writing language. What I keep running into with the textbook is good explanations of the circuit action but vague explanations on why the author set up the code as he did. In one case, the author describes a D latch. I did not find any explanations of what the symbols were or meant until reading a few pages later. I don't mean to gripe about the book, but this situation makes me wish that I had some kind of tutorial that would explain the terms and how to use them to describe the ciruit action. I know that learning any kind of HDL or programming language takes a lot of work and understanding only comes by doing the work. But a person has got to start somewhere.  

 

Thanks again. 

 

Rick
0 Kudos
Altera_Forum
Honored Contributor II
792 Views

Rick 

Can you please provoide more information about - Ivy Tech ? 

 

In India - Engineering (B.Tech) we have theory subjects like Switching Theory an Logic Design, Digital Logic Design .. etc. Also Lab covering the Basics of Digital circuits. These provoide reasonable exposure. Then one needs to parcicipate in design, developmnt and testing projects. After that one ( may be ) is likely get a feel for Logic, Signal / Data flow, architecture and can appriciate and understand the work / models built by professionls. 

 

Opencores, advanced encrytion algorithms in VHDL are available in the web. 

These will help you to build your own complex functions and systems. 

 

 

GKM
0 Kudos
Altera_Forum
Honored Contributor II
792 Views

Hi GKM. 

Ivy Tech pretty much follows what you said. My course is just a beginning course and so we probably will not get into algorithms or encryption. My goal is to learn about algorithms, DSP, digital modulation techniques such as would be used in Amateur radio.  

I wanted to say thanks again to everyone for the responses. I do understand that it takes a while to learn HDL and that I have to work at it. 

 

Rick
0 Kudos
Altera_Forum
Honored Contributor II
792 Views

Hi, 

...digital modulation techniques such as would be used in Amateur radio.  

 

Good. Have nice time. 

 

To be a good Amateur radio you may need Electronics, Antennas, Wave propagation etc.... 

 

GKM
0 Kudos
Reply