Week | Book | Monday | Book | Friday |
---|---|---|---|---|
34 | Introduction, what are we going to do in this course. Why do you need it? | WH 1 , WH 15 | Manufacturing of integrated circuits | |
35 | CJM 1.1 | pn Junctions | CJM 1.2 WH 1.3, 2.1-2.4 | Mosfet transistors |
36 | CJM 1.2 WH 1.3, 2.1-2.4 | Mosfet transistors | CJM 1.3 - 1.6 | Modeling and passive devices |
37 | Guest Lecture - Sony | CJM 3.1, 3.5, 3.6 | Current mirrors | |
38 | CJM 3.2, 3.3,3.4 3.7 | Amplifiers | CJM, CJM 2 WH 1.5 | SPICE simulation and layout |
39 | Verilog | Verilog | ||
40 | WH 1.4 WH 2.5 | CMOS Logic | WH 3 | Speed |
41 | WH 4 | Power | WH 5 | Wires |
42 | WH 6 | Scaling Reliability and Variability | WH 8 | Gates |
43 | WH 9 | Sequencing | WH 10 | Datapaths - Adders |
44 | WH 10 | Datapaths - Multipliers, Counters | WH 11 | Memories |
45 | WH 12 | Packaging | WH 14 | Test |
46 | Guest lecture - Nordic Semiconductor | |||
47 | CJM | Recap of CJM | WH | Recap of WH |
Date | Week | Topic |
---|---|---|
2021-09-10 | 36 | PN Junctions |
2021-09-24 | 38 | Transistors |
2021-10-08 | 40 | Current Mirrors and Amplifiers |
2021-10-22 | 42 | CMOS logic |
2021-11-05 | 44 | Logic circuits |
2021-11-19 | 46 | Maze |
Be inspired by the paper, and design a similar system.
Design analog circuits in SPICE and digital circuits in SystemVerilog.
project/
├── spice/
│ ├── Makefile # See https://www.gnu.org/software/make/manual/html_node/Introduction.html
│ ├── pixelSensor.cir # Empty circuit for pixelSensor
│ └── pixelSensor_tb.cir # SPICE testbench for pixelSensor, emulates verilog
└── verilog/
├── Makefile
├── pixelSensor.fl # Verilog file list
├── pixelSensor_tb.gtkw # Save file for GTKWave
├── pixelSensor_tb.v # Verilog testbench for pixelSensor
└── pixelSensor.v # Verilog model of analog pixelSensor circuit
Week | Plan |
---|---|
34 | Register group |
35 | Read and understand paper |
36 | Sketch what you want to do |
37 | Write theory chapter in report |
38 | Design & simulation |
39 | Design & simulation |
40 | Design & simulation |
41 | Design & simulation |
42 | Verification |
43 | Verification |
44 | Write report |
45 | Write report |
46 | Deadline |
You may use what ever you want, but exercises and project have been developed using AIM-Spice, ngspice, iverilog, and GKTwave on Ubuntu linux 20.10
SPICE - AIM-Spice aimspice.com (Used for exercises) - NGSpice ngspice , version 34 (Recommended for project)
SystemVerilog - iverilog Icarus Verilog, version v11_0 - gtkwave GTKWave, version 3.3.104 - ( yosys Yosys, version 0.9 )
The software can be installed on Windows, Mac, and Linux
Pros | Cons |
---|---|
Once it’s running, then it’s easy | Take time to install |
Compile from source | |
No support from us on installing |
Pros | Cons |
---|---|
I’ve tested with login.ansatt.ntnu.no | GUI windows require a bit of work |
Similar to real world (desktop + server) | Online |
ssh to login.stud.ntnu.no, run
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/wulffern/dicex/main/ubuntu_install.sh)"
Connect to login from a mac/linux so you get GUI also
Run Ubuntu linux on your PC via docker and use a VNC client to connect
Pros | Cons |
---|---|
If it works, it’s easy | Complex, so maybe there are issues |
I’ve tested it | Large ( > 3 GB) |
Offline (not for first run though) |
Design of Integrated Circuits exercises (dicex) are the testbenches and model files you’ll need https://github.com/wulffern/dicex
Custom IC Creator Electronic Design Automation (ciceda) is a docker image of a ubuntu linux with the necessary tools installed https://github.com/wulffern/ciceda
1947: First transistor. Invented by Brattain, Bardeen and Shockley, Bell labs
1961: First Monolithic Silicon IC Chip. Invented by Robert Noyce, Fairchild
https://www.statista.com/statistics/802632/world-semiconductor-shipments/
https://cerebras.net/chip/
nRF51, nRF52, nRF53 series devices from Nordic Semiconductor are all the same type of tool.
Find a problem that you really want to solve, and learn a programming language to solve it. There is absolutely no point in saying “I want to learn programming”, then sitting down with a book to read about programming, and expect that you will learn programming that way. It will not happen. The only way to learn programming is to program, a lot. – Carsten Wulff
If none of the above works, we’ll use first few minutes in each lectures for questions on the previous content (but not future content).
There are approx 130 students. Email, teams, f2f does not scale.