Rowan-Classes/7th-Semester-Fall-2024/VLSI/labs/lab-3/lab-3.md
2024-11-10 14:46:30 -05:00

71 lines
1.4 KiB
Markdown

# Lab 3 Notes
## Calculating Rise Time, Fall Time, and Delay
### Using the Calculator
`rise20 = cross(VT("/out") 0.2 1 "rising" nil nil nil )`
`rise80 = cross(VT("/out") 0.8 1 "rising" nil nil nil )`
`t_rise = rise80-rise20`
$t_r = 12.33$[ps]
`fall80 = cross(VT("/out") 0.8 1 "falling" nil nil nil )`
`fall20 = cross(VT("/out") 0.2 1 "falling" nil nil nil )`
`t_fall = fall20-fall80`
$t_f = 11.98$[ps]
`pdf = delayMeasure(VT("/in") VT("/out") ?edge1 "rising" ?value1 0.5 ?edge2 "falling" ?value2 0.5 )`
$t_{pdf} = 21.45$[ps]
`pdr = delayMeasure(VT("/in") VT("/out") ?edge1 "falling" ?value1 0.5 ?edge2 "rising" ?value2 0.5 )`
$t_{pdr} = 22.69$[ps]
`tpd = (pdf+pdr)/2`
$t_{pd} = 22.07$[ps]
### Using the Graph
$t_{pdr} = 1.172692$[ns] $- 1.15$[ns]
$t_{pdf} = 71.44874$[ps] $- 50.0$[ps]
$t_r = 1.178133$[ns] $- 1.165857$[ns]
$t_f = 76.5474$[ps] $- 64.7758$[ps]
## Ring Oscillator
### Calculating Frequency
`rise1 = cross(VT("/v1") 0.5 1 "rising" nil nil nil )`
`rise2 = cross(VT("/v1") 0.5 2 "rising" nil nil nil )`
`T0 = rise2 - rise1`
`f0 = 1/T0`
$T_0 = 212.7$[ps]
$f_0 = 4.702$[GHz]
$$f = \frac{1}{2tn}$$
Where $t$ is the delay of a single inverter, and $n$ is the number of inverters.
`fall2 = cross(VT("/v2") 0.5 1 "falling" nil nil nil )`
`t = fall2 - rise1`
$t = 14.14$[ps]
$n = 11$
$f_0 = \frac{1}{2(14.14\times10^{-12})(11)} = 4.878$[GHz]