In reply to mpettigr:
In SystemVerilog, there are only two benefits when declaring classes using method prototypes and then out-of-block implementations:
- Documentation - it’s easier to read a class declaration in a more compact form when the implementations are set aside.
- Encryption - it would be easier to expose the method prototypes this way.
Because of the way compilation works in SystemVerilog, there is no benefit in splitting the class into two files because you cannot incrementally compile a a portion of a single scope. In fact, you will get worse overall performance because of the extra system calls to open more files.