5 ms·
Zylin ZPU: 32 bit CPU with GCC toolchain
- dmitrygr 3y agoSadly it is mostly abandoned. But not only was it the smallest CPU with a gnu toolchain, there was also a port of linux no-mmu unto it!
- xyzzy123 3y agoHi, what are the differences in this case between "abandoned" and "finished"? Guessing a lot of toolchain / software rot?
- dmitrygr 3y agoYes. That. And the original people who ported the toolchain no longer care.
- robinsonb5 3y agoYes, exactly, the gcc port is a very old version, and the build process frequently breaks on more modern systems. I did fork it [0] and apply a couple of fixes a year or so back, but I seem the be the only one who cares now, and even I don't care enough to pour large amounts of time into it! [0] https://github.com/robinsonb5/zpugcc https://github.com/robinsonb5/zpugcc
- dmitrygr 3y agoI care too. Is there a way to contact you?
- robinsonb5 3y agoYes by all means - I have a gmail account, with the same username as here and github.
- goldenpreppy8 3y agoTruly sad. Open source project that is highly customizable, with users able to select the instruction set and data path that best suits their application, and the best part , developers can write programs for the ZPU using standard C (GNU Compiler Collection toolchain). Also wasn't the original purpose of the project to create CPU with low-power consumption? And yet it was capable of 200mhz on 32 bit instructions if I'm not mistaken. Packs a punch , especially if it was designed for battery powered devices. What led it to get abandoned?
- dmitrygr 3y agoThe problem with the ZPU is that the performance is at best something like 0.1MIPS/MHz
- aappleby 3y agoI've written Risc-V RV32I cores that are about the same size as this, or possibly smaller depending on how you count what the "core" is.
- ktta 3y agoIs the source of your core by any chance available online, even if not open sourced?
- Retr0id 3y agoNot GP, but this might scratch your itch https://github.com/cnlohr/mini-rv32ima https://github.com/cnlohr/mini-rv32ima
- ktta 3y agoIt does, thanks!
- aappleby 3y agoIt will eventually be in https://github.com/aappleby/Pinwheel https://github.com/aappleby/Pinwheel but that repo is currently a mess.
- tromp 3y agoThat's just what I was wondering about after reading the brief github README: > The ZPU is a small CPU in two ways: it takes up very little resources and the architecture itself is small. It would have been nice if they had tried a quantitative comparison with the Risc-V RV32I to support this claim. That would also allow them to showcase the design choices and trade offs that make this project interesting. As it is, there's not much information of this kind to be gained from the README...
- dmitrygr 3y ago> It would have been nice if they had tried a quantitative comparison with the Risc-V RV32I It would. If they had a Time Machine. ZPU is over a decade and a half old… Back from from when we called RISC-V just "MIPS" But since you asked. It IS small. The smallest sane RV32 core I can find is PicoRV, which uses 750-2000 LUS[1]. SERV [2] does claim to only need 440 LUTs, but its performance (most instrs take over 32 cycles) makes even ZPU seem speedy... The ZPU uses 442 LUTs[3]. [1] https://github.com/YosysHQ/picorv32 https://github.com/YosysHQ/picorv32 [2] https://github.com/olofk/serv https://github.com/olofk/serv [3] https://opencores.org/projects/zpu https://opencores.org/projects/zpu
- deleted 3y ago[deleted]
- culanuchachamim 3y agoSorry for the ignorance, but it's only software emulating a CPU, or there is a actual hardware?
- dmitrygr 3y agoThere were a number of implementations in FPGA (it was designed to use very few LUTs)