VideoTiming
RGB LCD (DEモード) タイミングジェネレータ
デフォルトタイミングは 5inch 800x480 パネル (050QG32-40) の datasheet “6.4 Timing Characteristics” から導出した pclk=27MHz 用の値:
- HSyncWidth=1 (thpw min),HBackPorch=46 (thb 固定値)
- VSyncWidth=3 (tvpw min),VBackPorch=23 (tvb 固定値)
- FrontPorch はライン長/フレーム長の選択からの逆算 (HTotal=890, VTotal=513)
- 27MHz / (890 * 513) = 59.1Hz refresh
sync 極性は負 (公式 Wiki rgb_screen: “enabled by negative polarity”).
本モジュールはタイミングと座標の生成のみを担う.画素合成 (色のゲートや フォーマット変換) は利用側で行い,パイプライン段数に応じて de/sync を 遅延させて位相を合わせること.
Parameters
| Width | u32 | 有効画素数 (水平) |
|---|---|---|
| Height | u32 | 有効画素数 (垂直) |
| HFrontPorch | u32 | 水平フロントポーチ [pclk] |
| HSyncWidth | u32 | 水平同期幅 [pclk] |
| HBackPorch | u32 | 水平バックポーチ [pclk] |
| VFrontPorch | u32 | 垂直フロントポーチ [line] |
| VSyncWidth | u32 | 垂直同期幅 [line] |
| VBackPorch | u32 | 垂直バックポーチ [line] |
Ports
| i_clk | input | clock | クロック (= pclk) |
|---|---|---|---|
| i_rst | input | reset | リセット |
| de | output | logic | データイネーブル |
| hsync | output | logic | 水平同期 (負極性) |
| vsync | output | logic | 垂直同期 (負極性) |
| frame | output | logic | Vブランキング先頭の1クロックパルス |
| pos_x | output | logic<$clog2(Width)> | 画素 X 座標 (de==1 で有効) |
| pos_y | output | logic<$clog2(Height)> | 画素 Y 座標 (de==1 で有効) |