Same PDK models to check gmoverid simulation in different tools (Cadence vs Cppsim)

Same PDK to confirm the cppsim tool can be used for fast simulation in gmoverid verification.

  • cadence used PDK spectre model with spectre simulator
  • cppsim used PDK hspice model with ngspice simulator

simulation using cppsim+octave fT vs gm/id, Id/w vs gm/id, gain s gm/id

simulation in cadence

conclusion

cppsim+octave can be used successfully and the simulation results matched to cadence simulation.


If anyone like to try the code, please email me (asic@asicedu.com).

for opening the bigger images, please either drag the image to the browser search link or view the pagesource of the post and click the image github link.

PLL Basic Topics - Cycle Slip

What is the cycle slip?

PLL feedback clock normally will be increased or decreased the frequency to catch up with the reference clock.

But when the feedback divider changed abruptly, it causes the one period of the feedback clock has two cycles of reference clock or one period of the reference clock has two cycles of feedback clock. The PFD output neglects one rising edge of reference clock or feedback clock. This is called cycle slip.

image-20221225211220769

The slower frequency divider the frequency difference is the time of the first cycle slip. The difference is larger, the short time the cycle slip happens

Why does it happen?

The above figure shows that one rising edge of reference clock is neglected by the PFD.

What is the result? Is it bad for the PLL?

The PFD can recover, though, the cycle slip increase the lock time.

How to determine the time of the first cycle slip?

Assume the reference clock is fR, and divider frequency is fN.

If these two frequencies are different, the cycle slip will happen:

image-20221225212105332

The slower frequency divided by the frequency difference is the time of the first cycle slip. The difference is larger, the short time the cycle slip happens

Reference:

  1. Banerjee, Dean. PLL Performance Simulation and Design Handbook, Fifth Edition, 2017. PDF

Learning Common Emacs Commands

This following list summarized some common used Emacs commands:

  1. open file/close file

    • C-x C-w: save as to a new file
    • C-x C-s: save current file
  2. copy and paste

    • M-w: copy
    • C-y: paste
  3. split window

    • C-l C-l --> C-x 2 --> C-x o to switch different window
    • C-x 1: close other windows to keep only one
    • M-x make-frame or M-x delete-frame: open or delete a new emacs window of a file
    • C-x 3: side by side splitting window
  4. delete content and paragraphs

    • C-d: delete the next character after the cursor
    • M-d: delete next word
    • C-k: delete to the end of line
    • M-k: kill to the end of the current sentence
  5. move to different location

    • C-f or C-b: move forward and backward by a character
    • M-f or M-b: move forward and backward by a word
    • C-n or C-p: move to next or previous line
    • C-a or C-e: move to the beginning or end of the line
    • M-a or M-e: move to the beginning or end of the sentence
    • M-< or M->: move the beginning or end of the file
    • M-g g #: go to specific line #
  6. type the same words for multiple lines

    Add text

    • Start rectangle mode

      C-x SPACE

    • Move cursor to the previous (p) or next (n) line

      C-p / C-n

    • Target rectangle area

      C-x r t

    • Type text followed by RET to have text in selected lines

    Remove text

    • Start rectangle mode

      C-x SPACE

    • Move cursor to the previous (p) or next (n) line

      C-p / C-n

    • Move cursor forward (f) or backward (b) by character (C) or line (M).

      M-f / M-b

    • To remove text:

      BACKSPACE

  7. search

    • C-s: search forward
    • C-r: search backward
    • keep typing the ctrl-s or ctrl-r to move the cursor. Press enter to end the search
  8. move the cursor location

    • C-u 8 C-f: move forward by 8 characters
  9. create new file

    • C-x C-f: new file
  10. undo and redo

    • C-x u or C-_: undo
  11. select all

    • C-x h
  12. exit commands

    • Esc-Esc-Esc: 3 times Esc to exit commands
  13. quit emacs

    • C-x C-c: quit
  14. Help

    • C-H ?: display the help manual of emacs
  15. Mark a selection area

    • C-space, C-@: to mark the beginning and end of selection. You can cut the selection area by C-w
  16. replace with search

    • Alt+Shift+5: start the process of replace command

    • two queries will pop up: one to ask for the word to be replaced and the other for word to replace with

    • after that, the third query to ask you to type one of the following commands:

image-20230131131555560