Professional Documents
Culture Documents
MỤC LỤC
CHƯƠNG 1. TÍN HIỆU- HỆ THỐNG - LẤY MẪU VÀ KHỒI PHỤC TÍN HIỆU 3
1.1 GIỚI HIỆU HỆ THỐNG XỬ LÝ SỐ TÍN HIỆU 3
1.1.1 Các thành phần cơ bản của hệ thống DSP 3
1.1.2 Các ưu điểm của xử lý số so với xử lý tương tự 3
1.2 TÍN HIỆU VÀ HỆ THỐNG RỜI RẠC 3
1.2.1 Tín hiệu thời gian rời rạc 3
1.2.2 Hệ thống thời gian rời rạc 5
1.3 TÍN HIỆU VÀ HỆ THỐNG TƯƠNG TỰ 9
1.3.1 Tín hiệu tương tự 9
1.3.2 Hệ thống tuyến tính 9
1.4 LẤY MẪU VÀ HỒI PHỤC 9
1.4.1 Định lý lấy mẫu và méo dạng tín hiệu 9
1.4.2 Phổ tín hiệu lấy mẫu 12
1.4.3 Khôi phục tín hiệu tương tự 15
1
Phan Văn Ca - Trường Đại học GTVT Tp.HCM
Bài giảng: Xử lý số tín hiệu
2
Phan Văn Ca - Trường Đại học GTVT Tp.HCM
Bài giảng: Xử lý số tín hiệu
1. Bộ lọc thông thấp LPF để giới hạn phổ của tín hiệu.
2. Bộ biến đổi A/D.
3. Bộ DSP.
4. Bộ khôi phục.
5. Bộ lọc thông thấp có tác dụng loại bỏ hết các thành phần phổ ảnh còn sót lại
sau quá trình lấy mẫu.
3
Phan Văn Ca - Trường Đại học GTVT Tp.HCM
Bài giảng: Xử lý số tín hiệu
Trong đó:
-
Tín hiệu nấc:
Hay:
-
Tín hiệu hàm mũ
4
Phan Văn Ca - Trường Đại học GTVT Tp.HCM
Bài giảng: Xử lý số tín hiệu
Trong đó:
-
Tín hiệu phức được gọi là đối xứng liên hiệp:
x(n) = x*(-n)
Và phản đối xứng liên hiệp:
x(n) = - x*(-n)
7. Các thao tác trên tín hiệu:
-
Phép tịnh tiến:
y(n) = x (n – n0)
-
Phép đảo ngược :
y(n) = - x(n)
-
Phép lấy tỷ lệ thời gian:
-
Phép cộng:
y(n) = x1(n) + x2(n)
Phép cộng được thực hiện bằng cách cộng từng điểm các giá trị của các tín
hiệu.
-
Phép nhân:
y(n) = x1(n).x2(n)
Phép nhân được thực hiện bằng cách nhân từng điểm các giá trị của tín hiệu.
-
Lập tỷ lệ:
y (n) = cx (n)
5
Phan Văn Ca - Trường Đại học GTVT Tp.HCM
Bài giảng: Xử lý số tín hiệu
6
Phan Văn Ca - Trường Đại học GTVT Tp.HCM
Bài giảng: Xử lý số tín hiệu
|a| < 1
|a| >1
Ví dụ:
x(n) = anu(n), h(n) = u (n)
Phương pháp đồ thị
Phương pháp này được khảo sát trong chương 4
Phương pháp lật và trượt
Phương pháp này được khảo sát trong chương 4
d. Phương trình sai phân
7
Phan Văn Ca - Trường Đại học GTVT Tp.HCM
Bài giảng: Xử lý số tín hiệu
Dạng nghiệm:
yh(n) =zn
Suy ra:
8
Phan Văn Ca - Trường Đại học GTVT Tp.HCM
Bài giảng: Xử lý số tín hiệu
X() biểu diễn x(t) như một quá trình dịch chuyển tuyến tính các sóng sin trên
trục tần số.
Biến đổi Laplace:
Quan hệ vào-ra:
X(f)
-fmax fmax
9
Phan Văn Ca - Trường Đại học GTVT Tp.HCM
Bài giảng: Xử lý số tín hiệu
10
Phan Văn Ca - Trường Đại học GTVT Tp.HCM
Bài giảng: Xử lý số tín hiệu
Mặt khác, tín hiệu cũng được lấy mẫu với chu kỳ T:
Từ đó ta nhận thấy rằng, căn cứ vào các mẫu thu được ta không thể phân biệt
được các tín hiệu xm(t). Hay nói cách khác, tập hợp các tần số
sau khi lấy mẫu sẽ cho các tín hiệu lấy mẫu hoàn toàn giống
nhau.
Bộ khôi phục lý tưởng lấy các thành phần tần số trong khoảng [-f s/2, fs/2] và loại
bỏ các thành phần ngoài khoảng này.
Sau khi phục hồi, tần số tín hiệu analog ngõ ra được xác định bằng cách thực hiện
phép toán cho đến khi
11
Phan Văn Ca - Trường Đại học GTVT Tp.HCM
Bài giảng: Xử lý số tín hiệu
Trên thực tế, mỗi mẫu phải được giữ cố định trong một chu kỳ thời gian ngắn .
Tín hiệu lấy mẫu thực tế:
Ta chỉ xét đến trường hợp lý tưởng, trong đó phổ được biểu diễn theo hai cách:
biến đổi Fourier của tín hiệu x(t) và áp dụng tính chất lặp phổ.
2. Biến đổi Fourier thời gian rời rạc
Biến đổi Fourier tín hiệu lấy mẫu lý tưởng ta được:
Từ đó ta có:
Biểu thức được gọi là biến đổi Fourier thời gian rời rạc (DTDT)
Một số tính chất liên quan đến phổ DTFT
chỉ tính được khi biết trước x(nT).
là hàm tuần hoàn chu kỳ fs.
Thật vậy:
Trong tính toán thực tế, để tính phổ của tín hiệu rời rạc ta dùng hai phép xấp xỉ
sau:
a) Dùng một số mẫu hữu hạn x(nT) chiều dài L
b) Tính tại một số giá trị f nào đó được chọn trước (rời rạc phổ) (DFT)
3. Sự lặp phổ
Tín hiệu lấy mẫu có thể được biểu diễn theo dạng sau:
Ta xem quá trình lấy mẫu là sự điều chế tín hiệu x(t) theo sóng mang s(t).
Khai triển s(t) theo tổ hợp tuyến tính các thành phần hài:
12
Phan Văn Ca - Trường Đại học GTVT Tp.HCM
Bài giảng: Xử lý số tín hiệu
Trong đó, mỗi thành phần hài được xem là một sóng mang hình sin tạo ra sự dịch
phổ riêng của nó.
Từ đó ta có được:
Ta có thể chứng minh công thức này theo cách khác như sau:
Ta có:
Suy ra:
-fs fs
13
Phan Văn Ca - Trường Đại học GTVT Tp.HCM
Bài giảng: Xử lý số tín hiệu
H(f)
Astop
Tần số fstop và Astop phải được chọn hợp lý sao cho hiện tượng chồng lấn phổ xảy ra
không đáng kể.
fstop thường được chọn theo công thức sau:
fstop = fs – fpass hay fs = fpass + fstop
Suy hao bộ lọc
Thông thường cạnh xuống của bộ lọc có dạng hàm mũ 1/sN với s lớn, N: hệ số
của bộ lọc. Do vậy:
(f >> 1)
Ngoài ra, độ suy hao của bộ lọc còn tính theo dB/octave
Hay:
(dB/octave)
Bộ khôi phục
yˆ (t ) bậc thang
y a (t )
(A/D)
Thực chất các bộ khôi phục tín hiệu có thể được coi như các bộ lọc thông thấp.
Bộ lọc tương
yˆ (t )
tự thông thấp
y a (t )
h(t) 14
Phan Văn Ca - Trường Đại học GTVT Tp.HCM
Bài giảng: Xử lý số tín hiệu
Suy ra:
Việc lấp khoảng trống được thực hiện bằng cách bắt đầu từ y(nT) và nội suy theo
hàm h(t) cho đến khi gặp mẫu trong miền tần số.
Với:
Với
H(f)
T
-fs/2 0 fs/2
Ta có:
H(f) lý tưởng
TYˆ ( f )
Y(f) Y(f-fs)
-fs fs
15
Phan Văn Ca - Trường Đại học GTVT Tp.HCM
Bài giảng: Xử lý số tín hiệu
Bộ lọc triệt tiêu hệ số 1/T trong và các thành phần phổ bên ngoài khoảng
Nyquist.
Suy ra: ya(t) được khôi phục giống hệt y(t) ban đầu.
Hay:
Bộ khôi phục lý tưởng có đáp ứng xung không nhân quả và vô hạn. Trong thực tế
người ta sử dụng bộ giữ bậc thang.
h(t) Bậc thang
Lý tưởng
Tín hiệu sau khi qua bộ khôi phục vẫn còn chứa các thành phần cao tần tạo ra sự
thay đổi đột ngột giữa các bậc thang.
Phổ của đáp ứng xung:
H(f)
4dB
Bộ lọc bậc thang làm suy hao phổ chính và không triệt tiêu hết phổ lặp.
16
Phan Văn Ca - Trường Đại học GTVT Tp.HCM
Bài giảng: Xử lý số tín hiệu
Chức năng chính của bộ lọc này là loại bỏ hết thành phần phổ ảnh còn sót lại
sau bộ khôi phục bậc thang.
b. Bộ cân bằng
Bộ khôi phục bậc thang không hoàn toàn phẳng bên trong dải Nyquist. Suy hao
t/ ại fs/2:
Suy hao này có thể bù được bằng cách dùng một bộ lọc số cân bằng ở phía trước
bộ khôi phục bậc thang.
Đáp ứng tần số của bộ cân bằng được tính bằng nghịch đảo đáp ứng bộ DAC.
17
Phan Văn Ca - Trường Đại học GTVT Tp.HCM
Bài giảng: Xử lý số tín hiệu
xQ(nT)
x(t) T
x(nT)
DSP
B bit/mẫu
Mỗi mẫu lượng tử hóa xQ(nT) được biểu diễn bằng B bit mang một trong 2B giá trị
cho phép.
Bộ biến đổi A/D đặc trưng bởi tầm đo toàn thang R, được chia thành 2 B mức
lượng tử (lượng tử đều)
Khoảng cách giữa các mức gọi là độ rộng lượng tử Q
18
Phan Văn Ca - Trường Đại học GTVT Tp.HCM
Bài giảng: Xử lý số tín hiệu
Sai số trung bình bằng không nên ta có thể giả thiết rằng sai số lượng tử e là biến
ngẫu nhiên có phân bố đều trong khoảng
Trong đó p(e) được chuẩn hóa bằng 1/Q nhằm đảm bảo:
Và
Hay
Khi số bit lượng tử tăng lên một bit thì SNR tăng 6dB. Quy luật này được gọi là
quy luật 6dB.
-fs/2 0 fs/2 f
Suy ra công suất nhiễu trong khoảng [fa, fb] thuộc trong khoảng Nyquist:
19
Phan Văn Ca - Trường Đại học GTVT Tp.HCM
Bài giảng: Xử lý số tín hiệu
Bộ định dạng nhiễu là bộ lọc HNS(f) có chức năng lọc lại chuỗi nhiễu e(n) và làm
thay đổi dạng phổ của nó.
e(n)
HNS(f)
(n)
x(n) xQ(n)
Hay:
Hay:
20
Phan Văn Ca - Trường Đại học GTVT Tp.HCM
Bài giảng: Xử lý số tín hiệu
Với
với
Từ đó suy ra:
hay:
fs f’s
Bộ lọc Bộ tái lượng tử f’s Hậu analog
DSP nội suy DAC
định dạng nhiễu lọc
B bits B bits B’ bits out put
b1 MSB
b2 xQ
b3
bB
LSB
R
21
Phan Văn Ca - Trường Đại học GTVT Tp.HCM
Bài giảng: Xử lý số tín hiệu
Với
Mức ứng với mỗi mẫu b = [1, 0, 0, 0…0 ]. Hạn chế này được khắc phục
bằng mã bù 2
2.3.3 Mã bù 2
Dạng mã này thu được từ mã nhị phân offset trong đó bit có trọng số cao nhất
được lấy bù:
b1
x(t) ADC 22
Phan Văn Ca - Trường Đại học GTVT Tp.HCM
bB
LSB
Bài giảng: Xử lý số tín hiệu
x
+_ SAR
b1 b2 …bB
xQ MSB
b1 b2 …bB LSB
DAC
Tạo Dither
Dither số là dither được thêm vào tín hiệu số trước khi tái lượng tử giảm số bit.
23
Phan Văn Ca - Trường Đại học GTVT Tp.HCM
Bài giảng: Xử lý số tín hiệu
Ngõ vào bộ lượng tử là tín hiệu vào x(n) cần lượng tử và tái lượng tử cùng với
dither v(n).
p(v)
1/Q
-Q/2 Q/2
Ta có:
-Q Q
24
Phan Văn Ca - Trường Đại học GTVT Tp.HCM
Bài giảng: Xử lý số tín hiệu
Ta có:
Trong các loại dither trên thì Dither tam giác là tốt nhất.
4. Dither trừ
v(n)
Tạo
dither
Sai số tổng:
Dither trừ dạng chữ nhật với độ rộng 1 LSB là loại dither tốt nhất cho việc loại bỏ
méo lượng tử và làm cho sai số độc lập với tín hiệu vào. Tuy nhiên loại dither này
rất khó thực hiện trong thực tế.
Dither tam giác loại không trừ không làm cho sai số độc lập với tín hiệu ngõ vào,
chỉ có công suất của sai số độc lập với tín hiệu ngõ vào. Loại dither này được ứng
dụng nhiều trong âm thanh số.
25
Phan Văn Ca - Trường Đại học GTVT Tp.HCM
Bài giảng: Xử lý số tín hiệu
Tương tự, biến đổi z của đáp ứng xung h(n) của bộ lọc được định nghĩa:
Biến đổi z là một hàm theo biến phức. Trong thực tế, người ta thường biểu diễn
biến đổi z trên một mặt phẳng phức.
Re(z)
Đường tròn ứng với z = 1gọi là vòng tròn đơn vị. Phép biến đổi z trên vòng tròn
đơn vị ứng với phép biến đổi Fourier thời gian rời rạc.
2. Tính trễ
3. Tích chập
26
Phan Văn Ca - Trường Đại học GTVT Tp.HCM
Bài giảng: Xử lý số tín hiệu
5. Đạo hàm
Ví dụ 1:
h(n) = {h(0), h(1), h(2), h(3)}= {2, 3, 4, 5}
H(z) = h0 + h1z-1 + h2z-2 + h3z-3 = 2 + 3z-1 + 4z-2 + 5z-3
Một cách khác ta có: h(n) = 2(n) + 3(n-1) + 4(n-2) + 5(n-3)
Ta có:
Và:
Từ đó ta cũng có được:
Nhận xét: Hai tín hiệu khác nhau nhưng có cùng một biến đổi z
Miền hội tụ xác định một biến đổi z ngược duy nhất cho biến đổi z.
Một cách tổng quát, ta có thể viết:
27
Phan Văn Ca - Trường Đại học GTVT Tp.HCM
Bài giảng: Xử lý số tín hiệu
Ta có:
Ví dụ 2:
x(n) = -(0, 5)nu(-n-1)
Ta có:
Ví dụ 3:
28
Phan Văn Ca - Trường Đại học GTVT Tp.HCM
Bài giảng: Xử lý số tín hiệu
Giả sử:
Với
Trường hợp 2: Bậc N(z) lớn hơn bậc D(z)
Trong đó:
Ví dụ:
29
Phan Văn Ca - Trường Đại học GTVT Tp.HCM
Bài giảng: Xử lý số tín hiệu
Trong đó:
Từ đó ta có:
x(n) = ¼[(-1)n + 1 + 2(n+1)]
Với điều kiện hội tụ của từng thành phần: |z| > |p1|, |p2|, |p3|, …ROC chung cho tất
cả các trường hợp:
Tín hiệu/hệ thống nhân quả ứng với ROC nằm ngoài vòng tròn xác định bởi cực
có biên độ lớn nhất.
Xét tín hiệu phản nhân quả:
Xét tín hiệu nhân quả có dạng:
Với điều kiện hội tụ của từng thành phần: |z| < |p1|, |p2|, |p3|, …ROC chung cho tất
cả các trường hợp:
Tín hiệu/hệ thống nhân quả ứng với ROC nằm trong vòng tròn xác định bởi cực
có biên độ nhỏ nhất.
Tín hiệu tổ hợp có ROC nằm giữa hai vòng tròn: vòng tròn trong chứa các cực có
phân bố nhân quả và các cực có phân bố phản nhân quả nằm ngoài vòng tròn
ngoài.
30
Phan Văn Ca - Trường Đại học GTVT Tp.HCM
Bài giảng: Xử lý số tín hiệu
Tín hiệu/hệ thống ổn định nếu ROC của biến đổi z tương ứng phải chứa vòng tròn
đơn vị.
Trong đó là tập hợp tất cả các điểm z nằm trên vòng tròn đơn vị. Khi
thay đổi trong khoảng Nyquist [-, ] thì thay đổi xung quang vòng tròn
đơn vị.
Để phổ tồn tại ROC của X(z) phải chứa vòng tròn đơn vị. Do vậy, biến đổi
Fourier/ Đáp ứng tần số chỉ tồn tại với tín hiệu/ hệ thống ổn định.
Tín hiệu ổn định biên có cực nằm trên vòng tròn đơn vị.
Chú ý biến đổi z của một số tín hiệu sau:
Tin hiệu thuần sin:
Do tính không nhân quả của tín hiệu sin làm xuất hiện thêm các thành phần hài.
0
Dạng cực và zero ảnh hưởng đến dạng phổ của tín hiệu/Đáp ứng của hệ thống.
Ví dụ:
|X()|
zero
Pole
31
Phan Văn Ca - Trường Đại học GTVT Tp.HCM
Bài giảng: Xử lý số tín hiệu
G(z)
Hay
32
Phan Văn Ca - Trường Đại học GTVT Tp.HCM
Bài giảng: Xử lý số tín hiệu
x= L
y = h*x L M
Ta có:
0mM
0 n - m L-1 suy ra m n L-1 + m
Từ đó ta suy ra:
0 m n L-1 + m 0 n L-1+ M
Suy ra:
y(n) = [y0, y1, ...yL-1+M]
33
Phan Văn Ca - Trường Đại học GTVT Tp.HCM
Bài giảng: Xử lý số tín hiệu
Ví dụ:
Suy ra:
x0 x1 x2 x3 x4
h0 h0x0 h0x1 h0x2 h0x3 h0x4
h1 h1x0 h1x1 h1x2 h1x3 h1x0
h2 h2x0 h2x1 h2x2 h2x3 h2x4
h3 h3x0 h3x1 h3x2 h3x3 h3x4
Điều kiện i + j = n tương ứng với các phần tử trên đường chéo phụ thứ n.
Tác động của bộ lọc là thay thể mỗi xung bị trễ bởi các đáp ứng xung bị trễ tương
ứng.
Ví dụ cho:
x(n) = [x0, x1, x2, x3, x4] = x0(n) + x1(n-1) +x2(n-2) + x3(n-3)+x4(n-4)
h(n) = [h0, h1, h2, h3]
Suy ra:
34
Phan Văn Ca - Trường Đại học GTVT Tp.HCM
Bài giảng: Xử lý số tín hiệu
h0 h1 h2 h3 h0 h1 h2 h3 h0 h1 h2 h3
35
Phan Văn Ca - Trường Đại học GTVT Tp.HCM
Bài giảng: Xử lý số tín hiệu
M mẫu ngõ ra đầu tiên tương ứng sự đáp ứng tức thời đối với M mẫu dữ liệu
vào của bộ lọc.
Các mẫu ngõ ra ứng với M n L-1 tương ứng với trạng thái tĩnh của bộ lọc.
M mẫu ngõ ra cuối cùng sau khi kết thúc chuỗi dữ liệu ngõ vào ứng với
tương ứng với trạng thái dữ liệu vào tắt của bộ lọc.
n
hm x n m Nếu 0 n M (trạng thái ngõ vào mở)
m 0
M
Nếu M n L-1 (trạng thái tĩnh)
y n hm x n m
m 0
M
hm x n m Nếu (trạng thái ngõ vao tắt)
m n L 1
Ví dụ:
Cho , x(n) = u(n). Dùng công thức tích chập tìm y(n).
36
Phan Văn Ca - Trường Đại học GTVT Tp.HCM
Bài giảng: Xử lý số tín hiệu
y0 = L M
y1 = L M
y2 = L M
n=0 n=L n = 2L n = 3L
Ví dụ:
Cho x(n) = [1, 1, 2, 1, 2, 2, 1, 1], Lx = 8; h(n) = [1, 2, -1, 1], M = 3.
Tính y(n) = h(n)*x(n) bằng phương pháp khối chồng lấp với L = 3.
Ta có:
x(n) = [1, 1, 2, 1, 2, 2, 1, 1, 0]
x0 x1 x2
y0 = h*x0 = [1, 3, 3, 4, -1, 2]
y1 = h*x1 = [1, 4, 5, 3, 0, 2]
y2 = h*x2 = [1, 3, 1, 0, 1, 0]
Ly = Lx + M = 11
Ba khối phụ độc lập nhau và bắt đầu tại các thời điểm n = 0, 3, 6. Những khối này
độc lập và bất biến theo thời gian. Do vậy, ngõ ra cũng độc lập và bất biến theo
thời gian
n 0 1 2 3 4 5 6 7 8 9 10
y0 1 3 3 4 -1 2
y1 1 4 5 3 0 2
y2 1 3 1 0 1
y 1 3 3 5 3 7 4 3 3 0 1
37
Phan Văn Ca - Trường Đại học GTVT Tp.HCM
Bài giảng: Xử lý số tín hiệu
Thuật toán xử lý mẫu liên quan đến thuật toán xử lý khối trong phương
trình I/O. Biểu đồ khối cho phương trình I/O gồm ba khối cơ bản
x2(n)
a
Bộ nhân x(n) a.x(n)
Z--1
Bộ làm trễ x(n)
x(n-1)
w2(n)
38
Phan Văn Ca - Trường Đại học GTVT Tp.HCM
Bài giảng: Xử lý số tín hiệu
hM
Z-1
wM(n)
Thuật toán xử lý
w0(n) = x(n)
y(n) = h0w0(n) + h1w1(n) + ….+hMwM(n)
wi(n+1) = wi-1(n); i = M, M-1, ….,1.
hiwi
y
y
MAC
39
Phan Văn Ca - Trường Đại học GTVT Tp.HCM
Bài giảng: Xử lý số tín hiệu
2. Bộ đệm vòng
Bộ đệm tuyến tính
w1
xn-1 Dịch xn
dữ liệu
p p
w2 xn-2 xn w0 xn-1 xn+1
xn-3 xn-2
w3
*p = x hay p[0] = x
Bộ đệm vòng
w1 w1
xn-1 xn-1
p
w2 xn-2 xn w0 w2 xn-2 xn w0
xn-3 xn+1
w3 w3
40
Phan Văn Ca - Trường Đại học GTVT Tp.HCM
Bài giảng: Xử lý số tín hiệu
LBF HBF
D() D()
1 1
- -c c - -c c
BBF BSF
D() D()
1 1
Gọi D() là đáp ứng tần số lý tưởng yêu cầu. D() tuần hoàn theo với chu kỳ
2. Do vậy ta chỉ cần đặc tả trong khoảng Nyquist [-, ].
Đáp ứng xung tương ứng d(k) liên kết với d() theo các quan hệ DTFT và DTFT
ngược:
Từ đó ta được:
41
Phan Văn Ca - Trường Đại học GTVT Tp.HCM
Bài giảng: Xử lý số tín hiệu
(LPF):
Tương tự:
(HPF):
(BPF)
(BSF)
Nhận xét: Với cùng tần số cắt c, b, a, thì các bộ lọc LP/HP; BP/BS là bù nhau:
Đáp ứng xung d(k) là giá trị thực và chẵn (đối xứng) và được gọi là các bộ lọc đối
xứng.
Trong miền tần số, D() là hàm thực vav chẵn theo . Xét bộ vi phân và biến đổi
Hilbert
Đáp ứng xung d(k) mang giá trị thực và lẻ theo k được gọi là bộ lọc bất đối xứng.
Trong miền tần số: D() là một hàm ảo và lẻ theo .
42
Phan Văn Ca - Trường Đại học GTVT Tp.HCM
Bài giảng: Xử lý số tín hiệu
Gốc thời gian k = 0 tại điểm giữa d 0 của vector này. Để bộ lọc nhân quả, ta phải
định gốc thời gian về phía trái của vector và đánh lại chỉ số:
Với:
Hay:
Tổng quát: Các bước của phương pháp cửa sổ chữ nhật:
-
Xác định chiều dài lẻ N= 2M+1 và lấy M = (N-1)/2
-
Tính N hệ số d(k)
-
Chuyển bộ lọc về dạng nhân của h(n) = d(n-M).
Ví dụ: cửa sổ hoá đáp ứng xung để xấp xỉ LPF lý tưởng chiều dài 11, c =/4
Suy ra:
Trong miền tần số, việc xấp xỉ FIR cho D() tương đương với việc cắt xén chuỗi
hàm mũ Fourier DTFT thành tổng giới hạn:
Trong miền Z:
Hay:
Suy ra:
Từ đó ta có:
43
Phan Văn Ca - Trường Đại học GTVT Tp.HCM
Bài giảng: Xử lý số tín hiệu
Với
Kết quả ta được:
Trực giác ta thấy khi N tăng. Điều này chỉ đúng tại những điểm
liên tục của D(), nhưng không đúng tại những điểm không liên tục ví dụ tại bờ
dịch chuyển từ băng thông sang băng chắn. Tại các bờ này, sự xấp xỉ sẽ làm phát
sinh hiện tượng Gibbs của chuỗi Fourier, hiện tượng này làm cho sự xấp xỉ xấu đi
với bất kỳ giá trị N đủ lớn nào. Lý giải hiện tượng này, ta có thể xét như sau:
h(n) = (n).d(n-M)
Suy ra:
Với:
Do vậy bộ lọc được thiết kế sẽ là một phiên bản được làm mờ của bộ lọc yêu cầu
D(). Các gợn sóng trong H() sinh ra từ các gợn sóng của phổ W() (được tích
hợp vào)
Khi N tăng lên, ta thấy z có hiệu ứng như sau:
-
Với nằm sâu trong dải thông hoặc dải chắp thì độ gợn giảm đi khi N tăng
lên. Ngoài ra, độ rộng khoảng dịch chuyển cũng giảm đi khi N tăng lên.
-
Độ gợn lớn nhất có khuynh hướng tập trung gần điểm bất liên tục chuyển từ
băng thông sang băng chắn và không giảm khi N tăng (giá trị khoảng 8,9%)
tuỳ N.
Với N = 2M +1
Khi đó h(n) = (n).d(n-M). Độ gợn 0,2% bề rộng dịch chuyển rộng hơn.
44
Phan Văn Ca - Trường Đại học GTVT Tp.HCM
Bài giảng: Xử lý số tín hiệu
Suy ra:
Trong thực tế độ gợn băng thông và băng chắn được tính theo dB.
Trong thực tế :
Cửa sổ Kaiser:
45
Phan Văn Ca - Trường Đại học GTVT Tp.HCM
Bài giảng: Xử lý số tín hiệu
Một số chú ý:
Đối với các bộ lọc LPF, BPF, BSF: h(n) = (n).d(n-M)
Đối với bộ lọc BPF: f = min (f a, fb).
Với N = 2M + 1
Ngoài ra một phương pháp khác có thể sử dụng dựa trên kỹ thuật lập trình
tuyến tính gọi là “metuor” phù hợp với nhiều loại thiết kế với nhiều ràng buộc
(như độ lồi, tính đơn điệu trong dải thông và dải chắn).
46
Phan Văn Ca - Trường Đại học GTVT Tp.HCM
Bài giảng: Xử lý số tín hiệu
47
Phan Văn Ca - Trường Đại học GTVT Tp.HCM
Bài giảng: Xử lý số tín hiệu
xấp xỉ gần với X(f) khi tín hiệu suy hao nhanh theo f.
Trong các hệ thống số, để tính , ta phải sử dụng một xấp xỉ nữa là chỉ giữ
lại một số hữu hạn mẫu của x(nT) với 0 ≤ n ≤ L-1. Khi đó:
Quá trình này được gọi là cửa số hoá trong miền thời gian.Về mặt toán học:
Với = 2f/fs.
XL(w) là DTFT của tín hiệu cửa sổ hoá xL(n)
Quá trình cửa sổ hoá phát sinh ra hai hiệu ứng chính:
Giảm độ phận giải tần số của phổ cần tính.
Sinh ra các thành phần tần số cao giả trong phổ.
Sử dụng tính chất biến đổi Fourier của tích hai hàm thời gian ta có:
XL(n) = x(n).w(n)
Trong đó:
Từ đó ta có:
48
Phan Văn Ca - Trường Đại học GTVT Tp.HCM
Bài giảng: Xử lý số tín hiệu
|X()|
Giả sử , khi đó phổ của tín hiệu x(n) nằm trong khoảng:
. Do vậy, ta có được:
Từ đó :
Hay:
49
Phan Văn Ca - Trường Đại học GTVT Tp.HCM
Bài giảng: Xử lý số tín hiệu
A1(-1)
A2(-2)
A1(-1) A2(-2)
1 2
Hay:
Suy ra:
Cửa sổ Hamming:
50
Phan Văn Ca - Trường Đại học GTVT Tp.HCM
Bài giảng: Xử lý số tín hiệu
- ≤ ≤ 0 ≤ ≤ 2
Ví dụ: có hai cực phổ tại sẽ được mô tả bằng hai vạch phổ được
xác định như sau:
Hay:
6.2.3 DFT
DFT N điểm của một tín hiệu chiều dài L được định nghĩa là DTFT được tính tại
N tần số cách khoảng đều nhau trong toàn khoảng Nyquist:
hay
Từ đó ta có:
(DTFT N điểm)
51
Phan Văn Ca - Trường Đại học GTVT Tp.HCM
Bài giảng: Xử lý số tín hiệu
Điều này khó xảy ra và k0 không phải là số nguyên. Tuy nhiên, với N lớn ta có thể
làm tròn k0 tới số nguyên gần nhất.
Phép biến đổi tuyến tính được thực hiện bởi một ma trận NL gọi là ma trận DFT.
X = DFT(x) =A.x
Hay
x1
x2
x0 + x1 + x2 + x3 ~x (n) x x x x
0 1 2 3
(n = 0, 1, 2, …N -1)
52
Phan Văn Ca - Trường Đại học GTVT Tp.HCM
Bài giảng: Xử lý số tín hiệu
Định lý: Tín hiệu cuộn có chiều dài N sẽ có cùng DFT với tín hiệu gốc x
không cuộn của nó.
Trong đó:
Với
Các ma trận A và có cùng định nghĩa nhưng khác nhau số chiều.
X= Ax [A (N×L)]
Ta có:
Mặt khác :
Hay:
Hay:
Ma trận có thể tìm được từ ma trận mà không cần tìm theo dạng nghịch
đảo của ma trận.
53
Phan Văn Ca - Trường Đại học GTVT Tp.HCM
Bài giảng: Xử lý số tín hiệu
IDFT:
Với:
IDFT:
Mối quan hệ này hữu ích trong việc phân tích tín hiệu tuần hoàn tương tự. Để một
tín hiệu tuần hoàn vẫn còn tuần hoàn sau khi lấy mẫu thì :
fs = Nf1 với f1 là tần số cơ bản.
Mặt khác nếu tín hiệu analog tuần hoàn có một chuỗi hàm mũ Fourier gốc nằm
trong 1 tổng các hàm điều hoà tại các hài của tần số cơ bản thì ta có:
Xét dải bên phải khoảng Nyquist [0, Fs], các hài nằm trong khoảng này không
khác N tần số DFT:
Fk = kf1= kfs/N k = 0, 1, …N-1
Với m cho trước:
m = qN + K 0 k N-1
Suy ra:
fm = mf1 = qNf1 + kf1= qfs + fK
Suy ra fm chồng lấn với fk.
Do vậy nếu x(t) được lấy mẫu thì:
Với
Biên độ chuỗi Fourier chồng lấn.
54
Phan Văn Ca - Trường Đại học GTVT Tp.HCM
Bài giảng: Xử lý số tín hiệu
Từ đó ta có được:
6.8 FFT
FFT là quá trình thực hiện nhanh DFT. Nó dựa trên phương pháp chia để trị trong
đó việc tính DFT được chia thành những vấn đề nhỏ hơn, đơn giản hơn và DFT
cuối cùng là kết quả từ các DFT đơn giản hơn này. Phiên bản Cooley – Tukey
FFT yêu cầu:
N = 2B B = log2N
Từ đó ta được:
Đặt:
Ta có:
55
Phan Văn Ca - Trường Đại học GTVT Tp.HCM
Bài giảng: Xử lý số tín hiệu
Suy ra:
Từ đó ta có:
Với
Suy ra:
x(0) G(0)
G(1)
x(2) DFT G(2)
x(4) 4 điểm
G(3)
x(6)
x ( 0) 0
X(0)
xW H(0) W80
x ( 4) (1)8
x(3)
-1
H(1) 0W81
W8 W 2
-1
X(1)
x ( 2) x(5) 0
DFT H(2)
4 điểm
W82W83
8
-1 -1 X(2)
x (W
-1
x ( 6) 7) 8 -1 H(3) -1
-1
X(3)
Tiếp tục chia nhỏ chuỗi h(n) và g(n) cho đến khi còn hai điểm. Cuối cùng ta có sơ
đồ giải thuật sau:
0
x(1) 0 W 8 -1
X(4)
W8 -1 W81
xPhan
(5) Văn Ca - Trường ĐạiWhọc
0 GTVT Tp.HCM 2
W8
-1
X(5)56
X(6)
x(3) 8 -1 -1
0 2 3
x (7) W8 -1 W 8 -1 W8 -1
X(7)
Bài giảng: Xử lý số tín hiệu
Chú ý:
Mặt khác:
Suy ra:
x ( 0) X(0)
x(4) 0
-1
W 8 X(1)
1
x(5) W W80 X(5)
57
-1
Phan Văn Ca - Trường Đại học 8GTVT
2 Tp.HCM 0 -1
x ( 6)
-1
W8 -1 W8
X(3)
x (7) -1
W 8
3
-1 W8
2
-1 W80 X(7)
Bài giảng: Xử lý số tín hiệu
58
Phan Văn Ca - Trường Đại học GTVT Tp.HCM
Bài giảng: Xử lý số tín hiệu
x= M M M
N N
Khối x0 Khối x1 Khối x2 Khối x3
= M
= M
= M
= M
n=N n = 2N n = 3N
M+N
= M
M
= M
N
M điểm cuối của y được cuộn và cộng vào M điểm đầu, các điểm khác giữ nguyên
giá trị.
Do ngõ vào (các khối) chồng lấp M điểm, các khối ngõ ra cuộn được sắp xếp
thẳng theo thời gian tuyệt đối, M điểm đầu của M khối được loại bỏ và ngõ ra
đúng được lấy từ khối trước.
M điểm đầu của khối đầu tiên không được tính đúng do đó hiệu chỉnh bằng
cách làm trễ tín hiệu M đơn vị thời gian.
Ví dụ:
59
Phan Văn Ca - Trường Đại học GTVT Tp.HCM
Bài giảng: Xử lý số tín hiệu
x = [1, 1, 1, 1, 3, 3, 3, 3, 1, 1, 1, 2, 2, 2, 2, 1, 1, 1, 1]
h = [1, -1, -1, 1]
y = [1, 0, -1, 0, 2, 0, -2, 0, -2, 0, 2, 1, 0, -1, 0, -1, 0, 1, 0, -1, 0, 1]
Phương pháp lưu dồn
x = [1, 1, 1, 1, 3, (3, 3, 3), 1, 1, (1, 2, 2), 2, 2, (1, 1, 1), 1, 0, 0, 0]
y0 = h*[1, 1, 1, 1, 3, 3, 3, 3] = [1, 0, -1, 0, -2, 0, -3, 0, 3]
y1 = [3, 0, -3, -2, 0, 2, 1, 0, -3, 0, 2]
y2 = [1, 1, -1, -1, 0, -1, 0, 1, -1, 0, 1]
y3 = [1, 0, -1, 0, -1, 0, 1, 0, 0, 0, 0]
ỹ0 = [, , , 0, 2, 0, -2, 0]
ỹ1 = [, , , -2, 0, 2, 1, 0]
ỹ2 = [, , , -1, 0, -1, 0, 1]
ỹ3 = [, , , 0, -1, 0, 1, 0]
y = [, , , 0, 2, 0, -2, 0, 2, 1, 0, -1, 0, -1, 0, 1, 0, -1, 0, 1, 0]
60
Phan Văn Ca - Trường Đại học GTVT Tp.HCM
Bài giảng: Xử lý số tín hiệu
7.1.2 Các thiết bị dấu chấm cố định: Kiến trúc TMS320C25 và các đặc tính
cơ bản
TMS320C25 là một họ DSP dấu chấm cố định 16 bit, tốc độ nhanh. Tốc độ của
thiết bị này là 10MHz, tương ứng với chu kỳ thời gian 100ns. Về cơ bản, các lệnh
được thực hiện trong một chu kỳ xung nhịp đơn nên 100ns cũng là thời gian thực
hiện một lệnh. Nói cách khác, thiết bị có thể thực hiện 10 triệu lệnh trong mỗi
giây (MIPS). Các phiên bản sau hoạt động ở tốc độ cao hơn.
Các phần chính của bộ xử lý DSP gồm bộ nhớ, CPU, các port và thiết bị ngoại vi.
Bộ nhớ trên chip chứa 544 từ RAM và 4K từ ROM tương ứng với 4096 từ. Môi từ
có bề rộng 16 bit. Trong 544 từ RAM, 256 từ có thể dùng cho chương trình hoặc
61
Phan Văn Ca - Trường Đại học GTVT Tp.HCM
Bài giảng: Xử lý số tín hiệu
dữ liệu, phần còn lại chỉ dùng cho dữ liệu. 4k ROM trên chip là bộ nhớ chương
trình. Về cơ bản, thiết bị có thể định địa chỉ 64K từ bộ nhớ dữ liệu và 64K từ bộ
nhớ chương trình. Ngoại trừ phần bộ nhớ cố định trên chip, phần bộ nhớ còn lại
được gắn bên ngoài được cung cấp bởi người thiết kế.
CPU là phần trọng tâm của bộ xử lý. Đặc tính quan trọng nhất của nó, phân biệt
nó với các bộ vi xử lý truyền thống, là bộ nhân cứng với khả năng thực hiện phép
nhân 1616 bit trong một chu kỳ đơn. Để bảo đảm độ chính xác trong các bước
trung gian cao hơn cho kết quả, tích 32 bit đầy đủ được lưu trong thanh ghi tích.
Phần quan trọng khác của CPU là ALU thực hiện các phép toán cộng, trừ và các
phép toán logic. Cũng giống như trên, để tăng độ chính xác trong các phép tính
trung gian một bộ tích luỹ 32 bit được sử dụng trong tất cả các phép toán của
ALU.
Các thành phần khác của CPU TMS320C25 là những thanh ghi dịch được dùng để
đơn giản các thao tác dữ liệu và tăng thông lượng của thiết bị bằng cách thực hiện
các thao tác dịch song song với các hàm khác. Cũng giống như những CPU khác,
TMS320C25 cũng có 8 thanh ghi mở rộng có thể được sử dụng như các con trỏ bộ
nhớ hoặc các bộ đếm vòng. Có hai thanh ghi trạng thái và một stack độ sâu 8.
Stack này được sử dụng để lưu địa chỉ bộ nhớ tại nơi mà chương trình sẽ tiếp tục
thực thi sau khi chuyển tạm thời tới một chương trình con.
Để giao tiếp với các ngoại vi bên ngoài, TMS320C25 có các port 16 ngõ vào và
16 ngõ ra song song. Nó cũng có các port nối tiếp được dành cho cùng một mục
đích. Các port nối tiếp là một trong những ngoại vi được thực hiện trên chip. Các
ngoại vị khác gồm mặt nạ ngắt, quản lý bộ nhớ toàn cục và timer.
Thiết bị có 68 chân được chỉ định cho các chức năng cụ thể và giao tiếp với các
thiết bị khác trên cùng một board. Việc hiểu chức năng của các chân thiết bị cũng
quan trọng như việc hiểu kiến trúc bên trong bởi vì nó cung cấp cho người thiết kế
các công cụ sẵn có để giao tiếp với thế giới bên ngoài.
TMS320C25 có ngôn ngữ Assembly của chính nó được lập trình. Ngôn ngữ
Assembly này chứa 133 lệnh để thực hiện các chức năng chung và các hàm đặc
biệt của DSP. Sự hiểu rõ về tập lệnh và kiến trúc thiết bị là 2 thành phần của việc
62
Phan Văn Ca - Trường Đại học GTVT Tp.HCM
Bài giảng: Xử lý số tín hiệu
thực hiện chương trình hiệu quả. Các trình biên dịch ngôn ngữ mức cao cũng được
phát triển để làm cho việc viết chương trình được dễ dàng hơn. Đối với TMS320,
bộ biên dịch C được phát triển. Tuy nhiên, tính hiệu quả sẽ bị mất đi khi lập trình
bằng ngôn ngữ mức cao và điều này không thể chấp nhận được trong tính toán ở
các hệ thống thời gian thực.
Một đặc tính rất quan trọng là kiến trúc Harvard của nó. Trong kiến trúc Harvard,
không gian bộ nhớ chương trình và dữ liệu được tách biệt và chúng được truy xuất
qua những bus khác nhau. Một bus truy xuất không gian bộ nhớ chương trình để
lấy các lệnh, trong khi đó một bus khác được dùng để mang các toán hạng từ
không gian bộ nhớ dữ liệu và lưu các kết quả trở lại bộ nhớ. Mục tiêu của phương
pháp này là tăng thông lượng của việc vận chuyển lệnh và dữ liệu theo kiểu song
song. Một kiến trúc khác hơn là kiến trúc Von Neuman. Kiến trúc này sử dụng
một bus dữ liệu và không gian bộ nhớ đồng nhất. Tính đồng nhất của không gian
bộ nhớ thuận tiện cho việc phân chia dữ liệu và chương trình nhưng nó hình thành
một cổ chai vì cả chương trình và dữ liệu phải sử dụng chung một đường dẫn và vì
thế, nó phải được ghép kênh. Kiến trúc Harvard với nhiều bus được dùng trong
các bộ xử lý số tín hiệu vì thông lượng tăng là một đặc tính hấp dẫn trong các hệ
thống thời gian thực.
Sự khác nhau trong kiến trúc là rất quan trọng vì nó ảnh hưởng đến cách thức lập
trình. Trong kiến trúc Harvard, hai vị trí bộ nhớ có thể có cùng địa chỉ, một trong
không gian dữ liệu và một trong không gian chương trình.
63
Phan Văn Ca - Trường Đại học GTVT Tp.HCM
Bài giảng: Xử lý số tín hiệu
64
Phan Văn Ca - Trường Đại học GTVT Tp.HCM
Bài giảng: Xử lý số tín hiệu
Các phần chính của TMS320C30 gồm bộ nhớ, CPU, ngoại vị và một đơn vị
DMA. Bộ nhớ trên chip bao gồm 2K từ RAM và 4K từ ROM. Nó cũng có một
cache chương trình dài 64 từ. Mỗi từ có độ rộng 64bit và kích thước bộ nhớ của
TMS320C30 được tính theo từ 32bit. Bộ nhớ (RAM hoặc ROM) có thể được
dùng để lưu trữ các lệnh chương trình hoặc dữ liệu. Điều này bộc lộ một sự
chuyển hướng từ thực tế tách rời hai không gian mà TMS320C25 sử dụng, trong
đó kết hợp đặc tính của kiến trúc von Neuman với kiến trúc Harvard. Thiết bị có
thể định địa chỉ 16M từ thông qua hai bus bên ngoài, ngoại trừ bộ nhớ trên chip,
phần còn lại được cung cấp bởi người thiết kế.
Hay:
Với
65
Phan Văn Ca - Trường Đại học GTVT Tp.HCM
Hay:
Các bộ lọc lược, giống như bộ xử lý dội, hoạt động bất kể tín hiệu trực tiếp được
trộn với các mẫu lặp của nó như thế nào.
Ví dụ: Thay vì cộng tiếng dội ta có thể trừ nó.
Suy ra:
Các zero:
Các cực:
66
Phan Văn Ca - Trường Đại học GTVT Tp.HCM
Bài giảng: Xử lý số tín hiệu
x(n) y(n)
Z-d
d a
Các đỉnh xuất hiện tại bội fs/d và các chỗ lõm xuất hiện tại bội lẽ của fs/2d sẽ quét
lên và xuống trên trục số tạo ra đặc tính âm thanh nổi.
Hoà âm bắt chước hiệu ứng một nhóm nhạc sẽ chơi cùng một loại nhạc đồng thời.
Các nhạc này sẽ ít hiệu đồng bộ với nhau ngoại trừ một sự khác biệt nhỏ về độ
mạnh và thời gian các sự khác nhau này tạo ra hiệu ứng hoà âm.
x(n) y(n)
67
a1(n)
Phan Văn Ca - Trường Đại học GTVT Tp.HCM
a2(n)
Bài giảng: Xử lý số tín hiệu
a
H(z)
Bộ lọc Notch
biến đổi
Tần số Notch được thay đổi theo người điều khiển. Sự dịch pha mạnh tồn tại xung
quanh tần số Notch kết hợp với pha của tín hiệu trực tiếp gây ra sự triệt pha hoặc
nối pha quét lên xuống trên trục tần số.
3dB
-
Trong đó:
68
Phan Văn Ca - Trường Đại học GTVT Tp.HCM
Bài giảng: Xử lý số tín hiệu
Suy ra:
(n)
w0
Z-1
w1 y(n)
2Rcos0 -Rsin0
Z-1
w2
-R2
Thuật toán:
For n = 0, 1 … do
w0 = (2Rcos0)w1 – R2w2 + (n)
y = (Rsin0)w1
W2 = w1
w1 = w0
Tương tự:
Suy ra:
(n) y(n)
w0
Z-1
w1
2Rcos0 -Rcos0
69
Z-1
Phan Văn Ca - Trường Đại học GTVT Tp.HCM
w2
-R2
Bài giảng: Xử lý số tín hiệu
Thuật toán:
For n = 0, 1 … do
w0 = (2Rcos0)w1 – R2w2 + (n)
y = w0 - (Rcos0)w1
W2 = w1
w1 = w0
2. Phát tín hiệu tuần hoàn
Xét tín hiệu tuần hoàn analog tần số cơ bản f. Để tín hiệu lấy mẫu tuần hoàn với
chu kỳ D thì tần số lấy mẫu phải thoả.
fs = Df
Do tính tuần hoàn, ta chỉ xét tín hiệu trong 1 chu kỳ. Biểu diễn các mẫu thời gian
trên một chu kỳ bằng bi , i = 0,.. D-1 ta có chuỗi tuần hoàn.
h = [b0, b1, …bD-1, …b0,….bD-1,….]
Chuỗi này được xem là đáp ứng xung của bộ lọc
Suy ra:
Suy ra:
Ví dụ:
Xét trường hợp D = 4
Ta có:
(n) b0 y(n)
v0 w0
Z-1 Z-1
b1
v1 w1
Z-1
Z-1 b2
w2
v2
Z-1
Z-1
b3 w3
v3
Z-1 70
Phan Văn Ca - Trường Đại học GTVT Tp.HCM w4
Bài giảng: Xử lý số tín hiệu
Thuật toán:
For n = 0, 1, 2,…do
71
Phan Văn Ca - Trường Đại học GTVT Tp.HCM
2T3 -3A/2
[3] Maurice Bellager, Digital Proceessing of Signal: Theory and Practice, John Wiley
& Son Ltd, 1989, ISBN 0471 921017.
[4] Athanasios Papoulis, Signal Analysis, McGraw-Hill, Inc., 1977, ISBN 0-07-
066468-4.
[7] M.Vetterli – J.Kovacevic, Wavelets and Subband Coding, Prentice Hall, 1995,
ISBN 0-13-097080-8.
[8] Lê Tiến Thường, Xử lý số tín hiệu, NXB Đại học Quốc Gia, 2001
72
Phan Văn Ca - Trường Đại học GTVT Tp.HCM