26
THÍ NGHIỆM XỬ LÝ SỐ TÍN HIỆU TRÊN KIT TMS320C6414 (CCS verion 3.x ) Course Manual Nguyễn Thế Hoàng 9/2012

Thi Ngiem DSP_CCS3

Embed Size (px)

Citation preview

THÍ NGHIỆM XỬ LÝ SỐ TÍN HIỆU TRÊN KIT TMS320C6414

(CCS verion 3.x )

Course Manual

Nguyễn Thế Hoàng 9/2012

Bộ môn Viễn Thông – Khoa Công Nghệ Điện Tử - ĐHCN TP HCM Page 1

Mục lục

1 DSP Development System .................................................................................... 2

1.1 TMS320C6713 ....................................................................................................................3

1.2 TMS320C6416 ....................................................................................................................4

2 Cài đặt ................................................................................................................... 5

2.1 Cài đặt Code Composer V3.x .............................................................................................6

3 Các bài thí nghiệm ............................................................................................... 8

3.1 Lab1 - Làm quen với Code Composer Studio ...................................................................8

3.2 Lab2 - Tạo sóng sin .......................................................................................................... 12 3.3 Lab3 – Giao tiếp AIC23, biến đổi DAC ........................................................................... 15

3.4 Lab4 - Xử lý tín hiệu âm thanh ........................................................................................ 17 3.5 Lab5 - Thiết kế bộ lọc FIR ............................................................................................... 18

3.6 Lab6 - Thiết kế Bộ lọc IIR ............................................................................................... 22 3.7 Lab7 - FFT (Fast Forrier Transform) ............................................................................. 25

Bộ môn Viễn Thông – Khoa Công Nghệ Điện Tử - ĐHCN TP HCM Page 2

1 DSP Development System Phần này sẽ mô tả cho chúng ta cách cài đặt mội trường phát triển (IDE) cũng như bộ

thí nghiệm xử lý số tín hiệu TMS320C6416 hoặc TMS320C6713.

Yêu cầu :

CPU Tối thiểu Pentum 4 1.8Ghz trở lên Window XP (Chưa hỗ trợ Win 7 hoặc Vista) CCS phiên bản 3.1 hoặc 3.3 đi kèm theo kit Cài đặt Matlab phiên bản 2006 trở lên. Kit TMS320C6416 hoặc TMS320C6713

Bộ môn Viễn Thông – Khoa Công Nghệ Điện Tử - ĐHCN TP HCM Page 3

1.1 TMS320C6713

Thông số chính : • A Texas Instruments TMS320C6713 DSP operating at 225 MHz. • An AIC23 stereo codec • 16 Mbytes of synchronous DRAM

Bộ môn Viễn Thông – Khoa Công Nghệ Điện Tử - ĐHCN TP HCM Page 4

• 512 Kbytes of non-volatile Flash memory (256 Kbytes usable in default configuration) • 4 user accessible LEDs and DIP switches • Software board configuration through registers implemented in CPLD • Configurable boot options • Standard expansion connectors for daughter card use • JTAG emulation through on-board JTAG emulator with USB host interface or external emulator • Single voltage power supply (+5V)

1.2 TMS320C6416

Thông số board C6416 DSK : • A Texas Instruments TMS320C6416T DSP operating at 1 Gigahertz. • An AIC23 stereo codec • 16 Mbytes of synchronous DRAM • 512 Kbytes of non-volatile Flash memory • 4 user accessible LEDs and DIP switches • Software board configuration through registers implemented in CPLD • Configured boot options and clock input selection • Standard expansion connectors for daughter card use • JTAG emulation through on-board JTAG emulator with USB host interface or external emulator • Single voltage power supply (+5V)

Bộ môn Viễn Thông – Khoa Công Nghệ Điện Tử - ĐHCN TP HCM Page 5

2 Cài đặt

Bộ môn Viễn Thông – Khoa Công Nghệ Điện Tử - ĐHCN TP HCM Page 6

2.1 Cài đặt Code Composer V3.x

Cài đặt driver (có trên đĩa CD-ROM) file dsk6416.inf và file sdusb2em.sys

Bộ môn Viễn Thông – Khoa Công Nghệ Điện Tử - ĐHCN TP HCM Page 7

Bộ môn Viễn Thông – Khoa Công Nghệ Điện Tử - ĐHCN TP HCM Page 8

3 Các bài thí nghiệm

3.1 Lab1 - Làm quen với Code Composer Studio

Tạo project lab1 Tạo prject mới tại thư mục C:\hlab.com.vn\hDSP Basic Lab\lab1\

bằng cách chọn Project -> new . sau đó chọn thông số như hình sau :

Tạo file CDB (Configuration Database) bằng cách chọn file->new->DSP/BIOS Configuration…

Khi hộp thoại xuất hiện thì chọn dsk6416.cdb

Bộ môn Viễn Thông – Khoa Công Nghệ Điện Tử - ĐHCN TP HCM Page 9

Lưu file cdb bằng cách chọn file->save as C:\hlab.com.vn\hDSP Basic Lab\lab1\lab1.cdb

Sau đó đóng tab cấu hình CDB Thêm file vào project bằng cách chọn project->add files to project .. Add các file sau vào project :

block_sine.c lab1.c Lab1cfg.cmd Lab1.cdb

Kiểm tra xem project đã có đầy đủ các file chưa Sau khi hoàn tất, cấu trúc của project sẽ trông như sau :

Bộ môn Viễn Thông – Khoa Công Nghệ Điện Tử - ĐHCN TP HCM Page 10

Dịch chương trình Sau khi đã add tất cả các files cần thiết, bây giờ ta sẽ thực hiện dịch chương trình ra file thực thi bằng một trong hai cách sau :

• Sử dụng icon REBUILD ALL trên thanh toolbar: • Chọn Project → Rebuild All

Sau khi dịch xong chương trình sẽ báo như sau :

Thực thi chương trình : Mặc định CCS sẽ tạo ra file thực thi .out có tên trùng với tên project trong thư mục DEBUG, trong trường hợp này là lab1.out, ta nạp chương trình thực thi xuống kit dsp bằng cách chọn load program…

Bộ môn Viễn Thông – Khoa Công Nghệ Điện Tử - ĐHCN TP HCM Page 11

Sau khi load chương trình,ta thực thi chương trình bằng cách nhấn F5, hoặc chọn debug -> run. Khi chương trình thực thi sẽ xuất hiện ra dòng sau :

Hiệu chỉnh source code để thực hiện các nhiệm vụ sau :

o Điều khiển các led đơn 0,1,2,3 nhấp nháy sau mỗi giây.

o Đọc Dip SW và hiển thị trạng thái lên led đơn.

o Xuất ra dòng chữ DSP Basic Lab 1 trên giao diện console

Thao tác với các menu, thanh công cụ…

Bộ môn Viễn Thông – Khoa Công Nghệ Điện Tử - ĐHCN TP HCM Page 12

3.2 Lab2 - Tạo sóng sin Chúng ta sẽ thực hiện một hàm tạo sóng sin bằng cách sử dụng thuật toán tạo sóng sin, sau đó chúng ta sẽ vẽ lên đồ thị để quan sát. Hàm tạo sóng sin cơ bản là dựa trên một vòng lặp sử dụng bộ lọc IIR đơn ổn. Bài thí nghiệm sẽ tạo ra sóng sin tần số 500hz, lấy mẫu ở 48Khz. Các phép toán được thực hiện trên số thực dấu chấm động, sau đó được chuyển thành số decimal bằng cách nhân cho 32000.

Mở lab2 bằng cách chọn Project->open . Sau đó chọn đường dẫn C:\hlab.com.vn\hDSP Basic Lab\lab2\lab2.pjt

Sau khi biên dịch, nạp chương trình và chạy, để quan sát kết quả,ta sẽ vẽ dữ liệu tạo ra lên đồ thị,chọn view->graph->time/frequency rồi chọn thông số như bảng sau :

Bộ môn Viễn Thông – Khoa Công Nghệ Điện Tử - ĐHCN TP HCM Page 13

Kết quả sẽ hiện ra đồ thị hình sin do chúng ta tạo ra như sau :

Click phải vào đồ thị, chon property,chuyển display type thành FFT Magnitude và chọn OK, ta có thể quan sát phổ tần số của tín hiệu sin

Bộ môn Viễn Thông – Khoa Công Nghệ Điện Tử - ĐHCN TP HCM Page 14

Bộ môn Viễn Thông – Khoa Công Nghệ Điện Tử - ĐHCN TP HCM Page 15

3.3 Lab3 – Giao tiếp AIC23, biến đổi DAC Bài thí nghiệm này sẽ giúp chúng ta xuất tín hiệu âm tần ra ngoài thông qua chip audio codec tích hợp trên board. Chúng ta sẽ sự dụng tín hiệu sóng sin đã tạo ở thí dụ trước để xuất ra loa.

Trong bài thí nghiệm này, chúng ta sẽ được học : o Cách cấu hình chip âm thanh AIC23. o Cách thực hiện bộ biến đổi DAC (thông qua chip AIC23) o Cách sử dụng ngắt phần cứng của chip DSP.

Mở lab3 bằng cách chọn Project->open . Sau đó chọn đường dẫn C:\hlab.com.vn\hDSP Basic Lab\lab3\lab3.pjt

Kết nối phần cứng như hình vẽ

Bộ môn Viễn Thông – Khoa Công Nghệ Điện Tử - ĐHCN TP HCM Page 16

Sau khi kết nối phần cứng,tiến hành dịch, nạp và chạy ứng dụng. Ta sẽ nghe thấy tiếng âm thanh phát ra ở loa.

Bộ môn Viễn Thông – Khoa Công Nghệ Điện Tử - ĐHCN TP HCM Page 17

3.4 Lab4 - Xử lý tín hiệu âm thanh

Sau khi đã hoàn thành bài thí nghiệm xuất tín hiệu âm thanh ra ngoài thông qua chip. Chúng ta sẽ thực hiện việc việc xử lý âm thanh bằng cách lấy mẫu tín hiệu âm thanh đầu vào, sau đó tiến hành xử lý trước khi xuất tín hiệu ra loa.

Trong bài thí nghiệm này chúng ta sẽ đươc học cách : o Tạo hàm phần mềm thực thi theo chu kỳ . o Thực hiện ngắt phần cứng trên DSP. o Thực hiện ngắt phần mềm trên DSP. o Cách thực hiện một task thực hiện theo ngắt phần mềm. o Thực hiện semaphore trong multitasking. o Thực hiện biến đổi ADC và DAC thông qua chip AIC23.

Mở lab4 bằng cách chọn Project->open . Sau đó chọn đường dẫn C:\hlab.com.vn\hDSP Basic Lab\lab4\lab4.pjt

Cấu hình phần cứng như hình vẽ.

Bộ môn Viễn Thông – Khoa Công Nghệ Điện Tử - ĐHCN TP HCM Page 18

Trong trường hợp này chúng ta chỉ xử lý tín hiệu vào một cách đơn giản bằng cách cộng tín hiệu vào từ bộ codec với một sóng sin tần số 1khz.

Chú ý là khi nghe tiếng nhạc phát ra trên loa, ta sẽ nghe cả tiếng âm thanh 1khz

phát ra.

3.5 Lab5 - Thiết kế bộ lọc FIR

.Bộ lọc FIR rất thường được sự dụng trong các hệ thống DSP vì tính dễ thực hiện, luôn ổn định, và có một số tính chất phù hợp với nhiều ứng dụng.

Bộ lọc FIR thường có dạng

Trong đó y là output,x là input. H(m) là các hệ số của bộ lọc. Trong bài thí nghiệm này chúng ta sẽ đươc học cách :

o Thực hiện bộ loc FIR thông thấp. o Thực hiện bộ loc FIR thông cao. o Thực hiện bộ loc FIR thông dải.. o Xem xét ảnh hưởng của chúng lên tín hiệu.

Tín hiệu âm thanh sẽ được lấy mẫu trên hai kênh stereo, sau đó dữ liệu trên 1 kênh sẽ được áp dụng bộ lọc FIR, còn kênh còn lại giữ nguyên để tiện cho việc so sánh. Đoạn mã xử lý dữ liệu trên hai kênh :

Bộ môn Viễn Thông – Khoa Công Nghệ Điện Tử - ĐHCN TP HCM Page 19

Mở lab5 bằng cách chọn Project->open . Sau đó chọn đường dẫn

C:\hlabvn.com\hDSP Basic Lab\lab5\lab5.pjt

Kết nối phần cứng như hình vẽ, và quan sát âm thanh trên hai kênh để thấy tác động của bộ lọc lên chúng :

Bộ môn Viễn Thông – Khoa Công Nghệ Điện Tử - ĐHCN TP HCM Page 20

Lần lượt thay các hệ số của bộ lọc bằng các file sau để quan sát đáp ứng của chúng

o lp3000.cof : hệ số của bộ lọc thông thấp tần số 3khz o bp1750.cof: hệ số của bộ lọc thông dải tần số 1750hz o hp2200.cof: hệ số của bộ lọc thông cao tần số 2200hz

Sử dụng view->graph->time/frequency và chọn thông số như sau để quan sát đáp ứng tần số cua bộ lọc.

Bộ môn Viễn Thông – Khoa Công Nghệ Điện Tử - ĐHCN TP HCM Page 21

Mạch lọc dải thấp 3000Khz

Mạch lọc thông dải 1750hz

Bộ môn Viễn Thông – Khoa Công Nghệ Điện Tử - ĐHCN TP HCM Page 22

Mạch lọc thông cao 2k2

3.6 Lab6 - Thiết kế Bộ lọc IIR Bài thí nghiệm này thực hiện bộ lọc IIR bậc 10 thực hiện bằng cách cách ghép nối

cascade các khâu bậc 2 (second-order stages (SOS) in cascade hay second-order sections in cascade). Phương trình của bộ lọc được tính theo công thức sau :

u(n) = x(n) - b1u(n-1) - b2u(n-2)

y(n) = a0u(n) + a1u(n-1) + a2u(n-2) Đầu tiên, tín hiệu được lấy ADC trên 2 kênh Audio stereo, Sau đó một kênh được áp dụng bộ lọc, kênh kia thì vẫn giữ nguyên để tiện cho việc so sánh, sau đó tín hiệu xử lý được biến đổi DAC đưa ra loa. Đoạn mã xử lý dữ liệu trên hai kênh audio có áp dụng bộ lọc IIR như sau :

Bộ môn Viễn Thông – Khoa Công Nghệ Điện Tử - ĐHCN TP HCM Page 23

Ta có thể lần lượt thay các bộ hệ số cho các kiểu bộ lọc IIR : o bộ loc IIR thông thấp. o bộ loc IIR thông cao. o bộ loc IIR thông dải.. o Sau đó Xem xét ảnh hưởng của chúng lên tín hiệu.

Mở lab6 bằng cách chọn Project->open . Sau đó chọn đường dẫn C:\hlab.com.vn\hDSP Basic Lab\lab6\lab6.pjt

Kết nối phần cứng như hình vẽ

Bộ môn Viễn Thông – Khoa Công Nghệ Điện Tử - ĐHCN TP HCM Page 24

Sau cùng, biện dịch chương trình, và chạy. Quan sát âm tranh trên hai loa để thấy sự khác biệt khi sử dụng bộ lọc.

Bộ môn Viễn Thông – Khoa Công Nghệ Điện Tử - ĐHCN TP HCM Page 25

3.7 Lab7 - FFT (Fast Forrier Transform)

(bổ sung sau)