26 ms·
Looks like the 4 CPUs are hardened versions of the VexRiscv cores that were already used as soft cores in their previous FPGA product line. If I had to design
by tverbeure 3y ago
Looks like the 4 CPUs are hardened versions of the VexRiscv cores that were already used as soft cores in their previous FPGA product line.
If I had to design my own FPGA, I would probably make the same choice. It’s one of the best CPUs out there in terms of area/performance/functionality and available under an MIT license.
- gleenn 3y agoWhat is the difference between a hard and soft core?
- Rinzler89 3y agoA hard-core is hardware baked into the silicone of the FPGA from the fab in addition to the programable gates on board and is therefore faster and more space and energy efficient, soft-core is software synthesized from HDL code and programed into the FPGA using its available gates, making it slower and less eficient.
- aseipp 3y ago"Hard" refers to components that are actually part of the ASICs and exist on the die. For example, a "hard DDR memory controller" means that there is a physical part of the die that implements the DDR spec. "Soft" refers to components that run on top of an FPGA. A "Soft CPU" is a CPU that runs on the FPGA, and is not part of the actual physical design.
- simne 3y agoIt depends. Exists few levels, to know exactly need more information. Mostly used in modern tech types 1 and 3a from my comment, but large scale production CPU SOCs usually 3b or hybrid 3b with 2, and sometimes you could found type 2 in consumer electronics or for example in routers (because cheap in range of few thousands chips; 3b effective for millions+; 3a in range from 50k to millions). Sometimes also used Application-specific instruction set processor (ASIP), as I know usually they are some standard design core with one time programmable ROM. I mentioned it only for complete image, sure they are not for our case, but sales could confuse with soft core. 1. "Genuine" soft core - FPGA - matrix with logic elements and RAM defines connections (rows and columns), also similar CPLD, though different architectures, but near same idea, most difference FLASH (ROM) instead of RAM. Others could be considered hard core. 2. Uncommitted Logic Array, ULA, very similar for FPGA, but instead of RAM, use matrix of metal wires, for example cut by laser. Usually, up to 100% faster than same tech FPGA and have about halved power consumption. And you may already understand, now they used when somebody created successful FPGA design and see market potential to sell few thousands chips. Most known ULAs was in ZX80, ZX81 and Spectrum. 3. Custom chips, I prefer to name they "rendered", because, need physical simulation package to got work. Exist two types of custom chips: 3a https://en.wikipedia.org/wiki/Standard_cell https://en.wikipedia.org/wiki/Standard_cell Using standard libraries of elements, templates if you wish. So, better than ULA, but worse performance than next type. 3b Full-custom design It is what name suggest - using simulation to make working semiconductor structures. Most important feature - expensive and risky, but if have enough time/money, could make real wonders, like Atari/Commodore chips (except gate array or ULA Gary and Gayle custom chips), or modern CPU SOC if you wish. https://en.wikipedia.org/wiki/Application-specific_integrated_circuit https://en.wikipedia.org/wiki/Application-specific_integrate...