« 128倍スーパーサンプリングDACアップデート | トップページ | PCM1702 16倍 20Bit スーパーサンプリングDAC 基板頒布のお知らせ »

2021年2月22日 (月)

PCM1702 16倍 20Bit スーパーサンプリングDAC試作

PCM1702 16x 20Bit Super Sampling DAC Prototype


Ss1702pcb
写真1.今回開発したPCM1702 16倍スーパーサンプリングDAC基板
photo1. PCM1702 16x super sampling DAC board

● 取扱説明書製作マニュアル回路図、寸法図電気学会論文を公開しますので、興味のある方はご覧ください。
● 準備が整い次第頒布開始予定です。

● Instruction manuals , manufacturing manuals , circuit diagrams, dimensional drawings , and IEEJ papers will be published, so please have a look if you are interested.
● Distribution will start as soon as preparations are complete.

3次自然スプライン関数で補間する128倍スーパーサンプリングDACについてはすでに評価用の基板を頒布しており、この基板では128倍スーパーサンプリングデータをマルチプライング16BitDAC(DAC8820)から出力、16倍および8倍 24BitスーパーサンプリングデータをI2SDAC(AK4490,PCM5102)から出力し、さらにピンヘッダからI2Sで最大16倍 24Bitスーパーサンプリングデータ、およびPCM1702用8倍20Bitスーパーサンプリングデータを出力し、評価用基板としては考え得るほぼすべての要求を満たす仕様になっている。

ただ、この中でPCM1702用のデータが8倍スーパーサンプリングとなっており、このデバイスの最大スペックである16倍が出せなかった。これはなぜかというと、PCM1702用のデータとクロックをI2S信号から生成しており、I2Sは左右チャンネルのデータを1本のデータ線で転送するため、クロックに対して転送レートが半分になってしまうためだ。PCM1702はモノラルのデバイスなので、I2Sと同じ転送レートならクロックは半分だが、そのために専用のクロックとデータを生成する必要がある。

今回は、PCM1702専用基板と専用のFPGAを開発して、PCM1702で16倍20Bitスーパーサンプリング再生ができたので報告する。

PCM1702は有名なPCM1704の前身ともいえるオーディオ用20bitマルチビットDACで、マルチビットDACの欠点であるグリッチノイズやゼロクロス歪を抑えるサインマグニチュード方式を採用している。マルチビットDACは通常2の補数方式でデータを受け取るため、たとえば8ビットのデータは次のように-128~127で表現される。

We have already distributed a board for evaluation of the 128x supersampling DAC that interpolates with the 3rd-order natural spline function, and this board outputs 128x supersampling data from the multiplexing 16Bit DAC (DAC8820), 16x and 8x. 24Bit supersampling data is output from I2SDAC (AK4490, PCM5102), and up to 16 times 24Bit supersampling data in I2S and 8x 20bit supersampling data for PCM1702 are output from the pin header, almost everything that can be considered as an evaluation board. It is a specification that meets the requirements of.

However, among them, the data for PCM1702 is 8 times super sampling, and 16 times, which is the maximum spec of this device, could not be obtained. The reason for this is that the data and clock for PCM1702 are generated from the I2S signal, and since I2S transfers the data of the left and right channels with one data line, the transfer rate is halved with respect to the clock. This is because it will be stored. Since the PCM1702 is a monaural device, the clock is halved at the same transfer rate as I2S, but it is necessary to generate a dedicated clock and data for that purpose.

This time, we have developed a dedicated board for PCM1702 and a dedicated FPGA, and reported that PCM1702 was able to perform 16x 20-bit supersampling playback.

The PCM1702 is a 20-bit multi-bit DAC for audio that can be said to be the predecessor of the famous PCM1704, and uses a sine magnitude method that suppresses glitch noise and zero-cross distortion, which are the drawbacks of multi-bit DACs. Since a multi-bit DAC usually receives data in the two's complement system, for example, 8-bit data is represented by -128 to 127 as follows.

127  0111 1111

    ……

   1 0000 0001

     0 0000 0000

    -1  1111 1111

    ……

-128  1000 0000

 

ここで、値が-1から0に変化するところに注目すると、1111 1111 → 0000 0000と、すべてのビットが反転する。これにより、ビットの切り替わりで発生するグリッチノイズや、変換誤差によるゼロクロス歪が発生する。これらのノイズや歪はゼロ前後で最大となるため、小音量時にとくに問題となる。
PCM1702やPCM1704はサインマグニチュード方式により、符号ビット(MSB)と値ビット(2SB以下)を分離して処理することで、上記のノイズの発生を抑えている。

前回の評価基板は128倍スーパーサンプリングだった。これは、もともとの各データに対し補間用にスプライン関数を計算し、データ間を127点で補間するものだ。スプライン関数が計算できてしまえば理論上は何倍の補間も可能だが、使用したDAC8820のスペックから、128倍が限度だった。
I2Sの場合はどうかというと、最大サンプリングレートを768kHzとしているものが多いので、768/48=16倍とした。内部演算はすべて24Bitで行っているので、出力も24Bitとしている。

128倍はDAC8820で16bit出力した場合のSS(スーパーサンプリング)比だが、内部演算は24bitで行っているため、対応できるデバイスがあれば最大24bitまで拡張できる。
今回評価したPCM1702は20bitなので、16bitに対してビット分解能は16倍となり、SS比が16倍でもビット分解能が16倍なのでトータルで256倍相当と考えることもできる。(時間軸とビット分解能のどちらがどれだけ聴感に影響を与えるかはわからないが……)

以下に評価結果を示す。

図1、図2が8kHz正弦波の16倍SSとNOSの波形、図3、図4が1kHz矩形波の16倍SSとNOSの波形、図5はPCM1702に入力しているクロックとデータ。

Here, paying attention to the place where the value changes from -1 to 0, all the bits are inverted as 1111 1111 → 0000 0000. As a result, glitch noise generated by bit switching and zero cross distortion due to conversion error occur. Since these noises and distortions are maximized around zero, they are particularly problematic at low volume.
The PCM1702 and PCM1704 use the sine magnitude method to separate the sign bit (MSB) and the value bit (2SB or less) for processing, thereby suppressing the generation of the above noise.

The previous evaluation board was 128 times super sampling. It calculates a spline function for interpolation for each original data and interpolates between the data at 127 points. Theoretically, if the spline function can be calculated, it is possible to interpolate many times, but from the specifications of the DAC8820 used, the limit was 128 times.
In the case of I2S, the maximum sampling rate is often 768kHz, so 768/48 = 16 times. Since all internal operations are performed in 24 Bit, the output is also set to 24 Bit.

128 times is the SS (super sampling) ratio when 16 bits are output by DAC8820, but since the internal calculation is performed by 24 bits, it can be expanded up to 24 bits if there is a compatible device.
Since the PCM1702 evaluated this time is 20 bits, the bit resolution is 16 times that of 16 bits, and even if the SS ratio is 16 times, the bit resolution is 16 times, so it can be considered to be equivalent to 256 times in total. (I don't know how much the time axis or bit resolution affects the sense of hearing ...)

The evaluation results are shown below.

Figures 1 and 2 show 16x SS and NOS waveforms of an 8kHz sine wave, Figures 3 and 4 show 16x SS and NOS waveforms of a 1kHz square wave, and Figure 5 shows the clock and data input to the PCM1702.

Ss1702ss8k
図1.PCM1702  16倍ス-パーサンプリング 8kHz正弦波
Figure 1. PCM1702 16x super sampling 8kHz sine wave

 

Ss1702nos8k
図2.PCM1702  NOS 8kHz正弦波
Figure 2. PCM1702 NOS 8kHz sine wave

 

Ss1702sstr1k
図3.PCM1702  16倍ス-パーサンプリング 1kHz矩形波
Figure 3. PCM1702 16x super sampling 1kHz square wave 


Ss1702nostr1k
図4.PCM1702  NOS 1kHz矩形波
Figure 4. PCM1702 NOS 1kHz square wave

 

Tek0002
図5.PCM1702への入力クロック(22.5792MHz)とデータ
Figure 5. Input clock (22.5792MHz) and data to PCM1702

 

CDからリッピングした44.1kHz、16bit音楽データを試聴しているが、非常に良好で、スーパーサンプリングON/OFFでは特にハイハットやボーカルの息づかいなどの高域のきめ細かさに差が出ていることがわかる。
I'm listening to 44.1kHz, 16bit music data ripped from a CD, but it's very good, and it can be seen that there is a difference in the fineness of the high range such as hi-hat and vocal breathing especially with super sampling ON / OFF. ..


|

« 128倍スーパーサンプリングDACアップデート | トップページ | PCM1702 16倍 20Bit スーパーサンプリングDAC 基板頒布のお知らせ »

コメント

コメントを書く



(ウェブ上には掲載しません)


コメントは記事投稿者が公開するまで表示されません。



« 128倍スーパーサンプリングDACアップデート | トップページ | PCM1702 16倍 20Bit スーパーサンプリングDAC 基板頒布のお知らせ »