国产毛片a精品毛-国产毛片黄片-国产毛片久久国产-国产毛片久久精品-青娱乐极品在线-青娱乐精品

RISC-V 的原子擴(kuò)展如何讓你具有了出色的位操作能力

發(fā)布時(shí)間:2022-4-14 10:52    發(fā)布者:eechina
關(guān)鍵詞: RISC-V , 原子擴(kuò)展
來源:Digi-Key
作者:Bill Giovino

RISC-V 架構(gòu)的使用量正滾雪球般地迅速增長(zhǎng),而且有充分的理由相信,這種架構(gòu)在業(yè)內(nèi)的影響力在逐步擴(kuò)大。

除了內(nèi)核架構(gòu)及其真正的精簡(jiǎn)指令集架構(gòu) (ISA) 外,該架構(gòu)還通過一系列標(biāo)準(zhǔn)化擴(kuò)展得到了增強(qiáng) (圖 1) 。例如,按照所示擴(kuò)展列表,將支持單精度浮點(diǎn)和壓縮指令的 32 位 RISC-V 內(nèi)核 (RV32) 命名為 RV32FC。


圖 1:RISC-V ISA 通過一系列標(biāo)準(zhǔn)化指令擴(kuò)展得到了增強(qiáng),用內(nèi)核名稱后的一個(gè)字母后綴表示。(圖片來源:RISC-V.org)

對(duì)于許多人工智能 (AI)、機(jī)器學(xué)習(xí) (ML) 應(yīng)用以及先進(jìn)的嵌入式系統(tǒng),四個(gè)最必要的擴(kuò)展是整數(shù)乘除 (M) 、原子指令 (A) 、單精度浮點(diǎn) (F) 和雙精度浮點(diǎn) (D) 。然而,不是把內(nèi)核指定為 RV32MAFD,而是把這些都?xì)w入 G 后綴,如 RV32G。

關(guān)于各種擴(kuò)展和 RISC-V 的更多信息,參見 Digi-Key 在EDU 網(wǎng)站上發(fā)布的 RISC-V 電子書。

就我個(gè)人而言,由于我對(duì)處理器的最初經(jīng)驗(yàn)是在深度嵌入式系統(tǒng)方面,我更傾向于密切關(guān)注架構(gòu)對(duì)數(shù)據(jù)存儲(chǔ)器的“讀改寫位操作”的支持。對(duì)于這些應(yīng)用,設(shè)置和清除外設(shè)寄存器和信號(hào)系統(tǒng)的位是很常見的事情。如果沒有原生位操作指令,內(nèi)核需要把數(shù)據(jù)存儲(chǔ)器位置的內(nèi)容復(fù)制到一個(gè)內(nèi)核寄存器,分別使用 OR、AND 或 XOR 指令來設(shè)置、清除或切換位,然后把結(jié)果仍存儲(chǔ)在數(shù)據(jù)存儲(chǔ)器位置。這不僅需要額外的時(shí)間,而且在某些情況下,我看到有些嵌入式控制應(yīng)用的代碼膨脹高達(dá) 20%。

對(duì)于有些應(yīng)用來說,代碼膨脹和性能下降是可以接受的。然而在執(zhí)行這三條指令時(shí),一個(gè)中斷就能粗暴地將程序控制權(quán)從操作中移除,甚至更糟的是,多處理器系統(tǒng)中的另一個(gè)內(nèi)核可能會(huì)從同一內(nèi)存位置讀取數(shù)據(jù)。禁用中斷或鎖定存儲(chǔ)器以確保這些事件不會(huì)破壞數(shù)據(jù)存儲(chǔ)器,這要求另外的指令和可能會(huì)造成性能問題的復(fù)雜情況。

Arm 試圖通過實(shí)施“位綁定”來解決這些問題,這種方法對(duì)簡(jiǎn)單的位操作有效。然而在我看來,RISC-V 已經(jīng)實(shí)施了一種更巧妙、更靈活的解決方案。

為什么 Atomic 擴(kuò)展如此巧妙

RISC-V A(原子)擴(kuò)展支持兩種操作,一種是 Load-Reserved/Store-Conditional 指令(本文將不予討論);另一種是二進(jìn)制/位操作指令,可實(shí)現(xiàn)對(duì)數(shù)據(jù)存儲(chǔ)器的簡(jiǎn)單位操作。雖然 RISC-V B 位操作擴(kuò)展支持一系列復(fù)雜的位控制指令,但 Atomic 擴(kuò)展并不只是針對(duì)多處理器系統(tǒng)。它也有助于那些必要的位操作需求比較簡(jiǎn)單的較小嵌入式系統(tǒng)。例如,Seeed Technology 的 114991684 雙核 64 位 RISC-V 模塊就屬于這種系統(tǒng)。該系統(tǒng)包含兩個(gè) RV64GC 內(nèi)核。這兩個(gè)內(nèi)核需要很好地協(xié)調(diào)工作并共享數(shù)據(jù) SRAM。

RISC-V A 擴(kuò)展原子存儲(chǔ)器操作 (AMO) 的格式見圖 2。


圖 2:RISC-V 的 AMO 指令格式僅需一條指令即可支持對(duì)數(shù)據(jù)存儲(chǔ)器進(jìn)行原子二進(jìn)制操作。(圖片來源:RISC-V.org(通過 Bill Giovino 增強(qiáng)))

AMO 是一條強(qiáng)大的“讀改寫”指令,只需一條指令即可支持直接在 rs1 中指向的數(shù)據(jù)存儲(chǔ)器上進(jìn)行各種不同的二進(jìn)制操作。參照?qǐng)D 2,該操作加載 rs1 中數(shù)據(jù)存儲(chǔ)器地址位置的內(nèi)容,并將該值存儲(chǔ)在寄存器 rd 中。然后用 rs2 中的值對(duì) rd 值進(jìn)行二進(jìn)制運(yùn)算,并將結(jié)果保存回 rd 中,保存回在 rs1 的數(shù)據(jù)存儲(chǔ)器地址位置。

所支持的二進(jìn)制操作有 OR(位設(shè)置) 、AND(位清除) 和 XOR(位切換) 。這允許直接在數(shù)據(jù)存儲(chǔ)器上對(duì)一個(gè)或多個(gè)位進(jìn)行原子位操作。這也防止了兩個(gè) RV64GC 內(nèi)核同時(shí)使用同一個(gè)存儲(chǔ)器地址時(shí)出現(xiàn)存儲(chǔ)器沖突的問題。在配置存儲(chǔ)器中的外設(shè)寄存器時(shí),這對(duì)小型嵌入式應(yīng)用極為有用,并能簡(jiǎn)化旗語標(biāo)操作。

RISC-V AMO 還支持整數(shù)最大值、整數(shù)最小值和交換。此外,還支持允許直接進(jìn)行二進(jìn)制加法的二進(jìn)制 ADD,包括直接增加數(shù)據(jù)存儲(chǔ)器中的計(jì)數(shù)器值。

RV64 內(nèi)核同時(shí)支持 32 位和 64 位操作。對(duì)于 RV64 的位操作,重要的是它只對(duì) 64 位數(shù)據(jù)進(jìn)行操作,因?yàn)樵摬僮鲗?duì)放置在 rd 中的 32 位數(shù)據(jù)進(jìn)行符號(hào)擴(kuò)展。

總結(jié)

RISC-V ISA 是第一個(gè)敢于挑戰(zhàn) Arm ISA 的嚴(yán)肅競(jìng)爭(zhēng)者。它的 ISA 擴(kuò)展提供了一種標(biāo)準(zhǔn)化方法,通過能夠以經(jīng)濟(jì)實(shí)惠的方式提升應(yīng)用性能的指令來增強(qiáng)內(nèi)核。我尤其對(duì)可選的 Atomic 擴(kuò)展感興奮。

雖然對(duì)于多處理器系統(tǒng)來說很有用,而且?guī)缀跏潜仨毜模訑U(kuò)展也是一種直接在數(shù)據(jù)存儲(chǔ)器上進(jìn)行位操作控制的有效方法。與許多現(xiàn)有的架構(gòu)相比,這種架構(gòu)優(yōu)勢(shì)顯著——減少代碼長(zhǎng)度,提高性能。
本文地址:http://m.qingdxww.cn/thread-787595-1-1.html     【打印本頁(yè)】

本站部分文章為轉(zhuǎn)載或網(wǎng)友發(fā)布,目的在于傳遞和分享信息,并不代表本網(wǎng)贊同其觀點(diǎn)和對(duì)其真實(shí)性負(fù)責(zé);文章版權(quán)歸原作者及原出處所有,如涉及作品內(nèi)容、版權(quán)和其它問題,我們將根據(jù)著作權(quán)人的要求,第一時(shí)間更正或刪除。
您需要登錄后才可以發(fā)表評(píng)論 登錄 | 立即注冊(cè)

廠商推薦

  • Microchip視頻專區(qū)
  • FPGA設(shè)計(jì)流程培訓(xùn)教程
  • Chiptorials——如何使用ATECC608 TrustFLEX實(shí)現(xiàn)公鑰輪換
  • Chiptorials ——使用ATECC608 TrustFLEX實(shí)現(xiàn)基本非對(duì)稱身份驗(yàn)證
  • Chiptorials ——如何將CryptoAuthLib庫(kù)用于Microchip安全身份驗(yàn)證IC
  • 貿(mào)澤電子(Mouser)專區(qū)

相關(guān)視頻

關(guān)于我們  -  服務(wù)條款  -  使用指南  -  站點(diǎn)地圖  -  友情鏈接  -  聯(lián)系我們
電子工程網(wǎng) © 版權(quán)所有   京ICP備16069177號(hào) | 京公網(wǎng)安備11010502021702
快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 国产网站在线看 | 日韩高清毛片 | 无人视频完整免费版视频观看下载 | 香蕉久久综合精品首页 | 99久久精品费精品国产 | 精品久久久久久免费影院 | 青青草精品在线视频 | 日本在线高清不卡 | 中文日韩字幕一区在线观看 | 国产一区二区成人 | 欧美精品免费线视频观看视频 | 黄 色 免 费 网站在线观看 | 中文不卡视频 | 欧美成人高清 | 国产区1 | 91亚洲国产成人久久精品网站 | 中国一级特黄毛片 | 免费视频亚洲 | 久久国产免费福利资源网站 | 日韩欧美精品在线 | 日本久久久久中文字幕 | 日韩一级精品视频在线观看 | 日本高清视频一区二区 | 日本一区二区三区久久精品 | 国产一进一出视频网站 | 午夜视频一区二区 | 国产精品一区三区 | 久草99| 一级成人 理伦片 | 日韩一区二区三区在线观看 | 1024你懂的国产精品 | 免费一级毛片在线播放视频 | 精品一区二区三区在线播放 | 国内精品久久影视 | 久久精品99毛片免费 | 在线免费观看毛片网站 | 欧美网站免费 | 色综合久久天天综合绕观看 | 亚洲四虎影院 | 国产极品美女网站在线观看 | 福利99|