Maxim的千兆多媒體串行鏈路(GMSL)解決方案通過單根雙絞線電纜串行傳輸數(shù)字視頻和音頻數(shù)據(jù)。此外,集成的雙向控制通道使單個(gè)微控制器 (μC) 能夠?qū)Υ衅?、解串器和所有連接的外設(shè)進(jìn)行編程。對于典型應(yīng)用,這消除了遠(yuǎn)程側(cè)微控制器及其支持組件,例如時(shí)鐘源/晶體和低壓電源。這不僅簡化了遠(yuǎn)程設(shè)備的設(shè)計(jì),而且還降低了成本、尺寸和功耗。然而,有時(shí)由于與GMSL無關(guān)的其他設(shè)計(jì)要求,μC已經(jīng)駐留在鏈路的兩側(cè)。本應(yīng)用筆記描述了如何連接兩個(gè)μC來控制GMSL。
基本雙通道 μC 使用
通常,當(dāng)使用單個(gè)μC時(shí),串行器/解串器上的控制方向選擇(CDS)引腳對于串行器側(cè)μC設(shè)置為低電平,對于解串器側(cè)μC設(shè)置為高電平。但是,如果串行器上的CDS設(shè)置為低電平,解串器上的CDS設(shè)置為高電平,則每個(gè)GMSL芯片可以同時(shí)連接到各自的μC(圖1)。
圖1.簡化的雙通道μC應(yīng)用原理圖,顯示了CDS設(shè)置。
內(nèi)部操作
使用兩個(gè)μC時(shí),串行器和解串器的I2C主站均被禁用,RX/SDA和TX/SDL配置為具有相應(yīng)μC的UART接口。 由于每個(gè)設(shè)備都作為本地側(cè)設(shè)備運(yùn)行,因此它們無法進(jìn)入睡眠模式。使用相應(yīng)的/PWDN引腳將每個(gè)器件置于低功耗狀態(tài)。請記住,從斷電狀態(tài)返回時(shí),所有設(shè)備設(shè)置都會(huì)重置為其開機(jī)值。
圖2.序列化程序狀態(tài)圖(CDS = 低)。
圖3.解串器狀態(tài)圖(CDS = 高)。
雙通道 μC 爭用問題
在上圖1所示的配置中,每個(gè)μC都可以與MAX9259串行器、MAX9260解串器或使用GMSL UART協(xié)議的其他μC通信。GMSL 不提供避免爭用的解決方案,用戶需要提供自己的爭用處理方案。
獨(dú)立網(wǎng)絡(luò)
避免爭用的最簡單解決方案是讓每個(gè)μC將其連接的串行器/解串器FWDCCEN和REVCCHEN位設(shè)置為0(0x04 D[1:0])。這將禁用正向和反向控制通道接收器和發(fā)射器,并有效地將控制網(wǎng)絡(luò)分解為兩個(gè)獨(dú)立的網(wǎng)絡(luò)(圖 4)。未來通過串行鏈路進(jìn)行的任何控制通信首先要求每一端的μC重新啟用鏈路各自端的通信。此配置在始終在線的應(yīng)用程序中最有用,在這些應(yīng)用程序中,特定于鏈路的關(guān)鍵寄存器設(shè)置不會(huì)從初始設(shè)置更改。
圖4.分離的控制網(wǎng)絡(luò)消除了爭用的可能性。
軟件爭用處理
在串行鏈路兩端之間必須進(jìn)行通信的應(yīng)用中,用戶始終可以實(shí)施更高層的協(xié)議以避免爭用(圖 5)。在下面的示例中,每個(gè)μC等待應(yīng)答幀以確定其命令是否成功。如果發(fā)生爭用,序列化程序/反序列化程序不會(huì)發(fā)送應(yīng)答幀。在未能收到確認(rèn)幀后,μC 會(huì)等待一段時(shí)間,具體取決于其設(shè)備地址,然后再重新發(fā)送其命令。由于此設(shè)計(jì)中的微控制器具有不同的設(shè)備地址,因此在重試通信期間不會(huì)發(fā)生爭用。
圖5.基于軟件的爭用處理示例。
單/雙 μC 使用
某些應(yīng)用不需要始終同時(shí)使用兩種μC。工作期間,如果兩端的CDS輸入之一改變狀態(tài),該器件將以MAX9259數(shù)據(jù)資料的鏈路啟動(dòng)程序部分所述的相應(yīng)狀態(tài)恢復(fù)工作。在單μC和雙μC操作之間切換使GMSL能夠在需要時(shí)使用更少的資源。未使用的μC可以關(guān)斷,以降低功耗并延長電池壽命。
遠(yuǎn)程顯示示例(解串器)
在以下應(yīng)用中,鏈路的解串器側(cè)是配置為遠(yuǎn)程開/關(guān)的顯示面板。電路板的關(guān)斷輸入和單/雙μC控制均連接到MAX9260 GPIO0的輸出(圖6)。上電時(shí),GPIO輸出為高電平,這使得遠(yuǎn)程側(cè)器件保持關(guān)閉狀態(tài),并且由于增加了逆變器,解串器配置為遠(yuǎn)程端器件。由于MS連接到GPIO,MAX9260在休眠模式下上電,使所有器件處于低功耗狀態(tài)。
為了啟動(dòng)遠(yuǎn)程面板,串行器喚醒MAX9260并建立串行鏈路。然后,串行器側(cè)μC將GPIO0設(shè)置為低電平,使MS為低電平,逆變器輸出為高電平。逆變器將MAX9260設(shè)置為本地側(cè)器件,并喚醒遠(yuǎn)端顯示面板的其余部分。MS必須設(shè)置為低電平,以使MAX9260 UART接口保持基本模式。
為了關(guān)斷遠(yuǎn)程面板,串行器將GPIO0設(shè)置為高電平以關(guān)閉遠(yuǎn)程端器件,并將MAX9260設(shè)置為遠(yuǎn)端器件。然后,在MAX9260中設(shè)置SLEEP = 1,使器件進(jìn)入睡眠狀態(tài)。
圖6.雙/單μC遠(yuǎn)程顯示示例。
遠(yuǎn)程攝像機(jī)示例(序列化程序)
與前面的示例類似,鏈路的串行器端是配置為遠(yuǎn)程開/關(guān)的攝像頭模塊。MAX9259的INT輸出控制電路板的關(guān)斷輸入和單/雙μC開關(guān)(圖7)。對于本應(yīng)用,INT用作GPO,輸出由SETINT(MAX9259中0x0D的D7)或解串器的INT輸入設(shè)置。上電時(shí),INT輸出為低電平,使遠(yuǎn)程端器件保持關(guān)斷狀態(tài)。連接到CDS的逆變器輸出將串行器配置為遠(yuǎn)程側(cè)設(shè)備。由于/AUTOS設(shè)置為高電平,MAX9259在休眠模式下上電。
為了啟動(dòng)遠(yuǎn)程面板,解串器使用GMSL UART命令喚醒MAX9259。解串器將MAX9259的INT輸出設(shè)置為高電平,使所有遠(yuǎn)端器件上電。反相輸出將MAX9259設(shè)置為本地側(cè)器件,現(xiàn)在可以接受來自本地μC的UART命令。
為了關(guān)斷遠(yuǎn)程面板,解串器將MAX9259 INT輸出設(shè)置為低電平,關(guān)斷遠(yuǎn)端器件,并將MAX9259設(shè)置為遠(yuǎn)端器件。解串器在MAX9259中設(shè)置SLEEP = 1,使器件進(jìn)入睡眠狀態(tài)。
圖7.雙/單μC遠(yuǎn)程相機(jī)示例。
其他應(yīng)用
雙μC的使用不僅限于上述應(yīng)用。對稱和雙向控制通道,以及動(dòng)態(tài)CDS和旁路設(shè)置(通過MS),可實(shí)現(xiàn)多種串行器/解串器和μC配置。設(shè)計(jì)人員現(xiàn)在可以獲得更高程度的控制,以增強(qiáng)其系統(tǒng)的功能,最大限度地降低功耗,并最大限度地利用可用資源。
審核編輯:郭婷
-
微控制器
+關(guān)注
關(guān)注
48文章
7945瀏覽量
154735 -
接收器
+關(guān)注
關(guān)注
15文章
2570瀏覽量
73847 -
解串器
+關(guān)注
關(guān)注
1文章
142瀏覽量
14166
發(fā)布評論請先 登錄
Diodes車用MOSFET為汽車電子控制單元提供電池反向保護(hù)
GMSL將不再單獨(dú)演進(jìn):為什么行業(yè)領(lǐng)導(dǎo)者都選擇共建OpenGMSL?
汽車電子控制單元ECU的設(shè)計(jì)
FPGA在賽車引擎控制單元有什么用處?
TLE6210在汽車ABS電子控制單元中的應(yīng)用
GMSL SerDes在雙汽車電子控制單元(ECU)中的應(yīng)用

基于CAN總線汽車電子控制單元(ECU)的集成電路設(shè)計(jì)
汽車電子控制單元主要功能是什么
汽車電子控制單元主要功能是什么
汽車電子控制單元主要功能有哪些
詳析GMSL在雙汽車電子控制單元中的應(yīng)用

一文了解汽車電子控制單元ECU

初步了解汽車電子控制單元

Samtec Auto小課堂 | 汽車電子控制單元基礎(chǔ)

評論