Hello folks. I’m wanting to learn a bit about computer hardware and firmware design, the ultimate goal will be a fully open-source hardware computer (I don’t expect that any time soon). I’m familiar with PCB layout and design already as well as MCU and general programming.

Does anyone have suggestions for Off-the-Shelf CPUs that are supported well-enough by Linux and have useful documentation and datasheets available? I’m not looking for high performance, running a GUI, or anything like that. I’m literally just interested in practicing the board layout and figuring out how to extend core/libreboot to support it (out implement my own firmware) and get a terminal session.

  • @lemmy_user_838586
    link
    1
    edit-2
    2 months ago

    Knowing nothing about hardware design myself, maybe you might have better luck with risc-v since it’s open source, vs x86-64.

    https://en.m.wikipedia.org/wiki/RISC-V

    I know siFive has some boards that I think are for sale, that could run linux. you might be able to find datasheets for the risc-v implementation if you have interest in trying to design your own CPU/board etc.

    • nickwitha_k (he/him)OP
      link
      fedilink
      12 months ago

      Yeah. RISC-V has been the goal. But, I was hoping for something a bit simpler and easier to get a hold of as a bare chip (would be nice if a 6502 or similar could do it). That way, I’d be able to reduce the complexity and scope. I suppose I could use a soft core on an FPGA. Not confident on my gateware skills yet to be certain that I wouldn’t waste time debugging something caused by my own faulty HDL or bitstream.

      I have found low-cost Sophgo chips (SG2000 - RISC-V, mostly) but last time I checked they didn’t have mainline support due to problems in the C910 cores not properly implementing IEEE-754 FPUs and the vector extension predating the RVV1.0 release. If the upcoming Sophgo SG2380 becomes similarly availabile, that might do it as they licensed cores from Si-Five that should be fully compliant with the ISA spec.