Panasonic_HDD_Audio
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
]
開始行:
#contents
** まえがき [#zb2a34d8]
- 本ドキュメントは、HDD audio system に搭載される Linux O...
boot_loader の目標仕様を記述するものである。
- 本仕様書内に規定された処理時間・プログラムサイズ等は現...
予測値でありソフトウエア・ハードウエアの要件の見直しに...
する可能性がある。
- 本ドキュメントは、システム構成検討用の資料として作成さ...
であり、プログラム開発/検収用の仕様書ではない。
** Linux 実装に関連した "ハードウエア構成" [#v3672b3a]
- システム回路基盤上に実装された NOR型 Flash メモリーに、...
kernel 圧縮イメージ と boot_loader プログラムが格納され...
- HDD 内に kernel 圧縮イメージ以外の全ての Linux プログラ...
される。
- kernel 更新処理に失敗してもバックアップで起動できるよう...
メモリー上には 2つの Linux kernel 圧縮イメージを格納で...
- システム開発用に利用する Linux shell 操作用のコンソール...
ために RS232C の調歩同期式のシリアルポート 1ch を利用す...
- システム開発用にサーバー連携を行うために Ethernet LAN ...
する。この LAN 1ch は製品のネットワーク接続用として共用...
- 開発ボード上に実装された JTAG ポートを利用して外部にデ...
接続して Linux kernel空間、user空間のプログラムのデバッ...
** boot_loader [#laa09508]
*** 概 要 [#i107789d]
- ハードウエアの初期化を行ってから、Linux OS の kernel イ...
システムRAM(SD-RAM)上に展開し、プログラムの実行を Lin...
に引き渡すまでの処理を行うプログラムである。
- CD-ROMから Linux kernel イメージ を自動更新する機能をも...
CD-ROM の中には HDD内の Linux システムプログラム、ユー...
ケーションプログラムなどの更新データを記録しておいて、...
起動後にこのCD-ROMを読ませて、これらのプログラムを自動...
ことが可能であるが、この更新機能は boot_loader 内の機能...
- システム開発支援機能として LANを利用した kernel のネッ...
からの起動、ネットワーク上のファイルシステムのマウント...
*** 性能の指標(予測値) [#ubd7215c]
- [処理時間]今回の boot_loader 部の処理時間は通常の起動...
の場合で1秒以下でありシステム全体起動時間のチューニン...
- [サイズ①]boot_loader 自体のサイズはCD-ROMからの自動更...
を含めても高々 128k バイト以下と予測する。
- [サイズ②]kernel image のサイズは構成次第であるが、1...
で高々 1M バイトと想定している。
*** 機 能 [#u0f7c1d4]
- ブート対象デバイス
++ Flash + HDD (通常利用される起動方式)
++ CD-ROM (プログラム更新用)
++ LAN (システム開発用)
++ シリアルポート(システム開発用)
- 実際の製品ではシステム起動時間高速化要求もあるので(後...
プログラム更新時を除き)ブート方法の選択は行わないもの...
- 製品開発時に boot_loader 起動後にキー入力を受け付けて、...
対象デバイスの選択や kernel image の選択を行う方法を提...
については別途協議とする。(現見積にはこれらの機能は含...
- [制限事項]今回開発する boot_loader は ①SD memory card...
からの起動(=kernel 圧縮イメージ自体をHDD内に格納する方...
主として boot_loader プログラムサイズ制約を考慮し対応し...
- 高速起動支援機能
-- 今回はシステム稼働時の性能を犠牲にしないためフラッシュ...
から Linux kernel の展開イメージを直接実行する方式(XI...
採用しない。
-- 本システムでは kernel スケジューラの拡張(後述)にてシ...
高速起動を行うが、一部の機能(電源投入直後のビットパタ...
表示など)を boot_loader 内に持たせることは可能である...
どのような機能を持たせるかは、プログラム/データ(表示...
のサイズ制約を考慮しながら別途協議して決定する。 実際...
kernel 起動後に LCD表示データを設定する方式でも電源投...
程度で表示ができる可能性があり、必ずしも boot_loader ...
必須であるとは考えていない。現状保険と考えておく。
-- システム起動時間の中で HDD 装置の起動(spin_up)時間が...
要因となる。今回の boot_loader は HDD 上のファイルの読...
対応していないが、HDD を起動させるためにATAPIのリセッ...
を boot_loader 内で実施する方法を検討。HDD のリセット...
ウエアで処理できる可能性もあるので詳細の実装は別途検討...
- プログラム更新機能
-- プログラム更新専用 CD-ROM を利用したソフトウエアの更新...
-- 起動時に CD-ROM に更新プログラムが入っているか自動確認...
システム起動時間が長くなってしまうので、起動時に CD-RO...
選択させる方法(特殊なキー操作など)を別途協議して決定...
-- kernel image を更新した場合には、自動的に更新された ke...
システム起動時に選択する機能をもたせる。
-- kernel image の更新に失敗した場合には、自動的に更新前...
を利用して起動できる救済機能を持たせる。この機能のため...
image の先頭に kernel 識別用のコード(magic_number)領域...
-- CD-ROM 内にHDD上のファイル更新プログラムが格納されてい...
HDD 上のファイルをどのように更新するかは別途検討とする...
起動後にメンテナンス用のプログラムを起動して、CD-ROM何...
れた更新情報(ファイル名、ファイル格納位置)を参照しな...
更新することができるが、
*** プログラムライセンス [#reb7bea5]
- boot_loader 部は Panasonic 殿向けのカスタムソフトウエア...
スクラッチ開発されるものである。
- boot_loader には GPL などのオープンソースソフトウエアラ...
適用されない。(GPL成分を含まない)
** Linux kernel [#k868c41f]
*** 適用ディストリビューション [#n024065f]
- 本システムの Linux ディストリビューションは Lineo Solut...
uLinux CEE 1.0 である。
- Linux 統合開発環境は Lineo Solutions 社の ELITE( http:/...
- Linux(kernel、ドライバー)は ELITE BSP(後述)として組...
- ELITE は Java プログラムであり、Linux/Windows 両方で実...
詳細な実行環境については Lineo Solutions の製品仕様を参...
*** BSP(ボードサポートパッケージ) [#s7e325ed]
- 本システム用にカスタマイズされたLinuxソフトウエアプログ...
一式(バイナリーデータを含む)を カスタムBSPとして Line...
からリリースする。
- Lineo Soluions は別途締結するサポート契約に基づき提供す...
テクニカルサポートは、このBSPに含まれたパッケージを対象...
- BSPには以下の SH-Linux 開発用の tool_chain を含んでいる。
-- kernel = 2.4.20
-- gcc = 3.2.3
-- glibc = 2.3.1
-- binutil = 2.13.90.1
*** 性能の指標(予測値) [#a5d076b3]
- [起動時間]システム全体の起動時間は以下の項目の合計値...
一般には ⅰ < ⅱ ≪ ⅲ の関係となる。
++ boot_loader(1秒程度)、
++ kernel起動時間(ハードウエア構成の時間を含む)、
++ アプリケーション起動時間
- [起動時間]②のkernel起動時間は、kernel 初期化の手順に...
特にネットワーク認識やPCI/ATAPIなどのハードウエア認識の...
割合が大きい。これらの認識時間は外部環境依存で変動する...
- [起動時間]今回は起動時間高速化のため、ネットワークの...
処理は、システム起動時にハードウエア構成の認識を行わず...
ネットワーク接続が必要になった時に on-demand に module ...
手法を適用する。
- [起動時間]本システムのLinuxに実装されているハードリア...
を利用することで、上記②のkernel起動期間中にも一部のプロ...
させることができる。この機構を利用してユーザがシステム...
いることを見せるためのプログラム起動処理の作り込みを行...
- [起動時間]上記対応を前提に以下のシステム起動時間目標...
|1|電源投入後、LCDに初期画面が表示されるまで |...
|2|キー・リモコン操作で表示内容が切り替わるまで |...
|3|キー・リモコ操作でCDトレイの開閉操作が可能になるまで |...
|4|実際にHDDに録音された音が出るまで |...
*** ハードリアルタイム機能 [#efca8f9b]
- uLinux CEE 1.0 にはハードリアルタイム機能が実装されてい...
- 本システムでは以下の技術課題解決にハードリアルタイム機...
-- 起動時間高速化のためのハードリアルタイム機能利用
++ LCD表示データ表示ルーチンkernelプロセスで実行
++ 起動途中でキー入力に表示を応答させるため Sub-CPU との...
をリアルタイムスケジューラで実行させる
++ 起動途中でCDのトレイ開閉操作に対応した動作を行う
-- リアルタイム応答性確保のためのハードリアルタイム機能利用
++ 外部表示コントローラへのビットマップデータ転送処理(=...
通信)。本仕様はシステム全体性能への影響が大きく詳細検...
++ Sub-CPU とのシリアル通信処理を行う、通信プロトコル詳細...
- 上記のハードリアルタイム対応プログラムはユーザーアプリ...
であるが、リアルタイム対応のプログラム作成に特殊なAPIを...
必要があるので、今回提供するBSPの中に上記のプログラムの...
含めて提供する。タイミング調整などのパラメータ設定は変...
*** 起動シーケンス解説 [#q7fa6d10]
- 現在の HDD-Audio デモシステムの起動シーケンスは以下のよ...
- 各ステップ毎の処理時間は現在計測中であるが、現状はユー...
画面)が表示されるまでに約8秒かかっている。
- 本システムでは、この起動シーケンスの見直しを行うのと合...
機能の適用により起動時間の最適化を図る。(初期LCD表...
+ /sbin/init が起動しユーザ空間に処理が移行する。
+ /etc/inittab のエントリから /etc/rc.d/rcS スクリプトが...
+ /etc/rc.d/rc.sysinit の実行
++ -hostname の設定
++ -log level の設定
++ -hwclock による system clock の設定
++ -keymap の設定
++ -System Font の設定
++ -USBドライバモジュール時のドライバ読み込み
++ -fsck
++ -rootfs の remount
++ -各デバイスドライバモジュールの読み込み
++ -swap on
+ /etc/rc.d/rc 3 にてランレベル3にて実行
++ rc0.d
+++ S01halt
+++ S00killall
++ rc1.d
+++ S00single
++ rc2.d
+++ S99local
+++ S24pcmcia
+++ S20random
+++ S12syslog
+++ S10network
++ rc3.d
+++ S99local
+++ S56rawdevices
+++ S25netfs
+++ S24pcmcia
+++ S20random
+++ S12syslog
+++ S10network
*** DVD-RAM サポート [#b221143e]
- SH7760 に内蔵されて USB Host インターフェース(USB1.1準...
OHCI仕様に見える)を利用して、外部に光ストレージデバイ...
という顧客リクエストがあり実装方法を検討中
- DVD-RAM の UDFファイルシステム(1.50)対応には 3rd part...
ドライバーの適用が必要となることがわかった。
- 日立システム
(http://www.hitachi-system.co.jp/http://www.hitachi-sy...
PC用のDVD-RAMドライバー を有償で組み込みLinux向けに開...
していることがわかった。( http://www.hitachi-system.co....
- SH-Linux への移植作業は2人月程度の作業工数との概算見積...
- SH-Linux 用ドライバーを binary 提供(ソース非公開)する
- 別途ライセンス契約が必要(詳細情報未入手)
- 現在の日立システム製品は UDF2.01 に未対応(対応には6人...
- 現在の日立システム製品は VR書き込み に未対応
*** パワーマネージメント機能 [#lfa916b3]
- apm の実装により、CPUのスリープモードを実現。個々のデバ...
終了行:
#contents
** まえがき [#zb2a34d8]
- 本ドキュメントは、HDD audio system に搭載される Linux O...
boot_loader の目標仕様を記述するものである。
- 本仕様書内に規定された処理時間・プログラムサイズ等は現...
予測値でありソフトウエア・ハードウエアの要件の見直しに...
する可能性がある。
- 本ドキュメントは、システム構成検討用の資料として作成さ...
であり、プログラム開発/検収用の仕様書ではない。
** Linux 実装に関連した "ハードウエア構成" [#v3672b3a]
- システム回路基盤上に実装された NOR型 Flash メモリーに、...
kernel 圧縮イメージ と boot_loader プログラムが格納され...
- HDD 内に kernel 圧縮イメージ以外の全ての Linux プログラ...
される。
- kernel 更新処理に失敗してもバックアップで起動できるよう...
メモリー上には 2つの Linux kernel 圧縮イメージを格納で...
- システム開発用に利用する Linux shell 操作用のコンソール...
ために RS232C の調歩同期式のシリアルポート 1ch を利用す...
- システム開発用にサーバー連携を行うために Ethernet LAN ...
する。この LAN 1ch は製品のネットワーク接続用として共用...
- 開発ボード上に実装された JTAG ポートを利用して外部にデ...
接続して Linux kernel空間、user空間のプログラムのデバッ...
** boot_loader [#laa09508]
*** 概 要 [#i107789d]
- ハードウエアの初期化を行ってから、Linux OS の kernel イ...
システムRAM(SD-RAM)上に展開し、プログラムの実行を Lin...
に引き渡すまでの処理を行うプログラムである。
- CD-ROMから Linux kernel イメージ を自動更新する機能をも...
CD-ROM の中には HDD内の Linux システムプログラム、ユー...
ケーションプログラムなどの更新データを記録しておいて、...
起動後にこのCD-ROMを読ませて、これらのプログラムを自動...
ことが可能であるが、この更新機能は boot_loader 内の機能...
- システム開発支援機能として LANを利用した kernel のネッ...
からの起動、ネットワーク上のファイルシステムのマウント...
*** 性能の指標(予測値) [#ubd7215c]
- [処理時間]今回の boot_loader 部の処理時間は通常の起動...
の場合で1秒以下でありシステム全体起動時間のチューニン...
- [サイズ①]boot_loader 自体のサイズはCD-ROMからの自動更...
を含めても高々 128k バイト以下と予測する。
- [サイズ②]kernel image のサイズは構成次第であるが、1...
で高々 1M バイトと想定している。
*** 機 能 [#u0f7c1d4]
- ブート対象デバイス
++ Flash + HDD (通常利用される起動方式)
++ CD-ROM (プログラム更新用)
++ LAN (システム開発用)
++ シリアルポート(システム開発用)
- 実際の製品ではシステム起動時間高速化要求もあるので(後...
プログラム更新時を除き)ブート方法の選択は行わないもの...
- 製品開発時に boot_loader 起動後にキー入力を受け付けて、...
対象デバイスの選択や kernel image の選択を行う方法を提...
については別途協議とする。(現見積にはこれらの機能は含...
- [制限事項]今回開発する boot_loader は ①SD memory card...
からの起動(=kernel 圧縮イメージ自体をHDD内に格納する方...
主として boot_loader プログラムサイズ制約を考慮し対応し...
- 高速起動支援機能
-- 今回はシステム稼働時の性能を犠牲にしないためフラッシュ...
から Linux kernel の展開イメージを直接実行する方式(XI...
採用しない。
-- 本システムでは kernel スケジューラの拡張(後述)にてシ...
高速起動を行うが、一部の機能(電源投入直後のビットパタ...
表示など)を boot_loader 内に持たせることは可能である...
どのような機能を持たせるかは、プログラム/データ(表示...
のサイズ制約を考慮しながら別途協議して決定する。 実際...
kernel 起動後に LCD表示データを設定する方式でも電源投...
程度で表示ができる可能性があり、必ずしも boot_loader ...
必須であるとは考えていない。現状保険と考えておく。
-- システム起動時間の中で HDD 装置の起動(spin_up)時間が...
要因となる。今回の boot_loader は HDD 上のファイルの読...
対応していないが、HDD を起動させるためにATAPIのリセッ...
を boot_loader 内で実施する方法を検討。HDD のリセット...
ウエアで処理できる可能性もあるので詳細の実装は別途検討...
- プログラム更新機能
-- プログラム更新専用 CD-ROM を利用したソフトウエアの更新...
-- 起動時に CD-ROM に更新プログラムが入っているか自動確認...
システム起動時間が長くなってしまうので、起動時に CD-RO...
選択させる方法(特殊なキー操作など)を別途協議して決定...
-- kernel image を更新した場合には、自動的に更新された ke...
システム起動時に選択する機能をもたせる。
-- kernel image の更新に失敗した場合には、自動的に更新前...
を利用して起動できる救済機能を持たせる。この機能のため...
image の先頭に kernel 識別用のコード(magic_number)領域...
-- CD-ROM 内にHDD上のファイル更新プログラムが格納されてい...
HDD 上のファイルをどのように更新するかは別途検討とする...
起動後にメンテナンス用のプログラムを起動して、CD-ROM何...
れた更新情報(ファイル名、ファイル格納位置)を参照しな...
更新することができるが、
*** プログラムライセンス [#reb7bea5]
- boot_loader 部は Panasonic 殿向けのカスタムソフトウエア...
スクラッチ開発されるものである。
- boot_loader には GPL などのオープンソースソフトウエアラ...
適用されない。(GPL成分を含まない)
** Linux kernel [#k868c41f]
*** 適用ディストリビューション [#n024065f]
- 本システムの Linux ディストリビューションは Lineo Solut...
uLinux CEE 1.0 である。
- Linux 統合開発環境は Lineo Solutions 社の ELITE( http:/...
- Linux(kernel、ドライバー)は ELITE BSP(後述)として組...
- ELITE は Java プログラムであり、Linux/Windows 両方で実...
詳細な実行環境については Lineo Solutions の製品仕様を参...
*** BSP(ボードサポートパッケージ) [#s7e325ed]
- 本システム用にカスタマイズされたLinuxソフトウエアプログ...
一式(バイナリーデータを含む)を カスタムBSPとして Line...
からリリースする。
- Lineo Soluions は別途締結するサポート契約に基づき提供す...
テクニカルサポートは、このBSPに含まれたパッケージを対象...
- BSPには以下の SH-Linux 開発用の tool_chain を含んでいる。
-- kernel = 2.4.20
-- gcc = 3.2.3
-- glibc = 2.3.1
-- binutil = 2.13.90.1
*** 性能の指標(予測値) [#a5d076b3]
- [起動時間]システム全体の起動時間は以下の項目の合計値...
一般には ⅰ < ⅱ ≪ ⅲ の関係となる。
++ boot_loader(1秒程度)、
++ kernel起動時間(ハードウエア構成の時間を含む)、
++ アプリケーション起動時間
- [起動時間]②のkernel起動時間は、kernel 初期化の手順に...
特にネットワーク認識やPCI/ATAPIなどのハードウエア認識の...
割合が大きい。これらの認識時間は外部環境依存で変動する...
- [起動時間]今回は起動時間高速化のため、ネットワークの...
処理は、システム起動時にハードウエア構成の認識を行わず...
ネットワーク接続が必要になった時に on-demand に module ...
手法を適用する。
- [起動時間]本システムのLinuxに実装されているハードリア...
を利用することで、上記②のkernel起動期間中にも一部のプロ...
させることができる。この機構を利用してユーザがシステム...
いることを見せるためのプログラム起動処理の作り込みを行...
- [起動時間]上記対応を前提に以下のシステム起動時間目標...
|1|電源投入後、LCDに初期画面が表示されるまで |...
|2|キー・リモコン操作で表示内容が切り替わるまで |...
|3|キー・リモコ操作でCDトレイの開閉操作が可能になるまで |...
|4|実際にHDDに録音された音が出るまで |...
*** ハードリアルタイム機能 [#efca8f9b]
- uLinux CEE 1.0 にはハードリアルタイム機能が実装されてい...
- 本システムでは以下の技術課題解決にハードリアルタイム機...
-- 起動時間高速化のためのハードリアルタイム機能利用
++ LCD表示データ表示ルーチンkernelプロセスで実行
++ 起動途中でキー入力に表示を応答させるため Sub-CPU との...
をリアルタイムスケジューラで実行させる
++ 起動途中でCDのトレイ開閉操作に対応した動作を行う
-- リアルタイム応答性確保のためのハードリアルタイム機能利用
++ 外部表示コントローラへのビットマップデータ転送処理(=...
通信)。本仕様はシステム全体性能への影響が大きく詳細検...
++ Sub-CPU とのシリアル通信処理を行う、通信プロトコル詳細...
- 上記のハードリアルタイム対応プログラムはユーザーアプリ...
であるが、リアルタイム対応のプログラム作成に特殊なAPIを...
必要があるので、今回提供するBSPの中に上記のプログラムの...
含めて提供する。タイミング調整などのパラメータ設定は変...
*** 起動シーケンス解説 [#q7fa6d10]
- 現在の HDD-Audio デモシステムの起動シーケンスは以下のよ...
- 各ステップ毎の処理時間は現在計測中であるが、現状はユー...
画面)が表示されるまでに約8秒かかっている。
- 本システムでは、この起動シーケンスの見直しを行うのと合...
機能の適用により起動時間の最適化を図る。(初期LCD表...
+ /sbin/init が起動しユーザ空間に処理が移行する。
+ /etc/inittab のエントリから /etc/rc.d/rcS スクリプトが...
+ /etc/rc.d/rc.sysinit の実行
++ -hostname の設定
++ -log level の設定
++ -hwclock による system clock の設定
++ -keymap の設定
++ -System Font の設定
++ -USBドライバモジュール時のドライバ読み込み
++ -fsck
++ -rootfs の remount
++ -各デバイスドライバモジュールの読み込み
++ -swap on
+ /etc/rc.d/rc 3 にてランレベル3にて実行
++ rc0.d
+++ S01halt
+++ S00killall
++ rc1.d
+++ S00single
++ rc2.d
+++ S99local
+++ S24pcmcia
+++ S20random
+++ S12syslog
+++ S10network
++ rc3.d
+++ S99local
+++ S56rawdevices
+++ S25netfs
+++ S24pcmcia
+++ S20random
+++ S12syslog
+++ S10network
*** DVD-RAM サポート [#b221143e]
- SH7760 に内蔵されて USB Host インターフェース(USB1.1準...
OHCI仕様に見える)を利用して、外部に光ストレージデバイ...
という顧客リクエストがあり実装方法を検討中
- DVD-RAM の UDFファイルシステム(1.50)対応には 3rd part...
ドライバーの適用が必要となることがわかった。
- 日立システム
(http://www.hitachi-system.co.jp/http://www.hitachi-sy...
PC用のDVD-RAMドライバー を有償で組み込みLinux向けに開...
していることがわかった。( http://www.hitachi-system.co....
- SH-Linux への移植作業は2人月程度の作業工数との概算見積...
- SH-Linux 用ドライバーを binary 提供(ソース非公開)する
- 別途ライセンス契約が必要(詳細情報未入手)
- 現在の日立システム製品は UDF2.01 に未対応(対応には6人...
- 現在の日立システム製品は VR書き込み に未対応
*** パワーマネージメント機能 [#lfa916b3]
- apm の実装により、CPUのスリープモードを実現。個々のデバ...
ページ名: