DSP 10 Multirate Signal Processing การประมวลผลแบบหลายอัตราสุ่ม ดร. พีระพล ยุวภูษิตานนท์ ภาควิชา วิศวกรรมอิเล็กทรอนิกส์ EEET0485 Digital Signal Processing
EEET0485 Digital Signal Processing Content ทำไมต้องมีการประมวลผลแบบหลายอัตราสุ่ม การเปลี่ยนอัตราสุ่มโดยแปลงเป็นสัญญาณ แอนะลอกก่อน การดาวน์แซมปลิ้ง (Downsampling) และ อัพแซมปลิ้ง (Upsampling) เดซิเมชัน (Decimation ) และอินเตอร์โปเลชัน (Interpolation) การแปลงอัตราสุ่มด้วยเลขไม่เป็นจำนวนเต็ม EEET0485 Digital Signal Processing
ทำไมต้องมีการประมวลผลแบบหลายอัตราสุ่ม เหตุผล... อุปกรณ์ดิจิตอลต่างมาตรฐาน (CD DAT) ทำงานที่ต่างอัตราสุ่มกัน 2. เพื่อลดต้นทุนการผลิต เช่น การทำ Oversampling ใน CD 3. เพื่อลด noise ในย่านความถี่เสียง (ด้วยการทำ oversampling กับ noise shaping) EEET0485 Digital Signal Processing
Multitrate Signal Processing รวมความถึง Downsampling, Upsampling Decimation Interpolation และ Oversampling Downsampling คือ การลดอัตราสุ่มลง โดยสุ่มจากสัญญาณสุ่มอีกครั้ง Upsampling คือ การเพิ่มอัตราสุ่มขึ้น โดยการใส่ศูนย์ zero padding Oversampling คือ การเพิ่มอัตราสุ่ม ให้มากกว่า Nyquist frequency EEET0485 Digital Signal Processing
ประโยชน์ของ oversampling ใน CD เพื่อลดการใช้ตัวกรองที่มีอันดับสูงๆ (ราคาแพง) Oversampling ตัวกรอง LPF Nyquist frequency (fs/2) ตัวกรองต้องชันมากเพื่อกัน Aliasing ความชันน้อยจึง ใช้ตัวกรองที่อันดับต่ำๆ ได้ (ใช้อุปกรณ์น้อยลง,ราคาถูกลง) EEET0485 Digital Signal Processing
EEET0485 Digital Signal Processing Quantization การทำ quantization ทำให้เกิด Noise EEET0485 Digital Signal Processing
EEET0485 Digital Signal Processing Signals: 3 Bit Vs 8 Bit 3 Bit 8 Bit EEET0485 Digital Signal Processing
Quantization Errors: 3 Bit Vs 8 Bit EEET0485 Digital Signal Processing
สเปคตรัมของสัญญาณ “ซ้อนทับ” กับ noise ความถี่ไนควิสต์ (fN หรือ fs/2 ) ความถี่สุ่ม fs สเปคตรัมของสัญญาณ รบกวนควอนไตซ์ ก) ข) สเปคตรัมของสัญญาณเสียง EEET0485 Digital Signal Processing
Oversampling - Noise shaping Shaper ย่านความถี่เสียง ระดับ noise กรณีไม่มี noise Shaper Noise ถูก “เลื่อน” ตำแหน่งไปเหนือย่านความถี่เสียง ใน CD ระบบ MASH (Panasonic) ใช้วงจร third-order noise shaper EEET0485 Digital Signal Processing
การแปลงอัตราสุ่มโดยการแปลงเป็นแอนะลอกก่อน D/A A/D สัญญาณ ดิจิตอล fs1 สัญญาณ แอนะลอก สัญญาณ ดิจิตอล fs2 หาก fs1 < fs2 ก็จะไม่มีปัญหาแต่หาก fs2 < fs1 อาจจะเกิด aliasing ได้ EEET0485 Digital Signal Processing
EEET0485 Digital Signal Processing
EEET0485 Digital Signal Processing ตัวอย่าง ลำดับ ถูกจำกัดแถบความถี่ (Bandlimited)ไว้ สัญญาณ นี้ถูกdownsampling เพื่อสร้างสัญญาณ จงหาว่า ค่าที่มากสุดของ D ที่จะทำให้ไม่เกิด aliasing ใน y(n) วิธีทำ D/A A/D EEET0485 Digital Signal Processing
EEET0485 Digital Signal Processing ความถี่ตัดของระบบ D/A คือ และ ความถี่สุ่ม ดังนั้น เพื่อไม่ให้เกิด aliasing หรือความถี่สุ่มของ A/D จะต้องมากกว่า 2 เท่าของ ดังนั้น EEET0485 Digital Signal Processing
EEET0485 Digital Signal Processing หากเลือกใช้ ดังนั้นเมื่อเลือก D =3 จะได้ y(n) เท่ากับ x(n) (ไม่เกิดaliasing) EEET0485 Digital Signal Processing
EEET0485 Digital Signal Processing Downsampling เป็นการลดอัตราสุ่มลงไป D เท่า EEET0485 Digital Signal Processing
ก่อนและหลังdownsampling dsp_10_2.eps EEET0485 Digital Signal Processing
ผลตอบสนองความถี่ downsampling dsp_10_3.eps EEET0485 Digital Signal Processing
EEET0485 Digital Signal Processing Upsampling EEET0485 Digital Signal Processing
ก่อนและหลัง upsampling dsp_10_4.eps EEET0485 Digital Signal Processing
ผลตอบสนองความถี่ upsampling dsp_10_5.eps EEET0485 Digital Signal Processing
ทำไม “ขนาด” ผลตอบสนองของ downsampling และ upsampling จึงไม่เท่ากัน? เราอาจจะมองได้ว่า downsampling คือการ sampling สัญญาณ ถูก sampling มาแล้ว EEET0485 Digital Signal Processing
การsampling ทำให้ขนาดลดลง D เท่า แต่แบนด์วิทเพิ่มขึ้น D เท่า จากสมการแอลิแอส (aliasing formula) สเกลค่า sampling downsampling EEET0485 Digital Signal Processing
และอาจทำให้เกิด aliasing ได้ หาก D=3 เกิด aliasing EEET0485 Digital Signal Processing
เดซิเมชัน (Decimation) เดซิเมเตอร์ (decimator)= downsampler+ตัวกรองต่ำผ่าน (แก้ aliasing) ความถี่ตัด LPF อัตราขยาย = 1 EEET0485 Digital Signal Processing
อินเตอร์โปเลชัน (Interpolation) อินเตอร์โปเลเตอร์ (interpolator)= upsampler+ตัวกรองต่ำผ่าน LPF อัตราขยาย = ความถี่ตัด EEET0485 Digital Signal Processing
ความแตกต่างของ upsampling และ Interpolation EEET0485 Digital Signal Processing dsp_10_6.eps
ระบบบันทึกและเล่นกลับของ Compact Disc ความถี่สุ่ม 64fs,1 bit fs,20 bit fs,20 bit 64fs,1 bit 1-bit ADC Decimation filter PCM Recorder Interpolation filter Delta-Sigma Modulator front end 64fs,1 bit Pulse code modulation Analogue Low pass filter ฝั่งบันทึก (record) ฝั่งเล่นกลับ (playback) EEET0485 Digital Signal Processing
การแปลงอัตราสุ่มสัญญาณด้วยเลขไม่เป็นจำนวนเต็ม ใช้การ cascade บล็อกอินเตอร์โปเลชัน ด้วย บล็อกเดซิเมชั่น เพื่อให้ได้ อัตราการแปลงที่ไม่เป็นเลขจำนวนเต็ม อัตราขยาย = อัตราขยาย = 1 LPF LPF อัตราสุ่มของ y(n) อัตราสุ่มของ x(n) = EEET0485 Digital Signal Processing
EEET0485 Digital Signal Processing เมื่อรวมบล็อกตัวกรองทั้งสองจะได้ LPF ตัวกรอง LPF ที่ได้จะมี อัตราขยาย = และ และความถี่ตัดจะเป็นค่าที่น้อยสุด ระหว่าง กับ EEET0485 Digital Signal Processing
EEET0485 Digital Signal Processing ตัวอย่าง หากมีสัญญาณ x(n) ที่ถูกสุ่มมาจาก xa(t) ด้วยความถี่สุ่ม 8 kHz แต่เราต้องการ สัญญาณ y(n) ที่ มีความถี่สุ่ม 10 kHzจาก x(n) จงหาอัตราการแปลงความถี่ วิธีทำ เราสามารถ เปลี่ยนอัตราการสุ่มได้ง่ายๆ จาก ซึ่งไม่เป็นเลขจำนวนเต็ม ! LPF fsx= 8 kHz fsy=10 kHz LPF มี อัตราขยายเท่ากับ 5 และมีความถี่คัทออฟเท่ากับ เรเดียน EEET0485 Digital Signal Processing
EEET0485 Digital Signal Processing ตัวอย่าง ต้องการถ่ายสัญญาณดิจิตอลจาก CD ลง DAT (Digital Audio Tape) CD มีอัตราสุ่ม 44.1 kHz DAT มีอัตราสุ่ม 48 kHz อัตราการแปลง จงปรับอัตราส่วนการสุ่มสัญญาณเพื่อให้ได้อัตราสุ่มที่ต้องการ EEET0485 Digital Signal Processing
EEET0485 Digital Signal Processing ทำได้โดยการคูณอัตราส่วนการสุ่มให้มีค่าสูงๆ และ หา อัตราส่วนที่เป็นจำนวนเต็มที่น้อยที่สุด วิธีทำ LPF fsDAT=48 kHz fscd= 44.1 kHz LPF มี อัตราขยายเท่ากับ 160 และมี เรเดียน สำหรับ SACD ก็จะใช้การแปลงอัตราสุ่มเช่นนี้เหมือนกัน EEET0485 Digital Signal Processing
EEET0485 Digital Signal Processing Super Audio CD 64fs,1 bit 64fs,1 bit 1-bit ADC PCM Recorder front end Pulse code modulation Analogue Low pass filter ฝั่งบันทึก (record) ฝั่งเล่นกลับ (playback) EEET0485 Digital Signal Processing
การแปลงอัตราสุ่มใน SACD EEET0485 Digital Signal Processing
EEET0485 Digital Signal Processing สรุป การ decimation = downsampling + lowpass การ interpolation = upsampling + lowpass สามารถใช้การ Decimation และ Interpolation ร่วมกันเพื่อให้ได้อัตราส่วนการแปลงอัตราสุ่มไม่เป็นจำนวนเต็ม เทคโนโลยีใหม่ๆ เช่น SACD ก็ยังใช้ทฤษฎีของการประมวลผลหลายอัตราสุ่ม เช่น oversampling และ การแปลงอัตราสุ่ม EEET0485 Digital Signal Processing