精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

優化OSD視頻圖形生成器上的圖形更新速率

星星科技指導員 ? 來源:ADI ? 作者:ADI ? 2023-02-25 14:56 ? 次閱讀

在任何屏幕視頻顯示系統或字符生成器中,希望在更改顯示信息時提供平滑過渡。顯示時間和日期的應用程序需要在幀之間更新,以獲得明確的記錄。MAX4455任意圖形屏幕顯示發生器能夠實現這些目標,但設計人員需要考慮編程多個像素時可能發生的大量數據傳輸。本文提供確保基于MAX4455的OSD系統具有最佳圖形更新速率的方法。

背景

基于MAX4455的顯示系統的數字部分由微控制器(主機處理器)、SDRAM存儲器和MAX4455組成,MAX1用作主機和存儲器之間的接口。如圖 <> 所示。

poYBAGP5sSSACc5-AAAUBadS3HI393.gif

圖1.MAX4455關鍵接口信號

要顯示的圖形數據包含在 SDRAM 內存中。八個通道的數據組織是通過每個通道的 512 x 1024 x 4 的邏輯塊進行的,每個通道總共 2Mbits,所有 16 個通道總共 484Mbits。對于 NTSC 和 PAL 視頻格式,顯示屏上的可見像素映射到內存中的方式不同。對于NTSC,一維512位中的484位用于表示712條可見視頻水平掃描線,另一維中1024位中的512位用于表示每行的總可見水平像素。對于PAL格式,所有512位都用于表示712條視頻水平掃描線,每個行分辨率具有與NTSC相同的4個可見水平像素。在這兩種格式中,每個像素都具有 <> 位分辨率來表示亮度。

SDRAM存儲器和主機處理器之間的接口通過MAX4455。用于存儲器的數據首先寫入MAX4455。MAX4455反過來將這些數據寫入外部SDRAM。如果通道顯示使能(未消隱),MAX4455從外部SDRAM的適當位置讀取數據,處理數據,并在OSDKEY上顯示OSDFIL的相應電平和相關時序,通過外部快速復用器驅動和控制插入。該存儲器讀取序列在視頻信號的活動部分期間連續工作。由于MAX4455與輸入視頻同步,存儲器讀取周期相對于主機處理器時鐘本質上是異步的。

從SDRAM寫入和讀取數據,方法是將地址寫入地址寄存器,將數據寫入數據寄存器,然后寫入MAX4455的命令寄存器,對存儲器執行寫入(或讀取)。上電時,MAX4455自動將零值寫入外部存儲器的所有可尋址位置。

主機控制器和MAX4455之間的接口為并行總線,由8條數據/地址線(AD0-AD7)組成,具有單獨的地址/數據(ADDR/DATA)、讀(RD)、寫(WR)、片選(CS)和就緒/忙(RDY/BSY)控制線。

優化圖形更新速率

MAX4455的圖形更新速率受以下因素影響:

圖形的大小。

微控制器 I/O 速度。

使用空白控制功能。

監控 RDY/BSY 控制線。

使用自動增量、多次寫入和共享內存功能。

創建圖形的策略。

這些問題都會不同程度地影響MAX4455的圖形更新速率。它們大致按其影響的順序列出。表 1 顯示了不同條件下的不同更新時間。電子表格中分析的變量包括:圖形大小、處理器 I/O 速度、消隱使用和自動增量。從表中您可以看到最快的更新速率是使用最小的圖形、最快的處理器以及使用消隱和自動增量實現的。還顯示了每個條件的視頻水平線和垂直字段的等效數量。這對于確定更新速率的視覺影響非常有用。在 20 條水平線內發生的變化是不可見的,因為這是垂直消隱間隔的時間。顯示器上少于 2 個場(單個視頻幀)中發生的單個圖形更改通常無法察覺。另一種說法是,人眼-腦組合通常無法感知比一個視頻幀的時間段短的非重復事件。

pYYBAGP5sSSADlyKAAA3eLnbE-I986.gif

表 1 中的時間是使用以下假設計算得出的。

自動增量模式 - 所有通道消
隱 2 字節狀態 + 每行 6 字節 (QPLH+QPLL+QPHORIZ) + 每四個像素 6 字節 (QPH+QPL+命令) 單個地址模式 - 所有通道空白
2 字節狀態 + 每四個像素 6 個字節 (QPLH+QPLL+QPHORIZ) + 每四個像素 6 個字節 (QPH+QPL+命令)

注:QPLH、QPLL、QPHORIZ、QPH、QPL、COMMAND是MAX4455的內部寄存器,與SDRAM的寫入和讀取有關。

公式和表1中的值不包括檢查RDY/BSY信號狀態的時間,以及處理器準備數據所需的任何計算時間。

啟用通道所需的時間是通過使用上述公式計算的,然后將每條掃描線的活動視頻時間相加。

圖 2 中的圖表使用表 1 中的數據繪制了執行更新的時間與需要寫入內存的像素數的關系。繪制的數據適用于所有通道均空白的單個地址模式。這三條不同的線代表三種不同的處理器 I/O 速度。

poYBAGP5sSWAdrCxAAAgpzpPsIE910.gif

圖2.MAX4455更新時間與像素數的關系(所有通道均空白時的獨立地址模式)。

現在,我們將仔細研究影響更新速率的每個問題。

圖形的大小

顯然,較大的圖形包含更多的像素,這意味著必須寫入更多的數據。一個簡單的建議是使圖形盡可能小,以實現最快的更新速率,即在文本顯示的情況下使用較小的字體。圖形大小的增加會導致像素數按比例增加。例如:給定圖形的兩個維度增加 2×會導致像素數增加 4×。

微控制器 I/O 速度

微控制器的速度對圖形更新速率有直接影響,從表1中可以看出。需要注意的是,關鍵參數是與MAX4455通信的I/O端口的速度,而不是處理器時鐘速度。在許多處理器中,從 I/O 端口寫入或讀取需要多個時鐘周期。

空白函數

BLANK 功能由通道狀態寄存器中的一個位控制,允許處理器基于每個通道啟用或禁用 OSD 輸出。當單個通道被禁用(空白)時,OSDFIL和OSDKEY輸出處于非活動狀態,但更重要的是,該通道的數據讀取被暫停。這將釋放主機處理器要使用的內存訪問帶寬。使用 BLANK 函數可以將更新速率提高大約兩倍。使用 BLANK 功能的一個關鍵權衡是 OSD 顯示屏上可能會閃爍。當通道空白時間過長時,會發生這種情況。如果小于單個幀的消隱時間是隨機發生的,則不明顯。任何重復的消隱都可能很明顯,并且可能被視為令人反感的閃爍,具體取決于消隱的重復率。實現無感知閃爍的平滑顯示的確切消隱率取決于許多與系統相關的因素,其中最重要的是人類感知。每個系統設計都應針對所需的視覺性能進行評估和優化。

就緒/忙碌輸出

MAX4455的RDY/BSY輸出向處理器發出信號,表明MAX4455已準備好接受用于SDRAM存儲器的另一個地址或數據。在此重申此信號與主機處理器是異步的,并且無法預測其斷言或取消斷言。使用此輸出的唯一合理方法是主機連續監視它,通常通過配置為處理器中斷的 I/O。

RDY/BSY信號在上電時初始置位,即使MAX4455連續從存儲器中讀取數據。主機將地址和數據值寫入 QPH、QPL、QPHORIZ、QPLINEH、QPLINEL 寄存器。一旦在命令寄存器中設置了寫位,MAX4455檢查存儲器接口的可用性。如果接口可用,MAX4455將數值寫入存儲器。如果接口不可用,MAX4455取消對RDY/BSY的置位,然后等待下一個可用時隙寫入。一旦它寫入了值,它就會斷言RDY/BSY信號。

自動增量功能、多次寫入功能和共享內存功能

自動遞增功能由通道狀態寄存器中的單個位控制,當順序位置寫入存儲器時,使用該功能,該存儲器表示顯示器上的水平線或垂直線。當設置通道狀態中的VINC位時,垂直地址在每次讀取或寫入操作后自動遞增。類似地,當設置通道狀態寄存器中的HIMC位時;每次讀取或寫入操作后,水平地址會自動遞增到下一個四像素位置。通過這種方式,可以連續寫入數據,而不必寫入相應的地址,從而提高更新速率。

由 MWRITE 命令寄存器控制的多寫入功能可用于在同一位置的兩個或多個通道上顯示完全相同圖形的特殊情況。通過在MWRITE寄存器中設置適當的位來選擇應接收相同數據的通道。設置這些位后,MAX4455通過主機處理器的單個寫入命令,自動將相同的數據寫入所選通道的相應存儲器位置。與單獨寫入每個通道相比,使用多寫入命令將提高更新速率,并減輕處理器的負擔。

由一組寄存器控制的共享存儲器功能也可用于在多個通道上顯示相同數據的特殊情況。通過指定應與多達三個其他指定通道共享的一個通道部分的開始和結束行,必須更新的像素數可以減少四倍。偶數編號通道可以與偶數編號通道共享,奇數編號通道可以與奇數編號通道共享。此功能的限制是必須共享整行,而不是單個像素。在極端情況下,可以在四個唯一的通道對之間共享信息,或者在所有八個通道上共享相同的信息。

更改圖形的策略

大多數圖形圖像具有一定程度的空間冗余或至少是重復出現的模式。通過仔細制作圖形的繪制順序,可以減少一次必須更改的像素總量。以占據整個屏幕的純色背景菜單為例。首先利用自動增量功能填充整個背景,然后單獨更改與菜單項相關的像素會更有效。

除了自動增量之外,軟件還可以利用MAX4455寄存器內容的靜態特性。首先將地址和數據寫入MAX4455的寄存器,將數據寫入SDRAM存儲器。軟件例程可以利用這些寄存器中的數據是靜態的這一事實,因為給定寄存器中的數據在用戶將新數據寫入該寄存器之前不會更改。如果一系列像素的數據沒有變化,則在需要更改亮度之前不必再次寫入。

顯示文本字符串時可以進行另一項改進。以時間戳的簡單示例為例。如果選擇表示數字的字體為等寬字體,而不是比例字體,則可以在不更改整個文本字符串的情況下更新單個字符。

總結

MAX4455是一款非常通用、靈活的屏幕顯示發生器。用戶可以利用本文中包含的提示和技術來實現最佳更新率和由此產生的流暢和專業的圖形。

審核編輯:郭婷

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 寄存器
    +關注

    關注

    31

    文章

    5317

    瀏覽量

    120013
  • 存儲器
    +關注

    關注

    38

    文章

    7452

    瀏覽量

    163608
  • 發生器
    +關注

    關注

    4

    文章

    1363

    瀏覽量

    61623
收藏 人收藏

    評論

    相關推薦

    最近做了個【51單片機積木式圖形化中文編程軟件/c語言代碼生成器/電路仿真】

    最近做了個【51單片機積木式圖形化中文編程軟件/c語言代碼生成器/電路仿真】,適合入門學習51單片機,也適合進階者自動生成c代碼框架模板,支持電路基本仿真和51單片機仿真,采用c#編寫,軟件試用下載
    發表于 08-08 19:59

    YIE002-STM32的隨機數生成器構建

    font color=#ff5555 size=2>YIE002開發探索之隨機數生成器1 隨機數生成器構建2 YIE002-STM32的隨機數生成器編程2.1 隨機數生成器的Cube
    發表于 01-17 07:40

    python生成器

    + 1yield index raise StopIteration在沒有元素可返回時,我最后拋出了 StopIteration 異常,這是為了滿足生成器的協議。實際,如果你不手動拋出
    發表于 02-24 15:56

    STM32h747i-disco板無法添加touchGFX生成器怎么辦?

    創建項目時,我無法添加 touchGFX 生成器,并且在版本 4.16 的發行說明中它說:“TouchGFX 生成器以前可用于具有雙核 MCU 的項目盡管尚未支持 H747* 和 H745*。”我還可以獲取 touch GFX 軟件使用的項目來
    發表于 12-28 08:33

    pim卡資料生成器

    pim卡資料生成器
    發表于 11-22 23:23 ?6次下載

    自制酸奶生成器

    自制酸奶生成器
    發表于 04-23 11:48 ?930次閱讀
    自制酸奶<b class='flag-5'>生成器</b>

    代碼生成器的應用

    jeesite框架代碼生成器,可以很方便的生成代碼,挺不錯的。
    發表于 01-14 15:19 ?0次下載

    STM32庫函數代碼自動生成器正式版

    STM32庫函數代碼自動生成器正式版 STM32庫函數代碼自動生成器正式版
    發表于 07-25 18:52 ?0次下載

    如何使用Synergy項目生成器創建新的Synergy項目?

    Synergy ISDE 視頻教程-使用Synergy項目生成器創建和構建新的Synergy項目
    的頭像 發表于 07-20 01:25 ?3116次閱讀

    AN-113:精密坡道生成器

    AN-113:精密坡道生成器
    發表于 05-16 12:04 ?6次下載
    AN-113:精密坡道<b class='flag-5'>生成器</b>

    YIE002開發探索10-隨機數生成器

    生成器1 隨機數生成器構建2 YIE002-STM32的隨機數生成器編程2.1 隨機數生成器的Cube MX圖形配置2.2 編寫應用代碼1)
    發表于 01-17 13:06 ?2次下載
    YIE002開發探索10-隨機數<b class='flag-5'>生成器</b>

    python生成器是什么

    python生成器 1. 什么是生成器生成器(英文名 Generator ),是一個可以像迭代器那樣使用for循環來獲取元素的函數。 生成器的出現(Python 2.2 +),實現
    的頭像 發表于 02-24 15:53 ?3620次閱讀

    Arduino贊美生成器

    電子發燒友網站提供《Arduino贊美生成器.zip》資料免費下載
    發表于 11-09 14:22 ?1次下載
    Arduino贊美<b class='flag-5'>生成器</b>

    通用RFID生成器

    通用RFID生成器資料分享
    發表于 02-10 15:35 ?1次下載

    【虹科】為什么需要網絡流量生成器

    什么是網絡流量生成器,為什么我需要一個?網絡流量生成器是一種將流量饋送到網絡以測試和優化網絡設備、協議和拓撲性能的工具。使用流量生成器,可以選擇要在實驗室中測試的特定流量類型。通過控制
    的頭像 發表于 03-11 10:09 ?1055次閱讀
    【虹科】為什么需要網絡流量<b class='flag-5'>生成器</b>?