Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

It's really hard to go from NAND to Tetris, because there's a logical jump when you get to VLSI. This is the whole notion of quantity being a qualitative property: when you get enough gates together, you really start abstracting them and thinking about higher-order components. There's no smooth zoom out, there's just a sudden discontinuity when you stop using individual gates and start using MUXes, flip-flops, etc as your primitives instead. I suspect there's another layer, but I'm not there yet ;)

I think I may have benefited from going to a smaller school, in this respect: I've had the same professor for every core 'Computer Architecture' class I've taken across 3 years (apparently there's one other guy, but they teach the same content). The courses are numbered, and they pick up exactly where the last one left off. I think the problem with trying to fit this stuff into a CS program is that it's so broad and deep, and it's not your primary focus. For me all of those classes were tightly scheduled requirements, so I took them at the right time, back to back.

It's definitely cool, and I encourage anyone who works primarily in software to check it out and get a better understanding of hardware design in an abstract way.



I don't know what you mean about MUXes. It's just simple abstraction to say "yeah, take this pattern of gates and give it a symbol so we don't have to draw it over and over again in detail". You're still just wiring up combinational logic...

Flip-flops and sequential logic made my brain flip-flop itself for a while though when I first ran into it. :) That really does require a different sort of thinking, since you're introducing time as a factor.


I know a lot of people who didn't really move beyond thinking about boolean logic. It's easy to reason about the larger scale component if you're reading a diagram, but it gets harder to design with them at scale.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: