Download free for 30 days
Sign in
Upload
Language (EN)
Support
Business
Mobile
Social Media
Marketing
Technology
Art & Photos
Career
Design
Education
Presentations & Public Speaking
Government & Nonprofit
Healthcare
Internet
Law
Leadership & Management
Automotive
Engineering
Software
Recruiting & HR
Retail
Sales
Services
Science
Small Business & Entrepreneurship
Food
Environment
Economy & Finance
Data & Analytics
Investor Relations
Sports
Spiritual
News & Politics
Travel
Self Improvement
Real Estate
Entertainment & Humor
Health & Medicine
Devices & Hardware
Lifestyle
Change Language
Language
English
Español
Português
Français
Deutsche
Cancel
Save
Submit search
EN
Uploaded by
たけおか しょうぞう
PDF, PPTX
3,243 views
RISC-V User level ISA
Risc-V spec V2.2 User level ISA
Technology
◦
Read more
3
Save
Share
Embed
Embed presentation
Download
Download as PDF, PPTX
1
/ 28
2
/ 28
3
/ 28
4
/ 28
5
/ 28
6
/ 28
7
/ 28
8
/ 28
9
/ 28
10
/ 28
11
/ 28
12
/ 28
13
/ 28
14
/ 28
15
/ 28
16
/ 28
17
/ 28
18
/ 28
19
/ 28
20
/ 28
21
/ 28
22
/ 28
23
/ 28
24
/ 28
25
/ 28
26
/ 28
27
/ 28
28
/ 28
More Related Content
PDF
GPU仮想化最前線 - KVMGTとvirtio-gpu -
by
zgock
PPTX
LUT-Network その後の話(2022/05/07)
by
ryuz88
PDF
どうして昔の人は八進数でしゃべるのか?
by
たけおか しょうぞう
PDF
ZynqMPのブートとパワーマネージメント : (ZynqMP Boot and Power Management)
by
Mr. Vengineer
PDF
20230105_TITECH_lecture_ishizaki_public.pdf
by
Kazuaki Ishizaki
PDF
「NVIDIA プロファイラを用いたPyTorch学習最適化手法のご紹介(修正版)」
by
ManaMurakami1
PDF
プログラムを高速化する話Ⅱ 〜GPGPU編〜
by
京大 マイコンクラブ
PDF
FPGA+SoC+Linux実践勉強会資料
by
一路 川染
GPU仮想化最前線 - KVMGTとvirtio-gpu -
by
zgock
LUT-Network その後の話(2022/05/07)
by
ryuz88
どうして昔の人は八進数でしゃべるのか?
by
たけおか しょうぞう
ZynqMPのブートとパワーマネージメント : (ZynqMP Boot and Power Management)
by
Mr. Vengineer
20230105_TITECH_lecture_ishizaki_public.pdf
by
Kazuaki Ishizaki
「NVIDIA プロファイラを用いたPyTorch学習最適化手法のご紹介(修正版)」
by
ManaMurakami1
プログラムを高速化する話Ⅱ 〜GPGPU編〜
by
京大 マイコンクラブ
FPGA+SoC+Linux実践勉強会資料
by
一路 川染
What's hot
PDF
C++でできる!OS自作入門
by
uchan_nos
PDF
Hopper アーキテクチャで、変わること、変わらないこと
by
NVIDIA Japan
PDF
[Track2-2] 最新のNVIDIA AmpereアーキテクチャによるNVIDIA A100 TensorコアGPUの特長とその性能を引き出す方法
by
Deep Learning Lab(ディープラーニング・ラボ)
PPTX
高速シリアル通信を支える技術
by
Natsutani Minoru
PDF
Zynq mp勉強会資料
by
一路 川染
PPTX
PFNにおける研究開発(2022/10/19 東大大学院「融合情報学特別講義Ⅲ」)
by
Preferred Networks
PDF
20111015 勉強会 (PCIe / SR-IOV)
by
Kentaro Ebisawa
PDF
Fast and Light-weight Binarized Neural Network Implemented in an FPGA using L...
by
ryuz88
PDF
FPGAをロボット(ROS)で「やわらかく」使うには
by
Hideki Takase
PDF
CVPR 2015 読み会 "Understanding Deep Image Representations by Inverting Them"
by
Hiroharu Kato
PDF
「今日から使い切る」ための GNU Parallelによる並列処理入門
by
Koji Matsuda
PDF
いまさら聞けない!CUDA高速化入門
by
Fixstars Corporation
PDF
エンジニアなら知っておきたい「仮想マシン」のしくみ v1.1 (hbstudy 17)
by
Takeshi HASEGAWA
PDF
About GStreamer 1.0 application development for beginners
by
Shota TAMURA
PDF
CUDAのアセンブリ言語基礎のまとめ PTXとSASSの概説
by
Takateru Yamagishi
PDF
第9回ACRiウェビナー_セック/岩渕様ご講演資料
by
直久 住川
PDF
深層学習フレームワークにおけるIntel CPU/富岳向け最適化法
by
MITSUNARI Shigeo
PDF
僕のIntel nucが起動しないわけがない
by
Takuya ASADA
PPTX
ゼロから始める自作 CPU 入門
by
Hirotaka Kawata
PDF
Lispマシン・シミュレータの紹介
by
たけおか しょうぞう
C++でできる!OS自作入門
by
uchan_nos
Hopper アーキテクチャで、変わること、変わらないこと
by
NVIDIA Japan
[Track2-2] 最新のNVIDIA AmpereアーキテクチャによるNVIDIA A100 TensorコアGPUの特長とその性能を引き出す方法
by
Deep Learning Lab(ディープラーニング・ラボ)
高速シリアル通信を支える技術
by
Natsutani Minoru
Zynq mp勉強会資料
by
一路 川染
PFNにおける研究開発(2022/10/19 東大大学院「融合情報学特別講義Ⅲ」)
by
Preferred Networks
20111015 勉強会 (PCIe / SR-IOV)
by
Kentaro Ebisawa
Fast and Light-weight Binarized Neural Network Implemented in an FPGA using L...
by
ryuz88
FPGAをロボット(ROS)で「やわらかく」使うには
by
Hideki Takase
CVPR 2015 読み会 "Understanding Deep Image Representations by Inverting Them"
by
Hiroharu Kato
「今日から使い切る」ための GNU Parallelによる並列処理入門
by
Koji Matsuda
いまさら聞けない!CUDA高速化入門
by
Fixstars Corporation
エンジニアなら知っておきたい「仮想マシン」のしくみ v1.1 (hbstudy 17)
by
Takeshi HASEGAWA
About GStreamer 1.0 application development for beginners
by
Shota TAMURA
CUDAのアセンブリ言語基礎のまとめ PTXとSASSの概説
by
Takateru Yamagishi
第9回ACRiウェビナー_セック/岩渕様ご講演資料
by
直久 住川
深層学習フレームワークにおけるIntel CPU/富岳向け最適化法
by
MITSUNARI Shigeo
僕のIntel nucが起動しないわけがない
by
Takuya ASADA
ゼロから始める自作 CPU 入門
by
Hirotaka Kawata
Lispマシン・シミュレータの紹介
by
たけおか しょうぞう
Similar to RISC-V User level ISA
PPTX
RISC-Vの基礎、オバービュー(RISC-V basis-overview)
by
Takayasu Shibata
PDF
RISC-V introduction for SIG SDR in CQ 2019.07.29
by
Takefumi MIYOSHI
PPTX
Microsemi FPGAで RISC-V を動かしてみた話 (Lチカ)
by
Takayasu Shibata
PDF
俺SoC (Laxer Chip, AX1001)の Prolog加速命令.New multiple branch instruction for RIS...
by
たけおか しょうぞう
PDF
RISC-V の現況と Esperanto Technologies のアプローチ
by
Yutaka Yasuda
PDF
第3回ローレイヤー勉強会 : FPGAでコンピュータを作ってみた
by
Ito Takahiro
PDF
俺ASICと俺CPU“松竹V(しょうちくぶい)”
by
たけおか しょうぞう
PDF
riscv instruction sets lets-impl-rv32i.pdf
by
GuoliangDing3
PDF
SystemC Tutorial
by
kocha2012
PDF
Zynq VIPを利用したテストベンチ
by
Mr. Vengineer
PDF
2011.09.18 v7から始めるunix まとめ
by
Makiko Konoshima
PDF
V6 unix in okinawa
by
magoroku Yamamoto
PDF
自作コンピューターでなんかする - 第八回 カーネル/VM探検隊&懇親会
by
Hirotaka Kawata
PDF
30日でできない!コンピューター自作入門 - カーネル/VM探検隊@つくば
by
Hirotaka Kawata
PDF
2011.06.11 v7から始めるunix まとめ
by
Makiko Konoshima
PDF
2012研究室紹介(大川)
by
猛 大川
PDF
kagamicomput201705
by
swkagami
PDF
Reconf_201409
by
Takefumi MIYOSHI
PDF
V6read#3
by
magoroku Yamamoto
PPTX
How to use STARC RTL Design Style Guide Verilog-HDL 2011 version
by
Kiyoshi Ogawa
RISC-Vの基礎、オバービュー(RISC-V basis-overview)
by
Takayasu Shibata
RISC-V introduction for SIG SDR in CQ 2019.07.29
by
Takefumi MIYOSHI
Microsemi FPGAで RISC-V を動かしてみた話 (Lチカ)
by
Takayasu Shibata
俺SoC (Laxer Chip, AX1001)の Prolog加速命令.New multiple branch instruction for RIS...
by
たけおか しょうぞう
RISC-V の現況と Esperanto Technologies のアプローチ
by
Yutaka Yasuda
第3回ローレイヤー勉強会 : FPGAでコンピュータを作ってみた
by
Ito Takahiro
俺ASICと俺CPU“松竹V(しょうちくぶい)”
by
たけおか しょうぞう
riscv instruction sets lets-impl-rv32i.pdf
by
GuoliangDing3
SystemC Tutorial
by
kocha2012
Zynq VIPを利用したテストベンチ
by
Mr. Vengineer
2011.09.18 v7から始めるunix まとめ
by
Makiko Konoshima
V6 unix in okinawa
by
magoroku Yamamoto
自作コンピューターでなんかする - 第八回 カーネル/VM探検隊&懇親会
by
Hirotaka Kawata
30日でできない!コンピューター自作入門 - カーネル/VM探検隊@つくば
by
Hirotaka Kawata
2011.06.11 v7から始めるunix まとめ
by
Makiko Konoshima
2012研究室紹介(大川)
by
猛 大川
kagamicomput201705
by
swkagami
Reconf_201409
by
Takefumi MIYOSHI
V6read#3
by
magoroku Yamamoto
How to use STARC RTL Design Style Guide Verilog-HDL 2011 version
by
Kiyoshi Ogawa
More from たけおか しょうぞう
PDF
安価な ロジック・アナライザを アナライズ(?),Analyze report of some cheap logic analyzers
by
たけおか しょうぞう
PDF
the original SoC "ORE_SoC" with "ROS2rapper"
by
たけおか しょうぞう
PDF
俺のSoC, AX1001 ができたぞー. AX1001:the SoC for edge Devices and robot modules,
by
たけおか しょうぞう
PDF
Using Retro-CPU with low aspirations, No FPGA
by
たけおか しょうぞう
PDF
"ros2rapper", Hardware implimentation of ROS2 communication Protocol without ...
by
たけおか しょうぞう
PDF
いにしえ的ななにか、カニか? RISC-V picoRV32, e203 改造 オレオレ命令追加した
by
たけおか しょうぞう
PDF
SOAR:Smalltalk on RISC
by
たけおか しょうぞう
PDF
あるRISC-V CPUの 浮動小数点数(異常なし)
by
たけおか しょうぞう
PDF
RISC-Vの可能性
by
たけおか しょうぞう
PDF
RISC-Vの可能性
by
たけおか しょうぞう
PDF
Riscv+fpga200606
by
たけおか しょうぞう
PDF
Takep lpc1114-190614
by
たけおか しょうぞう
PDF
Takep lpc1114-190613
by
たけおか しょうぞう
PDF
初歩的な部品の知識
by
たけおか しょうぞう
PDF
Takepino LPC1114
by
たけおか しょうぞう
PDF
Lisp_chibi_machine 190427
by
たけおか しょうぞう
PDF
無脳スマートスピーカを 越えレレレのレ
by
たけおか しょうぞう
PDF
Common Lisp ユーザへのScheme紹介
by
たけおか しょうぞう
PDF
昔の外付けキャッシュ & コヒーレント・キャッシュ
by
たけおか しょうぞう
PDF
Ichigojam ossc-170819
by
たけおか しょうぞう
安価な ロジック・アナライザを アナライズ(?),Analyze report of some cheap logic analyzers
by
たけおか しょうぞう
the original SoC "ORE_SoC" with "ROS2rapper"
by
たけおか しょうぞう
俺のSoC, AX1001 ができたぞー. AX1001:the SoC for edge Devices and robot modules,
by
たけおか しょうぞう
Using Retro-CPU with low aspirations, No FPGA
by
たけおか しょうぞう
"ros2rapper", Hardware implimentation of ROS2 communication Protocol without ...
by
たけおか しょうぞう
いにしえ的ななにか、カニか? RISC-V picoRV32, e203 改造 オレオレ命令追加した
by
たけおか しょうぞう
SOAR:Smalltalk on RISC
by
たけおか しょうぞう
あるRISC-V CPUの 浮動小数点数(異常なし)
by
たけおか しょうぞう
RISC-Vの可能性
by
たけおか しょうぞう
RISC-Vの可能性
by
たけおか しょうぞう
Riscv+fpga200606
by
たけおか しょうぞう
Takep lpc1114-190614
by
たけおか しょうぞう
Takep lpc1114-190613
by
たけおか しょうぞう
初歩的な部品の知識
by
たけおか しょうぞう
Takepino LPC1114
by
たけおか しょうぞう
Lisp_chibi_machine 190427
by
たけおか しょうぞう
無脳スマートスピーカを 越えレレレのレ
by
たけおか しょうぞう
Common Lisp ユーザへのScheme紹介
by
たけおか しょうぞう
昔の外付けキャッシュ & コヒーレント・キャッシュ
by
たけおか しょうぞう
Ichigojam ossc-170819
by
たけおか しょうぞう
RISC-V User level ISA
1.
RISC-V ユーザレベル ISA 2017.NOV.18 たけおか@AXE @takeoka
2.
2 たけおかって誰? 1977年(高校2年生): MITのJames Slagleの書いたAIの教科書(日本語版)を読んで 「○×」を打つプログラムを8bitマイコンTK-80(8080,RAM
512Bytes)の機械語で書く 1980年代:UNIXのサーバクライアント方式の仮名漢字変換システムWnn、国産シンクライアント(X Window端末”XMiNT”) などの設計開発に携わる。TCP/IPスタックの独自実装。 時相論理推論型言語Temporal Prologの合理的な実装などを行う 1990年代初頭: 1024PE規模の超並列計算機”SM-1”(豊橋技科大 湯淺研,住友金属)のLSIハードウェア、ソフトウェアの設 計開発に携わる。Common Lispで開発ツール書いた。 当時、超並列計算機は、ニューラルネットのシミュレーションによく使用された 1992年:(株)アックスを興し、マイクロカーネルXTALを設計。XTALはオリンパス社製デジタルカメラ、シャープ ザウルスなどに使 用された。現在、アックスは、人工知能を開発&販売中 名古屋大/東大の自動運転プロジェクト”Autoware”のお手伝い JASA技術本部長/理事,OSSコンソーシアム副会長,PCクラスタコンソーシアム理事,DEOS協会事務局長/理事 超並列計算機SM-1 (1992年) シンクライアントXMiNT (1988年) オリンパス デジカメ (2000年) カラーザウルス(1996年)
3.
論理推論AIを高速化する特許 ● 論理推論のルールの集合をルールセット と呼ぶ ● 機械学習(SVM)を使用して、 ルール・セットを選択 ● 論理推論する探索空間が小さくなる → 論理推論が高速になる 「ルールセットを選択可能な推論エンジンを有するプログ ラム、装置及び方法」
4.
RISC-V の感想 極めて フツー 今回は riscv-spec-v2.2.pdfを読んだ結果です
5.
命令セットの種類 ● RV32Iが基本 ● RV32Eは組込み ●
RV64: 64bit ● 16bit 縮小命令がある – “C”拡張 ● 今回は、RV32I について話す
6.
レジスタ ● 32bitレジスタ 32個 –
0レジスタ – pcは別 ● PCが汎用レジスタは、特許 ● Flag は無し – MIPS 踏襲だなぁ – Carryフラグは要るんじゃないの…
7.
Endian ● Little endianが基本 ●
命令は必ず little endianで格納 ● Little endian 全盛だな… – その方が、いいのだけど ● データは、下からフェッチしたほうが速いことが通常 – 日立の HPC系 Power も Little endianの時代だしな
8.
命令フォーマット ● opcodeが最下位にあるのは珍しい – 即値が最上位にある ●
rs1,rs2(ソース),rd(デスティネーション) は固定位置 – ただし、5bit 即値 CSR命令は例外; rs1に即値
9.
即値の生成 ● 常に符号拡張される。 inst[31]が上位にコピー –
命令デコードと、符号拡張が並列にできる! ● 命令を見ずに、即値の最上位bitを、コピーできる! ● ブランチ先の計算も、並列にできるよ(頑張れば)
10.
整数演算 即値 ● ADDI
/ SLTI / ANDI / ORI / XORI – subが無いのは、定数を補数にしてadd しろと ● -1とXORで NOTだよ ● SLLI (左シフト)/ SRLI(右シフト) / SRAI (右算術シフト) – 0〜31bitシフト可能 ● LUI (上位にロード) / AUIPC – auipc: add upper imm. PC; imm を PCの上位20bitに加算
11.
整数演算 レジスタ ● ADD
/ SLT / SLTU / AND / OR / XOR ● SLL / SRL / SRA ● SUB – 減算ある ● NOP
12.
無条件 分岐命令● 無条件jump
& link – ディレイスロットは無い – rdに、pc+4 が入る ● JAL – ±1MBの範囲 ; オフセットは20bit , 1 / 2 されている – pc ← (sex(imm) << 1 ) + pc +4 ● JALR – 相対アドレスjump; pc ← rs1 + sex(imm) + pc+4 – 演算結果の最下位bit は、0にされる – オフセットは、12bit ● x1 : return address, x5: alternate Link レジスタ が標準ソフトウェア・コーリング・コンベ ンション – alternate Linkレジスタは、圧縮(compressed)コードで、milli code ルーチンの呼び出しなどをサ ポートする
13.
条件 分岐命令 ● 条件分岐 – 2オペランド比較 –
BEQ/BNE – BLT(less than)/BLTU (unsigned) ● rs1 < rs2 – BGE/BGEU ● Rs1 >= rs2 ● MIPSよりは、豊富だね ● 分岐のヒントは無し ● オーバフロー(符号なしキャリー)のチェックは簡単というが… – 多倍長演算になると、難しいんだよ – 下のワードからの、繰り上がりを加算しつつ、チェックするのは、何命令も必要 ● キャリー・フラグは要るよ – 32bit MIPSで、128bit 演算をする時とか
14.
Load/store 命令 ● LW
/ LH / LHU / LB / LBU – LW:32bit load – LH: 16bit load 符号拡張 – LHU: 16bit load 符号拡張無し(上位に0フィル) – LB / LBU : 8bit load ● SW / SH / SB – rs2 の下位を Store ● データのミス・アラインも許す(基本命令セットでは)
15.
スレッド ● 「hart」 – ハードウェア・スレッド –
ソフトウェア制御のスレッド・コンテキストと、明確に区別 ● ハードウェア・スレッド – user register, state, PCを持つ ● IOや、他のhartとやりとりする時には、FENCE – FENCE前の命令の実行終了を待つ – Out of order 実行なので
16.
FENCE命令 ● sync命令の類 ● コプロセッサも、この機構を使用 ● I:デバイス入力,
O:デバイス出力, R:メモリ・リード, W: メ モリ・ライト – 非公式だが、Predecessor をセットしたhartだけが successorを見ることができる ● CPUを作る人は、メモリ・マップドIOは、I/Oにするべき
17.
FENCE.I命令 ● 命令&データ ストリームの終わりがわからない ●
命令メモリに書く時、FENCE.Iで同期してから – 同一hartの時
18.
Control and Status
Register命令 ● RDCYCLE[H] – hartが実行したマシン・サイクル ● RDTIME[H] – タイマ読み出し – RDTIME[H]は wall clockの読み出し ● RDINSTRET[H] – このhartでの、実行完了した(retired)命令数の読み出し ● out of order実行も考慮ずみ
19.
整数 乗除算(基本拡張 “M”) ●
MUL / MULH[S][U] / MULW – MULH は、符号 付き/なし – MULWは RV64 の時だけ ● DIV[U]/ REM[U] ● DIV[U]W / REM[U]W – 0除算、符号付き除算オーバーフローの結果が定義され ている
20.
アトミック命令(基本拡張 “A”) ● LR/SC
(Load-Reserved/Store-Conditional) – MIPSの LL/SCと同様 ● AMO (atomic memory operation) – rs1で指定されたメモリの内容とrs2で、 AND/OR/XOR/SWAP/MAX/MINができる – しかも、read modified write で行う
21.
浮動小数点(基本拡張 “F”,”D”,”Q”,”L”) ● 浮動小数点レジスタ
32個、fcsr 1個 ● 丸め指定可能 – 切り上げ/切り捨て/四捨五入 ● F命令: single float – 四則,SQRT,MIN,MAX – Mul add は無い ● D命令: double float ● Q命令: quad float (四倍精度) ● L命令: 10進 浮動小数点演算
22.
SIMD "P”拡張 ● これは、”V”ベクトルのために、落ちるかも ●
P命令 ● パックト・SIMD ● LOAD-FP, STORE-FP で、サイズを大きく指定でき る
23.
ベクトル "V”拡張 ● データ・サイズ色々 ● 命令は、spec-v2.2の中では ちゃんと規定されていない ●
vaddはある(例題に)
24.
ベクトル "V”拡張 ● この例題をみれば、大体使えるな(^^;
25.
圧縮命令 "C”拡張 ● RVC ●
16bit命令
26.
ユーザ・レベル割り込み "N”拡張 ● URET命令 ●
UIEビット:割り込み禁止 ● ユーザレベル割込が受け付けられると – UIEがUPIEへコピーされる – UIEは0になる
27.
その他 ● “B” ビット操作 ●
“J” 動的変換言語 (Java用???) ● "T” トランザクション・メモリ
28.
以上
Download