Code Coverage Checks How your testBench covers the Statments,Expressions,
Conditions, Branches, Toggle Nodes in your Design Under Test.
Different TestBenches can target Different Statments in the Design Unit
Functional Coverage From its name it checks the Functionality of your Design unit. PSL & SV are used for Functional Coverage ..... They provide Assertions and Covergroups for that.