It would be difficult to learn on your own as explained in the article: you need a lot of specialized equipment, a high class of clean room, and a lot of very dangerous chemicals. (My brother once described what the hydrofluoric acid he used semi-regularly does to person and completely horrified our parents).
Downside of this field is that there are very few job opportunities without relocating. If you're in the US, you can work at Intel... or Intel. Unless you're willing to move to Taiwan and work at TSMC.
It's been a while, but I remember the biggest danger isn't the acidity itself, not even being a strong acid, but fluorine's tendency to "deep dive". It just sort of slowly eats into things and creates layers that are comparatively hard to remove. So if you spill hydrochloric acid or whatever on yourself, you wash it off, maybe get some severe tissue damage, but it's localized and washes off.
On the other hand, the HF tends to stick around, and as a fun side-effect, the fluoride salts it creates are poisonous to the body. And HF is tame compared to some fluorine chemicals used in chip etching/production...
Only if we're talking specifically about cutting edge logic. There's Texas Instruments and GlobalFoundries in the US on the trailing edge for logic. In memory, where the fabrication techniques are similar, there's Micron, IMFT in Utah, and Samsung in Texas. Not to mention that TSMC is building a leading edge logic fab in Arizona.
And then of course there are all of the capital equipment suppliers, where the US punches way above its weight. Applied Materials, Lam Research, and KLA are all headquartered in California and employ a lot of the same talent that Intel does.
I guess the point I was trying to make in my trite (and I admit, inaccurate) statement was that it's not as accessible of a career path as, say, coding. It's more like becoming a rocket scientist: there are very few companies to pick from in that field. And they're not typically in the same place geographically.
Unfortunately the dot bomb happened right after I graduated, and the anti-intellectual backlash of the early 2000s killed independent research during the outsourcing era, which never recovered.
Sadly from my perspective, very little has changed in 20 years. Computers only reached about 3-4 GHz, and kept doubling down on single-threaded performance for so long that companies like Intel missed out on multicore. Only Apple with their M1 seems to have any will to venture outside of the status quo. The future is going to be 256+ symmetric cores with local memories that are virtualized to appear as a single coherent address space. But that could take another 20 years to get here.
Meanwhile we're stuck with SIMD now instead of MIMD, so can't explore the interesting functional paradigms. Basically I see the world from a formal/academic standpoint, so I think in terms of stuff like functional programming, synchronous blocking communication, ray tracing, genetic algorithms, stuff like that. But the world went with imperative programming, nondetermistic async, rasterization, neural nets.. just really complicated and informal systems that are difficult to scale and personally I don't think much of. Like with software, honestly so much is wrong with the hardware world right now that it's ripe for disruption.
Also hardware was a dying industry 20 years ago. We wanted fully programmable FPGAs to make our own processors, but they got mired in proprietary nonsense. There really isn't a solution right now. Maybe renting time at AWS blah.
I feel a bit personally responsible for the lackluster innovation, because I wasn't there to help. I wasted it working a bunch of dead end jobs, trying to make rent like the rest of you. And writing text wall rants on forums that nobody will ever read anyway. So ya, don't be like me. Get involved, go work for a startup or a struggling company that has the resources to fix chips, and most importantly, have fun.
I've never heard of this. Could you elaborate, please?
America decided to double down on neoliberalism with the war on terror, so we've had endless bizarre legislation like the DMCA and PATRIOT act coinciding with our exploitation of developing countries and fear of the other. But we've only had a handful of the really important innovations like blue LEDs, lithium iron phosphate batteries, and enough Moore's Law to miniaturize computers into smart phones. We needed moonshots for stuff like cheap solar panels and mRNA vaccines a long time ago. We needed pure research that we didn't have. Yes we have these things today, but to me, having to wait around seemingly forever for them when we had the technology for this stuff in the 1980s, that looks like 20-40 years of unnecessary suffering.
For example, academia warned about the dangers of GMO foods and unpredictable side effects like autoimmune disease. Nobody ever listens or cares. Nobody cared when they warned about global warming or leaded gasoline either. But I am hopeful that this prolonged period of anti-intellectualism is finally ending and maybe the people standing in the way of progress are finally retiring. I've largely given up on real innovation from the tech world, so I've got my attention fixed on solarpunk now.
I find this an interesting opinion considering that the M1 is really just "The same, but a bit larger" - IE slightly higher performance at a higher cost.
What exactly do you see with the M1 that makes it so different?
But I don't want all that. I just want a flat 2D array of the same core, each with its own local memory. Then just run OpenGL or Vulkan or Metal or TensorFlow or whatever the new hotness is in software. All Turing-complete computation is inherently the same, so I feel that working in DSLs is generally a waste of time.
Arm is a relatively simple core so scaling an M1 to over say 64 cores is probably straightforward, at least on the hardware side. People complain that chips like that are hard to program, but it's only because we're stuck in C-style languages. GNU Octave or MATLAB or any vector language is trivial to parallelize. Functional languages like Julia would also have no trouble with them.
Once we aren't compute-bound, a whole host of computer science problems become tractable. But we can't get there with current technology. At least not without a lot of pain and suffering. What we're going through now isn't normal, and reminds me a lot of the crisis that desktop software reached in the mid 90s with languages like Java just before web development went mainstream.
What about multi-core/multi-threading combined with massively out of order CPUs? Intel and AMD’s chips have a dozen or so execution ports. So you can have your PADD running on one port, and a PMUL on another. It just happens all being the scenes.
Intel tried a VLIW architecture with Itanium, but it was a flop for a variety of reasons. One of which was the lack of “sufficiently smart compilers”. There’s also the benefit to all the nuances of execution being in hardware: programs benefit from new CPUs without having to be recompiled. It has a much more intimate knowledge of how things are going than the software does (or even the compiler).
> But the world went with imperative programming, nondetermistic async, rasterization, neural nets.. just really complicated and informal systems that are difficult to scale
...wat?
Generally the degrees are Electrical Engineering, with classes along the lines of https://ocw.mit.edu/courses/electrical-engineering-and-compu... (note that's from 2003, just an example)
There's also a ton of physics, and chemical and industrial engineering in the process steps.
I got hired on the architecture side for GPU's after working a few years. My academic background was computer graphics with a focus on parallel algorithms and performance optimisation. After a couple of years working mostly on low level code, C/C++ and assembly. I got a call from a recruiter.
The semiconductor industry is larger than just Intel and AMD. Like any job, taking some time to look around the career pages should give you a good idea what skills they are interested in.
https://www.nand2tetris.org/ is a nice introduction to the how processors are put together. Book wise Hennessy and Patterson's books, Computer Organization and Design and Computer Architecture: A Quantitative Approach are good for background. I never did much on the layout side but learning Verilog and/or VHDL would be helpful but not essential.
https://www.hackster.io/news/efabless-google-and-skywater-ar... https://www.electronicsweekly.com/news/business/diy-chip-10k...
Places like Shenzhen have a very good environment for this as well. https://www.youtube.com/watch?v=taZJblMAuko
Perhaps by studying Electronics Engineering (also called Computer Engineering, which is different from Computer Science).
At my university in USA, I remember recruiters from Intel setting up a stall or something to recruit students. It was in the building which mostly has computer science and computer engineering students, so I guess that's who they were looking for.
This was less than 5 years ago.
It isn't! The book "Code" by Charles Petzold is a great introduction to digital electronics and computer architecture. There's also the "Nand to Tetris" course (which I didn't take but people here are always recommending). You can build a simple CPU in a digital circuit simulator. If you're feeling adventurous you can write it in Verilog and simulate it, and even get it to run on a FPGA. This is all stuff you can teach yourself.
Of course this is not quite enough to make you a chip designer at AMD, but you'll know enough to get over the feeling that a microprocessor is an inscrutable artifact of alien technology brought from Alpha Centauri.
The relevant disciplines are physics (mostly condensed matter), inorganic chemistry, industrial engineering, and electronics.
Find a school that teaches semiconductor engineering, take their courses through vlsi and ASICs.
Then land a job at a fab and the rest is learn on the job training.
It’s like the difference between a PC board fab and an electronics design engineer, taken to the google power.
One of the guys I did my senior design project with ended up working with AMD on processor stuff, so there are educational opportunities, I think you just need to be more on the CompEng/EE side of things and make it your focus.
Most of the students in these classes were graduate students, so with our normal course load as seniors in engineering, this was a tremendous effort. For a four-credit class I would sometimes have to work 20+ hours a week just on one class.
But, it was a good stepping stone to get into the industry - my first job was at LSI Logic executing physical design, timing closure, etc for their customers. I learned a lot but eventually stepped away from it to focus on software and startups - I didn't want to die at that desk - the designs and teams were getting bigger and the design cycles longer. I did not relish the idea of working for 3 years on a single project.
I do look back on it fondly though as it was closer to what I consider 'real' engineering - we did a ton of verification work and if you screwed up, it might be a million in mask costs and 3 months of time to fix. We did screw up from time to time and the customer often had some fixes, so on a new design, there were expected to be a couple iterations of prototypes before you went to production. I think the last design I taped out was in the 110nm node - ancient by today's standards.