effective channel length in hspice

Discussion in 'The Projects Forum' started by lili94, Nov 6, 2015.

  1. lili94

    Thread Starter New Member

    Nov 6, 2015
    I have a basic question. I want to simulate a 14 stages ring oscillator under all possible values of effective channel length (from 35nm to 55nm) and temperature(from 20 C to 150 C) via Hspice, with the 45nm high-performance predictive technology model. But I don't know how simulate with different effective channel length and temperature! Please help me. This is the what I write with 90nm, but it doesn't work:

    *CMOS Ring Oscillator

    .include 'e:\PTM90.txt'

    V1 vdd 0 5V
    V2 vss 0 0V

    .PARAM Le=90nm
    .PARAM Wi=180nm

    .subckt inv Vout Vin Vdd Vss
    * D G S SS Model W L *
    M1 Vout Vin Vdd Vdd PMOS W=Le L=2Wi
    M2 Vout Vin Vss Vss NMOS W=Le L=2Wi
    CL1 Vout Vss .1pF
    .ends INV

    *14 stage ring
    x1 2 1 vdd vss inv
    x2 3 2 vdd vss inv
    x3 4 3 vdd vss inv
    x4 5 4 vdd vss inv
    x5 6 5 vdd vss inv
    x6 7 6 vdd vss inv
    x7 8 7 vdd vss inv
    x8 9 8 vdd vss inv
    x9 10 9 vdd vss inv
    x10 11 10 vdd vss inv
    x11 12 11 vdd vss inv
    x12 13 12 vdd vss inv
    x13 14 13 vdd vss inv
    x14 1 14 vdd vss inv

    .MODEL nch NMOS
    .MODEL pch PMOS

    .tran 10ps 64us
  2. eetech00

    Senior Member

    Jun 8, 2013
    If HSpice supports a ".step" function, you could step through the value.

    * step Le value from 35n to 55n in 1n increments
    .step param Le 35e-9 55e-9 1e-9
  3. lili94

    Thread Starter New Member

    Nov 6, 2015

    Thanks eetech00, but my main code for 14 stages ring oscillator doesn't work, I mean without multiple length. Just the main code.
  4. eetech00

    Senior Member

    Jun 8, 2013
    Sometimes you have to "kick start" oscillation.
    Try setting the initial value at the input node of the first inverter to "0" volts.

    I think that is node "1".

    .IC V(1)=0