「AP過去問 令和6年度秋期 午後 問7 組込みシステム開発」の版間の差分

提供:yonewiki
編集の要約なし
626行目: 626行目:




 以上が考え方になります。このような考え方をものの数分で思いつかないといけないのは難しすぎると思います。
 以上が考え方になります。このような考え方をものの数分で思いつかないといけないのは難しすぎると思います。自作パソコンのベースクロックスイッチの操作をしたことがあるような人で、このタスクごとの周期が似たような意味をもっていて、複数のタスクによってクロックを切り替える考え方ができるかということがポイントになるでしょうか?同じようなクロックシステムの状況におかれた組込み開発をやったことがある人だけがわかる問題なのかもしれません。とにかく難しいですね。なので設問1(2)と設問2とで2問も難題が設定されていることになります。恐るべし組込みシステム開発!





2024年11月15日 (金) 00:53時点における版

AP 過去問題 午後に戻る。

AP過去問_令和6年度秋期_午後_問6_データベースの同じ回の前の問題へ移動。

AP過去問_令和6年度秋期_午後_問8_情報システム開発の同じ回の次の問題へ移動。

令和6年度秋期 午後 問7 組込みシステム開発(AIプロンプト向け)

■スマートイヤホンに関する次の記述を読んで、設問に答えよ。※AIに質問しやすいように問題文を文章化して改変しています。コピペでAIに質問できる形式になっています。改変による問題の正当性およびAIの回答については保証しません。


 G社は、専用のアプリケーションプログラム(以下、アプリという)をインストールしたスマートフォン(以下、スマホという)とBluetoothで接続して、音楽などの音源再生機能、電話の通話機能、ノイズキャンセル機能、音声アシスト機能をもつスマートイヤホン(以下、Sイヤホンという)を開発している。

 利用者はアプリを用いて、Sイヤホンの音源再生機能と通話機能の開始/停止の指示、およびノイズキャンセル機能と音声アシスト機能のオン/オフの設定を行うことができる。Sイヤホンを用いて通話するときには、音源再生機能及び音声アシスト機能は使用できない。

 Sイヤホンは左右が独立しており、左耳に装着するイヤホン(以下、左イヤホンという)はスマホとペアリングする。右耳に装着するイヤホン(以下、右イヤホンという)とスマホとの通信は、左イヤホンが中継する。

 Sイヤホンは専用のケースに入れると電源がオフとなり充電が行われ、専用のケースから取り出すと電源がオンになる。

 Sイヤホンの機能を以下に示す。


・Sイヤホンの機能

機能名1=音源再生機能

音源再生機能の概要1=スマホから送信された音源データを、Sイヤホンで音響補正して出力する。

機能名2=音声アシスト機能

音声アシスト機能の概要1=左イヤホンでは、利用者が発した音声から、特定のキーワードを検出すると、続くフレーズをスマホへの指示として左イヤホンからスマホに送信、スマホで解析して実行する。

機能名3=通話機能

通話機能の概要1=利用者がスマホの操作で発信する、又は利用者のスマホに着信があると、Sイヤホンは、[a]及び[b]を停止して、通話開始を音声で知らせる。

通話機能の概要2=Sイヤホンの、音声を出力するスピーカー及び音声を入力するマイクを使用して、音声データを入出力することで、利用者は通話することができる。

機能名4=ノイズキャンセル機能

ノイズキャンセル機能の概要1=マイクから入力されたSイヤホンの周囲の音(以下、環境音という)から、環境音を打ち消すデータを生成する。このデータをスピーカーの出力に合成して環境音を低減させる。


・Sイヤホンのハードウェア構成

 Sイヤホンは、左イヤホンと右イヤホンのそれぞれが、マイク及びスピーカーを接続した音声制御部、クロック部、通信部、それらを制御する制御部、及び電力部から成る。左イヤホンと右イヤホンとでハードウェア構成に違いはない。信号が流れる方向の仕組みは次に示すとおり、マイクから音声制御部。音声制御部からスピーカー。音声制御部から制御部。制御部から音声制御部。制御部からクロック部。制御部から通信部。通信部から制御部。通信部からクロック部。電力部は各部分と相互に電力をやりとりする。

・Sイヤホンの構成要素の機能概要

構成要素名1=制御部

制御部の構成要素の機能1=Sイヤホンの機能名1~4に示す機能を実現するために、音声制御部、クロック部、通信部を制御する。

制御部の構成要素の機能2=左イヤホンの場合は、マイクから入力された音声データを解析して、特定のキーワードを検出する。

制御部の構成要素の機能3=機能の使用状況に応じて、クロックの供給の停止又は適切な周波数を決定して、クロック部に指示する。

制御部の構成要素の機能4=クロック部への指示は0、0.5、1、1.5、又は2の値である。この値に、基準周波数を乗じた周波数のクロックが供給される。0のときは、クロックの供給が停止される。

制御部の構成要素の機能5=クロックの供給が停止されると、その時点の状態を保持したまま停止する。クロックが再度供給されると停止したところから再開する。


構成要素名2=音声制御部

音声制御部の構成要素の機能1=2ミリ秒周期でマイクから入力された音声をデジタルデータに変換して、制御部に送信する。

音声制御部の構成要素の機能2=5ミリ秒周期で制御部からデジタルデータを受信し、スピーカーで音声を出力する。その際、制御部から受信したノイズキャンセルデータを合成する。


構成要素名3=クロック部

クロック部の構成要素の機能1=制御部の指示によって、指示された周波数のクロックの供給又は停止を行う。

クロック部の構成要素の機能2=停止したクロックの供給は①(特定のイベント)によって再開する。このイベントを受けてから5ミリ秒後に、停止する直前の周波数でクロックの供給を再開する。


構成要素名4=通信部

通信部の構成要素の機能1=Bluetoothを用いてスマホと通信を行う。内部にクロックをもち、電源オン後は常に動作する。

通信部の構成要素の機能2=左イヤホンの場合は、スマホとペアリングした後、右イヤホンとスマホとの通信を中継する。

通信部の構成要素の機能3=スマホからのデータ受信すると、それを制御部に送信し、データを受信したことをクロック部に送信する。さらに、データが音源データが音源データ又は音声データの場合は、左右それぞれのイヤホン用のデータを取り出し、5ミリ秒周期で制御部に送信する。

通信部の構成要素の機能4=制御部から受信した音声データをスマホに送信する。


構成要素名5=電力部

電力部の構成要素の機能1=充電可能な電池を内蔵しており、各部に電力を供給する。


・クロック部の動作

 制御部の実行時間はクロックの周波数は反比例する。一方、消費電力はクロック周波数が高いほど大きくなる。Sイヤホンは電池駆動であるので、できる限り消費電力は小さくしたい。そこで、この後に示すように機能の使用状況に応じてクロックの周波数を制御部の指示で適切に割り当てることにした。


・使用状況に応じたクロックの周波数割り当て

待機時は音源再生=OFF、通話=OFF、ノイズキャンセル=OFF、音声アシスト=OFF 待機時のクロック部への周波数指示値=0

音源再生モードAの時は音源再生=ON、通話=OFF、ノイズキャンセル=OFF、音声アシスト=ON 音源再生モードAの時のクロック部への周波数指示値=[c]

音源再生モードBの時は音源再生=ON、通話=OFF、ノイズキャンセル=ON、音声アシスト=OFF 音源再生モードBの時のクロック部への周波数指示値=[d]

通話時は音源再生=OFF、通話=ON、ノイズキャンセル=ONかOFFに切り替えが可能、音声アシスト=OFF 通話時のクロック部への周波数指示値=[e]


・制御部のタスク

 制御部はリアルタイムOSを使用している。電源オン時にメインタスクが生成される。左イヤホンと右イヤホンとで機能が異なるので、メインタスクはそのイヤホンで必要となるタスクだけを生成する。メインタスクを含め、それぞれのタスクは重複しない固有の優先度が割り当てられる。リアルタイムOSのタスクの状態は実行状態、実行可能状態、又は待ち状態のいずれかである。

 制御部のタスク一覧をこの後で示す。クロックの周波数が基準周波数に等しいときタスクの実行に要する時間は、この後に示す実行時間となる。スピーカータスク、マイクタスク、及び特定語検出タスクは起動周期内に処理が完了しなければならない。起動周期内に処理が完了しない場合、音飛びやノイズなどの不具合が発生する。


・制御部のタスク一覧

タスク名1=メインタスク

メインタスクの機能1=ほかのタスクから通知を受けると、通知に応じた処理を行う。

メインタスクの機能2=機能の使用状況に応じて、適切なクロックの周波数を決定して、クロック部に指示する。ただし、クロックの供給の停止はアイドルタスクが行う。

メインタスクの起動周期秒数=無し

メインタスクの実行時間秒数=0.05ミリ秒


タスク名2=スピーカータスク

スピーカータスクの機能1=音源再生時、音源データに音質補正を行い音声制御部に送信する。

スピーカータスクの機能1の起動周期秒数=5ミリ秒

スピーカータスクの機能1の実行時間秒数=3.4ミリ秒

スピーカータスクの機能2=通話時、音声データの音質補正は行わず、音声制御部に送信する。

スピーカータスクの機能2の起動周期秒数=5ミリ秒

スピーカータスクの機能2の実行時間秒数=0.5ミリ秒


タスク名3=マイクタスク

マイクタスクの機能1=マイクから入力された音声データを処理する。

マイクタスクの機能2=ノイズキャンセル機能の処理を行い、生成された環境を打ち消すデータを音声制御部に送信する。

マイクタスクの起動周期秒数=2ミリ秒

マイクタスクの実行時間秒数=1ミリ秒


タスク名4=特定語検出タスク

特定語検出タスクの機能1=マイクタスクから受けた音声データを解析して、特定のキーワードを検出する。

特定語検出タスクの起動周期秒数=40ミリ秒

特定語検出タスクの実行時間秒数=20ミリ秒


タスク名5=通信タスク

通信タスクの機能1=通信部からデータを受信すると、メインタスクに通知する。

通信タスクの機能2=ほかのタスクからの通知を受けると、通信部に送信する。

通信タスクの起動周期秒数=無し

通信タスクの実行時間秒数=0.05ミリ秒


タスク名6=アイドルタスク

アイドルタスクの機能1=メインタスクから指示があると、クロック部にクロックの供給の停止を指示する。

アイドルタスクの起動周期秒数=無し

アイドルタスクの実行時間秒数=無し


起動周期はクロックの周波数に依存せずに一定である。 実行時間はクロックの周波数が基準周波数に等しいときの値である。


 タスクの優先度は、通信タスクが最も高く、以下、メインタスク、[f]タスク、[g]タスク、[h]タスク、アイドルタスクの順である。

 アイドルタスクは最も優先度が低いので、アイドルタスクが実行状態のとき、ほかのタスク状態は[i]である。


上記のようなSイヤホンの仕組みから以下の4つ問題に答えて下さい。


問題の1番目は[a]、[b]、[f]、[g]、[h]、[i]に当てはまる語句、数値を教えて下さい。あてはめた語句、数値に決定した理由も教えて下さい。


問題の2番目は上述の文章中の①(特定のイベント)の部分に当てはまるイベントとして適切なモノを以下から選択して答えて下さい。その理由も教えて下さい。


選択肢1=一定時間経過

選択肢2=スマホからのデータを受信

選択肢3=制御部からの指示を受信

選択肢4=電力部が電力を供給

選択肢5=マイクから入力された音声データから特定のキーワードを検出


問題の3番目は[c]、[d]、[e]に当てはまる数値の組み合わせを以下から選択して答えて下さい。 ただし、メインタスクと通信タスクの実行時間、OSによるタスクの切り替え時間は無視できるものとし、実行時間は供給されるクロックの周波数に反比例するものとします。 選択肢からそれを選択した、その理由も教えて下さい。


選択肢1:[c]=0.5、[d]=1、[e]=1.5

選択肢2:[c]=1、[d]=1、[e]=0.5

選択肢3:[c]=1.5、[d]=1.5、[e]=2

選択肢4:[c]=2、[d]=1、[e]=0.5

選択肢5:[c]=2、[d]=1.5、[e]=1

選択肢6:[c]=2、[d]=2、[e]=2


問題の3番目は右イヤホンのメインタスクでは生成せず、左イヤホンのメインタスクだけが生成するタスクを制御部のタスク一覧のタスクから選んで答えて下さい。


問題の4番目はクロックの供給を停止できるのは、使用状況に応じたクロックの周波数割り当ての項目の使用状況が待機時のときだけである。待機時以外でクロックの供給を停止できない理由をタスクの起動周期の観点で40字以内で答えて下さい。

 

令和6年度秋期 午後 問7 組込みシステム開発(問題原文)

■スマートイヤホンに関する次の記述を読んで、設問に答えよ。


 G社は、専用のアプリケーションプログラム(以下、アプリという)をインストールしたスマートフォン(以下、スマホという)とBluetoothで接続して、音楽などの音源再生機能、電話の通話機能、ノイズキャンセル機能、音声アシスト機能をもつスマートイヤホン(以下、Sイヤホンという)を開発している。

 利用者はアプリを用いて、Sイヤホンの音源再生機能と通話機能の開始/停止の指示、およびノイズキャンセル機能と音声アシスト機能のオン/オフの設定を行うことができる。Sイヤホンを用いて通話するときには、音源再生機能及び音声アシスト機能は使用できない。

 Sイヤホンは左右が独立しており、左耳に装着するイヤホン(以下、左イヤホンという)はスマホとペアリングする。右耳に装着するイヤホン(以下、右イヤホンという)とスマホとの通信は、左イヤホンが中継する。

 Sイヤホンは専用のケースに入れると電源がオフとなり充電が行われ、専用のケースから取り出すと電源がオンになる。

 スマホ及びSイヤホンの概要を図1に、Sイヤホンの機能を表1に示す。


図1 スマホ及びSイヤホンの概要


表1 Sイヤホンの機能
機能名 概要
音源再生機能 ・スマホから送信された音源データを、Sイヤホンで音響補正して出力する。
音声アシスト機能 ・左イヤホンでは、利用者が発した音声から、特定のキーワードを検出すると、続くフレーズをスマホへの指示として左イヤホンからスマホに送信、スマホで解析して実行する。
通話機能 ・利用者がスマホの操作で発信する、又は利用者のスマホに着信があると、Sイヤホンは、
及び
を停止して、通話開始を音声で知らせる。
・Sイヤホンの、音声を出力するスピーカー及び音声を入力するマイクを使用して、音声データを入出力することで、利用者は通話することができる。
ノイズキャンセル機能 ・マイクから入力されたSイヤホンの周囲の音(以下、環境音という)から、環境音を打ち消すデータを生成する。このデータをスピーカーの出力に合成して環境音を低減させる。


・Sイヤホンのハードウェア構成  Sイヤホンは、左イヤホンと右イヤホンのそれぞれが、マイク及びスピーカーを接続した音声制御部、クロック部、通信部、それらを制御する制御部、及び電力部から成る。左イヤホンと右イヤホンとでハードウェア構成に違いはない。左イヤホンのハードウェア構成を図2に、Sイヤホン構成要素の機能概要を表2に示す。


図2 左イヤホンのハードウェア構成


表2 Sイヤホンの構成要素の機能概要
構成要素名 構成要素の機能
制御部 ・Sイヤホンの機能名1~4に示す機能を実現するために、音声制御部、クロック部、通信部を制御する。

・左イヤホンの場合は、マイクから入力された音声データを解析して、特定のキーワードを検出する。
・機能の使用状況に応じて、クロックの供給の停止又は適切な周波数を決定して、クロック部に指示する。
・クロック部への指示は0、0.5、1、1.5、又は2の値である。この値に、基準周波数を乗じた周波数のクロックが供給される。0のときは、クロックの供給が停止される。

・クロックの供給が停止されると、その時点の状態を保持したまま停止する。クロックが再度供給されると停止したところから再開する。
音声制御部 ・2ミリ秒周期でマイクから入力された音声をデジタルデータに変換して、制御部に送信する。
・5ミリ秒周期で制御部からデジタルデータを受信し、スピーカーで音声を出力する。その際、制御部から受信したノイズキャンセルデータを合成する。
クロック部 ・制御部の指示によって、指示された周波数のクロックの供給又は停止を行う。
・停止したクロックの供給は①特定のイベントによって再開する。このイベントを受けてから5ミリ秒後に、停止する直前の周波数でクロックの供給を再開する。
通信部 ・Bluetoothを用いてスマホと通信を行う。内部にクロックをもち、電源オン後は常に動作する。

・左イヤホンの場合は、スマホとペアリングした後、右イヤホンとスマホとの通信を中継する。
・スマホからのデータ受信すると、それを制御部に送信し、データを受信したことをクロック部に送信する。さらに、データが音源データが音源データ又は音声データの場合は、左右それぞれのイヤホン用のデータを取り出し、5ミリ秒周期で制御部に送信する。

・制御部から受信した音声データをスマホに送信する。
電力部 ・充電可能な電池を内蔵しており、各部に電力を供給する。


・クロック部の動作

 制御部の実行時間はクロックの周波数は反比例する。一方、消費電力はクロック周波数が高いほど大きくなる。Sイヤホンは電池駆動であるので、できる限り消費電力は小さくしたい。そこで、表3に示すように機能の使用状況に応じてクロックの周波数を制御部の指示で適切に割り当てることにした。


表3 使用状況に応じたクロックの周波数割り当て
使用状況 機能 クロック部への周波数の指示
音源再生     通話       ノイズキャンセル 音声アシスト  
待機時 0
音源再生1
音源再生2
通話時
凡例 〇:機能がオンである。空白:機能がオフである。△:機能のオン/オフが切替え可能である。


・制御部のタスク

 制御部はリアルタイムOSを使用している。電源オン時にメインタスクが生成される。左イヤホンと右イヤホンとで機能が異なるので、メインタスクはそのイヤホンで必要となるタスクだけを生成する。メインタスクを含め、それぞれのタスクは重複しない固有の優先度が割り当てられる。リアルタイムOSのタスクの状態は実行状態、実行可能状態、又は待ち状態のいずれかである。

 制御部のタスク一覧を表4に示す。クロックの周波数が基準周波数に等しいときタスクの実行に要する時間は、表4に示す実行時間となる。スピーカータスク、マイクタスク、及び特定語検出タスクは起動周期内に処理が完了しなければならない。起動周期内に処理が完了しない場合、音飛びやノイズなどの不具合が発生する。


表4 制御部のタスク一覧
タスク名 タスクの機能 起動周期1) 実行時間2)
メイン ・ほかのタスクから通知を受けると、通知に応じた処理を行う。
・機能の使用状況に応じて、適切なクロックの周波数を決定して、クロック部に指示する。ただし、クロックの供給の停止はアイドルタスクが行う。
0.05
スピーカー ・音源再生時、音源データに音質補正を行い音声制御部に送信する。 5 3.4
・通話時、音声データの音質補正は行わず、音声制御部に送信する。 5 0.5
マイク ・マイクから入力された音声データを処理する。
・ノイズキャンセル機能の処理を行い、生成された環境を打ち消すデータを音声制御部に送信する。
2 1
特定語検出 ・マイクタスクから受けた音声データを解析して、特定のキーワードを検出する。 40 20
通信 ・通信部からデータを受信すると、メインタスクに通知する。
・ほかのタスクからの通知を受けると、通信部に送信する。
0.05
アイドル ・メインタスクから指示があると、クロック部にクロックの供給の停止を指示する。
1)起動周期はクロックの周波数に依存せず一定である。単位はミリ秒である。
2)実行時間はクロックの周波数が基準周波数に等しいときの値である。単位はミリ秒である。


 タスクの優先度は、通信タスクが最も高く、以下、メインタスク、タスク、タスク、タスク、アイドルタスクの順である。

 アイドルタスクは最も優先度が低いので、アイドルタスクが実行状態のとき、ほかのタスク状態はである。


設問1 Sイヤホンの機能について答えよ。

(1)表1中の
,
に入れる適切な機能名を表1中の機能名で答えよ。
(2)表2中の下線①の特定のイベントとして適切なものを回答群の中から選び、記号で答えよ。
回答群
ア 一定時間経過
イ スマホからのデータを受信
ウ 制御部からの指示を受信
エ 電力部が電力を供給
オ マイクから入力された音声データから特定のキーワードを検出


設問2 表3中の に入れる適切な数値の組み合わせを回答群の中から選び、記号で答えよ。ただし、メインタスクと通信タスクの実行時間、OSによるタスクの切り替え時間は無視できるものとし、実行時間は供給されるクロックの周波数に反比例するものとする。

回答群
記号
0.5 1 1.5
1 1 0.5
1.5 1.5 2
2 1 0.5
2 1.5 1
2 2 2


設問3 制御部のタスクについて答えよ。

(1) 本文中の に入れるタスク名を、表4中のタスク名で答えよ。
(2) 右イヤホンのメインタスクでは生成せず、左イヤホンのメインタスクだけが生成するタスクを表4中のタスクから選んで答えよ。


設問4 アイドルタスクについて答えよ。

(1) 本文中の に入れるリアルタイムOSのタスクの状態を答えよ。
(2) クロックの供給を停止できるのは、表3における使用状況が待機時のときだけである。待機時以外でクロックの供給を停止できない理由をタスクの起動周期の観点で40字以内で答えよ。

 

回答・解説

設問1

(1)

 利用者がスマホの操作で発信する、又は利用者のスマホに着信があると、Sイヤホンは、 及び を停止して、通話開始を音声で知らせる。


 とあるところの穴埋めですが、スマホで通話をすると何かの機能を停止しなければならないという条件がどこかで定義されていることを意味していて、その部分を問題文から探すと、Sイヤホンを用いて通話するときには、音源再生機能及び音声アシスト機能は使用できない。という部分が条件部分であると推察することができます。したがって答えは


a=音源再生機能

b=音声アシスト機能


となります。順不同でも正解になるので、aとbは入れ替わっていても問題ありません。設問1の(1)の2回答は、長い問題文を読み込みさえすれば答えれる簡単な部類の問題と言えると思います。


設問1

(2)

クロック部の機能として、停止したクロックの供給は①特定のイベントによって再開する。このイベントを受けてから5ミリ秒後に、停止する直前の周波数でクロックの供給を再開する。とあります。


 停止した後にクロックが再開されるということは、問題文全体から読み取ると、待機時がクロック0で停止で、その他の状態に遷移した時にクロックが再開するということがわかります。ただ、それがどこからのどんな信号や指示によるものかを考える必要があります。制御部の構成要素の機能の説明に、機能の使用状況に応じて、クロックの供給の停止又は適切な周波数を決定して、クロック部に指示する。とあるので、制御部からの指示を受信したらクロックの供給を決定していますが、イベントを受けてから5ミリ秒後に停止する直前の周波数でクロックの供給を再開するということですから、クロックの供給をしているのは制御部からの指示なのだけど、特定のイベントと言っているものは違うものであると考えられます。特定のイベントがあってから、制御部が5ミリ秒後にクロックの供給を指示しているということになります。


 だとすると、特定のイベントというのは待機状態から、音源再生1や音源再生2や通話の状態に状態を遷移させる何かです。電力部も問題文の中で状態を遷移させる指示を出すことがあると記載されていて、専用のケースから取り出すと電源がオンとありますが、電源がオンになってもクロックを供給するイベントにはなりません。音源再生1や音源再生2や通話の状態にするのは、スマホからの指示であると推察することができます。イのスマホからのデータを受信が特定のイベントっぽいと考えられます。念のため他の候補はどうなのか見ておきましょう。アの一定時間というのは、問題文では言及されていない動作です。一定時間たったら、待機状態から音源再生1や音源再生2や通話の状態になったりすることはありません。オのマイクから入力された音声データから特定のキーワードを検出というのは音源再生1の状態になるところだけを指していて、3つの音源再生1や音源再生2や通話の状態になるイベントではないと言えます。ということで消去法的な確認から一つに絞り込め、スマホからの状態遷移を伴う指示こそが3つの状態に遷移するイベントであると考えられます。したがって、答えは


イのスマホからのデータを受信


となります。この設問の答えを導き出すのには制御部はそのイベントの5ミリ秒後に指示を出してクロックを供給する役割であることを認識できるかというところがキーになるのかなと思います。そして、他の選択肢は3つの状態に遷移させるイベントではないということをつきつめることができるという判断力が問われていると思います。イとウは似ているので悩みますが、その微妙な違いを感じ取れるかという感じでしょうか?微妙な言い回しをきっちり読み取れるかを見極められるかを試されている難しめの設問だと思います。


設問2は難しい問題だと思いました。初見でこれが何を言っているか理解できたら凄いと思います。


1.それぞれの状態ごとに必要となるタスクは何なのか?

2.起動周期に間に合わない分だけクロック周波数を高める必要がある


 こういうった理解が必要になる問題です。それぞれのタスクの起動周期の割合を計算して、必要となるタスクの分だけこの割合を足し算して、10割(100%)以内ならクロック周波数は1倍でよくて、起動周期の割合が半分5割(50%)以下なら、0.5倍のクロック周波数でも十分に周期に間に合うということになります。同じく、1.5割(150%)ならクロック周波数を1.5倍することで、起動周期に間に合うという感じです。最大は2倍まで設定できるということなので、起動周期の割合が2なら2倍することで起動周期に間に合うという感じです。


 クロック周波数の倍率によって処理時間が反比例して短くなるので、起動周期に間に合うようになるというイメージです。


 まず、音源再生1、音源再生2、通話、3種類の状態が必要とするタスクを考えます。


  • 音源再生1:メインタスク+通信タスク+スピーカータスク(音源)+マイクタスク+特定語検出タスク
  • 音源再生2:メインタスク+通信タスク+スピーカータスク(音源)+マイクタスク
  • 通話   :メインタスク+通信タスク+スピーカータスク(通話)+マイクタスク


 となります。問題文にはメインタスクと通信タスクの実行時間、OSによるタスクの切替え時間は無視できるとあるので、


  • 音源再生1:スピーカータスク(音源)+マイクタスク+特定語検出タスク
  • 音源再生2:スピーカータスク(音源)+マイクタスク
  • 通話   :スピーカータスク(通話)+マイクタスク


 と考えることができます。それぞれのタスクの周期割合を先に計算して、どれくらいの周期割合になるかを機能ごとに必要なタスクの周期割合を足し算します。


  • スピーカータスク(音源):3.4[ミリ秒]÷ 5[ミリ秒]=0.68
  • スピーカータスク(通話):0.5[ミリ秒]÷ 5[ミリ秒]=0.1
  • マイク         : 1[ミリ秒]÷ 2[ミリ秒]=0.5
  • 特定語検出       : 20[ミリ秒]÷40[ミリ秒]=0.5


 それぞれの状態では


  • 音源再生1:0.68+0.5+0.5=1.68→2 倍で起動周期に間に合う。
  • 音源再生2:0.68+0.5   =1.13→1.5倍で起動周期に間に合う。
  • 通話   :0.1 +0.5   =0.6 →1 倍で起動周期に間に合う。


 したがって選択肢のオが正解となります。


 以上が考え方になります。このような考え方をものの数分で思いつかないといけないのは難しすぎると思います。自作パソコンのベースクロックスイッチの操作をしたことがあるような人で、このタスクごとの周期が似たような意味をもっていて、複数のタスクによってクロックを切り替える考え方ができるかということがポイントになるでしょうか?同じようなクロックシステムの状況におかれた組込み開発をやったことがある人だけがわかる問題なのかもしれません。とにかく難しいですね。なので設問1(2)と設問2とで2問も難題が設定されていることになります。恐るべし組込みシステム開発!


 

 

AP過去問_令和6年度秋期_午後_問6_データベースの同じ回の前の問題へ移動。

AP過去問_令和6年度秋期_午後_問8_情報システム開発の同じ回の次の問題へ移動。

AP 過去問題 午後に戻る。