Radix-4 FFT so với Radix-2


10

Việc triển khai radix-4 có nhanh hơn so với FFT radix-2 được mã hóa tương đương không? Và nếu vậy, tại sao nó sẽ nhanh hơn?

Câu trả lời:


5

Nó phụ thuộc. Về mặt lý thuyết, bạn có thể tiết kiệm một vài lần nhân với radix-4 vì radix-4 có 1/4 số bướm và 3 mpy + 8 thêm cho mỗi bướm (nếu được cấu trúc đúng cách) và radix 2 có 1 mpy + 2 thêm cho mỗi bướm .

Vì vậy, về mặt nhân lên, nó tốt hơn một chút, tuy nhiên có độ phức tạp cao hơn về cấu trúc mã, xử lý ngoại lệ, quản lý hệ số, quản lý đăng ký, địa chỉ ngược chữ số, v.v.

Vì vậy, nó chỉ là một lợi thế nếu số lượng mpy là yếu tố giới hạn mà đối với hầu hết các phần cứng ngày nay không phải là trường hợp.


2

ở đây ! bạn có thể tìm thấy lời giải thích về sự khác biệt chính giữa hai thuật toán cho FFT. Ở phần cuối của tài liệu có một số bảng trong đó có thể lưu ý rằng, nếu kích thước của dữ liệu tăng lên, hiệu suất của radix-4 fft tốt hơn radix-2.


2

một cách đơn giản để nhìn vào một FFT radix-4 là nghĩ về một con bướm radix-4 như chứa 4 con bướm radix-2; 2 con bướm trong một lần vượt qua và 2 con bướm trong lần sau. và các yếu tố twiddle là như nhau ngoại trừ yếu tố twiddle phức tạp cho những con bướm bị tắt bởi độ lệch pha của . nhưng tất cả điều đó có nghĩa là hoán đổi bằng và hoán đổi một số dấu cộng và dấu trừ. do đó, alg FFT radix-4 của bạn chỉ cần đọc trong 4 giá trị phức một lần, tải vào câu đố phức tạp một lần, thực hiện một loạt số học và lưu trữ 4 kết quả một lần. bạn thực hiện một lần chuyền radix-4 và bạn hoàn thành nhiệm vụ tương tự như hai lần chuyền radix-2.π2sin()cos()

số lượng nhân và bổ sung ròng tôi nghĩ là như nhau, nhưng bướm radix-4 có thể được thực hiện trong ngân hàng đăng ký bộ xử lý (tôi nghĩ có khoảng 16 thanh ghi dấu phẩy động khác nhau và bạn cần 8 cho phần thực và phần ảo trong số 4 giá trị, 2 thanh ghi cho twidd sin và cosine, và có thể một số thanh ghi khác hoặc hai để ghi lại). Điều này nhanh hơn làm trong bộ nhớ.


-2

Trong cơ số 2, số lượng mẫu tính theo công suất là 2 công suất nhưng trong cơ số 4, số lượng mẫu thuộc về công suất là 4.


1
Tôi sẽ đề nghị giải thích tại sao điều đó có ảnh hưởng đến tốc độ thuật toán, điều này không rõ ràng từ giá trị số mũ.
MBaz
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.