Table of Contents

  1. Preamble
  2. Syllabus
    1. Grading
    2. Textbooks
  3. Important Dates & Deadlines
  4. Lecture Notes
    1. Pre-Lecture Notes
    2. W02 January 06-12
      1. Monday Lecture + Tutorial
      2. Thursday Lecture
    3. W03 January 13-19
      1. Monday 1130h - Lecture in SITE G0103
      2. Monday 1430h - Tutorial in Desmarais 1160
      3. Thursday 1300h - Lecture in SITE G0103
      4. Friday 1730h - Laboratory in CBY B302
    4. W04 January 20-26
      1. Monday 1130h - Lecture in SITE G0103
      2. Monday 1430h - Tutorial in Desmarais 1160
      3. Thursday 1300h - Lecture in SITE G0103
      4. Friday 1730h - Laboratory in CBY B302
    5. W05 January 27 - February 02
      1. Monday 1130h - Lecture in SITE G0103
      2. Monday 1430h - Tutorial in Desmarais 1160
      3. Thursday 1300h - Lecture in SITE G0103
      4. Friday 1730h - Laboratory in CBY B302
    6. W06 February 03-09
      1. Monday 1130h - Lecture in SITE G0103
      2. Monday 1430h - Tutorial in Desmarais 1160
      3. Thursday 1300h - Lecture in SITE G0103
      4. Friday 1730h - Laboratory in CBY B302
    7. W07 February 10-16
    8. W08 February 17-23
  5. Side Effects
    1. Program to Generate Lecture Sections
    2. MathJax is Awesome.
  6. References


Preamble

I took ELG2136: Analog Electronics I during Winter 2019. The notes below reflect my learning over the duration of the course. Each section anchor is hyperlinked in the table of contents above. References and footnotes are present1 and can be found at the end of the document.


Syllabus

Analog Electronics I teaches the fundamentals of Diodes, BJTs, FETs, Semiconductors and CMOS. ELG2138 is the only prerequisite, which itself has three prerequisites. Section A is being taught by Emad Gad (egad@uottawa.ca).

Grading

The mess of bold percentages and if/elses on the syllabus is better expressed as a program:

float weightedGrade = max(
    ((midterm*.25) + (finalexam*.45)),
    (finalexam*.70)
    );

if( weightedGrade > 0.35 ) {
    float final_grade = (labs*.15) + (quizzes*.15) + weightedGrade;
} else {
    fail(); // D, E, F.
}

Textbooks

The primary text for this course is Fundamentals of Microelectronics.

Title: Fundamentals of Microelectronics
Author: Behzad Razavi
Edition: First
ISBN: ISBN-13978-0-471-47846-1

The secondary, optional text for this course is Microelectronic Circuits.

Title: Microelectronic Circuits
Author: Sedra, A.H. & Smith, K.C.
Edition: Fifth


Important Dates & Deadlines

Date Event
2019-01-14 Assignment 1 due
2019-01-21 Assignment 2 due
2019-01-25 Assignment 3 due
2019-02-03 Assignment 4 due
2019-02-07 Assignment 5 due
2019-02-09 Midterm exam


Lecture Notes

Winter 2019 lectures run from January 7th to April 5th; the second week of the year through to the end of week fourteen. Lecture notes are labeled according to week, then by day/lecture. My schedule for this class/year is as follows:

Monday   1130h - Lecture in SITE G0103
Monday   1430h - Tutorial in Desmarais 1160
Thursday 1300h - Lecture in SITE G0103 
Friday   1730h - Laboratory in CBY B302

Pre-Lecture Notes

I have taken a good deal of time to set up this page; hopefully I use it to keep track of the course material over the winter semester. Each week entry should be filled with the material that will be covered in the coming week, to review on the weekend-of. Each event entry should contain a summary of the learning and notes.

MathJax has been included for the presentation of formulae and mathematics, tutorial here.

It can be written inline, like so: - pretty neat. The primary means of inclusion will probably be in a block, to present formulae:

W02 January 06-12

Monday Lecture + Tutorial

Topics covered today include Ideal Diodes and Real PN-Junction diodes. Emad Gad provided some insight that may help me through all of my Engineeering courses, not just Elecronics:

Beyond this is for the Physicists.

It is our job to use these findings, and imagine what we can build by applying it.

Hilarious, but true - It would be best for me to stop worrying about the details, and look at problems in a procedural manner in order to survive the rest of my Engineering degree.

Ideal Diodes behave according to the voltage present at the anode and cathode. If the voltage across the component is positive, it acts as a short circuit. If the voltage is negative, it behaves as if open. When using an ideal diode in a circuit, there are two steps to the calculation:

  1. Assume on/off state for each diode, and write the circuit.
  2. Solve for the circuit and verify that:
    • Where OFF was assumed, V is negative.
    • Where ON was assumed, i is positive.

PN Junction Diodes are real components, and it follows that they do not behave ideally. When voltage is applied to a PN-Junction Diode, it follows a curve that looks somewhat exponential. Below a certain voltage, the component will break down and current will be allowed to flow. The equation for calculating the current through a PN Junction Diode is:

  • is the Saturation Current.
  • is the Thermal Voltage. Discussed below.
  • is the Ideality Factor. Assume 1.

Thermal Voltage is equal to Boltzmann’s constant, multipllied by the temp in kelvins, divided by the magnitude of electronic charge.

Next lecture will probably be on the analysis of diode circuits.

Thursday Lecture

Missed this lecture due to CUSEC. More diode problems were done in class.

Online simulator https://www.circuitlab.com/editor/ has proven very useful for double-checking my work.

W03 January 13-19

Monday 1130h - Lecture in SITE G0103

Solving equations with real diodes. Replace each ideal diode with a real equivalent (typically a voltage source pointing in the opposite direction, along with a resistor,) and solve as you would for an ideal diode.

  • Plotting the relationship between variable and .
  • Circuits now involve VCVS, CCVS, VCCS, CCCS.

Monday 1430h - Tutorial in Desmarais 1160

Practice problems involving real-equivalent diodes.

Thursday 1300h - Lecture in SITE G0103

Practice problems involving real-equivalent diodes.

Friday 1730h - Laboratory in CBY B302

Lab One involved setting up a simple large & small-signal diode circuit, followed by an analysis of the voltage across the diode with a varied current.

W04 January 20-26

Monday 1130h - Lecture in SITE G0103

Monday 1430h - Tutorial in Desmarais 1160

Thursday 1300h - Lecture in SITE G0103

Friday 1730h - Laboratory in CBY B302

W05 January 27 - February 02

Monday 1130h - Lecture in SITE G0103

Monday 1430h - Tutorial in Desmarais 1160

Thursday 1300h - Lecture in SITE G0103

Friday 1730h - Laboratory in CBY B302

W06 February 03-09

Monday 1130h - Lecture in SITE G0103

Monday 1430h - Tutorial in Desmarais 1160

Thursday 1300h - Lecture in SITE G0103

Friday 1730h - Laboratory in CBY B302

Midterm on February 9th. Grade 73/100. Lower than I wanted. Will need to study hard and do well on the assignments to make up on the final exam.

W07 February 10-16

W08 February 17-23

Reading week.


Side Effects

Program to Generate Lecture Sections

Being far too lazy to do the manual labor, I wrote this quickly to generate the week-based lecture-note entries in the Pre-Lecture Notes section.

#!/usr/bin/python3

import datetime
date_st = datetime.datetime.strptime
date_fo = datetime.date.fromordinal

import rcf_logs as rcf
dbg = rcf.dbg
rcf.intro("Simple .md date-heading generator", 2018)

# Assumes week 1-52.
year      = 2018
firstweek = 2 
lastweek  = 14 

dbg(True,"good","init","Modules loaded. Operating on weeks {}-{}, {}".format(firstweek,lastweek,year))
dbg(True,"good","gen","Markdown output:\n\n")

for x in range(firstweek, lastweek+1):

    daterange = ""
    start = date_st("{}-W{}-6".format(year,x-1), "%Y-W%W-%w")
    end = date_st("{}-W{}-5".format(year,x), "%Y-W%W-%w")

    if(start.strftime("%m") != end.strftime("%m")):
        daterange = "{}{}".format(start.strftime("%B %d - "),end.strftime("%B %d"))
    else:
        daterange = "{}{}".format(start.strftime("%B %d-"),end.strftime("%d"))
    
    str_x = str(x).zfill(2)
    print("## **W{}** {}".format(str_x, daterange))

MathJax is Awesome.

MathJax has been included for the presentation of formulae and mathematics, tutorial here. In the preamble, MathJax is used to present mathematics inline, and in a block. The markup:

It can be written inline, like so: $$ A \times B = C $$ 
- pretty neat. The primary means of inclusion will probably 
be in a block, to present formulae: 

$$
    v_{O} = IR = \left( \frac{R}{ R + r_{D}} \right) (v_{s} + V_{DO}) 
$$


References

  1. Footnotes are used by placing [^ref] where a superscript number should be placed, and [^ref]: explanation can be used in-place or at the end of the document. All referenced footnotes will be collected and placed at the end of the document. More info.