S/PDIF (TOSLINK) 二三四 - 喇叭音響

By Audriana
at 2020-06-26T20:52
at 2020-06-26T20:52
Table of Contents
AES3 和 S/PDIF(coaxial & fiber) 在硬體(傳輸媒介/電平)上有差異外,通訊協定使
用 Biphase-mark Code 將時鐘與數據信號一起編碼只有 channel status 代表的意義
不相同
AES3 主要使用在專業設備,而 S/PDIF 用於消費性產品
AES3 當時已有 24-bit 的應用。但 S/PDIF 推出時 Audio data 只使用 20 bit,主要
是 CD 的 44.1 kHz/16-bit 及 DAT(Digital Audio Tape) 的 48 kHz/20-bit
受限於頻寬多聲道需使用 Dolby Digital or DTS 這類壓縮格式。立體聲不論格式一律
以 32-bit 的 Sub-frame 來傳送 Audio sample data
0 3 4 7 8 27 28 29 30 31
Preamble Auxiliary LSB 20-bit audio sample word MSB V U C P
sample bits
※ Validity bit、User data bit、Channel status bit、Parity bit
|M| |W| |B| |W| |M| |W|
|X| Channel_1 |Y| Channel_2 |Z| Channel_1 |Y| Channel_2 |X| Channel_1 |Y|...
| | |
| |<Sub-frame 1>|<Sub-frame 2>|
|<------- Frame 191 ------->|<------- Frame 0 ------->|<------- Frame 1...
<<<------- Block ---------->|<---------- Block --------------------------->>>
兩個 Sub-frame(channel) 組成一個 Frame(立體聲),192 個 Frames 組成一個 Block
bit 0~3 的 Preamble 以違反 Biphase-mark Code 的方式編碼所以接收側可以識別
並依前一個 bit(上一組 Sub-frame 的 Parity bit)是零或一的不同有 3*2 六組固
定編碼,用來同步時間與識別各 Block、Frame、Sub-frame 的開頭
AES3 使用 Z Y X 為代號;S/PDIF 使用 B W M 但其實是一樣的東西
Audio sample word 的 20-bit 加 Auxiliary sample bits 的 4-bit 可擴展為 24-bit
都是低位至高位。Audio Data 的 MSB 一律對齊至第 27-bit
傳送方沒使用到的低位 bit 填充零,接收方無法用的低位 bit 就丟棄
I2S 也是無用填零或丟棄但其 bit 順序是 MSB->LSB,剛好跟 LSB->MSB 的 S/PDIF 用
FIFO 的方式交換 Audio data
不論傳送或接收方是 16-bit 20-bit 24-bit 都能在此框架下交換
標準的 AES3 & S/PDIF Sub-frame 長度永遠是 32-bit,所以 Audio data 最高 24-bit
近年有支援 32-bit Audio data 的硬體,將上述的 4+20 擴充到 8+24,Sub-frame 成
為了 40-bit;所以硬體不認得 40-bit 結構的就無法傳送或接收 32-bit Audio data
另外、為由於訊號包含了時鐘,所以傳送單聲道時還是得傳送兩個 Channel,資料存於
Ch1、Ch2 資料填充零
一個 Block 中有 192*2ch 的 Sub-Frame
兩個 Channel 的各自 Sub-frame 的第 30 bit Channel status bit
加起來各有 192-bit 或以 8-bit 一組組成 24 bytes 來表示 Channel status data
主要是儲存 Audio sample 的 bit-depth、Audio channel 數、Sampling frequency、
Time code、Pre-emphasis 等資料
Parity bit 不計 Preamble、只檢查 bit 4~30。但共計 27-bit 的同位位元檢查強度
如果體質好 BER 低就有用,如果體質差根本是做健康的就是了
※
標準的 Data rate 的計算=Sampling frequency * 32-bit * 2 channel
44.1 kHz * 32-bit * 2ch = 2.8224 Mbit/s
48 kHz * 32-bit * 2ch = 3.072 Mbit/s
96 kHz * 32-bit * 2ch = 6.144 Mbit/s
192 kHz * 32-bit * 2ch = 12.288 Mbit/s
特殊的 40-bit Data rate=Sampling frequency * 40-bit * 2 channel
※
所以除了非標準的 32-bit Audio data
不論是傳送 16、20、24-bit 的 Audio data 基本上不會引發錯誤。只差在如果送出高
bit-depth data 至只能處理低 bit-depth 的硬體時會發生資料截斷(丟棄)
由於 S/PDIF 是單向傳輸所以使用者得自行處理這類問題
且由於是單向傳輸、無法重送,Parity bit 要檢查 27-bit 的資料
基本上表示這是一個脆弱的 Protocol
--
人間五十年、化天のうちを比ぶれば、夢幻の如くなり
^,,,^ 一度生を享け、滅せぬもののあるべきか
(ミ‵ω′)\m/ NOBUMETAL DEATH!!(乂'ω')
--
用 Biphase-mark Code 將時鐘與數據信號一起編碼只有 channel status 代表的意義
不相同
AES3 主要使用在專業設備,而 S/PDIF 用於消費性產品
AES3 當時已有 24-bit 的應用。但 S/PDIF 推出時 Audio data 只使用 20 bit,主要
是 CD 的 44.1 kHz/16-bit 及 DAT(Digital Audio Tape) 的 48 kHz/20-bit
受限於頻寬多聲道需使用 Dolby Digital or DTS 這類壓縮格式。立體聲不論格式一律
以 32-bit 的 Sub-frame 來傳送 Audio sample data
0 3 4 7 8 27 28 29 30 31
Preamble Auxiliary LSB 20-bit audio sample word MSB V U C P
sample bits
※ Validity bit、User data bit、Channel status bit、Parity bit
|M| |W| |B| |W| |M| |W|
|X| Channel_1 |Y| Channel_2 |Z| Channel_1 |Y| Channel_2 |X| Channel_1 |Y|...
| | |
| |<Sub-frame 1>|<Sub-frame 2>|
|<------- Frame 191 ------->|<------- Frame 0 ------->|<------- Frame 1...
<<<------- Block ---------->|<---------- Block --------------------------->>>
兩個 Sub-frame(channel) 組成一個 Frame(立體聲),192 個 Frames 組成一個 Block
bit 0~3 的 Preamble 以違反 Biphase-mark Code 的方式編碼所以接收側可以識別
並依前一個 bit(上一組 Sub-frame 的 Parity bit)是零或一的不同有 3*2 六組固
定編碼,用來同步時間與識別各 Block、Frame、Sub-frame 的開頭
AES3 使用 Z Y X 為代號;S/PDIF 使用 B W M 但其實是一樣的東西
Audio sample word 的 20-bit 加 Auxiliary sample bits 的 4-bit 可擴展為 24-bit
都是低位至高位。Audio Data 的 MSB 一律對齊至第 27-bit
傳送方沒使用到的低位 bit 填充零,接收方無法用的低位 bit 就丟棄
I2S 也是無用填零或丟棄但其 bit 順序是 MSB->LSB,剛好跟 LSB->MSB 的 S/PDIF 用
FIFO 的方式交換 Audio data
不論傳送或接收方是 16-bit 20-bit 24-bit 都能在此框架下交換
標準的 AES3 & S/PDIF Sub-frame 長度永遠是 32-bit,所以 Audio data 最高 24-bit
近年有支援 32-bit Audio data 的硬體,將上述的 4+20 擴充到 8+24,Sub-frame 成
為了 40-bit;所以硬體不認得 40-bit 結構的就無法傳送或接收 32-bit Audio data
另外、為由於訊號包含了時鐘,所以傳送單聲道時還是得傳送兩個 Channel,資料存於
Ch1、Ch2 資料填充零
一個 Block 中有 192*2ch 的 Sub-Frame
兩個 Channel 的各自 Sub-frame 的第 30 bit Channel status bit
加起來各有 192-bit 或以 8-bit 一組組成 24 bytes 來表示 Channel status data
主要是儲存 Audio sample 的 bit-depth、Audio channel 數、Sampling frequency、
Time code、Pre-emphasis 等資料
Parity bit 不計 Preamble、只檢查 bit 4~30。但共計 27-bit 的同位位元檢查強度
如果體質好 BER 低就有用,如果體質差根本是做健康的就是了
※
標準的 Data rate 的計算=Sampling frequency * 32-bit * 2 channel
44.1 kHz * 32-bit * 2ch = 2.8224 Mbit/s
48 kHz * 32-bit * 2ch = 3.072 Mbit/s
96 kHz * 32-bit * 2ch = 6.144 Mbit/s
192 kHz * 32-bit * 2ch = 12.288 Mbit/s
特殊的 40-bit Data rate=Sampling frequency * 40-bit * 2 channel
※
所以除了非標準的 32-bit Audio data
不論是傳送 16、20、24-bit 的 Audio data 基本上不會引發錯誤。只差在如果送出高
bit-depth data 至只能處理低 bit-depth 的硬體時會發生資料截斷(丟棄)
由於 S/PDIF 是單向傳輸所以使用者得自行處理這類問題
且由於是單向傳輸、無法重送,Parity bit 要檢查 27-bit 的資料
基本上表示這是一個脆弱的 Protocol
--
人間五十年、化天のうちを比ぶれば、夢幻の如くなり
^,,,^ 一度生を享け、滅せぬもののあるべきか
(ミ‵ω′)\m/ NOBUMETAL DEATH!!(乂'ω')
--
Tags:
喇叭音響
All Comments

By Mia
at 2020-06-29T18:25
at 2020-06-29T18:25

By Lily
at 2020-07-02T15:58
at 2020-07-02T15:58

By Daniel
at 2020-07-05T13:31
at 2020-07-05T13:31

By Hardy
at 2020-07-08T11:05
at 2020-07-08T11:05

By Jack
at 2020-07-11T08:38
at 2020-07-11T08:38

By Hamiltion
at 2020-07-14T06:11
at 2020-07-14T06:11

By Ophelia
at 2020-07-17T03:44
at 2020-07-17T03:44

By Yuri
at 2020-07-20T01:17
at 2020-07-20T01:17

By Zanna
at 2020-07-22T22:51
at 2020-07-22T22:51

By Genevieve
at 2020-07-25T20:24
at 2020-07-25T20:24

By Cara
at 2020-07-28T17:57
at 2020-07-28T17:57

By Regina
at 2020-07-31T15:30
at 2020-07-31T15:30

By Caroline
at 2020-08-03T13:03
at 2020-08-03T13:03

By Hardy
at 2020-08-06T10:37
at 2020-08-06T10:37

By Yuri
at 2020-08-09T08:10
at 2020-08-09T08:10

By Hardy
at 2020-08-12T05:43
at 2020-08-12T05:43

By Joseph
at 2020-08-15T03:16
at 2020-08-15T03:16

By Joseph
at 2020-08-18T00:49
at 2020-08-18T00:49
Related Posts
請問台北有可以試聽JBL 305P MK2的店家嗎

By Elvira
at 2020-06-26T19:20
at 2020-06-26T19:20
關於denon x2400更新韌體問題

By Oliver
at 2020-06-26T06:52
at 2020-06-26T06:52
CEC 8002 問題

By Ida
at 2020-06-25T16:33
at 2020-06-25T16:33
marshall stanmore ii woburn ii

By Wallis
at 2020-06-24T21:34
at 2020-06-24T21:34
Topping E30 的驅動程式

By Hardy
at 2020-06-24T16:26
at 2020-06-24T16:26