• Skip to main content
  • Skip to search
  • Skip to footer
Cadence Home
  • This search text may be transcribed, used, stored, or accessed by our third-party service providers per our Cookie Policy and Privacy Policy.

  1. Community Forums
  2. RF Design
  3. S-parameters from a RF Circuit - Circulator created from...

Stats

  • Locked Locked
  • Replies 10
  • Subscribers 63
  • Views 6393
  • Members are here 0
This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

S-parameters from a RF Circuit - Circulator created from LC resonators

EduardoGS
EduardoGS over 8 years ago

Hello everyone.

I am trying to simulate, for my undergraduate thesis, a new RF circulator that was published by Nature Physics on article called "Magnetic-free non-reciprocity and isolation based on parametrically modulated coupled-resonator loops".

My doubt is how to create a setup that understands one RF signal (sweep from 140MHz to 200Mhz) modulated by a signal with fixed frequency (15Mhz) and that has phase 120º  difference between each one. After this, my goal is to plot S parameters and see the transmission from  port 1 to ports 2 and 3. My curent setup use QPSS and QPSP, but the results are not good.

I have the article and I can send to you to read and understand better the problem if you wish.

Best regards.

  • Cancel
Parents
  • EduardoGS
    EduardoGS over 8 years ago

    Hi,

    I did the simulation QPSS and QPSP replacing the varactor for a capacitor. On article have an information that says when VDC = 3V, the varactor has a capacitance 30pF. Then the results were better, but its still not correct. I think it the varactor model is wrong, but the manufacturer offers only that spice model.

    • Input.scs:

    // Generated for: spectre
    // Generated on: Sep 27 09:57:10 2016
    // Design library name: TCC2
    // Design cell name: circulador_2_TB
    // Design view name: schematic
    simulator lang=spectre
    global 0
    parameters C1=300p C2=30p Cc=5.6p Cdcb=10u Fm=15M Frf=170M L1=270n L2=27n \
    Lc=1u Lrfc=2.7u phi=120 Vdc=3.00 Vm=0.6
    include "/usr/local/IC614/tsmc13/tsmc13rf/../models/tsmc13rf.scs"

    // Library name: TCC2
    // Cell name: circulador_2
    // View name: schematic
    subckt circulador_2 Porta1 Porta2 Porta3 Porta4 Porta5 Porta6
    L14 (net30 Porta6) inductor l=Lrfc
    L13 (net33 0) inductor l=L1
    L12 (net27 Porta3) inductor l=Lc
    L11 (net27 net32) inductor l=L2
    L10 (net36 net27) inductor l=L2
    L9 (net24 Porta5) inductor l=Lrfc
    L8 (net34 0) inductor l=L1
    L7 (net21 Porta2) inductor l=Lc
    L6 (net21 net35) inductor l=L2
    L5 (net38 net21) inductor l=L2
    L4 (net18 Porta4) inductor l=Lrfc
    L3 (net15 Porta1) inductor l=Lc
    L2 (net31 net15) inductor l=L2
    L1 (net15 net39) inductor l=L2
    L0 (net37 0) inductor l=L1
    C11 (net30 net31) capacitor c=C1
    C12 (net18 0) capacitor c=C2
    C10 (net30 net33) capacitor c=Cdcb
    C9 (net32 net30) capacitor c=C1
    C8 (net27 Porta3) capacitor c=Cc
    C7 (net24 net36) capacitor c=C1
    C13 (net24 0) capacitor c=C2
    C6 (net24 net34) capacitor c=Cdcb
    C5 (net35 net24) capacitor c=C1
    C4 (net21 Porta2) capacitor c=Cc
    C14 (net30 0) capacitor c=C2
    C3 (net15 Porta1) capacitor c=Cc
    C2 (net18 net37) capacitor c=Cdcb
    C1 (net18 net38) capacitor c=C1
    C0 (net39 net18) capacitor c=C1
    ends circulador_2
    // End of subcircuit definition.

    // Library name: TCC2
    // Cell name: circulador_2_TB
    // View name: schematic
    I0 (net2 net3 net4 net1 net1 net1) circulador_2
    V0 (net1 0) vsource dc=Vdc type=dc
    PORT1 (net3 0) port r=50 type=sine freq=Fm ampl=Vm sinephase=1*phi \
    freq2=Frf dbm2=0 sinephase2=0 fundname="Modulation" fundname2="RF"
    PORT2 (net4 0) port r=50 type=sine freq=Fm ampl=Vm sinephase=-1*phi \
    freq2=Frf dbm2=0 sinephase2=0 fundname="Modulation" fundname2="RF"
    PORT0 (net2 0) port r=50 type=sine freq=Fm ampl=Vm sinephase=0*phi \
    freq2=Frf dbm2=0 sinephase2=0 fundname="Modulation" fundname2="RF"
    simulatorOptions options reltol=1e-3 vabstol=1e-6 iabstol=1e-12 temp=27 \
    tnom=27 scalem=1.0 scale=1.0 gmin=1e-12 rforce=1 maxnotes=5 maxwarns=5 \
    digits=5 cols=80 pivrel=1e-3 sensfile="../psf/sens.output" \
    checklimitdest=psf
    qpss qpss flexbalance=yes oversample=[1 1] funds=["Modulation"
    + "RF"] maxharms=[3 3] errpreset=conservative annotate=status
    qpsp qpsp start=140M stop=300M portharmsvec=[0 0 0 0 0 0]
    + ports=[PORT0 PORT1 PORT2] annotate=status
    modelParameter info what=models where=rawfile
    element info what=inst where=rawfile
    outputParameter info what=output where=rawfile
    designParamVals info what=parameters where=rawfile
    primitives info what=primitives where=rawfile
    subckts info what=subckts where=rawfile
    saveOptions options save=allpub]

     

    • Results:

    At one frequency range, the S11 is lower than S21 and S31, but the device is behaving like a power divider (S21 = S31) and not like a circulator.

    Regards,

    Eduardo.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Reply
  • EduardoGS
    EduardoGS over 8 years ago

    Hi,

    I did the simulation QPSS and QPSP replacing the varactor for a capacitor. On article have an information that says when VDC = 3V, the varactor has a capacitance 30pF. Then the results were better, but its still not correct. I think it the varactor model is wrong, but the manufacturer offers only that spice model.

    • Input.scs:

    // Generated for: spectre
    // Generated on: Sep 27 09:57:10 2016
    // Design library name: TCC2
    // Design cell name: circulador_2_TB
    // Design view name: schematic
    simulator lang=spectre
    global 0
    parameters C1=300p C2=30p Cc=5.6p Cdcb=10u Fm=15M Frf=170M L1=270n L2=27n \
    Lc=1u Lrfc=2.7u phi=120 Vdc=3.00 Vm=0.6
    include "/usr/local/IC614/tsmc13/tsmc13rf/../models/tsmc13rf.scs"

    // Library name: TCC2
    // Cell name: circulador_2
    // View name: schematic
    subckt circulador_2 Porta1 Porta2 Porta3 Porta4 Porta5 Porta6
    L14 (net30 Porta6) inductor l=Lrfc
    L13 (net33 0) inductor l=L1
    L12 (net27 Porta3) inductor l=Lc
    L11 (net27 net32) inductor l=L2
    L10 (net36 net27) inductor l=L2
    L9 (net24 Porta5) inductor l=Lrfc
    L8 (net34 0) inductor l=L1
    L7 (net21 Porta2) inductor l=Lc
    L6 (net21 net35) inductor l=L2
    L5 (net38 net21) inductor l=L2
    L4 (net18 Porta4) inductor l=Lrfc
    L3 (net15 Porta1) inductor l=Lc
    L2 (net31 net15) inductor l=L2
    L1 (net15 net39) inductor l=L2
    L0 (net37 0) inductor l=L1
    C11 (net30 net31) capacitor c=C1
    C12 (net18 0) capacitor c=C2
    C10 (net30 net33) capacitor c=Cdcb
    C9 (net32 net30) capacitor c=C1
    C8 (net27 Porta3) capacitor c=Cc
    C7 (net24 net36) capacitor c=C1
    C13 (net24 0) capacitor c=C2
    C6 (net24 net34) capacitor c=Cdcb
    C5 (net35 net24) capacitor c=C1
    C4 (net21 Porta2) capacitor c=Cc
    C14 (net30 0) capacitor c=C2
    C3 (net15 Porta1) capacitor c=Cc
    C2 (net18 net37) capacitor c=Cdcb
    C1 (net18 net38) capacitor c=C1
    C0 (net39 net18) capacitor c=C1
    ends circulador_2
    // End of subcircuit definition.

    // Library name: TCC2
    // Cell name: circulador_2_TB
    // View name: schematic
    I0 (net2 net3 net4 net1 net1 net1) circulador_2
    V0 (net1 0) vsource dc=Vdc type=dc
    PORT1 (net3 0) port r=50 type=sine freq=Fm ampl=Vm sinephase=1*phi \
    freq2=Frf dbm2=0 sinephase2=0 fundname="Modulation" fundname2="RF"
    PORT2 (net4 0) port r=50 type=sine freq=Fm ampl=Vm sinephase=-1*phi \
    freq2=Frf dbm2=0 sinephase2=0 fundname="Modulation" fundname2="RF"
    PORT0 (net2 0) port r=50 type=sine freq=Fm ampl=Vm sinephase=0*phi \
    freq2=Frf dbm2=0 sinephase2=0 fundname="Modulation" fundname2="RF"
    simulatorOptions options reltol=1e-3 vabstol=1e-6 iabstol=1e-12 temp=27 \
    tnom=27 scalem=1.0 scale=1.0 gmin=1e-12 rforce=1 maxnotes=5 maxwarns=5 \
    digits=5 cols=80 pivrel=1e-3 sensfile="../psf/sens.output" \
    checklimitdest=psf
    qpss qpss flexbalance=yes oversample=[1 1] funds=["Modulation"
    + "RF"] maxharms=[3 3] errpreset=conservative annotate=status
    qpsp qpsp start=140M stop=300M portharmsvec=[0 0 0 0 0 0]
    + ports=[PORT0 PORT1 PORT2] annotate=status
    modelParameter info what=models where=rawfile
    element info what=inst where=rawfile
    outputParameter info what=output where=rawfile
    designParamVals info what=parameters where=rawfile
    primitives info what=primitives where=rawfile
    subckts info what=subckts where=rawfile
    saveOptions options save=allpub]

     

    • Results:

    At one frequency range, the S11 is lower than S21 and S31, but the device is behaving like a power divider (S21 = S31) and not like a circulator.

    Regards,

    Eduardo.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Children
No Data

Community Guidelines

The Cadence Design Communities support Cadence users and technologists interacting to exchange ideas, news, technical information, and best practices to solve problems and get the most from Cadence technology. The community is open to everyone, and to provide the most value, we require participants to follow our Community Guidelines that facilitate a quality exchange of ideas and information. By accessing, contributing, using or downloading any materials from the site, you agree to be bound by the full Community Guidelines.

© 2025 Cadence Design Systems, Inc. All Rights Reserved.

  • Terms of Use
  • Privacy
  • Cookie Policy
  • US Trademarks
  • Do Not Sell or Share My Personal Information