Phần 6: Bộ xử lý tín hiệu số (DSP)

01/10/2019
bởi carpad.vn admin

Bộ xử lý tín hiệu số (DSP) là gì?

Bộ xử lý tín hiệu số (Digital Signal Processor - DSP) là một bộ vi xử lý chuyên dụng (hoặc khối SIP), với kiến trúc được tối ưu hóa cho nhu cầu hoạt động của xử lý tín hiệu số.

Mục tiêu của DSP thường là đo lường, lọc hoặc nén các tín hiệu tương tự trong thế giới thực liên tục. Hầu hết các bộ vi xử lý đa năng cũng có thể thực hiện thành công các thuật toán xử lý tín hiệu số, nhưng có thể không theo kịp quá trình xử lý đó liên tục trong thời gian thực. Ngoài ra, DSP chuyên dụng thường có hiệu suất năng lượng tốt hơn, do đó chúng phù hợp hơn trong các thiết bị di động. DSP thường sử dụng các kiến trúc bộ nhớ đặc biệt có thể tìm nạp nhiều dữ liệu hoặc hướng dẫn cùng một lúc.

Tổng quan

Các thuật toán xử lý tín hiệu số thường đòi hỏi một số lượng lớn các phép toán phải được thực hiện nhanh chóng và lặp lại trên một loạt các mẫu dữ liệu. Tín hiệu (từ cảm biến âm thanh hoặc video) liên tục được chuyển đổi từ analog sang kỹ thuật số, được thao tác kỹ thuật số và sau đó được chuyển đổi trở lại dạng analog. Nhiều ứng dụng DSP có các ràng buộc về độ trễ; nghĩa là, để hệ thống hoạt động, hoạt động DSP phải được hoàn thành trong một khoảng thời gian cố định và việc xử lý chậm là không khả thi.
Hầu hết các bộ vi xử lý và hệ điều hành có mục đích chung có thể thực hiện thành công thuật toán DSP, nhưng không phù hợp để sử dụng trong các thiết bị cầm tay như điện thoại di động và PDA vì những hạn chế về hiệu quả sử dụng điện. Tuy nhiên, bộ xử lý tín hiệu số chuyên dụng sẽ có xu hướng cung cấp giải pháp chi phí thấp hơn, với hiệu suất tốt hơn, độ trễ thấp hơn và không có yêu cầu làm mát chuyên dụng hoặc nguồn tiêu thụ lớn.
Những cải tiến hiệu suất như vậy đã dẫn đến việc đưa vào xử lý tín hiệu số trong các vệ tinh liên lạc thương mại nơi hàng trăm hoặc thậm chí hàng ngàn bộ lọc analog, công tắc, bộ biến tần, v.v ... được yêu cầu nhận và xử lý tín hiệu liên kết lên và sẵn sàng cho chúng liên kết xuống được thay thế bằng DSP chuyên dụng có lợi ích đáng kể đối với trọng lượng, mức tiêu thụ điện năng, độ phức tạp / chi phí xây dựng, độ tin cậy và tính linh hoạt của hoạt động. Ví dụ, các vệ tinh SES-12 và SES-14 từ nhà điều hành SES được Airbus Defense và Space chế tạo với 25% công suất sử dụng DSP.


Kiến trúc của bộ xử lý tín hiệu số được tối ưu hóa đặc biệt cho xử lý tín hiệu số. Hầu hết cũng hỗ trợ một số tính năng như bộ xử lý ứng dụng hoặc vi điều khiển, vì xử lý tín hiệu hiếm khi là nhiệm vụ duy nhất của hệ thống. Một số tính năng hữu ích để tối ưu hóa thuật toán DSP được nêu dưới đây.

Kiến trúc

Kiến trúc phần mềm

Theo tiêu chuẩn của bộ xử lý đa năng, các bộ hướng dẫn DSP thường rất bất thường; trong khi các bộ hướng dẫn truyền thống được tạo thành từ các hướng dẫn chung hơn cho phép chúng thực hiện nhiều hoạt động khác nhau, các bộ hướng dẫn được tối ưu hóa cho xử lý tín hiệu số chứa các hướng dẫn cho các hoạt động toán học phổ biến xảy ra thường xuyên trong tính toán DSP. Cả hai tập lệnh truyền thống và tối ưu hóa DSP đều có thể tính toán bất kỳ hoạt động tùy ý nào nhưng một thao tác có thể yêu cầu nhiều lệnh ARM hoặc x86 để tính toán có thể chỉ cần một lệnh trong tập lệnh được tối ưu hóa DSP.

Một hàm ý cho kiến trúc phần mềm là các thói quen mã lắp ráp được tối ưu hóa thủ công thường được đóng gói vào các thư viện để sử dụng lại, thay vì dựa vào các công nghệ biên dịch tiên tiến để xử lý các thuật toán thiết yếu. Ngay cả với trình biên dịch tối ưu hóa trình biên dịch hiện đại. hiệu quả hơn và nhiều thuật toán phổ biến liên quan đến tính toán DSP được viết bằng tay để tận dụng tối đa lợi thế của tối ưu hóa kiến trúc.

Kiến trúc phần cứng

Trong kỹ thuật, kiến trúc phần cứng đề cập đến việc xác định các thành phần vật lý của hệ thống và mối quan hệ qua lại của chúng. Mô tả này, thường được gọi là mô hình thiết kế phần cứng, cho phép các nhà thiết kế phần cứng hiểu cách các thành phần của họ phù hợp với kiến trúc hệ thống và cung cấp cho các nhà thiết kế thành phần phần mềm thông tin quan trọng cần thiết cho phát triển và tích hợp phần mềm. Định nghĩa rõ ràng về kiến trúc phần cứng cho phép các ngành kỹ thuật truyền thống khác nhau (ví dụ, kỹ thuật điện và cơ khí) phối hợp hiệu quả hơn với nhau để phát triển và sản xuất máy móc, thiết bị và linh kiện mới.

Phần cứng cũng là một biểu thức được sử dụng trong ngành công nghiệp kỹ thuật máy tính để phân biệt rõ ràng phần cứng (máy tính điện tử) với phần mềm chạy trên nó. Nhưng phần cứng, trong các ngành kỹ thuật tự động hóa và phần mềm, không chỉ đơn giản là một máy tính nào đó. Một chiếc ô tô hiện đại chạy nhiều phần mềm hơn tàu vũ trụ Apollo. Ngoài ra, máy bay hiện đại không thể hoạt động mà không chạy hàng chục triệu hướng dẫn máy tính được nhúng và phân phối trên toàn máy bay và cư trú trong cả phần cứng máy tính tiêu chuẩn và trong các thành phần phần cứng chuyên dụng như cổng logic có dây IC, thiết bị analog và hybrid và các thành phần kỹ thuật số khác. Nhu cầu mô hình hiệu quả làm thế nào các thành phần vật lý riêng biệt kết hợp với nhau để tạo thành các hệ thống phức tạp là rất quan trọng đối với nhiều ứng dụng, bao gồm máy tính, trợ lý kỹ thuật số cá nhân (PDA), điện thoại di động, dụng cụ phẫu thuật, vệ tinh và tàu ngầm.

Lịch sử hình thành và phát triển của DSP

Trước sự ra đời của các chip DSP độc lập được thảo luận dưới đây, hầu hết các ứng dụng DSP đã được triển khai bằng bộ xử lý bit-slice. Chip bit-slice AMD 2901 với họ linh kiện là một lựa chọn rất phổ biến. Có các thiết kế tham khảo từ AMD, nhưng các chi tiết của một thiết kế thường là ứng dụng cụ thể. Các kiến trúc bit-slice này đôi khi sẽ bao gồm một chip nhân ngoại vi. Ví dụ về các số nhân này là một chuỗi từ TRW bao gồm TDC1008 và TDC1010, một số trong đó bao gồm một bộ tích lũy, cung cấp chức năng tích lũy đa cấp (MAC) cần thiết.

Năm 1976, Richard Wiggins đã đề xuất khái niệm Speak & Spell cho Paul Breedlove, Larry Brantingham và Gene Frantz tại cơ sở nghiên cứu Dallas của Texas. Hai năm sau, vào năm 1978, họ đã sản xuất chương trình Speak & Spell đầu tiên, với trung tâm công nghệ là TMS5100, bộ xử lý tín hiệu số đầu tiên trong ngành. Nó cũng đặt các mốc quan trọng khác, là con chip đầu tiên sử dụng mã hóa dự đoán tuyến tính để thực hiện tổng hợp giọng nói.

Năm 1978, Intel phát hành 2920 dưới dạng "bộ xử lý tín hiệu tương tự". Nó có bộ ADC / DAC trên chip với bộ xử lý tín hiệu bên trong, nhưng nó không có hệ số nhân phần cứng và không thành công trên thị trường. Năm 1979, AMI đã phát hành S2811. Nó được thiết kế như một thiết bị ngoại vi vi xử lý và nó phải được khởi tạo bởi máy chủ. S2811 cũng không thành công trên thị trường.
Vào năm 1980, các DSP hoàn chỉnh, độc lập đầu tiên - NEC NECPD7720 và AT & T DSP1 - đã được trình bày tại Hội nghị Mạch rắn Quốc tế '80. Cả hai bộ xử lý được lấy cảm hứng từ nghiên cứu về viễn thông PSTN.
Altamira DX-1 là một DSP đầu tiên khác, sử dụng các đường ống bốn số nguyên với các nhánh bị trì hoãn và dự đoán nhánh.
Một DSP khác được sản xuất bởi Texas Cụ (TI), TMS32010 được giới thiệu vào năm 1983, đã chứng tỏ là một thành công thậm chí còn lớn hơn. Nó dựa trên kiến trúc Harvard, và do đó có bộ nhớ dữ liệu và hướng dẫn riêng biệt. Nó đã có một tập lệnh đặc biệt, với các hướng dẫn như tải và tích lũy hoặc nhân và tích lũy. Nó có thể hoạt động trên các số 16 bit và cần 390 ns cho hoạt động thêm nhiều lượt. TI hiện là công ty dẫn đầu thị trường về DSP đa năng.
Khoảng năm năm sau, thế hệ DSP thứ hai bắt đầu lan rộng. Họ có 3 bộ nhớ để lưu trữ hai toán hạng cùng một lúc và bao gồm phần cứng để tăng tốc các vòng lặp chặt chẽ; họ cũng có một đơn vị địa chỉ có khả năng đánh địa chỉ. Một số trong số chúng hoạt động trên các biến 24 bit và một mô hình điển hình chỉ cần khoảng 21 ns cho MAC. Các thành viên của thế hệ này là ví dụ AT & T DSP16A hoặc Motorola 56000.
Cải tiến chính trong thế hệ thứ ba là sự xuất hiện của các đơn vị và hướng dẫn dành riêng cho ứng dụng trong đường dẫn dữ liệu, hoặc đôi khi là bộ đồng xử lý. Các đơn vị này cho phép tăng tốc phần cứng trực tiếp cho các vấn đề toán học rất cụ thể nhưng phức tạp, như phép biến đổi Fourier hoặc ma trận. Một số chip, như Motorola MC68356, thậm chí còn bao gồm nhiều lõi xử lý để hoạt động song song. Các DSP khác từ năm 1995 là TI TMS320C541 hoặc TMS 320C80.
Thế hệ thứ tư được đặc trưng nhất bởi những thay đổi trong tập lệnh và mã hóa / giải mã lệnh. Tiện ích mở rộng SIMD đã được thêm và VLIW và kiến trúc siêu khối xuất hiện. Như mọi khi, tốc độ đồng hồ đã tăng lên; MAC 3 ns bây giờ đã có thể.

Các bộ DSP hiện đại

Bộ xử lý tín hiệu hiện đại mang lại hiệu suất cao hơn; điều này một phần nhờ vào những tiến bộ về công nghệ và kiến trúc như quy tắc thiết kế thấp hơn, bộ đệm hai cấp truy cập nhanh, mạch DMA (E) và hệ thống BUS rộng hơn. Không phải tất cả các DSP đều cung cấp cùng tốc độ và nhiều loại bộ xử lý tín hiệu tồn tại, mỗi loại đều phù hợp hơn cho một nhiệm vụ cụ thể, với mức giá từ khoảng 1,50 đến 300 đô la Mỹ.

Texas Instruments sản xuất DSP dòng C6000, có tốc độ xung nhịp 1,2 GHz và thực hiện các bộ đệm dữ liệu và hướng dẫn riêng biệt. Họ cũng có 8 bộ đệm cấp 2 MiB và 64 kênh EDMA. Các mô hình hàng đầu có khả năng lên tới 8000 MIPS (hướng dẫn mỗi giây), sử dụng VLIW (từ hướng dẫn rất dài), thực hiện tám thao tác trên mỗi chu kỳ đồng hồ và tương thích với nhiều loại thiết bị ngoại vi bên ngoài và các bus khác nhau (PCI / serial / v.v.) Mỗi chip TMS320C6474 đều có ba DSP như vậy và các chip C6000 thế hệ mới nhất hỗ trợ điểm nổi cũng như xử lý điểm cố định.

Freescale sản xuất một họ DSP đa lõi, MSC81xx. MSC81xx dựa trên bộ xử lý StarCore Architecture và MSC8144 DSP mới nhất kết hợp bốn lõi DSP SC3400 StarCore có thể lập trình. Mỗi lõi DSP SC3400 StarCore có tốc độ xung nhịp 1 GHz.

XMOS sản xuất một dòng bộ xử lý đa luồng đa lõi rất phù hợp với hoạt động của DSP, Chúng có nhiều tốc độ khác nhau, từ 400 đến 1600 MIPS. Bộ xử lý có kiến trúc đa luồng cho phép tối đa 8 luồng thời gian thực trên mỗi lõi, nghĩa là một thiết bị 4 lõi sẽ hỗ trợ tới 32 luồng thời gian thực. Các chủ đề giao tiếp với nhau với các kênh được đệm có khả năng lên tới 80 Mbit / s. Các thiết bị có thể dễ dàng lập trình trong C và nhằm thu hẹp khoảng cách giữa các bộ điều khiển vi mô thông thường và các GPU

CEVA, Inc. sản xuất và cấp phép cho ba họ DSP khác nhau. Có lẽ nổi tiếng nhất và được triển khai rộng rãi nhất là họ DSP CEVA-TeakLite, một kiến trúc dựa trên bộ nhớ cổ điển, với độ rộng từ 16 bit hoặc 32 bit và MAC đơn hoặc kép. Gia đình DSP CEVA-X cung cấp sự kết hợp của kiến trúc VLIW và SIMD, với các thành viên khác nhau trong gia đình cung cấp MAC 16 bit kép hoặc bốn bit. Họ DSP CEVA-XC nhắm đến các thiết kế modem Radio (SDR) được xác định bằng phần mềm và tận dụng sự kết hợp độc đáo của kiến trúc VLIW và Vector với 32 MAC 16 bit.

Analog Devices tạo ra DSP dựa trên SHARC và phạm vi hoạt động từ 66 MHz / 198 MFLOPS (triệu hoạt động của dấu phẩy động mỗi giây) đến 400 MHz / 2400 MFLOPS. Một số kiểu máy hỗ trợ nhiều hệ số nhân và ALU, hướng dẫn SIMD và các thành phần và thiết bị ngoại vi dành riêng cho xử lý âm thanh. Dòng bộ xử lý tín hiệu số nhúng Blackfin kết hợp các tính năng của DSP với bộ xử lý sử dụng chung. Do đó, các bộ xử lý này có thể chạy các hệ điều hành đơn giản như μCLinux, velOSity và Nucleus RTOS trong khi hoạt động trên dữ liệu thời gian thực.

NXP Semiconductors sản xuất DSP dựa trên công nghệ TriMedia VLIW, được tối ưu hóa để xử lý âm thanh và video. Trong một số sản phẩm, lõi DSP được ẩn dưới dạng khối chức năng cố định vào SoC, nhưng NXP cũng cung cấp một loạt các bộ xử lý đa lõi đơn linh hoạt. Bộ xử lý phương tiện TriMedia hỗ trợ cả số học điểm cố định cũng như số học dấu phẩy động và có các hướng dẫn cụ thể để xử lý các bộ lọc phức tạp và mã hóa entropy.

CSR tạo ra họ SoC của Quatro có chứa một hoặc nhiều DSP hình ảnh tùy chỉnh được tối ưu hóa để xử lý dữ liệu hình ảnh tài liệu cho các ứng dụng máy quét và máy photocopy.

Microchip Technology sản xuất dòng DSPPIC dựa trên PIC24. Được giới thiệu vào năm 2004 [7], DSPIC được thiết kế cho các ứng dụng cần DSP thực sự cũng như vi điều khiển thực sự, chẳng hạn như điều khiển động cơ và trong các bộ nguồn. DSPIC chạy ở tốc độ lên tới 40MIPS và hỗ trợ MAC điểm cố định 16 bit, đảo ngược bit và địa chỉ modulo, cũng như DMA.

Hầu hết các DSP sử dụng dấu phẩy cố định, bởi vì trong xử lý tín hiệu trong thế giới thực, phạm vi bổ sung được cung cấp bởi dấu phẩy động là không cần thiết, và có lợi ích tốc độ lớn và lợi ích chi phí do độ phức tạp phần cứng giảm. DSP điểm nổi có thể là vô giá trong các ứng dụng yêu cầu dải động rộng. Các nhà phát triển sản phẩm cũng có thể sử dụng DSP điểm nổi để giảm chi phí và độ phức tạp của phát triển phần mềm để đổi lấy phần cứng đắt tiền hơn, vì nói chung việc triển khai thuật toán trong dấu phẩy động thường dễ dàng hơn.

Nói chung, DSP là các mạch tích hợp chuyên dụng; tuy nhiên chức năng DSP cũng có thể được sản xuất bằng cách sử dụng chip mảng cổng lập trình trường (FPGA).
Các bộ xử lý RISC đa mục đích nhúng đang ngày càng trở nên giống như DSP trong chức năng. Ví dụ, bộ xử lý OMAP3 bao gồm ARM Cortex-A8 và C6000 DSP.
Trong Truyền thông, một loại DSP mới cung cấp sự hợp nhất của cả hai chức năng DSP và chức năng tăng tốc H / W đang đi vào dòng chính. Các bộ xử lý Modem như vậy bao gồm ASOCS ModemX và CEVA's XC4000.
Vào tháng 5 năm 2018, Huarui-2 được thiết kế bởi Nam Kinh Research


Các nội dung khác có thể bạn quan tâm:

========================================================================================

Phần 1. Âm thanh kỹ thuật số là gì?

09/14/2018 bởi icar.vn admin

Phần 2. Sự Khác Biệt Giữa Công Nghệ Âm Thanh Kỹ Thuật Số (Digital) Và Âm Thanh Tương Tự (Analog)

09/14/2018 bởi icar.vn admin

Phần 3. Tác dụng bộ nén âm thanh (Compressor) trong xử lý âm thanh kỹ thuật số (DSP)

09/14/2018 bởi icar.vn admin

Phần 4. Hướng dẫn cài đặt và sử dụng bộ xử lý âm thanh kỹ thuật số (DSP) đầu android C500+ ô tô

09/17/2018 bởi icar.vn admin

Phần 5. Bộ nén (Compressor) và bộ giới hạn (Limiters)

09/19/2018 bởi icar.vn admin

Phần 6: Bộ xử lý tín hiệu số (DSP)

09/14/2018 bởi icar.vn admin

========================================================================================