Friday, September 14, 2012

Hardware Description Languages (HDL)

There is one main difference between hardware description languages and typical programming languages such as C, Java or others. In typical programming languages, all processes are modeled in sequential order. The order of instructions (processes) matters. Such sequential order algorithms are easy understandable, because they can be expressed as simple step-by-step process. HDL languages are created to work directly with hardware. They are able to describe connections between different hardware components, concurrent operations, propagation delay and timing. These features cannot be described by traditional programming languages.

HDL has several roles in the design process. It works as formal documentation tool, input to a simulator and input to a synthesizer. There are few fundamental characteristics of a digital circuits that are used in HDLs. Typical HDL is possible to model a real behavior of a real circuit. Four basic concepts can be modeled using HDL. Entity is a basic building block of a real circuit. The concept of connectivity models the connections among the circuit components. These connections are connection wires. Concurrency is responsible for modeling parallel operations. Parallel operations are carried out by interconnected components. The concept of timing process models the starting and ending of each operation. Also, the order of operations can be described.

There are 3 basic HDL languages: VHDL, Verilog and SystemC. The most popular are VHDL and Verilog. These two languages are both industry standards. They have completely different syntax, but their capabilities are the same. In many cases, I will speak about VHDL, because I am learning this language at the moment.

No comments:

Post a Comment