HDL templates