MicrochipPolarFire®FPGAH.264エンコーダIPユーザーガイド
導入
H.264は、デジタルビデオを圧縮するための一般的なビデオ圧縮規格です。 これは、MPEG-4Part10またはAdvancedVideo Coding(MPEG-4 AVC)とも呼ばれます。 H.264は、ブロックサイズが16×16として定義され、そのようなブロックがマクロブロックと呼ばれるビデオを圧縮するためにブロックワイズアプローチを使用します。 圧縮規格はさまざまなプロをサポートしていますfile■圧縮率と実装の複雑さを定義します。 圧縮されるビデオフレームは、Iフレーム、Pフレーム、およびBフレームとして扱われます。 Iフレームは、フレーム内に含まれる情報を使用して圧縮が行われる、コード化されたフレームです。 Iフレームをデコードするために他のフレームは必要ありません。 APフレームは、IフレームまたはPフレームである可能性がある以前のフレームに対する変更を使用して圧縮されます。 Bフレームの圧縮は、前のフレームと次のフレームの両方に関するモーション変更を使用して行われます。
Iフレーム圧縮プロセスにはXNUMXつのがありますtages-イントラ予測、整数変換、量子化、エントロピー符号化。 H.264は、コンテキストアダプティブ可変長コーディング(CAVLC)とコンテキストアダプティブバイナリ算術コーディング(CABAC)のXNUMX種類のエンコーディングをサポートしています。 IPの現在のバージョンはBaselineproを実装していますfile エントロピー符号化にCAVLCを使用します。 また、IPはIフレームのみのエンコードをサポートします。
主な特徴
- YCbCr420ビデオ形式で圧縮を実装します
- YCbCr422ビデオ形式での入力が必要です
- 各コンポーネント(Y、Cb、およびCr)で8ビットをサポート
- ITU-T H.264AnnexB準拠のNALバイトストリーム出力
- スタンドアロン操作、CPU、またはプロセッサの支援は必要ありません
- 実行時のユーザー設定可能な品質係数QP
- クロックあたり1ピクセルのレートでの計算
- 1080p60fpsの解像度までの圧縮をサポートします。
サポートされている家族
- PolarFire®SoCFPGA
- PolarFire®FPGA
ハードウェアの実装
次の図は、H.264IフレームエンコーダのIPブロック図を示しています。
図1-1。 H.264IフレームエンコーダのIPブロック図
入力と出力
次の表に、H.264フレームエンコーダIPの入力ポートと出力ポートを示します。
表1-1。 H.264IフレームエンコーダIPの入力ポートと出力ポート
信号名 | 方向 | 幅 | ポート 有効 下 | 説明 |
RESET_N | 入力 | 1 | — | デザインへのアクティブロー非同期リセット信号。 |
SYS_CLK | 入力 | 1 | — | 着信ピクセルがsである入力クロックamp導いた。 |
データ_Y_I | 入力 | 8 | — | 8形式の422ビットLumaピクセル入力。 |
データ_C_I | 入力 | 8 | — | 8形式の422ビットクロマピクセル入力。 |
DATA_VALID_I | 入力 | 1 | — | ピクセルデータの有効な信号を入力します。 |
FRAME_END_I | 入力 | 1 | — | フレームの終わりの表示。 |
FRAME_START_I | 入力 | 1 | — | フレーム開始表示。 この信号の立ち上がりエッジはフレーム開始と見なされます。 |
HRES_I | 入力 | 16 | — | 入力画像の水平解像度。 16の倍数である必要があります。 |
VRES_I | 入力 | 16 | — | 入力画像の垂直解像度。 16の倍数である必要があります。 |
QP_I | 入力 | 6 | — | H.264量子化の品質係数。 値の範囲は0〜51で、0は最高品質と最低圧縮を表し、51は最高圧縮を表します。 |
データ_O | 出力 | 8 | — | NALユニット、スライスヘッダー、SPS、PPS、およびマクロブロックのエンコードされたデータを含むH.264エンコードされたデータ出力。 |
DATA_VALID_O | 出力 | 1 | — | エンコードされたデータを示す信号は有効です。 |
構成パラメータ
H.264 IフレームエンコーダIPは、設定パラメータを使用しません。
H.264IフレームエンコーダIPのハードウェア実装
次の図は、H.264IフレームエンコーダのIPブロック図を示しています。
図1-2。 H.264IフレームエンコーダのIPブロック図
H.264IフレームエンコーダIPの設計説明
このセクションでは、H.264IフレームジェネレータIPのさまざまな内部モジュールについて説明します。 IPへのデータ入力は、YCbCr422形式のラスタースキャン画像の形式である必要があります。 IPは入力として422形式を使用し、420形式で圧縮を実装します。
16×16マトリックスフレーマー
このモジュールは、H.16仕様に従って、Yコンポーネントの16×264マクロブロックをフレーム化します。 ラインバッファは、入力画像の16の水平ラインを格納するために使用され、16×16の行列はシフトレジスタを使用してフレーム化されます。
8×8マトリックスフレーマー
このモジュールは、8フォーマットのH.8仕様に従って、Cコンポーネントの264×420マクロブロックをフレーム化します。 ラインバッファは、入力画像の8つの水平ラインを格納するために使用され、8×16の行列はシフトレジスタを使用してフレーム化されます。 8×16マトリックスから、CbおよびCrコンポーネントが分離され、各8×8マトリックスがフレーム化されます。
4×4マトリックスフレーマー
整数変換、量子化、およびCAVLCエンコーディングは、マクロブロック内の4×4サブブロックで動作します。 4×4マトリックスフレーマーは、4×4または16×16マクロブロックから8×8サブブロックを生成します。 このマトリックスジェネレーターは、次のマクロブロックに進む前に、マクロブロックのすべてのサブブロックにまたがっています。
イントラ予測
H.264は、さまざまなイントラ予測モードを使用して、4×4ブロックの情報を削減します。 IPのイントラ予測ブロックは、4×4マトリックスサイズのDC予測のみを使用します。 DC成分は、隣接する上部と左側の4×4ブロックから計算されます。
整数変換
H.264は、整数変換に乗算または除算がないように、係数が整数変換行列と量子化行列に分散される整数離散コサイン変換を使用します。 整数変換stageは、シフトおよび追加操作を使用して変換を実装します。
量子化
量子化は、整数変換の各出力に、QPユーザー入力値によって定義された所定の量子化値を乗算します。 QP値の範囲は0〜51です。51を超える値はclです。ampQP値が低いほど、圧縮率が低く、品質が高いことを示し、その逆も同様です。
CAVLC
H.264は、コンテキスト適応可変長コーディング(CAVLC)とコンテキスト適応バイナリ算術コーディング(CABAC)のXNUMX種類のエントロピーエンコーディングを使用します。 IPは、量子化された出力をエンコードするためにCAVLCを使用します。
ヘッダージェネレーター
ヘッダージェネレーターブロックは、ビデオフレームのインスタンスに応じて、ブロックヘッダー、スライスヘッダー、シーケンスパラメーターセット(SPS)、画像パラメーターセット(PPS)、およびネットワーク抽象化レイヤー(NAL)ユニットを生成します。
H.264ストリームジェネレーター
H.264ストリームジェネレータブロックは、CAVLC出力とヘッダーを組み合わせて、H.264標準形式に従ってエンコードされた出力を作成します。
テストベンチ
テストベンチは、H.264IフレームエンコーダIPの機能をチェックするために提供されています。
シミュレーション
シミュレーションでは、224で表されるYCbCr224形式の422×XNUMX画像を使用します files、それぞれ入力としてYとCに対応し、H.264を生成します file XNUMXつのフレームを含むフォーマット。 次の手順では、テストベンチを使用してコアをシミュレートする方法について説明します。
- LiberoSoCカタログに移動> View > Windows>カタログをクリックし、[ソリューション]-[ビデオ]を展開します。 H264_Iframe_Encoderをダブルクリックし、[OK]をクリックします。
図2-1。 LiberoSoCカタログのH.264IフレームエンコーダIPコア - に行く Filesタブを選択し、 シミュレーション > 輸入 Files.
図2-2。 輸入 Files - H264_sim_data_in_y.txt、H264_sim_data_in_c.txt、およびH264_refOut.txtをインポートします files次のパスから:.. \\ component \ Microsemi \ SolutionCore \ H264_Iframe_Encoder \ 1.0.0\Stimulus。
- 別のものをインポートするには file、必要なものが含まれているフォルダを参照します file、[開く]をクリックします。 インポートされた file はシミュレーションの下にリストされています。次の図を参照してください。
図2-3。 インポート Files - 刺激に行く 階層 タブをクリックして選択 H264_frame_Encoder_tb(H264_frame_Encoder_tb。v)>
プレシンセデザインのシミュレーション>インタラクティブに開く。 IPはXNUMXフレームでシミュレートされます。
図2-4。 合成前の設計のシミュレーション
ModelSimがテストベンチで開きます file 次の図に示すように。
図2-5。 ModelSimシミュレーションウィンドウ
注記: DOで指定された実行時間制限のためにシミュレーションが中断された場合 file、run-allコマンドを使用してシミュレーションを完了します。
ライセンス
H.264 IフレームエンコーダIPは、ライセンスの下でのみ暗号化された形式で提供されます。
インストール手順
コアはLiberoSoCソフトウェアにインストールする必要があります。 これは、LiberoSoCソフトウェアのカタログ更新機能またはCPZを介して自動的に実行されます。 file コアカタログの追加機能を使用して手動で追加できます。 CPZが file がLiberoにインストールされている場合、コアはSmartDesign内で構成、生成、およびインスタンス化して、Liberoプロジェクトに含めることができます。
コアのインストール、ライセンス、および一般的な使用の詳細については、を参照してください。 LiberoSoCオンラインヘルプ。
リソースの利用
次の表に、asのリソース使用率を示します。ample H.264IフレームエンコーダーIPデザインはPolarFireFPGA(MPF300TS-1FCG1152Iパッケージ)用に作成され、4:2:2を使用して圧縮データを生成します。amp入力データのリング。
表5-1。 H.264IフレームエンコーダIPのリソース使用率
要素 | 使用法 |
4LUT | 15160 |
DFF | 15757 |
LSRAM | 67 |
マイクロSRAM | 23 |
数学ブロック | 18 |
インターフェイス4入力LUT | 3336 |
インターフェイスDFF | 3336 |
改訂履歴
改訂履歴表には、ドキュメントに実装された変更が記載されています。 変更は、最新の出版物から順に、リビジョンごとにリストされています。
リビジョン | 日付 | 説明 |
A | 01/2022 | ドキュメントの最初の発行。 |
マイクロチップFPGAのサポート
マイクロチップFPGA製品グループは、カスタマーサービス、カスタマーテクニカルサポートセンター、 webサイト、および世界中の営業所。 質問に回答済みである可能性が非常に高いため、サポートに連絡する前に、Microchipのオンラインリソースにアクセスすることをお勧めします。
を通じてテクニカルサポートセンターに連絡してください webサイト サポート。 FPGAデバイスの部品番号を記載し、適切なケースカテゴリを選択して、デザインをアップロードします file■テクニカルサポートケースの作成中。
製品の価格設定、製品のアップグレード、更新情報、注文ステータス、承認など、技術以外の製品サポートについては、カスタマーサービスにお問い合わせください。
- 北米から、電話 800.262.1060
- 世界の他の地域から、電話 650.318.4460
- ファックス、世界中のどこからでも、 650.318.8044
マイクロチップ Webサイト
マイクロチップは、 webサイト www.microchip.com/。 これ webサイトは file顧客が簡単に利用できる情報を提供します。 利用可能なコンテンツには次のようなものがあります。
- 製品サポート – データシートと正誤表、アプリケーションノートとampleプログラム、設計リソース、ユーザーガイド、ハードウェアサポートドキュメント、最新のソフトウェアリリース、アーカイブされたソフトウェア
- 一般的なテクニカルサポート –よくある質問(FAQ)、テクニカルサポートリクエスト、オンラインディスカッショングループ、マイクロチップデザインパートナープログラムのメンバーリスト
- マイクロチップの事業 –製品セレクターと注文ガイド、最新のMicrochipプレスリリース、セミナーとイベントのリスト、Microchipの営業所、販売業者、工場の代表者のリスト。
製品変更通知サービス
マイクロチップの製品変更通知サービスは、マイクロチップ製品の最新情報を顧客に提供するのに役立ちます。 サブスクライバーは、特定の製品ファミリまたは対象の開発ツールに関連する変更、更新、改訂、または正誤表があるたびに電子メール通知を受け取ります。
登録するには、 www.microchip.com/pcn 登録手順に従ってください。
カスタマーサポート
Microchip 製品のユーザーは、いくつかのチャネルを通じてサポートを受けることができます。
- 販売代理店または代理店
- 現地営業所
- エンベデッドソリューションエンジニア(ESE)
- テクニカルサポート
サポートについては、販売代理店、担当者、または ESE にお問い合わせください。地域の営業所もお客様をサポートします。営業所と所在地の一覧はこのドキュメントに記載されています。
テクニカルサポートは、 webサイト: サポート
マイクロチップデバイスのコード保護機能
Microchip 製品のコード保護機能に関する次の詳細に注意してください。
- Microchip 製品は、それぞれの Microchip データ シートに記載されている仕様を満たしています。
- Microchip 社は、意図された方法で、動作仕様の範囲内で、通常の条件下で使用される場合、同社の製品ファミリは安全であると考えています。
- マイクロチップは、その知的財産権を尊重し、積極的に保護します。 マイクロチップ製品のコード保護機能に違反する試みは固く禁じられており、デジタルミレニアム著作権法に違反する可能性があります。
- マイクロチップも他の半導体メーカーも、そのコードのセキュリティを保証することはできません。 コード保護は、製品が「壊れない」ことを保証することを意味するものではありません。 コード保護は常に進化しています。 マイクロチップ社は、当社製品のコード保護機能を継続的に改善することをお約束します。
法的通知
この出版物およびここに記載されている情報は、Microchip製品の設計、テスト、およびアプリケーションとの統合を含め、Microchip製品でのみ使用できます。 この情報を他の方法で使用すると、これらの条件に違反します。 デバイスアプリケーションに関する情報は、お客様の便宜のためにのみ提供されており、更新によって置き換えられる場合があります。 アプリケーションが仕様を満たしていることを確認するのはユーザーの責任です。 追加のサポートについては、最寄りのMicrochip営業所にお問い合わせいただくか、次のURLで追加のサポートを受けてください。 www.microchip.com/en-us/support/design-help/client-support-services.
この情報はマイクロチップによって「現状のまま」提供されます。マイクロチップは、明示的か黙示的か、書面か口頭か、法定かその他かを問わず、情報に関連するいかなる種類の表明または保証も行いません。これには、非侵害、商品性、特定目的への適合性に関する黙示の保証、またはその状態、品質、性能に関する保証が含まれますが、これらに限定されません。
いかなる場合も、マイクロチップは、情報またはその使用に関連するいかなる間接的、特別、懲罰的、偶発的、または結果的な損失、損害、費用、経費についても、その原因が何であれ、マイクロチップがその可能性を知らされていたり、損害が予見可能であったりしても、一切責任を負いません。法律で認められる最大限の範囲で、情報またはその使用に関連するすべての請求に対するマイクロチップの全責任は、情報に対してお客様がマイクロチップに直接支払った料金の金額(ある場合)を超えないものとします。
生命維持および/または安全アプリケーションにおける Microchip デバイスの使用は、完全に購入者の責任であり、購入者は、かかる使用から生じるあらゆる損害、請求、訴訟、または費用から Microchip を防御し、補償し、免責することに同意するものとします。特に明記されていない限り、Microchip の知的財産権に基づくライセンスは、暗黙的またはその他の方法で譲渡されるものではありません。
商標
Microchipの名前とロゴ、Microchipのロゴ、Adaptec、AnyRate、AVR、AVRのロゴ、AVR Freaks、BesTime、BitCloud、CryptoMemory、CryptoRF、dsPIC、flexPWR、HELDO、IGLOO、JukeBlox、KeeLoq、Kleer、LANCheck、LinkMD、maXStylus、 maXTouch、MediaLB、megaAVR、Microsemi、Microsemiロゴ、MOST、MOSTロゴ、MPLAB、OptoLyzer、PIC、picoPower、PICSTART、PIC32ロゴ、PolarFire、Prochip Designer、QTouch、SAM-BA、SenGenuity、SpyNIC、SST、SSTロゴ、SuperFlash 、Symmetricom、SyncServer、Tachyon、TimeSource、tinyAVR、UNI / O、Vectron、およびXMEGAは、米国およびその他の国におけるMicrochipTechnologyIncorporatedの登録商標です。
AgileSwitch、APT、ClockWorks、Embedded Control Solutions Company、EtherSynch、Flashtec、Hyper Speed Control、HyperLight Load、IntelliMOS、Libero、motorBench、mTouch、Powermite 3、Precision Edge、ProASIC、ProASIC Plus、ProASIC Plusロゴ、Quiet-Wire、 SmartFusion、SyncWorld、Temux、TimeCesium、TimeHub、TimePictra、TimeProvider、TrueTime、WinPath、およびZLは、米国におけるMicrochipTechnologyIncorporatedの登録商標です。
隣接するキー抑制、AKS、Analog-for-the-Digital Age、Any Capacitor、AnyIn、AnyOut、Augmented Switching、BlueSky、BodyCom、CodeGuard、CryptoAuthentication、CryptoAutomotive、CryptoCompanion、CryptoController、dsPICDEM、dsPICDEM.net、Dynamic Average Matching、DAM 、ECAN、Espresso T1S、EtherGREEN、GridTime、IdealBridge、In-Circuit Serial Programming、ICSP、INICnet、Intelligent Paralleling、Inter-Chip Connectivity、JitterBlocker、Knob-on-Display、maxCrypto、maxView、memBrain、Mindi、MiWi、MPASM、MPF、MPLAB認定ロゴ、MPLIB、MPLINK、MultiTRAK、NetDetach、NVM Express、NVMe、Omniscient Code Generation、PICDEM、PICDEM.net、PICkit、PICtail、PowerSmart、PureSilicon、QMatrix、REAL ICE 、リップルブロッカー、RTAX、RTG4、SAMICE、シリアルクアッドI / O、simpleMAP、SimpliPHY、SmartBuffer、SmartHLS、SMART-IS、storClad、SQI、SuperSwitcher、SuperSwitcher II、Switchtec、SynchroPHY、Total Endurance、TSHARC、USBCheck、VariSense、 VectorBlox、VeriPHY、
ViewSpan、WiperLock、XpressConnect、およびZENAは、米国およびその他の国におけるMicrochipTechnologyIncorporatedの商標です。 SQTPは、米国のMicrochipTechnologyIncorporatedのサービスマークです。
Adaptecのロゴ、Frequency on Demand、Silicon Storage Technology、Symmcom、およびTrusted Timeは、MicrochipTechnologyInc.のその他の国における登録商標です。
GestICは、Microchipの子会社であるMicrochip Technology Germany II GmbH&Co。KGの登録商標です。
他の国のTechnologyInc. 本書に記載されているその他すべての商標は、それぞれの会社の所有物です。
©2022、MicrochipTechnologyIncorporatedおよびその子会社。 全著作権所有。
ISBN: 978-1-5224-9663-2
品質管理システム
マイクロチップの品質管理システムの詳細については、 www.microchip.com/quality.
世界的な販売とサービス
アメリカ大陸
本社
2355 ウエスト チャンドラー ブールバード
チャンドラー、アリゾナ85224-6199
電話: 480-792-7200
ファックス: 480-792-7277
テクニカルサポート: サポート
Web 住所: マイクロチップ
アトランタ
ジョージア州ダルース
電話: 678-957-9614
ファックス: 678-957-1455
オースティン、テキサス州
電話: 512-257-3370
ボストン
マサチューセッツ州ウェストボロ
電話: 774-760-0087
ファックス: 774-760-0088
シカゴ
イリノイ州イタスカ
電話: 630-285-0071
ファックス: 630-285-0075
ダラス
アディソン、テキサス州
電話: 972-818-7423
ファックス: 972-818-2924
デトロイト
ミシガン州ノバイ
電話: 248-848-4000
ヒューストン、テキサス州
電話: 281-894-5983
インディアナポリス
ノーブルズビル、インディアナ州
電話: 317-773-8323
ファックス: 317-773-5453
電話: 317-536-2380
ロサンゼルス
カリフォルニア州ミッションビエホ
電話: 949-462-9523
ファックス: 949-462-9608
電話: 951-273-7800
ノースカロライナ州ローリー
電話: 919-844-7510
ニューヨーク、ニューヨーク州
電話: 631-435-6000
カリフォルニア州サンノゼ
電話: 408-735-9110
電話: 408-436-4270
カナダ – トロント
電話: 905-695-1980
ファックス: 905-695-2078
アジア太平洋
オーストラリア – シドニー
電話: 61-2-9868-6733
中国 – 北京
電話: 86-10-8569-7000
中国–成都
電話: 86-28-8665-5511
中国 – 重慶
電話: 86-23-8980-9588
中国–東莞
電話: 86-769-8702-9880
中国 – 広州
電話: 86-20-8755-8029
中国–杭州
電話: 86-571-8792-8115
中国–香港SAR
電話: 852-2943-5100
中国–南京
電話: 86-25-8473-2460
中国–青島
電話: 86-532-8502-7355
中国 – 上海
電話: 86-21-3326-8000
中国–瀋陽
電話: 86-24-2334-2829
中国–深セン
電話: 86-755-8864-2200
中国–蘇州
電話: 86-186-6233-1526
中国–武漢
電話: 86-27-5980-5300
中国–西安
電話: 86-29-8833-7252
中国–厦門
電話: 86-592-2388138
中国–朱海
電話: 86-756-3210040
インド – バンガロール
電話: 91-80-3090-4444
インド–ニューデリー
電話: 91-11-4160-8631
インド–プネー
電話: 91-20-4121-0141
日本–大阪
電話: 81-6-6152-7160
日本 – 東京
Tel:81-3-6880-3770
韓国–大邱
電話: 82-53-744-4301
韓国–ソウル
電話: 82-2-554-7200
マレーシア–クアラルンプール
電話: 60-3-7651-7906
マレーシア–ペナン
電話: 60-4-227-8870
フィリピン – マニラ
電話: 63-2-634-9065
シンガポール
電話: 65-6334-8870
台湾– Hsin Chu
電話: 886-3-577-8366
台湾–高雄
電話: 886-7-213-7830
台湾–台北
電話: 886-2-2508-8600
タイ – バンコク
電話: 66-2-694-1351
ベトナム–ホーチミン
電話: 84-28-5448-2100
ヨーロッパ
オーストリア–ヴェルス
電話: 43-7242-2244-39
ファックス: 43-7242-2244-393
デンマーク – コペンハーゲン
電話: 45-4485-5910
ファックス: 45-4485-2829
フィンランド–エスポー
電話: 358-9-4520-820
フランス – パリ
Tel: 33-1-69-53-63-20
Fax: 33-1-69-30-90-79
ドイツ – ガルヒング
電話: 49-8931-9700
ドイツ–ハーン
電話: 49-2129-3766400
ドイツ – ハイルブロン
電話: 49-7131-72400
ドイツ–カールスルーエ
電話: 49-721-625370
ドイツ – ミュンヘン
Tel: 49-89-627-144-0
Fax: 49-89-627-144-44
ドイツ – ローゼンハイム
電話: 49-8031-354-560
イスラエル – ラアナナ
電話: 972-9-744-7705
イタリア–ミラノ
電話: 39-0331-742611
ファックス: 39-0331-466781
イタリア–パドヴァ
電話: 39-049-7625286
オランダ– Drunen
電話: 31-416-690399
ファックス: 31-416-690340
ノルウェー–トロンハイム
電話: 47-72884388
ポーランド – ワルシャワ
電話: 48-22-3325737
ルーマニア – ブカレスト
Tel: 40-21-407-87-50
スペイン–マドリード
Tel: 34-91-708-08-90
Fax: 34-91-708-08-91
スウェーデン–ヨーテボリ
Tel: 46-31-704-60-40
スウェーデン – ストックホルム
電話: 46-8-5090-4654
英国–ウォーキンガム
電話: 44-118-921-5800
ファックス: 44-118-921-5820
ドキュメント / リソース
![]() |
MicrochipPolarFire®FPGAH.264エンコーダーIP [pdf] ユーザーガイド PolarFire FPGAエンコーダー、H.264エンコーダー、FPGA H.264エンコーダー、エンコーダーIPIP |
![]() |
MICROCHIP PolarFire FPGA H.264 エンコーダ IP [pdf] ユーザーガイド PolarFire FPGA H.264 エンコーダ IP、PolarFire FPGA、H.264 エンコーダ IP |