跳到主要内容

電気通信大学 情報理工学研究科 情報学専攻 2022年8月実施 選択問題 計算機工学 4-2

Author

祭音Myyura (co-authored with GPT 5.6 SOL)

Description

  1. 8 進小数の 10 進変換、8 ビット 2 の補数の絶対値、および 16 ビット右ローテートを求めよ。
  2. 全加算器の桁上がりを積和形で表し、二つの半加算器を用いた回路を示せ。
  3. 命令数、クロック周波数、CPI から実行時間と未知の CPI を求めよ。
  4. ヒット時間、ミスペナルティ、ミス率から平均メモリアクセス時間を求め、キャッシュ拡大時の条件を評価せよ。

题目描述

考查进制与补码、循环移位、全加器、处理器性能公式,以及缓存平均访问时间和容量扩大时的权衡。

Kai

1.

(1)

(2.22)8=2+28+282=2.28125.(2.22)_8 =2+\frac2{8}+\frac2{8^2} =\boxed{2.28125}.

(2)

8 ビット 2 の補数 11111111111111111-1 を表す。したがって、

111111112=1.\boxed{|11111111_2|=1}.

(3)

xx を符号なし 16 ビット値とすると、下位 6 ビットを上位へ移せばよい。したがって、

y=(x6)((x&0x003F)10).\boxed{ y=(x\mathbin{\gg}6)\mathbin{\vert} \bigl((x\mathbin{\&}\mathtt{0x003F})\mathbin{\ll}10\bigr)}.

2.

(1)

全加算器の桁上がりは、三入力のうち少なくとも二つが 11 のとき 11 である。よって、

cout=ab+acin+bcin.\boxed{c_{\mathrm{out}}=ab+ac_{\mathrm{in}}+bc_{\mathrm{in}}}.

(2)

第一の半加算器で

s1=ab,c1=abs_1=a\oplus b,\qquad c_1=ab

を作り、第二の半加算器で

s=s1cin,c2=s1cins=s_1\oplus c_{\mathrm{in}},\qquad c_2=s_1c_{\mathrm{in}}

を作る。最後に

cout=c1c2c_{\mathrm{out}}=c_1\lor c_2

とすればよい。

3.

処理時間は

T=命令数×CPIクロック周波数T=\frac{\text{命令数}\times\mathrm{CPI}}{\text{クロック周波数}}

である。

(1)

Tbusiness=1000303×109=105 s.T_{\mathrm{business}} =\frac{1000\cdot30}{3\times10^9} =10^{-5}\ \mathrm{s}.

したがって、

Tbusiness=10 μs.\boxed{T_{\mathrm{business}}=10\ \mu\mathrm{s}}.

(2)

ゲームモードでは T=5 μsT=5\ \mu\mathrm{s} なので、

CPI=(5×106)(4×109)1000=20.\mathrm{CPI} =\frac{(5\times10^{-6})(4\times10^9)}{1000} =\boxed{20}.

4.

平均メモリアクセス時間は

Tavg=Thit+rmissTpenaltyT_{\mathrm{avg}} =T_{\mathrm{hit}} +r_{\mathrm{miss}}T_{\mathrm{penalty}}

である。

(1)

Tavg=1+0.1010=2 ns.T_{\mathrm{avg}}=1+0.10\cdot10 =\boxed{2\ \mathrm{ns}}.

(2)

1+10rmiss=1.51+10r_{\mathrm{miss}}=1.5

より、

rmiss=0.05=5%.\boxed{r_{\mathrm{miss}}=0.05=5\%}.

(3)

変更前のヒット時間を tt、変更後を ktkt とする。ミスペナルティ 10t10t はキャッシュサイズに依存しないので、

Told=t+0.2(10t)=3t,T_{\mathrm{old}}=t+0.2(10t)=3t,
Tnew=kt+0.1(10t)=(k+1)t.T_{\mathrm{new}}=kt+0.1(10t)=(k+1)t.

アクセス時間を短縮する条件は

k+1<3.k+1<3.

したがって、ヒット時間の増加は

2 倍未満\boxed{2\text{ 倍未満}}

に抑える必要がある。