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](https://raw.githubusercontent.com/GalaxyGroot/imag4typora/main/2022/1225_21_12_20.png)
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](https://raw.githubusercontent.com/GalaxyGroot/imag4typora/main/2022/1225_21_21_05.png)
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**](https://www.ti.com.cn/cn/lit/ml/snaa106c/snaa106c.pdf), 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:
Calibre Tool Integrated into Cadence Menu
Some engineers get used to use Calibre to do DRC/LVS/PEX. In order to use the Calibre tools, the integration process is necessary in Cadence ".cdsinit" file.
Please put the following codes in the end of ".cdsinit" file, which is located in the Cadence design project folder.
> Open a terminal in Unix to " echo $MGC_HOME " to check the Calibre installation directory is correct.
```
;; ---------------------------------------------------------------
;; Calibre setup
;; Load Calibre Skill Interface if environment var is set
mgc_home=getShellEnvVar("MGC_HOME")
if( mgc_home!=nil && isDir(mgc_home) && isReadable(mgc_home) then
; Load calibre.skl for Cadence versions 4.4 and greater
load(strcat(mgc_home "/shared/pkgs/icv/tools/queryskl/calibre.skl"))
else
; MGC_HOME is not set
printf("Calibre Skill Interface not loaded.\n")
)
;; End of Calibre Skill Interface
;; --------------------------------------------------------------
```
Cadence Stream to import or export GDS file
GDS file is the standard database file format. It is a binary file representing planar geometric shapes, text labels, and other information about the layout in hierarchical form. The GDS data can be used to reconstruct all or part of the artwork to be used in sharing layouts, transferring artwork between different tools, or creating photo masks.
## Import GDS file
Steps to import a file:
* CIS -> FILE -> Import -> stream
* In the Stream In window
* locate the input gds file
* target library name
* if you have a layer map file, please click "User-Defined Data" and select the correct layer map files for "Layer Map Table"
* Once it's done, refresh the library manager
![image-20221215221416066](https://raw.githubusercontent.com/GalaxyGroot/imag4typora/main/2022/1215_22_14_16.png)
## Export GDS file
Steps to export a file:
* CIS -> FILE -> Export-> stream
* In the Stream out window
* select the target library name, Top cell name, view name
* type the output gds filename
* select the correct technology library
* if you have a layer map file, please click "User-Defined Data" and select the correct layer map files for "Layer Map Table"
![image-20221215221953185](https://raw.githubusercontent.com/GalaxyGroot/imag4typora/main/2022/1215_22_19_53.png)
## Scale/Shrink Layout and Generate GDS file
In some projects with specific PDKs, the GDS needs to be exported with scale factor, which means all metals will be shrunk by the scale factor.
The best method is to export the GDS of the Top layout. Then, import the GDS with the correct scale factor. In the end, export the second scaled layout as the final target GDS file.
![image-20221215221517406](https://raw.githubusercontent.com/GalaxyGroot/imag4typora/main/2022/1215_22_15_30.png)
Subscribe to:
Posts (Atom)
-
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...
-
## What is the cycle slip? PLL feedback clock normally will be increased or decreased the frequency to catch up with the reference clock....
-
Same PDK to confirm the cppsim tool can be used for fast simulation in gmoverid verification. - cadence used PDK spectre model with spectre...