私はOMAP4 の Ducati フレームワークに精通しています。のドゥカティ フレームワークに違いがあるかどうかを知りたいですOMAP5
。なぜなら、OMAP4 で、トレース ログを表示していたからです - trace0 and trace1
. ただし、OMAP5 では のみtrace0
使用できます。このオンラインで利用できるドキュメントはあまりありません。
1 に答える
これは実際には OMAP4 と OMAP5 の違いではありません。Ducati サブシステムは、2 つの ARM Cortex M コア (OMAP4 に 2xM3、OMAP5 に 2xM4) で構成されています。RTOS の初期実装 (OMAP4 上) は SMP をサポートしていなかったため、各 M コアは独自の RTOS インスタンスと独自のイメージを実行していました。各コアは、remoteproc によってロードされた異なるイメージを実際に実行していました。
trace0 と trace1 は実行中の Cortex M コア ID を参照し、各イメージは異なる ID を使用していました。MPU 側は、一方または他方のコアに明示的にメッセージを送信できます。
Ducati コア (別名 TI SYS/BIOS) で動作する RTOS は後に改善され、SMP のサポートが追加されました。Android OMAP の「リリース」の場合、移行は OMAP5 タイムフレームで発生しました。そのため、OMAP5 Android リリースの RTOS は、2 つの Cortex M コアを認識する単一のイメージを実行し、一方のコアまたは他方のコアでタスクをスケジュールすることができました。結果として、単一の「トレース」インスタンス (trace0) がありました。MPU は Ducati を単一のサブシステムとして「認識」し、すべてのメッセージをこのインスタンスに送信します (core0 または core1 に送信するのではなく)。Ducati サブシステムのメッセージは、いずれかのコアで実行されている適切なタスク/スレッドにディスパッチされます。
これは OMAP4 と OMAP5 の違いではないと言いました。SMP 対応の SYSBIOS は、ある時点で OMAP4 でも利用可能だったからです (Android 以外の Linux リリースでも同様です)。