.. SPDX-License-Identifier: GPL-2.0 .. include:: ../../disclaimer-zh_TW.rst :Original: Documentation/arch/loongarch/introduction.rst :Translator: Huacai Chen <chenhuacai@loongson.cn> ============= LoongArch介紹 ============= LoongArch是一種新的RISC ISA,在一定程度上類似於MIPSå’ŒRISC-V。LoongArch指令集 包括一個精簡32ä½ç‰ˆï¼ˆLA32R)ã€ä¸€å€‹æ¨™æº–32ä½ç‰ˆï¼ˆLA32S)ã€ä¸€å€‹64ä½ç‰ˆï¼ˆLA64)。 LoongArch定義了四個特權級(PLV0~PLV3),其ä¸PLV0æ˜¯æœ€é«˜ç‰¹æ¬Šç´šï¼Œç”¨æ–¼å…§æ ¸ï¼›è€ŒPLV3 是最低特權級,用於應用程åºã€‚本文檔介紹了LoongArch的寄å˜å™¨ã€åŸºç¤ŽæŒ‡ä»¤é›†ã€è™›æ“¬å…§ å˜ä»¥åŠå…¶ä»–一些主題。 寄å˜å™¨ ====== LoongArch的寄å˜å™¨åŒ…括通用寄å˜å™¨ï¼ˆGPRs)ã€æµ®é»žå¯„å˜å™¨ï¼ˆFPRs)ã€å‘é‡å¯„å˜å™¨ï¼ˆVRs) 和用於特權模å¼ï¼ˆPLV0)的控制狀態寄å˜å™¨ï¼ˆCSRs)。 通用寄å˜å™¨ ---------- LoongArch包括32個通用寄å˜å™¨ï¼ˆ ``$r0`` ~ ``$r31`` ),LA32ä¸æ¯å€‹å¯„å˜å™¨çˆ²32ä½å¯¬ï¼Œ LA64ä¸æ¯å€‹å¯„å˜å™¨çˆ²64ä½å¯¬ã€‚ ``$r0`` 的內容總是固定爲0,而其他寄å˜å™¨åœ¨é«”ç³»çµæ§‹å±¤é¢ 沒有特殊功能。( ``$r1`` 算是一個例外,在BL指令ä¸å›ºå®šç”¨ä½œéˆæŽ¥è¿”回寄å˜å™¨ã€‚) å…§æ ¸ä½¿ç”¨äº†ä¸€å¥—LoongArch寄å˜å™¨ç´„定,定義在LoongArch ELF psABIè¦ç¯„ä¸ï¼Œè©³ç´°æè¿°åƒè¦‹ :ref:`åƒè€ƒæ–‡ç» <loongarch-references-zh_TW>`: ================= =============== =================== ========== 寄å˜å™¨å 別å 用途 跨調用ä¿æŒ ================= =============== =================== ========== ``$r0`` ``$zero`` 常é‡0 ä¸ä½¿ç”¨ ``$r1`` ``$ra`` è¿”å›žåœ°å€ å¦ ``$r2`` ``$tp`` TLS/線程信æ¯æŒ‡é‡ ä¸ä½¿ç”¨ ``$r3`` ``$sp`` æ£§æŒ‡é‡ æ˜¯ ``$r4``-``$r11`` ``$a0``-``$a7`` åƒæ•¸å¯„å˜å™¨ å¦ ``$r4``-``$r5`` ``$v0``-``$v1`` 返回值 å¦ ``$r12``-``$r20`` ``$t0``-``$t8`` 臨時寄å˜å™¨ å¦ ``$r21`` ``$u0`` æ¯CPU變é‡åŸºåœ°å€ ä¸ä½¿ç”¨ ``$r22`` ``$fp`` å¹€æŒ‡é‡ æ˜¯ ``$r23``-``$r31`` ``$s0``-``$s8`` éœæ…‹å¯„å˜å™¨ 是 ================= =============== =================== ========== .. note:: 注æ„: ``$r21`` 寄å˜å™¨åœ¨ELF psABIä¸ä¿ç•™æœªä½¿ç”¨ï¼Œä½†æ˜¯åœ¨Linuxå…§æ ¸ç”¨æ–¼ä¿ å˜æ¯CPU變é‡åŸºåœ°å€ã€‚該寄å˜å™¨æ²’有ABI命å,ä¸éŽåœ¨å…§æ ¸ä¸ç¨±çˆ² ``$u0`` 。在 一些éºç•™ä»£ç¢¼ä¸æœ‰æ™‚å¯èƒ½è¦‹åˆ° ``$v0`` å’Œ ``$v1`` ,它們是 ``$a0`` å’Œ ``$a1`` 的別å,屬於已經廢棄的用法。 浮點寄å˜å™¨ ---------- 當系統ä¸å˜åœ¨FPU時,LoongArch有32個浮點寄å˜å™¨ï¼ˆ ``$f0`` ~ ``$f31`` )。在LA64 çš„CPUæ ¸ä¸Šï¼Œæ¯å€‹å¯„å˜å™¨å‡çˆ²64ä½å¯¬ã€‚ 浮點寄å˜å™¨çš„使用約定與LoongArch ELF psABIè¦ç¯„çš„æ述相åŒï¼š ================= ================== =================== ========== 寄å˜å™¨å 別å 用途 跨調用ä¿æŒ ================= ================== =================== ========== ``$f0``-``$f7`` ``$fa0``-``$fa7`` åƒæ•¸å¯„å˜å™¨ å¦ ``$f0``-``$f1`` ``$fv0``-``$fv1`` 返回值 å¦ ``$f8``-``$f23`` ``$ft0``-``$ft15`` 臨時寄å˜å™¨ å¦ ``$f24``-``$f31`` ``$fs0``-``$fs7`` éœæ…‹å¯„å˜å™¨ 是 ================= ================== =================== ========== .. note:: 注æ„:在一些éºç•™ä»£ç¢¼ä¸æœ‰æ™‚å¯èƒ½è¦‹åˆ° ``$fv0`` å’Œ ``$fv1`` ,它們是 ``$fa0`` å’Œ ``$fa1`` 的別å,屬於已經廢棄的用法。 å‘é‡å¯„å˜å™¨ ---------- LoongArchç¾æœ‰å…©ç¨®å‘é‡æ“´å±•ï¼š - 128ä½å‘é‡æ“´å±•LSX(全稱Loongson SIMD eXtention), - 256ä½å‘é‡æ“´å±•LASX(全稱Loongson Advanced SIMD eXtention)。 LSX使用 ``$v0`` ~ ``$v31`` å‘é‡å¯„å˜å™¨ï¼Œè€ŒLASX則使用 ``$x0`` ~ ``$x31`` 。 浮點寄å˜å™¨å’Œå‘é‡å¯„å˜å™¨æ˜¯è¤‡ç”¨çš„,比如:在一個實ç¾äº†LSXå’ŒLASXçš„æ ¸ä¸Šï¼Œ ``$x0`` çš„ 低128ä½èˆ‡ ``$v0`` 共用, ``$v0`` 的低64ä½èˆ‡ ``$f0`` 共用,其他寄å˜å™¨ä¾æ¤é¡žæŽ¨ã€‚ 控制狀態寄å˜å™¨ -------------- 控制狀態寄å˜å™¨åªèƒ½åœ¨ç‰¹æ¬Šæ¨¡å¼ï¼ˆPLV0)下訪å•: ================= ==================================== ========== åœ°å€ å…¨ç¨±æè¿° 簡稱 ================= ==================================== ========== 0x0 當å‰æ¨¡å¼ä¿¡æ¯ CRMD 0x1 異常å‰æ¨¡å¼ä¿¡æ¯ PRMD 0x2 擴展部件使能 EUEN 0x3 é›œé …æŽ§åˆ¶ MISC 0x4 異常é…ç½® ECFG 0x5 異常狀態 ESTAT 0x6 ç•°å¸¸è¿”å›žåœ°å€ ERA 0x7 出錯(Faulting)è™›æ“¬åœ°å€ BADV 0x8 出錯(Faulting)æŒ‡ä»¤å— BADI 0xC 異常入å£åœ°å€ EENTRY 0x10 TLB索引 TLBIDX 0x11 TLBè¡¨é …é«˜ä½ TLBEHI 0x12 TLBè¡¨é …ä½Žä½0 TLBELO0 0x13 TLBè¡¨é …ä½Žä½1 TLBELO1 0x18 地å€ç©ºé–“標è˜ç¬¦ ASID 0x19 低åŠåœ°å€ç©ºé–“é å…¨å±€ç›®éŒ„åŸºå€ PGDL 0x1A 高åŠåœ°å€ç©ºé–“é å…¨å±€ç›®éŒ„åŸºå€ PGDH 0x1B é å…¨å±€ç›®éŒ„åŸºå€ PGD 0x1C é 表éæ·æŽ§åˆ¶ä½ŽåŠéƒ¨åˆ† PWCL 0x1D é 表éæ·æŽ§åˆ¶é«˜åŠéƒ¨åˆ† PWCH 0x1E STLBé å¤§å° STLBPS 0x1F 縮減虛地å€é…ç½® RVACFG 0x20 CPU編號 CPUID 0x21 特權資æºé…置信æ¯1 PRCFG1 0x22 特權資æºé…置信æ¯2 PRCFG2 0x23 特權資æºé…置信æ¯3 PRCFG3 0x30+n (0≤n≤15) 數據ä¿å˜å¯„å˜å™¨ SAVEn 0x40 定時器編號 TID 0x41 定時器é…ç½® TCFG 0x42 定時器值 TVAL 0x43 計時器補償 CNTC 0x44 定時器ä¸æ–·æ¸…除 TICLR 0x60 LLBit相關控制 LLBCTL 0x80 實ç¾ç›¸é—œæŽ§åˆ¶1 IMPCTL1 0x81 實ç¾ç›¸é—œæŽ§åˆ¶2 IMPCTL2 0x88 TLBé‡å¡«ç•°å¸¸å…¥å£åœ°å€ TLBRENTRY 0x89 TLBé‡å¡«ç•°å¸¸å‡ºéŒ¯(Faulting)è™›åœ°å€ TLBRBADV 0x8A TLBé‡å¡«ç•°å¸¸è¿”å›žåœ°å€ TLBRERA 0x8B TLBé‡å¡«ç•°å¸¸æ•¸æ“šä¿å˜ TLBRSAVE 0x8C TLBé‡å¡«ç•°å¸¸è¡¨é …低ä½0 TLBRELO0 0x8D TLBé‡å¡«ç•°å¸¸è¡¨é …低ä½1 TLBRELO1 0x8E TLBé‡å¡«ç•°å¸¸è¡¨é …é«˜ä½ TLBEHI 0x8F TLBé‡å¡«ç•°å¸¸å‰æ¨¡å¼ä¿¡æ¯ TLBRPRMD 0x90 機器錯誤控制 MERRCTL 0x91 機器錯誤信æ¯1 MERRINFO1 0x92 機器錯誤信æ¯2 MERRINFO2 0x93 機器錯誤異常入å£åœ°å€ MERRENTRY 0x94 æ©Ÿå™¨éŒ¯èª¤ç•°å¸¸è¿”å›žåœ°å€ MERRERA 0x95 機器錯誤異常數據ä¿å˜ MERRSAVE 0x98 高速緩å˜æ¨™ç±¤ CTAG 0x180+n (0≤n≤3) ç›´æŽ¥æ˜ å°„é…置窗å£n DMWn 0x200+2n (0≤n≤31) 性能監測é…ç½®n PMCFGn 0x201+2n (0≤n≤31) 性能監測計數器n PMCNTn 0x300 å…§å˜è®€å¯«ç›£è¦–點整體控制 MWPC 0x301 å…§å˜è®€å¯«ç›£è¦–點整體狀態 MWPS 0x310+8n (0≤n≤7) å…§å˜è®€å¯«ç›£è¦–點né…ç½®1 MWPnCFG1 0x311+8n (0≤n≤7) å…§å˜è®€å¯«ç›£è¦–點né…ç½®2 MWPnCFG2 0x312+8n (0≤n≤7) å…§å˜è®€å¯«ç›£è¦–點né…ç½®3 MWPnCFG3 0x313+8n (0≤n≤7) å…§å˜è®€å¯«ç›£è¦–點né…ç½®4 MWPnCFG4 0x380 å–指監視點整體控制 FWPC 0x381 å–指監視點整體狀態 FWPS 0x390+8n (0≤n≤7) å–指監視點né…ç½®1 FWPnCFG1 0x391+8n (0≤n≤7) å–指監視點né…ç½®2 FWPnCFG2 0x392+8n (0≤n≤7) å–指監視點né…ç½®3 FWPnCFG3 0x393+8n (0≤n≤7) å–指監視點né…ç½®4 FWPnCFG4 0x500 調試寄å˜å™¨ DBG 0x501 èª¿è©¦ç•°å¸¸è¿”å›žåœ°å€ DERA 0x502 調試數據ä¿å˜ DSAVE ================= ==================================== ========== ERA,TLBRERA,MERRERAå’ŒDERA有時也分別稱爲EPC,TLBREPC,MERREPCå’ŒDEPC。 基礎指令集 ========== æŒ‡ä»¤æ ¼å¼ -------- LoongArch的指令å—長爲32ä½ï¼Œä¸€å…±æœ‰9ç¨®åŸºæœ¬æŒ‡ä»¤æ ¼å¼ï¼ˆä»¥åŠä¸€äº›è®Šé«”): =========== ========================== æ ¼å¼å稱 æŒ‡ä»¤æ§‹æˆ =========== ========================== 2R Opcode + Rj + Rd 3R Opcode + Rk + Rj + Rd 4R Opcode + Ra + Rk + Rj + Rd 2RI8 Opcode + I8 + Rj + Rd 2RI12 Opcode + I12 + Rj + Rd 2RI14 Opcode + I14 + Rj + Rd 2RI16 Opcode + I16 + Rj + Rd 1RI21 Opcode + I21L + Rj + I21H I26 Opcode + I26L + I26H =========== ========================== Opcode是指令æ“作碼,Rjå’ŒRk是æºæ“作數(寄å˜å™¨ï¼‰ï¼ŒRd是目標æ“作數(寄å˜å™¨ï¼‰ï¼ŒRa是 4R-typeæ ¼å¼ç‰¹æœ‰çš„é™„åŠ æ“作數(寄å˜å™¨ï¼‰ã€‚I8/I12/I14/I16/I21/I26分別是8ä½/12ä½/14ä½/ 16ä½/21ä½/26ä½çš„ç«‹å³æ•¸ã€‚å…¶ä¸è¼ƒé•·çš„21ä½å’Œ26ä½ç«‹å³æ•¸åœ¨æŒ‡ä»¤å—ä¸è¢«åˆ†å‰²çˆ²é«˜ä½éƒ¨åˆ†èˆ‡ä½Žä½ éƒ¨åˆ†ï¼Œæ‰€ä»¥ä½ å€‘åœ¨é€™è£çš„æ ¼å¼æè¿°ä¸èƒ½å¤ 看到I21L/I21Hå’ŒI26L/I26H這樣帶後綴的表述。 指令列表 -------- 爲了簡便起見,我們在æ¤åªç¾…列一下指令å稱(助記符),需è¦è©³ç´°ä¿¡æ¯è«‹é–±è®€ :ref:`åƒè€ƒæ–‡ç» <loongarch-references-zh_TW>` ä¸çš„文檔。 1. ç®—è¡“é‹ç®—指令:: ADD.W SUB.W ADDI.W ADD.D SUB.D ADDI.D SLT SLTU SLTI SLTUI AND OR NOR XOR ANDN ORN ANDI ORI XORI MUL.W MULH.W MULH.WU DIV.W DIV.WU MOD.W MOD.WU MUL.D MULH.D MULH.DU DIV.D DIV.DU MOD.D MOD.DU PCADDI PCADDU12I PCADDU18I LU12I.W LU32I.D LU52I.D ADDU16I.D 2. 移ä½é‹ç®—指令:: SLL.W SRL.W SRA.W ROTR.W SLLI.W SRLI.W SRAI.W ROTRI.W SLL.D SRL.D SRA.D ROTR.D SLLI.D SRLI.D SRAI.D ROTRI.D 3. ä½åŸŸæ“作指令:: EXT.W.B EXT.W.H CLO.W CLO.D SLZ.W CLZ.D CTO.W CTO.D CTZ.W CTZ.D BYTEPICK.W BYTEPICK.D BSTRINS.W BSTRINS.D BSTRPICK.W BSTRPICK.D REVB.2H REVB.4H REVB.2W REVB.D REVH.2W REVH.D BITREV.4B BITREV.8B BITREV.W BITREV.D MASKEQZ MASKNEZ 4. 分支轉移指令:: BEQ BNE BLT BGE BLTU BGEU BEQZ BNEZ B BL JIRL 5. 訪å˜è®€å¯«æŒ‡ä»¤:: LD.B LD.BU LD.H LD.HU LD.W LD.WU LD.D ST.B ST.H ST.W ST.D LDX.B LDX.BU LDX.H LDX.HU LDX.W LDX.WU LDX.D STX.B STX.H STX.W STX.D LDPTR.W LDPTR.D STPTR.W STPTR.D PRELD PRELDX 6. 原åæ“作指令:: LL.W SC.W LL.D SC.D AMSWAP.W AMSWAP.D AMADD.W AMADD.D AMAND.W AMAND.D AMOR.W AMOR.D AMXOR.W AMXOR.D AMMAX.W AMMAX.D AMMIN.W AMMIN.D 7. 柵障指令:: IBAR DBAR 8. 特殊指令:: SYSCALL BREAK CPUCFG NOP IDLE ERTN(ERET) DBCL(DBGCALL) RDTIMEL.W RDTIMEH.W RDTIME.D ASRTLE.D ASRTGT.D 9. 特權指令:: CSRRD CSRWR CSRXCHG IOCSRRD.B IOCSRRD.H IOCSRRD.W IOCSRRD.D IOCSRWR.B IOCSRWR.H IOCSRWR.W IOCSRWR.D CACOP TLBP(TLBSRCH) TLBRD TLBWR TLBFILL TLBCLR TLBFLUSH INVTLB LDDIR LDPTE è™›æ“¬å…§å˜ ======== LoongArchå¯ä»¥ä½¿ç”¨ç›´æŽ¥æ˜ 射虛擬內å˜å’Œåˆ†é æ˜ å°„è™›æ“¬å…§å˜ã€‚ ç›´æŽ¥æ˜ å°„è™›æ“¬å…§å˜é€šéŽCSR.DMWn(n=0~3)來進行é…置,虛擬地å€ï¼ˆVA)和物ç†åœ°å€ï¼ˆPA) ä¹‹é–“æœ‰ç°¡å–®çš„æ˜ å°„é—œä¿‚:: VA = PA + 固定å移 分é æ˜ å°„çš„è™›æ“¬åœ°å€ï¼ˆVA)和物ç†åœ°å€ï¼ˆPA)有任æ„çš„æ˜ å°„é—œä¿‚ï¼Œé€™ç¨®é—œä¿‚è¨˜éŒ„åœ¨TLBå’Œé 表ä¸ã€‚LoongArchçš„TLB包括一個全相è¯çš„MTLB(Multiple Page Size TLB,多樣é 大å°TLB) 和一個組相è¯çš„STLB(Single Page Size TLB,單一é 大å°TLB)。 缺çœç‹€æ…‹ä¸‹ï¼ŒLA32的整個虛擬地å€ç©ºé–“é…置如下: ============ =========================== =========================== å€æ®µå 地å€ç¯„åœ å±¬æ€§ ============ =========================== =========================== ``UVRANGE`` ``0x00000000 - 0x7FFFFFFF`` 分é æ˜ å°„, å¯ç·©å˜, PLV0~3 ``KPRANGE0`` ``0x80000000 - 0x9FFFFFFF`` ç›´æŽ¥æ˜ å°„, éžç·©å˜, PLV0 ``KPRANGE1`` ``0xA0000000 - 0xBFFFFFFF`` ç›´æŽ¥æ˜ å°„, å¯ç·©å˜, PLV0 ``KVRANGE`` ``0xC0000000 - 0xFFFFFFFF`` 分é æ˜ å°„, å¯ç·©å˜, PLV0 ============ =========================== =========================== 用戶態(PLV3)åªèƒ½è¨ªå•UVRANGE,å°æ–¼ç›´æŽ¥æ˜ å°„çš„KPRANGE0å’ŒKPRANGE1,將虛擬地å€çš„第 30~31ä½æ¸…零就ç‰æ–¼ç‰©ç†åœ°å€ã€‚例如:物ç†åœ°å€0x00001000å°æ‡‰çš„éžç·©å˜ç›´æŽ¥æ˜ å°„è™›æ“¬åœ°å€ æ˜¯0x80001000,而其å¯ç·©å˜ç›´æŽ¥æ˜ 射虛擬地å€æ˜¯0xA0001000。 缺çœç‹€æ…‹ä¸‹ï¼ŒLA64的整個虛擬地å€ç©ºé–“é…置如下: ============ ====================== ================================== å€æ®µå 地å€ç¯„åœ å±¬æ€§ ============ ====================== ================================== ``XUVRANGE`` ``0x0000000000000000 - 分é æ˜ å°„, å¯ç·©å˜, PLV0~3 0x3FFFFFFFFFFFFFFF`` ``XSPRANGE`` ``0x4000000000000000 - ç›´æŽ¥æ˜ å°„, å¯ç·©å˜ / éžç·©å˜, PLV0 0x7FFFFFFFFFFFFFFF`` ``XKPRANGE`` ``0x8000000000000000 - ç›´æŽ¥æ˜ å°„, å¯ç·©å˜ / éžç·©å˜, PLV0 0xBFFFFFFFFFFFFFFF`` ``XKVRANGE`` ``0xC000000000000000 - 分é æ˜ å°„, å¯ç·©å˜, PLV0 0xFFFFFFFFFFFFFFFF`` ============ ====================== ================================== 用戶態(PLV3)åªèƒ½è¨ªå•XUVRANGE,å°æ–¼ç›´æŽ¥æ˜ å°„çš„XSPRANGEå’ŒXKPRANGE,將虛擬地å€çš„第 60~63ä½æ¸…零就ç‰æ–¼ç‰©ç†åœ°å€ï¼Œè€Œå…¶ç·©å˜å±¬æ€§æ˜¯é€šéŽè™›æ“¬åœ°å€çš„第60~61ä½é…置的(0è¡¨ç¤ºå¼·åº éžç·©å˜ï¼Œ1表示一致å¯ç·©å˜ï¼Œ2表示弱åºéžç·©å˜ï¼‰ã€‚ ç›®å‰ï¼Œæˆ‘們僅用XKPRANGEä¾†é€²è¡Œç›´æŽ¥æ˜ å°„ï¼ŒXSPRANGEä¿ç•™çµ¦ä»¥å¾Œç”¨ã€‚ æ¤è™•çµ¦å‡ºä¸€å€‹ç›´æŽ¥æ˜ 射的例å:物ç†åœ°å€0x00000000_00001000çš„å¼·åºéžç·©å˜ç›´æŽ¥æ˜ å°„è™›æ“¬åœ°å€ ï¼ˆåœ¨XKPRANGEä¸ï¼‰æ˜¯0x80000000_00001000,其一致å¯ç·©å˜ç›´æŽ¥æ˜ 射虛擬地å€ï¼ˆåœ¨XKPRANGEä¸ï¼‰ 是0x90000000_00001000,而其弱åºéžç·©å˜ç›´æŽ¥æ˜ 射虛擬地å€ï¼ˆåœ¨XKPRANGEä¸ï¼‰æ˜¯0xA0000000_ 00001000。 Loongson與LoongArch的關係 ========================= LoongArch是一種RISC指令集架構(ISA),ä¸åŒæ–¼ç¾å˜çš„任何一種ISA,而Loongson(å³é¾ 芯)是一個處ç†å™¨å®¶æ—。é¾èŠ¯åŒ…括三個系列:Loongson-1(é¾èŠ¯1號)是32ä½è™•ç†å™¨ç³»åˆ—, Loongson-2(é¾èŠ¯2號)是低端64ä½è™•ç†å™¨ç³»åˆ—,而Loongson-3(é¾èŠ¯3號)是高端64ä½è™•ç† 器系列。舊的é¾èŠ¯è™•ç†å™¨åŸºæ–¼MIPS架構,而新的é¾èŠ¯è™•ç†å™¨åŸºæ–¼LoongArch架構。以é¾èŠ¯3號 爲例:é¾èŠ¯3A1000/3B1500/3A2000/3A3000/3A4000都是兼容MIPS的,而é¾èŠ¯3A5000(以åŠå°‡ 來的型號)都是基於LoongArch的。 .. _loongarch-references-zh_TW: åƒè€ƒæ–‡ç» ======== Loongson官方網站(é¾èŠ¯ä¸ç§‘技術股份有é™å…¬å¸ï¼‰ï¼š http://www.loongson.cn/ Loongson與LoongArch的開發者網站(軟件與文檔資æºï¼‰ï¼š http://www.loongnix.cn/ https://github.com/loongson/ https://loongson.github.io/LoongArch-Documentation/ LoongArch指令集架構的文檔: https://github.com/loongson/LoongArch-Documentation/releases/latest/download/LoongArch-Vol1-v1.02-CN.pdf (ä¸æ–‡ç‰ˆï¼‰ https://github.com/loongson/LoongArch-Documentation/releases/latest/download/LoongArch-Vol1-v1.02-EN.pdf (英文版) LoongArchçš„ELF psABI文檔: https://github.com/loongson/LoongArch-Documentation/releases/latest/download/LoongArch-ELF-ABI-v2.01-CN.pdf (ä¸æ–‡ç‰ˆï¼‰ https://github.com/loongson/LoongArch-Documentation/releases/latest/download/LoongArch-ELF-ABI-v2.01-EN.pdf (英文版) Loongson與LoongArchçš„Linuxå…§æ ¸æºç¢¼å€‰åº«ï¼š https://git.kernel.org/pub/scm/linux/kernel/git/chenhuacai/linux-loongson.git