tài liệu thí nghiệm xử lý số tín hiệu

63 1.8K 5
tài liệu thí nghiệm xử lý số tín hiệu

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Trường Đại học Bách Khoa Khoa Điện – Điện Tử Bộ mơn Viễn Thơng XỬ LÝ SỐ TÍN HIỆU Tài liệu thí nghiệm PTN Viễn thơng 2007 Mục lục Mục lục Mục lục hình vẽ Mục lục bảng GIỚI THIỆU PHẦN I HƯỚNG DẪN SỬ DỤNG THIẾT BỊ THÍ NGHIỆM SỬ DỤNG MATLAB ĐỂ THIẾT KẾ BỘ LỌC SỐ SỬ DỤNG KIT XỬ LÝ SỐ C6713 DSK (DSP STARTER KIT) 13 PHẦN CÁC BÀI THÍ NGHIỆM 25 BÀI 1: THỰC HIỆN CÁC BỘ LỌC FIR TRÊN KIT C6713 DSK 26 Mục đích thí nghiệm 26 Thiết bị thí nghiệm 26 Giới thiệu 26 Cơ sở lý thuyết 26 Chuẩn bị thí nghiệm 27 Tiến hành thí nghiệm 28 BÀI 2: THỰC HIỆN CÁC BỘ LỌC IIR TRÊN KIT C6713 DSK 31 Mục đích thí nghiệm 31 Thiết bị thí nghiệm 31 Giới thiệu 31 Cơ sở lý thuyết 31 Chuẩn bị thí nghiệm 35 Tiến hành thí nghiệm 35 BÀI 3: THỰC HIỆN CÁC BỘ LỌC THÍCH NGHI TRÊN KIT C6713 DSK 42 Mục đích thí nghiệm 42 Thiết bị thí nghiệm 42 Giới thiệu 42 Cơ sở lý thuyết 42 Chuẩn bị thí nghiệm 47 Tiến hành thí nghiệm 47 BÀI 4: THỰC HIỆN MỘT SỐ MẠCH ĐIỀU CHẾ SỐ TRÊN KIT C6713 DSK 51 Mục đích thí nghiệm 51 Thiết bị thí nghiệm 51 Giới thiệu 51 Cơ sở lý thuyết 51 Chuẩn bị thí nghiệm 55 Tiến hành thí nghiệm 55 Tài liệu tham khảo 63 Mục lục hình vẽ Hình Giao diện SPTool Hình Giao diện Filter Designer Hình Đáp ứng tần số lọc thiết kế Hình Các field bs2700 Hình Vector đáp ứng xung lọc thiết kế Hình Đáp ứng tần số lọc IIR thiết kế 10 Hình Đáp ứng tần số lọc multiband FIR cần thiết kế 11 Hình Sơ đồ khối DSK 13 Hình Hộp thoại Project Creation 16 Hình 10 Tùy chọn Compiler – Mục Basic 17 Hình 11 Tùy chọn Compiler - Mục Preprocessor 18 Hình 12 Tùy chọn Compiler - Mục Feedback 18 Hình 13 Tùy chọn Compiler - Mục Advanced 19 Hình 14 Các tùy chọn Linker 19 Hình 15 Cửa sổ slider cho phép thay đổi biến gain 21 Hình 16 Các tùy chọn để vẽ miền thời gian 23 Hình 17 Các tùy chọn để vẽ miền tần số 23 Hình 18 Kết vẽ CCS miền tần số miền thời gian 24 Hình 19 Thực lọc FIR dạng trực tiếp 27 Hình 20 Thực lọc IIR dạng trực tiếp 32 Hình 21 Thực lọc IIR dạng trực tiếp 33 Hình 22 Thực lọc IIR dạng trực tiếp chuyển vị 33 Hình 23 Cấu trúc cascade lọc IIR 34 Hình 24 Bộ lọc IIR bậc với phần bậc dạng trực tiếp 34 Hình 25 Cấu trúc song song lọc IIR 34 Hình 26 Cấu trúc lọc thích nghi 42 Hình 27 Cấu trúc lọc thích nghi dùng để lọc nhiễu 43 Hình 28 Cấu trúc lọc thích nghi dùng để nhận dạng hệ thống 44 Hình 29 Bộ kết hợp tuyến tính nhiều ngõ vào 44 Hình 30 Bộ kết hợp tuyến tính thích nghi với ngõ vào 45 Hình 31 Đường cong mục tiêu trọng số 46 Hình 32 Tìm điểm cực tiểu theo trọng số 46 Hình 33 Sơ đồ thí nghiệm 47 Hình 34 Hệ thống PAM 54 Hình 35 Giản đồ constellation PAM mức 54 Mục lục bảng Bảng Bảng tra PAM 16 mức 56 Bảng Bảng tra PAM mức 57 Bảng Bảng tra PAM mức 57 GIỚI THIỆU Các xử lý số tín hiệu sử dụng nhiều ứng dụng thực tế, từ truyền thông điều khiển xử lý tiếng nói hình ảnh Hầu hết thiết bị gia dụng tích hợp xử lý số tín hiệu Chúng sử dụng điện thoại di động, máy ảnh số, HDTV, radio, truyền fax, modem, máy in, máy trợ thính nhiều thiết bị khác… Hệ thống xử lý số tín hiệu bao gồm biến đổi A/D để thu nhận tín hiệu vào Sau đó, dạng biểu diễn số tín hiệu vào xử lý xử lý số tín hiệu tín hiệu đưa qua biến đổi D/A Hệ thống bao gồm lọc ngõ vào chống chồng lấn phổ lọc ngõ để khơi phục tín hiệu xử lý Trong thí nghiệm này, trang bị kit TMS320C6713 Texas Instruments Kit TMS320C6713 công cụ mạnh với phần cứng phần mềm cần thiết cho xử lý tín hiệu thời gian thực Nó hệ thống xử lý số tín hiệu hồn chỉnh, bao gồm xử lý số dấu chấm động C6713 codec 32-bit stereo TLV320AIC23 (gọi tắt AIC23) cho việc xuất nhập tín hiệu Qua thí nghiệm này, hi vọng bạn sinh viên hiểu rõ thêm khái niệm học mơn Xử lý số tín hiệu, nắm bước việc thực ứng dụng xử lý số tín hiệu lên xử lý số, chip C6713 Texas Instruments PHẦN I HƯỚNG DẪN SỬ DỤNG THIẾT BỊ THÍ NGHIỆM Tài liệu thí nghiệm Xử lý số tín hiệu SỬ DỤNG MATLAB ĐỂ THIẾT KẾ BỘ LỌC SỐ 1.1 Thiết kế lọc số công cụ SPTool SPTool cơng cụ có giao diện tương tác dùng cho xử lý số tín hiệu Cơng cụ sử dụng để phân tích tín hiệu, thiết kế lọc, phân tích lọc, lọc tín hiệu phân tích phổ tín hiệu Để khởi động SPTool, từ dấu nhắc lệnh MATLAB, nhập lệnh >> sptool Khi đó, giao diện SPTool xuất sau: Hình Giao diện SPTool Khi mở SPTool, chứa tập hợp tín hiệu, lọc phổ mặc định Trên giao diện SPTool, có cột: Signals, Filters Spectra Dưới cột có nút sử dụng cho cột Cột Signals hiển thị tín hiệu, cột Filters hiển thị lọc cột Spectra hiển thị phổ workspace (vùng làm việc) SPTool Các tín hiệu, lọc phổ workspace MATLAB đưa vào SPTool lệnh Import menu File SPTool Các tín hiệu, lọc phổ tạo import vào SPTool tồn dạng cấu trúc MATLAB Để lưu lại tín hiệu, lọc phổ tạo chỉnh sửa SPTool, sử dụng lệnh Export menu File, chúng lưu lại dạng cấu trúc MATLAB Để bắt đầu thiết kế lọc mới, bạn nhấn vào nút New cột Filter Khi đó, giao diện Filter Designer dùng để thiết kế lọc sau xuất Filter Designer cung cấp môi trường đồ họa tương tác để thiết kế lọc số IIR FIR dựa tiêu chuẩn người dùng xác định - Các loại lọc thiết kế: Thơng thấp, thơng cao, thơng dải, chắn dải - Các phương pháp thiết kế lọc FIR: Equiripple, Least squares, Window - Các phương pháp thiết kế lọc IIR: Butterworth, Chebyshev loại I, Chebyshev loại II, Elliptic Tài liệu thí nghiệm Xử lý số tín hiệu Hình Giao diện Filter Designer Ví dụ 1: Thiết kế lọc FIR chắn dải SPTool Bộ lọc, thiết kế phương pháp cửa sổ Kaiser, với thông số sau: Chiều dài đáp ứng xung: N = 89 (MATLAB hiển thị bậc lọc 88) Tần số trung tâm: 2700 Hz Tần số cắt: 2500 Hz 2900 Hz Giá trị  = Tần số lấy mẫu 8000 Hz Các bước thiết kế sau: Khởi động SPTool Dưới cột Filters, nhấn nút New để mở cửa sổ Filter Designer Trong giao diện Filter Designer: a Trong text box Filter: Tên lọc tự đặt (ở filt1) Tên thay đổi sau b Nhập thông số thiết kế vào: i Sampling Frequency = 8000 ii Algorithm: Kaiser Window FIR iii Bỏ chọn check box Minimum Order (nếu chọn thiết kế lọc có bậc tối thiểu) iv Filter Order = 88, Type = Bandstop, Fc1 = 2500, Fc2 = 2900, Beta = c Nhấn Apply Khi đáp ứng tần số lọc thiết kế hiển thị Tài liệu thí nghiệm Xử lý số tín hiệu Hình Đáp ứng tần số lọc thiết kế Trở cửa sổ SPTool, cột Filters xuất thêm dịng filt1 [design] Đây lọc vừa thiết kế Sau này, muốn sửa đổi thiết kế, chọn lại tên lọc nhấn nút Edit phía Để dễ nhớ, ta thay đổi tên lọc thành bs2700 cách chọn Edit  Name…filt1 [design] Trong cửa sổ xuất hiện, nhập tên Khi thiết kế lọc FIR trên, kết mà ta cần nhận sau thiết kế giá trị vector đáp ứng xung h lọc thiết kế Để lấy giá trị vector đáp ứng xung, ta thực sau: Từ cửa sổ SPTool, chọn File  Export… Trong Export list xuất hiện, chọn Filter: bs2700 [design] nhấn nút Export to workspace Đóng cửa sổ SPTool lại Một thơng báo xuất hỏi có muốn lưu lại phiên làm việc hay không Nếu muốn lưu lại, chọn Save Mở cửa sổ Workspace MATLAB, ta thấy workspace xuất biến bs2700 Đây lọc mà ta thiết kế SPTool xuất workspace MATLAB Biến lưu dạng cấu trúc mô tả lọc thiết kế Nhấn đúp chuột vào tên biến bs2700 workspace, ta thấy field cấu trúc sau: Tài liệu thí nghiệm Xử lý số tín hiệu Hình Các field bs2700 Trong field này, field tf thể hàm truyền lọc Field cấu trúc gồm field: tf.num tf.den thể tương ứng hệ số đa thức tử số đa thức mẫu số Đối với lọc FIR, hàm truyền có tử số hệ số tử số đáp ứng xung lọc Do đó, với lọc trên, giá trị vector đáp ứng xung lưu bs2700.tf.num Trong cửa sổ Array Editor trên, nhấn đúp vào field tf nhấn đúp vào num, ta thấy hệ số đáp ứng xung lọc Để gán hệ số vào vector h, MATLAB dùng lệnh sau: >> h = bs2700.tf.num Hình Vector đáp ứng xung lọc thiết kế Các giá trị thu vector đáp ứng xung sử dụng để thực lọc số lên kit DSP Ví dụ 2: Thiết kế lọc IIR chắn dải SPTool Sử dụng phương pháp Elliptic để thiết kế lọc IIR chắn dải bậc 10, tần số trung tâm 1750Hz Chú ý MATLAB hiển thị bậc lọc 5, biểu diễn số phần bậc lọc (Điều với lọc IIR thơng dải chắn dải) Tài liệu thí nghiệm Xử lý số tín hiệu Các thơng số lọc sau Tần số cắt: 1700 Hz 1800 Hz Độ gợn dải thông dải chắn tương ứng dB 60 dB Tần số lấy mẫu: 8000 Hz Thực tương tự ví dụ trên, lưu lọc thiết kế với tên bs1750 xuất workspace Trong workspace có cấu trúc tên bs1750 Các hệ số tử số mẫu số hàm truyền lưu tương ứng biến bs1750.tf.num bs1750.tf.den Hình Đáp ứng tần số lọc IIR thiết kế Dạng cực – zero hàm truyền H(z) sau: z  z1 z  z2  z  z n  H (z)  k z  p1 z  p2  z  pm  Hàm truyền viết lại sau: b0k  b1k z 1  b2 k z 2 H ( z )  g  H k z   g  1  a k z 2 k 1 k 1  a1k z L L Với L số nguyên gần lớn cực đại n/2 m/2 Trong MATLAB, phần bậc H(z) lưu ma trận sau:  b01 b sos   02    b0 L b11 b12 b21 a11 b22 a12  b1L    b2 L a1L 10 a 21  a 22      a2 L  Tài liệu thí nghiệm Xử lý số tín hiệu 1500Hz) cộng với nhiễu (tần số 312Hz) Bây giờ, quan sát dạng sóng ngõ với trượt vị trí vị trí Phác họa dạng sóng tương ứng Qua phần trên, bạn thực xong lọc FIR thích nghi để ứng dụng triệt nhiễu Hãy vận dụng kiến thức vừa học để làm tập nhỏ sau: Bài tập Chúng ta có tín hiệu cosine tần số 2000 Hz bị xâm lấn nhiễu hình cosine với tần số 125 Hz Giả sử để loại nhiễu, dùng lọc thích nghi Hãy sử dụng tín hiệu sine có tần số 125 Hz (tương quan với nhiễu) để làm tín hiệu tham khảo Hãy sửa chương trình MATLAB AdaptNoise.m để tạo tín hiệu tương ứng Hãy mở CCS, biên dịch chạy lại chương trình để kiểm chứng kết 6.2 Sử dụng lọc FIR thích nghi để nhận dạng lọc FIR cố định chưa biết Trong thí nghiệm này, giả sử có hệ thống chưa biết cần nhận dạng Chúng ta sử dụng phương pháp lọc thích nghi cho việc nhận dạng Điều có nghĩa cần phải huấn luyện lọc thích nghi cho có tín hiệu đầu vào qua lọc thích nghi cho tín hiệu đầu giống đầu hệ thống cần nhận dạng Trong thí nghiệm này, sử dụng lọc FIR cố định hệ thống cần nhận dạng Chúng ta kiểm chứng lọc thích nghi huấn luyện để mơ hình cho hệ thống chưa biết Hệ thống cần nhận dạng chọn lọc FIR thông dải có 55 hệ số, tần số trung tâm 2KHz Các hệ số lọc chứa tập tin bp55.cof Một chuỗi nhiễu ngẫu nhiên tạo chương trình trở thành ngõ vào đồng thời lọc chưa biết lọc FIR thích nghi Tín hiệu xem tín hiệu huấn luyện Q trình thích nghi diễn tín hiệu sai số cực tiểu hóa Tín hiệu sai số hồi tiếp khác biệt ngõ lọc chưa biết ngõ lọc FIR thích nghi Bây giờ, mở nguồn kit mở Code Composer Studio thực theo bước sau: Mở project AdaptIDFIR (ở C:\CCStudio_v3.1\MyProjects\AdaptIDFIR) Trong CCS, chọn File  Load GEL mở tập tin AdaptIDFIR.gel Sau đó, menu GEL, chọn OutputType  Output-signal Một hộp thoại có trượt xuất Khi trượt vị trí 1, tín hiệu đầu lọc thích nghi Khi vị trí 2, tín hiệu ngõ lọc cố định chưa biết Hiển thị dạng sóng (bằng cách dùng DSP_Tool.exe) Hãy so sánh đầu hệ thống thích nghi với đầu hệ thống chưa biết Bộ lọc thích nghi có mơ hình hóa thành cơng lọc FIR chưa biết hay không? Bài tập Hãy sửa chương trình (tập tin AdaptIDFIR.c) để include tập tin hệ số bs55.cof, biểu diễn lọc FIR chắn dải 55 hệ số với tần số trung tâm KHz Bộ lọc FIR chắn dải xem hệ thống chưa biết cần nhận dạng Hãy biên dịch kiểm tra kết 49 Tài liệu thí nghiệm Xử lý số tín hiệu Hãy sử chương trình (tập tin AdaptIDFIR.c) để include tập tin hệ số lp55.cof, biểu diễn lọc FIR thông thấp với 55 hệ số Bộ lọc FIR biểu diễn cho hệ thống chưa biết cần nhận dạng Hãy biên dịch kiểm tra kết 6.3 Sử dụng lọc FIR thích nghi để nhận dạng hệ thống chưa biết, biết ban đầu lọc thích nghi khởi tạo lọc FIR thơng dải Trong thí nghiệm trước, giá trị ban đầu hệ số lọc FIR thích nghi khởi tạo zero Trong thí nghiệm này, ban đầu, hệ số lọc FIR thích nghi khởi tạo với hệ số lọc FIR thông dải có 55 hệ số, tần số trung tâm 3KHz, chứa tập tin bp3000.cof Bộ lọc cần nhận dạng lọc FIR thông dải 55 hệ số với tần số trung tâm 2KHz Chúng ta thấy lọc thích nghi thay đổi dần từ lọc thông dải tần số trung tâm 3KHz thành lọc thông dải tần số trung tâm 2KHz Bây giờ, mở nguồn kit DSP Sau chạy Code Composer Studio thực theo bước sau đây: Mở project AdaptIDFIRW (trong C:\CCStudio_v3.1\MyProjects\AdaptIDFIRW) Hãy biên dịch project chạy chương trình kit DSP Trong CCS, chọn File  Load GEL mở tập tin AdaptIDFIR.gel Sau đó, chọn GELOutput Type  Output-signal menu Một hộp thoại có trượt xuất Khi trượt vị trí 1, tín hiệu ngõ đầu lọc thích nghi Khi vị trí 2, tín hiệu ngõ đầu lọc chưa biết Hãy quan sát dạng sóng đầu lọc thích nghi lọc FIR cần nhận dạng Nếu xem tín hiệu nhiễu ngẫu nhiên ngõ vào gần nhiễu trắng ta có phổ tín hiệu ngõ có dạng đáp ứng tần số lọc Do đó, ta quan sát đáp ứng tần số lọc thích nghi thay đổi dần để thích nghi với lọc chưa biết cách quan sát phổ biên độ tín hiệu ngõ (của lọc thích nghi) Hãy thực việc quan sát DSP_Tool lưu hình thấy q trình thích nghi lọc Lưu ý: chọn File  Reload program để chạy lại từ đầu trình thích nghi lọc Bài tập Hãy sửa chương trình (tập tin AdaptIDFIR.c) để include tập tin hệ số lp55.cof, biểu diễn lọc FIR thông thấp có 55 hệ số Bộ lọc FIR xem hệ thống cần nhận dạng Hãy biên dịch chương trình kiểm chứng kết đạt Hãy lưu lại vài hình vẽ đáp ứng tần số lọc thích nghi (trong q trình thích nghi) 50 Tài liệu thí nghiệm Xử lý số tín hiệu BÀI 4: THỰC HIỆN MỘT SỐ MẠCH ĐIỀU CHẾ SỐ TRÊN KIT C6713 DSK Mục đích thí nghiệm Khảo sát số kỹ thuật điều chế số Thực số mạch điều chế số kit C6713 Thiết bị thí nghiệm STT Tên thiết bị Số lượng 01 Máy vi tính 01 02 Kit C6713 DSK 01 03 Máy phát sóng 01 04 Bộ dây nối tín hiệu 01 Giới thiệu Điều chế q trình làm biến đổi tín hiệu sóng mang nhằm sử dụng tín hiệu để mang thơng tin cần truyền Thơng thường, dạng sóng hình sine cao tần sử dụng làm sóng mang Ba thơng số sóng sine biên độ, pha tần số làm cho biến đổi theo tín hiệu thơng tin để tạo tín hiệu điều chế Thiết bị để thực điều chế gọi điều chế (modulator) thiết bị thực trình ngược lại gọi giải điều chế (demodulator) Thiết bị thực hai trình gọi modem Mục đích điều chế số để truyền chuỗi bit kênh truyền tương tự bandpass, ví dụ đường dây điện thoại (các lọc giới hạn dải tần số từ 300  3400 Hz) dải tần số radio Trong đó, mục đích điều chế tương tự truyền tín hiệu tương tự tần số thấp, ví dụ tín hiệu âm tần, kênh truyền tương tự bandpass Mục đích phương pháp điều chế số dải (baseband), gọi mã hóa đường truyền, truyền chuỗi bit kênh truyền thông thấp (lowpass) thường cặp dây đồng không bị lọc bus nối tiếp mạng LAN có dây Mục đích phương pháp điều chế xung để truyền tín hiệu tương tự băng hẹp (narrowband) ví dụ gọi điện thoại kênh truyền thông thấp băng rộng (wideband lownpass channel) hoặc, số trường hợp, chuỗi bit hệ thống truyền thông số khác Cơ sở lý thuyết 4.1 Các kỹ thuật điều chế tương tự Trong điều chế tương tự, trình điều chế áp dụng liên tục theo tín hiệu thơng tin tương tự Các kỹ thuật điều chế tương tự thông dụng gồm:  Điều chế biên độ: o Double - sideband modulation (DSB) 51 Tài liệu thí nghiệm Xử lý số tín hiệu  4.2  AM modulation  Double – sideband suppressed-carrier (DSB – SC) o Single – sideband modulation (SSB) o Vestigial sideband modulation (VSB) o Quadratude amplitude modulation (QAM) Điều chế góc: o Frequency modulation (FM) o Phase modulation (PM) Các kỹ thuật điều chế số Trong điều chế số, sóng mang tương tự điều chế chuỗi bit tín hiệu thơng tin Sự thay đổi tín hiệu sóng mang chọn từ số hữu hạn ký hiệu (symbol)  Trong PSK, tập hợp hữu hạn pha sử dụng  Trong FSK, tập hợp hữu hạn tần số sử dụng  Trong ASK, tập hợp hữu hạn biên độ sử dụng  Trong QAM, tín hiệu pha (tín hiệu I, ví dụ dạng sóng cosine) tín hiệu vng pha (tín hiệu Q, ví dụ dạng sóng sine) điều biên với số lượng hữu hạn mức biên độ (ASK) Tín hiệu thu kết hợp PSK ASK Mỗi giá trị pha, biên độ tần số gán chuỗi bit nhị phân Thông thường, pha, biên độ tần số mã hóa số lượng bit Số bit tạo thành ký hiệu (symbol) biểu diễn pha cụ thể Nếu ký hiệu (symbol) gồm M = 2N symbol khác nhau, ký hiệu biểu diễn thông điệp gồm N bit Nếu tốc độ ký hiệu (hay tốc độ baud) fs symbols/s (hoặc baud), tốc độ liệu Nfs bps Trong trường hợp PSK, ASK QAM, ký hiệu điều chế thường biểu diễn giản đồ dạng chòm (constellation diagram), biểu diễn biên độ tín hiệu I trục X biên độ tín hiệu Q trục Y Các kỹ thuật điều chế số bao gồm:          Phase – shift keying (PSK) Frequency – shift keying (FSK) Amplitude – shift keying (ASK) dạng thường gặp On – off keying (OOK) Quadratude Amplitude Modulation (QAM): kết hợp PSK ASK Polar modulation: giống QAM, kết hợp PSK ASK Continuous phase modulation (CPM) o Minimum shift keying (MSK) o Gaussian minimum – shift keying (GMSK) Orthogonal frequency division multiplexing (OFDM) modulation Wavelet modulation Trellis coded modulation (TCM) hay gọi trellis modulation MSK GMSK trường hợp đặc biệt điều chế pha liên tục (CPM) OFDM dựa ý tưởng FDM sử dụng dạng điều chế số Chuỗi bit chia 52 Tài liệu thí nghiệm Xử lý số tín hiệu thành nhiều chuỗi liệu song song, chuỗi truyền sub-carrier sử dụng kỹ thuật điều chế số thông thường Các sub-carrier tổng hợp thành ký hiệu OFDM OFDM xem kỹ thuật điều chế truyền chuỗi bit kênh truyền sử dụng chuỗi ký hiệu OFDM OFDM mở rộng thành phương pháp đa truy cập OFDMA, cho phép nhiều người dùng chia sẻ kênh truyền vật lý cách gán người dùng sub-carrier khác 4.3 Điều chế số dải (Digital baseband modulation) Thuật ngữ điều chế số dải đồng nghĩa với mã hóa đường truyền (line coding), tập hợp phương pháp để truyền chuỗi bit kênh truyền tương tự thông thấp, sử dụng số rời rạc mức tín hiệu, cách điều chế chuỗi xung (một sóng vng) Các ví dụ thường gặp unipolar, non-return-to-zero (NRZ), Manchester AMI (alternate mark inversion) 4.4 Các phương pháp điều chế xung Các phương pháp điều chế xung nhằm truyền tín hiệu tương tự băng hẹp kênh truyền thông thấp tín hiệu lượng tử hai mức, cách điều chế chuỗi xung Một vài dạng điều chế xung cho phép tín hiệu tương tự băng hẹp truyền tín hiệu số với tốc độ bit cố định, truyền hệ thống thơng tin số bên dưới, ví dụ vài line code Chúng cácdạng điều chế theo nghĩa thông thường chúng phương pháp mã hóa kênh (channel coding) mà nên xem mã hóa nguồn (source coding) vài trường hợp xem kỹ thuật biến đổi A/D Các phương pháp bao gồm:  Pulse code modulation (PCM): điều chế xung mã  Pulse – width modulation (PWM): điều chế độ rộng xung  Pulse – amplitude modulation (PAM): điều chế biên độ xung  Pulse – position modulation (PPM): điều chế vị trí xung  Pulse – density modulation (PDM): điều chế mật độ xung  Sigma – delta modulation (DM)  Adaptive delta modulation (ADM) Trải phổ trực tiếp (DSSS – direct-sequence spread spectrum) dựa điều chế PAM Trong thí nghiệm này, hai phương pháp điều chế thực điều chế biên độ xung (PAM) điều chế pha (PSK) 4.5 Điều chế biên độ xung (PAM) Điều chế biên độ xung (PAM) dạng điều chế tín hiệu thơng tin mã hóa biên độ chuỗi xung Ví dụ: điều chế bit (PAM – 4) lấy bit ánh xạ biên độ tín hiệu thành bốn mức, ví dụ -3V, -1V, 1V 3V Giải điều chế thực cách đọc mức biên độ sóng mang chu kỳ ký hiệu Hiện nay, PAM sử dụng thay PCM PPM Tất modem điện thoại nhanh 300 bps sử dụng kỹ thuật QAM 53 Tài liệu thí nghiệm Xử lý số tín hiệu Tuy nhiên, chuẩn giao tiếp Ethernet sử dụng PAM Ví dụ, 100BASE-T2 Ethernet (ở tốc độ 100Mb/s) sử dụng điều chế PAM mức chạy tốc độ 25 megapulses/s cặp dây dẫn Một kỹ thuật đặc biệt sử dụng để giảm nhiễu liên ký tự cặp không dây Sau đó, 1000BASE-T nâng lên sử dụng cặp dây dẫn tốc độ 125 megapulses/s để đạt tốc độ liệu 1000 Mb/s, sử dụng PAM mức cho cặp dây Dưới sơ đồ khối hệ thống PAM đơn giản (bỏ qua cân thích nghi phục hồi xung clock) Hình 34 Hệ thống PAM Chuỗi bit vào xử lý thành từ dài J bits J bits ánh xạ thành 2J mức Ví dụ, J = có mức Các mức giản đồ constellation đối xứng quanh mức zero hình sau: Hình 35 Giản đồ constellation PAM mức Tám điểm giản đồ biểu diễn cho mức với mức biểu diễn chuỗi bits 4.6 Điều chế dịch pha (PSK) PSK phương pháp truyền nhận tín hiệu số pha tín hiệu truyền thay đổi để mang thơng tin Một vài phương pháp sử dụng để thực PSK, đơn giản PSK nhị phân (BPSK) sử dụng hai pha tín hiệu: 0 180 Các dạng phức tạp PSK sử dụng pha, cho phép liệu nhị phân truyền tốc dộ nhanh Trong điều chế pha, pha sử dụng 0, +90, 90 180; dịch pha biểu diễn bits/symbol Trong điều chế pha, góc pha dùng 0, +45, -45, +90, -90, +135, -135 180 lần dịch pha biểu diễn bits/symbol 54 Tài liệu thí nghiệm Xử lý số tín hiệu 4.6.1 Điều chế pha nhị phân (BPSK) Một kênh liệu điều chế sóng mang Một chuyển bit, từ sang hay từ sang 1, tạo dịch pha 180 (đảo pha) sóng mang Do dó, sóng mang điều chế liệu Giải điều chế BPSK sử dụng bước sau: - Một bình phương tạo thành phần DC thành phần tần số 2fc - Một lọc thông dải để tách thành phần tần số 2fc - Một chia tần số, ngõ nhân với ngõ vào Kết lọc thông thấp để thu tín hiệu PCM 4.6.2 Quadratude Phase Shift Keying (QPSK) QPSK dạng điều chế pha điều chế tần số biên độ giữ cố định Có pha, pha cách 90 Các pha thường gọi trạng thái (state) biểu diễn cặp bit Mỗi cặp bit biểu diễn dạng sóng cụ thể, gọi ký hiệu (symbol), gửi qua kênh truyền sau điều chế sóng mang Bộ thu giải điều chế tín hiệu nhìn ký hiệu khôi phục để xác định cặp bit gửi Điều đòi hỏi ký hiệu cho kết hợp bit liệu cặp Do có tất khả xảy kết hợp bit liệu cặp (00, 01, 10, 11), QPSK tạo ký hiệu khác nhau, ký hiệu cho cặp, cách thay đổi thành phần đồng pha (I) thành phần vuông pha (Q) Hệ thống truyền QPSK sử dụng sóng sine cosine làm sóng mang để truyền tín hiệu thơng điệp, sI[n] sQ[n], gọi tín hiệu in-phase quadratude Cả hai tín hiệu khơi phục phía thu, cho pháp truyền liệu với lượng thơng tin gấp đơi tần số sóng mang Chuẩn bị thí nghiệm Hãy vẽ hình minh họa q trình điều chế PAM tín hiệu hình sine giải thích? Hãy tìm số ứng dụng điều chế PAM Hãy vẽ giản đồ constellation ứng với điều chế PAM 16 mức, QAM, BPSK QPSK Phân biệt (ngắn gọn) phương pháp điều chế xung: PAM, PCM, PPM, PWM Tóm tắt bước làm để thực phần thí nghiệm sau Tiến hành thí nghiệm 6.1 Thực mạch điều chế PAM kit C6713 DSK Trong thí nghiệm này, mạch điều chế PAM mức, mức 16 mức thực kit DSP Trong đó, mạch điều chế mức thực sẵn project để giúp hiểu rõ giải thuật thực Sau đó, sinh viên tự thực mạch điều chế PAM mức 16 mức Giải thuật điều chế Mỗi mẫu vào để điều chế gồm 16 bits Tùy vào loại điều chế PAM, mặt nạ (mask) thích hợp sử dụng Hãy xem xét trường hợp PAM 16 mức (16-PAM) Trong trường hợp này, để biểu diễn 16 mức cần bits, ký hiệu có chiều dài bits Để đạt tốc độ ký hiệu 55 Tài liệu thí nghiệm Xử lý số tín hiệu mong muốn, mẫu vào chia làm đoạn dài bits Như vậy, mẫu vào gồm đoạn Việc xử lý mẫu vào bao gồm việc áp dụng mặt nạ dịch Khối ký hiệu nhận cách dùng mẫu vào AND với mặt nạ 0x000F để lấy bit LSB (0x000F biểu diễn hệ thập lục phân 00000000 00001111, AND mẫu với mặt nạ này, bit cuối mẫu giữ lại, tạo thành ký hiệu) Khối ký hiệu thứ nhận cách dịch mẫu ban đầu sang phải bit áp dụng lại mặt nạ Các bước lặp lại hết chiều dài mẫu vào tạo ký hiệu Do ký hiệu có chiều dài bit nên có tất 16 ký hiệu 16 ký hiệu ánh xạ thành 16 mức điện áp cách dựa theo bảng tra sau: Bảng Bảng tra PAM 16 mức Khối ký hiệu Mức điện áp (biểu diễn dạng số Hex) 0000 0x7FFF 0001 0x6EEE 0010 0x5DDD 0011 0x4CCC 0100 0x3BBB 0101 0x2AAA 0110 0x1999 0111 0x0888 1000 - 0x0889 1001 - 0x199A 1010 - 0x2AAB 1011 - 0x3BBC 1100 - 0x4CCD 1101 - 0x5DDE 1110 - 0x6EEF 1111 - 0x8000 Ví dụ, mẫu vào 0xA52E (10100101 00101110) Khi đó, 1110 (sau lọc mặt nạ lấy bit LSB) ánh xạ thành mức -0x6EEF Mỗi ký hiệu gồm bit ánh xạ lên 16 mức cách từ -0x8000 đến 0x7FFF Khoảng cách mức chọn 0x111 để có khoảng cách Mức điện áp chọn sau truyền sóng vng Chu kỳ sóng vuông đạt cách xuất mức điện áp nhiều lần (ví dụ 12 lần) để đạt dạng sóng vng tốt ngõ phát (sau qua D/A) Cùng cách thực phát áp dụng cho PAM mức (4-PAM) mức (8-PAM) với khác mặt nạ, dịch bảng tra Đối với 8-PAM, bit có trọng số thấp (LSB) mẫu vào loại bỏ để số bit lại (15) bội số 56 Tài liệu thí nghiệm Xử lý số tín hiệu Điều gây tác động khơng đáng kể lên dạng sóng điều chế dạng sóng khơi phục lại Các bảng tra điều chế – PAM – PAM sau: Bảng Bảng tra PAM mức Khối ký hiệu Mức điện áp (dạng Hex) 00 0x7FFF 01 0x2AAA 10 - 0x2AAB 11 - 0x8000 Bảng Bảng tra PAM mức Khối ký hiệu Mức điện áp (dạng số Hex) 000 0x7FFF 001 0x5B6D 010 0x36DB 011 0x1249 100 - 0x1249 101 - 0x36DB 110 - 0x5B6D 111 - 0x7FFF Chương trình thực Hãy thực theo bước sau: Cấp nguồn điện cho kit chạy chương trình Code Compose Studio máy tính Mở project PAM4 folder C:\CCStudio_v3.1\MyProjects\PAM4\ Trong cửa sổ File View, double click lên tập tin PAM4.c để mở Đây tập tin chứa mã nguồn chương trình Nội dung tập tin sau: // PAM #include "DSK6713_aic23.h" Uint32 fs=DSK6713_AIC23_FREQ_8KHZ; #include //Initialization: int i_PAM; int j_PAM; int k; int masked_value, output; int data_4PAM[4] = {0x7FFF, 0x2AAA, -0x2AAB, -0x8000}; 57 Tài liệu thí nghiệm Xử lý số tín hiệu int out_buffer[256]; int i=0; interrupt void c_int11() { int sample_data; //interrupt service routine if (i_PAM==96) { sample_data = input_sample(); //inputs data i_PAM=0; j_PAM=0; } masked_value = sample_data & 0x0003; output = data_4PAM[masked_value]; output_sample(output); out_buffer[i++] = output; if (i==256) i = 0; j_PAM++; //repeated output counter if (j_PAM==12) { j_PAM=0; sample_data = sample_data >> 2; } i_PAM++; return; } void main() { i_PAM=0; comm_intr(); while(1); } //init DSK, codec, McBSP //infinite loop Trong chương trình này, hàm main( ) đặt giá trị biến i_PAM = khởi động kit Sau thực vịng lặp vơ tận với lệnh while (1) Khi có tín hiệu xung lấy mẫu (tần số 8KHz), ngắt 11 xảy trình phục vụ ngắt c_int11( ) gọi Trong trình phục vụ ngắt này, liệu vào đọc vào biến sample_data (bằng lệnh sample_data = input_sample( )) Mẫu liệu biểu diễn dạng số nguyên 16 bit có dấu Do thực điều chế PAM mức, mà để biểu diễn mức cần bit Do đó, mẫu liệu vào chia làm ký hiệu (symbol), ký hiệu bit Để thực việc chia này, mẫu liệu AND với mặt nạ 00000000 00000011 (tức 0x0003) để lấy bit LSB mẫu liệu bit ánh xạ thành mức điện áp cách sử dụng bảng data_4PAM Bảng có 58 Tài liệu thí nghiệm Xử lý số tín hiệu giá trị ứng với mức điện áp (0x7FFF, 0x2AAA, -0x2AAB, -0x8000) khai báo đầu chương trình Mỗi symbol cho mức điện áp Để cho dạng sóng xuất sau qua A/D có dạng sóng vng, mức xuất 12 lần trước chuyển sang mức ứng với symbol Biến đếm j_PAM để đếm số lần xuất cho đủ 12 lần Như vậy, ứng với mẫu vào 16 bit, ta có symbol Mỗi symbol xuất 12 lần, số lần xuất ứng với mẫu x 12 = 96 thể biến đếm i_PAM Ví dụ: Mẫu vào có giá trị 0x001B (tức 00000000 00011011) Mẫu chứa vào biến sample_data - Đầu tiên: sample_data = 00000000 00011011  Sample_data AND 0x0003 = 00000000 00000011 (= 3)  data_4PAM(3) = - 0x8000  mức điện áp – 0x8000 xuất 12 lần - Tiếp theo: sample_data dịch phải bit  00000000 00000110  Sample_data AND 0x0003 = 00000000 00000010 ( = 2)  data_4PAM(2) = - 0x2AAB  mức điện áp -0x2AAB xuất 12 lần - Quá trình tiếp tục hết 16 bit mẫu vào, tức dịch lần, lần xuất 12 lần  số lần xuất tổng cộng i_PAM = x 12 = 96 lần Sau đọc vào mẫu thực điều chế Ở đây, đệm nội out_buffer có kích thước 256 mẫu dùng để lưu lại giá trị xuất nhằm phục vụ cho việc vẽ tín hiệu xuất cơng cụ Plot CCS (xem phần hướng dẫn vẽ đồ thị CCS) Chọn Project  Rebuild All để biên dịch chương trình Sau biên dịch thành cơng, nạp chương trình lên kit (File  Load Program) chạy thử chương trình Mở máy phát sóng lên quan sát dạng sóng xuất Ở quan sát theo cách: (1) sử dụng Code Compose Studio để vẽ giá trị đệm nội out_buffer (2) quan sát tín hiệu xuất ngõ Line Out kit Oscilloscope Do sử dụng máy phát sóng, dạng sóng thay đổi liên tục nên kết khó kiểm chứng Hãy sửa câu lệnh sample_data = input_sample( ) thành sample_data = 0x???? (một giá trị 16 bit dạng số hex) biên dịch, nạp chạy lại chương trình.Vẽ lại dạng sóng xuất CCS Lúc này, mẫu vào giá trị cố định nhập vào dạng sóng xuất dễ dàng kiểm chứng Hãy thử vài giá trị nhập vào vẽ dạng sóng xuất Bài tập Hãy chép tồn Folder PAM4 sang Folder đặt tên tùy ý Thực tập sau folder để không làm ảnh hưởng đến phần làm Chỉnh sửa lại chương trình để thực điều chế PAM mức Gợi ý: - Mỗi symbol gồm 3bits Do mẫu vào có 16 bits, cần bỏ bits LSB (bằng cách dịch phải sample_data bit) để lại 15 bits bội số mẫu tạo symbols - Mặt nạ để lấy bit LSB 00000000 00000111 (0x0007) - Sử dụng bảng tra ứng với 8-PAM để khai báo mức áp tương ứng Tương tự, thực mạch điều chế PAM 16 mức kit 59 Tài liệu thí nghiệm Xử lý số tín hiệu Trong phần báo cáo, cần để phần mã nguồn ứng với giải thuật điều chế Giải thích vẽ vài dạng sóng điều chế thu để kiểm chứng 6.2 Thực mạch điều chế PSK kit C6713 Trong thí nghiệm này, hai điều chế PSK thực PSK nhị phân QPSK Giải thuật điều chế Mỗi mẫu vào thu lưu vào vị trí nhớ, chứa 16 bits Tùy theo kiểu điều chế PSK (2 pha hay pha), mặt nạ thích hợp sử dụng Đối với BPSK, giá trị mẫu vào chia làm 16 thành phần, thành phần bit; QPSK, mẫu vào chia thành dibits (mỗi dibit gồm bits) Việc đạt cách áp mặt nạ tương ứng 0x0001 0x0003 lên mẫu vào Sau đó, mẫu dịch phải bit ( BPSK) bit (QPSK) lặp lại hết chiều dài mẫu vào Sau cắt mẫu vào thành đoạn trên, giá trị gán cho dạng sóng hình sine với pha tương ứng Trong BPSK, có pha 0 180 ứng với bit bit Tuy nhiên, với QPSK, cần pha (0, 90, 180 270) ứng với 00, 01, 11 10 Việc ánh xạ thực theo mã Gray (Gray code) nhằm làm cực tiểu lỗi nhiễu trình truyền cách cực đại khoảng cách ký hiệu giản dồ constellation Mỗi mẫu vào biểu diễn 16 bits Mỗi mẫu gồm 16 đoạn (với BPSK) đoạn (với QPSK) Do ký hiệu truyền hình sine tạo theo phương pháp số điểm, 64 mẫu (với BPSK) 32 mẫu (với QPSK), mẫu vào lấy vào Chương trình thực Hãy thực theo bước sau: Cấp nguồn điện cho kit chạy chương trình Code Compose Studio máy tính Mở project BPSK folder C:\CCStudio_v3.1\MyProjects\BPSK\ Trong cửa số File View, double click chuột lên tập tin BPSK.c để mở Đây tập tin chứa mã nguồn chương trình Nội dung chương trình sau: //BPSK #include "DSK6713_aic23.h" Uint32 fs=DSK6713_AIC23_FREQ_8KHZ; #include //Initialization: int i_BPSK; int j_BPSK; int k; int masked_value, output; int out_buffer[256]; int i=0; //Data table for BPSK int data_BPSK[2][4]={0, 1000, 0, -1000, 60 //0 degree Tài liệu thí nghiệm Xử lý số tín hiệu 0, -1000, 0, 1000}; //180 degree interrupt void c_int11() { int sample_data; //interrupt service routine if (i_BPSK==64) //determines when to get new input { sample_data = input_sample(); //inputs data i_BPSK=0; j_BPSK=0; } masked_value = sample_data & 0x0001; output = data_BPSK[masked_value][j_BPSK]; output_sample(output*10); out_buffer[i++] = output*10; if (i==256) i = 0; j_BPSK++; //repeated output counter if (j_BPSK==4) { j_BPSK=0; sample_data = sample_data >> 1; } i_BPSK++; return; } void main() { i_BPSK=64; j_BPSK=0; comm_intr(); while(1); } //infinite loop Hàm main( ) đặt biến đếm i_BPSK = 64 j_BPSK = 0, khởi động kit codec chạy vịng lặp vơ tận Khi có xung lấy mẫu, ngắt 11 kích hoạt trình phục vụ ngắt c_int11( ) gọi Trình phục vụ ngắt đọc mẫu liệu ngõ vào Mẫu biểu diễn 16 bit Khi điều chế BPSK, symbol gồm bit (để phân biệt pha 0 180 cần bit), đó, mẫu vào chia làm 16 symbol cách sử dụng mặt nạ 0x0001 để lấy bit LSB Tùy bit hay mà xuất dạng sóng sine có pha tương ứng Ví dụ: Mẫu vào 0x0003 AND với mặt nạ 0x0001 cho bit Do đó, dạng sóng sine xuất có pha 180 Ở đây, sóng sine tạo điểm, lần muốn xuất sóng sine, chương trình xuất giá trị thể chu kỳ sóng sine 61 Tài liệu thí nghiệm Xử lý số tín hiệu Trong chương trình trên, giá trị khai báo biến data_BPSK[2][4] Đây mảng chiều kích thước 2x4 thể dạng sóng sine: pha 0 {0, 1000, 0, 1000} pha 180 {0, -1000, 0, 1000} Giá trị thể biên độ sóng sine chu kỳ, thời điểm 0, T/4, T/2 3T/4 (T chu kỳ) Sau xuất đủ điểm, mẫu vào dịch sang phải bit lấy mặt nạ bit LSB Lặp lại hết chiều dài mẫu Như vậy, mẫu vào 16 bit có 16 symbol, symbol tạo chu kỳ sóng sine gồm điểm, với mẫu vào, chương trình xuất x 16 = 64 mẫu biến đếm i_BPSK giúp xác định phép lấy mẫu vào Biên dịch chương trình Nếu thành cơng, nạp chương trình biên dịch lên kit để chạy thử Mở máy phát sóng lên quan sát dạng sóng xuất Ở quan sát theo cách: (1) sử dụng Code Compose Studio để vẽ giá trị đệm nội out_buffer (2) quan sát tín hiệu xuất ngõ Line Out kit Oscilloscope Do sử dụng máy phát sóng, dạng sóng thay đổi liên tục nên kết khó kiểm chứng Hãy sửa câu lệnh sample_data = input_sample( ) thành sample_data = 0x???? (một giá trị 16 bit dạng số hex) biên dịch, nạp chạy lại chương trình.Vẽ lại dạng sóng xuất CCS Lúc này, mẫu vào giá trị cố định nhập vào dạng sóng xuất dễ dàng kiểm chứng Hãy thử vài giá trị nhập vào vẽ dạng sóng xuất Bài tập Hãy chép toàn folder BPSK sang folder đặt tên QPSK Chỉnh sửa lại chương trình để thực điều chế QPSK Sau biên dịch chạy kit để kiểm chứng kết thực Gợi ý : - Điều chế QPSK cần pha: , 90 , 180  270 nên cần khai báo mảng x 4: sóng sine lệch pha 90 , sóng sine có điểm Đặt tên mảng data_QPSK[4][4] thay cho data_BPSK sửa lại tên biến cho phù hợp - Mỗi symbol gồm bit, cần sử dụng mặt nạ thích hợp để lấy bit LSB lần dịch bit - Thay đổi biến đếm cho thích hợp mẫu vào gồm symbols Trong phần báo cáo, trình bày phần mã nguồn ứng với giải thuật điều chế (phần tự thực hiện) Giải thích làm vẽ vài dạng sóng điều chế thu để kiểm chứng 62 Tài liệu thí nghiệm Xử lý số tín hiệu Tài liệu tham khảo [1] Rulph Chassaing , Digital Signal Processing and Applications with the C6713 and 6746 DSK, John Wiley & Sons, Inc 2005 [2] Lê Tiến Thường, Xử lý số tín hiệu & Wavelet, Nhà xuất Đại học Quốc Gia TP HCM, 2004 [3] J Proakis, D Manolakis, Introduction to Digital Signal Processing, MacMillan Publisher, 1989 [4] The Wikipedia ( http://en.wikipedia.org/wiki/ ) 63 ... tần số tín hiệu c Tính A y[3] để tạo tone có tần số 1kHz Sau hiệu chỉnh project dịch lại Kiểm tra tín hiệu có phải tone có tần số 1kHz khơng? 40 Tài liệu thí nghiệm Xử lý số tín hiệu 41 Tài liệu. .. này? Thay đổi tần số tín hiệu vào Quan sát phổ ngõ Giải thích thay đổi Vẽ phổ tín hiệu ngõ tần số tín hiệu vào 0.5kHz, 1kHz 1.5kHz Giải thích? 30 Tài liệu thí nghiệm Xử lý số tín hiệu BÀI 2: THỰC... THIẾT BỊ THÍ NGHIỆM Tài liệu thí nghiệm Xử lý số tín hiệu SỬ DỤNG MATLAB ĐỂ THIẾT KẾ BỘ LỌC SỐ 1.1 Thiết kế lọc số cơng cụ SPTool SPTool cơng cụ có giao diện tương tác dùng cho xử lý số tín hiệu

Ngày đăng: 25/06/2014, 12:31

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan