KR20010057406A - 에이시-3/엠펙2의 오디오 디코더 - Google Patents

에이시-3/엠펙2의 오디오 디코더 Download PDF

Info

Publication number
KR20010057406A
KR20010057406A KR1019990060620A KR19990060620A KR20010057406A KR 20010057406 A KR20010057406 A KR 20010057406A KR 1019990060620 A KR1019990060620 A KR 1019990060620A KR 19990060620 A KR19990060620 A KR 19990060620A KR 20010057406 A KR20010057406 A KR 20010057406A
Authority
KR
South Korea
Prior art keywords
data
spdif
register
pcm
iec958
Prior art date
Application number
KR1019990060620A
Other languages
English (en)
Inventor
채수창
Original Assignee
박종섭
주식회사 하이닉스반도체
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 박종섭, 주식회사 하이닉스반도체 filed Critical 박종섭
Priority to KR1019990060620A priority Critical patent/KR20010057406A/ko
Publication of KR20010057406A publication Critical patent/KR20010057406A/ko

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/14Digital recording or reproducing using self-clocking codes
    • G11B20/1403Digital recording or reproducing using self-clocking codes characterised by the use of two levels
    • G11B20/1407Digital recording or reproducing using self-clocking codes characterised by the use of two levels code representation depending on a single bit, i.e. where a one is always represented by a first code symbol while a zero is always represented by a second code symbol
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00007Time or data compression or expansion
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/10527Audio or video recording; Data buffering arrangements
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00007Time or data compression or expansion
    • G11B2020/00014Time or data compression or expansion the compressed signal being an audio signal
    • G11B2020/00036AC-3, i.e. ATSC digital audio compression standard
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00007Time or data compression or expansion
    • G11B2020/00014Time or data compression or expansion the compressed signal being an audio signal
    • G11B2020/00057MPEG-1 or MPEG-2 audio layer III [MP3]
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/10527Audio or video recording; Data buffering arrangements
    • G11B2020/1062Data buffering arrangements, e.g. recording or playback buffers
    • G11B2020/10675Data buffering arrangements, e.g. recording or playback buffers aspects of buffer control

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Dc Digital Transmission (AREA)

Abstract

본 발명은 AC-3/MPEG2의 오디오 디코더를 제공하기 위한 것으로, 이러한 본 발명은 MPEG2 데이터 또는 AC-3 데이터 또는 PCM 데이터를 입력받아 PCM 또는 비트스트림 모드를 자동 인식하여 SPDIF 데이터를 수신하고, 최대 20비트의 데이터 폭으로 복수개의 PCM 데이터를 선택하여 전송하는 SPDIF 수신부와; IEC958 포맷의 디코딩을 수행하는 IEC958 디코더와; 데이터를 저장하는 입력버퍼와; 데이터의 오디오 디코딩을 수행하는 오디오 디코더와; 데이터의 프로로직 디코딩을 수행하는 프로로직 디코더와; 디코딩된 데이터가 출력되도록 저장하는 출력버퍼와; 데이터를 IEC958 포맷으로 만드는 IEC958 포맷터와; IEC958로 포맷된 데이터를 SPDIF 포맷으로 만들어 MPEG2 또는 AC-3 또는 PCM 데이터를 송신하고, 최대 20비트의 데이터 폭으로 복수개의 PCM 데이터를 선택하여 전송하며, 선형 PCM 데이터를 바이패스하여 출력하는 SPDIF 송신부로 구성하여, IEC60958 포맷과 일치하는 SPDIF의 송신기와 수신기를 포함하는 인터페이스 회로를 설계함으로서 수신기에서는 PCM 데이터와 부호화된 오디오 데이터를 자동 검출하여 입력모드가 자동전환되도록 하고, 송신기에서는 PCM 데이터의 비트 폭에 따라 16, 18, 20 비트 모드로서 각각 전송하며, 선형 PCM 데이터를 바이패스 하는 등의 다양한 기능을 수행할 수 있게 되는 것이다.

Description

에이시-3/엠펙2의 오디오 디코더{Apparatus for audio decoder in AC-3/MPEG2}
본 발명은 AC-3(Audio Compression - 3)/MPEG2(Moving Picture Expert Group 2)의 오디오 디코더에 관한 것으로, 특히 IEC(International Electrotechnical Commission, 국제 전기 표준 회의)60958 포맷과 일치하는 SPDIF(Sony Philips Digital Interface)의 송신기와 수신기를 포함하는 인터페이스 회로를 설계하여, 수신기에서는 PCM(Pulse Code Modulation, 펄스 부호 변조) 데이터와 부호화된 오디오 데이터를 자동 검출하여 입력모드가 자동전환되도록 하고, 송신기에서는 PCM 데이터의 비트 폭에 따라 16, 18, 20 비트 모드로서 각각 전송하며, 선형 PCM 데이터를 바이패스 하는 등의 다양한 기능을 수행하기에 적당하도록 한 AC-3/MPEG2의 오디오 디코더에 관한 것이다.
일반적으로 SPDIF는 소니/필립스(Sony/Philips)가 제정한 소비자 오디오(Consumer Audio) 기기에서 사용되는 국제규격이다.
도1은 종래 오디오 디코더의 블록구성도이다.
이에 도시된 바와 같이, MPEG2 데이터 또는 AC-3 데이터 또는 PCM 데이터를 입력받아 PCM 또는 비트스트림 모드를 자동 인식하여 SPDIF 데이터를 수신하는 SPDIF 수신부(11)와; 상기 SPDIF 수신부(11)에서 수신된 데이터를 IEC958 포맷의 디코딩을 수행하는 IEC958 디코더(12)와; 상기 IEC958 디코더(12)에서 디코딩된 PCM 또는 압축된 비트스트림 데이터를 저장하는 입력버퍼(13)와; 상기 입력버퍼(13)에 저장된 데이터의 오디오 디코딩을 수행하는 오디오 디코더(14)와; 상기 오디오 디코더(14)에서 디코딩된 데이터가 출력되도록 저장하는 출력버퍼(15)와; 상기 입력버퍼(13)와 출력버퍼(15)에 저장된 데이터를 IEC958 포맷으로 만드는 IEC958 포맷터(16)와; 상기 IEC958 포맷터(16)에서 IEC958로 포맷된 데이터를 SPDIF 포맷으로 만들어 MPEG2 또는 AC-3 또는 PCM 데이터를 송신하는 SPDIF 송신부(17)로 구성된다.
도2는 도1에서 SPDIF 수신부의 상세블록도이다.
이에 도시된 바와 같이, SPDIF 데이터를 입력받아 동기클럭을 생성하는 동기클럭 생성부(21)와; 상기 동기클럭 생성부(21)에서 동기클럭을 입력받고 데이터의 레프트 채널을 출력하는 시프트 레프트 레지스터(22)와; SPDIF 포맷에서 서브 프레임의 프리앰블을 나타내는 신호를 입력받아 다중화하는 PCM 다중화부(23)와; 상기 PCM 다중화부(23)의 출력을 위상 반전시키는 인버터(24)와; 상기 시프트 레프트 레지스터(22)와 상기 PCM 다중화부(23)와 상기 인버터(24)의 출력을 입력받아 비교하여 입력된 데이터가 PCM인지를 판별하는 PCM 비교부(25)와; 상기 동기클럭 생성부(21)에서 SPDIF의 동기클럭을 입력받고 바이페이즈(Biphase) 데이터를 NRZ(Non Return to Zero) 데이터로 변환시키는 바이페이즈-NRZ 변환부(26)와; 상기 바이페이즈-NRZ 변환부(26)의 데이터를 시프트 라이트하는 시프트 라이트 레지스터(27)와; 확장된 동기 코드를 입력받아 다중화하는 코드 다중화부(28)와; 상기 시프트 라이트 레지스터(27)와 상기 코드 다중화부(28)의 출력을 입력받아 비교하여 입력된 데이터가 부호화된 오디오 비트스트림인지를 판별하는 코드 비교부(29)와; 상기 시프트 라이트 레지스터(27)의 데이터의 데이터 타입을 결정하는 데이터 타입 레지스터(30)와; 상기 시프트 라이트 레지스터(27)의 데이터의 길이를 결정하는 길이 레지스터(31)와; 상기 길이 레지스터의 데이터를 카운팅하는 카운터(32)와; 상기 시프트 라이트 레지스터(27)의 데이터에서 에러 플래그를 검출하는 에러 플래그(33)로 구성된다.
도3은 도1에서 SPDIF 송신부의 상세블록도이다.
이에 도시된 바와 같이, 입력된 데이터를 각각 다중화하는 제1 내지 제3 다중화부(51 ~ 53)와; 상기 제1 내지 제3 다중화부(51 ~ 53)의 데이터를 시프트하는 시프트 레지스터(54)와; 패리티 비트를 생성하여 상기 시프트 레지스터(55)의 데이터에 추가하는 패리티 비트 생성부(55)와; 상기 시프트 레지스터(55)의 출력과 "0" 값을 다중화하는 제4 다중화부(56)와; 상기 제4 다중화부(56)의 출력을 입력받아 NRZ 데이터를 바이페이즈 마크 데이터로 변환하는 NRZ-바이페이즈 변환부(57)와;SPDIF 포맷에서 서브 프레임의 프리앰블을 나타내는 신호를 입력받아 다중화하는 제5 다중화부(58)와; 상기 제5 다중화부(58)의 데이터를 시프트 레프트하는 시프트 레프트 레지스터(59)와; 상기 NRZ-바이페이즈 변환부(57)의 데이터와 상기 시프트 레프트 레지스터(59)의 데이터를 입력받아 다중화하여 SPDIF 포맷의 데이터를 송신하는 제6 다중화부(60)로 구성된다.
이러한 종래의 장치에서 SPDIF 송/수신기는 IEC60958 표준 데이터 포맷과 일치한다. 돌비 AC-3, MPEG(Motion Picture Export Group, 통합계 동영상압축의 국제표준) 그리고 PCM 비트스트림이 지원되며, Bi-Phase Mark Encoding 및 Decoding을 한다. 그리고 수신기는 PCM과 오디오 비트스트림을 자동으로 검출하는 기능이 있다.
그러나 종래 기술에서 SPDIF 송/수신기는 PCM 또는 부호화된 오디오 비트스트림 모드를 자동 전환할 수 있는 기능을 갖기는 하지만, PCM 데이터의 비트 폭에 따라 16, 18, 20 비트 모드로서 각각 전송하는 기능은 수행할 수 없었으며, SPDIF 수신기로부터 입력된 선형 PCM 데이터를 SPDIF 송신기로 바이패스 하는 기능은 구현할 수 없었기 때문에 다양한 기능을 수행할 수 있는 AC-3/MPEG2의 오디오 디코더를 제공할 수 없는 단점이 있었다.
이에 본 발명은 상기와 같은 종래의 제반 문제점을 해소하기 위해 제안된 것으로, 본 발명의 목적은 IEC60958 포맷과 일치하는 SPDIF의 송신기와 수신기를 포함하는 인터페이스 회로를 설계하여, 수신기에서는 PCM 데이터와 부호화된 오디오 데이터를 자동 검출하여 입력모드가 자동전환되도록 하고, 송신기에서는 PCM 데이터의 비트 폭에 따라 16, 18, 20 비트 모드로서 각각 전송하며, 선형 PCM 데이터를 바이패스 하는 등의 다양한 기능을 수행할 수 있는 AC-3/MPEG2의 오디오 디코더를 제공하는 데 있다.
상기와 같은 목적을 달성하기 위하여 본 발명에 의한 AC-3/MPEG2의 오디오 디코더는,
MPEG2 데이터 또는 AC-3 데이터 또는 PCM 데이터를 입력받아 PCM 또는 비트스트림 모드를 자동 인식하여 SPDIF 데이터를 수신하고, 최대 20비트의 데이터 폭으로 복수개의 PCM 데이터를 선택하여 전송하는 SPDIF 수신부와; 상기 SPDIF 수신부에서 수신된 데이터를 IEC958 포맷의 디코딩을 수행하는 IEC958 디코더와; 상기 IEC958 디코더에서 디코딩된 PCM 또는 압축된 비트스트림 데이터를 저장하는 입력버퍼와; 상기 입력버퍼에 저장된 데이터의 오디오 디코딩을 수행하는 오디오 디코더와; 상기 입력버퍼에 저장된 데이터의 프로로직 디코딩을 수행하는 프로로직 디코더와; 상기 오디오 디코더와 프로로직 디코더에서 디코딩된 데이터가 출력되도록 저장하는 출력버퍼와; 상기 입력버퍼와 출력버퍼에 저장된 데이터를 IEC958 포맷으로 만드는 IEC958 포맷터와; 상기 IEC958 포맷터에서 IEC958로 포맷된 데이터를 SPDIF 포맷으로 만들어 MPEG2 또는 AC-3 또는 PCM 데이터를 송신하고, 최대 20비트의 데이터 폭으로 복수개의 PCM 데이터를 선택하여 전송하며, 선형 PCM 데이터를 바이패스하여 출력하는 SPDIF 송신부로 이루어짐을 그 기술적 구성상의 특징으로한다.
도1은 종래 오디오 디코더의 블록구성도이고,
도2는 도1에서 SPDIF 수신부의 상세블록도이며,
도3은 도1에서 SPDIF 송신부의 상세블록도이고,
도4는 본 발명의 일실시예에 의한 AC-3/MPEG2의 오디오 디코더의 블록구성도이며,
도5는 도4에서 SPDIF 송/수신부의 인터페이스 신호를 보인 도면이고,
도6은 도4에서 SPDIF 송신부의 블록구성도이며,
도7은 도4에서 SPDIF 수신부의 블록구성도이고,
도8은 도6에서 NRZ-바이페이즈 변환부의 상세블록도이며,
도9는 도8에서 출력되는 바이페이즈 마크 데이터의 파형도이고,
도10은 도7에서 바이페이즈-NRZ 변환부의 상세블록도이며,
도11은 본 발명에 적용되는 SPDIF의 데이터 포맷을 보인 도면이고,
도12는 본 발명의 적용에 의한 비트스트림 전송 방법을 보인 흐름도이며,
도13은 본 발명에 적용되는 IEC60958의 데이터 포맷을 보인 도면이고,
도14는 본 발명의 적용에 의한 PCM과 오디오 데이터 모드의 검출방법을 보인흐름도이다.
<도면의 주요 부분에 대한 부호의 설명>
12 : IEC958 디코더 13 : 입력버퍼
14 : 오디오 디코더 15 : 출력버퍼
16 : IEC958 포맷터 100 : SPDIF 수신부
200 : SPDIF 송신부 300 : 프로로직 디코더
이하, 상기와 같은 본 발명 AC-3/MPEG2의 오디오 디코더의 기술적 사상에 따른 일실시예를 설명하면 다음과 같다.
도4는 본 발명의 일실시예에 의한 AC-3/MPEG2의 오디오 디코더의 블록구성도이다.
이에 도시된 바와 같이, MPEG2 데이터 또는 AC-3 데이터 또는 PCM 데이터를 입력받아 PCM 또는 비트스트림 모드를 자동 인식하여 SPDIF 데이터를 수신하고, 최대 20비트의 데이터 폭으로 복수개의 PCM 데이터를 선택하여 전송하는 SPDIF 수신부(100)와; 상기 SPDIF 수신부(100)에서 수신된 데이터를 IEC958 포맷의 디코딩을 수행하는 IEC958 디코더(12)와; 상기 IEC958 디코더(12)에서 디코딩된 PCM 또는 압축된 비트스트림 데이터를 저장하는 입력버퍼(13)와; 상기 입력버퍼(13)에 저장된 데이터의 오디오 디코딩을 수행하는 오디오 디코더(14)와; 상기 입력버퍼(13)에 저장된 데이터의 프로로직 디코딩을 수행하는 프로로직 디코더(300)와; 상기 오디오 디코더(14)와 프로로직 디코더(300)에서 디코딩된 데이터가 출력되도록 저장하는 출력버퍼(15)와; 상기 입력버퍼(13)와 출력버퍼(15)에 저장된 데이터를 IEC958 포맷으로 만드는 IEC958 포맷터(16)와; 상기 IEC958 포맷터(16)에서 IEC958로 포맷된 데이터를 SPDIF 포맷으로 만들어 MPEG2 또는 AC-3 또는 PCM 데이터를 송신하고, 최대 20비트의 데이터 폭으로 복수개의 PCM 데이터를 선택하여 전송하며, 선형 PCM데이터를 바이패스하여 출력하는 SPDIF 송신부(200)로 구성된다.
도6은 도4에서 SPDIF 송신부의 블록구성도이다.
이에 도시된 바와 같이, 버스트 데이터(Burst Data)를 라이트 시프트(right shift)하면서 출력하는 SHR 레지스터(210)와; SPDIF 프리앰블 (X, Y, Z)를 선택하여 내보내는 SHL 레지스터(220)와; 상기 SHR 레지스터(210)와 연결되고, BIT2에서 BIT26을 참조하여 even parity bit를 생성하는 패리티 비트 생성부(230)와; 전송 비트의 길이를 저장하는 길이 레지스터(240)와; 상기 SPDIF 수신부(100)의 데이터 타입인 AC-3, MPEG1, MPEG2 without Extension, MPEG2 with Extension 중의 한가지를 데이터 타입으로 입력받는 데이터 타입 입력부(250)와; 상기 SHR 레지스터(210)에서 출력되는 NRZ 데이터를 바이페이즈 마크 데이터로 변환하여 상기 SHL 레지스터(220)의 데이터와 다중화되도록하는 NRZ-바이페이즈 변환부(260)를 포함하여 구성된다.
도7은 도4에서 SPDIF 수신부의 블록구성도이다.
이에 도시된 바와 같이, SPDIF 포맷의 데이터를 입력받아 프리앰블을 검출하기 위하여 매 클럭마다 시프트하여 1 블록을 나타내는 프리앰블 Z에 대해서 비교하는 SHL 레지스터(110)와; 상기 입력된 SPDIF 포맷의 데이터에서 바이페이즈 데이터를 NRZ(Non Return to Zero) 데이터로 변환시키는 바이페이즈-NRZ 변환부(120)와; 상기 바이페이즈-NRZ 변환부(120)에서 변환된 데이터를 입력받아 프리앰블을 검출하거나 유효 데이터를 꺼내어 상기 입력버퍼(13)에 저장하는 SHR 레지스터(130)와; 상기 SHR 레지스터(130)에서 전달되는 데이터가 에러를 포함하는지를 나타내는 에러 플래그 레지스터(140)와; 상기 SHR 레지스터(130)의 비트 2~0의 3비트를 저장하여 AC-3, MPEG layer1, MPEG layer2 또는 MPEG2 without Extension, MPEG2 with Extension의 4가지 정보를 추출하는 데이터 타입 레지스터(150)와; 상기 SHR 레지스터(130)에서 전달되는 데이터의 비트 길이를 저장하는 길이 코드 레지스터(160)와; 상기 SHR 레지스터(130)에서 전달되는 데이터를 프리앰블을 이용하여 라이트와 레프트로 분리하여 저장하는 SPL 레지스터(170)를 포함하여 구성된다.
도8은 도6에서 NRZ-바이페이즈 변환부의 상세블록도이다.
이에 도시된 바와 같이, NRZ 데이터를 선택단자로 하여 입력된 데이터와 "1" 값을 다중화하는 다중화부(261)와; 상기 다중화부(261)에서 출력된 값이 "0"이면 1/2 클럭의 주기마다 인에이블되어 현재 값을 반전시켜 출력하고, 상기 다중화부(261)에서 출력된 값이 "1"이면 1 클럭의 주기마다 인에이블되어 현재 값을 반전시켜 출력하는 래치부(262)와; 상기 래치부(262)의 출력을 지연시켜 출력하는 디플립플롭(263)으로 구성된다.
도10은 도7에서 바이페이즈-NRZ 변환부의 상세블록도이다.
이에 도시된 바와 같이, 동기클럭에 따라 입력된 데이터를 래치하는 제1 래치부(121)와; 상기 동기클럭에 따라 상기 제1 래치부(121)의 데이터를 래치하는 제2 래치부(122)와; 상기 제1 및 제2 래치부(121)(122)의 출력을 부정논리합 연산하는 부정논리합 연산부(123)와; 상기 동기클럭을 입력받고, 상기 부정논리합 연산부(123)에서 연산된 결과를 입력받아 동기클럭 주기로 2번 연속해서 들어온 데이터 값이 같으면 "0"을 1/2의 클럭주기로 출력하고, 다르면 "1"을 1/2의 클럭주기로 출력하는 제3 래치부(124)로 구성된다.
이와 같이 구성된 본 발명에 의한 AC-3/MPEG2의 오디오 디코더의 동작을 첨부한 도면에 의거 상세히 설명하면 다음과 같다.
먼저 SPDIF는 대부분의 소비자용 디지털 오디오 기기의 인터페이스에 채용되는 디지털 인터페이스로서, 소니와 필립스사의 연합에 의하여 제정된 국제 규격이다.
본 발명에서는 돌비 AC-3과 MPEG2 계층2 오디오 디코더에 이용하기 위하여 종래의 SPDIF의 수신기와 송신기에 대하여 각각 기능을 추가하여 설계하였다.
그래서 SPDIF 수신부(100)의 입력포트에는 PCM 데이터는 물론 IEC60958 포맷의 부호화된 오디오 데이터가 입력될 수 있으며, PCM 데이터와 IEC60958 데이터를 구분하는 기능을 갖는다.
또한 SPDIF 송신부(200)는 PCM 데이터와 Non-PCM 데이터를 출력하는데, SPDIF의 입력포트가 아닌 다른 입력포트에 의하여 저장된 부호화된 오디오 데이터(Encoded audio data Stream, ES)도 IEC60958의 포맷으로 출력한다.
그래서 입력/출력의 IEC60958 표준 데이터 포맷과 일치하고, 바이페이즈 마크(Biphase-Mark) 인코딩 및 디코딩을 수행하며, 부호화된 오디오 비트 스트림을 IEC60958 포맷으로 출력하고, PCM, AC-3, MPEG1 그리고 MPEG2 비트 스트림을 자동으로 검출한다.
SPDIF 수신부(100)에는 오디오 디코더를 위하여 MPEG1 계층1, MPEG1 계층2또는 MPEG2 without Extension, MPEG2 with Extension, 그리고 돌비 AC-3 비트 스트림이 입력되며, 프로로직 디코더(P개 Logic decoder)(300)를 위하여 PCM 데이터가 입력될 수 있다. 입력된 스트림은 SPDIF 디코딩과 IEC958 언패킹(unpacking) 과정을 통하여 입력버퍼(13)에 저장된다.
SPDIF 송신부(200)는 오디오 디코더에 의하여 디코딩된 결과가 저장된 PCM 데이터를 SPDIF 포맷으로 인코딩을 수행하여 출력하며, 또한 다른 입력포트로부터 저장된 부호화된 오디오 데이터를 IEC958 포맷으로 변환한 후 SPDIF 인코딩을 수행하여 출력하게 된다.
도5는 도4에서 SPDIF 송/수신부의 인터페이스 신호를 보인 도면이다.
그래서 본 발명에서는 SPDIF 송신부와 수신부를 하나의 블록으로 설계하여 입출력 포트를 공유하고, 일부 기능 블록이 공유되도록 설계하였다.
도6은 도4에서 SPDIF 송신부의 블록구성도이다.
그래서 송신부(200)는 출력 모드에 따라 크게 2가지의 데이터를 전송하게 된다.
입력 버퍼에 입력되어 있는 ES의 데이터를 IEC958 포맷으로 생성하여 전송하거나, 또는 오디어 디코딩의 결과가 저장되어 있는 출력 버퍼(15)의 PCM 데이터를 전송한다. PCM 데이터를 저장하고 있는 PCM 버퍼에는 폭(Width)이 최대 20비트이며, 또한 16비트, 18비트, 그리고 20비트의 PCM 데이터를 선택하여 채우고 전송할 수 있다.
그 외에도 추가된 기능으로 선형 PCM 데이터를 바이패스하는 모드가 있다.
이는 SPDIF 수신부(100)로부터 입력된 PCM 데이터만을 다시 송신부(200)에 의하여 SPDIF의 포맷으로 전송하는 모드이다.
따라서 채널 상태를 변경하여 전송할 수 있는 점이 종래 기술과 다른 점이다.
이러한 SPDIF 송신부(200)의 동작을 수행하기 위한 각 기능별 구성 요소에 대해 설명하면 다음과 같다.
먼저 SHR 레지스터(210)는 버스트 데이터(Burst Data)를 라이트 시프트(right shift)하면서 출력하기 위한 시프트 레지스터로서 28비트로 구성된다.
SHL 레지스터(220)는 SPDIF 프리앰블 (X, Y, Z)를 선택하여 내보내기 위한 left shift register이다. 시프팅 클럭(shifting clock)은 SHR 레지스터(220)의 2배 빠른 클럭이 사용된다.
패리티 비트 생성부(230)는 BIT2에서 BIT26을 참조하여 even parity bit를 생성한다.
길이 레지스터(240)는 전송 비트의 길이를 저장하는 레지스터인데, 외부의 정보는 바이트 단위이므로 이 값을 8배하여 저장한다.
데이터 타입 입력부(250)에 입력되는 데이터 타입은 AC-3, MPEG1, MPEG2 without Extension, MPEG2 with Extension 중의 한가지이다.
NRZ-바이페이즈 변환부(260)는 NRZ 데이터를 바이페이즈 마크 데이터로 변환한다.
한편 도7은 도4에서 SPDIF 수신부의 블록구성도이다.
그래서 SPDIF 수신부(100)는 초기적으로 입력되는 데이터를 PCM 데이터로 간주하며, SPDIF 디코딩을 행한 후에 16 비트 단위로 입력 버퍼(13)에 저장을 행하게 된다.
이때 입력되는 데이터 중에 IEC958 포맷의 프리앰블을 포함하는 동기 코드가 발견되면, 오디오 데이터 모드로 전환되며, 어드레스 생성부는 리셋이 되어 0번지부터 저장을 다시 시작하게 된다.
데이터 타입에 다른 입력 반복 주기(input repetition period) 후에 동기 코드가 검출되지 않으면 다시 PCM 모드로 전환된다.
또한 본 발명에서 추가된 내용으로는 IEC958 포맷의 데이터의 수신상태를 플래그로 출력하며, SPDIF의 패리티 비트를 저장하고 있어서 오디오 디코더에 상태정보를 제공하도록 하였다. 그리고 선형 PCM 데이터 송수신을 위하여 L 채널(Left Channel)과 R 채널(Right Channel)의 데이터를 각각 다른 레지스터에 저장하여 출력하며, SPDIF 송신부(200)에서는 이들을 구분하여 읽어갈 수 있도록 연결된다.
이러한 SPDIF 수신부(100)의 동작을 수행하기 위한 각 기능별 구성 요소의 동작을 설명하면 다음과 같다.
SHL 레지스터(110)는 프리앰블을 검출하기 위하여 매 클럭마다 시프트된다. 이때 검출하는 데이터는 1 블록을 나타내는 프리앰블 Z에 대해서 비교한다.
바이페이즈-NRZ 변환부(120)는 바이페이즈 데이터를 NRZ(Non Return to Zero) 데이터로 변환시킨다.
SHR 레지스터(130)는 데이터가 매 클럭/2 마다 시프트되어 나타나는데, IEC958의 프리앰블을 검출하거나 유효 데이터를 꺼내어 입력 버퍼(13)에 저장하기 위하여 사용된다.
에러 플래그 레지스터(140)는 전달되는 데이터가 에러를 포함하는지를 나타내는 플래그 레지스터로서, SHR 레지스터(130)의 비트 7의 값을 저장하여 놓는다.
데이터 타입 레지스터(150)에서 데이터 타입은 SHR 레지스터(130)의 비트 2~0의 3비트를 저장하는데, AC-3, MPEG layer1, MPEG layer2 또는 MPEG2 without Ext., 그리고 MPEG2 with Ext.의 4가지 정보를 추출하여 사용하기 위함이다.
길이 코드 레지스터(160)는 전달 데이터의 비트 길이가 저장되는 곳으로 비트 15~4의 12비트만을 취하여 저장하여 16비트 단위의 계수 정보를 저장한다.
SPL 레지스터(170)는 SHR 레지스터(130)에서 전달되는 데이터를 프리앰블을 이용하여 라이트와 레프트로 분리하여 저장한다.
도9는 도8에서 출력되는 바이페이즈 마크 데이터의 파형도이다.
바이페이즈 마크 인코딩은 다음과 같다.
Low-Noise 환경 하에서 사용되는 point-to-point 인터페이스로서 다음과 같은 인코딩 규칙이 있다.
* 천이는 값(0 또는 1)이 무엇이든지 비트의 시작점에서 항상 일어난다.
* 1 값에 대하여 천이는 비트의 가운데에서 일어난다.
* 0 값에 대하여 천이는 비트의 가운데에서 일어나지 않는다.
도7의 샘플링 주파수가 48KHz인 경우에 대하여 Biphase-Mark 데이터를 2배로빠른 클럭으로 검출하는 것을 보였다. 도6에서 NRZ 데이터를 바이페이즈 데이터로 변환하는 회로는 도8과 같다.
도11은 본 발명에 적용되는 SPDIF의 데이터 포맷을 보인 도면이다.
그래서 SPDIF는 도11에서 보듯이, 1블록은 192개의 IEC958 포맷으로 구성되어 있고, IEC958 프레임은 레프트 채널(Left-Channel)과 라이트 채널(Right-Channel)의 2개의 서브프레임으로 구성된다. 서브프레임의 구성은 타임슬롯 0~3에는 프리앰블, 타임슬롯 4~11에는 '0's 로 채워지며 사용되지 아니하고, 타임슬롯 12~27의 16비트에 실제로 전달되어지는 데이터가 할당된다. 그리고 Validity, User, Channel status, parity 비트가 할당된다.
SPDIF 포맷에서 프리앰블은 모두 3가지가 있다. 블록 시작을 나타내면서 레프트 채널의 서브 프레임의 프리앰블을 나타내는 'Z', 레프트 채널 서브 프레임의 프리앰블 'X', 그리고 라이트 채널의 서브 프레임의 프리앰블 'Y'가 있다. 두 개의 SPDIF 서브 프레임이 하나의 IEC958 프레임을 구성하며, IEC958 프레임의 192개는 한 블록을 구성한다.
그래서 실제로 전달되어지는 데이터는 타임 슬롯 12~27에 할당된다. 이때 매 서브 프레임 마다 채널 상태가 1비트씩 할당되는데, 구현에 값들이 도11에 있다. 그래서 Xbiphase= "11100010" 또는 "00011101", Ybiphase= "11100100" 또는 "00011011", Zbiphase= "11101000" 또는 "00010111"이다. 이 값들은 SPDIF 수신부(100)의 PCM 다중화부와 인버터에서 PCM 비교부로 입력된다.
도11에서 Validity 비트는 MPEG인 경우에는 "1"일 때 유효하고, AC-3인 경우에는 "0"일 때 유효한 것으로, '0'인 경우에는 아날로그로 변환하기에 적합한 오디오 샘플을 표시한다.
Channel status의 경우 SPDIF 수신부(100)에서는 인식되지 않지만 SPDIF 송신부(200)에서는 비트1, 비트2, 비트15, 그리고 비트 24~27은 호스트로부터 설정된 값을 출력한다.
도13은 본 발명에 적용되는 IEC60958의 데이터 포맷을 보인 도면이다.
그래서 SPDIF에 의하여 전달되는 데이터들 중에서 Non-PCM, 즉 부호화된 오디오 데이터(MPEG, AC-3)에 대하여는 도13의 IEC958 포맷으로 구성되어 전달된다.
프리앰블의 값은 16진수로 "F872"와 이를 비트 리버스(bit reverse)해 놓은 "4E1F"이다. 그 다음에 오는 16비트 정보는 데이터 타입(data type)과 에러(error)의 포함여부, 타임 스탬프(time stamp) 정보들이다. 전달되는 데이터에 앞서서 그의 길이(bit length) 정보가 먼저 보내지는데, 데이터 타입에 따라서 MPEG 및 AC-3 데이터 타입인 경우는 65536 비트까지 보내질 수 있으며, 타임 스탬프일 경우는 6??16비트, MPEG PAUSE일 경우엔 32비트, 그리고 AC-3 Null 데이터인 경우엔 '0's으로만 채워 보내진다.
SPDIF 송신부(200)에서 전송상의 스위칭 지연으로 데이터 전송의 끊김이 일어나는 경우는 전달해야할 데이터 버스트 사이에 MPEG Pause 또는 AC-3 Null 데이터를 보내게 된다.
만일, 전달할 데이터 양이 AC-3은 1153 IEC958 프레임, MPEG은 1152 IEC958프레임 이하인 경우에는 나머지 데이터 영역을 "0"으로 채우고(0's stuffing), MPEG Pause인 경우 32 IEC958 프레임 만큼을 "0"으로 채운다. 도12는 이러한 비트스트림 전송 방법을 보인 흐름도이다.
IEC958 인터페이스는 PCM과 부호화된 오디오 데이터 중에 하나가 전달되어 질 수 있다. 수신기는 IEC958 정보가 어느 것인지를 알 수 있어야 한다. 이 정보는 SPDIF 포맷에서 채널 상태 비트 1에 의하여도 알 수 있지만, 그 값이 할당되어 있지 않을 수도 있다. 그래서 종래의 수신기에서는 호스트로부터 비트스트림 모드를 전환한 후 입력 비트스트림을 받아들이게 된다.
본 발명에서는 IEC958 포맷 내의 동기 코드(프리앰블)와 "0" 스터핑 구간을 이용하여 비트스트림 모드를 내부적으로 전환하는 기능을 수신기에 적용한다. 결국 확장된 96비트의 동기 코드(Ox0000, 0x0000, 0x0000, 0x0000, 0xF872, Ox4E1F)를 찾는 것인데, PCM 내에 이러한 데이터가 나타날 확률은 24시간 만에 1회 정도이다. 또한 최소한 4096 IEC958 프레임 마다 한 번의 4회의 "0"의 스터핑 구간이 존재하므로 모드의 전환이 정상적이지 못하는 경우는 없다. 그래서 도14는 본 발명의 적용에 의한 PCM과 오디오 데이터 모드의 검출방법을 보인 흐름도이다.
이처럼 본 발명은 IEC60958 포맷과 일치하는 SPDIF의 송신기와 수신기를 포함하는 인터페이스 회로를 설계하게 되는 것이다.
이상에서 본 발명의 바람직한 실시예를 설명하였으나, 본 발명은 다양한 변화와 변경 및 균등물을 사용할 수 있다. 본 발명은 상기 실시예를 적절히 변형하여 동일하게 응용할 수 있음이 명확하다. 따라서 상기 기재 내용은 하기 특허청구범위의 한계에 의해 정해지는 본 발명의 범위를 한정하는 것이 아니다.
이상에서 살펴본 바와 같이, 본 발명에 의한 AC-3/MPEG2의 오디오 디코더는 IEC60958 포맷과 일치하는 SPDIF의 송신기와 수신기를 포함하는 인터페이스 회로를 제공할 수 있는 효과가 있다.
또한 수신기에서는 PCM 데이터와 부호화된 오디오 데이터를 자동 검출하여 입력모드가 자동전환되도록 함으로서 오디오 디코더를 설계하는 설계자가 용이하게 오디오 디코더를 설계할 수 있도록 해주는 효과도 있다.
더불어 송신기에서는 PCM 데이터의 비트 폭에 따라 16, 18, 20 비트 모드로서 각각 전송하며, 부호화된 오디오 데이터를 IEC60958 포맷으로도 전송할 수 있고, SPDIF로 입력되는 선형 PCM 데이터를 곧바로 바이패스(Bypass) 하는 등의 기능을 수행함으로써 다양한 기능을 수행할 수 있는 오디오 디코더를 제공하는 효과도 있다.

Claims (5)

  1. MPEG2 데이터 또는 AC-3 데이터 또는 PCM 데이터를 입력받아 PCM 또는 비트스트림 모드를 자동 인식하여 SPDIF 데이터를 수신하고, 최대 20비트의 데이터 폭으로 복수개의 PCM 데이터를 선택하여 전송하는 SPDIF 수신부와;
    상기 SPDIF 수신부에서 수신된 데이터를 IEC958 포맷의 디코딩을 수행하는 IEC958 디코더와;
    상기 IEC958 디코더에서 디코딩된 PCM 또는 압축된 비트스트림 데이터를 저장하는 입력버퍼와;
    상기 입력버퍼에 저장된 데이터의 오디오 디코딩을 수행하는 오디오 디코더와;
    상기 입력버퍼에 저장된 데이터의 프로로직 디코딩을 수행하는 프로로직 디코더와;
    상기 오디오 디코더와 프로로직 디코더에서 디코딩된 데이터가 출력되도록 저장하는 출력버퍼와;
    상기 입력버퍼와 출력버퍼에 저장된 데이터를 IEC958 포맷으로 만드는 IEC958 포맷터와;
    상기 IEC958 포맷터에서 IEC958로 포맷된 데이터를 SPDIF 포맷으로 만들어 MPEG2 또는 AC-3 또는 PCM 데이터를 송신하고, 최대 20비트의 데이터 폭으로 복수개의 PCM 데이터를 선택하여 전송하며, 선형 PCM 데이터를 바이패스하여 출력하는 SPDIF 송신부로 구성된 것을 특징으로 하는 AC-3/MPEG2의 오디오 디코더.
  2. 제1항에 있어서, 상기 SPDIF 수신부는,
    SPDIF 포맷의 데이터를 입력받아 프리앰블을 검출하기 위하여 매 클럭마다 시프트하여 1 블록을 나타내는 프리앰블 Z에 대해서 비교하는 SHL 레지스터와;
    상기 입력된 SPDIF 포맷의 데이터에서 바이페이즈 데이터를 NRZ 데이터로 변환시키는 바이페이즈-NRZ 변환부와;
    상기 바이페이즈-NRZ 변환부에서 변환된 데이터를 입력받아 프리앰블을 검출하거나 유효 데이터를 꺼내어 상기 입력버퍼에 저장하는 SHR 레지스터와;
    상기 SHR 레지스터에서 전달되는 데이터가 에러를 포함하는지를 나타내는 에러 플래그 레지스터와;
    상기 SHR 레지스터의 비트 2~0의 3비트를 저장하여 AC-3, MPEG layer1, MPEG layer2 또는 MPEG2 without Extension, MPEG2 with Extension의 4가지 정보를 추출하는 데이터 타입 레지스터와;
    상기 SHR 레지스터에서 전달되는 데이터의 비트 길이를 저장하는 길이 코드 레지스터와;
    상기 SHR 레지스터에서 전달되는 데이터를 프리앰블을 이용하여 라이트와 레프트로 분리하여 저장하는 SPL 레지스터를 포함하여 구성된 것을 특징으로 하는AC-3/MPEG2의 오디오 디코더.
  3. 제2항에 있어서, 상기 바이페이즈-NRZ 변환부는,
    동기클럭에 따라 입력된 데이터를 래치하는 제1 래치부와;
    상기 동기클럭에 따라 상기 제1 래치부의 데이터를 래치하는 제2 래치부와;
    상기 제1 및 제2 래치부의 출력을 부정논리합 연산하는 부정논리합 연산부와; 상기 동기클럭을 입력받고, 상기 부정논리합 연산부에서 연산된 결과를 입력받아 동기클럭 주기로 2번 연속해서 들어온 데이터 값이 같으면 "0"을 1/2의 클럭주기로 출력하고, 다르면 "1"을 1/2의 클럭주기로 출력하는 제3 래치부로 구성된 것을 특징으로 하는 AC-3/MPEG2의 오디오 디코더.
  4. 제1항에 있어서, 상기 SPDIF 송신부는,
    버스트 데이터를 라이트 시프트하면서 출력하는 SHR 레지스터와;
    SPDIF 프리앰블 (X, Y, Z)를 선택하여 내보내는 SHL 레지스터와;
    상기 SHR 레지스터와 연결되고, BIT2에서 BIT26을 참조하여 even parity bit를 생성하는 패리티 비트 생성부와;
    전송 비트의 길이를 저장하는 길이 레지스터와;
    상기 SPDIF 수신부의 데이터 타입인 AC-3, MPEG1, MPEG2 without Extension,MPEG2 with Extension 중의 한가지를 데이터 타입으로 입력받는 데이터 타입 입력부와;
    상기 SHR 레지스터에서 출력되는 NRZ 데이터를 바이페이즈 마크 데이터로 변환하여 상기 SHL 레지스터의 데이터와 다중화되도록하는 NRZ-바이페이즈 변환부를 포함하여 구성된 것을 특징으로 하는 AC-3/MPEG2의 오디오 디코더.
  5. 제4항에 있어서, 상기 NRZ-바이페이즈 변환부는,
    NRZ 데이터를 선택단자로 하여 입력된 데이터와 "1" 값을 다중화하는 다중화부와;
    상기 다중화부에서 출력된 값이 "0"이면 1/2 클럭의 주기마다 인에이블되어 현재 값을 반전시켜 출력하고, 상기 다중화부에서 출력된 값이 "1"이면 1 클럭의 주기마다 인에이블되어 현재 값을 반전시켜 출력하는 래치부와;
    상기 래치부의 출력을 지연시켜 출력하는 디플립플롭으로 구성된 것을 특징으로 하는 AC-3/MPEG2의 오디오 디코더.
KR1019990060620A 1999-12-22 1999-12-22 에이시-3/엠펙2의 오디오 디코더 KR20010057406A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019990060620A KR20010057406A (ko) 1999-12-22 1999-12-22 에이시-3/엠펙2의 오디오 디코더

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019990060620A KR20010057406A (ko) 1999-12-22 1999-12-22 에이시-3/엠펙2의 오디오 디코더

Publications (1)

Publication Number Publication Date
KR20010057406A true KR20010057406A (ko) 2001-07-04

Family

ID=19628341

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019990060620A KR20010057406A (ko) 1999-12-22 1999-12-22 에이시-3/엠펙2의 오디오 디코더

Country Status (1)

Country Link
KR (1) KR20010057406A (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104914329A (zh) * 2015-05-19 2015-09-16 苏州市职业大学 一种spdif接口信号的触发装置和触发方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104914329A (zh) * 2015-05-19 2015-09-16 苏州市职业大学 一种spdif接口信号的触发装置和触发方法
CN104914329B (zh) * 2015-05-19 2017-12-08 苏州市职业大学 一种spdif接口信号的触发装置和触发方法

Similar Documents

Publication Publication Date Title
KR100387330B1 (ko) 오디오 송신장치 및 오디오 수신장치
TW307077B (en) Reformatting of variable rate data for fixed rate communication
US20040105551A1 (en) Audio signal processing apparatus
US20040252036A1 (en) Bit stream conversion system
US20070174523A1 (en) Apparatus and method for generating bitstream of s/pdif data in hdmi
MXPA04001263A (es) Metodo y aparato para preprocesar en un procedimiento central de formato comun, senales de entrada de, o senales de salida para interfases de tipo diferente.
CA2192923C (en) Channel multiplex demultiplex method and channel multiplex demultiplex unit
US20080026734A1 (en) Method And System For Communicating Information Within A Physical Link Layer
KR20010057406A (ko) 에이시-3/엠펙2의 오디오 디코더
CZ20013026A3 (cs) Vysílač pro přenos prvního a druhého digitálního informačního signálu prostřednictvím přenosového média, způsob přenosu, přenosové médium a přijímač
JP3712593B2 (ja) 低s/n比環境で可変長コード化データの送信を可能にするための方法および装置
EP1312076B1 (en) Audio signal transmission
JP4831138B2 (ja) 音声信号伝送装置、音声信号受信装置及び音声信号伝送システム
EP1296486B1 (en) Data transmission apparatus, data reception apparatus, data transmission method, data reception method, and transfer system
KR20000051267A (ko) 피시엠 또는 비트스트림 모드의 자동 전환 기능을 갖는 오디오 디코딩 장치
CN210535351U (zh) Spdif发送控制器、fpga芯片及电子设备
JPH08293859A (ja) 補助データ処理回路
JPH11298999A (ja) 多チャンネルpcm音声信号伝送方式
Yi-Fan et al. Design Of aes/ebu audio transceiver system based on fpga
CN108564957B (zh) 码流的解码方法、装置、存储介质和处理器
JPH0758779A (ja) データ伝送システム
KR0138596B1 (ko) 소용량 전전자 교환기의 중계선 정합장치
KR0157154B1 (ko) 병렬 디지탈 신호처리기를 이용한 오디오 복호화기
KR920001856B1 (ko) 교환기 노드간의 순환 반복 코드 시그날링 검출회로
US20050180537A1 (en) System and method for clock rate determination

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
NORF Unpaid initial registration fee