It probably depends on what you mean by large-signal s-parameters. Large-signal s-parameters is really an oxymoron, since s-parameters are implicitly small signal.
I'm assuming you mean measuring s-parameters under some large signal bias condition? Well of course, that can be done in SpectreRF - set up whatever large signal bias condition (for example, temperature, supply, presence of blockers, with input in compression, etc, etc) you want, and then run psp.
My understanding from most people who ask for this is that they want to write out a single s-parameter file with information in it indicating the large signal condition followed by the s-parameters themselves - and possibly several conditions (found during a sweep).
There's no direct way of generating this file at the moment, (there's an enhancement request in for this though), but it can be done using OCEAN - writing a script which does some kind of loop over various conditions and writes all this into a file.
Here's an example of doing this with an ordinary "sp"
analysis in OCEAN:
Code:simulator( 'spectre )
;design("/user/andrewb/simulation/testsp/spectre/schematic/netlist/netlist")
design("test" "testsp" "schematic")
analysis('sp ?start "10" ?stop "1G" ?log "10"
?file "sparam.file" ?datafmt "touchstone" ?datatype "realimag"
)
results=resultsDir()
outputFile="./sp.file"
outputPort=outfile(outputFile)
foreach(temperature '(-40 27 125)
temp(temperature)
run()
fprintf(outputPort "VAR temp = %d\n" temperature)
spPort=infile(strcat(results "/netlist/sparam.file"))
when(spPort
while(gets(line spPort)
fprintf(outputPort "%s" line)
)
close(spPort)
) ; when
) ; foreach
close(outputPort)
Regards,
Andrew.