35Bit

TEAC/ESOTERICのプレイヤーで35bit処理ってのがあって、どっかで聞いた値だなあと思っていたが、XilinxFPGAだった。


Spartan-6に搭載されているDSP48A1というDSPブロックは、高速化かロジック規模を抑えるためなのか、18bit×18bitの乗算を両方とも符合あり扱いで行うようになっていて特にモード切替とかがないため、符号なしの場合は、符号ビットを0にして1bit少ない値でしか使えない。
なので、複数個のDSP48A1を使用するか、または時分割で18bitよりも大きいデータを処理しようとした場合、上位18bit(符号あり)と下位17bit(符号なし)という数になり、35bit(符号あり)のデータとして処理される。
…と、さっきのデータシートのP29からに書いてある。


フィルタの演算はこれでOKで、あとは32Bit DACが8個あればシフト+切り捨てられるデータをDEMとかの適当な方法で埋め込んでトータルで35bitになるようにしてるんだと思う。
DACは32bitのAK4399(2ch)が片chの基板に4個乗っているので、おそらくその通りだと思う。