龙芯架构 龙芯指令集: 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
龙芯2k1000的中断设计 1.前言 2.龙芯2k1000的中断描述 2.1 mips设计上的通用中断处理 2.2 龙芯中断的设计 3.龙芯2k1000中断的产生与处理 4.龙芯2k1000中断处理概述 2.龙芯2k1000的中断描述 龙芯2k1000最多支持64个中断的触发源,按照统一方式进行管理。 ? 这64个中断控制器通过可以配置的中断路由可以分配到CPU0与CPU1中。 2.2 龙芯中断的设计 对于对于每个核上的IP0~IP3,其对应的是 CP0_Status 的 IP2 到 IP5。IP7用于定时器中断。 ? 4.龙芯2k1000中断处理概述 龙芯2k1000利用mips上的8个中断位,自己添加了一个中断控制器,该中断控制器可以配置中断的路由方式,比如让其路由到CPU0或者CPU1上,并且可以指定每个中断路由到具体的 上述则是龙芯2k1000中断处理逻辑。
一、环境介绍 宿主机环境: ubuntu18.04 64位 目标开发板: 龙芯二代(2K1000) 二、资料下载 交叉编译器: http://ftp.loongnix.org/loongsonpi /pi_2/toolchain/ Linux内核: http://ftp.loongnix.org/loongsonpi/pi_2/source/ 三、编译内核 3.1 配置交叉编译器 解压交叉编译器 解压内核 wbyq@wbyq:~/loongson$ tar xvf /mnt/hgfs/linux-share-dir/linux-3.10-loongsonpai.tar.gz (2). ramdisk.cpio tmp block include Makefile.qlock README tools config-ls2k net tags wbyq@wbyq:~/loongson/linux-3.10$ wbyq@wbyq:~/loongson/linux-3.10$ cp config-ls2k
基本介绍迅为2k1000开发板是采用国产处理器+国产操作系统的开发平台,采用龙芯2K1000处理器集成2个64位GS264处理器核,主频1GHz,以及各种系统IO接口。集高性能与高配置于一身。 板载4路USB HOST、2路千兆以太网、2路UART、2路CAN总线、Mini PCIE、SATA固态盘接口、4G接口、 GPS接口、WIFI、蓝牙、Mini HDMI、温度传感器、 JTAG接口等流畅运行国产 系统:流畅运行busybox,buildroot,loogxin,QT5.12系统本文摘自《北京迅为iTOP-龙芯2K1000开发板指南》我们在Buildroot 文件系统系统上已经移植好了 opecv /opencv_pic,这个程序的作用是通过 opencv 打开当前目录下 1.bmp 这个文件,并且显示在屏幕上,如下图所示:屏幕上显示:测试源码位置:LS2K1000 开发板资料\11_测试文件以及源码
iTOP-2K1000龙芯开发板.jpg iTOP-2K1000龙芯核心板.jpg 1 处理器核 n GS264 n MIPS64 R2 体系结构兼容 n 包括 1 个全流水的 64 支持 OpenVG n 通过 Futuremark 认证 n 动态电源管理 n 支持 BitBLT 和 Stretch BLT n 矩形填充 n 硬件画线 n 单色字体渲染 n ROP2, 533MHz n 不支持 ECC n 可配置为 32/16 位模式 n 支持命令调度 5 SATA 控制器 n 1 个独立 SATA 端口 n 支持 SATA 1.5Gbps 和 SATA2 个 X1 接口 20 I2S 控制器 n 支持 master 模式下 I2S 输入 n 支持 master 模式下 I2S 输出 n 支持 8、 16、 18、 20、 24、 32 位宽 n ……(因为这是最为常用的 4: 2: 2 格式的数据顺序) n 独立于图片尺寸的水平和垂直的尺寸设置 n 可编程水平、垂直同步信号极性 n 3 个异步 FIFO,大小分别为 16×32bit(for
Uboot 上这些资料非常的多, 所以我们别的板子对于这个需求就没单独拿出来给大家讲, 但是龙芯用的是 pmon, pmon 上相关的资料太少了, 所以有必要单独作为一章给大家讲解。 平台:迅为i.TOP-2K1000开发板 CPU:国产龙芯处理器,双核64位系统,板载2G DDR3内存, 系统支持:busybox,buiroot,Loognix,qt 在 pmon 下控制 GPIO 我们查阅数据手册得知, 龙芯 2K1000 共有 60 个 GPIO 引脚, 4 个为专用 GPIO, 其余 56 个与其他功能复用。 2 通过 C 控制 GPIO 2.1 编写驱动程序 首先我们使用命令 cd Targets/LS2K/dev 进到 pmon 的 Targets/LS2K/dev 目录, 在这个目录下放的是和 LS2K 只不过现在我们是用汇编来完成这个操作, 如大家对汇编指令不是很清楚, 可以参考资料中的龙芯架构参考手册, 位置: LS2K1000 开发板资料\07_第三方库以其他参考资料\01_其他参考资料我们将编译好的
ls2k1000开发板移植rt-thread笔记 1.前言 2.龙芯派基本介绍 3.rt-thread在龙芯派上的运行过程 4.rtt的启动分析 4.1 启动代码引导 4.2 rt-thread的启动流程 5.关键部分驱动的初始化 6.Stack Frame 7.总结 1.前言 龙芯2k1000开发板拥有非常丰富的外设资源,板子设计也非常的精致。 本文主要针对龙芯2k1000的龙芯派的开发板进行rt-thread移植,通过这篇文章,基本上掌握rt-thread对于一个新的体系架构上的移植过程,同时也可以很好的掌握mips64体系架构上的相关知识, 同时熟悉使用龙芯派2k1000。 2.龙芯派基本介绍 龙芯派就是面对普通开发群体的一个开发板,龙芯派搭载 2K1000 处理器(主频 1GHz),板载 DDR3 颗粒,实现 DDR3 的运行存储功能。
近日消息,基于自主指令系统的国产 CPU 龙芯 3A5000 以及 3C5000 系列产品即将问世。 龙芯平台完成Harbor的适配 龙芯云计算团队积极投身到 Harbor 社区,着手进行自主移植,目前成功完成了 Harbor v.2.1.0 版本的移植,同时完成了所有功能测试。 ▶基于龙芯平台移植Harbor 经过详细的梳理及调研,发现 Harbor 构建过成中,从底层基础os镜像到中间依赖镜像,再到最终 Harbor 部署所需要的镜像,均无龙芯架构的支持。 龙芯平台 Harbor 未来规划 目前龙芯平台 Harbor 适配已经完成,基本功能已完成验证,下一步将完成基础组件的源码测试工作,以及 Harbor 周边配套的分布式分发工具的适配。 目前龙芯 Harbor v2.1.0 版本已经投入使用,未来龙芯将致力于开源,将适配后的代码回馈 Harbor 社区,努力成为社区大家庭的一员。
龙芯派lite如何更新pmon 1.文章说明 本文主要描述龙芯派lite的固件更新相关的原理。在使用龙芯派lite时,要很清楚的理解龙芯派的执行流程。 具体的项目地址,可以根据这个编译出龙芯派lite需要的pmon。 https://github.com/FlyGoat/pmon-ls2k-edu 在release中可以下载已经编译好的固件。 ? 2.龙芯派lite的固件更新 前面我们说了pmon的更新,以及板子变砖后,如何恢复的办法,下面来讲一下龙芯派lite固件的更新情况。 当启动完成pmon后,通过控制台输入可以加载内核固件。 从U盘加载 load /dev/fs/ext2@usb0/vmlinuxboot load (usb0,0)/vmlinuxboot 从硬盘加载 load /dev/fs/iso9660@wd0/boot 另外在https://github.com/RT-Thread/rt-thread/tree/master/bsp,rt-thread的相关的bsp包中已经有了ls2c,ls2b板级开发包的支持。
3月27日,全面反映LoongArch产业生态发展最新成果的《龙芯生态白皮书(2022年)》正式对外发布, 白皮书下载地址:https://kdocs.cn/l/ce5Emg1C2pPd ,我将其中涉及到 .NET部分的内容节选出来,可以看到龙芯对.NET的支持的非常的不错,我知道他们有个几十人的.NET编译器团队在全职推进.NET的LoongArch支持,最近我公司(深圳市友浩达科技有限公司)有幸成为龙芯生态伙伴计划成员 ,和龙芯.NET团队一起深耕.NET生态。
$ python --version Python 2.7.16 Python 2 和 Python 3 切换 Python 2 已经不再维护,Python 3 也老早就计划替代 Python 2,但软件升级就是这么难 2 自动模式 1 /usr/bin/python2 2 手动模式 2 /usr/bin/python3 1 Python 没有龙芯架构的发布包,需要从源码编译。 在龙芯架构下执行 ./configure 指令,会出现如下错误: $ . :24 CST 2024" configure: error: cannot guess build type; you must specify one 这是由于较早的 autotools 不支持龙芯架构
我是龙芯汇编指令新手,本文是我学习龙芯汇编的笔记 我借到了一台宝贵的龙芯 3A6000 设备,我期望在这台设备上面学习龙芯汇编指令。 这台设备上的是龙芯旧世界的麒麟系统,由于这台设备很宝贵,我不能随意玩。 为了防止弄坏设备,我将在此设备上面搭建 docker 环境,进入到 docker 容器里面进行开发 在此设备上搭建 docker 环境的方法,详细请看 制作一个龙芯旧世界的 dotnet sdk docker # stdout file descriptor == 1 la $a1, string # string address li.w $a2, 可以使用 QEMU 进行模拟,详细请看 龙芯汇编实验环境搭建 - github.com/foxsen/loongarch-assembly 必须说明的是以上使用 QEMU 进行模拟的做法使用的是龙芯新世界
一、环境介绍 宿主机环境: ubuntu18.04 64位 目标开发板: 龙芯二代(2K1000) 需求说明: 在开发板使用过程中,如果不小心烧写错了POPM,导致开发板没法正常启动,这时候就可以使用 /ejtag_debug_usb -t cpu0 -source configs/config.ls2k cpu0 -program_cachelock 在命令行上一管理员权限运行运行ejtag_debug_usb cpu0 - cpu0 -source configs/config.ls2k 这个是选择开发板的型号。 cpu0 -program_cachelock 这个是执行烧写POPM的指令。
threads 硬盘 120G 内存 8181952 KiB 测试项目 序号 项目 对标 结果 1 SSH/SFTP/RDP等系统终端 SecureCRT,XShell,MobaXterm 成功 2
1、准备工作 1.1、配置yum源 1.2、安装一波编译环境所需要的软件包 1.3、再下载安装几个必要的软件包 2、编译GreatSQL 2.1、编译生成二进制文件包 2.2、编译生成RPM文件包 3、 OS + 龙芯CPU的环境下将GreatSQL源码编译成二进制文件及RPM包等。 本环节是龙芯的同学提供的,已经事先配置过了,忽略。 2.2、编译生成RPM文件包 由于GreatSQL自带的编译脚本还不能适配龙芯环境,所以需要手动编译生成RPM文件包。 龙芯/Loongson - Generic” 标签下载即可。 全文完。
随着信创产业的推进,越来越多的服务器开始采用龙芯3A5000处理器。作为重要的监控工具,Prometheus系统需要在该架构服务器上可靠运行。 编译好的node_exporter下载地址:https://pan.quark.cn/s/e09bc874ff4b 为何要到龙芯机器编译 node_exporter底层语言采用Golang,理论如果不涉及 具体编译过程暂未细看,最终选择直接在龙芯架构的机器上开展编译工作,这样可以有效避免因编译环境与运行环境不一致可能带来的潜在兼容性问题。 因为从官网下载的go各个版本,在公司龙芯3A 5000+UOS/麒麟V10的系统上,一直没法使用,报错:段错误(核心已转储)。 /node_exporter 总结 本文记录了在龙芯3A5000架构服务器上手动编译node_exporter的过程,因官方未提供longarch64版本,需在龙芯机器上直接编译以确保兼容性和稳定性。
龙芯开发板.jpg 1 pmon 进入命令行 进入到 pmon 命令行下我们是开机后通过按键盘上的 C 按键进去的,进到命令行以后,我们就可以使 用 pmon 命令了,如下图所示: 龙芯开发板的常用命令 01.jpg 2 查询命令 在 PMON 命令行下输 h,然后按下回车即可查看当前 PMON 都支持哪些命令,如下图所示: 龙芯开发板的常用命令02.jpg 上图只是 PMON 命令的一部分,我们按回车即可翻页向下继续查看命令列表 我们输入“h 命令名”即可查看命令的详细用法,以 load 这个 命令为例,我们输入 h load 即可查看这个命令的详细用户,如下图所示: 龙芯开发板的常用命令03.jpg 上图就详细列举了 load 3 显示设备信息 PMON 下使用命令 devls 可以列出 PMON 下的设备,如下图所示: 龙芯开发板的常用命令04.jpg 通过上图可以看出,当前 PMON 下的设备有网卡和磁盘,其中 syn0 p=3 龙芯开发板.jpg
1月11日晚间,龙芯中科通过官方微信宣布,其通用SoC芯片——龙芯2K2000 已于 2022 年 12 月完成初步功能调试及性能测试,达到设计目标,已全面展开解决方案调试,近期将推出试用。 据介绍,龙芯 2K2000 采用了龙芯自研的龙架构平台,集成了两个 LA364 处理器核,2MB 共享二级缓存,典型工作频率 1.5GHz。 龙芯 2K2000 还集成了龙芯自研的LG120 GPU 核,进一步优化了图形算法和性能。 初步测试结果显示,龙芯 2K2000 的功耗在高性能模式下约为 9W,平衡性能模式下约为 4W。 龙芯中科表示,将在龙芯 2K2000 设计平台的基础上,开发一系列针对不同细分领域的 SOC 芯片。 此外,龙芯 2K2000 的推出,标志着基于龙芯自主指令系统 LoongArch(简称龙架构)的 CPU 形成了由龙芯 1C102、1C103,2K0500、2K1000LA、2K1500、2K2000
在上一篇《龙芯迷你主机,用来办公怎么样?》中,我分享了用龙芯迷你主机搭配统信 UOS 进行日常办公的体验。这一体验,半年时间就过去了。 最近了解到龙芯有“新世界”与“旧世界”之分,特意去做了一下功课: 旧世界(ABI 1.0) 诞生于龙芯早期过渡阶段,以 MIPS 架构代码为基础改造而成。 “打破旧世界,拥抱新世界”——作为程序员,自然要第一时间尝鲜,于是立刻将这台龙芯迷你主机安装了 Deepin V23 龙芯版(目前仍为 Preview 版本,但足够试水)。 眼下,绝大多数龙芯架构应用都只面向旧世界 ABI 开发。 本来龙芯架构上的应用就少,再这么折腾,更是要吓走用户。
CPU是首款真正的国产,龙芯2F,兼容mips的指令集。 笔记本原来的操作系统是Debian6,后来升级到了7,随后一直是当做玩具放着。 网址为:http://mirrors.ustc.edu.cn/debian/dists/Debian8.10/main/installer-mipsel/current/images/loongson-2f 基本安装 下载完上述链接中的initrd.gz/vmlinux-3.16.0-4-loongson-2f两个文件放入到当做服务器的电脑TFTP根目录。 注意因为Debian也在不断的更新中,路径、精确的版本号可能都在变化,所以不用太纠结细微的差别,通常只要对应版本的Debian提供了loongson-2f芯片的netboot文件,就应当可以顺利安装。 192.168.1.100/vmlinux-3.16.0-4-loongson-2f #载入根文件系统 initrd tftp://192.168.1.100/initrd.gz #使用载入的内核及根文件系统引导龙芯笔记本