While working on my 6502 back in 2021, u/Enlightenment777 had suggested I look into Programmable System-on-Chips (PSoCs). It took me nearly a year to get around to it, but I start using PSoCs for decode logic while working on my 286. In the video below, I provide an overview of how I am using PSoCs in my 286 systems and VGA card.
One aspect of the PSoC where I was not very clear in the video is whether or not the logic that I was building is "hardware" or "software." My understanding is that the PSoC contains PLD-based sub-blocks, or universal digital blocks (UDBs). Essentially, as I am building out my circuit in the video, I am defining how the PLD-based UDBs will configured, like a traditional PLD (i.e., hardware). On top of this, however, I can write C code that runs on the PSoC (i.e., software... well, firmware). PSoC Creator allows you to "codesign your application firmware with the PSoC hardware." The PSoC is essentially a PLD plus a processor, where you can load software/firmware for the processor on the PSoC.
Custom PCBs to Experiment with PSoCs
As an update to the content above... I have continued to use PSoCs in my 386 and 486 projects. Recently, I've designed a couple of PCBs to help me experiment with more of the PSoC 5 family ICs.
More to come...