4 ms·
I have no context into your background knowledge, but I'll assume you know how to write some software. Coming from a software background, my recommendation wou
by seg_lol 6y ago
I have no context into your background knowledge, but I'll assume you know how to write some software.
Coming from a software background, my recommendation would be to come from above and work down towards the chips. The perfect route to take is to work with a soft RISC-V cpu running on an FPGA with a totally open toolchain. By utilizing open tools, you have the agency to both modify the tools for your own use, gaining knowledge into how the tools work as well as participating in the technology graph. As soon as you add even a minor feature to the tooling, you then have the ability to add features for other people. This makes you valuable and will open other opportunities.
Get a Lattice FPGA supported by Yosys [1] and learn Chisel [2] and Verilog [3] while working through Nand To Tetris [4]
Once you understand the hardware enough, those soft designs can start to be turned into hard designs using the Skywalker PDK [5] and get your Open Source designs made for free.
[1] http://www.clifford.at/yosys/ http://www.clifford.at/yosys/
[2] https://www.chisel-lang.org/ https://www.chisel-lang.org/
[3] https://hackaday.io/project/160759-nand-to-tetris-in-verilog-part-1-icarus https://hackaday.io/project/160759-nand-to-tetris-in-verilog...
[4] https://www.nand2tetris.org/ https://www.nand2tetris.org/
[5] https://www.theregister.com/2020/07/03/open_chip_hardware/ https://www.theregister.com/2020/07/03/open_chip_hardware/ https://github.com/google/skywater-pdk https://github.com/google/skywater-pdk