Thí nghiệm xử lý số tín hiệu trên KIT TMS320C6414
Trang 2Bộ 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
Trang 3Bộ 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
Trang 4Bộ 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
Trang 5Bộ 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)
Trang 6Bộ môn Viễn Thông – Khoa Công Nghệ Điện Tử - ĐHCN TP HCM Page 5
2 Cài đặt
Trang 7Bộ 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
Trang 8Bộ môn Viễn Thông – Khoa Công Nghệ Điện Tử - ĐHCN TP HCM Page 7
Trang 9Bộ 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
Trang 10Bộ 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 :
Trang 11Bộ 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 :
Trang 12Bộ 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ụ…
Trang 13Bộ 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 :
Trang 14Bộ 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
Trang 15Bộ môn Viễn Thông – Khoa Công Nghệ Điện Tử - ĐHCN TP HCM Page 14
Trang 16Bộ 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ẽ
Trang 17Bộ 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
Trang 18Bộ 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ẽ
Trang 19Bộ 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 :
Trang 20Bộ 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 :
Trang 21Bộ 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
Trang 22Bộ 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
Trang 23Bộ 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 :
Trang 24Bộ 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ẽ
Trang 25Bộ 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
Trang 26Bộ 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)