IANAL, but I don't think that a contract can force you to give a particular amount of notice no matter what (I think that would be considered "unconscionable"). But I imagine a contract could specify that if you don't give a certain amount of notice, you won't get severance or similar.
Severance is “bribe” money: it is dangled to people being laid off in return for them signing a paper stating that they give up all rights to sue the company.
Severance is never paid unless you sign away your rights.
There is no contractual requirement for severance.