I have three RISC-V RV32 microcontrollers (GD32VF103 Zhaoyi Innovation, CH32V103 Jiangsu Qinheng, CH2601 Ali Pingtou Ge). RISC-V (pronounced "risk-five") is an open source instruction set architecture (ISA) based on the principle of reduced instruction set computing (RISC). Let me explain that RISC-V is just an ISA. That is, it is just an instruction set specification, not a certain chip. Therefore, if you want to design a chip based on this instruction set, you need other architecture designs, which is different from ARM. ARM is not only an instruction set, but also a designed core. Only companies like Qualcomm and Intel (later sold to Marvell) use only instruction sets to design their own core architecture. Therefore, the performance of Qualcomm's ARM chips of the same era is stronger than others. Other companies buy a full set of ARM cores and design their own CPUs or MCUs in combination with their own peripherals. Some companies buy a full set of cores and produce them directly, which is more worry-free. However, RISC-V does not have a core and needs to design its own core. It is said that there is a company in China that sells "kernels" (I don't know if it is true or not). Compared with most instruction sets, the RISC-V instruction set can be used freely for any purpose, allowing anyone to design, manufacture and sell RISC-V chips and software. Although this is not the first open source instruction set, it is of great significance. In addition to considering the performance and power efficiency in these uses, designers also need to consider the entire industrial ecology of the instruction set. The instruction set has a lot of supporting software, which is a complete ecosystem. This solves the usual weaknesses of new instruction sets. The
RISC-V instruction set is just a specification, and the kernel is varied. The RISC-V CPU is similar to ARM's M0, M3, M4, and A7. The instruction set stipulates a minimum standard, such as RV32[I] must be implemented, [M][A][F][D]C[P] is optional, F is single-precision floating point, D is double-precision floating point, C is compressed instruction, and P is DSP extension. As long as you know what instruction set it is, you can know what compiler to use. Currently, only the GNU compiler is complete, and others such as LLVM/CLANG are not very perfect. After testing the MCUs of the three companies, only the tool chain of GD32VF103 is more in line with the "standard" and is similar to SiFive. It also uses openODC tools, and the others are their own tools. Therefore, the development tools of the two companies are shelled GNU tools and self-modified debuggers. What I don't understand is why domestic software must have a "shell". It's troublesome and not easy to use. Seeing that some files of CDK use VIM's syntax prompts and highlighting models, wouldn't it be better to honestly make a good BSP library? Moreover, the information of Pingtou Ge is pitiful. All information depends on guessing from the source code. Although they all use ARM's AMBA bus, it is unknown whether each company has made any changes. Recently, Intel acquired SiFive. It seems that the battlefield between RISC-V and ARM seems to be more intense. However, according to Intel's temper, it will definitely add private goods to its own products, which will increase the possibility of fragmentation of RISC-V.
I don't know why each company shells its tool chain, but I am worried that domestic RISC-V is just a money-making game. The water here is too deep, I am an outsider. It is suggested that the country should give certain mandatory "guidance". Non-standard shells must be paid for by themselves. In this way, the water of innovation is removed, which is conducive to the development of RISC-V.
Regarding the issue of industry promotion, I would like to share my thoughts: For a small company, their market is mainly some marginal markets with little scale. The profit of the product is relatively high, and the cost pressure of materials is not great. However, if there is a problem with the quality of the product, there will be no customers, and the company will be out of business. Therefore, it is unlikely to replace the chip system. For promotion, I suggest that it is more suitable for use in places where reliability requirements are not high, such as toys, audio equipment, and small household appliances. Moreover, the scale of these products is also large, which makes it easy to reflect the price advantage. It would be better if there is a national team to provide technical support. If there is no national team, it can inject a certain amount of funds into the community, and the money squeezed out of the water is enough for the entertainment of these swimming enthusiasts in the community.
|