Continue to Site

Welcome to our site!

Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.

  • Welcome to our site! Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.

Vhdl

Status
Not open for further replies.

shermaine

New Member
If i am given a question , how should i start off planning doing the vhdl program?
Please advise if there is any useful links for reading off online for a vhdl starter?
 
Not a lot of people here have experiance with VHDL, you might want to look for a VHDL forum as it's really more along the lines of a programming language than something directly involving electronics. Many users have trouble with PIC code and VHDL puts that to shame many times over.
 
Sceadwian said:
Not a lot of people here have experiance with VHDL, you might want to look for a VHDL forum as it's really more along the lines of a programming language than something directly involving electronics. Many users have trouble with PIC code and VHDL puts that to shame many times over.

For a given function, dedicated hardware running will ALWAYS outperform PIC / software code (i.e. instructions in an MPU) - even assembler.

However, higher level languages are easier to write code for so that generally take less time and software debugging tools are a lot easier to use than for example FPGA debugging tools.

However, FPGA & ASICs have accurate simulation tools whereas higher level complilers like PIC etc.. have none (?) if they did, they could not be time-accurate.


Remember, VHDL describes hardware - that means logic gates & flipflops. The only level lower than that is at the transistor level.
 
Optikon said:
Remember, VHDL describes hardware - that means logic gates & flipflops. The only level lower than that is at the transistor level.

kind of. It provides a language slightly higher then assembler to realise boolean very easily, How it actually gets implemented is different. only very basic CPLD's actually get the VHDL synth downto a bitcode that describes actual logic layout (w.r.t. NAND/NOR grid). FPGA's are different and have micro-cells, you may code a up-down counter made out of flip-flops but what actually gets put down is some complex lookup table that clocks at a certain rate.
 
Optikon, Both PIC's and AVR's can have their code tweaked down to the clock rate of the chip, I can't speak for other architectures. There are caveats though where with an FPGA you just tell it what your timing is and it synthesizes around that. A good ASM programmer can do some really low level control of the timing on a micro controller. On a price per pound sort of scale micro controllers win, also for ease of implementation, especially to a novice micro controllers are significantly simpler.
 
Styx said:
kind of. It provides a language slightly higher then assembler to realise boolean very easily, How it actually gets implemented is different. only very basic CPLD's actually get the VHDL synth downto a bitcode that describes actual logic layout (w.r.t. NAND/NOR grid). FPGA's are different and have micro-cells, you may code a up-down counter made out of flip-flops but what actually gets put down is some complex lookup table that clocks at a certain rate.

Thats true but only a minor detail of the synthesis engine. At the end of the day, what is described is hardware.
 
Sceadwian said:
Optikon, Both PIC's and AVR's can have their code tweaked down to the clock rate of the chip, I can't speak for other architectures. There are caveats though where with an FPGA you just tell it what your timing is and it synthesizes around that. A good ASM programmer can do some really low level control of the timing on a micro controller. On a price per pound sort of scale micro controllers win, also for ease of implementation, especially to a novice micro controllers are significantly simpler.

Tweaked code to the clock rate doesnt guarantee timing. Think about the scenario of using an interrupt routine. By the very nature, the code gets "interrupted" so well,, that kind of delays the other tasks. There is no way for guaranteed time control. In an FPGA however, one can design functions os they truly run concurrently with other processes and timing control is back in the users hands.

I understand the situation gets better by coding ASM. I understand that micro's are cheaper (whats the point?) There are some jobs that just can't be done well with a micro. That being said, I love PIC & AVR - I'm not against them but I dont try and use one in every design I do (think Nigel! LOL). They have their place.
 
Out of curiosity, what specifically do you use FPGA's for Optikon? I've always been interested in them because they're basically the ultimate in flexibility. Been playing around with Xilinx free tools but don't have any plans to buy a board or write any real code anytime soon, as there's really nothing I want to do right now that I can't do with a micro controller.
 
Sceadwian said:
Out of curiosity, what specifically do you use FPGA's for Optikon? I've always been interested in them because they're basically the ultimate in flexibility. Been playing around with Xilinx free tools but don't have any plans to buy a board or write any real code anytime soon, as there's really nothing I want to do right now that I can't do with a micro controller.

I've used FPGA's for direct digital synthesis (DDS), PCI bus interfaces, digital feeback loops for high speed analog circuits and many more.. in each case, timing uncertainty in a microprocessor (let alone an MC) was not up to the task.

I have also used Xilinx Spartan 3's with the microblaze microcontroller I.P. dropped in them - this gets you the best of both worlds.

I have also done analog circuit designs that require simple state machines and communications interfaces to run them. I have found those applications to be perfectly suitable for microcontrollers.
 
Status
Not open for further replies.

Latest threads

New Articles From Microcontroller Tips

Back
Top