งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ

งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ

EEET0485 Digital Signal Processing DSP6-1 DSP 6 The Fast Fourier Transform (FFT) การแปลงฟูริเยร์แบบเร็ว ดร. พีระพล ยุวภูษิตานนท์ ภาควิชา วิศวกรรมอิเล็กทรอนิกส์

งานนำเสนอที่คล้ายกัน


งานนำเสนอเรื่อง: "EEET0485 Digital Signal Processing DSP6-1 DSP 6 The Fast Fourier Transform (FFT) การแปลงฟูริเยร์แบบเร็ว ดร. พีระพล ยุวภูษิตานนท์ ภาควิชา วิศวกรรมอิเล็กทรอนิกส์"— ใบสำเนางานนำเสนอ:

1 EEET0485 Digital Signal Processing DSP6-1 DSP 6 The Fast Fourier Transform (FFT) การแปลงฟูริเยร์แบบเร็ว ดร. พีระพล ยุวภูษิตานนท์ ภาควิชา วิศวกรรมอิเล็กทรอนิกส์

2 EEET0485 Digital Signal Processing DSP6-2 เป้าหมาย • นศ รู้จักความหมายของ การแปลงฟูริเยร์ แบบเร็ว (Fast Fourier Transform :FFT) และผลการแปลงจากสัญญาณในโดเมน เวลา • นศ รู้จัก FFT แบบ Decimation in time (DIT) หรือ DIT-FFT

3 EEET0485 Digital Signal Processing DSP6-3 DFT... ช้าเพราะมีการคูณเลข เชิงซ้อน จากเรื่องของ DFT โดย สังเกตว่า แต่ละค่าของ X(k) นั้น ต้องทำการคูณจำนวนเชิงซ้อน ถึง N ค่า คือ x(0) ถึง x(N-1) และ ถ้าต้องการ X(k), โดยที่ k=0 ถึง N-1 ก็ต้องคูณจำนวนเชิงซ้อน อีก N ครั้ง กลายเป็น NxN = N 2 ซึ่งเป็นการกินกำลังงานของโปรเซสเซอร์อย่างมาก !!! เลขเชิงซ้อน

4 EEET0485 Digital Signal Processing DSP6-4 จำนวนการคูณและบวกเลขจริงต่อ การคูณเลขเชิงซ้อนหนึ่งครั้ง ตัวอย่าง วิธีทำ จงหาจำนวนการคูณและบวก สำหรับการเลขเชิงซ้อนข้างล่าง มีการบวกสามครั้ง มีการคูณ สี่ครั้ง โดยที่

5 EEET0485 Digital Signal Processing DSP6-5 จำนวนการคูณเลขเชิงซ้อน สำหรับ DFT กรณี N=2 มีการคูณเลขเชิงซ้อน 4 ครั้ง

6 EEET0485 Digital Signal Processing DSP6-6 จำนวนการคูณเลขเชิงซ้อน สำหรับ DFT ( ต่อ ) มีการคูณเลขเชิงซ้อน 16 ครั้ง กรณี N=4

7 EEET0485 Digital Signal Processing DSP6-7 วิธีลดจำนวนการคูณเลขเชิงซ้อน ลองมาดูว่ากรณี N=2 เราได้ นั่นคือ เราได้

8 EEET0485 Digital Signal Processing DSP6-8 วิธีลดจำนวนการคูณเลขเชิงซ้อน ( ต่อ ) โดยการคำนวณ W N ไว้ก่อน จะทำให้ลดการคูณเลขลง ซึ่งอาจจะทำให้ไม่มีการคูณเลขเชิงซ้อนเลย !!! แต่เนื่องจาก ซึ่งเป็นเลขจำนวนจริง ดังนั้น หรือ

9 EEET0485 Digital Signal Processing DSP6-9 The Fast Fourier Transform (FFT) เร็ว... เพราะสลับลำดับข้อมูล Radix-2 DIT-FFT •FFT เป็นชื่อเรียกโดยรวมๆของ อัลกอริธึม ใดๆ ที่มีการแปลง DFT อย่างเร็ว • วิธี “ แบ่งแยกแล้วปกครอง (Divide and conquer)” ก็เป็นหนึ่งวิธี ที่จะลดจำนวน การคูณเลขเชิงซ้อนลง • ใช้ การแบ่งทางเวลา (Decimation in time) กับ N สัญญาณโดเมนเวลา โดยที่ N เป็นเลขกำลังของ 2 หรือเรียกว่า Radix- 2 ดังนั้นชื่อเต็มเรียกว่า Radix-2 DIT- FFT

10 EEET0485 Digital Signal Processing DSP6-10 บัตเตอร์ฟลาย Butterfly 1 1 Note: จริงๆแล้วแม้ว่า =1 ส่วน = -1, แต่ตอนนี้เราจะนับไปก่อนว่าเป็นเลขเชิงซ้อน เป็นชื่อเรียก ของ กราฟการไหลของสัญญาณ (signal flow graph) โดยหนึ่ง บัตเตอร์ฟลาย มีการคูณเลขเชิงซ้อน สอง ครั้ง

11 EEET0485 Digital Signal Processing DSP6-11 กรณี N=4 DIT-FFT กรณี N =4 โดยที่ เราใช้การ ” สลับ ” ตำแหน่งของข้อมูลแล้ว ” รวม ” (recomposite)

12 EEET0485 Digital Signal Processing DSP6-12 การสลับตำแหน่งและการรวม (recomposite) DFT แบบ 4 จุด = DFT แบบ 2 จุด + W k 4 x DFT แบบ 2 จุด ซึ่งเป็นการแยกออกเป็น DFT แบบ 2 จุดสองชุด ดังนั้น

13 EEET0485 Digital Signal Processing DSP6-13 เรา “ ลดรูป ” สมการลงได้อีก เราจะสร้าง “ บัตเตอร์ฟลาย ” เพื่อแสดงการสร้างสัญญาณ X(k) สำหรับ แต่ละค่าของ k

14 EEET0485 Digital Signal Processing DSP6-14 หา หมายเหตุ : ลูกศรที่ไม่เขียนค่ากำกับไว้ จะเท่ากับการคูณด้วย “1”

15 EEET0485 Digital Signal Processing DSP6-15 หา

16 EEET0485 Digital Signal Processing DSP6-16 หา

17 EEET0485 Digital Signal Processing DSP6-17 หา

18 EEET0485 Digital Signal Processing DSP6-18 ผลลัพท์ท้ายสุดคือ 4-point DIT-FFT 1 1

19 EEET0485 Digital Signal Processing DSP point DIT-FFT จัดรูปแบบใหม่

20 EEET0485 Digital Signal Processing DSP point DIT-FFT ( ต่อ ) จาก สังเกตว่า เหลือเพียงการคำนวณสำหรับ 4-point DFT เท่านั้น

21 EEET0485 Digital Signal Processing DSP6-21 ลดรูปลงได้อีกไหม ? ได้... เพราะเราใช้ประโยชน์จากความเป็นคาบของสัญญาณ

22 EEET0485 Digital Signal Processing DSP point บัตเตอร์ฟลาย 4-point DFT 4-point DFT 4 บัตเตอร์ฟลาย

23 EEET0485 Digital Signal Processing DSP6-23 แต่เรายังลดรูปได้อีก 2-point DFT จาก สมการ 8-point DFT ที่ถูกลดลงเหลือ 4-point DFTx2 ซึ่งก็คือ การแบ่ง 4-point DFT ออกเป็น 2-point DFTx2

24 EEET0485 Digital Signal Processing DSP6-24 แยก 4-point DFT ออกเป็น 2-point DFT สำหรับ x(0),x(2),x(4) และ x(6) 4-point DFT 1 1

25 EEET0485 Digital Signal Processing DSP6-25 สำหรับ x(1),x(3),x(5) และ x(7) 2-point DFT ซึ่งก็คือ การแบ่ง 4-point DFT ออกเป็น 2-point DFTx2

26 EEET0485 Digital Signal Processing DSP point DFT 1 1 แยก 4-point DFT ออกเป็น 2-point DFT สำหรับ x(1),x(3),x(5) และ x(7)

27 EEET0485 Digital Signal Processing DSP6-27 DIT-FFT สำหรับ N=8

28 EEET0485 Digital Signal Processing DSP6-28 สรุป 8-point DFT แตกตัวออกได้จน เหลือ 2-point DFT 8-point DFT 4-point DFT + W k 8 x 4-point DFT 2-point DFT + W 4 k x 2-point DFT

29 EEET0485 Digital Signal Processing DSP6-29 กรณี 8-point DIT-FFT ตัวรวม 8-point DFT (Recomposition to 8-point DFT) ตัวรวม 4-point DFT ตัวรวม 4-point DFT

30 EEET0485 Digital Signal Processing DSP point DFT Recomposition กรณี N-point DIT-FFT

31 EEET0485 Digital Signal Processing DSP6-31 ทำไม FFT ใช้การคำนวณเพียง N log 2 N ? เมื่อเราให้ R เป็น จำนวนขั้น (stage) ที่มีการรวม เราจะได้ว่า จึงได้ สำหรับ 4–point DFT, R=1 สำหรับ 8–point DFT, R=2

32 EEET0485 Digital Signal Processing DSP point DFT จำนวนครั้ง การรวม (R)= point DFT จำนวนครั้ง การรวม (R)= 12 จำนวนขั้นการรวม (R)

33 EEET0485 Digital Signal Processing DSP6-33 จำนวนบัตเตอร์ฟลายต่อคอลัมน์ (B) point DFT point DFT จำนวนคอลัมน์ 2 จำนวน บัตเตอร์ฟลาย (B)= 44 4 จำนวนบัตเตอร์ ฟลาย (B)= 22 จำนวนคอลัมน์ 3

34 EEET0485 Digital Signal Processing DSP6-34 จำนวนการคูณเลขเชิงซ้อน = จ. น. บัตเตอร์ฟลายต่อคอลัมน์ X จ. น. คอลัมน์ X มีการคูณ 2 ครั้งต่อบัตเตอร์ฟลาย

35 EEET0485 Digital Signal Processing DSP6-35 เปรียบเทียบจำนวนครั้งการคูณเลข เชิงซ้อน ของ DFT และ FFT เราลดการคำนวณ จาก เหลือ NDFT N 2 FFT (N log 2 N) : , : 65, ,144 1,048, : 2,048 4,608 10,240

36 EEET0485 Digital Signal Processing DSP6-36 ปรับปรุงบัตเตอร์ฟลาย เราทราบว่า จาก ดังนั้น ทำให้เหลือ จ. น. การคูณเลขเชิงซ้อนเป็น (N/2)log 2 N r= เลขใดๆ 1

37 EEET0485 Digital Signal Processing DSP เหลือจ. น. การคูณเลขเชิงซ้อนเพียง (N/2)log 2 N= 4 บัตเตอร์ฟลาย 4-point DFT ที่ ถูกลดรูป

38 EEET0485 Digital Signal Processing DSP6-38 สรุป •FFT ก็คือ DFT แต่เป็นการสลับตำแหน่งข้อมูล และเทคนิกการรวมสัญญาณ เพื่อย่อยให้จำนวน การแปลงลดรูปลง วิธีการนี้ เรียกว่า Decimation in Time (DIT) และเรียก การ แปลงฟูริเยร์แบบเร็วนี้ว่า DIT-FFT • การแปลงฟูริเยร์แบบเร็ว (FFT) แบบจะทำให้ เหลือการคูณเลขเชิงซ้อนเหลือเพียง Nlog 2 N ครั้ง จาก N 2 ครั้ง เมื่อใช้ DFT • หรืออาจจะลดการคูณเลขเชิงซ้อนลงได้อีกเป็น (N/2) log 2 N หากใช้การปรับปรุงบัตเตอร์ฟลาย


ดาวน์โหลด ppt EEET0485 Digital Signal Processing DSP6-1 DSP 6 The Fast Fourier Transform (FFT) การแปลงฟูริเยร์แบบเร็ว ดร. พีระพล ยุวภูษิตานนท์ ภาควิชา วิศวกรรมอิเล็กทรอนิกส์

งานนำเสนอที่คล้ายกัน


Ads by Google