Log in

No account? Create an account
Having a very " to make an apple pie from scratch first you must… - Notes from a Medium-Sized Island [entries|archive|friends|userinfo]

[ website | My Website ]
[ userinfo | livejournal userinfo ]
[ archive | journal archive ]

[Dec. 20th, 2015|07:06 pm]

Having a very "to make an apple pie from scratch first you must invent the universe" sort of day. Consider contemporary popular music; its beats are still recognizably, unmistakably influenced by synthesized drumbeats from old analog synths. E.g. you could make an entire movie about just the Roland TR-808. So I look up 808 schematics and see a couple of opamps at the heart of the bass drum signal-generation module. And after a while of puzzling over it the other day, I think I feel in my guts that the behavior of an ideal opamp is pretty simple and nice, so, come to think of it, how is your garden variety 741 implemented in transistors, anyway? Oof, that looks like a giant mess. Let me just try to understand a small piece of that. Like, what's a current mirror? How does it work? I get one modelled and working in a simulator, but still kind of don't understand how it works. Time to look at analog circuits 101; how do you model a BJT transistor? I only ever knew as far as "if base voltage is high, then current flows more or less freely from collector to emitter", not quantitatively what that means as you vary voltages bit by bit.

So... now I'm reading about how external electric fields affect semiconductor band gaps. Obviously.

From: eub
2015-12-21 09:52 am (UTC)
Op amps are a nice example of modularization in electronics. Their external interface is small and simple, but the implementation is hairy
(Reply) (Thread)
[User Picture]From: jcreed
2015-12-21 12:33 pm (UTC)

What seems odd to me is unlike in CS, where it seems super easy to find university-level coursework that's like "let's implement malloc", "let's implement a kernel", etc., things where you peer behind the abstraction boundary and think about how you'd design a commonly-used somewhat-hairy module, I don't so easily find (at least not via searching online) pedagogical walkthroughs of "let's pretend we're inventing the 741". I know probably nobody in the real world needs to literally do just that, but it seems like it'd be a great way to understand the principles at work. I don't have to reimplement malloc, or the linux kernel, or for that matter, like, quicksort, but it seems like it was useful to have gone through the exercise.
(Reply) (Parent) (Thread)
From: eub
2015-12-22 08:08 am (UTC)
I got "how do we design an op-amp" in an EE course (this was the capstone after starting the semester from semiconductor band gaps), but I have to admit I *didn't* get it. By the time we got to the op-amp, I could force my way through the problems like "Choose dimensions for the transistors in this op-amp to minimize total area", but then the final exam was "The operational transconductance amplifier is defined as: . Implement one with the following characteristics: ."

I remember the median on an exam was something like an 18 / 100, so it wasn't just me who didn't get it. Don't know for sure, but I think this may have been the professors first flight of his own material -- which would back up the idea that there's not good off-the-shelf pedogogy for this.
(Reply) (Parent) (Thread)