[過去ログ] Qiita 2 - キータぞ、来たぞ、キータだぞー (1002レス)
前次1-
抽出解除 必死チェッカー(本家) (べ) 自ID レス栞 あぼーん

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
657: 2023/01/29(日)13:13 ID:V8aF3j6G(1/3) AAS
>>656
パタヘネのFigure C2.3のOperation0(alu_ctl[0])をそのままVerilogで書くと
alu_ctl[0] = (alu_op[1] & (f[3] & f[0]));
だけど
alu_ctl[0] = (alu_op[1] & (f[1] & ~f[0]));
が正しいと言いたいらしい

でも、Figure C.2.1の4行目は
省9
658
(2): 2023/01/29(日)13:55 ID:V8aF3j6G(2/3) AAS
補足というか、このコードが何の処理をしている部分か説明

これはRISC-Vの機械語からどういう演算をすべきか決める回路のコード

RISC-Vの命令フォーマットはR-type、I-type,S-type, U-typeの4種類で、S-typeとU-typeは
即値のフォーマットにより、それぞれS-formatとSB-format、U-formatとUJ-formatに分けられる

32bitの命令instのうち最下位7bit(inst[6:0])がopcode
7bitだと命令数が足らなくなるので、U-type以外中央の3bit(inst[14:12])が追加のopcode(Funct3)
レジスタ間演算命令のR-typeでは最上位ビットから7bit分(inst[31:25])がさらに追加のopcode(Funct7)
省9
659: 2023/01/29(日)14:03 ID:V8aF3j6G(3/3) AAS
>>658
一応補足
> だとするとなんでinst[30]がいらないって発想になるんだろう?

inst[30]はf[3]ね

alu_ctl[0]が加算化減算化を区別する信号線ならinst[30]=f[3]がないといけないのに
>>656のコードはf[3]を取り除くコードにしていて、こんな書き換えようと思うこと自体
理解できないという意味
前次1-
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.042s