DP_AUX輔助通道介紹

??DisplayPort(簡稱DP)是一個由PC及芯片制造商聯盟開發,視頻電子標準協會(VESA)標準化的數字式視頻接口標準。該接口免認證、免授權金,主要用于視頻源與顯示器等設備的連接,并也支持攜帶音頻、USB和其他形式的數據。
??eDP ( Embedded DisplayPort )協議是針對DP(Display Port)應用在嵌入式方向架構和協議的拓展,所以eDP協議完全兼容DP協議。eDP多用做平板,筆記本電腦的液晶顯示屏的接口。

??DP具有三大基本架構包含影音傳輸的主要通道(Main Link)、輔助通道(AUX)、與熱插拔(HPD)。
Main Link:用來傳輸各種類型的視頻數據和音頻數據,Main Link由1~4對差分線構成,這些數據線是單向的,從source指向sink。Main Link具體需要幾對數據線,取決于屏幕的分辨率和顏色位數。
AUX:是一條獨立雙向半雙工的傳輸通道,它也是一對差分信號線。其數據傳輸速率1Mbps,用來傳輸配置參數與指令。該通道提供Link Services和Device Services。具體來說它與EDID及DPCD存儲器相連,并通過總線方式讀寫。其中EDID為顯示標識數據,用于存儲顯示器的相關參數。DPCD為DP接口配置數據,與鏈路管理層相連,用于鏈路層面的配置。
HPD:該項功能是可選的,實現中斷以及鏈路故障通知。
在這里插入圖片描述
在這里插入圖片描述

1.AUX硬件電路

??顯卡,顯示器,部分eDP屏的接口中AUX通道采用這種電路。發送端P端下拉到地,N端上拉到DP_PWR(一般3.3V)。接收端P端上拉到2.5~3.3V,N端下拉到地。
在這里插入圖片描述

??實測接收端電容前波形:
在這里插入圖片描述

??接收端電容后波形:
在這里插入圖片描述

??SoC芯片,大部分eDP屏的接口中AUX通道采用這種電路。傳輸通道無上下拉。
在這里插入圖片描述

??實測接收端波形:
在這里插入圖片描述

2. DP AUX狀態機

??DP的輔助通道是雙向半雙工通道。Source源端是主設備(called AUX CH Requester) ,Sink接收端是從設備(called AUX CH Replier) 。
??AUX CH DPTX 狀態機如圖所示。
在這里插入圖片描述
??AUX CH DPRX 狀態機如圖所示。
在這里插入圖片描述
??當源端發送一個請求傳輸,終端就響應一個回復傳輸。
??DPTX進入S2狀態,處于“Talk Mode”,必須發送Request命令。
??發送Request命令后,DPTX進入S3狀態,處于“Listen Mode”,等待DPRX回復命令。回復接收完回到S2狀態。如果在400us內沒收到回復,也回到S2狀態。
??DPRX進入D1狀態,處于“Listen Mode”,必須等待一個Request命令。
??接收到Request命令后,DPRX進入D2狀態,處于“Talk Mode”,發送回復命令,回復完成后回到D1狀態。此外必須在300us內發送回復,如果超時也回到D1狀態。

3. AUX傳輸原理和波形

??DP AUX通道采用mancheter II編碼傳輸。
在這里插入圖片描述

??如圖,mancheter II編碼內含一個自建時鐘,用兩位表示一位,比如‘10’(由高到低)表示1,‘01’(由低到高)表示0。
在這里插入圖片描述

??AUX傳輸分為4個階段:
(1)預充電:以曼徹斯特II碼連續傳輸10到16個0
(2) AUX SYNC:以曼徹斯特II碼連續傳輸16個0,然后進入SYNC END,連續傳輸2位高電平和2位低電平(實測AUX_CH_n端波形是AUX_CH_p端波形相反)
(3) 發送數據:發送的數據量是字節8bit的整數倍
(4) AUX STOP:連續傳輸2位高電平和2位低電平,在STOP后立即釋放AUX CH
??需要注意的是SYNC END和SYNC STOP是連續兩個高電平,兩個低電平,這在Manchester II code里是非法的,接收端必須能識別出來。
??AUX交互過程,每次傳輸都是先由Source端先按上述4個階段發送命令,地址或數據,然后再由Sink端按上述4個階段發送響應或數據。

4.AUX傳輸命令

??從Source端發起的事務稱為請求事務,從Sink端返回的事務稱為回復事務。所有事務必須發送”AUX SYNC”命令為開頭,以’AUX STOP’命令作為結束。
??傳輸時,一個4-bits命令COMM3:0先發送,接著發送一個20位的地址ADDR19:0,DisplayPort 功能、狀態和控制功能直接映射到 20 位地址空間。在命令和地址傳輸之后,必須傳輸數據字節,支持burst模式,最大為16bytes。
在這里插入圖片描述
??傳輸類型主要分兩種,一種是Native AUX傳輸,另一種是I2C-over-AUX傳輸。由發請求事務時COMM3:0的bit3決定。

4.1命令COMM3:0定義

(1)請求事務定義:
? bit 3 = Native AUX or I2C_over_AUX
?? 0= I2C_over_AUX
?? 1= Native AUX
? bits2:0 = 請求類型
?? 000 寫
?? 001 讀
(2)回復事務定義:
? bits1:0
?? 00 = AUX_ACK
???對寫事務而言,所有數據字節已經寫入
???對讀事務而言,接下來準備回復讀請求。當并非所有字節都可用時,DPRX可以在發送請求的數據字節總數發送‘STOP’。
?? 01=AUX_NACK
???對寫事務而言,
?????AUX NACK 后面必須跟一個數據字節“M”,其中“M”表示成功寫入的數據字節數。
?????當 DPTX 正在寫入 DPRX 不支持的 DPCD 地址時,DPRX 應回復 AUX NACK ,并且“M”等于 0。
???對讀事務而言,
?????DPRX 接收到對不受支持的 DPCD 的AUX 讀取請求地址時,必須回復 AUX
ACK 并且數據設為零,而不是回復 AUX NACK
?? 10=AUX_DEFER
???未準備好寫入/讀取回復, DPTX 可以稍后重試。
??11 = reserved

4.2 Native AUX 請求傳輸規則

在這里插入圖片描述
寫請求示例波形
在這里插入圖片描述
讀請求示例波形
在這里插入圖片描述
(1)寫請求事務
??對于寫入事務 (COMM3:0 = 1000),請求事務的字節數 = LEN7:0+1,寫完數據后即‘STOP’
(2)讀請求事務
??對于讀取事務 (COMM3:0 = 1001),在LEN7:0后立即‘STOP’

4.3 Native AUX 回復傳輸規則

在這里插入圖片描述
寫回復示例波形
在這里插入圖片描述
讀回復示例波形
在這里插入圖片描述
(1)對寫請求的回復事務必須以下列三個條件之一結束:
(a)DPRX 已收到寫入請求,并已完成寫入。 DPRX必須回復AUX _ACK
在這里插入圖片描述
(b)DPRX 已收到寫入請求,但尚未完成寫入。 DPRX必須回復 AUX_NACK,然后,寫入的數量字節 M 作為 DATA0_7:0。
在這里插入圖片描述
(c)DPRX 已收到寫入請求,但尚未準備好接收寫入請求。DPRX必須回復 AUX_DEFER。
在這里插入圖片描述

(2)對讀取請求的回復事務必須以以下四個條件之一結束:
(a)DPRX已收到讀取請求,但尚未準備好回復讀取的數據。 必須通過發送 AUX DEFER 作為第一個 COMM3:0 來結束事務。
在這里插入圖片描述
(b)DPRX已收到讀取請求并準備就緒。 必須通過發送 AUX_ ACK 作為第一個命令來回復,發回請求的字節數.
在這里插入圖片描述
(c)DPRX接收到一個讀取請求,并且已準備好一些(M + 1 個字節)但不是全部請求的數據字節。 必須通過發送 AUX_ACK 作為第一個命令來回復,發回可以回復的字節數
在這里插入圖片描述
(d)DPRX已收到 N 個字節的讀取請求并準備就緒。 必須以 AUX _ACK 作為第一個命令進行回復,發回請求的字節數。
在這里插入圖片描述

4.4 I2C-over-AUX傳輸

??發請求事務時COMM3:0的bit3為0,則表示該請求是I2C-over-AUX傳輸。其他bit定義如下圖。
在這里插入圖片描述

??DP協議上規定了I2C-over-AUX傳輸的命令,這個指令相對比較靈活的。因為I2C傳輸過程較長,會涉及多個字節傳輸。DP協議中提供了一些傳輸示例,如下圖所示。
在這里插入圖片描述

??因此在COMM3:0中會有bit2(MOT bit)指示是否在I2C傳輸過程中。bit2為1表示在I2C傳輸過程中,如果是最后一個字節傳輸結束,bit2需為0。
??I2C-over-AUX傳輸命令仍是COMM3:0表示,只是緊跟的4bit固定為0,不再是地址的一部分。I2C傳輸的地址是16bit。I2C回復與Native AUX回復類似,但請求命令COMM3:0種類更多,以下是常見的幾種。
(1)COMM3:0 = 0100(十進制4),I2C寫,MOT bit為1,請求中帶length
在這里插入圖片描述

(2)COMM3:0 = 0100(十進制4),I2C寫,MOT bit為1,請求中無length
在這里插入圖片描述

(3)COMM3:0 = 0101(十進制5),I2C讀,MOT bit為1,請求中帶length
在這里插入圖片描述

(4)COMM3:0 = 0101(十進制5),I2C讀,MOT bit為1,請求中無length
在這里插入圖片描述

(5)COMM3:0 = 0001(十進制1),I2C讀,MOT bit為0,請求中無length
在這里插入圖片描述

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/76244.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/76244.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/76244.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

[GESP202312 五級] 平均分配

文章目錄 題目描述輸入格式輸出格式輸入輸出樣例 #1輸入 #1輸出 #1 輸入輸出樣例 #2輸入 #2輸出 #2 提交鏈接提示解析參考代碼 題目描述 小楊認為,所有大于等于 a a a 的完全平方數都是他的超級幸運數。 小楊還認為,所有超級幸運數的倍數都是他的幸運…

[Mysql]buffersize修改

1、找到my.cnf文件位置 ps -ef|grep mysqld 2、編輯my.cnf cd /etc/my.cnf.d vim my.cnf 一般修改為內存的50%~70% 3、重啟服務 systemctl restart mysqld

清晰易懂的 Apollo 配置中心安裝與使用教程

Apollo 是攜程開源的分布式配置管理平臺,支持配置實時推送、版本管理、權限控制等功能。本教程將手把手教你完成 Apollo 核心組件安裝、基礎配置管理及避坑指南,助你快速掌握企業級配置管理能力。 一、環境準備(關鍵依賴) 1. 基礎…

PyTorch池化層詳解:原理、實現與示例

池化層(Pooling Layer)是卷積神經網絡中的重要組成部分,主要用于降低特征圖的空間維度、減少計算量并增強模型的平移不變性。本文將通過PyTorch代碼演示池化層的實現原理,并詳細講解最大池化、平均池化、填充(Padding&…

如何構建并優化提示詞?

提示詞是一個小白最容易上手大模型的方式,提示詞就是你告訴大模型應該如何去完成一項工作的系統性的命令,所以寫一個好的提示詞是比較關鍵的,那么如何寫好一個提示詞呢? 要寫好提示詞,其實就像我們要把一些命令清晰地傳…

面向大模型的開發框架LangChain

這篇文章會帶給你 如何使用 LangChain:一套在大模型能力上封裝的工具框架如何用幾行代碼實現一個復雜的 AI 應用面向大模型的流程開發的過程抽象 文章目錄 這篇文章會帶給你寫在前面LangChain 的核心組件文檔(以 Python 版為例)模型 I/O 封裝…

【藍橋杯】動態規劃:線性動態規劃

1. 最長上升子序列(LIS) 1.1. 題目 想象你有一排數字,比如:3, 1, 2, 1, 8, 5, 6 你要從中挑出一些數字,這些數字要滿足兩個條件: 你挑的數字的順序要和原來序列中的順序一致(不能打亂順序) 你挑的數字要一個比一個大(嚴格遞增) 問:最多能挑出多少個這樣的數字? …

vue2和vue3的主要區別

一、性能優化與響應式系統 性能優化: Vue2:性能較好,但在大型應用中,當數據變化頻繁時可能出現性能瓶頸。它使用虛擬DOM來高效地進行DOM操作,并通過多種技術手段如懶加載、異步組件、樹形抖動等優化性能。 Vue3&…

Python: 實現數據可視化分析系統

后端基于Python 開源的 Web 框架 Flask,前端頁面采用 LayUI 框架以及 Echarts 圖表,數據庫為sqlite。系統的功能模塊分為數據采集和存儲模塊、數據處理和分析模塊、可視化展示模塊和系統管理模塊。情感分析方面使用LDA等主題建模技術,結合領域…

深度學習總結(3)

數據批量的概念 通常來說,深度學習中所有數據張量的第一個軸(也就是軸0,因為索引從0開始)都是樣本軸[samples axis,有時也叫樣本維度(samples dimension)?]?。深度學習模型不會一次性處理整個…

微軟慶祝它成立整整50周年

每周跟蹤AI熱點新聞動向和震撼發展 想要探索生成式人工智能的前沿進展嗎?訂閱我們的簡報,深入解析最新的技術突破、實際應用案例和未來的趨勢。與全球數同行一同,從行業內部的深度分析和實用指南中受益。不要錯過這個機會,成為AI領…

【操作系統(Linux)】——通過案例學習父子進程的線程異步性

本篇旨在通過幾個案例來學習父子進程的線程異步性 一、父進程與子進程 我們將要做的&#xff1a; 創建父子進程&#xff0c;觀察父子進程執行的順序&#xff0c;了解進程執行的異步行為 源代碼&#xff1a; #include <stdio.h> #include <sys/types.h> #include…

系統性能核心指標:QPS、TPS、RT、并發量詳解

系統性能核心指標&#xff1a;QPS、TPS、RT、并發量詳解 1. 引言 在分布式系統、高并發架構設計中&#xff0c;QPS、TPS、RT、并發量 等指標是衡量系統性能的關鍵。本文深入解析這些術語的定義、計算方法、關聯性及優化策略&#xff0c;幫助開發者更好地進行系統性能評估與調…

PortswiggerLab:Exploiting a mass assignment vulnerability

實驗目標 To solve the lab, find and exploit a mass assignment vulnerability to buy a Lightweight l33t Leather Jacket. You can log in to your own account using the following credentials: wiener:peter. 官方WP In Burps browser, log in to the application using…

卡爾曼濾波器的工作原理

原文: https://www.bzarg.com/p/how-a-kalman-filter-works-in-pictures/ 1 概述 你可以對某個動態系統有不確定信息的任何地方使用卡爾曼濾波器&#xff0c;并且對系統下一步的狀態做出有根據的猜測。即使出現混亂的現實狀態&#xff0c;卡爾曼濾波器都會給出一個合理的結果。…

PDFtk

如果下載的pdf文件有秘鑰的話&#xff0c;使用下面linux命令去掉秘鑰&#xff1a; pdftk 納稅記錄.pdf input_pw 261021 output 納稅記錄_output.pdf將多個單頁pdf合并為一個pdf的linux命令: pdftk 自然人電子稅務局1.pdf 自然人電子稅務局2.pdf 自然人電子稅務局3.pdf 自然人…

Openlayers:海量圖形渲染之WebGL渲染

最近由于在工作中涉及到了海量圖形渲染的問題&#xff0c;因此我開始研究相關的解決方案。我在網絡上尋找相關的解決方案時發現許多的文章都提到利用Openlayers中的WebGLPointsLayer類&#xff0c;可以實現渲染海量的點&#xff0c;之后我又了解到利用WebGLVectorLayer類可以渲…

替換jeecg圖標

替換jeecg圖標 ant-design-vue-jeecg/src/components/tools/Logo.vue <!-- <img v-else src"~/assets/logo.svg" alt"logo">-->

Codeforces Round 970 (Div. 3)題解

題目地址 https://codeforces.com/contest/2008 銳評 本次D3的前四題還是比較簡單的&#xff0c;沒啥難度區分&#xff0c;基本上差不多&#xff0c;屬于手速題。E的碼量比F大一些&#xff0c;實現略顯復雜一些。G的數學思維較明顯&#xff0c;如果很久沒有訓練這個知識點&a…

操作系統:線程間同步之事件集

事件集是線程間同步的機制之一&#xff0c;一個事件集可以包含多個事件&#xff0c;利用事件集可以完成一對多、多對多的線程間同步。 目錄 一、事件集舉例說明 二、事件集工作機制 三、RT-Thread為實例說明 四、事件集的應用場合 一、事件集舉例說明 以坐公交車為例&…