//VerilogA for modulator,idealfm,veriloga `include "constants.vams" `include "disciplines.vams" module idealfm(Ipow,Iphase,Ilam,Opow,Ophase,Olam,Vdata); parameter real df = 10e9 from (-inf:inf); input Ipow,Iphase,Ilam,Vdata; output Opow,Ophase,Olam; electrical Ipow,Iphase,Ilam,Opow,Ophase,Olam,Vdata; real f,dlam; analog begin f = (V(Vdata)-0.5)*df; dlam = `P_C/f; V(Opow) <+ V(Ipow); V(Ophase) <+ V(Iphase); V(Olam) <+ V(Ilam) + dlam; end endmodule