|
I2S總線(xiàn)解碼分析
嵌入式系統中包含許多不同類(lèi)型的設備,在傳統上這些設備一般用并行總線(xiàn)相互通信及與外部通信。但是到今天,嵌入式系統中越來(lái)越多的串行總線(xiàn)來(lái)替代并行總線(xiàn),這都出于串行總線(xiàn)的優(yōu)勢:1.減少了信號數量,就節省了電路板的空間
2.嵌入式時(shí)鐘 3.差分信號具有良好的抗干擾能力
4.良好的糾錯能力。所以現在也有各種各樣的設備來(lái)分析這些串行總線(xiàn),有專(zhuān)門(mén)的、針對性非常強的總線(xiàn)協(xié)議分析儀,有在示波器上增加總線(xiàn)分析的選件,但這些設備都價(jià)格不菲。更關(guān)鍵的是每增加一種總線(xiàn)分析,就將交上這一筆不菲的費用。今天想讓大家了解的是一種免費且全面的方案,Acute
PC based邏輯分析儀標配低速串行總線(xiàn)的解碼分析功能,所支持的總線(xiàn)幾乎囊括了當下所有流行的低速串行總線(xiàn),我們將以一個(gè)系列來(lái)介紹Acute PC
based邏輯分析儀在低速串行總線(xiàn)解碼方面的應用,這期我們將首先介紹I2S總線(xiàn)的解碼分析,首先讓我們來(lái)看下I2S的簡(jiǎn)介。
I2S簡(jiǎn)介
I2S是IC間傳輸數字音頻數據的一種接口標準,是飛利浦公司為數字音頻設備之間的音頻數據傳輸而制定的一種總線(xiàn)標準,常被使用在傳送CD的PCM音頻信號到CD播放器中的DAC上。在I2S的標準中,規定了硬件接口規范及數字音頻數據的格式,采用序列的方式2組(左右聲道)數據。由三條傳輸線(xiàn)組成:
1.頻率線(xiàn)(SCK),對應數字音頻的每一位數據,SCK都有1個(gè)脈沖。SCLK的頻率=2×采樣頻
率×采樣位數。
2.字符選擇線(xiàn)(WS),為"1"表示正在傳輸的是左聲道的數據,為"0"則表示正在傳輸的是右
聲道的數據。
3.數據線(xiàn)(SD),用二進(jìn)制補碼表示的音頻數據,數據格式最大到20 bits。
Acute PC
based邏輯分析儀針對I2S總線(xiàn)可做的分析功能如下:
1.
將波形字段解析出來(lái):
這是總線(xiàn)分析解碼最基本的功能,所以這個(gè)是必備,請參考下圖中的實(shí)際案例。
2.將波形以聲音波形繪制出來(lái) :
可于波形區畫(huà)出聲音的波形,這也是Acute PC based
邏輯分析儀在I2S總線(xiàn)分析的特別功
能之一,在使用 I2S
總線(xiàn)作為音頻傳輸的開(kāi)發(fā)階段,常常會(huì )以正弦波或三角波來(lái)測試I2S
傳輸數據是否有錯誤, 這時(shí)候, 若直接去看數值,
會(huì )變得很浪費時(shí)間及很難直觀(guān)的觀(guān)察。
因此, 能把 I2S 所傳輸的數據能以聲音波形的方式呈現出來(lái),
將會(huì )很直觀(guān)且立即看出是否
正常,請參考下圖中的實(shí)際案例。
3.錄音重放
:
此功能可以把所有數據收集起來(lái)后,于分析完畢后進(jìn)行播放。您可以用最快的方式確認
聲音是否已經(jīng)正常傳送,而不必逐項檢視數據。由于播放的時(shí)間長(cháng)度,會(huì )根據邏輯分析
儀能紀錄的數據深度有關(guān),建議您可將邏輯分析儀的數據深度拉大,并減少邏輯分析儀
使用的通道數量。
Acute PC
based邏輯分析儀針對I2S總線(xiàn)的硬件觸發(fā):
上面我們介紹了Acute PC
based邏輯分析儀針對I2S的解碼分析應用,接下來(lái)Acute PC
based邏輯分析儀還有一整套針對I2S的硬件觸發(fā)電路,對于工程師來(lái)說(shuō),完善的觸發(fā)可以幫助工程師迅速的定位他們所需的問(wèn)題。接下來(lái)我們就重點(diǎn)來(lái)看下Acute
PC based邏輯分析儀在I2S觸發(fā)方面的優(yōu)勢:
1.啟用I2S觸發(fā)
到「硬件參數設置」選擇「I2S Trigger」,如下圖所示。取樣率范圍從1Hz到200MHz,
實(shí)際使用的內存深度根據您的需求調整。
2.觸發(fā)參數設置
按下「確定」后,點(diǎn)擊工具欄上的「觸發(fā)條件」或是從菜單的「硬件」點(diǎn)擊「觸發(fā)條
件」,點(diǎn)擊「I2S總線(xiàn)協(xié)議觸發(fā)」,會(huì )出現如下圖所示。
a.通道設置
選擇通道,I2S需三個(gè)通道組成一個(gè)信號組(SCK, WS, SD)。
b.數據寬度
設置觸發(fā)數據的位數,1-32(bits),通常為 8, 12, 16, 24,
32。
c.通道選擇
可選擇Both, Left, Right聲道來(lái)觸發(fā)。
d.數據格式
設定觸發(fā)的數值時(shí)可選擇使用Value,Voltage,dB三種方式來(lái)輸入設定值。
●選擇Value時(shí):直接輸入I2S數值。
●選擇Voltage時(shí):需要在滿(mǎn)格電壓值的字段里先輸入以電壓的最大值,觸發(fā)的范圍
由負滿(mǎn)格電壓值到正滿(mǎn)格電壓值之間。
●選擇dB時(shí):直接輸入欲觸發(fā)的衰減dB值。
當數據格式選擇Value時(shí)Pattern中的數值可輸入十六進(jìn)制或十進(jìn)制。十六進(jìn)制時(shí)后面需
加一個(gè)"h",十進(jìn)制則不用任何辨識符號。例如:65(十進(jìn)制)及
41h(十六進(jìn)制)。
觸發(fā)方式選擇Data Match時(shí)可以設定不同的條件來(lái)進(jìn)行觸發(fā),如:=(等于),
!=(不等于),<(小于),>(大于),In Range(Pattern A及Pattern B之間),Out
Range(Pattern
A及Pattern B之外)。
Duration(# of frames),與Pass
count不同,此參數是指連續且不中斷的符合觸發(fā)條件時(shí)
就觸發(fā),可輸入范圍1 ~ 65536。
e.觸發(fā)方式
●Data Match:音頻數據值的比對,信號符合條件時(shí)即觸發(fā)。
●Rising Edge:上升緣觸發(fā),比較相同聲道中的連續兩個(gè)信號,后面的信號比前面
的信號還大并且相差值超出設定值即觸發(fā)。
●Falling
Edgd:下降緣觸發(fā),比較相同聲道中的連續兩個(gè)信號,后面的信號比前面的
信號還小并且相差值超出設定值即觸發(fā)。
●Glitch:毛刺觸發(fā),針對訊號突然上升/下降后馬上下降/上升形成一個(gè)毛刺時(shí)使用,
當信號突然上升/下降的幅度超過(guò)設定值即觸發(fā)。
●Mute:設定值為P時(shí),當訊號X在-P <
X < +P的范圍內則觸發(fā)。
●Clip:若設定值為P時(shí),當訊號X在–P < X ∪ +P >
X的范圍內則觸發(fā)。
●Timing
Violation:間檢查,提供六種設定時(shí)間的條件,當六種設定條件中的任一
條件符合時(shí)就觸發(fā),能有效地幫助使用者作驗證,找出錯誤的
地方。
補充說(shuō)明,因為T(mén)iming
Violation需要比較準確的驗證,只允許在硬件設置為200MHz
Sample Rate的時(shí)候才能使用。
Master:預設Master時(shí)的建議值。
Slave:預設Slave時(shí)的建議值。
Custom:可自定義時(shí)間檢查的參數。
SCK Period
Min.:當Clock的周期小于設定值就觸發(fā)。
SCK Period Max.:當Clock的周期大于設定值就觸發(fā)。
SCK High Duty Min.:當Clock
High小于設定值的時(shí)間就觸發(fā)。
SCK
Low Duty Min.:當Clock Low小于設定值的時(shí)間就觸發(fā)。
Setup
Time:由Clock邊化緣往前找,直到Data轉態(tài)為止的這段時(shí)間就是Setup
Time,
當Setup Time小于設定值就觸發(fā)。
Hold
Time:由Clock邊化緣往后找,直到Data轉態(tài)為止的這段時(shí)間就是Hold
Time,
當Hold Time小于設定值就觸發(fā)。
總結
到此為止,這一期關(guān)于I2S總線(xiàn)的解碼分析功能介紹完畢,總體來(lái)說(shuō)深圳市千兆科科技有限公司所代理的Acute
TL2236 PC Based邏輯分析儀針對I2S總線(xiàn)的分析,提供了高效而又全面的解決方案。當然最關(guān)鍵它是免費的,只要你購買(mǎi)了Acute
PC Based邏輯分析儀,你就擁有了它。下一期我們將介紹PC based邏輯分析儀串行解碼分析系列之二—I2C,敬請期待 !