令和3年春期試験 午後問7【組込みシステム開発】

管理人  
(No.1)
午後問7(組込みシステム開発)についての投稿を受け付けるスレッドです。
2021.4.18 00:04
さん 
(No.2)
叩き台どうぞ

384
2.7
Tf Ts Ta
3
(dv>0 and v>=vt)
vt 
0
目標の音量と現在の音量の差の絶対値がMに比べて小さい。
2021.04.18 16:20
あかさん 
(No.3)
最後の問題は(vt-v)÷Mの絶対値が1未満の場合dvに0が代入されることによって発生するというような感じで書きました。
2021.04.18 16:41
さん 
(No.4)
あかさんそれ以外同じ??
2021.04.18 16:42
あかさん 
(No.5)
この投稿は投稿者により削除されました。(2021.04.19 00:20)
2021.04.19 00:20
あかさん 
(No.6)
この投稿は投稿者により削除されました。(2021.04.19 00:20)
2021.04.19 00:20
さん 
(No.7)
ですよね、ありです
2021.04.18 16:49
aaさん 
(No.8)
1番 128 * 3 で384
2番 3/8 * 2 で5.3
になった
2021.04.18 16:50
さん 
(No.9)
出力する時ってバッファからデータぶっこ抜いて変換するだけやし×2いらんくね?
2021.04.18 16:52
aaさん 
(No.10)
入力バッファのデータが出力バッファに行くまでの制御部の動きを待つ時間が必要だと思います
2021.04.18 16:59
さん 
(No.11)
それはそうなんやけど、制御部でかかる時間の記述ってどこにあるんや?×2になる理論がようわからん

と思ったらDACにも24khzサンプリングクロック供給されてるって明記されてんだから、出力と合わせて計算せなあかんぽいかもな。対あり。
2021.04.18 17:03
mk2さん 
(No.12)
①(1)384 (2)5.3
②(1)c:Tf d:Ts e:Ta (2)3
③(1)ア:v=0 イ:vt ウ:(vt-v)÷(M+1)  (2)現在の音量が過剰に大きかったり、過剰に小さかったり音量が不適切な場合

設問3は全く分からなかったのでかなり適当です。
2021.04.18 17:38
ほげさん 
(No.13)
bは64サンプル/24kHz×3ブロックで8.0ミリ秒としました。
う~ん……
2021.04.18 21:47
たかしさん 
(No.14)
僕もbは8.0にしましたね...
2021.04.18 23:14
intさん 
(No.15)
この投稿は投稿者により削除されました。(2021.04.19 00:03)
2021.04.19 00:03
intさん 
(No.16)
(投稿直後にミスの可能性に気づいたorz)
bは8.0ミリ秒から5.3ミリ秒に修正しましたが、やっぱり8.0ミリ秒が正解かもです……。
まず、入力バッファの1つのブロックへのデータ書き込みが終わるまでの時間を「T」とすると、T = 64 / 24000 * 1000 = 8 / 3ミリ秒です。

あとは「ADCで処理」~「イヤホンから出力」まで「時間T」が何回分必要かを考えればOKですが、1フレーム64サンプルの最初と最後では約Tミリ秒時間がずれているので念のため両者を考えます。

【フレームの最初の音】
・ブロックに残りの63サンプルが書き込まれるまで約Tミリ秒待ちます
・制御部がフレームを処理して出力バッファに書き込みます。入力バッファに書き込みが終わるまでTミリ秒待ちます
・ADC、DAC、制御部が次に進みます。DACはまだ1つ前のブロックを読んでいるのでTミリ秒待ちます

(答) 3 * T = 8 / 3 * 3 = 8.0 ミリ秒

【フレームの最後の音】
・この音でブロックへの書き込みは終わったので待ち時間なしで次に進みます
・制御部がフレームを処理して出力バッファに書き込みます。入力バッファに書き込みが終わるまでTミリ秒待ちます
・ADC、DAC、制御部が次に進みます。DACはまだ1つ前のブロックを読んでいるのでTミリ秒待ちます
・DACがフレームを変換してイヤホンで再生しますが、フレームの音は全て同時ではなく順番に再生されるはずなので、最後まで再生するのにTミリ秒かかります

(答) 3 * T = 8 / 3 * 3 = 8.0 ミリ秒

Q. 制御部でかかる時間の記述ってどこにあるんや?
設問2 (1)でc, d, eの空欄を埋める際に、制御部の処理の最大実行時間TdがTframe(上の「時間T」と同じ)以内に完了するように設計しました。従って、制御部の処理はバッファへの64サンプル書き込みが終わる前に必ず終わっているので考慮する必要がありません。
2021.04.19 00:12
ギリギリさん 
(No.17)
intさん
組み込み全部の解答出してもらっていいですか?
2021.04.19 00:17
intさん 
(No.18)
全体解答です。③(2)は、迷ったあげく「dv = 0 and v ≠ vt」という条件をそのまま日本語化しました(Mに言及して、「vt - vの絶対値が0より大きくM未満」と書いた方がよかったか……?)

①(1) 128(384が正解) (2) 5.3(8.0が正解?)
②(1) Tf, Ts, Ta (2) 3

(1) ア:dv > 0 and v ≧ vt イ: vt ウ:0
(2) 現在の音量と目標の音量は異なるが、音量のフレームごとの変化分が0と計算される場合
2021.04.19 00:27
ギリギリさん 
(No.19)
ありがとうございます!
自分も最後は条件をそのまま日本語にしてタラタラと書きました笑
2021.04.19 00:32
adgさん 
(No.20)
通信系で周波数などには詳しいのでなんとかなりましたが,サンプリング周波数とか普通の人わかるのか?ちなみに8.0が正しいはずですよ〜
2021.04.19 03:38
ふぁくそんさん 
(No.21)
設問3(2)意味不明でした。スマホアプリが登場してなくてかわいそうだったので利用者が音量設定を変更した場合にしましたが、割り込み処理うんぬんが説明されてないので謎です。
演算は整数とあるから、vtとvが同じ値じゃないとゼロにならんしなぁ。。
2021.04.19 06:53
あかさん 
(No.22)
@ふぁくそんさん
演算は整数のみというようなことだったので、例えばvt=5,v=4,M=5のときにdv=0となると解釈しました。
2021.04.19 10:46
もめさん 
(No.23)
設問1(2)は10.7ではないでしょうか?

図3を見ると、入力バッファのブロック1(フレームn)と出力バッファのブロック1(フレームn-3)にアクセスしているので、フレームnがDACに出力するまでに、出力バッファのブロック2(フレームn-2)、ブロック3(フレームn-1)の出力を待つと思うのですが、どう思いますか?
2021.04.19 10:53
kn1chtさん 
(No.24)
>>もめ

フレームn - 3、フレームn - 2、フレームn - 1が出力される場面でそれぞれTframeミリ秒(8 / 3 ミリ秒)だけ待って8.0ミリ秒だと思います。
その後フレームnも出力されますが、DACが出力バッファを読み取ってアナログ信号に変換する時間は無視して良いと指定されているので計算に入りません。
2021.04.19 11:51
さん 
(No.25)
設問1がちょっと難しかったような...
それ以外は多くの人と同じ回答です
2021.04.19 14:01
さん 
(No.26)
設問3(2)は表2のvの説明に「初期値は利用者の設定した値」と書いてあったので、
適当に「利用者が初期値を設定した場合。」にしました。
でもdv=0にならないし、全然わからない…
2021.04.19 21:29
ふぁくそんさん 
(No.27)
@あかさん
なるほど,合点がいきました。
計算結果が小数点以下になる場合にdv=0となってもvは0でない,つまりdv=vでないということですね…。

整数演算には着目できていたのに悔しいです笑
2021.04.20 13:43
みいさん 
(No.28)
8.0の所を8にしてしまったんですけど、部分点もらえますかね?
2021.04.25 19:01

返信投稿用フォーム

スパム防止のためにスレッド作成日から30日経過したスレッドへの書込みはできません。

その他のスレッド


Pagetop