In reply to Gorka3:
The UVM is not synthesizable because it uses dynamically constructed classes,
It is possible to split portions of your UVM testbench into synthesizable pieces. But stimulus generation and functional coverage is not synthesizable.