Hardware Descriptive Languages (HDLs)

FPGA, Xilinx, Arty A7, HDL, Verilog, VHDL, VHSIC HDL


HDLs. They might seem a daunting prospect at first look, but, once mastered, they are powerful tools for Hardware Design.


A Hardware Descriptive Language, is a special kind of programming language used to describe the functioning of a hardware design. They can be used to describe everything from simple embedded system designs, to complete x64 CPU designs.


While a normal, software programming language essentially contains a list of instructions that a computer has to carry out, a HDL works by describing an algorithm that a piece of hardware has to be able to carry out. A clever compiler then 'translates' this into an actual combination of logic gates which can carry out the algorithm.


HDLs can be used to program FPGAs (post coming soon on them, and how they work), as well as ASIC solutions (permanent hardware set ups, like CPUs and SoCs). Let's find out a little more about them then shall we? 




The options:

There are a few different options of HDL. The two most well used are Verilog (and System Verilog), and VHDL, but there are a few other alternatives, such as Chisel.



System Verilog , HDL


- (System) Verilog:

System Verilog is my personal favourite HDL, due to the less rigid coding structure than that if VHDL. 


Verilog was introduced in 1984, and made an IEEE 1364 standard in 2005. In 2009, the System Verilog standard was combined with the Verilog standard to to make the IEEE standard 1800 - 2009. System Verilog has extensive facilities that can be used to perform system verification, as well as the hardware design capabilities presented in Verilog, producing an incredibly useful HDL.


Verilog was designed with a reminiscence to the C programming language, and includes similar operator precedence and some of the same control flow words.




- VHDL (VHSIC HDL):

VHDL, short for VHSIC Hardware Descriptive Language, where VHSIC stands for 'Very High-Speed Integrated Circuit'. Nicely sums up the uses of an HDL there: a programming language used to design the hardware of a high speed logic circuit, like a CPU or embedded system solution.


VHDL began development in 1983, under the guidance of the US Department of Defence. The language has a similar syntax to the older Ada programming language, and, likewise, is usually quite rigidly structured.




Conclusion

Although both are highly capable, useful languages, as mentioned earlier, I prefer the freer Verilog language.


I hope to release some more posts covering the Verilog language in more depth, and exploring some more complex projects, like a simple, 16-Bit CPU, so stay tuned, and goodbye for now! 

Comments

Popular posts from this blog

What is a CPU Architecture?

Everything you need to know about buying a laptop!

New Budget Ryzen 5000 and 4000 CPUs!