การเพิ่ม Resolution 1 bit ต้องใช้ DAC เพิ่มอีก 1 เท่าตัว ไม่ใช่ 1 ตัวครับ คือในขณะที่เราเพิ่ม Resolution 1 bit ด้วยวิธีนี้ เราจะได้ Double Output เป็นของแถมด้วย การเพิ่ม Resolution ครั้งต่อไปจึงต้อง Double DAC เข้าไปทีละเท่าตัวครับ อย่างเช่น DI 2x นี่ เทียบเท่ากับ 17/88.2 และ Output 2x, DI 4x ก็ 18/176.4 และ Output 4x ครับ Format ของ i2S จาก 8412/14 มี Word lenght = 64BCK เท่ากับว่าความละเอียดเทียบเท่าสูงสุดที่เราทำได้คือ 22/2.8224MHz ครับ ซึ่งต้องใช้ DAC ถึง 64 ตัวครับ DI 8x จึงเทียบเท่ากับ 19/352.8 เท่านั้นครับ
ขอบคุณพี่ Mr.Tube ที่เข้ามาช่วยตอบครับ ให้จอกที่สามครับ

คือจริงๆผมก็อ่านจากคุณ EC Design ก็อ่านได้เหมือนพี่ Mr.Tube บอกเหมือนกันครับ แต่ลองพลอตกราฟเล่นในคอม ดูเหมือนมันจะไม่ใช่นะครับ
ลองดูกราฟที่ผมพล็อตดูนะครับ รูปแรกเป็น DI DAC แบบใช้ 8 ตัว ทำงานเหลื่อมเวลากันอยู่ 1/8 fs ผมพล็อตอย่างนี้ครับ ใช้ sine function แล้วพลอตค่าตั้งแต่ศูนย์ไปจนถึง 180 องศา ทุกๆ 8 องศา ครับ ก็จะมีข้อมูลอยู่ 180/8 ก็ประมาณ 22 ชุดข้อมูลครับ ค่า sine มันอยู่ระหว่าง 0 กับ 1 ใช่มั้ยครับในช่วง 0 - 180 องศา สมมุติให้เป็น 0 - 1volt ละกันครับ ง่ายดี
![yes Y]](https://www.htg2.club/Smileys/default/57.gif)
จะเห็นว่าการใช้ DI DAC x8 นี้จะได้ output ออกมาขนาดใหญ่ขึ้นถึง 8 เท่าครับ (1v -> 8v) ความถี่ที่ใช้งานจริงก็เป็น fs x 8 ครับ ถ้าใช้ 48khz ก็จะได้ 48x8 = 384khz นั่นเองครับ ส่วน resolution นั้น ดูจากรูปที่สองซึ่งเป็นรูปขยายจะเห็นได้ชัดหน่อย จากเดิม 22 ชุดข้อมูล เพิ่มขึ้นไป 8 เท่า ลองคิดดูว่าถ้าใช้ชุดข้อมูลเดิม 22 ชุด นำไปขยายเป็น 8 เท่า (1v -> 8v) บันไดของข้อมูลที่ได้จะต้องยืดออกไป 8 เท่าด้วย แต่นี่จากกราฟที่ได้เท่ากับเรามีบันไดเพิ่มเข้ามาถึง 8 ขั้นย่อยระหว่าง 1 ชุดข้อมูลจริง ลองคิดดูว่าจากบันใด 1 ขั้น (16bit) ถ้าเพิ่มระดับขั้นบันไดซอยเข้าไปเป็น 8 ขั้นต่อหนึ่งขั้นใหญ่ มันก็เทียบเท่า 24bit ไม่ใช่เหรอครับพี่

คือตอนแรกคิดอย่างงั้นครับ ตอนนี้คิดไปคิดมา 8 ตัวมันได้แค่ 20bit จริงๆด้วยครับ จะเอา 24bit ต้องซัดเข้าไป 64 ตัวจริงๆด้วย ไม่ไหวครับ เยอะเกินไป

เอ แต่คิดไปคิดมา ถ้าเป็น 1543 นี่อาจจะพอมีลุ้นนะครับ

ผมเคยคิดเรื่องนี้ตอนทำต้นแบบเหมือนกันครับ ถ้าเราจะปรับการ Interpolation ให้สอดคล้องกับ Sine Wave ประเด็นแรกคือเราจะทำ Interpolation บน Digital Domain หรือ Analog Domain ครับ
ถ้าเราทำบน Analog Domain อย่างที่ผมกล่าวไปในกระทู้ Balance DAC ว่าข้อมูล Original ของเราเป็น 16/44.1 คือผมหมายถึงว่า Analog Output ของเราจะ Base on Resolution นี้ สิ่งที่เราสามารถเล่นได้ก็จะมีเฉพาะ Time (Sampling Rate) ครับ คือทำให้ DAC แต่ละตัวทำงานเหลื่อมเวลาแบบไม่สม่ำเสมอกัน (เล่นที่ WS ครับ) เพื่อสร้าง Sine Shape ที่ถูกต้องขึ้นมา แต่มันใช้ได้ที่ความถี่เดียวครับ ลองพิจารณาสัญญาณ 20Hz มีคาบ = 1/20 Sec และ 2kHz มีคาบ = 1/2000 Sec ต่างกัน 100 เท่า เราจึงกำหนดรูปแบบการเหลื่อมเวลาแบบไม่สม่ำเสมอไม่ได้ครับ เพราะที่ความถี่อื่นๆ เช่น 1584.252546...Hz คาบเวลาก็จะต่างไปทั้งหมดครับ
ในทาง Analog Domain ผมก็คิดออกแค่นี้นะครับ ถ้าเพื่อนๆ คนอื่นมีความเห็นหรือ Idea อะไรที่น่าจะใช้ได้ก็เอามาแชร์กันครับ บางทีเราอาจจะเอาไปแขร์คืนคุณ ecdesign ใน www.diyaudio.com ได้ครับ
อีกด้านก็คือ Digital Domain ซึ่งก็มี IC Digital Interpolation and Filter ให้เลือกใช้อยู่แล้วหลายเบอร์ และไม่จำเป็นต้องใช้ DAC หลายตัวเหมือนการ Interpolation บน Analog Domain แบบนี้ด้วยครับ ใช้แค่ตัวเดียวก็พอแล้วซึ่งก็เหมือนวงจร DAC Multi-bit ทั่วๆ ไปครับ
สำหรับผมแล้ว ผมคิดว่าในเมื่อผมเลือกมาทาง Non-Oversampling แล้ว คือผมทิ้ง Digital Interpolation and Filter มาแล้วรอบหนึ่งตอนที่เลือกเล่น Non-Oversampling ผมก็จะไม่กลับไปเล่นอีกครับ เว้นแต่ว่ามี Concept ใหม่ๆ นอกจาก FIR ก็ค่อยว่ากันอีกทีครับ
ผมมองที่ digital domain เหมือนกันครับ แนวคิดผมก็คือทำยังไงจะพัฒนา DI DAC เพิ่มได้ แต่อย่างเดียวที่เห็นตอนนี้ที่จะพัฒนารูปคลื่นของมันให้ดีขึ้นได้ก็มีทางเดียวครับ ใช้ข้อมูลจาก true 24bit หรือ true 16bit + interpolation ดีๆครับ
![yes Y]](https://www.htg2.club/Smileys/default/57.gif)
ถ้าผมมีข้อมูล True 24/192 แล้ว ผมจะทำ Non-OS 24bit ครับ มี IC ให้ใช้เบอร์เดียวคือ PCM1704 ซึ่ง IC 1 คู่ น่าจะถูกกว่า TDA1541A 8 ตัวในตอนนี้ครับ ทีนี้ลองดูเรื่องปริมาณข้อมูลนะครับ 24/192 แทนค่า Amplitude ได้ 16.78 ล้านค่า ในขณะที่ 16/48 แทนค่า Amplitude ได้แค่ 65,536 ค่าครับ DAC 8 ตัวยังไงก็ไม่สามารถชดเชยความต่างด้าน Amplitude Level นี้ได้ครับ แถมเรายัง Down Sampling Rate อีกด้วย ข้อมูลหายไปเยอะมากเลยครับ
ถ้าให้ผมเลือกผมก็คงทำแบบพี่ Mr.Tube เหมือนกันครับ เพราะคิดว่าไอซี high speed สมัยใหม่มันคงไม่ถอดรหัสผิดพลาดอะไรมากมายครับ เพียงแต่โจทย์ตัวนี้คือต้องการทำให้พวก DAC 16 bit สามารถสร้าง resolution ที่สูสีกับ พวก DAC บิตสูงๆได้ครับ เลยเกิดไอเดียขึ้นมา
แสดงว่าพี่ Mr.Tube อาจจะยังไม่เข้าใจ concept ของผมครับ งั้นยกตัวอย่าง True 24/192 ละกันครับ เรา down sampling ก็จริงครับ แต่อยู่ในรูปของ transfer function ครับ ที่พอเอาไปจ่ายให้ DI DAC 64x ทำงานเหลื่อมกันอยู่ 1/64 fs แล้วรูปคลื่นมันกลับมามี resolution เท่าเดิมครับ แต่มีขนาดใหญ่ขึ้น 64 เท่า

(ดูท่าทางมันจะเป็น ultimate nos(os) dac จริงๆนะเนี่ย)
คือถ้าเรา down sampling ลงมาเป็น 16/48 เหมือนกันหมดทั้ง 64 ตัว แล้วให้ 64x มันทำงาน เราก็จะได้ DI DAC ปกติ ถูกมั้ยครับ แต่ถ้าเราหา function ที่สามารถเติม "เนื้อ" ที่แหว่งไปจากรูปคลื่นโดยกระจายใส่ DAC ทั้ง 64 ตัว นี้ได้ รูปคลื่นทั้ง 64 ชุดนี้อาจจะหน้าตาไม่เหมือนต้นฉบับ แต่พอเอามาเหลื่อมกันทำงานอยู่ fs/64 แล้วได้รูปคลื่นเดิมออกมา ใหญ่ขึ้น resolution สูงขึ้นครับ
