COR24 Soft CPU for FPGAs

MakerLisp COR24, a Soft CPU for FPGAs

What is a "soft CPU" ? What is an "FPGA" ?

A soft CPU is a computer Central Processing Unit, the part of a computer system that executes program code, implemented in programmable logic. An FPGA is a Field Programmable Gate Array, a kind of programmable logic chip, which can support the implementation of a soft CPU, as well as all the rest of the devices necessary to make a complete System On Chip, or SOC. An SOC based on a soft CPU can be used to build custom embedded computer systems, as an alternative to systems designed around mass-market microprocessors and micro-controllers. MakerLisp has extensive experience in all kinds of embedded hardware and software for embedded computer systems, and can help you evaluate and develop solutions for your specific needs. And now, we are offering to license our own soft CPU implementations, based on the architecture we call MakerLisp COR24, and we will provide the technical assistance and training required to deploy it in your products.

When can a soft CPU on an FPGA be a better choice than a "standard" microprocessor or micro-controller ?

1) When you can't get the "standard" chips. MakerLisp developed the COR24 CPU during the pandemic, when we couldn't get the micro-controller that was used in our MakerLisp Machine small computer system. We used a particular FPGA that was available, but many other FPGAs, available from many other vendors, would have worked as well. MakerLisp COR24 processors do not require large, expensive FPGAs with exotic features.


2) When you want to integrate custom hardware into your system, to do some special operation or computation. If you would consider having both a conventional, mass-market CPU chip, and an FPGA, in your system, you might be better off putting both functions in one programmable logic chip, saving space and cost, and achieving better overall system performance.


These are just a couple of examples. Sometimes a soft CPU is the right solution, sometimes it isn't. Some soft CPUs are better at some things than others. MakerLisp can consult with you on all  the hardware and software issues relevant to your product development, giving you more information, and more options, as you make these  decisions.

Embedded hardware and software development is hard, no matter what you do, and you need the right kind of expertise to get it done well. Hardware and software development ecosystems that automatically generate code, hooking up pre-engineered blocks, aren't all they are cracked up to be. You get an "automatic" solution as a starting point, which then you have to figure out how to debug and extend as necessary, while not really being able to see through all the layers of the manufacturer's ecosystem. You need to put in just as much work, and you need the same kind of embedded system experience, as you do with any other development environment, but you may have less control over how your "automatically-generated" solution finally works. For engineers with the right experience, changing CPUs and development tools is not that big a deal, as long as the tools and support provided are up to the job. Rather than having a "company X" shop, where engineers are trained in one tool-set, consider choosing the best solution on its merits first, and then getting the technical capacity you need to get that done. MakerLisp can help you in your development, whether you choose a custom CPU or not.

How can I learn more about MakerLisp COR24 CPUs ?

Call or write ! (617) 308-4698, or email us at info@makerlisp.com. Or use this contact form. And here's a presentation I gave at a meeting of the Silicon Valley Robotics Group a while back. I previously gave a slightly different version of this talk at a Design and Reuse IP-SOC conference.


If MakerLisp COR24 sounds interesting, or if you have any questions about soft CPUs on FPGAs, or embedded system development in general, please get in touch !

Share by: