If you make GPUs like NVidia, AMD, and Intel do, you may be sued.
However, nothing stops you from just spamming extremely simple cores attached to a standardized bus architecture that talks to a singular extremely wide and fast memory controller.
Largely, this is slowly what GPUs are turning into.
RISC-V based GPUs (think: Xeon Phi / Knights Landing) is the current vogue for research in RISC-V space. A good chunk of the talks at the last RISC-V workshop were on this topic.
J Core is the opened version of SuperH, and thus already has good OS and compiler support: http://0pf.org/j-core.html
J Core is perhaps the main ‘competitor’ to RISC-V: they're both fully open, unencumbered, well-designed architectures suitable for both embedded devices and full systems.
Their comment about the address space identifier field in the MMU setup is absolutely golden. We need to get more practical experience using the architecture to help inform the design from other perspectives.
I don't really understand how it could be that problematic. It would only be an issue if there was a memory access in between the time the ptbr changes and the asid changes. But the instructions for manipulating CSRs don't access memory. If you had the instructions for changing these two registers one after another, there should be no intervening memory access. This might be broken if the CPU takes an interrupt, but interrupts are generally disabled during the context switch routine.
Here at Berkeley Architecture Research and our spin-off company SiFive, we are working on finalizing version 1.9 of the privileged ISA, which includes a lot of useful features for operating system implementers. This includes a standardized way of performing memory-mapped IO, debug port, and possibility of standalone boot.
I say push as hard as possible to get actual boards out there. It's not going anywhere if nobody can use them. My suggestion is a clone of something like Pi that preferrably is compatible with its addon boards and such. Drop in replacement.
The lowRISC team at Cambridge are working on exactly that. However, there's a lot that needs to be finalized in the privileged ISA before it can be implemented in a board. Manufacturing a bunch of boards that require a non-standard toolchain wouldn't be very useful.
That being said, you can already use a RISC-V processor by programming the RTL onto an FPGA board. The Zedboard and ZC706 are both officially supported. Though both of these boards are pretty expensive.
I more or less agree with both of your sentiments. I also suspect that if you can get anywhere near the tinkerer's market first, it becomes that much more likely that you can get another foothold, and that much more likely that the next thing to draw further interest will come from somewhere you can take advantage of.
That's exactly my point. The tinkerers are buying ARM systems to learn. So, if they learn ASM or ecosystems, it's going to be ARM's. They'll contribute back to ARM's, as well. Same with various microcontroller CPU's from 8-bit sector. So, needs to be something to work with for RISC-V just to get people scratching an itch coding up stuff for it.
> The lowRISC team at Cambridge are working on exactly that.
When (roughly estimated) can we expect the first actual boards?
> The Zedboard and ZC706 are both officially supported. Though both of these boards are pretty expensive.
How long will these boards be supported in later versions of Risc-V / ISA? It makes no sense to purchase an expensive board unless it can be used for a long time in upcoming RTL versions.
19 comments
[ 6.7 ms ] story [ 91.4 ms ] threadI've known of RISC-V for a while, and just learned of IBM's efforts to open up their Power Architecture: https://en.wikipedia.org/wiki/OpenPOWER_Foundation
Does anyone know of any other free and open processor architectures? I hope we'll see a GPU one soon.
Sparc is also open and has been for quite some time.
If you make GPUs like NVidia, AMD, and Intel do, you may be sued.
However, nothing stops you from just spamming extremely simple cores attached to a standardized bus architecture that talks to a singular extremely wide and fast memory controller.
Largely, this is slowly what GPUs are turning into.
http://hwacha.org/
J Core is the opened version of SuperH, and thus already has good OS and compiler support: http://0pf.org/j-core.html
J Core is perhaps the main ‘competitor’ to RISC-V: they're both fully open, unencumbered, well-designed architectures suitable for both embedded devices and full systems.
Here at Berkeley Architecture Research and our spin-off company SiFive, we are working on finalizing version 1.9 of the privileged ISA, which includes a lot of useful features for operating system implementers. This includes a standardized way of performing memory-mapped IO, debug port, and possibility of standalone boot.
That being said, you can already use a RISC-V processor by programming the RTL onto an FPGA board. The Zedboard and ZC706 are both officially supported. Though both of these boards are pretty expensive.
When (roughly estimated) can we expect the first actual boards?
> The Zedboard and ZC706 are both officially supported. Though both of these boards are pretty expensive.
How long will these boards be supported in later versions of Risc-V / ISA? It makes no sense to purchase an expensive board unless it can be used for a long time in upcoming RTL versions.