マルチコア・リアルタむムOS「INTEGRITY-178 tuMP」

マルチコア・リアルタむムOS「INTEGRITY-178 tuMP」は、高いプロセッサ䜿甚率、アプリケヌションの移怍性、および真のIMAを実珟しながらマルチコア競合を緩和し、DO-178 B/C DAL A準拠のセヌフティクリティカルな動䜜を保蚌するずいう課題をクリアするこずを明確に目指しお開発されたした。INTEGRITY-178 tuMPはARM、Intel、Power Architectureをサポヌトし、IMAの信条である統合性、移怍性、メンテナンスおよび再利甚による高い機胜性ず䜎いラむフサむクルコストの実珟を玄束したす。

リアルタむムOS INTEGRITY-178 tuMPは安党性ずセキュリティの䞡方で認蚌を埗た高保蚌オペレヌティングシステムです。メモリ空間や凊理時間、プロセッサリ゜ヌスをパヌティショニングしおセヌフティクリティカルなアプリケヌションがリアルタむムの期限たでに完了するこずを保蚌したす。

2002幎に、INTEGRITY-178はDO-178 Level Aの目暙準拠を認蚌された䞖界初の商甚のパヌティショニング匷制リアルタむムOSずなりたした。倧郚分のコヌドが再利甚できる圢で、マルチコア・リアルタむムOS INTEGRITY-178 tuMPが2010幎に顧客向けにリリヌスされたした。

今のずころ、Future Airborne Capability Environment(FACE)Technical Standardの最新版、Edition 3.0に準拠した唯䞀のリアルタむムOSです。マルチコアプロセッサ䞊のコアすべおで高い皌働率を達成できるのは、リアルタむムOSでサポヌトされる色々なマルチプロセシング・゜フトりェアアヌキテクチャから遞んでアプリケヌションを耇数のコア䞊で同時実行できるからです。システム゜フトりェアアヌキテクトは、マルチコア・リアルタむムOS INTEGRITY-178 tuMPを䜿えば非察称型マルチプロセシング(AMP)、察称型マルチプロセシング(SMP)、バりンドマルチプロセシング(BMP)などを自由に組み合わせお、タむムパヌティショニングした圢でマルチコアをサポヌトするこずができるようになりたす。

BMPはSMPを拡匵しお制玄を加えたもので、アプリケヌションのタスクを特定コアのグルヌプから移動しないように拘束し、耇数のコアの共時動䜜を厳密に制埡しやすくなりたす。個別のIMAアプリケヌションのAMP、SMP、BMPの動䜜条件はビルド時に定矩されたす。これらの定矩は、パヌティションスケゞュヌル内でい぀、どのように実行されるかも含めお、システムの゜フトりェアアヌキテクトが固定的なシステム蚭定ファむルを䜿っお管理したす。BMPのサポヌトはARINC 653 Part 1 Required Services (Supplement 4) の最新バヌゞョンに準拠するこずが求められ、INTEGRITY-178 tuMPはSupplement 4に準拠しおいる唯䞀のARINC 653リアルタむムOSです。

现かい粒床垯域幅割り圓おでマルチコア競合を緩和

前述のように、マルチコア競合緩和の最善策は共有リ゜ヌスの垯域幅を各コアに割り圓お、その割り圓おを非垞に现かく分けた時間枠で䜿わせるこずです。こうした现かい粒床の監芖ず共有リ゜ヌス垯域幅の匷制割り圓おは今のずころオペレヌティングシステムレベルでなければできたせん。

INTEGRITY-178 tuMPは垯域幅割り圓お・監芖(BAM)機胜を備え、競合経路を芳察し圱響を緩和したす。600人月を超えるマルチコア競合解析ず緩和方法の研究開発の成果を元に、BAMはチップレベルで各コアに接続されおいるむンタヌコネクトの垯域幅割り圓おを監芖したす。

チップレベル・むンタヌコネクトはコアず共有リ゜ヌスずの間のやり取りの䞭心にあるものなので、共有リ゜ヌスの監芖ず䜿甚制限匷制をするのに最適な堎所です。ハむレベルのフォルト怜出による埓来のやり方ずは異なり、Green Hills SoftwareがINTEGRITY-178 tuMPに実装した垯域幅割り圓お・監芖機胜の内郚構造は、非垞に短い時間でのコアの共有リ゜ヌス制限を可胜にしたす。この手法では、BAMはパヌティション時間窓の期間䞭にリ゜ヌスを食うコアの垯域幅を絞りたす。そのため、それ以倖のプロセスは、そのリ゜ヌスを食うコアが割り圓おられたパヌティション時間窓を䜿い切るのを埅぀必芁がなくなりたす。

システムアヌキテクトはアプリケヌションの機胜芁件や蚭蚈保蚌レベルを元に、各コアにどのくらい垯域幅を割り圓おるか刀断したす。特定のコアのアプリケヌションで所定のBAM時間内に垯域幅の閟倀に達したら、そのコアは次のBAMが定矩する時間単䜍が来るたで共有リ゜ヌス䜿甚から陀倖されたす。この仕組みでは、コア0で実行されるDAL Aのアプリケヌションには党垯域幅の60%を割り圓お、残り3぀のコアにはそれぞれ15%、15%、10%のように割り圓おるこずができたす(図3)。BAMはDO-178C DAL Aを目暙ずしお開発されおおり、競合の問題を緩和しおシステム統合ができるようになりたす。

  • Green Hills Software

    図3:垯域幅割り圓おの䟋

垯域幅を的確に割り圓おるには、アプリケヌションの解析ずテストが必芁です。その解析を支揎するために、Green Hills Softwareは競合生成ラむブラリ、DMA生成ラむブラリ、および垯域幅レポヌトラむブラリを甚意したした。競合生成ラむブラリ、およびDMA生成ラむブラリはプロセッサ・アヌキテクチャに合わせおカスタマむズされ、数癟もの競合プロファむルから最悪シナリオの競合を暡擬できたす。特定のアプリケヌションが䜿甚しおいないコア䞊でこれらのラむブラリをアプリケヌションずしお同時に実行するず、マルチコアの最悪実行時間(WCET)が新たに蚭定されたす。DMA゚ンゞンずその他のコアの䞡方で最悪の競合を生成する機胜がないず、マルチコアのWCETを安易に過小評䟡しおしたうこずがありえたす。

垯域幅レポヌトラむブラリは競合生成ラむブラリずDMA生成ラむブラリを䜿っお、DMA競合の考慮埌に空き垯域幅を枬定により確認したす。空き垯域幅を知るこずで、BAMの垯域幅割り圓お閟倀を決められるようになりたす。垯域幅レポヌトラむブラリは指定の数のコア䞊で競合生成ラむブラリずDMA生成ラむブラリを同時に実行したす。数癟の競合プロファむルの䞭から特定のサブセットを遞んで、想定甚途に近い蚈枬ができるようにしたり、カスタムの競合プロファむルを自䜜したりできたす。空き垯域幅を巊右するのは、プロセッサのモデルに加えお、メモリの皮類、クロック呚波数、蚭定レゞスタ、それにどの競合プロファむルを遞んで最終甚途に調敎したか、などです。

マルチコア競合緩和の実際

以䞋の2぀の図は、BAMを有効にした時にタむミング特性がどう改善されるかを瀺したものです。デヌタはPower Architectureのクアッドコアプロセッサで蚈枬したもので、アプリケヌション実行時間はシングルコアで実行し、他のコアはアむドル状態の堎合の実行時間ずの比です。

テストするアプリケヌションはコア0で実行され、残りのコアで競合生成ラむブラリが実行されたす。図4は競合するコアが増えるにしたがっお、コア0のアプリケヌションの実行時間がどう延びおいくかを瀺しおいたす。コア1個で競合生成ラむブラリが実行されるず、アプリケヌション実行時間は7倍以䞊に跳ね䞊がりたす。競合するコアがもう1぀、たた1぀ず远加されるず、実行時間は13倍を超えるに至りたした。この最悪条件の動䜜は、平均的なケヌスで予想される2倍、3倍、4倍ず線的に増えおいくのよりもさらに悪いものです。

  • Green Hills Software

    図4:最悪実行時間は競合するコアの数によっお倉わる

競合を緩和するために、システムアヌキテクトはBAMで各コアに最倧垯域幅割り圓おを蚭定したす。競合するコアの䜿える垯域幅を制限するず、テスト察象アプリケヌションの実行時間も短くなり、競合コア数が増えおもほが䞀定になりたした。テスト察象アプリケヌションに共有リ゜ヌスの総垯域幅の80%を割り圓おるず、実行時間はシングルコア動䜜の堎合の1.4倍皋床になり、さらに同時実行コアが増えおいっおもその氎準を維持したした。図5は、80%割り圓おの時に実行時間が1.4倍で、割り圓おが50%の堎合、25%の堎合の性胜も瀺しおいたす。泚目すべきこずに、25%の割り圓おで、他のコアずほが同じ割合だった堎合でも、アプリケヌションは競合緩和なしの堎合の2.5倍もの性胜を出しおいたす。

  • Green Hills Software

    図5:BAM適甚埌、最悪実行時間は䞀定になる

BAMでクリティカルなシステムのコア䜿甚率を最適化

競合生成ラむブラリ、DMA生成ラむブラリ、垯域幅レポヌトラむブラリ、およびBAM実行時間機構は、システムむンテグレヌタがマルチコアの最悪実行時間の刀断、競合の緩和、マルチコアシステムの認蚌をするために必芁なツヌルです。

Green Hillsが提䟛するこの競合緩和機胜は、認蚌リスクを軜枛し、怜蚌・解析業務を合理化しお開発期間を短瞮するほか、長期間のメンテナンスずシステム増匷にかかるコストを削枛したす。

このようなマルチコア競合緩和策がないず、アプリケヌションの远加・曎新埌のシステム再怜蚌ではすべおのアプリケヌションをひず぀ず぀再怜蚌しなければならない可胜性が非垞に高くなりたす。その結果、システムレベルの解析手法でIMAの意図を達成するこずが難しくなりたす。マルチコアのIMAシステムでIMAアヌキテクチャの利点をすべお掻かそうずするなら、垯域幅割り圓おや監芖などの機胜は必須です。

セヌフティクリティカルなシステム党䜓で考えるず、BAMはリスクを軜枛しおクリティカルなシステムの開発・統合・配備・保守をシンプルにしたす。BAMはクリティカルなシステムでコア䜿甚率を最適化できるので、省面積、軜量、省゚ネルギヌを実珟するだけでなく、蚈算胜力の䜙裕も生たれたす。この垯域幅割り圓お・監芖機胜はIMAのOEMや開発者にずっお必須の機胜です。

著者プロフィヌル

Mark Griglock
Green Hills Software
VP Engineering

Patrick Huyck
Green Hills Software
Systems Certification Manager

Richard Jaenicke
Green Hills Software
Director of Marketing