支持 NDS32 架构

作者:Zack Brown

Green Hu 发布了一个补丁来支持 NDS32 架构。 他描述了当前的状态,“它能够启动到 shell 并且在 nds32 AE3XX 平台上通过了大部分 LTP-2017 测试套件。”

Arnd Bergmann 批准了该补丁,但 Linus Torvalds 希望对这个芯片进行更详细的描述——一个关于“用途、怪癖、存在原因”的概述,包含在变更日志中。

Arnd 回复说

非市场化的描述是,这是一个相当传统的(以好的方式)低端 RISC 架构,通常集成到定制的微控制器和 SoC 设计中,与类似的 ARM32、ARC、MIPS32、RISC-V、Xtensa 和(目前正在审查中)C-Sky 架构竞争相同的领域。 从我的角度来看,最有趣的是 Andes Technology 已经在销售基于 32 位和 64 位 RISC-V 的新一代 CPU 内核,但仍然支持足够多的现有内核客户,并对两者进行投资。

Green 还说

Andes nds32 架构支持 Linux 用于 Andes 的 N10、D10、N13、N15、D15 处理器内核。

基于已获专利的 16/32 位 AndeStar RISC 类似架构,我们设计了可配置的 AndesCore 系列嵌入式处理器系列。 AndesCores 的范围从用于微控制器和深度嵌入式应用的高性能、小尺寸内核到运行 Linux 的 1GHz+ 内核,涵盖了满足各种计算需求的通用 N 系列内核;用于数字信号控制的具有 DSP 功能的 D 系列内核;用于特定应用加速的指令可扩展 E 系列内核;以及用于最佳保护最有价值资源的安全 S 系列内核。

我们的客户总共出货了超过 25 亿个嵌入了 Andes 处理器的 SoC(包括非 MMU IP 内核)。 如果我们合并到主线中,将有助于我们的客户获得更好的 Linux 支持。

看起来这个移植没有任何争议,应该会顺利进入主线。 易于采用的一个原因是它没有触及内核的任何其他部分——如果补丁破坏了任何东西,它只会破坏那一个架构,因此让 Green 自己决定包含什么和不包含什么,风险很小。 Linus 的主要门槛可能就是,它能编译吗? 如果可以,那么就可以进入。

如果内核的其他部分开始为 NDS32 架构提供特殊行为,并且这些行为开始与其它架构偏离太远,情况可能会开始变得有趣。 例如,一些架构具有特殊的内存管理功能,内核可以利用这些功能。 一旦 NDS32 开始影响内核其他部分的代码,那么 Green 的补丁可能会受到更多的审查。

注意:如果您在上面被提及,并且想在评论区上方发布回复,请将您的回复文本发送至 ljeditor@linuxjournal.com。

Zack Brown 是 Linux JournalLinux Magazine 的一名技术记者,也是 “Kernel Traffic” 每周新闻通讯和 “Learn Plover” 速记打字教程的前作者。 他在 1993 年首次在他的 386 上安装了 Slackware Linux,配备了 8MB 的 RAM,并且他的思想被开源社区永久地震撼了。 他是 Crumble 纯策略棋盘游戏的创造者,您可以用几块纸板自己制作。 他还喜欢写小说、尝试动画、改革拉班符号、设计和缝制自己的衣服、学习法语以及与朋友和家人共度时光。

加载 Disqus 评论