FHDL supports the following types of functional blocks.
mux multiplexors
demux demultiplexors
decoder decoders
encoder encoders
comparator comparators
adder adders
ram RAM (Random Access Memory)
register registers of various types
counter counters of various types
alu Arithmetic logic units with selectable functions.