WH-nembo

Microprocessor ya WH V3

WH-V3-Microprocessor-PRO

Vipimo

  • Mfano wa Microprocessor: QingKeV3
  • Toleo: V1.2
  • Vipengele vya ISA:
    • FPU ya bomba
    • Utabiri wa tawi
    • Kataza usaidizi
    • Ulinzi wa Kumbukumbu ya Kimwili wa HPE (PMP)
    • Hali ya matumizi ya nguvu ya chini
    • Utatuzi wa Maagizo Yanayoongezwa

Maagizo ya Matumizi ya Bidhaa

Zaidiview ya QingKe V3 Microprocessor

Vichakataji vidogo vya mfululizo wa QingKe V3 vinajumuisha mifano V3A, V3B, na V3C. Kila mfano una sifa maalum na tofauti kulingana na matumizi yake.

Seti ya Maagizo

Seti ya maagizo ya RV32I inajumuisha seti 32 za rejista kutoka x0 hadi x31. Mfululizo wa V3 hauauni kiendelezi cha sehemu inayoelea (F). Kila rejista ina ukubwa wa biti 32.

Seti ya Usajili

Seti ya rejista ya RV32I ina rejista zifuatazo.

  • x0: Nambari ngumu 0
  • x1: Rudisha anwani
  • x2: Kielekezi cha rafu
  • x3: Kiashiria cha ulimwengu
  • x4: Kielekezi cha thread
  • x5-x7: Rejesta za muda
  • x8: Hifadhi kiashiria cha rejista / fremu
  • x9: Hifadhi vigezo vya rejista/kazi/thamani za kurejesha
  • x10-x11: Vigezo vya kazi
  • x12-x17: Hifadhi rejista
  • x18-x27: Rejesta za muda
  • x28-x31: Daftari za anayepiga/Callee

Hali ya Upendeleo

Usanifu wa kawaida wa RISC-V unajumuisha njia tatu za upendeleo: Modi ya Mashine, Hali ya Msimamizi, na Hali ya Mtumiaji. Vichakataji vidogo vya mfululizo wa QingKe V3 vinaunga mkono modi ya Mashine na hali ya Msimamizi.

Maswali Yanayoulizwa Mara Kwa Mara

Swali: Je, ni aina gani tofauti katika vichakataji vidogo vya mfululizo wa QingKe V3?

A: Mfululizo wa QingKe V3 unajumuisha miundo ya V3A, V3B, na V3C, kila moja ikiwa na vipengele maalum na tofauti zilizoelezwa kwa kina katika mwongozo wa mtumiaji.

Swali: Ni seti ngapi za rejista zinapatikana katika seti ya maagizo ya RV32I?

A: Seti ya maagizo ya RV32I hutoa seti 32 za rejista kutoka x0 hadi x31.

Swali: Ni aina gani za upendeleo zinazoungwa mkono na microprocessor ya QingKe V3?

A: Vichakataji vidogo vya mfululizo wa QingKe V3 vinaauni modi ya Mashine na Hali ya Msimamizi kama sehemu ya usanifu wa RISC-V.

Zaidiview

Vichakataji vidogo vya mfululizo wa QingKe V3 ni vichakataji vidogo vya MCU vya madhumuni ya jumla ya 32-bit kulingana na usanifu wa kawaida wa seti ya maagizo ya RISC-V. Mfululizo huu unajumuisha V3A, V3B na V3C, ambapo V3A inaauni upanuzi wa kuweka maagizo ya kiwango cha RV32IMAC na V3B/C inasaidia upanuzi wa seti ya maagizo ya kiwango cha RV32IMCB na upanuzi wa seti ya maagizo ya XW. Zote mbili zinaauni kuzidisha kwa mzunguko mmoja na mgawanyiko wa maunzi, pamoja na rundo la shinikizo la maunzi (HPE), usumbufu usio na jedwali (VTF), miingiliano ya utatuzi ya waya 1- na 2 iliyoratibiwa, maagizo ya "WFE", na vipengele vingine maalum. Kwa kuongezea, inasaidia pia Dibaji ya Vifaa/Epilogue (HPE), Vekta Jedwali Isiyolipishwa (VTF), kiolesura kilichorahisishwa cha utatuzi wa waya 1-/2, na usaidizi wa maagizo ya "WFE".

Vipengele

Vipengele Maelezo
ISA RV32IM[A]C[B]
Bomba 3
FPU Haitumiki
Utabiri wa tawi Utabiri wa tawi tuli
Katiza Inasaidia jumla ya kukatizwa 256 ikijumuisha vighairi, na inasaidia VTF
HPE Msaada viwango 2 vya HPE
Ulinzi wa Kumbukumbu ya Kimwili (PMP) Imeungwa mkono
Hali ya matumizi ya nguvu ya chini Inasaidia hali za Usingizi na Usingizi Mzito, na usaidie mbinu za kulala za WFI na WFE
Seti ya Maagizo Iliyoongezwa Imeungwa mkono
Tatua SDI ya waya 1/2, utatuzi wa kawaida wa RISC-V

Zaidiview

Microprocessors za mfululizo wa QingKe V3 ni pamoja na V3A, V3B, na V3C, kuna tofauti kadhaa kati ya safu kulingana na programu, tofauti maalum zimefafanuliwa katika Jedwali 1-1.

Jedwali 1-1 Zaidiview ya QingKe V3 microprocessor

Kipengele Mfano ISA Idadi ya viwango vya HPE Kukatizwa kiota idadi ya viwango VTF idadi ya vituo Bomba Vekta hali ya meza Mwongozo uliopanuliwa (XW) Idadi ya maeneo ya ulinzi wa kumbukumbu
V3A RV32IMAC 2 2 4 3 Maagizo × ×
V3B RV32IMCB 2 2 4 3 Anwani/ Maagizo ×
V3C RV32IMCB 2 2 4 3 Anwani/ Maagizo 4

Kumbuka: Kubadilisha kazi ya OS kwa ujumla hutumia kusukuma kwa rafu, ambayo sio tu kwa idadi ya viwango

Seti ya Maagizo

  • Vichakataji vidogo vya mfululizo wa QingKe V3 hufuata Usanifu wa Kawaida wa Seti ya Maagizo ya RISC-V (ISA). Nyaraka za kina za kiwango hicho zinaweza kupatikana katika "Mwongozo wa Seti ya Maagizo ya RISC-V, Juzuu ya I: Kiwango cha Mtumiaji ISA, Toleo la Hati 2.2" kwenye RISC-V International. webtovuti. Seti ya maagizo ya RISC-V ina usanifu rahisi na inasaidia muundo wa msimu, unaoruhusu mchanganyiko unaonyumbulika kulingana na mahitaji tofauti, na safu ya V3 inasaidia upanuzi wa seti zifuatazo za maagizo.
  • RV32: Usanifu wa 32-bit, rejista ya madhumuni ya jumla upana wa biti 32
  • I: Uendeshaji wa uundaji wa usaidizi, na rejista 32 za kuunda
  • M: Saidia kuunda maagizo ya kuzidisha na mgawanyiko
  • A: Kusaidia amri za atomiki
  • C: Saidia maagizo ya ukandamizaji wa 16-bit
  • B: Msaada kwa maagizo ya kudanganywa kidogo
  • XW: Maagizo ya ukandamizaji wa biti 16 kwa shughuli za kujitanua za byte na nusu-neno

Kumbuka:

  • Sehemu ndogo ya maagizo inayoungwa mkono na mifano tofauti inaweza kuwa tofauti, tafadhali rejelea Jedwali 1-1 kwa maelezo;
  • Ili kuboresha zaidi msongamano wa msimbo, panua kitengo kidogo cha XW, ongeza maagizo ya mbano yafuatayo c.lbu/c.lhu/c.sb/c.sh/c.lbusp/c.lhusp/c.sbsp/c.shop , matumizi ambayo yanahitaji kutegemea mkusanyaji wa MRS au mnyororo wa zana unaotoa;
  • V3B inasaidia kutoa maagizo ya neno (32bit) kutoka kwa neno mbili (64bit) na kutoa maagizo ya neno (32bit) kutoka kwa matokeo ya kuzidisha (64bit). Mbinu mahususi ya utumiaji inaweza kurejelea utendakazi wa maktaba na kushirikiana na mkusanyaji wa MRS au mnyororo wa zana uliotolewa nayo;
  • V3B/C inasaidia maagizo ya kunakili kumbukumbu. Kwa matumizi mahususi, tafadhali rejelea utendaji wa maktaba na ushirikiane na mkusanyaji wa MRS au mnyororo wake wa zana.

Seti ya Usajili

RV32I ina seti 32 za usajili kutoka x0-x31. Mfululizo wa V3 hautumii kiendelezi cha "F", yaani, hakuna rejista ya sehemu zinazoelea. Katika RV32, kila rejista ni 32 bits. Jedwali 1-2 hapa chini linaorodhesha rejista za RV32I na maelezo yao.

Jedwali 1-2 rejista za RISC-V

Sajili Jina la ABI Maelezo Mhifadhi
x0 sufuri Nambari ngumu 0
x1 ra Rudisha anwani Mwita
x2 sp Kiashiria cha mrundikano Calee
x3 GP Kiashiria cha ulimwengu
x4 tp Kielekezi cha thread
x5-7 t0-2 Daftari la muda Mwita
x8 s0/fp Hifadhi kiashiria cha rejista / fremu Calee
x9 s1 Hifadhi rejista Calee
x10-11 a0-1 Vigezo vya kazi/thamani za kurejesha Mwita
x12-17 a2-7 Vigezo vya kazi Mwita
x18-27 a2-11 Hifadhi rejista Calee
X28-31 t3-6 Daftari la muda Mwita

Sifa ya Mpigaji katika jedwali hapo juu ina maana kwamba utaratibu unaoitwa hauhifadhi thamani ya rejista, na sifa ya Callee ina maana kwamba utaratibu unaoitwa huhifadhi rejista.

Hali ya Upendeleo

  • Usanifu wa kawaida wa RISC-V unajumuisha modi tatu zilizobahatika: Hali ya Mashine, Hali ya Msimamizi, na Hali ya Mtumiaji, kama inavyoonyeshwa katika Jedwali 1-3 hapa chini.
  • Hali ya mashine ni ya lazima, na aina nyingine ni za hiari. Kwa maelezo zaidi, unaweza kurejelea Mwongozo wa RISC-V Set Manual Volume II: Usanifu wa Upendeleo”, ambao unaweza kupakuliwa bila malipo kutoka kwa RISC-V International. webtovuti.

Jedwali 1-3 hali ya upendeleo ya usanifu wa RISC-V

Kanuni Jina Vifupisho
0b00 Hali ya Mtumiaji U
0b01 Mfano wa Msimamizi S
0b10 Imehifadhiwa Imehifadhiwa
0b11 Hali ya mashine M
  • Vichakataji vidogo vya mfululizo wa QingKe V3 vinaunga mkono aina mbili kati ya hizi zilizobahatika.

Hali ya mashine

  • Hali ya mashine ndiyo yenye mamlaka ya juu zaidi, programu katika hali hii inaweza kufikia Daftari zote za Udhibiti na Hali (CSR), lakini pia inaweza kufikia maeneo yote ya anwani halisi.
  • Chaguo-msingi ya kuwasha iko katika hali ya mashine, wakati utekelezaji wa mret (maelekezo ya kurejesha hali ya mashine) yanarudi, kulingana na hali ya rejista ya CSR (rejista ya hali ya mashine) kwenye bit ya MPP, ikiwa MPP = 0b00, kisha uondoke kwenye modi ya Mashine. kwenye modi ya Mtumiaji, MPP = 0b11, kisha uendelee kuhifadhi hali ya Mashine.

Hali ya mtumiaji

  • Hali ya mtumiaji ina fursa ya chini kabisa, na ni rejista chache tu za CSR zinaweza kufikiwa katika hali hii. Wakati ubaguzi au usumbufu hutokea, microprocessor huenda kutoka kwa Hali ya Mtumiaji hadi Modi ya Mashine ili kushughulikia vighairi na kukatizwa.

Daftari la CSR

Msururu wa rejista za CSR hufafanuliwa katika usanifu wa RISC-V ili kudhibiti na kurekodi hali ya uendeshaji ya microprocessor. CSR hizi zinaweza kuongezwa kwa rejista 4096 kwa kutumia nafasi ya usimbaji ya ndani ya biti 12. Na utumie CSR mbili za juu[11:10] kufafanua ruhusa ya kusoma/kuandika ya rejista hii, 0b00, 0b01, 0b10 kwa kusoma/kuandika kuruhusiwa na 0b11 kwa kusoma tu. Tumia biti mbili za CSR[9:8] ili kufafanua kiwango cha chini cha upendeleo kinachoweza kufikia rejista hii, na thamani inalingana na hali ya upendeleo iliyofafanuliwa katika Jedwali 1-3. Rejista za CSR zinazotekelezwa katika kichakataji mikrosi cha QingKe V3 zimefafanuliwa katika Sura ya 8.

Isipokuwa

Utaratibu wa ubaguzi, ambao ni utaratibu wa kukatiza na kushughulikia "matukio ya operesheni isiyo ya kawaida". Vichakataji vidogo vya mfululizo wa QingKe V3 vimewekwa na mfumo wa kipekee wa majibu ambao unaweza kushughulikia hadi vighairi 256, ikijumuisha kukatizwa. Wakati ubaguzi au usumbufu hutokea, microprocessor inaweza kujibu kwa haraka na kushughulikia ubaguzi na matukio ya kukatizwa.

Aina za Ubaguzi

Tabia ya vifaa vya microprocessor ni sawa ikiwa ubaguzi au usumbufu hutokea. Microprocessor inasimamisha programu ya sasa, inasogea hadi kwa ubaguzi au kidhibiti cha kukatiza, na inarudi kwa programu iliyosimamishwa hapo awali wakati usindikaji umekamilika. Kwa ujumla, kukatiza pia ni sehemu ya vighairi. Iwapo tukio la sasa ni kukatizwa au ubaguzi unaweza kuwa viewed kupitia sababu ya rejista ya ubaguzi wa hali ya Mashine. Sababu[31] ni sehemu ya kukatiza, ambayo hutumika kuashiria ikiwa sababu ya kutofuata kanuni ni kukatizwa au ubaguzi. mcause[31]=1 inamaanisha kukatiza, mcause[31]=0 inamaanisha ubaguzi. mcause[30:0] ni msimbo wa ubaguzi, ambao hutumiwa kuonyesha sababu mahususi ya kutofuata kanuni au nambari ya kukatiza, kama inavyoonyeshwa katika jedwali lifuatalo.

Jedwali 2-1 misimbo isiyo ya kawaida ya vichakataji mikrosi V3

Katiza Isipokuwa kanuni Synchronous / Asynchronous Sababu ya ubaguzi
1 0-1 Imehifadhiwa
1 2 Sahihi Asynchronous NMI inakatiza
1 3-11 Imehifadhiwa
1 12 Sahihi Asynchronous SysTick inakatiza
1 13 Imehifadhiwa
1 14 Sawazisha Programu inakatiza
1 15 Imehifadhiwa
1 16-255 Sahihi Asynchronous Ukatizaji wa nje 16-255
0 0 Sawazisha Mpangilio mbaya wa anwani ya maagizo
0 1 Sawazisha Leta hitilafu ya ufikiaji wa amri
0 2 Sawazisha Maelekezo haramu
0 3 Sawazisha Vivunjaji
0 4 Sawazisha Mpangilio mbaya wa anwani ya ufikiaji wa maagizo
0 5 Isiyo ya usahihi ya asynchronous Hitilafu ya ufikiaji wa amri ya kupakia
0 6 Sawazisha Upataji sahihi wa anwani ya duka/AMO
0 7 Isiyo ya usahihi ya asynchronous Hitilafu ya ufikiaji wa amri ya Hifadhi/AMO
0 8 Sawazisha Simu ya mazingira katika hali ya Mtumiaji
0 11 Sawazisha Simu ya mazingira katika hali ya Mashine
  • Synchronous” katika jedwali inamaanisha kuwa maagizo yanaweza kupatikana mahali ambapo yanatekelezwa, kama vile mapumziko au maagizo ya simu, na kila utekelezaji wa maagizo hayo utasababisha ubaguzi. "Asynchronous" inamaanisha kuwa haiwezekani kubainisha maagizo, na thamani ya maagizo ya Kompyuta inaweza kuwa tofauti kila wakati ubaguzi unapotokea. ” Sahihi Asynchronous” inamaanisha kuwa ubaguzi unaweza kupatikana haswa kwenye mpaka wa maagizo, yaani, hali baada ya utekelezaji wa maagizo, kama vile usumbufu wa nje. "Asynchronous isiyo ya usahihi" inamaanisha kuwa mpaka wa maagizo hauwezi kupatikana kwa usahihi, na labda hali baada ya maagizo imekatizwa katikati ya utekelezaji, kama vile hitilafu ya ufikiaji wa kumbukumbu.
  • Ufikiaji wa kumbukumbu huchukua muda, na microprocessor kawaida haingojei mwisho wa ufikiaji wakati wa kufikia kumbukumbu lakini inaendelea kutekeleza maagizo, wakati ubaguzi wa hitilafu ya ufikiaji hutokea tena, microprocessor tayari imetekeleza maagizo yaliyofuata, na haiwezi kuwa sahihi. iko.

Kuingia Isipokuwa

Wakati programu iko katika mchakato wa operesheni ya kawaida ikiwa kwa sababu fulani, husababisha ubaguzi au kukatiza. Tabia ya vifaa vya microprocessor katika hatua hii inaweza kufupishwa kama ifuatavyo.

  1. Sitisha mtiririko wa sasa wa programu na usogeze hadi kwa utekelezaji wa ubaguzi au kukatiza utendakazi. Anwani ya msingi ya ingizo na hali ya kushughulikia ya ubaguzi au utendakazi wa kukatiza hufafanuliwa na rejista ya anwani ya msingi ya mtvec. mtvec[31:2] inafafanua anwani msingi ya ubaguzi au kukatiza chaguo za kukokotoa. mtvec[1:0] inafafanua hali ya kushughulikia ya kitendakazi cha kidhibiti. wakati mtvec[1:0]=0, vighairi vyote na kukatizwa hutumia ingizo lililounganishwa, yaani, ubaguzi au usumbufu unapotokea, inageukia mtvec[31:2] inafafanua anwani msingi ya kutekeleza. Wakati mtvec[1:0]=1, vighairi na kukatiza tumia hali ya jedwali la vekta, yaani, kila ubaguzi na ukatizaji huhesabiwa, na anwani hurekebishwa kulingana na nambari ya kukatiza *4, na ubaguzi au usumbufu unapotokea, hubadilishwa. kwa anwani ya msingi iliyofafanuliwa na mtvec[31:2] + kukatiza nambari*4 Utekelezaji. Jedwali la vekta ya kukatiza hushikilia maagizo ya kuruka kwa kidhibiti cha kukatiza, au inaweza kuwa maagizo mengine.
  2. Sasisha rejista ya CSR
    • Kighairi au usumbufu unapoingizwa, kichakataji kiotomatiki husasisha rejista husika za CSR, ikijumuisha mcause ya sababu ya kutofuata kanuni za hali ya Mashine, rejista ya viashiria vya ubaguzi wa hali ya Mashine mepc, chuma cha rejista ya thamani ya kutofuata kanuni za Modi ya Mashine, na hali ya rejista ya hali ya Mashine.

Sasisha mcause

Kama ilivyoelezwa hapo awali, baada ya kuweka ubaguzi au kukatiza, thamani yake inaonyesha aina ya sasa ya ubaguzi au nambari ya kukatiza, na programu inaweza kusoma thamani hii ya rejista ili kuangalia sababu ya ubaguzi au kubaini chanzo cha kukatiza, kama ilivyoonyeshwa kwenye Jedwali 2. -1.

Sasisha mepc

  • Ufafanuzi wa kawaida wa anwani ya kurejesha ya microprocessor baada ya kuondoka kwa ubaguzi au usumbufu huhifadhiwa kwenye mepc.
  • Kwa hivyo ubaguzi au usumbufu unapotokea, maunzi husasisha thamani ya mepc kiotomatiki hadi thamani ya sasa ya maagizo ya Kompyuta wakati ubaguzi unapopatikana, au thamani inayofuata ya maagizo yaliyotekelezwa mapema kabla ya kukatiza.
  • Baada ya ubaguzi au usumbufu kuchakatwa, microprocessor hutumia thamani yake iliyohifadhiwa kama anwani ya kurejesha ili kurejea eneo la ukatizaji ili kuendelea na utekelezaji.
  • Hata hivyo, inafaa kuzingatia hilo.
  1. MEPC ni rejista inayoweza kusomeka na inayoweza kuandikwa, na programu inaweza pia kurekebisha thamani ili kurekebisha eneo la kiashiria cha Kompyuta kinachoendeshwa baada ya kurejesha.
  2. Wakati usumbufu unapotokea, yaani, wakati sababu ya ubaguzi inasajili mcause[31]=1, thamani ya ramani husasishwa hadi thamani ya Kompyuta ya maagizo yanayofuata ambayo hayajatekelezwa wakati wa kukatiza.
    • Kighairi kinapotokea, thamani ya ramani husasishwa hadi thamani ya maagizo ya Kompyuta ya ubaguzi wa sasa wakati ubaguzi unasababisha rejista mcause[31]=0. Kwa hivyo wakati huu ambapo ubaguzi unarudi, ikiwa tunarudi moja kwa moja kwa kutumia thamani ya mepc, tunaendelea kutekeleza maagizo ambayo yalitoa ubaguzi hapo awali, na kwa wakati huu, tutaendelea kuweka ubaguzi. Kwa kawaida, baada ya kushughulikia kutofuata kanuni, tunaweza kurekebisha thamani ya mepc hadi thamani ya maagizo yanayofuata ambayo hayajatekelezwa na kisha kurudisha. Kwa mfanoampna, ikiwa tutasababisha ubaguzi kwa sababu ya simu/kuvunja, baada ya kushughulikia ubaguzi, kwa kuwa kukumbuka/kuvunja (c.ebreak ni baiti 2) ni maagizo ya baiti 4, tunahitaji programu tu kurekebisha thamani ya mepc hadi mepc. +4 (c.ebreak ni mepc+2) kisha urudi.

Sasisha mtval

Wakati isipokuwa na kukatizwa kunaingizwa, maunzi yatasasisha kiotomatiki thamani ya mtval, ambayo ni thamani iliyosababisha ubaguzi. Thamani ni kawaida.

  1. Ikiwa ubaguzi unasababishwa na ufikiaji wa kumbukumbu, vifaa vitahifadhi anwani ya ufikiaji wa kumbukumbu wakati wa ubaguzi kwenye mtval.
  2. Ikiwa ubaguzi unasababishwa na maagizo haramu, maunzi yatahifadhi msimbo wa maagizo kwenye mtval.
  3. Ikiwa ubaguzi unasababishwa na sehemu ya kukatika maunzi, maunzi yatahifadhi thamani ya Kompyuta kwenye sehemu ya kukatika kwenye mtval.
  4. Isipokuwa vingine, maunzi huweka thamani ya mtval hadi 0, kama vile mapumziko, ubaguzi unaosababishwa na maagizo ya simu.
  5. Wakati wa kuingiza usumbufu, vifaa huweka thamani ya mtval hadi 0.

Sasisha hali

Baada ya kuingiza vighairi na kukatizwa, maunzi husasisha bits fulani katika mstatus.

  1. MPIE inasasishwa hadi thamani ya MIE kabla ya kuweka ubaguzi au kukatiza, na MPIE inatumiwa kurejesha MIE baada ya kutofuata kanuni na kukatiza kuisha.
  2. MPP inasasishwa hadi hali ya upendeleo kabla ya kuweka vighairi na kukatizwa, na baada ya vighairi na ukatizaji kukamilika, MPP inatumiwa kurejesha hali ya awali iliyobahatika.
  3. Kichakataji kidogo cha QingKe V3 kinaweza kutumia uwekaji wa viota katika hali ya Mashine, na MIE haitafutwa baada ya kuweka vighairi na kukatizwa.

Sasisha hali ya upendeleo ya microprocessor

  • Wakati vighairi na kukatizwa kunatokea, hali ya upendeleo ya microprocessor inasasishwa hadi Modi ya Mashine.

Isipokuwa Ushughulikiaji Kazi

  • Baada ya kuingiza ubaguzi au kukatiza, microprocessor hutekeleza programu kutoka kwa anwani na hali iliyofafanuliwa na rejista ya mtvec. Wakati wa kutumia ingizo lililounganishwa, kichakataji kidogo huchukua maagizo ya kuruka kutoka kwa anwani ya msingi iliyofafanuliwa na mtvec[31:2] kulingana na thamani ya mtvec[1], au hupata anwani ya uwekaji ubaguzi na kukatiza na kwenda kuitekeleza badala yake. . Kwa wakati huu, ubaguzi na kukatiza kushughulikia kunaweza kubaini ikiwa sababu ni ubaguzi au ukatizaji kulingana na thamani ya sababu[31], na aina na sababu ya ubaguzi au ukatizaji unaolingana unaweza kuamuliwa kwa kanuni ya ubaguzi. na kushughulikiwa ipasavyo.
  • Unapotumia anwani ya msingi + kukata nambari * 4 kwa kukabiliana, vifaa vinaruka kiotomatiki kwenye jedwali la vekta ili kupata anwani ya kuingia ya ubaguzi au kazi ya kukatiza kulingana na nambari ya kukatiza na kuruka ili kuitekeleza.

Isipokuwa Toka

  • Baada ya ubaguzi au usumbufu wa kushughulikia kukamilika, ni muhimu kuondoka kutoka kwa programu ya huduma. Baada ya kuingiza vighairi na kukatizwa, microprocessor huingia katika hali ya Mashine kutoka kwa Hali ya Mtumiaji, na uchakataji wa vighairi na kukatizwa pia hukamilishwa katika hali ya Mashine. Wakati ni muhimu kuondoka isipokuwa na kukatizwa, ni muhimu kutumia maagizo ya mret kurudi. Kwa wakati huu, vifaa vya microprocessor vitafanya otomatiki shughuli zifuatazo.
  • Kiashiria cha PC kinarejeshwa kwa thamani ya mepc ya usajili wa CSR, yaani, utekelezaji huanza kwenye anwani ya maagizo iliyohifadhiwa na mepc. Inahitajika kuzingatia utendakazi wa kukabiliana na mepc baada ya utunzaji wa ubaguzi kukamilika.
  • Sasisha hali ya rejista ya CSR, MIE inarejeshwa kwa MPIE, na MPP inatumiwa kurejesha hali ya upendeleo ya kichakataji kidogo cha awali.
  • Mchakato mzima wa kukabiliana na ubaguzi unaweza kuelezewa na kielelezo 2-1 kifuatacho.WH-V3-Microprocessor-fig-1

PFIC na Udhibiti wa Kukatiza

  • Microprocessor ya QingKe V3 imeundwa kwa Kidhibiti cha Kukatiza Haraka Kinachoweza Kuratibiwa (PFIC) ambacho kinaweza kudhibiti hadi ukatizaji 256 ikijumuisha vighairi.
  • Ya kwanza 16 kati yao yamewekwa kama visumbufu vya ndani vya microprocessor, na zingine ni za nje, yaani, idadi ya juu ya kukatizwa kwa nje inaweza kupanuliwa hadi 240. Sifa zake kuu ni kama ifuatavyo.
  • Ukatizaji wa nje 240, kila ombi la kukatiza lina vichochezi huru na biti za udhibiti wa barakoa, na biti maalum za hali.
  • Kipaumbele cha ukatizaji kinachoweza kuratibiwa huauni viwango 2 vya kutagia
  • Ukatizaji wa haraka wa ndani/nje wa utaratibu, uwekaji kiotomatiki wa maunzi, na urejeshaji, kina cha juu cha HPE cha viwango 2
  • Utaratibu wa kujibu wa kukatiza kwa Jedwali la Vekta (VTF), ufikiaji wa moja kwa moja wa njia 2 wa kukatiza anwani za vekta.
  • Kumbuka: Kina cha juu zaidi cha kuatamia na kina cha HPE kinachoauniwa na vidhibiti vya kukatiza hutofautiana kwa miundo tofauti ya vichakataji vidogo, ambavyo vinaweza kupatikana katika Jedwali 1-1.
  • Jedwali la vekta la vikatizo na vighairi limeonyeshwa katika Jedwali 3-1 hapa chini.

Jedwali 3-1 Isipokuwa na kukatiza jedwali la vekta

Nambari Kipaumbele Aina Jina Maelezo
0
1
2 -5 Imerekebishwa NMI Ukatizaji usioweza kuficha
3 -4 Imerekebishwa EXC Ukatizaji wa ubaguzi
4
5 -3 Imerekebishwa WITO-M Mwito wa kurudi nyuma kwa hali ya mashine
6-7
8 -2 Imerekebishwa ECALL-U Ukatizaji wa urejeshaji wa hali ya mtumiaji
9 -1 Imerekebishwa BREAK POINT Ukatizaji wa kurudi nyuma kwa kituo
10-11
12 0 Inaweza kupangwa SysTick Kipima saa cha mfumo
13
14 1 Inaweza kupangwa SWI Kukatiza kwa programu
15
16-255 2-241 Inaweza kupangwa Ukatizaji wa Nje Ukatizaji wa nje 16-255

Kumbuka: ECALL-M, ECALL-U, na BREAKPOINT zote ni aina tofauti za ubaguzi EXC, ambazo zinajitegemea katika V3B/C kwa urahisi wa matumizi, na anwani 3 zilizo hapo juu za ingizo zimeshirikiwa na EXC katika V3A.

Seti ya Usajili wa PFIC

Jedwali 3-2 Sajili za PFIC

Jina Anwani ya ufikiaji Ufikiaji Maelezo Weka upya thamani
PFIC_ISRx 0xE000E000

-0xE000E01C

RO Katisha kuwezesha rejista ya hali x 0x00000000
PFIC_IPRx 0xE000E020

-0xE000E03C

RO Katisha rejista ya hali inayosubiri x 0x00000000
PFIC_ITHRESDR 0xE000E040 RW Kataza rejista ya usanidi wa kiwango cha kipaumbele 0x00000000
PFIC_VTFBADDRR 0xE000E044 RW Rejesta ya anwani ya msingi ya VTF

Kumbuka: Inatumika kwa V3A pekee

0x00000000
PFIC_CFGR 0xE000E048 RW Kataza rejista ya usanidi

Kumbuka: Inatumika kwa V3A pekee

0x00000000
PFIC_GISR 0xE000E04C RO Kataza rejista ya hali ya kimataifa 0x00000002
 

PFIC_VTFIDR

 

0xE000E050

 

RW

VTF kukatiza rejista ya usanidi wa kitambulisho

Kumbuka: Inatumika kwa V3B/C pekee.

 

0x00000000

PFIC_VTFADDRRx 0xE000E060

-0xE000E06C

RW VTF x rejista ya anwani ya kukabiliana 0xXXXXXXXXX
PFIC_IENRx 0xE000E100

-0xE000E11C

WO Kataza kuwezesha rejista ya mipangilio x 0x00000000
PFIC_IRERx 0xE000E180

-0xE000E19C

WO Kukatiza kuwezesha rejista wazi x 0x00000000
PFIC_IPSRx 0xE000E200

-0xE000E21C

WO Katisha rejista ya mipangilio inayosubiri x 0x00000000
PFIC_IPRRx 0xE000E280

-0xE000E29C

WO Katisha rejista inayosubiri wazi x 0x00000000
PFIC_IACTRx 0xE000E300

-0xE000E31C

RO Katisha rejista ya hali ya kuwezesha x 0x00000000
PFIC_IPRIORx 0xE000E400

-0xE000E43C

RW Kataza rejista ya usanidi wa kipaumbele 0x00000000
PFIC_SCTLR 0xE000ED10 RW Rejesta ya udhibiti wa mfumo 0x00000000

Kumbuka:

  1. NMI, EXC, ECALL-M, ECALL-U, na BREAKPOINT huwashwa kila mara kwa chaguomsingi.
  2. ECALL-M, ECALL-U, na BREAKPOINT ni kesi za EXC.
  3. Usaidizi wa NMI, EXC, ECALL-M, ECALL-U na BREAKPOINT umekatiza unasubiri utendakazi wazi na wa kuweka, lakini bila kukatiza wezesha utendakazi wazi na wa kuweka.

Kila rejista imeelezewa kama ifuatavyo:

Kukatiza kuwezesha hali na kukatiza rejista za hali zinazosubiri (PFIC_ISR<0-7>/PFIC_IPR<0-7>)

Jina Anwani ya ufikiaji Ufikiaji Maelezo Weka upya thamani
 PFIC_ISR0  0xE000E000  RO Kukatiza 0-31 huwezesha rejista ya hali, jumla ya biti 32 za hali [n], kuonyesha #n kukatiza kuwezesha hali

Kumbuka: NMI na EXC zimewashwa kwa chaguo-msingi

 Kwa V3A: 0x0000000C

Kwa V3B/C: 0x0000032C

PFIC_ISR1 0xE000E004 RO Katisha 32-63 wezesha rejista ya hali, jumla ya biti 32 za hali 0x00000000
PFIC_ISR7 0xE000E01C RO Katisha 224-255 wezesha rejista ya hali, jumla ya biti 32 za hali 0x00000000
PFIC_IPR0 0xE000E020 RO Katiza 0-31 hali inayosubiri 0x00000000
rejesta, jumla ya biti 32 za hali [n], inayoonyesha hali inayosubiri ya kukatiza #n
PFIC_IPR1 0xE000E024 RO Katiza 32-63 rejista za hali zinazosubiri, biti 32 za hali kwa jumla 0x00000000
PFIC_IPR7 0xE000E03C RO Katiza 244-255 rejista ya hali inayosubiri, biti 32 za hali kwa jumla 0x00000000

Seti mbili za rejista hutumiwa kuwezesha na kuwezesha ukatizaji unaolingana.

Kataza kuwezesha mipangilio na ufute rejista (PFIC_IENR<0-7>/PFIC_IRER<0-7>)3

Jina Anwani ya ufikiaji Ufikiaji Maelezo Weka upya thamani
PFIC_IENR0 0xE000E100 WO Kukatiza 0-31 huwezesha rejista ya mipangilio, jumla ya biti 32 za mipangilio [n], kwa kukatiza mpangilio wa kuwezesha #n

Kumbuka: NMI na EXC ni kuwezeshwa kwa chaguo-msingi

 

 

 

0x00000000

PFIC_IENR1 0xE000E104 WO Katisha 32-63 ili kuwezesha rejista ya mipangilio, jumla ya bits 32 za kuweka 0x00000000
PFIC_IENR7 0xE000E11C WO Katiza mpangilio wa 224-255

kujiandikisha, jumla ya bits 32 za kuweka

0x00000000
 PFIC_IRER0  0xE000E180  WO Kukatiza 0-31 kuwezesha rejista wazi, jumla ya biti 32 wazi [n], kwa kukatiza #n kuwasha wazi Kumbuka: NMI na EXC haziwezi kuwa kuendeshwa  

 

0x00000000

PFIC_IRER1 0xE000E184 WO Kukatiza 32-63 huwezesha rejista wazi, jumla ya bits 32 wazi 0x00000000
PFIC_IRER7 0xE000E19C WO Kukatiza 244-255 huwezesha rejista wazi, jumla ya bits 32 wazi 0x00000000

Seti mbili za rejista hutumiwa kuwezesha na kuwezesha ukatizaji unaolingana.

Katisha mipangilio inayosubiri na ufute rejista (PFIC_IPSR<0-7>/PFIC_IPRR<0-7>)

Jina Anwani ya ufikiaji Ufikiaji Maelezo Weka upya thamani
 

PFIC_IPSR0

 

0xE000E200

 

WO

Katiza 0-31 rejista ya mipangilio inayosubiri, 32

kuweka biti [n], kwa kukatiza mpangilio wa #n unaosubiri

 

0x00000000

PFIC_IPSR1 0xE000E204 WO Katisha 32-63 inasubiri rejista ya usanidi,

jumla ya bits 32 za usanidi

0x00000000
PFIC_IPSR7 0xE000E21C WO Katiza 224-255 mpangilio unaosubiri

sajili, 32 kuweka bits kwa jumla

0x00000000
 

PFIC_IPRR0

 

0xE000E280

 

WO

Katisha 0-31 rejista inayosubiri, jumla ya biti 32 wazi [n], kwa kukatiza #n

inasubiri wazi

 

0x00000000

PFIC_IPRR1 0xE000E284 WO Katisha 32-63 ukisubiri rejista wazi,

jumla ya vipande 32 wazi

0x00000000
PFIC_IPRR7 0xE000E29C WO Katisha 244-255 ukisubiri rejista wazi,

jumla ya vipande 32 wazi

0x00000000

Wakati kichakataji kidogo kinawasha ukatizaji, kinaweza kuwekwa moja kwa moja kupitia rejista ya kukatiza inayosubiri ili kuzua ukatizaji. Tumia rejista wazi ya kukatiza inayosubiri ili kufuta kichochezi kinachosubiri.

Kataza rejista ya hali ya kuwezesha (PFIC_IACTR<0-7>)

Jina Anwani ya ufikiaji Ufikiaji Maelezo Weka upya thamani
 PFIC_IACTR0  0xE000E300  RO Kukatiza 0-31 huwasha rejista ya hali yenye biti 32 za hali [n], kuonyesha kuwa usumbufu #n unatekelezwa.  0x00000000
 PFIC_IACTR1  0xE000E304  RO Katisha rejista za hali ya 32-63, bits 32 za hali ndani

jumla

 

0x00000000

 PFIC_IACTR7  0xE000E31C  RO Kataza rejista za hali ya 224-255, jumla ya bits 32 za hali  0x00000000

Kila ukatizaji una hali amilifu ambayo huwekwa wakati usumbufu unapowekwa na kufutwa na maunzi soko linaporejea.

Katiza rejista za vipaumbele na vipaumbele (PFIC_IPRIOR<0-7>/PFIC_ITHRESDR)

Jina Anwani ya ufikiaji Ufikiaji Maelezo Weka upya thamani
PFIC_IPRIOR0 0xE000E400 RW Katiza usanidi 0 wa kipaumbele. V3A: [7:4]: Biti za udhibiti wa kipaumbele Ikiwa usanidi haujawekwa kiota, hakuna biti ya kuzuia Ikiwa kiota kimesanidiwa, bit7 ndio biti iliyotanguliwa. [3:0]: Imehifadhiwa, imewekwa kwa 0  V3B: [7:6]: Biti za udhibiti wa kipaumbele Ikiwa usanidi haujawekwa kiota, hakuna biti tangulizi zilizosanidiwa, biti zote hutanguliwa, lakini hadi viwango viwili vya ukatizaji vinaruhusiwa kutokea [5:0]: Imehifadhiwa, iliyowekwa kwenye 0
V3C:
[7:5]: Vijiti vya udhibiti wa kipaumbele
Ikiwa usanidi haujawekwa kiota, hakuna biti za mapema
Ikiwekwa kiota, biti zote hutanguliwa, lakini hadi viwango viwili vya ukatizaji vinaruhusiwa kutokea [4:0]: Imehifadhiwa, iliyowekwa 0 Kumbuka: Kadiri thamani ya kipaumbele inavyokuwa ndogo, ndivyo kipaumbele kinavyokuwa juu. Iwapo ukatizaji sawa wa kipaumbele cha uzuiaji hutegemea kwa wakati mmoja, ukatizaji ulio na kipaumbele cha juu utatekelezwa kwanza.
0x00
PFIC_IPRIOR1 0xE000E401 RW Katiza mpangilio 1 wa kipaumbele, utendakazi sawa na PFIC_IPRIOR0 0x00
PFIC_IPRIOR2 0xE000E402 RW Katiza mpangilio 2 wa kipaumbele, utendakazi sawa na PFIC_IPRIOR0
PFIC_IPRIOR254 0xE000E4FE RW Katiza mpangilio wa kipaumbele wa 254, utendakazi sawa na PFIC_IPRIOR0 0x00
PFIC_IPRIOR255 0xE000E4FF RW Katiza mpangilio 255 wa kipaumbele, utendakazi sawa na PFIC_IPRIOR0 0x00
PFIC_ITHRESDR 0xE000E040 RW Kataza mpangilio wa kiwango cha kipaumbele

V3A:

[31:8]: Imehifadhiwa, imewekwa kwa 0 [7:4]: Kizingiti cha Kipaumbele [3:0]: Imehifadhiwa, imewekwa kwa 0

 V3B:

[31:8]: Imehifadhiwa, imewekwa kwa 0 [7:5]: Kizingiti cha Kipaumbele [4:0]: Imehifadhiwa, imewekwa kwa 0

 V3C:

[31:8]: Imehifadhiwa, imewekwa kwa 0 [7:5]: Kizingiti cha Kipaumbele [4:0]: Imehifadhiwa, imewekwa kwa 0

Kumbuka: Kwa kukatizwa kwa thamani ya kipaumbele ≥ kizingiti, kazi ya huduma ya kukatiza haitekelezwi wakati hang inapotokea, na wakati rejista hii ni 0, inamaanisha kuwa rejista ya kizingiti ni batili.

0x00

Kataza rejista ya usanidi (PFIC_CFGR)

Jina Anwani ya ufikiaji Ufikiaji Maelezo Weka upya thamani
PFIC_CFGR 0xE000E048 RW Kataza rejista ya usanidi 0x00000000

Rejesta hii ni halali kwa V3A pekee, biti zake zinafafanuliwa kama:

Kidogo Jina Ufikiaji Maelezo Weka upya thamani
[31:16] KEYCODE WO Sambamba na biti tofauti za udhibiti lengwa, data inayolingana ya kitambulisho cha ufikiaji wa usalama inahitaji kuandikwa kwa wakati mmoja ili kurekebishwa, na data ya kusoma imewekwa 0. KEY1 = 0xFA05; KEY2 = 0xBCAF; KEY3 = 0xBEEF. 0
[15:8] Imehifadhiwa RO Imehifadhiwa 0
7 SYSRESET WO Kuweka upya mfumo (kuandika kwa wakati mmoja kwa KEY3). Futa kiotomatiki 0.

Kuandika 1 ni halali, kuandika 0 ni batili.

Kumbuka: utendakazi sawa na biti ya PFIC_SCTLR ya kusajili SYSRESET.

0
6 PFICRESET WO Kuweka upya moduli ya PFIC. Futa kiotomatiki 0.

Kuandika 1 ni halali, kuandika 0 ni batili.

0
5 EXPRESS WO Ukatizaji wa Isipokuwa unasubiri wazi (kuandika kwa wakati mmoja kwa KEY2)

Kuandika 1 ni halali, kuandika 0 ni batili.

0
4 EXCSET WO Isipokuwa, kukatiza kwa mpangilio unaosubiri (kuandika kwa wakati mmoja kwa KEY2)

Kuandika 1 ni halali, kuandika 0 ni batili.

0
3 NMIRESET WO Ukatizaji wa NMI unasubiri wazi (kuandika kwa wakati mmoja kwa KEY2)

Kuandika 1 ni halali, kuandika 0 ni batili.

0
2 NMISSET WO Mpangilio unaosubiri wa kukatiza kwa NMI (Kuandika kwa wakati mmoja kwa KEY2)

Kuandika 1 ni halali, kuandika 0 ni batili.

0
1 NESTCTRL RW Kukatiza kiota huwezesha udhibiti.

1: kuzima; 0: imewashwa (kuandika kwa usawaziko kwa KEY1)

0
0 HWSTKCTRL RW HPE kuwezesha udhibiti

1: kuzima; 0: imewashwa (kuandika kwa usawaziko kwa KEY1)

0

Sitisha rejista ya hali ya kimataifa (PFIC_GISR)

Jina Anwani ya ufikiaji Ufikiaji Maelezo Weka upya thamani
PFIC_GISR 0xE000E04C RO Kataza rejista ya hali ya kimataifa 0x00000000

Watu wake wanafafanuliwa kama

Kidogo Jina Ufikiaji Maelezo Weka upya thamani
[31:14] Imehifadhiwa RO Imehifadhiwa 0
 

 

13

 

 

LOCKSTA

 

 

RO

Ikiwa kichakataji kwa sasa kiko katika hali imefungwa:

1: Hali iliyofungwa;

0: Hali isiyofungwa.

Kumbuka: Biti hii ni halali kwa V3B/C pekee.

 

 

0

 

 

12

 

 

DBGMODE

 

 

RO

Iwapo kichakataji kiko katika hali ya utatuzi kwa sasa: 1: Hali ya utatuzi;

0: Hali isiyo ya utatuzi.

Kumbuka: Biti hii ni halali kwa V3B/C pekee.

 

 

0

 

 

11

 

 

GLOBLIE

 

 

RO

Washa usumbufu wa ulimwengu:

1: Wezesha kukatiza;

0: Zima kukatiza.

Kumbuka: Biti hii ni halali kwa V3B/C pekee.

10 Imehifadhiwa RO Imehifadhiwa 0
9 GPENDSTA RO Ikiwa usumbufu unasubiri kwa sasa.

1: Ndiyo; 0: Hapana.

0
8 GACTSTA RO Ikiwa usumbufu unatekelezwa kwa sasa.

1: Ndiyo; 0: Hapana.

0
 

 

[7:0]
 

 

NESTSTA

 

 

RO

Kataza hali ya kutaga kwa sasa. 0x03: katika ngazi ya 2 kukatiza.

0x01: katika ngazi ya 1 kukatiza. 0x00: hakuna ukatizaji unaotokea.

Nyingine: Hali isiyowezekana.

 

 

0

Anwani ya msingi ya Vitambulisho vya VTF na rejista za anwani za kukabiliana (PFIC_VTFBADDRR/PFIC_VTFADDRR<0-3>)

Jina Anwani ya ufikiaji Ufikiaji Maelezo Weka upya thamani
 

 

PFIC_VTFBADDRR

 

 

0xE000E044

 

 

RW

[31:28]: Biti 4 za juu za anwani inayolengwa ya VTF [27:0]: Imehifadhiwa

Rejesta hii ni halali kwa V3A pekee.

 

 

0x00000000

 

 

 

PFIC_VTFIDR

 

 

 

0xE000E050

 

 

 

RW

[31:24]: Idadi ya VTF 3 [23:16]: Idadi ya VTF 2 [15:8]: Idadi ya VTF 1 [7:0]: Idadi ya VTF 0

Rejesta hii ni halali kwa V3B/C pekee.

 

 

 

0x00000000

 

 

 

 

 

 

 

 

PFIC_VTFADDRR0

 0xE000E060  RW V3A: [31:24]: VTF 0 kati ya nambari [23:0]: biti 24 za chini za anwani lengwa ya VTF, ambapo biti 20 za chini zimesanidiwa kuwa halali, na [23:20] imewekwa kwa 0. .

 V3B/C:

[31:1]: Anwani ya VTF 0, iliyopangiliwa kwa baiti 2 [0]:

1: Washa kituo cha VTF 0

0: Lemaza

 

 

 

 

 

 

 

Kwa V3A: 0x00000000

Kwa V3B/C: 0xXXXXXXXX

 

 

 

 

 

 

 

 

PFIC_VTFADDRR1

 

 

 

 

 

 

 

 

0xE000E064

 

 

 

 

 

 

 

 

RW

V3A: [31:24]: Nambari ya kati ya VTF 1 [23:0]: Biti 24 za chini za anwani inayolengwa ya VTF, ambapo biti 20 za chini zimesanidiwa kuwa halali na [23:20] zimebadilishwa kuwa 0.

 

V3B/C:

[31:1]: Anwani ya VTF 1, iliyopangiliwa kwa baiti 2 [0]:

1: Washa kituo cha VTF 1

0: Lemaza

 

 

 

 

 

 

 

Kwa V3A: 0x00000000

Kwa V3B/C: 0xXXXXXXXX

 

 

 

 

 

 

 

 

PFIC_VTFADDRR2

 

 

 

 

 

 

 

 

0xE000E068

 

 

 

 

 

 

 

 

RW

V3A: [31:24]: VTF 2 kati ya nambari [23:0]: biti 24 za chini za anwani lengwa ya VTF, ambapo biti 20 za chini zimesanidiwa kuwa halali, na [23:20] imewekwa kwa 0. .

 

V3B/C:

[31:1]: Anwani ya VTF 2, iliyopangiliwa kwa baiti 2 [0]:

1: Washa kituo cha VTF 2

0: Lemaza

 

 

 

 

 

 

 

Kwa V3A: 0x00000000

Kwa V3B/C: 0xXXXXXXXX

PFIC_VTFADDRR3 0xE000E06C RW V3A: kwa V3A:
[31:24]: nambari ya VTF 3 ya kukatiza [23:0]: biti 24 za chini za anwani inayolengwa ya VTF, ambapo biti 20 za chini zimesanidiwa kuwa halali, na [23:20] imebadilishwa kuwa 0.

 V3B/C:

[31:1]: Anwani ya VTF 3, iliyopangiliwa kwa baiti 2 [0]:

1: Washa kituo cha VTF 3

0: Lemaza

0x00000000

Kwa V3B/C: 0xXXXXXXXX

Rejesta ya udhibiti wa mfumo (PFIC_SCTLR)

Jina Anwani ya ufikiaji Ufikiaji Maelezo Weka upya thamani
PFIC_SCTLR 0xE000ED10 RW Rejesta ya udhibiti wa mfumo 0x00000000

Kila mmoja wao hufafanuliwa kama ifuatavyo.

Kidogo Jina Ufikiaji Maelezo Weka upya thamani
31 SYSRESET WO Kuweka upya mfumo, kufuta kiotomatiki 0. Andika 1 ni halali, na kuandika 0 ni batili.

Kumbuka: Biti hii ni halali kwa V3B/C pekee

0
[30:6] Imehifadhiwa RO Imehifadhiwa 0
5 SETEVENT WO Weka tukio ili kuamsha kesi ya WFE. 0
 

4

SEVONPEND RW Tukio linapotokea au kutatiza hali inayosubiri, mfumo unaweza kuamshwa baada ya maagizo ya WFE, au ikiwa maagizo ya WFE hayatatekelezwa, mfumo huo utazinduliwa mara baada ya utekelezaji unaofuata wa maagizo.

1: Matukio yaliyowashwa na ukatizaji wote (Ikiwa ni pamoja na ukatizaji usioweza kufikiwa) unaweza kuamsha mfumo.

0: Matukio yaliyowezeshwa na kuwezeshwa pekee

kukatizwa kunaweza kuamsha mfumo.

 

 

 

0

3 WFITOWFE RW Tekeleza amri ya WFI kana kwamba ni WFE.

1: Yachukulie maelekezo yafuatayo ya WFI kama maagizo ya WFE.

0: Hakuna athari.

0
2 KULALA RW Njia ya nguvu ya chini ya mfumo wa kudhibiti. 0
1: usingizi mzito 0: usingizi
1 SLEEPONEXI T RW Hali ya mfumo baada ya udhibiti huacha programu ya huduma ya kukatiza.

1: Mfumo huingia kwenye hali ya chini ya nguvu.

0: Mfumo unaingia kwenye programu kuu.

0
0 Imehifadhiwa RO Imehifadhiwa 0

Rejesta za CSR zinazohusiana na kukatiza

Kwa kuongeza, rejista zifuatazo za CSR pia zina athari kubwa katika usindikaji wa kukatizwa. Kataza rejista ya udhibiti wa mfumo (intsyscr)

Rejesta hii si halali kwa V3A pekee:

Jina CSR Anwani Ufikiaji Maelezo Weka upya thamani
intsyscr 0x804 URW Kukatisha rejista ya udhibiti wa mfumo 0x0000E002

Watu wake wanafafanuliwa kama:

Kidogo Jina Ufikiaji Maelezo Weka upya thamani
 

 

 

31

 

 

 

FUNGA

 

 

 

URO

0: Rejesta hii inaweza kusomwa na kuandikwa katika hali ya mtumiaji;

1: Rejesta hii inaweza tu kusomwa na kuandikwa katika hali ya mashine.

Kumbuka: Sehemu hii ya usanidi ni halali kutoka

toleo la 1.0 kuendelea.

 

 

 

0

[30:6] Imehifadhiwa URO Imehifadhiwa 0x380
 

 

 

 

 

5

 

 

 

 

 

GIHWSTKNEN

 

 

 

 

 

URW1

Ukatizaji wa kimataifa na uzimaji wa rafu ya maunzi umewashwa.

Kumbuka: Biti hii mara nyingi hutumiwa katika mifumo ya uendeshaji ya wakati halisi. Muktadha unapowashwa wakati wa kukatiza, kuweka biti hii kunaweza kuzima ukatizaji wa kimataifa na kusukuma rafu ya maunzi. Wakati swichi ya muktadha imekamilika na usumbufu unarudi, vifaa vitafanya

futa kiotomatiki sehemu hii.

 

 

 

 

 

0

4 Imehifadhiwa URO Imehifadhiwa 0
[3:2] PMTCFG URW Usanidi wa biti za kuzuia kipaumbele:

00: Idadi ya biti za kuzuia ni 0; 01: Idadi ya biti za kuzuia ni 1; 10: Idadi ya biti za kuzuia ni 2; 11: Idadi ya biti za kuzuia ni 3; Kumbuka: Sehemu hii ya usanidi ni halali baada ya 1.0.

0
1 SIKILIZA URW Kitendakazi cha kukatiza kiota kimewashwa, na thamani isiyobadilika ni 1: 1
0: Zima;

1: Wezesha.

Kumbuka: 1. Kiwango halisi cha kutagia kinadhibitiwa na NEST_LVL katika CSR 0xBC1;

2. Matoleo tu baada ya 1.0 yanaweza kuwa

iliyoandikwa.

0 HWSTKEN URW Washa rafu ya maunzi:

0: Kitendaji cha kubofya mrundikano wa maunzi kimezimwa;

1: Kitendo cha kubofya cha rafu ya maunzi kimewashwa.

0

Rejesta ya anwani ya msingi ya ubaguzi wa hali ya mashine (mtvec)

Jina CSR Anwani Ufikiaji Maelezo Weka upya thamani
mtvec 0x305 MRW Rejesta ya anwani ya msingi ya ubaguzi 0x00000000

Watu wake wanafafanuliwa kama

Kidogo Jina Ufikiaji Maelezo Weka upya thamani
[31:2] BASEADDR[31:2] MRW Kataza anwani ya msingi ya jedwali la vekta, wapi

bits [9:2] zimewekwa kwa 0.

0
1 MODE1  

MRO

Kataza hali ya utambuzi wa jedwali la vekta: 0: Tambua kwa maelekezo ya kuruka, na upeo mdogo, na usaidie maagizo ya kutoruka;

1: Tambua kwa anwani kamili, usaidie anuwai kamili, lakini lazima uruke.

Kumbuka: Biti hii ni halali kwa V3B/C pekee.

0
0 MODE0 MRW Uteuzi wa hali ya anwani ya kukatiza au isiyo ya kawaida.

0: Matumizi ya anwani sare ya ingizo.

1: Urekebishaji wa anwani kulingana na nambari ya kukatiza *4.

0

Kwa MCU zilizo na vichakataji vidogo vya mfululizo wa V3, MODE0 imesanidiwa kuwa 1 kwa chaguomsingi katika uanzishaji. file, na maingizo kwa vighairi au kukatizwa hurekebishwa kulingana na nambari ya kukatiza *4. Kumbuka kuwa kichakataji kidogo cha V3A huhifadhi maagizo ya kuruka kwenye jedwali la vekta, huku kichakataji cha V3B/C kinaweza kuruka maagizo au kutumia anwani kamili ya kitendakazi cha kukatiza, ambacho kimesanidiwa kama anwani kamili katika uanzishaji chaguomsingi. file.

Rejesta ya usanidi wa Microprocessor (kirekebishaji)

Rejesta hii si sahihi kwa V3A:

Jina CSR Anwani Ufikiaji Maelezo Weka upya thamani
corecfgr 0xBC0 MRW Rejesta ya usanidi wa Microprocessor 0x00000001

Watu wake wanafafanuliwa kama

Kidogo Jina Ufikiaji Maelezo Weka upya thamani
[31:8] Imehifadhiwa MRO Imehifadhiwa 0
 

 

7

 

 

CSTA_FAULT_IE

 

 

MRW

Washa usumbufu wa hali ya msingi:

0: Kwenye hitilafu ya hali, hakuna usumbufu wa NMI unaotolewa;

1: Kwenye hitilafu ya hali, kukatiza kwa NMI ni

yanayotokana.

 

 

0

6 Imehifadhiwa MRO Ishike 0. 0
5 IE_REMP_EN MRW Uwekaji ramani wa usajili wa MIE huwezesha:

0: Anwani ya CSR 0x800 ni rejista ya kusoma tu na thamani ya kurudi ni thamani ya STATUS;

1: Biti 3 na 7 za anwani ya CSR 0x800 zimechorwa ili kubiti MIE ya rejista ya STATUS na biti MPIE ya rejista ya STATUS, mtawalia.

 

 

 

 

0

4 Imehifadhiwa MRO Imehifadhiwa 0
3 ROM_LOOP_ACC MRW Kuongeza kasi ya kitanzi cha maelekezo ya eneo la ROM kuwezesha:

0: Zima kazi ya kuongeza kasi ya mzunguko katika eneo la ROM;

1: Maagizo yanayoendelea yenye mwili wa kitanzi ndani ya baiti 128 yataharakishwa kikamilifu, wakati yale yaliyo na kitanzi ndani ya baiti 256 yataharakishwa kwa kiasi;

0
2 ROM_JUMP_ACC MRW Uongezaji kasi wa maelekezo ya eneo la ROM umewezeshwa:

0: Lemaza uongezaji kasi wa kuruka wa eneo la ROM;

1: Washa uongezaji kasi wa kuruka kwa maagizo katika eneo la ROM.

0
[1:0] FETCH_MODE MRW Hali ya kuleta:

00: Uletaji awali umezimwa. Chaguo la kukokotoa la uletaji awali limezimwa ili kuepuka utendakazi batili wa kuleta maagizo, na kuna angalau maagizo moja sahihi kwenye bomba la CPU. Mtindo huu una matumizi ya chini ya nguvu, na utendaji wake unashuka kwa takriban mara 2 ~ 3. 01: Hali ya Kuleta Mapema 1. Wakati utendakazi wa kuleta awali wa maagizo umewashwa, CPU itaendelea kufikia kumbukumbu ya maagizo hadi idadi ya maagizo ya kutekelezwa katika bafa ya maagizo ya ndani ipite nambari fulani, au bafa ya maagizo ijae, na uchukuaji wa maagizo utasitishwa; (Kushindwa kwa utabiri wa CPU kutasababisha operesheni isiyohitajika ya kuleta, na katika baadhi ya matukio, kitengo cha utekelezaji kitaanzisha mizunguko 0 ~ 2 ya Bubbles, na utendakazi wa programu nyingi hautapungua kwa wazi); 10: Imehifadhiwa;
11: Hali ya Kuleta Mapema 2. Wakati utendakazi wa kuleta awali wa maagizo umewashwa, CPU itaendelea kufikia kumbukumbu ya maagizo, na ikiwa bafa ya maagizo imejaa, CPU itaendelea kujaribu tena anwani. Hali hii ina utendaji wa juu zaidi na matumizi ya nguvu. Kutofaulu kwa utabiri wa CPU na kujaribu tena kutaanzisha shughuli zisizohitajika za kuleta na kunaweza kuendelea kuchukua kipimo data cha kumbukumbu. (Kwa eneo la ROM, kujaribu tena kunamaanisha ufikiaji wa anwani usioendelea, kwa hivyo inashauriwa kuwasha ROM_ACC_EN).

0x1

Katisha rejista ya udhibiti iliyoorodheshwa (inestcr)

Rejesta hii si sahihi kwa V3A pekee:

Jina CSR Anwani Ufikiaji Maelezo Weka upya thamani
mwekezaji 0xBC1 MRW Kataza rejista ya udhibiti iliyoorodheshwa 0x00000000

Watu wake wanafafanuliwa kama

Kidogo Jina Ufikiaji Maelezo Weka upya thamani
31 Imehifadhiwa MRO Imehifadhiwa 0
30 NEST_OV MRW Kukatiza/isipokuwa sehemu ya bendera iliyofurika, andika 1 ili kufuta:

0: Kukatiza hakukufurika; 1: Kataza bendera ya kufurika.

Kumbuka: Upitaji wa ukatizaji utatokea tu wakati wa kutekeleza kitendakazi cha pili cha ukatizaji ili kutoa ubaguzi wa maagizo au kukatiza kwa NMI. Kwa wakati huu, ubaguzi na kukatiza kwa NMI ingiza kawaida, lakini rundo la CPU hufurika, kwa hivyo huwezi kutoka kwa ubaguzi huu na

Kukatiza kwa NMI.

0
[29:12] Imehifadhiwa MRO Imehifadhiwa 0
[11:8] NEST_STA MRO Biti ya bendera ya hali iliyoorodheshwa:

0000: Hakuna usumbufu;

0001: Kukatiza kwa kiwango cha 1;

0011: kukatiza kwa kiwango cha 2 (kiota cha ngazi 1);

0
0111: Kiwango cha 3 kikatize (kufurika);

1111: Kiwango cha 4 kikatize (furika).

[7:2] Imehifadhiwa MRO Imehifadhiwa 0
[1:0] NEST_LVL MRW Kiwango cha kuota:

00: Nesting imepigwa marufuku na kazi ya kutagia imezimwa;

01: Kiota cha kiwango cha kwanza, ambacho huwasha kazi ya kutagia;

Nyingine: Batili.

Kumbuka: Andika 10 au 11 kwa uwanja huu, na uwanja utawekwa 01. Unapoandika 11 kwa uwanja huu, soma rejista hii ili kupata kiwango cha juu zaidi cha kuota cha chip.

0

Ukatizaji wa kimataifa wa hali ya mtumiaji wezesha rejista (wa ndani)

Rejesta hii si sahihi kwa V3A pekee:

Jina CSR Anwani Ufikiaji Maelezo Weka upya thamani
gintenr 0x800 URW kuwezesha rejista ya usumbufu wa ulimwengu 0x00000000

Rejesta hii inatumika kudhibiti kuwezesha na barakoa ya usumbufu wa kimataifa. Uwezeshaji na barakoa ya usumbufu wa kimataifa katika modi ya mashine inaweza kudhibitiwa na biti za MIE na MPIE katika hali, lakini rejista hii haiwezi kuendeshwa katika hali ya mtumiaji.
Ukatizaji wa rejista ya gintenr ni uchoraji ramani wa MIE na MPIE katika mstatus, na inaweza kutumika kuweka na kufuta MIE na MPIE kwa kufanya kazi katika hali ya mtumiaji.

Kila mmoja wao hufafanuliwa kama:

Kidogo Jina Ufikiaji Maelezo Weka upya thamani
[31:13] Imehifadhiwa URO Imehifadhiwa 0
[12:11] MPP URO Weka hali ya upendeleo kabla ya kukatizwa. 0
[10:8] Imehifadhiwa URO Imehifadhiwa 0
7 MPIE URW Wakati 0xBC0(CSR)bit5 imewashwa, hii kidogo

inaweza kusomwa na kuandikwa katika hali ya mtumiaji.

0
[6:4] Imehifadhiwa URO Imehifadhiwa 0
3 MIE URW Wakati 0xBC0(CSR)bit5 imewashwa, hii kidogo

inaweza kusomwa na kuandikwa katika hali ya mtumiaji.

0
[1:0] Imehifadhiwa URO Imehifadhiwa 0

Sitisha Nesting

Kwa pamoja na kukatiza, rejista ya usanidi PFIC_CFGR na rejista ya kipaumbele ya kukatiza PFIC_IPRIOR, ukatizaji wa kiota unaweza kuruhusiwa kutokea. Washa kuweka kiota katika rejista ya usanidi ya kukatiza (Nesting imewashwa kwa chaguomsingi kwa vichakataji mikrosi vya mfululizo wa V3) na usanidi kipaumbele cha ukatizaji unaolingana. Kadiri thamani ya kipaumbele inavyokuwa ndogo, ndivyo kipaumbele kinavyokuwa juu. Kadiri thamani ya biti ya ukombozi inavyopungua, ndivyo kipaumbele cha ukombozi kinavyokuwa juu. Ikiwa kuna vikatizo vinavyoning'inia kwa wakati mmoja chini ya kipaumbele sawa cha kuzuia, kichakataji kidogo hujibu ukiukaji kwa thamani ya chini ya kipaumbele (kipaumbele cha juu) kwanza.

Dibaji ya Vifaa/Epilogue (HPE)

  • Wakati ubaguzi au usumbufu unapotokea, microprocessor inasimamisha mtiririko wa sasa wa programu na kuhama hadi kutekeleza ubaguzi au kukatiza kushughulikia, tovuti ya mtiririko wa sasa wa programu inahitaji kuhifadhiwa. Baada ya kurudi kwa ubaguzi au usumbufu, ni muhimu kurejesha tovuti na kuendelea na utekelezaji wa mtiririko wa programu uliosimamishwa. Kwa vichakataji vidogo vya mfululizo wa V3, "tovuti" hapa inarejelea rejista zote za Wapigaji Waliohifadhiwa katika Jedwali 1-2.
  • Vichakataji vidogo vya mfululizo wa V3 vinaauni uhifadhi wa kiotomatiki wa mzunguko mmoja wa maunzi wa rejista 16 za umbo zilizohifadhiwa za mpigaji kwenye eneo la mrundikano wa ndani ambalo halionekani kwa mtumiaji. Wakati ubaguzi au usumbufu unarudi, mzunguko mmoja wa maunzi hurejesha kiotomatiki data kutoka eneo la mrundikano wa ndani hadi rejista zenye umbo 16. HPE inasaidia kuweka kiota hadi viwango 2 vya kina.
  • Mchoro wa mkusanyiko wa shinikizo la microprocessor unaonyeshwa kwenye takwimu ifuatayo.WH-V3-Microprocessor-fig-2

Kumbuka:

  1. Katiza vitendaji kwa kutumia HPE vinahitaji kukusanywa kwa kutumia MRS au mnyororo wake wa zana uliotolewa na chaguo la kukokotoa la kukatiza linahitaji kutangazwa kwa __attribute__((interrupt(“WCH-Interrupt-fast”)))).
  2. Kitendakazi cha kukatiza kwa kutumia msukumo wa rafu kinatangazwa na __attribute__((interrupt())).

Jedwali la Vekta Bure (VTF)

  • Kidhibiti cha Kukatiza Haraka Kinachoweza Kupangwa (PFIC) hutoa chaneli 4 za VTF, yaani, ufikiaji wa moja kwa moja kwa ingizo la kukokotoa la kukatiza bila kupitia mchakato wa kukatiza jedwali la vekta.
  • Chaneli ya VTF inaweza kuwashwa kwa kuandika nambari yake ya kukatiza, kukatiza anwani ya msingi ya huduma, na kurekebisha anwani kwenye rejista inayolingana ya kidhibiti cha PFIC huku ukisanidi utendakazi wa kukatiza kwa kawaida.
  • Mchakato wa kujibu PFIC kwa ukatizaji wa haraka na bila jedwali umeonyeshwa kwenye Mchoro 3-2 hapa chini.WH-V3-Microprocessor-fig-3

Ulinzi wa Kumbukumbu ya Kimwili PMP

  • Ili kuboresha usalama wa mfumo, moduli ya ulinzi wa kumbukumbu ya kimwili (PMP) imeundwa kulingana na kiwango cha usanifu wa RISC-V kwa microprocessors za mfululizo wa V3 za shayiri ya nyanda za juu. Udhibiti wa haki za ufikiaji wa hadi maeneo 4 halisi unatumika. Ruhusa ni pamoja na soma (R), andika (W), na utekeleze (X) sifa, na urefu wa eneo lililohifadhiwa unaweza kuwekwa kwa baiti 4 angalau. Moduli ya PMP hutumika kila wakati katika hali ya mtumiaji, lakini inaweza kutekelezwa kwa hiari kwa kufunga sifa ya (L) katika hali ya mashine.
  • Ikiwa ufikiaji utakiuka kikomo cha sasa cha ruhusa, itasababisha usumbufu usio wa kawaida. Moduli ya PMP inajumuisha vikundi vinne vya rejista za usanidi wa 8-bit (Kikundi kimoja cha 32-bit) na vikundi vinne vya rejista za anwani, ambazo zote zinahitaji kupatikana katika hali ya mashine kwa maagizo ya CSR.
  • Kumbuka: Idadi ya maeneo yaliyohifadhiwa yanayoungwa mkono na PMP katika miundo tofauti ya vichakataji vidogo inaweza kuwa tofauti, na nambari inayoungwa mkono na pmpcfg na rejista za pmpaddr pia ni tofauti. Tazama Jedwali 1-1 kwa maelezo zaidi.

Seti ya Usajili wa PMP

Orodha ya rejista za CSR zinazoungwa mkono na moduli ya PMP ya microprocessor ya V3 imeonyeshwa kwenye Jedwali 4-1 hapa chini.

Jedwali la 4-1 la rejista ya moduli ya PMP

Jina Anwani ya CSR Ufikiaji Maelezo Weka upya thamani
pmpcfg0 0x3A0 MRW Rejesta ya usanidi wa PMP 0 0x00000000
pmpaddr0 0x3B0 MRW Rejesta ya anwani ya PMP 0 0xXXXXXXXXX
pmpaddr1 0x3B1 MRW Rejesta ya anwani ya PMP 1 0xXXXXXXXXX
pmpaddr2 0x3B2 MRW Rejesta ya anwani ya PMP 2 0xXXXXXXXXX
pmpaddr3 0x3B3 MRW Rejesta ya anwani ya PMP 3 0xXXXXXXXXX

pmp

pmpcfg ni rejista ya usanidi wa kitengo cha PMP, na kila rejista ina sehemu nne za kusukuma za 8-bit, zinazolingana na usanidi wa mikoa minne, na kusukuma kunawakilisha thamani ya usanidi wa mkoa i. Muundo wake umeonyeshwa kwenye jedwali lifuatalo 4-2.

Jedwali 4-2 pmpcfg0 kujiandikishaWH-V3-Microprocessor-fig-4

pmpcfg inatumika kusanidi eneo la I na ufafanuzi wake kidogo umeelezewa kwenye jedwali lifuatalo 4-3.

Jedwali 4-3 pmp

Kidogo Jina Maelezo
7 L Kufunga kumewashwa na kunaweza kufunguliwa katika hali ya mashine. 0: Haijafungwa;

1: Funga rejista husika.

[6:5] Imehifadhiwa
[4:3] A Upangaji wa anwani na uteuzi wa eneo la ulinzi. 00: IMEZIMWA (PMP imezimwa)

01: TOR (Ulinzi wa mpangilio wa juu) 10: NA4 (Ulinzi usiohamishika wa baiti nne)

11: NAPOT (2(G+2) Ulinzi wa baiti, G≥1)

2 X Sifa inayoweza kutekelezwa.
0: Hakuna ruhusa ya kutekeleza;

1: Tekeleza ruhusa.

 

1

 

W

Sifa inayoweza kuandikwa.

0: Hakuna ruhusa ya kuandika 1: Ruhusa ya kuandika.

 

0

 

R

Sifa inayoweza kusomeka

0: Hakuna ruhusa ya kusoma 1: Ruhusa ya kusoma.

pmpaddr

Rejesta ya pmpaddr inatumiwa kusanidi anwani ya eneo la I. Ufafanuzi wa kawaida uko chini ya usanifu wa RV32, ambao ni usimbaji wa biti 32 za juu za anwani halisi ya 34-bit, na umbizo lake linaonyeshwa katika jedwali lifuatalo la 4-4. .
Nafasi nzima ya anwani ya kimwili ya microprocessor V3 ni 4G, hivyo bits mbili za juu za rejista hii hazitumiwi.

Jedwali 4-4 pmpaddr WH-V3-Microprocessor-fig-5

NAPOT inapochaguliwa, sehemu ya chini ya rejista ya anwani pia inatumika kuonyesha ukubwa wa eneo la ulinzi la sasa, kama inavyoonyeshwa kwenye jedwali lifuatalo, ambapo 'y' ni kidogo ya rejista.
Jedwali 4-5 Jedwali la uhusiano kati ya usanidi wa PMP na rejista ya anwani na eneo lililohifadhiwa.

pmpaddr pmpcfg. A Kulinganisha anwani ya msingi na ukubwa
yyy…yyyy NA4 Na 'yy…yyyy00' kama anwani ya msingi, eneo la baiti 4 linalindwa.
yyy…yyy0 NAPOT Na 'yy…yyy000' kama anwani ya msingi, eneo la baiti 8 linalindwa.
yyy…yy01 NAPOT Na 'yy…yy0000' kama anwani ya msingi, eneo la baiti 16 linalindwa.
yyy…y011 NAPOT Na 'yy…y00000' kama anwani ya msingi, eneo la baiti 16 linalindwa.
yyy01…111 NAPOT Na 'y0…000000' kama anwani ya msingi, eneo la 231-byte linalindwa.
yy011…111 NAPOT Linda eneo lote la 232-byte.

Utaratibu wa Ulinzi

X/W/R katika pmpcfg inatumika kuweka mamlaka ya ulinzi ya eneo la I, na ukiukaji wa mamlaka husika utasababisha ubaguzi sambamba:

  1. Unapojaribu kuleta maagizo katika eneo la PMP bila mamlaka ya utekelezaji, itasababisha ubaguzi wa hitilafu ya ufikiaji wa maagizo (mcause=1).
  2. Unapojaribu kuandika data katika eneo la PMP bila idhini iliyoandikwa, itasababisha ubaguzi wa makosa (mcause=7) katika ufikiaji wa maagizo ya duka.
  3. Unapojaribu kusoma data katika eneo la PMP bila ruhusa ya kusoma, itasababisha hitilafu isiyo ya kawaida ya ufikiaji wa kumbukumbu (mcause=5) kwa maagizo ya upakiaji.

A in pmpcfg inatumika kuweka safu ya ulinzi na upatanishi wa anwani ya eneo I, na kulinda kumbukumbu ya A_ADDR ≤ eneo < i > < B_ADDR (zote A_ADDR na B_ADDR zinahitajika kupangiliwa katika baiti 4):

  1. Ikiwa B _ ADDR–A_ADDR = = 22, hali ya NA4 inapitishwa;
  2. Ikiwa B _ ADDR–A_ADDR = = 2(G+2), G≥1, na _ anwani ni 2(g+2), mbinu ya NAPOT inapitishwa;
  3. Vinginevyo, hali ya TOP inapitishwa.

Jedwali 4-6 njia za kulinganisha za anwani za PMP

Thamani Jina Maelezo
0b00 IMEZIMWA Hakuna eneo la kulinda
0b01 TOR Ulinzi wa Eneo Lililopangwa Juu.

Chini ya pmp

pmpadri = B_ADDR >> 2.

Kumbuka: Ikiwa eneo la 0 la PMP limesanidiwa kama modi ya TOR (i=0), mpaka wa chini wa eneo la ulinzi ni anwani 0, yaani 0 ≤ addr < pmpaddr0, zote ndani ya safu inayolingana.

0b10 NA4 Ulinzi wa eneo la baiti 4 umewekwa.

pmp

0b11 NAPOT Linda eneo la 2(G+2) kwa G ≥ 1, wakati A_ADDR ikiwa 2(G+2) ikiwa imepangiliwa. pmpadri = ((A_ADDR|(2(G+2)-1)) &~(1< >1.
  • L bit in pmp
  • Vichakato vidogo vya mfululizo wa QingKe V3 vinasaidia ulinzi wa maeneo mengi. Wakati operesheni sawa inalingana na kanda nyingi kwa wakati mmoja, kanda iliyo na nambari ndogo inalinganishwa kwanza.

Kipima Muda cha Mfumo (SysTick)

  • Microprocessor ya mfululizo wa QingKe V3 imeundwa ikiwa na kihesabu cha 32-bit au 64-bit (SysTick) ndani. Chanzo chake cha saa ni saa ya mfumo au mgawanyiko wake wa 8-frequency, na V3A inasaidia tu mgawanyiko wa 8-frequency.
  • Inaweza kutoa msingi wa wakati, muda na wakati wa kupima kwa mfumo wa uendeshaji wa wakati halisi. Aina tofauti za rejista zinazohusika katika kipima muda zina anwani tofauti za ramani, kama inavyoonyeshwa kwenye jedwali lifuatalo la 5-1 na 5-2.

Jedwali 5-1 orodha ya rejista ya V3A SysTick

Jina Anwani ya ufikiaji Maelezo Weka upya thamani
STK_CTLR 0xE000F000 Rejesta ya udhibiti wa mfumo 0x00000000
STK_CNTL 0xE000F004 Rejesta ya chini ya counter ya mfumo 0xXXXXXXXXX
STK_CNTH 0xE000F008 Rejesta ya juu ya kukabiliana na mfumo

Kumbuka: Inatumika kwa V3A pekee.

0xXXXXXXXXX
STK_CMPLR 0xE000F00C Rejesta ya chini ya hesabu ya hesabu ya mfumo 0xXXXXXXXXX
STK_CMPHR 0xE000F010 Rejesta ya juu ya ulinganisho wa hesabu ya mfumo

Kumbuka: Inatumika kwa V3A pekee.

0xXXXXXXXXX

Jedwali 5-2 V3 orodha ya rejista ya SysTick ya miundo mingine

Jina Anwani ya ufikiaji Maelezo Weka upya thamani
STK_CTLR 0xE000F000 Rejesta ya udhibiti wa mfumo 0x00000000
STK_SR 0xE000F004 Rejesta ya hali ya kaunta ya mfumo 0x00000000
STK_CNTL 0xE000F008 Daftari ya chini ya kaunta ya mfumo 0xXXXXXXXXX
STK_CMPLR 0xE000F010 Hesabu thamani ya chini ya rejista 0xXXXXXXXXX

Kila rejista imeelezewa kwa kina kama ifuatavyo.

Rejesta ya kidhibiti cha mfumo (STK_CTLR)

Jedwali 5-3 rejista za udhibiti wa SysTick

Kidogo Jina Ufikiaji Maelezo Weka upya thamani
[31:5] Imehifadhiwa RO Imehifadhiwa 0
 

 

4

 

 

MODE

 

 

RW

Njia ya kuhesabu: 1: Hesabu chini;

0: Hesabu juu.

Kumbuka: Si Sahihi kwa V3A.

 

 

0

 

 

 

3

 

 

 

STRE

 

 

 

RW

Hesabu ya upakiaji upya kiotomatiki wezesha biti:

1: Hesabu kutoka 0 tena baada ya kuhesabu hadi thamani ya kulinganisha, na uhesabu kutoka kwa thamani ya kulinganisha tena baada ya kuhesabu hadi 0;

0: Endelea kuhesabu juu/chini.

Kumbuka: Si Sahihi kwa V3A.

 

 

 

0

 

 

2

 

 

STCLK

 

 

RW

Sehemu ya uteuzi wa chanzo cha counterclock:

1: HCLK kama msingi wa wakati; 0: HCLK/8 kama msingi wa wakati.

Kumbuka: Ni batili kwa V3A, ambayo inasaidia tu

HCLK/8 kama msingi wa wakati.

 

 

0

1 TOVUTI RW Counter interrupt kuwawezesha bits kudhibiti: 0
1: Wezesha usumbufu wa kukabiliana; 0: Zima ukatizaji wa hesabu.

Kumbuka: Si Sahihi kwa V3A.

0 STE RW Kidhibiti cha mfumo huwezesha kidogo kudhibiti. 1: Wezesha STK ya kukabiliana na mfumo;

0: Zima kihesabu cha mfumo STK na kihesabu kitaacha kuhesabu.

0

Rejesta ya hali ya kaunta ya mfumo (STK_SR)

Rejesta hii haitumiki kwa V3A.

Jedwali 5-4 la rejista ya kaunta ya chini ya SysTick

Kidogo Jina Ufikiaji Maelezo Weka upya thamani
 

 

31

 

 

SWIE

 

 

RW

Washa kichochezi cha kukatiza programu (SWI): 1: Anzisha usumbufu wa programu;

0: Zima kichochezi.

Kumbuka: Biti hii lazima ifutwe baada ya kuingiza usumbufu wa programu, vinginevyo itasababisha kila wakati.

 

 

0

[30:1] Imehifadhiwa RO Imehifadhiwa 0
 

 

0

 

 

CNTIF

 

 

RW

Hesabu bendera ya kulinganisha, andika 0 waziwazi, andika 1 ni batili:

1: Hesabu hadi thamani ya kulinganisha na uhesabu hadi 0;

0: Thamani ya kulinganisha haijafikiwa.

 

 

0

Rejesta ya chini ya kaunta ya mfumo (STK_CNTL)

Jedwali 5-5 la rejista ya kaunta ya chini ya SysTick

Kidogo Jina Ufikiaji Maelezo Weka upya thamani
[31:0] CNTL RW Thamani ya sasa ya kuhesabu ni biti 32 chini. Kwa V3A, rejista hii inaweza kusomwa kama 8-bit /16-bit

/32-bit, lakini inaweza tu kuandikwa kama 8-bit, na nyinginezo

mifano sio mdogo.

0xXXXXXX XXX

Kumbuka: Sajili STK_CNTL na usajili STK_CNTH katika V3A kwa pamoja tengeneza kihesabu cha mfumo wa biti 64.

Rejesta ya juu ya kaunta ya mfumo (STK_CNTH)

Jedwali 5-6 rejesta ya juu ya kaunta ya SysTick

Kidogo Jina Ufikiaji Maelezo Weka upya thamani
[31:0] CNTH RW Thamani ya sasa ya kuhesabu counter ni biti 32 juu. Rejesta hii inaweza kusomwa na 8-bit/16-bit/32-bit, lakini inaweza tu kuandikwa na 8-bit.

Kumbuka: Inatumika kwa V3A pekee.

0xXXXXXX XXX

Kumbuka: Sajili STK_CNTL na usajili STK_CNTH katika V3A kwa pamoja tengeneza kihesabu cha mfumo wa biti 64.

Rejesta ya chini ya ulinganishaji wa hesabu ya mfumo (STK_CMPLR)

Jedwali 5-7 rejesta ya chini ya ulinganishaji wa SysTick

Kidogo Jina Ufikiaji Maelezo Weka upya thamani
[31:0] CMPL RW Weka thamani ya kulinganisha ya kaunta hadi biti 32 chini. Wakati thamani ya CMP na thamani ya CNT ni sawa, ukatizaji wa STK utaanzishwa. Kwa V3A, rejista hii inaweza kusomwa kama 8-bit /16-bit /32-bit, lakini inaweza tu kuwa

imeandikwa kama 8-bit, na mifano mingine sio mdogo.

0xXXXXXX XXX

Kumbuka: Rejesta ya STK_CMPLR na rejista STK_CMPHR katika V3A kwa pamoja huunda thamani ya kulinganisha ya 64-bit.

Rejesta ya juu ya ulinganishaji wa hesabu ya mfumo (STK_CMPHR)

Jedwali la 5-8 la usajili wa thamani ya juu wa SysTick

Kidogo Jina Ufikiaji Maelezo Weka upya thamani
[31:0] CMPH RW Weka thamani ya kulinganisha ya kaunta biti 32 juu zaidi. Ukatizaji wa STK utaanzishwa wakati thamani ya CMP na thamani ya CNT ni sawa.

Rejesta hii inaweza kusomwa na 8-bit/16-bit/32-bit, lakini inaweza tu kuandikwa na 8-bit.

Kumbuka: Inatumika kwa V3A pekee.

0xXXXXXX XXX

Kumbuka: Rejesta ya STK_CMPLR na rejista STK_CMPHR katika V3A kwa pamoja huunda thamani ya kulinganisha ya 64-bit.

Mipangilio ya Nguvu ya Chini ya Kichakataji

  • Vichakataji vidogo vya mfululizo wa QingKe V3 vinaauni hali ya kulala kupitia maagizo ya WFI (Subiri Ukatiza) ili kufikia matumizi ya chini ya nguvu tuli.
  • Pamoja na rejista ya udhibiti wa mfumo wa PFIC (PFIC_SCTLR), Njia mbalimbali za Kulala na maagizo ya WFE yanaweza kutekelezwa.

Ingiza Usingizi

  • Vichakataji vidogo vya mfululizo wa QingKe V3 vinaweza kulala kwa njia mbili, Subiri Kukatiza (WFI) na Subiri Kwa Tukio (WFE). Njia ya WFI ina maana kwamba microprocessor inakwenda kulala, inasubiri usumbufu ili kuamka, na kisha inaamka kwa kupinga sambamba kutekeleza. Mbinu ya WFE inamaanisha kuwa kichakataji kidogo hulala, husubiri tukio kuamka, na kuamka ili kuendelea kutekeleza mtiririko wa programu uliosimamishwa hapo awali.
  • Kiwango cha RISC-V kinaauni maagizo ya WFI, na amri ya WFI inaweza kutekelezwa moja kwa moja ili kuingiza usingizi kwa mbinu ya WFI. Kwa mbinu ya WFE, biti ya WFITOWFE katika rejista ya udhibiti wa mfumo PFIC_SCTLR inatumika kudhibiti amri zinazofuata za WFI kama usindikaji wa WFE ili kufikia mbinu ya WFE ya kuingiza usingizi.
  • Kina cha usingizi kinadhibitiwa kulingana na kidonge cha SLEEPDEEP katika PFIC_SCTLR.
  • Ikiwa SLEEPDEEP katika rejista ya PFIC_SCTLR itafutwa hadi sifuri, kichakataji kidogo huingia katika Hali ya Kulala na saa ya kitengo cha ndani inaruhusiwa kuzimwa isipokuwa SysTick na sehemu ya mantiki ya kuamka.
  • Ikiwa SLEEPDEEP katika rejista ya PFIC_SCTLR imewekwa, kichakataji kidogo huingia katika Hali ya Usingizi Mzito na saa zote za seli zinaruhusiwa kuzimwa.
  • Kichakataji kidogo kikiwa katika hali ya Utatuzi, haiwezekani kuingiza aina yoyote ya Hali ya Kulala.

Kuamka Usingizi

Vichakataji vidogo vya mfululizo wa QingKe V3 vinaweza kuamshwa baada ya kulala kutokana na WFI na WFE kwa njia zifuatazo.

Baada ya njia ya WFI kwenda kulala, inaweza kuamshwa na

  1. Microprocessor inaweza kuamshwa na chanzo cha kukatiza kinachoitikiwa na kidhibiti cha kukatiza. Baada ya kuamka, microprocessor hufanya kazi ya kukatiza kwanza.
  2. Weka Hali ya Kulala, ombi la utatuzi linaweza kuamsha kichakataji kidogo na kulala usingizi mzito, ombi la utatuzi haliwezi kuamsha kichakataji kidogo.

Baada ya njia ya WFE kwenda kulala, microprocessor inaweza kuamshwa na zifuatazo.

  1. Matukio ya ndani au nje, wakati hakuna haja ya kusanidi kidhibiti cha kukatiza, amka na uendelee kutekeleza programu.
  2. Ikiwa chanzo cha kukatiza kimewashwa, kichakataji kidogo huamshwa wakati usumbufu unapozalishwa, na baada ya kuamka, microprocessor hutekeleza utendakazi wa kukatiza kwanza.
  3. Ikiwa biti ya SEVONPEND katika PFIC_SCTLR itasanidiwa, kidhibiti cha kukatiza hakiwashi ukatizaji, lakini wakati ishara mpya inayosubiri ya kukatiza inapotolewa (wimbo inayosubiri iliyozalishwa hapo awali haifanyi kazi), inaweza pia kuamsha kichakataji kidogo, na bendera inayosubiri ya kukatiza inayolingana inahitaji kufutwa wewe mwenyewe baada ya kuamka.
  4. Weka ombi la utatuzi wa Modi ya Kulala inaweza kuamsha kichakataji kidogo na kulala usingizi mzito, ombi la utatuzi haliwezi kuamsha kichakataji kidogo.
  • Kwa kuongeza, hali ya kichakataji kidogo baada ya kuamka inaweza kudhibitiwa kwa kusanidi biti ya SLEEPONEXIT katika PFIC_SCTLR.
  • SLEEPONEXIT imewekwa na maagizo ya kurejesha kiwango cha mwisho cha kukatiza (mret) yataanzisha usingizi wa hali ya WFI.

SLEEPONEXIT inafutwa bila athari.

Bidhaa mbalimbali za MCU zilizo na vichakataji vidogo vya mfululizo wa V3 vinaweza kutumia hali tofauti za usingizi, kuzima vifaa vya pembeni na saa tofauti, kutekeleza sera tofauti za usimamizi wa nishati na mbinu za kuamsha kulingana na usanidi tofauti wa PFIC_SCTLR, na kutambua hali mbalimbali za nishati ya chini.

Usaidizi wa Utatuzi

  • Vichakataji vidogo vya mfululizo wa QingKe V3 vinajumuisha moduli ya utatuzi wa maunzi inayoauni utendakazi changamano wa utatuzi. Microprocessor inaposimamishwa, moduli ya utatuzi inaweza kufikia GPR za microprocessor, CSR, Kumbukumbu, vifaa vya nje, n.k. kupitia amri dhahania, maagizo ya uwekaji wa bafa ya programu, n.k. Moduli ya utatuzi inaweza kusimamisha na kuanzisha tena utendakazi wa microprocessor.
  • Moduli ya utatuzi inafuata ubainifu wa Usaidizi wa Utatuzi wa Nje wa RISC-V 0.13.2, nyaraka za kina zinaweza kupakuliwa kutoka kwa RISC-V International. webtovuti.

Moduli ya Utatuzi

  • Moduli ya utatuzi ndani ya microprocessor, inayoweza kutekeleza utendakazi wa utatuzi iliyotolewa na mwenyeji wa utatuzi, inajumuisha.
  • Ufikiaji wa rejista kupitia kiolesura cha utatuzi
  • Weka upya, sitisha, na urejeshe microprocessor kupitia kiolesura cha utatuzi
  • Kusoma na kuandika kumbukumbu, rejista za maagizo, na vifaa vya nje kupitia kiolesura cha utatuzi
  • Tumia maagizo mengi ya kiholela kupitia kiolesura cha utatuzi
  • Weka vizuizi vya programu kupitia kiolesura cha utatuzi
  • Weka vizuizi vya maunzi kupitia kiolesura cha utatuzi
  • Kusaidia utekelezaji wa amri ya kufikirika kiotomatiki
  • Kusaidia utatuzi wa hatua moja
  • Kumbuka: V3A haitumii viambatisho vya maunzi, viambajengo vya kukiuka maunzi vya V3B vinaauni maagizo ya kulinganisha anwani, na viambajengo vya maunzi vya V3C vinaauni anwani ya maagizo na kulinganisha anwani ya data.
  • Rejesta za ndani za moduli ya utatuzi hutumia msimbo wa anwani wa biti 7, na rejista zifuatazo zinatekelezwa ndani ya vichakataji vidogo vya mfululizo wa QingKe V3.

Jedwali 7-1 Orodha ya moduli za kurekebisha hitilafu

Jina Anwani ya ufikiaji Maelezo
data0 0x04 Rejesta ya data 0, inaweza kutumika kwa uhifadhi wa muda wa data
data1 0x05 Rejesta ya data 1, inaweza kutumika kwa uhifadhi wa muda wa data
kudhibiti 0x10 Rejesta ya udhibiti wa moduli ya utatuzi
hali 0x11 Rejesta ya hali ya moduli ya utatuzi
Hartinfo 0x12 Rejesta ya hali ya Microprocessor
muhtasari 0x16 Daftari ya hali ya amri ya muhtasari
amri 0x17 Daftari ya amri ya muhtasari
abstract auto 0x18 Utekelezaji wa kiotomatiki wa amri
progbuf0-7 0x20-0x27 Rejesta za kache za maagizo 0-7
haltsum0 0x40 Sitisha rejista ya hali
  • Kipangishi cha utatuzi kinaweza kudhibiti kusimamisha, kurejesha, kuweka upya, nk kwa microprocessor, nk kwa kusanidi rejista ya udhibiti. Kiwango cha RISC-V kinafafanua aina tatu za amri dhahania: rejista ya ufikiaji, ufikiaji wa haraka na kumbukumbu ya ufikiaji.
  • Microprocessor ya QingKe V3A inasaidia tu ufikiaji wa rejista, miundo mingine inasaidia rejista na ufikiaji wa kumbukumbu, lakini sio ufikiaji wa haraka. Upatikanaji wa rejista (GPRs, CSRs) na ufikiaji unaoendelea wa kumbukumbu unaweza kupatikana kwa amri za kufikirika.
  • Moduli ya utatuzi hutekeleza rejista 8 za kache za maagizo progbuf0-7, na mwenyeji wa utatuzi anaweza kuweka akiba ya maagizo mengi (ambayo yanaweza kubanwa maagizo) kwenye bafa na anaweza kuchagua kuendelea kutekeleza maagizo katika rejista za kache za maagizo baada ya kutekeleza amri dhahania au kutekeleza. maagizo yaliyohifadhiwa moja kwa moja.
  • Kumbuka kwamba maagizo ya mwisho katika programu yanahitaji kuwa maagizo ya "ebreak" au "c.ebreak". Upatikanaji wa hifadhi, vifaa vya pembeni, nk pia inawezekana kupitia amri za abstract na maagizo yaliyohifadhiwa kwenye programu.
  • Kila rejista imeelezewa kwa kina kama ifuatavyo.
  • Daftari ya data 0 (data0)

Jedwali 7-2 ufafanuzi wa rejista ya data

Kidogo Jina Ufikiaji Maelezo Weka upya Thamani
[31:0] data0 RW Rejesta ya data 0, inayotumika kwa uhifadhi wa muda wa data 0

Daftari ya data 1 (data1)

Jedwali 7-3 data1 ufafanuzi wa rejista

Kidogo Jina Ufikiaji Maelezo Weka upya Thamani
[31:0] data1 RW Rejesta ya data 1, inayotumika kwa uhifadhi wa muda wa data 0

Rejesta ya udhibiti wa moduli ya utatuzi (ondoa udhibiti)

Rejesta hii inadhibiti kusitishwa, kuweka upya na kuendelea kwa microprocessor. Kipangishi cha utatuzi huandika data kwa sehemu inayolingana ili kufikia kusitisha (haltreq), weka upya (ndmreset), endelea (resumereq). Unaelezea yafuatayo.

Jedwali 7-4 ufafanuzi wa rejista ya kudhibiti

Kidogo Jina Ufikiaji Maelezo Weka upya Thamani
31 haltreq WO 0: Futa ombi la kusitisha

1: Tuma ombi la kusitisha

0
30 anzisha tena W1 0: Batili

1: Rejesha microprocessor ya sasa

Kumbuka: Andika 1 ni halali na maunzi huondolewa baada ya kurejesha microprocessor

0
29 Imehifadhiwa RO Imehifadhiwa 0
28 ackhavereset W1 0: Batili

1: Futa kidogo hali ya mavuno ya kichakataji kidogo

0
[27:2] Imehifadhiwa RO Imehifadhiwa 0
1 ndmreset RW 0: Futa kuweka upya

1: Weka upya mfumo mzima kando na moduli ya utatuzi

 

0

0 zima RW 0: Weka upya moduli ya utatuzi

1: Moduli ya Utatuzi hufanya kazi ipasavyo

0

Rejesta ya hali ya moduli ya utatuzi (hali ya dm)

  • Rejesta hii inatumika kuonyesha hali ya moduli ya utatuzi na ni rejista ya kusoma tu yenye maelezo yafuatayo ya kila biti.

Jedwali 7-5 ufafanuzi wa rejista ya dmstatus

Kidogo Jina Ufikiaji Maelezo Weka upya Thamani
[31:20] Imehifadhiwa RO Imehifadhiwa 0
19 allhavereset RO 0: Batili

1: Weka upya Microprocessor

0
18 chochote RO 0: Batili

1: Weka upya Microprocessor

0
17 anza tena RO 0: Batili

1: Weka upya Microprocessor

0
16 any resumeack RO 0: Batili

1: Weka upya Microprocessor

0
[15:14] Imehifadhiwa RO Imehifadhiwa 0
13 alluvial RO 0: Batili

1: Microprocessor haipatikani

0
12 manufaa yoyote RO 0: Batili

1: Microprocessor haipatikani

0
11 zote zinakimbia RO 0: Batili

1: Microprocessor inafanya kazi

0
10 mbio yoyote RO 0: Batili

1: Microprocessor inafanya kazi

0
9 imesitishwa RO 0: Batili

1: Microprocessor iko katika kusimamishwa

0
8 yoyote imesitishwa RO 0: Batili

1: Microprocessor nje ya kusimamishwa

0
7 kuthibitishwa  

RO

0: Uthibitishaji unahitajika kabla ya kutumia moduli ya utatuzi

1: Moduli ya utatuzi imethibitishwa

 

0x1

[6:4] Imehifadhiwa RO Imehifadhiwa 0
[3:0] toleo RO Toleo la usanifu la usaidizi wa mfumo wa kurekebisha 0010: V0.13 0x2

Rejesta ya hali ya Microprocessor (hartinfo)

Rejesta hii inatumika kutoa maelezo kuhusu kichakataji kidogo kwa seva pangishi ya utatuzi na ni rejista ya kusoma tu na kila biti ikifafanuliwa kama ifuatavyo.

Jedwali 7-6 ufafanuzi wa rejista ya hartinfo

Kidogo Jina Ufikiaji Maelezo Weka upya Thamani
[31:24] Imehifadhiwa RO Imehifadhiwa 0
[23:20] mkwaruzo RO Idadi ya rejista za mikwaruzo zinazotumika 0x3
[19:17] Imehifadhiwa RO Imehifadhiwa 0
16 DataAccess RO 0: Daftari ya data imechorwa kwa anwani ya CSR

1: Rejesta ya data imewekwa kwenye anwani ya kumbukumbu

0x1
[15:12] saizi ya data RO Idadi ya rejista za data 0x2
  [11:0] kuongeza data  

RO

Anwani ya kukabiliana na data ya rejista ya data0,

ambaye anwani yake ya msingi ni 0xe0000000, inategemea usomaji maalum.

0xXXX

Udhibiti wa amri ya mukhtasari na rejista za hali (muhtasari)

Rejesta hii hutumiwa kuonyesha utekelezaji wa amri ya kufikirika. Mpangishi wa utatuzi anaweza kusoma rejista hii ili kujua kama amri ya mwisho ya muhtasari inatekelezwa au la na inaweza kuangalia ikiwa hitilafu imetolewa wakati wa utekelezaji wa amri ya kufikirika na aina ya kosa, ambayo imefafanuliwa kwa kina kama ifuatavyo.

Jedwali 7-7 ufafanuzi wa rejista ya muhtasari

Kidogo Jina Ufikiaji Maelezo Weka upya Thamani
[31:29] Imehifadhiwa RO Imehifadhiwa 0
[28:24] progbufsize RO Inaonyesha idadi ya programu ya bafa ya programu

rejista za kashe

0x8
[23:13] Imehifadhiwa RO Imehifadhiwa 0
12 busy RO 0: Hakuna amri ya kufikirika inayotekelezwa

1: Kuna amri dhahania zinazotekelezwa

Kumbuka: Baada ya utekelezaji, vifaa vinafutwa.

 

0

11 Imehifadhiwa RO Imehifadhiwa 0
[10:8] cmder RW Aina ya hitilafu ya amri 000: Hakuna kosa

001: Utekelezaji wa amri ya muhtasari wa kuandika kwa amri, muhtasari, rejista za kiotomatiki au kusoma na kuandika kwa data na rejista za progbuf

010: Haiauni amri ya dhahania ya sasa 011: Utekelezaji wa amri ya kufikirika isipokuwa 100: Kichakataji kidogo hakijasimamishwa au hakipatikani na hakiwezi kutekeleza amri dhahania 101: Hitilafu ya basi

110: Hitilafu ya usawa wakati wa mawasiliano 111: Makosa mengine

Kumbuka: Kwa uandishi kidogo 1 hutumiwa kufuta sifuri.

 

 

 

 

 

 

 

0

[7:4] Imehifadhiwa RO Imehifadhiwa 0
[3:0] punguzo RO Idadi ya rejista za data 0x2
  • Wapangishi wa utatuzi wanaweza kufikia GPR, rejista za CSR, na kumbukumbu kwa kuandika thamani tofauti za usanidi kwenye rejista ya amri ya muhtasari.
  • Wakati wa kufikia rejista, bits za rejista ya amri hufafanuliwa kama ifuatavyo.
  • Jedwali 7-8 Ufafanuzi wa rejista ya amri wakati wa kupata rejista
Kidogo Jina Ufikiaji Maelezo Weka upya Thamani
[31:24] aina ya cmd WO Aina ya amri ya muhtasari 0: Daftari la ufikiaji;

1: Ufikiaji wa haraka (hautumiki);

2: Upatikanaji wa kumbukumbu.

0
23 Imehifadhiwa WO Imehifadhiwa 0
[22:20] aarsize WO Fikia rejista ya upana wa data 000: 8-bit

001: biti 16

010: biti 32

0
011: 64-bit (haitumiki) 100: 128-bit (haitumiki)

Kumbuka: Wakati wa kupata rejista za sehemu zinazoelea

FPRs, ufikiaji wa biti 32 pekee ndio unaotumika.

19 aarpostincrement WO 0: Hakuna athari

1: Ongeza thamani ya regno kiotomatiki baada ya kupata rejista

 

0

18 post exec WO 0: Hakuna athari

1:Tekeleza amri ya kufikirika kisha utekeleze amri katika progbuf

 

0

17 uhamisho WO 0: Usitekeleze operesheni iliyoainishwa na maandishi

1: Tekeleza upotoshaji uliobainishwa na maandishi

0
16 andika WO 0: Nakili data kutoka kwa rejista maalum hadi data0 1: Nakili data kutoka kwa rejista ya data0 hadi rejista maalum  

0

[15:0] regno WO Bainisha rejista za ufikiaji 0x0000-0x0fff ni CSRs 0x1000-0x101f ni GPRs  

0

Wakati wa kufikia kumbukumbu, bits kwenye rejista ya amri hufafanuliwa kama ifuatavyo.

Jedwali 7-9 Ufafanuzi wa Daftari la amri wakati wa Kupata Kumbukumbu

Kidogo Jina Ufikiaji Maelezo Weka upya Thamani
[31:24] aina ya cmd WO Aina ya amri ya muhtasari 0: Daftari la ufikiaji;

1: Ufikiaji wa haraka (hautumiki);

2: Kumbukumbu ya ufikiaji.

0
23 aamvirtual WO 0: Fikia anwani halisi;

1: Fikia anwani pepe.

0
[22:20] ukubwa wa mkono WO Fikia data ya kumbukumbu upana kidogo 000: 8-bit;

001: 16-bit;

010: 32-bit;

011: 64-bit (haitumiki); 100: 128-bit (haitumiki);

 

0

19 aampuzushi WO 0: Hakuna ushawishi;

1: Baada ya kufikia kumbukumbu kwa mafanikio, ongeza anwani iliyohifadhiwa kwenye rejista ya data1 kwa idadi ya baiti zinazolingana na upana wa biti uliosanidiwa na saizi ya mkono.

Aamsize=0, imefikiwa na byte, data1 pamoja na 1.

Aamsize=1, imefikiwa kwa neno nusu, data1 pamoja na 2. aamsize=2, imefikiwa na biti, data1 pamoja na 4.

 

0

18 post exec WO 0: Hakuna ushawishi;

1: Tekeleza amri katika progbuf baada ya kutekeleza amri ya kufikirika.

0
17 Hifadhi RO Imehifadhiwa 0
 

 

16

 

 

andika

 

 

WO

0: Soma data kutoka kwa anwani iliyobainishwa na data1 hadi data0

1: Andika data katika data0 kwa anwani iliyobainishwa na

data1.

 

 

0

 

 

 

 

 

 

[15:14]
 

 

 

 

 

 

lengwa mahususi

 

 

 

 

 

 

WO

Ufafanuzi wa hali ya kusoma na kuandika Andika:

00, 01: Andika moja kwa moja kwenye kumbukumbu;

10: Baada ya data katika data0 kuwa AU na biti za data kwenye kumbukumbu, matokeo huandikwa kwenye kumbukumbu (Ufikiaji wa maneno pekee ndio unaotumika).

11: Baada ya kujumlisha data katika data0 na biti za data kwenye kumbukumbu, andika matokeo kwenye kumbukumbu (Ufikiaji wa maneno pekee ndio unaotumika).

Soma:

00, 01, 10, 11: Soma 0 moja kwa moja kutoka kwa kumbukumbu.

 

 

 

 

 

 

0

[13:0] Hifadhi RO Imehifadhiwa

Amri ya muhtasari ya rejista ya utekelezaji otomatiki (abstract auto)

Rejesta hii inatumika kusanidi moduli ya utatuzi. Wakati wa kusoma na kuandika progbufx na data ya moduli ya kurekebisha, amri ya abstract inaweza kutekelezwa tena.

Maelezo ya rejista hii ni kama ifuatavyo:

Jedwali 7-10 ufafanuzi wa rejista ya kiotomatiki

Kidogo Jina Ufikiaji Maelezo Weka upya Thamani
[31:16] autoexecprogbuf RW Ikiwa kidogo imewekwa, kusoma na kuandika sambamba ya progbufx itasababisha amri ya abstract katika rejista ya amri kutekelezwa tena.

Kumbuka: Msururu wa V3 umeundwa na progbuf 8, sambamba na vipande [23:16].

 

0

[15:12] Hifadhi RO Imehifadhiwa 0
[11:0] data otomatiki  

RW

Ikiwa kidogo imewekwa kwa 1, kusoma na kuandika sambamba ya rejista ya data itasababisha amri ya abstract katika rejista ya Amri kutekelezwa tena.

Kumbuka: Mfululizo wa V3 umeundwa na data mbili madaftari, sambamba na bits [1:0].

0

Rejesta ya akiba ya maagizo (progbufx)

Rejesta hii hutumiwa kuhifadhi maagizo yoyote, na kupeleka operesheni inayolingana, ikijumuisha 8, ambayo inahitaji kuzingatia utekelezaji wa mwisho ambao unahitaji kuwa "mapumziko" au "c.ebreak".

Jedwali 7-11 ufafanuzi wa rejista ya progbuf

Kidogo Jina Ufikiaji Maelezo Weka upya Thamani
[31:0] progbuf RW Usimbaji wa maagizo kwa shughuli za kache, ambayo

inaweza kujumuisha maagizo ya kukandamiza

0

Sitisha rejista ya hali (haltsum0)

Rejesta hii inatumiwa kuonyesha ikiwa microprocessor imesimamishwa au la. Kila kidogo inaonyesha hali ya kusimamishwa ya microprocessor, na wakati kuna msingi mmoja tu, ni sehemu ya chini tu ya rejista hii hutumiwa kuionyesha.

Jedwali 7-12 ufafanuzi wa rejista ya haltsum0

Kidogo Jina Ufikiaji Maelezo Weka upya Thamani
[31:1] Imehifadhiwa RO Imehifadhiwa 0
0 haltsum0 RO 0: Microprocessor inafanya kazi kawaida

1: Kuacha Microprocessor

0
  • Kando na rejista zilizotajwa hapo juu za moduli ya utatuzi, utendakazi wa utatuzi pia unahusisha baadhi ya rejista za CSR, hasa udhibiti wa utatuzi na rejista ya hali ya dcsr na kielekezi cha maelekezo ya utatuzi dpc, ambazo zimefafanuliwa kwa kina kama ifuatavyo.
  • Udhibiti wa utatuzi na rejista ya hali (dcsr)

Jedwali 7-13 Ufafanuzi wa rejista ya dcsr

Kidogo Jina Ufikiaji Maelezo Weka upya Thamani
[31:28] xdebugver DRO 0000: Utatuzi wa nje hautumiki 0100: Inasaidia utatuzi wa kawaida wa nje

1111: Utatuzi wa nje unaauniwa, lakini haufikii

vipimo

 

 

0x4

[27:16] Imehifadhiwa DRO Imehifadhiwa 0
15 mapumziko DRW 0: Amri ya mapumziko katika hali ya mashine hufanya kama ilivyoelezewa kwenye fursa file

1: Amri ya kuvunja katika hali ya mashine inaweza kuingia katika hali ya utatuzi

 

 

0

[14:13] Imehifadhiwa DRO Imehifadhiwa 0
12 kuvunjika  

DRW

0: Amri ya mapumziko katika hali ya mtumiaji hufanya kama ilivyoelezewa kwenye fursa file

1: Amri ya mapumziko katika hali ya mtumiaji inaweza kuingiza hali ya utatuzi

 

 

0

11 hatua DRW 0: Vikatizo vimezimwa chini ya utatuzi wa hatua moja

1: Washa ukatizaji chini ya utatuzi wa hatua moja

0
10 Imehifadhiwa DRO Imehifadhiwa 0
9 wakati wa kuacha DRW 0: Kipima saa cha mfumo kinachoendesha katika hali ya Utatuzi

1: Kipima saa cha mfumo kitaacha katika hali ya Utatuzi

0
  [8:6] sababu DRO Sababu za kuingiza utatuzi

001: Kuingiza utatuzi kwa njia ya amri ya mapumziko (kipaumbele 3)

010: Kuingiza utatuzi kwa njia ya moduli ya kichochezi (kipaumbele cha 4, cha juu zaidi)

011: Kuingiza utatuzi kwa njia ya ombi la kusitisha (kipaumbele 1)

100: utatuzi kwa njia ya utatuzi wa hatua moja

(kipaumbele 0, cha chini kabisa)

0
101: ingiza modi ya utatuzi moja kwa moja baada ya kuweka upya microprocessor (kipaumbele 2) Nyingine: Zimehifadhiwa
[5:3] Imehifadhiwa DRO Imehifadhiwa 0
2 hatua DRW 0: Zima utatuzi wa hatua moja

1: Washa utatuzi wa hatua moja

0
[1:0] Iliyotangulia DRW Hali ya upendeleo 00: Hali ya mtumiaji

01: Hali ya msimamizi (haitumiki) 10: Imehifadhiwa

11: Hali ya mashine

Kumbuka: Rekodi hali iliyobahatika unapoingiza modi ya utatuzi, kitatuzi kinaweza kurekebisha thamani hii ili kurekebisha hali iliyobahatika wakati wa kuondoka kwenye utatuzi.

 

 

 

 

0

kielekezi cha programu ya modi ya utatuzi (DPC)

  • Rejesta hii hutumiwa kuhifadhi anwani ya maagizo yanayofuata ya kutekelezwa baada ya microprocessor kuingia katika hali ya utatuzi, na thamani yake inasasishwa kwa sheria tofauti kulingana na sababu ya kuingiza utatuzi. dpc rejista imeelezewa kwa kina kama ifuatavyo.

Jedwali 7-14 ufafanuzi wa rejista ya dpc

Kidogo Jina Ufikiaji Maelezo Weka upya Thamani
[31:0] DPC DRW Anwani ya maagizo 0

Sheria za kusasisha rejista zinaonyeshwa kwenye jedwali lifuatalo.

Jedwali 7-15 sheria za sasisho za dpc

Ingiza mbinu ya kurekebisha Sheria za sasisho za dpc
mapumziko Anwani ya maagizo ya Mlipuko
hatua moja Anwani ya maagizo ya maagizo yanayofuata ya maagizo ya sasa
trigger moduli Haitumiki kwa muda
kusitisha ombi Anwani ya maagizo yanayofuata ya kutekelezwa wakati wa kuingiza Utatuzi

Kiolesura cha Utatuzi

  • Tofauti na kiwango cha JTAG kiolesura kinachofafanuliwa na RISC-V, QingKe V3 mfululizo microprocessor inachukua 1- kiolesura cha utatuzi cha utatuzi wa waya/waya 2 na kufuata itifaki ya kiolesura cha utatuzi cha WCH V1.0.
  • Kiolesura cha utatuzi kinawajibika kwa mawasiliano kati ya seva pangishi ya utatuzi na sehemu ya utatuzi na inatambua utendakazi wa kusoma/kuandika wa seva pangishi ya utatuzi kwenye rejista za moduli za utatuzi.
  • WCH ilibuni WCH_Link na chanzo wazi cha mfumo wake wa jozi na mpango files, ambayo inaweza kutumika kwa kurekebisha microprocessors zote za usanifu wa RISC-V.
  • Rejelea Mwongozo wa Itifaki ya Utatuzi wa WCH kwa itifaki maalum za kiolesura cha utatuzi.

Orodha ya Usajili ya CSR

  • Usanifu wa RISC-V unafafanua idadi ya Rejesta za Udhibiti na Hali (CSR) kwa ajili ya kudhibiti na kurekodi hali ya uendeshaji ya microprocessor.
  • Baadhi ya CSR zimetambulishwa katika sehemu iliyotangulia, na sura hii itaeleza kwa kina rejista za CSR zinazotekelezwa katika vichakataji vidogo vya mfululizo wa QingKe V3.

Orodha ya Usajili ya CSR

Jedwali 8-1 Orodha ya Sajili za CSR za Microprocessor

Aina Jina CSR Anwani Ufikiaji Maelezo
RISC-V

CSR ya kawaida

maandamano 0xF12 MRO Rejesta ya nambari ya usanifu
mpumbavu 0xF13 MRO Rejesta ya nambari za utekelezaji wa maunzi
hali 0x300 MRW Sajili ya hali
misa 0x301 MRW Rejesta ya seti ya maagizo ya vifaa
mtvec 0x305 MRW Rejesta ya anwani ya msingi ya ubaguzi
mkwaruzo 0x340 MRW Njia ya mashine stagrejista
MEPC 0x341 MRW Rejesta ya pointer ya mpango wa ubaguzi
sababu 0x342 MRW Rejesta ya sababu ya ubaguzi
mtval 0x343 MRW Rejesta ya thamani ya ubaguzi
pmpcfg 0x3A0+i MRW Rejesta ya usanidi wa PMP
pmpaddr 0x3B0+i MRW Rejesta ya anwani ya PMP
chagua 0x7A0 MRW Rejista ya uteuzi wa kianzisha utatuzi
tdata1 0x7A1 MRW Rejista ya kusuluhisha data 1
tdata2 0x7A2 MRW Rejista ya kusuluhisha data 2
dcsr 0x7B0 DRW Udhibiti wa utatuzi na rejista za hali
dpc 0x7B1 DRW Rejesta ya kielekezi cha programu ya modi ya utatuzi
scratch0 0x7B2 DRW Hali ya utatuzi stagsajili ya 0
scratch1 0x7B3 DRW Hali ya utatuzi stagsajili ya 1
 

Muuzaji amefafanua CSR

gintenr 0x800 URW kuwezesha rejista ya usumbufu wa ulimwengu
intsyscr 0x804 URW Kukatisha rejista ya udhibiti wa mfumo
corecfgr 0xBC0 MRW Rejesta ya usanidi wa Microprocessor
inestcr 0xBC1 MRW Kataza rejista ya udhibiti iliyoorodheshwa

Sajili za Kawaida za CSR za RISC-V

  • Rejesta ya nambari ya usanifu (marchid)
  • Rejesta hii ni rejista ya kusoma pekee ili kuonyesha nambari ya sasa ya usanifu wa maunzi ya microprocessor, ambayo inaundwa hasa na msimbo wa muuzaji, msimbo wa usanifu, msimbo wa mfululizo na msimbo wa toleo. Kila mmoja wao hufafanuliwa kama ifuatavyo.

Jedwali 8-2 ufafanuzi wa rejista ya marchid

Kidogo Jina Ufikiaji Maelezo Weka upya Thamani
31 Imehifadhiwa MRO Imehifadhiwa 1
[30:26] Muuzaji0 MRO Msimbo wa mtengenezaji 0

Imewekwa kwa herufi "W" msimbo

0x17
[25:21] Muuzaji1 MRO Msimbo wa mtengenezaji1

Imewekwa kwa herufi "C" msimbo

0x03
[20:16] Muuzaji2 MRO Msimbo wa mtengenezaji 2

Imewekwa kwa herufi "H" msimbo

0x08
15 Imehifadhiwa MRO Imehifadhiwa 1
[14:10] Arch MRO Kanuni ya usanifu 0x16
Usanifu wa RISC-V umewekwa kwa msimbo wa barua "V".
[9:5] Msururu MRO Msimbo wa mfululizo

Mfululizo wa QingKe V3, uliowekwa kwa nambari "3"

0x03
[4:0] Toleo MRO Msimbo wa toleo

Inaweza kuwa toleo la "A", "B", "C" na herufi zingine za msimbo

x

Nambari ya mtengenezaji na nambari ya toleo ni ya alfabeti, na nambari ya mfululizo ni nambari. Jedwali la kusimba la herufi linaonyeshwa kwenye jedwali lifuatalo.

Jedwali la 8-3 la Ramani ya Alfabeti

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
  • Kati yao, QingKe V3A microprocessor, rejista inasoma nyuma hadi 0.

Rejesta ya nambari za utekelezaji wa maunzi (limpid)

  • Rejesta hii inaundwa hasa na misimbo ya wauzaji, ambayo kila moja inafafanuliwa kama ifuatavyo.

Ufafanuzi wa rejista ya jedwali 8-4

Kidogo Jina Ufikiaji Maelezo Weka upya Thamani
31 Imehifadhiwa MRO Imehifadhiwa 1
[30:26] Muuzaji0 MRO Msimbo wa mtengenezaji 0

Imewekwa kwa herufi "W" msimbo

0x17
[25:21] Muuzaji1 MRO Msimbo wa mtengenezaji1

Imewekwa kwa herufi "C" msimbo

0x03
[20:16] Muuzaji2 MRO Msimbo wa mtengenezaji 2

Imewekwa kwa herufi "H" msimbo

0x08
15 Imehifadhiwa MRO Imehifadhiwa 1
[14:8] Imehifadhiwa MRO Imehifadhiwa 0
[7:4] Ndogo MRO Nambari ya ubadilishaji 0xX
[3:0] Mkuu MR0 Nambari kuu ya toleo 0xX
  • Rejesta hii inaweza kusomeka katika utekelezaji wa mashine yoyote, na katika kichakataji mfululizo cha QingKe V3A, rejista hii inasomeka hadi sifuri.

Rejesta ya hali ya mashine (hali)

  • Rejista hii imeelezewa kwa sehemu katika sehemu iliyopita, na watu wake wamewekwa kama ifuatavyo.

Jedwali 8-5 mstatus rejista ufafanuzi

Kidogo Jina Ufikiaji Maelezo Weka upya Thamani
[31:13] Imehifadhiwa MRO Imehifadhiwa 0
[12:11] MPP MRW Hali ya upendeleo kabla ya kuingia kwenye mapumziko 0
[10:8] Imehifadhiwa MRO Imehifadhiwa 0
7 MPIE MRW Kataza wezesha hali kabla ya kuingiza usumbufu 0
[6:4] Imehifadhiwa MRO Imehifadhiwa 0
3 MIE MRW Washa kipengele cha kukatiza kwa hali ya mashine 0
[2:0] Imehifadhiwa MRO Imehifadhiwa 0
  • Sehemu ya MPP inatumika kuhifadhi hali iliyobahatika kabla ya kuingiza ubaguzi au kukatiza na inatumika kurejesha hali iliyobahatika baada ya kuondoka kwa ubaguzi au kukatiza. MIE ni kipengee cha kuwezesha kukatiza kwa ulimwengu, na wakati wa kuingiza ubaguzi au kukatiza, thamani ya MPIE inasasishwa hadi thamani ya MIE, na ikumbukwe kwamba katika microprocessors za mfululizo wa QingKe V3, MIE haitasasishwa hadi 0 kabla ya kiwango cha mwisho cha ukatizaji uliowekwa ili kuhakikisha kuwa uwekaji wa kutatiza katika hali ya Mashine unaendelea kutekelezwa. Wakati ubaguzi au usumbufu umeondolewa, kichakataji kidogo hurudi kwenye modi ya Mashine iliyohifadhiwa na MPP, na MIE inarejeshwa kwa thamani ya MPIE.
  • Microprocessor ya QingKe V3 inasaidia Modi ya Mashine na Hali ya Mtumiaji, ikiwa unahitaji kufanya microprocessor ifanye kazi tu katika hali ya Mashine, unaweza kuweka MPP kuwa 0x3 katika uanzishaji wa buti. file, yaani, baada ya kurudi, itabaki daima katika hali ya Mashine.

Rejesta ya seti ya maagizo ya vifaa (misa)

  • Rejista hii hutumiwa kuonyesha usanifu wa microprocessor na upanuzi wa seti ya maagizo, ambayo kila moja inaelezewa kama ifuatavyo.

Jedwali 8-6 ufafanuzi wa rejista ya misa

Kidogo Jina Ufikiaji Maelezo Weka upya Thamani
[31:30] MXL MRO Urefu wa neno la mashine 1:32

2:64

3:128

1
[29:26] Imehifadhiwa MRO Imehifadhiwa 0
[25:0] Viendelezi MRO Viendelezi vya kuweka maagizo x
  • MXL inatumika kuashiria urefu wa neno wa kichakataji mikrosi, QingKe V3 ni vichakataji vidogo-bit 32, na kikoa kimewekwa kwa 1.
  • Upanuzi hutumiwa kuonyesha kwamba microprocessor inasaidia maelezo ya kuweka maagizo yaliyopanuliwa, kila moja inaonyesha darasa la upanuzi, maelezo yake ya kina yanaonyeshwa kwenye jedwali lifuatalo.

Jedwali la 8-7 Weka Maelezo ya Ugani

Kidogo Jina Maelezo
0 A Ugani wa atomiki
1 B Kwa muda, imehifadhiwa kwa kiendelezi cha Udhibiti wa Bit
2 C Kiendelezi kilichobanwa
3 D Upanuzi wa sehemu ya kuelea yenye usahihi maradufu
4 E RV32E msingi ISA
5 F Ugani wa sehemu ya kuelea yenye usahihi mmoja
6 G Viendelezi vya ziada vya kawaida vipo
7 H Ugani wa Hypervisor
8 I RV32I/64I/128I msingi ISA
9 J Kwa muda, zimehifadhiwa kwa kiendelezi cha Lugha Zilizotafsiriwa kwa Nguvu
10 K Imehifadhiwa
11 L Kwa muda, imehifadhiwa kwa kiendelezi cha Pointi ya Kuelea ya Desimali
12 M Nambari ya Kuzidisha/Gawa kiendelezi
13 N Ukatizaji wa kiwango cha mtumiaji unatumika
14 O Imehifadhiwa
15 P Kwa muda, imehifadhiwa kwa kiendelezi cha Packed-SIMD
16 Q Kiendelezi cha sehemu ya kuelea ya usahihi wa nne
17 R Imehifadhiwa
18 S Hali ya msimamizi imetekelezwa
19 T Kwa muda, imehifadhiwa kwa kiendelezi cha Kumbukumbu ya Muamala
20 U Hali ya mtumiaji imetekelezwa
21 V Imehifadhiwa kwa muda kwa ajili ya kiendelezi cha Vekta
22 W Imehifadhiwa
23 X Viendelezi visivyo vya kawaida vipo
24 Y Imehifadhiwa
25 Z Imehifadhiwa
  • Kwa mfanoample, kwa microprocessor ya QingKe V3A, thamani ya rejista ni 0x401001105, ambayo ina maana kwamba usanifu wa seti ya maagizo inayotumika ni RV32IMAC, na ina utekelezaji wa mode ya Mtumiaji.

Rejesta ya anwani ya msingi ya ubaguzi wa hali ya mashine (mtvec)

  • Rejesta hii inatumika kuhifadhi anwani ya msingi ya kidhibiti au cha kukatiza na sehemu mbili za chini hutumika kusanidi modi na mbinu ya utambuzi wa jedwali la vekta kama ilivyoelezwa katika Sehemu ya 3.2.

Njia ya mashine stagsajili ya usajili (mkwaruzo)

Jedwali 8-8 ufafanuzi wa rejista ya mscratch

Kidogo Jina Ufikiaji Maelezo Weka upya Thamani
[31:0] mkwaruzo MRW Hifadhi ya data 0

Rejesta hii ni rejista ya 32-bit inayoweza kusomeka na kuandikwa katika hali ya mashine kwa hifadhi ya muda ya data. Kwa mfanoample, wakati wa kuingiza ubaguzi au kidhibiti cha kukatiza, kiashirio cha stack cha mtumiaji huhifadhiwa kwenye rejista hii na kiashirio cha rafu cha kukatiza kinatumwa kwa rejista ya SP. Baada ya kuondoka kwa ubaguzi au kukatiza, rejesha thamani ya kiashirio cha rafu ya mtumiaji kutoka mwanzo. Hiyo ni, safu ya kukatiza na safu ya watumiaji inaweza kutengwa.

Rejesta ya vielelezo vya programu isiyo ya hali ya mashine (ramani)

Jedwali 8-9 ufafanuzi wa rejista ya mepc

Kidogo Jina Ufikiaji Maelezo Weka upya Thamani
[31:0] mepc MRW Kiashiria cha utaratibu wa ubaguzi 0
  • Rejesta hii inatumika kuhifadhi pointer ya programu wakati wa kuingiza ubaguzi au kukatiza.
  • Hutumika kuhifadhi kielekezi cha Kompyuta cha maagizo kabla ya kuweka kighairi wakati ubaguzi au usumbufu unapozalishwa, na mepc hutumika kama anwani ya kurejesha wakati ubaguzi au ukatizaji unashughulikiwa na kutumika kwa urejeshaji wa kipekee au kukatiza.
  • Hata hivyo, ni muhimu kutambua hilo.
  • Kighairi kinapotokea, mepc inasasishwa hadi thamani ya Kompyuta ya maagizo yanayozalisha ubaguzi kwa sasa.
  • Ukatizaji unapotokea, mepc inasasishwa hadi thamani ya Kompyuta ya maagizo yanayofuata.
  • Unapohitaji kurejesha hali ya kutofuata kanuni baada ya kuchakata kando, unapaswa kuzingatia kurekebisha thamani ya mepc, na maelezo zaidi yanaweza kupatikana katika Vighairi vya Sura ya 2.

Rejesta ya sababu ya ubaguzi wa hali ya mashine (sababu)

Jedwali 8-10 mcause rejista ya ufafanuzi

Kidogo Jina Ufikiaji Maelezo Weka upya Thamani
31 Katiza MRW Sehemu ya viashiria vya kukatiza 0: Isipokuwa

1: Kukatizwa

 

0

[30:0] Msimbo wa Kighairi MRW Kwa misimbo ya kipekee, angalia Jedwali 2-1 kwa maelezo 0
  • Rejesta hii hutumiwa hasa kuhifadhi sababu ya ubaguzi au nambari ya kukatiza ya kukatiza. Sehemu yake ya juu zaidi ni sehemu ya Kukatiza, ambayo hutumiwa kuonyesha ikiwa tukio la sasa ni la kipekee au la kukatiza.
  • Kidogo cha chini ni msimbo wa ubaguzi, ambao hutumiwa kuonyesha sababu maalum. Maelezo yake yanaweza kupatikana katika Sura ya 2 ya Vighairi.

Rejista ya thamani ya ubaguzi wa hali ya mashine (mtval)

Jedwali 8-11 ufafanuzi wa rejista ya mtval

Kidogo Jina Ufikiaji Maelezo Weka upya Thamani
[31:0] mtval MRW Thamani ya ubaguzi 0
  • Rejesta hii inatumika kushikilia thamani iliyosababisha ubaguzi wakati ubaguzi ulipotokea. Kwa maelezo kama vile thamani na muda wa hifadhi yake, tafadhali rejelea Sura ya 2 ya Vighairi.

Rejesta ya usanidi wa PMP (pmpcfg

  • Rejesta hii hutumiwa hasa kusanidi kitengo cha ulinzi wa kumbukumbu halisi, na kila biti 8 za rejista hii hutumiwa kusanidi ulinzi wa eneo. Tafadhali rejelea Sura ya 4 kwa ufafanuzi wa kina.

Rejesta ya anwani ya PMP (pmpaddr

  • Rejesta hii hutumiwa hasa kwa usanidi wa anwani wa kitengo cha ulinzi wa kumbukumbu halisi, ambayo husimba biti 32 za juu za anwani ya kawaida ya 34-bit. Tafadhali rejelea Sura ya 4 kwa mbinu mahususi ya usanidi.

Rejesta ya vielelezo vya programu ya hali ya utatuzi (DPC)

  • Rejesta hii hutumiwa kuhifadhi anwani ya maagizo yanayofuata ya kutekelezwa baada ya microprocessor kuingia
  • Hali ya utatuzi na thamani yake inasasishwa kwa sheria tofauti kulingana na sababu ya kuingiza utatuzi. Rejelea Sehemu ya 6.1 kwa maelezo ya kina.

chagua sajili ya kianzisha utatuzi (chagua)

  • Inatumika tu kwa vichakataji vidogo vinavyotumia viingilio vya maunzi na kuauni sehemu za kukatika za idhaa 4 zaidi, na biti zake 2 za chini ni halali.
  • Wakati wa kusanidi kila sehemu ya kukatika kwa kituo, unahitaji kuchagua chaneli inayolingana kupitia rejista hii kabla ya kusanidi.

Jedwali 8-12 chagua ufafanuzi wa rejista

Kidogo Jina Ufikiaji Maelezo Weka upya Thamani
[31:2] Imehifadhiwa MRO Imehifadhiwa 0
[1:0]  

CHAGUA

 

MRW

Rejista ya uteuzi wa kituo cha kuvunja imesanidiwa, yaani, baada ya kituo sambamba kuchaguliwa, rejista za tdata1 na tdata2 zinaweza kuendeshwa ili kusanidi kituo cha kuvunja.

habari.

 

X

Tatua rejista ya data ya 1(tdata1)

Inatumika tu kwa vichakataji vidogo vinavyotumia viambajengo vya maunzi. Vichakataji vidogo vinaauni anwani ya maagizo na sehemu za kukiuka za anwani ya data, ambapo TYPE biti ya rejista ya tdata1 ni thamani isiyobadilika ya 2, na biti zingine zinapatana na ufafanuzi wa udhibiti katika kiwango cha utatuzi.

Jedwali 8-13 ufafanuzi wa rejista ya tdata1

Kidogo Jina Ufikiaji Maelezo Weka upya Thamani
[31:28] AINA MRO Ufafanuzi wa aina ya Breakpoint, aina ya udhibiti. 0x2
 

 

27

 

 

DMODE

 

 

MRO

0: Rejesta husika za flip-flop zinaweza kurekebishwa katika hali ya mashine na utatuzi;

1: Hali ya utatuzi pekee ndiyo inayoweza kurekebisha rejista husika za flip-flop.

 

 

1

  [26:21]  

MASKMAX

 

MRO

Wakati MATCH=1, upeo wa upeo wa nguvu wa kielelezo wa kulinganisha unaruhusiwa, yaani, upeo unaoruhusiwa wa kulinganisha ni baiti 231.  

0x1F

[20:13] Imehifadhiwa MRO Imehifadhiwa 0
 

 

12

 

 

ACTION

 

 

MRW

Weka hali ya uchakataji wakati wa kuanzisha sehemu ya kuvunja:

0: Wakati wa kuchochea, ingiza sehemu ya kuvunja na urudishe usumbufu;

1: Ingiza hali ya utatuzi inapoanzishwa.

 

 

0

[11:8] Imehifadhiwa MRO Imehifadhiwa 0
 

 

 

7

 

 

 

MECHI

 

 

 

MRW

Usanidi wa sera inayolingana:

0: Linganisha wakati thamani ya kichochezi ni sawa na TDATA2;

1: Thamani ya kichochezi inalingana na biti ya juu ya m ya TDATA2, ambapo m = 31–n, na n ni nukuu 0 ya kwanza ya TDATA2 (kuanzia biti ya chini).

 

 

 

0

 

6

 

M

 

MRW

Washa flip-flop katika hali ya M:

0: Zima kichochezi katika hali ya M; 1: Washa kichochezi katika hali ya M.

 

0

[5:4] Imehifadhiwa MRO Imehifadhiwa 0
 

3

 

U

 

MRW

Washa kichochezi katika hali ya U:

0: Lemaza kichochezi katika hali ya U; 1: Washa kichochezi katika hali ya U.

 

0

 

2

 

TEKELEZA

 

MRW

Kichochezi cha anwani ya kusoma maagizo kimewashwa: 0: Zima;

1: Wezesha.

 

0

 

1

 

DUKA

 

MRW

Kichochezi cha anwani ya kuandika data kimewashwa: 0: Zima;

1: Wezesha.

 

0

 

0

 

MZIGO

 

MRW

Kichochezi cha anwani ya kusoma data kimewashwa: 0: Zima;

1: Wezesha.

 

0

Tatua rejista ya data ya 2(tdata2)

Inatumika tu kwa vichakataji vidogo vinavyotumia viingilio vya maunzi na hutumika kuhifadhi thamani inayolingana ya kichochezi.

Jedwali 8-14 ufafanuzi wa rejista ya tdata2

Kidogo Jina Ufikiaji Maelezo Weka upya Thamani
[31:0] TDATA2 MRW Inatumika kuhifadhi thamani zinazolingana. X

Udhibiti wa utatuzi na rejista ya hali (dcsr)

Rejista hii inatumika kudhibiti na kurekodi hali ya uendeshaji ya modi ya utatuzi. Rejelea Sehemu ya 7.1 kwa maelezo zaidi.

kielekezi cha programu ya modi ya utatuzi (DPC)

Rejista hii hutumiwa kuhifadhi anwani ya maagizo yanayofuata ya kutekelezwa baada ya microprocessor kuingia kwenye hali ya kurekebisha, thamani yake ni tofauti kulingana na sababu za kuingia kwenye hali ya kurekebisha, na sheria za uppdatering pia ni tofauti. Rejelea Sehemu ya 7.1 kwa maelezo ya kina.

Hali ya utatuzi stagdaftari la usajili (dscratch0-1)

Kundi hili la rejista hutumika kwa hifadhi ya muda ya data katika hali ya Utatuzi.

Jedwali 8-15 Ufafanuzi wa rejista ya dscratch0-1

Kidogo Jina Ufikiaji Maelezo Weka upya Thamani
[31:0] mkwaruzo DRW Data ya hali ya utatuzi stagthamani ya 0
Sajili ya CSR iliyofafanuliwa na mtumiaji

Kukatiza kwa rejista ya kimataifa kwa hali ya mtumiaji (gintenr)

  • Rejesta hii inatumika kudhibiti kuwezesha na barakoa ya usumbufu wa kimataifa. Uwezeshaji na barakoa ya usumbufu wa kimataifa katika modi ya mashine inaweza kudhibitiwa na biti za MIE na MPIE katika hali, lakini rejista hii haiwezi kuendeshwa katika hali ya mtumiaji.
  • Wakati usumbufu wa kimataifa unawezesha gintenr ya rejista ni uchoraji wa ramani wa MIE na MPIE katika hali.
  • Katika hali ya mtumiaji, nia inaweza kutumika kuweka na kufuta MIE na MPIE, kama ilivyoelezwa katika Sehemu ya 3.2 kwa maelezo.

Kumbuka

  • Ukatizaji wa kimataifa haujumuishi ukatizaji ambao haujafichuliwa kwenye NMI na vighairi.

Kataza rejista ya udhibiti wa mfumo (intsyscr)

Rejesta hii hutumiwa hasa kusanidi kina cha kukatiza kwa kiota, ubonyezo wa rafu ya maunzi, na vipengele vingine vinavyohusiana, kama ilivyofafanuliwa katika Sehemu ya 3.2 kwa maelezo.

Rejesta ya usanidi wa Microprocessor (corecfgr)

Rejesta hii inatumika kudhibiti ikiwa ukatizaji wa NMI unaruhusiwa baada ya kukatiza kufurika na ikiwa ombi la kukatiza litafutwa wakati maagizo ya uzio yanatekelezwa. Tafadhali rejelea Sehemu ya 3.2 kwa ufafanuzi mahususi.

Katisha rejista ya udhibiti iliyoorodheshwa (inestcr)

Rejesta hii inatumika kuashiria hali ya kukatiza kwa viota na kama inafurika au la, na kudhibiti kiwango cha juu zaidi cha kutaga. Tafadhali rejelea Sehemu ya 3.2 kwa ufafanuzi mahususi.

Nyaraka / Rasilimali

Microprocessor ya WH V3 [pdf] Mwongozo wa Mtumiaji
V3 Microprocessor, V3, Microprocessor

Marejeleo

Acha maoni

Barua pepe yako haitachapishwa. Sehemu zinazohitajika zimetiwa alama *