龙芯架构 龙芯指令集: CPU访存指令 24个 全部来自MIPS CPU算数指令(ALU) 10个 全部来自MIPS CPU算数指令 14个 全部来自MIPS CPU乘除指令 12个 来自MIPS 12个 来自龙芯(其中8个重复MIPS指令功能) CPU跳转分支指令20个 全部来自MIPS CPU位移指令 15个 全部来自MIPS CPU特殊指令 2个 全部来自MIPS CPU异常指令 12个 全部来自MIPS CPU CPO指令 10个 全部来自MIPS 龙芯处理器共131个指令,其中119个来自MIPS,12个来自龙芯(但其中MULTG、DMULTG、MULTUG、DMULTUG
龙芯同时发布了.NET 文档网站:http://docs.loongnix.cn/dotnet/ 龙芯LoongArch64版.NET 6 下载地址:http://www.loongnix.cn/zh/ api/dotnet 对应的上游社区版本为.NET 6,tag: v6.0.105-SDK, tag: v6.0.5-runtime。 .NET6安装说明 龙芯Nuget源配置方法: 在龙芯Nuget源上,可以找到一些包含 LoongArch64 架构平台相关文件的 nupkg 包。 .NET 6安装方法 当前支持 dotnet-sdk 各子模块单独分包安装,各子模块如下: aspnetcore-runtime-6.0 aspnetcore-targeting-pack-6.0 配置龙芯Nuget源,添加包引用 参考龙芯Nuget源配置页面添加龙芯nuget源的配置。
2023年6月25日晚间,国产CPU厂商龙芯中科发布公告,宣布龙芯中科在与芯联芯之间有关MIPS 技术许可合同纠纷的仲裁获得胜利。而在此之前,龙芯中科与芯联芯在国内的诉讼也已获胜。 芯联芯7项仲裁主张6项被驳回 公告称,龙芯中科于6月23 日从香港国际仲裁中心收到仲裁庭签发的《部分最终裁决书(HKIAC/PA21030)》,对于芯联芯提出的上述 7 项仲裁主张,除第 5 项 为尚待解决事项外 ,其余 6 项仲裁主张全部被驳回。 架构进行了未经授权的修改和变更;3)在技术许可协议到期后继续使用授权技术;4)未返还保密信息;5)少报版税;6)未经同意将技术再授权给其他方;7)泄露保密信息。 从龙芯中科最新的公告来看,香港国际仲裁庭签发的裁决书对于芯联芯提出的上述 7 项仲裁主张,除第 5 项 为尚待解决事项外,其余 6 项仲裁主张全部被驳回。
龙芯派lite如何更新pmon 1.文章说明 本文主要描述龙芯派lite的固件更新相关的原理。在使用龙芯派lite时,要很清楚的理解龙芯派的执行流程。 需要注意的是,龙芯派lite上有两个型号都是GD25Q80的1MB大小的spi flash,其中存放pmon的在固态硬盘的下面,上面的一个是作为USB3.0使用的。 ? 2.龙芯派lite的固件更新 前面我们说了pmon的更新,以及板子变砖后,如何恢复的办法,下面来讲一下龙芯派lite固件的更新情况。 当启动完成pmon后,通过控制台输入可以加载内核固件。 用户可以通过设置龙芯派的al1来进行不同介质的启动 set al1 /dev/fs/fat@wd0/rtthread.elf 表示从磁盘启动rt-thread。 3.关于龙芯派lite驱动部分 龙芯派在rt-thread已经有了基础版本的支持,如果要做驱动开发,一方面,可以从pmon中去进行代码分析,然后用于驱动部分的开发。
Harbor 在2018 年 7 月成为 CNCF 沙箱(sandbox)项目,同年11月晋升为孵化(incubation)级别,并于2020年6月成为云原生计算基金会 (CNCF)第11个毕业(graduate 龙芯平台完成Harbor的适配 龙芯云计算团队积极投身到 Harbor 社区,着手进行自主移植,目前成功完成了 Harbor v.2.1.0 版本的移植,同时完成了所有功能测试。 ▶基于龙芯平台移植Harbor 经过详细的梳理及调研,发现 Harbor 构建过成中,从底层基础os镜像到中间依赖镜像,再到最终 Harbor 部署所需要的镜像,均无龙芯架构的支持。 龙芯平台 Harbor 未来规划 目前龙芯平台 Harbor 适配已经完成,基本功能已完成验证,下一步将完成基础组件的源码测试工作,以及 Harbor 周边配套的分布式分发工具的适配。 目前龙芯 Harbor v2.1.0 版本已经投入使用,未来龙芯将致力于开源,将适配后的代码回馈 Harbor 社区,努力成为社区大家庭的一员。
Python 没有龙芯架构的发布包,需要从源码编译。 在龙芯架构下执行 ./configure 指令,会出现如下错误: $ . :24 CST 2024" configure: error: cannot guess build type; you must specify one 这是由于较早的 autotools 不支持龙芯架构
3月27日,全面反映LoongArch产业生态发展最新成果的《龙芯生态白皮书(2022年)》正式对外发布, 白皮书下载地址:https://kdocs.cn/l/ce5Emg1C2pPd ,我将其中涉及到 .NET部分的内容节选出来,可以看到龙芯对.NET的支持的非常的不错,我知道他们有个几十人的.NET编译器团队在全职推进.NET的LoongArch支持,最近我公司(深圳市友浩达科技有限公司)有幸成为龙芯生态伙伴计划成员 ,和龙芯.NET团队一起深耕.NET生态。
我是龙芯汇编指令新手,本文是我学习龙芯汇编的笔记 我借到了一台宝贵的龙芯 3A6000 设备,我期望在这台设备上面学习龙芯汇编指令。 这台设备上的是龙芯旧世界的麒麟系统,由于这台设备很宝贵,我不能随意玩。 为了防止弄坏设备,我将在此设备上面搭建 docker 环境,进入到 docker 容器里面进行开发 在此设备上搭建 docker 环境的方法,详细请看 制作一个龙芯旧世界的 dotnet sdk docker RUN apt-get install vim -y 使用如下两句命令进行构建和进入容器 docker build -t g1 . docker run -it g1 /bin/bash 本文这里完全都是龙芯旧世界的 可以使用 QEMU 进行模拟,详细请看 龙芯汇编实验环境搭建 - github.com/foxsen/loongarch-assembly 必须说明的是以上使用 QEMU 进行模拟的做法使用的是龙芯新世界
一、环境介绍 宿主机环境: ubuntu18.04 64位 目标开发板: 龙芯二代(2K1000) 二、资料下载 交叉编译器: http://ftp.loongnix.org/loongsonpi
随着信创产业的推进,越来越多的服务器开始采用龙芯3A5000处理器。作为重要的监控工具,Prometheus系统需要在该架构服务器上可靠运行。 编译好的node_exporter下载地址:https://pan.quark.cn/s/e09bc874ff4b 为何要到龙芯机器编译 node_exporter底层语言采用Golang,理论如果不涉及 具体编译过程暂未细看,最终选择直接在龙芯架构的机器上开展编译工作,这样可以有效避免因编译环境与运行环境不一致可能带来的潜在兼容性问题。 因为从官网下载的go各个版本,在公司龙芯3A 5000+UOS/麒麟V10的系统上,一直没法使用,报错:段错误(核心已转储)。 /node_exporter 总结 本文记录了在龙芯3A5000架构服务器上手动编译node_exporter的过程,因官方未提供longarch64版本,需在龙芯机器上直接编译以确保兼容性和稳定性。
编译生成二进制文件包 2.2、编译生成RPM文件包 3、安装GreatSQL 3.1、my.cnf参考 3.2、登入GreatSQL 3.3、创建新用户、测试库&表,及写入数据 4、搭建MGR集群 5、下载龙芯平台 GreatSQL二进制包 本次介绍如何在麒麟OS + 龙芯CPU的环境下将GreatSQL源码编译成二进制文件及RPM包等。 本环节是龙芯的同学提供的,已经事先配置过了,忽略。 2.2、编译生成RPM文件包 由于GreatSQL自带的编译脚本还不能适配龙芯环境,所以需要手动编译生成RPM文件包。 龙芯/Loongson - Generic” 标签下载即可。 全文完。
6月25日晚间,国产CPU厂商龙芯中科发布公告,称龙芯中科在与上海芯联芯智能科技有限公司(以下简称“芯联芯”)之间有关MIPS 技术许可合同纠纷的仲裁获得胜利。 芯联芯提出的上述 7 项仲裁主张,除第 5 项 为尚待解决事项外,其余 6 项仲裁主张全部被香港国际仲裁中心仲裁庭(以下简称“仲裁庭”)驳回。 对此消息,芯联芯于6月26日发布了《芯联芯就香港国际仲裁中心仲裁庭裁决的意见》进行了回应。同时,芯联芯还指控龙芯中科误导公众和监管。 2023年6月23日,仲裁庭出具部分最终裁决(Partial Final Award,“裁决”)。 芯联芯指控龙芯中科误导公众和监管 此外,芯联芯还在另一份声明当中指控龙芯中科在6月26日也发布的《关于仲裁事项进展的公告》(以下简称“公告”)中存在误导公众和监管的嫌疑。
CPU是首款真正的国产,龙芯2F,兼容mips的指令集。 笔记本原来的操作系统是Debian6,后来升级到了7,随后一直是当做玩具放着。 g 顺利的话,龙芯笔记本会启动Debian安装界面,安装过程同平常的安装没有什么不同,此处省略。 这是因为龙芯的显卡兼容性造成的,通常的方式应当是安装龙芯自己的显卡驱动:xserver-xorg-video-siliconmotion-2.2.19.tar.gz,很可惜当前在网上几经寻找,已经找不到了这个驱动 而这个时候千万不要使用apt autoremove来删除这些包,否则龙芯笔记本将真的无法启动只能重新安装。 参考资料 龙芯逸珑8089B安装debian8.5和KDE桌面 DebianYeeloongHowToInstall
之前我写过一篇文章《龙芯迷你主机,用来办公怎么样?》,到现在已经使用了一段时间。整体体验下来,系统是可用的,但离完美仍有差距,主要原因是龙芯生态中的应用还非常匮乏。 反过来思考,龙芯上的应用稀缺,国家又决心推广,这是否意味着开发人才存在缺口?这或许是一个机遇。如果能掌握一些龙芯系统的开发技能,未来在职场上的竞争力或许会大大提升。 既然如此,接下来就介绍如何在龙芯 UOS 系统上搭建 C/C++ 开发环境。 安装编译工具链 尽管龙芯生态尚不成熟,但其开发支持相对完备,已有多种编译器和工具链版本适配龙芯架构。 首先,安装基本的编译工具: $ sudo apt install build-essential build-essential 包含以下常用工具: libc6-dev gcc g++ make dpkg-dev VS Code官方并没有提供龙芯架构的支持,不过在龙芯 UOS 系统中,安装 VS Code 也非常简单,只需在应用商店中搜索并安装。
在上一篇《龙芯迷你主机,用来办公怎么样?》中,我分享了用龙芯迷你主机搭配统信 UOS 进行日常办公的体验。这一体验,半年时间就过去了。 最近了解到龙芯有“新世界”与“旧世界”之分,特意去做了一下功课: 旧世界(ABI 1.0) 诞生于龙芯早期过渡阶段,以 MIPS 架构代码为基础改造而成。 “打破旧世界,拥抱新世界”——作为程序员,自然要第一时间尝鲜,于是立刻将这台龙芯迷你主机安装了 Deepin V23 龙芯版(目前仍为 Preview 版本,但足够试水)。 眼下,绝大多数龙芯架构应用都只面向旧世界 ABI 开发。 本来龙芯架构上的应用就少,再这么折腾,更是要吓走用户。
CPU是首款真正的国产,龙芯2F,兼容mips的指令集。 笔记本原来的操作系统是Debian6,后来升级到了7,随后一直是当做玩具放着。 g 顺利的话,龙芯笔记本会启动Debian安装界面,安装过程同平常的安装没有什么不同,此处省略。 这是因为龙芯的显卡兼容性造成的,通常的方式应当是安装龙芯自己的显卡驱动:xserver-xorg-video-siliconmotion-2.2.19.tar.gz,很可惜当前在网上几经寻找,已经找不到了这个驱动 而这个时候千万不要使用apt autoremove来删除这些包,否则龙芯笔记本将真的无法启动只能重新安装。 参考资料 龙芯逸珑8089B安装debian8.5和KDE桌面 DebianYeeloongHowToInstall
龙芯派VS树莓派 运行功耗实测 1.概述 2.龙芯派教育派 3.树莓派2b的功耗情况 4.树莓派3b+的功耗情况 5.树莓派4b的功耗情况 6.树莓派pico功耗情况 7.总结 1.概述 龙芯派、树莓派都是开源硬件 2.龙芯派教育派 龙芯派搭载两个 2K1000 处理器(主频 1GHz,CPU GS264),板载 DDR3 颗粒,实现 DDR3 的运行存储功能。实现了 GPIO 的输入输出,中断功能。 另外手上还有一个龙芯派,但是由于不是USB供电,暂时没法得出功耗情况,但是基本上应该和龙芯教育派一样,因为外设一致。 6.树莓派pico功耗情况 树莓派pico是双核 Arm Cortex-M0 + @ 133MHz, 芯片内置 264KB SRAM 和 2MB 的板载闪存。 总体上来说,龙芯选手的功耗作为单板计算机来说,表现比较差,而树莓派则发挥稳定。板子的功耗控制差距还是有一些的。
"); return result; #else #error No timer implementation for this platform #endif } 而在将 RocksDB 移植到龙芯的过程中 ,需要修改上面的代码,判断出当前是龙芯 loongarch64 架构。 网上没有搜到 GCC 对龙芯 CPU 的预定宏的文档说明,只能从源码中找答案: void loongarch_cpu_cpp_builtins (cpp_reader *pfile) { ... builtin_define ("__loongarch__"); ... } 可以看到,__loongarch__代表龙芯CPU。 在暂时不知道龙芯是否支持RDTSC的情况下,只能给出通用的实现,以后再查龙芯的CPU手册进行优化。
龙芯2k1000的中断设计 1.前言 2.龙芯2k1000的中断描述 2.1 mips设计上的通用中断处理 2.2 龙芯中断的设计 3.龙芯2k1000中断的产生与处理 4.龙芯2k1000中断处理概述 2.龙芯2k1000的中断描述 龙芯2k1000最多支持64个中断的触发源,按照统一方式进行管理。 ? 这64个中断控制器通过可以配置的中断路由可以分配到CPU0与CPU1中。 其中,6个外部中断(IP2 ~ IP7),2个软中断(IP0~IP1)。片上的计数器/定时器会连接到一个硬件中断位上去。 4.龙芯2k1000中断处理概述 龙芯2k1000利用mips上的8个中断位,自己添加了一个中断控制器,该中断控制器可以配置中断的路由方式,比如让其路由到CPU0或者CPU1上,并且可以指定每个中断路由到具体的 上述则是龙芯2k1000中断处理逻辑。
今天尝试安装龙芯版 Linux,本来希望能安装 Debian 版,但只找到一些文档(https://wiki.debian.org/LoongArch),没找到可安装版的 ISO。 而且龙芯版由于是在 QEMU 虚拟机里,运行速度也较慢。所以,我想我需要先学习一下 Arch Linux。 - 龙芯版 Arch Linux - 通过上述折腾,也查了一些文档,总算基本上了解了 Arch Linux。谁让咱还有些 Linux 功底呢。 我推测,龙芯版 Linux 默认没有安装dhclient,才导致我上不了网。重装一遍。 我的 UTM 不支持龙芯,因此,我只能使用 QEMU 了。 安装完成后,重启,进入 Shell,显示如下: # uname -a Linux archlinux 6.7.0-6 #1 SMP PREEMPT Tue, 09 Jan 2024 11:51:31 +