Professional Documents
Culture Documents
---------------------------------
Đ ÁN T T NGHI P
NGÀNH CÔNG NGH K THU T ĐI N T TRUY N THÔNG
Đ TÀI:
THI T K , MÔ PH NG B L C
NHI U TÍN HI U ĐI N TIM DÙNG
MATLAB VÀ CHUY N MÃ VHDL
NHI M V Đ ÁN T T NGHI P
H tên sinh viên: Tr n Thanh Lâm MSSV: 14141160
Tr n Phan Ái Mỹ MSSV: 14141200
Chuyên ngành: Đi n t công nghi p Mã ngành: 14941
H đào t o: Đ i h c chính quy Mã h : K14941
Khóa: 2014 L p: 14941DT
Trang i
TR NG ĐH SPKT TP. H CHÍ MINH C NG HÒA XÃ H I CH NGHƾA VI T NAM
KHOA ĐI N - ĐI N T Đ C L P - T DO - H NH PHÚC
B MÔN ĐI N T CÔNG NGHI P – Y SINH ----o0o----
L CH TRÌNH TH C HI N Đ ÁN T T NGHI P
H tên sinh viên 1: Tr n Thanh Lâm
L p: 14941DT MSSV: 14141160
H tên sinh viên 2: Tr n Phan Ái Mỹ
L p: 14941DT MSSV: 14141200
Tên đề tài: THI T K , MÔ PH NG B L C NHI U TÍN HI U
ĐI N TIM DÙNG MATLAB VÀ CHUY N MÃ VHDL
Tuần/ngày Nội dung Xác nhận GVHD
Tu n 14, 15
25/12/2018 – 10/01/2018 Vi t và hoàn thi n báo cáo
GV H NG D N
(Ký và ghi rõ h và tên)
Trang ii
L I CAM ĐOAN
Đề tài này do nhóm chúng em th c hi n d a vào một s tài li u và công trình
nghiên cứu tr c đó và không sao chép từ tài li u hay công trình đã có tr c đó.
Ng i th c hi n đề tài
Tr n Thanh Lâm Tr n Phan Ái M
Trang iii
L IC M N
Trang iv
M CL C
NHI M V Đ ÁN T T NGHI P ........................................................................... i
LỊCH TRÌNH TH C HI N Đ ÁN T T NGHI P ................................................. ii
L I CAM ĐOAN ...................................................................................................... iii
L I C M N ............................................................................................................ iv
M C L C .................................................................................................................. v
LI T KÊ HÌNH ......................................................................................................... ix
LI T KÊ B NG ........................................................................................................ xi
DANH M C CÁC TỪ VI T T T .......................................................................... xii
CH NG 1: T NG QUAN ...................................................................................... 1
1.1 Đ T V N Đ .................................................................................................. 1
1.2 M C TIÊU ....................................................................................................... 2
1.3 N I DUNG NGHIÊN CỨU ............................................................................. 2
1.4 GI I H N ........................................................................................................ 2
1.5 B C C ............................................................................................................ 2
CH NG 2: C S LÝ THUY T ........................................................................... 4
2.1 T NG QUAN V TÍN HI U ĐI N TIM ECG .............................................. 4
2.1.1 Khái ni m về tín hi u đi n tim ECG .......................................................... 4
2.1.2 C u trúc gi i ph u và chức năng của tim ................................................... 4
2.1.3 Nhịp tim ..................................................................................................... 6
2.1.4 Các quá trình đi n h c của tim................................................................... 6
2.1.5 Quá trình hình thành tín hi u đi n tim ....................................................... 6
2.1.5.1 Nhĩ đồ ................................................................................................. 6
2.1.5.2 Th t đồ ................................................................................................ 7
2.1.6 S hình thành các d ng sóng của tim ......................................................... 9
2.1.6.1 Tính d n truyền................................................................................... 9
2.1.6.2 Tính tr và các th i kì tr ................................................................... 9
2.1.6.3 Đi n tr ng của tim .......................................................................... 10
2.1.7 Các thành ph n của tín hi u đi n tim ECG .............................................. 10
2.1.8 Các d i t n trong tín hi u đi n tim ECG .................................................. 13
Trang v
2.1.9 Các ph ng pháp đo tín hi u ECG .......................................................... 14
2.1.9.1 Ph ng pháp Oscillometric .............................................................. 14
2.1.9.2 Ph ng pháp đi n tim đồ.................................................................. 14
2.1.9.3 Ph ng pháp h p thụ quang h c ...................................................... 15
2.1.10 Các lo i nhi u tác động đ n tín hi u đi n tim ........................................ 15
2.2 LÝ THUY T V TÍN HI U S VÀ B L C S ....................................... 17
2.2.1 T ng quan về tín hi u s .......................................................................... 17
2.2.2 H x lý s ............................................................................................... 19
2.2.2.1 Mô t h x lý s .............................................................................. 19
2.2.2.2 H x lý s đ quy và không đ quy ................................................ 22
2.2.3 T ng quan về bộ l c s ............................................................................ 22
2.3.3.1 Bộ l c thông th p LPF ...................................................................... 23
2.3.3.2 Bộ l c thông cao HPF....................................................................... 25
2.3.3.3 Bộ l c thông d i BPF ....................................................................... 25
2.3 T NG QUAN V CÔNG C MATLAB ...................................................... 25
2.3.1 Gi i thi u chung ....................................................................................... 25
2.3.2 L p trình trong matlab.............................................................................. 26
2.3.2.1 M-File ............................................................................................... 26
2.3.2.2 Một s câu l nh c b n ..................................................................... 30
2.3.3 Trình mô ph ng Simulink ........................................................................ 34
2.3.4 Công cụ thi t k bộ l c s FDATool của Matlab .................................... 38
2.3.4.1 Gi i thi u ph ng pháp thi t k theo mô hình ................................. 38
2.3.4.2 T ng quan về hộp công cụ thi t k bộ l c s (FDATool) ................ 39
2.3.4.3 Thi t k bộ l c s dụng giao di n FDATool .................................... 41
2.4 T NG QUAN V FPGA (ALTERA) VÀ PH N M M QUARTUS II ....... 45
2.4.1 Lịch s ra đ i và phát triển của FPGA .................................................... 45
2.4.2 Khái ni m FPGA ...................................................................................... 46
2.4.3 Ứng dụng FPGA ...................................................................................... 48
2.4.4 Ý nghĩa FPGA .......................................................................................... 48
2.4.5 Ph n mềm h tr thi t k Quatus II ......................................................... 49
2.5 T NG QUAN V KIT DE2 -115 ALTERA ................................................. 51
Trang vi
2.5.1 Gi i thi u.................................................................................................. 51
2.5.2 Kit DE2 Cyclone IV EP4CE115F29C7N ................................................ 52
2.5.3 C p nguồn cho kit DE2 ............................................................................ 55
2.6 GI I THI U NGÔN NG VHDL ................................................................ 55
2.6.1 Gi i thi u.................................................................................................. 55
2.6.2 C u trúc một mô hình h th ng mô t bằng VHDL ................................. 57
2.6.3 Cú pháp và ng nghĩa .............................................................................. 59
2.6.3.1 Đ i t ng trong VHDL .................................................................... 59
2.6.3.2 Kiểu d li u trong VHDL................................................................. 61
CH NG 3: THI T K VÀ THI CÔNG ............................................................... 62
3.1 GI I THI U ................................................................................................... 62
3.2 TÍNH TOÁN VÀ THI T K H TH NG .................................................... 62
3.2.1 Thi t k s đồ kh i h th ng .................................................................... 62
3.2.2 Tính toán và thi t k bộ l c d ng FIR ...................................................... 62
3.2.2.1 K t c u cho các kiểu l c t n s d ng FIR: ....................................... 62
3.2.2.2 C u hình t ng quát của bộ l c FIR ................................................... 68
3.2.3 Thi t k bộ l c s d ng FIR theo ph ng pháp MBD ............................. 69
3.2.3.1 Xây d ng s đồ kh i ........................................................................ 69
3.2.3.2 Thi t k , mô ph ng và chuyển mã VHDL ....................................... 70
3.3 THI CÔNG H TH NG ................................................................................ 80
3.3.1 Biên dịch ch ng trình trên Quartus II .................................................... 80
3.3.2 S đồ kh i trên Quartus ........................................................................... 83
3.3.3 Mô ph ng bộ l c dùng ModelSim ........................................................... 84
3.3.3.1 T ng quát về ph n mềm mô ph ng ModelSim ................................ 84
3.3.3.2 Mô ph ng m ch l c trên ModelSim ................................................. 85
3.3.4 Th nghi m và kiểm tra ........................................................................... 86
CH NG 4: K T QU - NH N XÉT - ĐÁNH GIÁ ........................................... 87
4.1 K T QU ....................................................................................................... 87
4.1.1 K t qu mô ph ng bộ l c trên Matlab ..................................................... 87
4.1.2 K t qu d ng sóng mô ph ng trên ModelSim ......................................... 99
4.2 NH N XÉT – ĐÁNH GIÁ ............................................................................ 99
Trang vii
CH NG 5: K T LU N VÀ H NG PHÁT TRIỂN ....................................... 101
5.1 K T LU N ................................................................................................... 101
5.2 H NG PHÁT TRIỂN................................................................................ 101
TÀI LI U THAM KH O ...................................................................................... 102
PH L C ............................................................................................................... 103
Trang viii
LI T KÊ HÌNH
Hình 2.1 C u t o tim ng i ............................................................................................. 4
Hình 2.2 H th ng d n truyền tim ...................................................................................5
Hình 2.3 Kh c c tâm nhĩ và s hình thành sóng P ........................................................7
Hình 2.4 Kh c c vách liên th t và s hình thành sóng Q ..............................................7
Hình 2.5 D ng sóng tín hi u đi n tim............................................................................10
Hình 2.6 Máy đó huy t áp kỹ thu t s s dụng Oscillometric ......................................14
Hình 2.7 Thu th p tín hi u ECG từ các đi n c c ..........................................................14
Hình 2.8 D ng sóng của b nh thi u máu cục bộ c tim ................................................17
Hình 2.9 S đồ kh i của h x lý s .............................................................................20
Hình 2.10 S đồ kh i của h x lý s phức t p ............................................................. 20
Hình 2.11 Ký hi u ph n t cộng ...................................................................................21
Hình 2.12 Ký hi u ph n t nhân ...................................................................................21
Hình 2.13 Ký hi u ph n t nhân v i hằng s ................................................................ 21
Hình 2.14 Ký hi u ph n t tr đ n vị ............................................................................22
Hình 2.15 S đồ kh i bộ l c thông th p d ng chính tắc ...............................................24
Hình 2.16 S đồ kh i bộ l c thông th p d ng chuyển vị ..............................................24
Hình 2.17 Giao di n trình mô ph ng Simulink ............................................................. 35
Hình 2.18 Kh i Sine Wave và thông s cài đ t ............................................................. 36
Hình 2.19 Kh i Scope và màn hình hiển thị .................................................................36
Hình 2.20 Kh i Random Source và thông s cài đ t ....................................................37
Hình 2.21 Kh i Sum và thông s cài đ t .......................................................................37
Hình 2.22 Kh i Gain và thông s cài đ t ......................................................................38
Hình 2.23 Giao di n thi t k của FDATool ..................................................................41
Hình 2.24 Thông s kỹ thu t bộ l c thông th p ............................................................ 43
Hình 2.25 Đáp tuy n biên độ_ t n s pha của bộ l c thông th p ..................................44
Hình 2.26 Chuyển thi t k trên FDATool sang mã VHDL...........................................45
Hình 2.27 Ki n trúc t ng quan của FPGA ....................................................................46
Hình 2.28 C u trúc SRAM FPGA (SRAM Logic Cell) ................................................47
Hình 2.29 C u trúc của OTP FPGA (OTP Logic Cell) .................................................47
Hình 2.30 Giao di n ph n mềm Quatus II .....................................................................50
Hình 2.31 Kit DE2-115 Altera ......................................................................................52
Hình 2.32 Adapter 9V- 1.3A .........................................................................................55
Hình 3.1 S đồ kh i của h th ng .................................................................................62
Hình 3.2 Đ c tính biên độ t n s của bộ l c thông th p lý t ởng .................................63
Hình 3.3 Đ c tính biên độ t n s của bộ l c thông cao lý t ởng ..................................65
Hình 3.4 Đ c tính biên độ t n s của bộ l c thông d i lý t ởng ...................................67
Hình 3.5 C u hình t ng quát của bộ l c FIR đáp ứng xung h u h n ............................ 68
Trang ix
Hình 3.6 S đồ kh i chức năng của h th ng ................................................................ 69
Hình 3.7 Thông s của bộ l c thông th p d ng FIR......................................................70
Hình 3.8 Thông s của bộ l c thông cao d ng FIR .......................................................71
Hình 3.9 Thông s của bộ l c thông d i d ng FIR........................................................71
Hình 3.10 Ch n ch độ l c thông th p cho kh i mô ph ng ..........................................72
Hình 3.11 Kh i l c thông th p trong Simulink ............................................................. 72
Hình 3.12 Thi t l p mô ph ng l c nhi u thông th p ECG ............................................73
Hình 3.13 Ch n ch độ thông cao cho kh i mô ph ng .................................................74
Hình 3.14 Kh i l c thông cao trong Simulink .............................................................. 74
Hình 3.15 Thi t l p mô ph ng l c nhi u thông cao ECG .............................................75
Hình 3.16 Ch n ch độ thông d i cho kh i mô ph ng ..................................................76
Hình 3.17 Kh i l c thông cao trong Simulink .............................................................. 76
Hình 3.18 Thi t l p mô ph ng l c nhi u thông d i ECG ..............................................77
Hình 3.19 Thi t l p mô ph ng l c nhi u ng u nhiên thông th p ECG .........................78
Hình 3.20 Chuyển mã VHDL theo s đồ kh i .............................................................. 79
Hình 3.21 Cài đ t chuyển mã VHDL từ FDATool .......................................................80
Hình 3.22 Thao tác add file trong quartus .....................................................................81
Hình 3.23 Ch y kiểm tra l i Analysis & Synthesis .......................................................82
Hình 3.24 Biên dịch l i ch ng trình ............................................................................83
Hình 3.25 Giao di n v s đồ kh i ................................................................................83
Hình 3.26 V s đồ kh i trong Block Diagram............................................................. 84
Hình 3.27 Giao di n ph n mềm ModelSim version 6.5 ................................................85
Hình 3.28 Hộp tho i đ t tên project ModelSim ............................................................ 85
Hình 3.29 Hộp tho i add file cho project trong ModelSim ...........................................85
Hình 3.30 Biên dịch file mô ph ng thành công ............................................................ 86
Hình 3.31 Quá trình t i c u hình xu ng FPGA ............................................................. 86
Hình 4.1 Các d ng sóng của h th ng bộ l c thông th p tr ng h p 1 ........................87
Hình 4.2 Các d ng sóng của h th ng bộ l c thông th p tr ng h p 2 ........................88
Hình 4.3 Các d ng sóng của h th ng bộ l c thông th p tr ng h p 3 ........................89
Hình 4.4 Các d ng sóng của h th ng bộ l c thông th p tr ng h p 4 ........................89
Hình 4.5 Các d ng sóng của h th ng bộ l c thông cao tr ng h p 1..........................90
Hình 4.6 Các d ng sóng của h th ng bộ l c thông cao tr ng h p 3..........................91
Hình 4.7 Các d ng sóng của h th ng bộ l c thông cao tr ng h p 2..........................91
Hình 4.8 Các d ng sóng của h th ng bộ l c thông cao tr ng h p 4..........................92
Hình 4.9 Các d ng sóng của h th ng dùng bộ l c thông d i .......................................93
Hình 4.10 D ng sóng của h l c nhi u ng u nhiên dùng l c thông th p l n 1 .............94
Hình 4.11 Thi t l p mô ph ng l c nhi u ng u nhiên thông th p ECG có khu ch đ i ..94
Hình 4.12 D ng sóng của h l c nhi u ng u nhiên dùng l c thông th p l n 2 .............95
Hình 4.13 D ng sóng của h l c nhi u ng u nhiên dùng l c thông th p l n 3 .............95
Trang x
Hình 4.14 Thi t l p mô ph ng l c nhi u ng u nhiên thông cao ECG có khu ch đ i ...96
Hình 4.15 D ng sóng của h l c nhi u ng u nhiên dùng l c thông th p l n 1 .............96
Hình 4.16 D ng sóng của h l c nhi u ng u nhiên dùng l c thông th p l n 2 .............97
Hình 4.17 Thi t l p mô ph ng l c nhi u ng u nhiên thông d i ECG có khu ch đ i ....97
Hình 4.18 D ng sóng của h l c nhi u ng u nhiên dùng l c thông d i l n 1 ...............98
Hình 4.19 D ng sóng của h l c nhi u ng u nhiên dùng l c thông d i l n 2 ...............98
Hình 4.20 D ng sóng mô ph ng trên ModelSim........................................................... 99
LI T KÊ B NG
Bảng 2.1 Cấu trúc của bộ lọc có đáp tuyến xung hữu hạn ...........................................40
Trang xi
DANH M C CÁC T VI T T T
Trang xii
CH NG 1. T NG QUAN
CH NG 1: T NG QUAN
1.1 ĐẶT V N Đ
X lý tín hi u s (Digital Dignal Processing – DSP), hay t ng quát h n là x lý tín
hi u r i r c theo th i gian (Discrete-Time Signal Processing), là vi c x lý một tín hi u
vào b t kỳ để thu đ c tín hi u ra mong mu n, nhằm đ t mục đích nh t định. X lý tín
hi u ngày càng đóng vai trò quan tr ng trong nhiều ngành khoa h c và kỹ thu t, là động
l c thúc đ y s ti n bộ của nhiều ngành kỹ thu t cao nh : vi n thông, đa ph ng ti n,
cũng nh góp ph n quan tr ng trong các lĩnh v c khác nh quân s , y h c, … Cùng v i
s bùng n của ngành công nghi p đi n t hi n nay, công ngh x lý tín hi u s DSP
cũng bùng n nhanh chóng và r t phát triển. Có thể nói, x lý tín hi u s là nền t ng cho
m i lĩnh v c và ch a có s biểu hi n bão hòa trong s phát triển của nó, v y nên, ngày
nay, có nhiều ph n mềm (Matlab, Scilab, …) cũng nh ph n cứng (PC, Vi điều khiển,
Arduino, FPGA, …) đ c dùng để x lý tín hi u s [1].
Công ngh FPGA (Field – Program Gate Array) là vi m ch dùng c u trúc m ng
ph n t logic mà ng i dùng có thể l p trình đ c. FPGA chứa các logic cells th c hi n
các m ch logic đ c k t n i v i nhau bởi ma tr n k t n i và chuyển m ch l p trình đ c.
Thi t k hay l p trình cho FPGA đ c th c hi n chủ y u bằng các ngôn ng mô t ph n
cứng HDL, VHDL, VERILOG, … FPGA đ c xem nh một lo i vi m ch bán d n có
nhiều u điểm h n hẳn các lo i bán d n xu t hi n tr c đó nh có tính linh động đ i
v i ng i dùng, giúp phát triển các gi i pháp t t h n mà không phụ thuộc vào ph n cứng
của nhà s n xu t, ngoài ra, FPGA còn có thể tái c u trúc l i khi đang s dụng: ngoài kh
năng tái c u trúc vi m ch toàn cục, một s FPGA hi n đ i còn h tr tái c u trúc cục bộ,
tức kh năng tái c u trúc một bộ ph n riêng lẻ trong khi v n đ m b o ho t động bình
th ng cho các bộ ph n khác, công đo n thi t k đ n gi n, do v y chi phí gi m, rút ngắn
th i gian [1-2].
Tr c đó, đã có một s đề tài nghiên cứu về X lý tín hi u s dùng FPGA nh :
“Thi t k bộ l c tín hi u s trên công ngh FPGA v i công cụ Matlab và EDA của
XILINX” [3], “Thi t k trên FPGA để lo i ồn cho tín hi u ECG nh bi n đ i sóng con”
[4], “Thi t k bộ l c s trên dsPIC ứng dụng trong vi c x lý đi n tâm đồ” [5]. Cụ thể,
đề tài [3] dùng Matlab để thi t k bộ l c tín hi u s d ng FIR, dùng kit FPGA của hãng
1.2 M C TIÊU
Xây d ng một bộ l c s trên nền t ng FPGA để l c nhi u tín hi u đi n tim ECG
nhằm đem l i tín hi u xác th c nhằm h tr t t h n cho vi c khám ch a b nh. Trong
đó, FPGA đ c xem nh là ph n cứng v i chức năng th c thi bộ l c nhi u cho tín hi u
đi n tim, còn Matlab đ c s dụng nh một công cụ để thi t k và mô ph ng bộ l c
nhằm đánh giá kh năng th c hi n trong th c t .
1.4 GI I H N
1.5 B C C
• Ch ng 1: T ng Quan
Ch ng này trình bày đ t v n đề d n nh p lý do ch n đề tài, mục tiêu, nội dung
nghiên cứu, các gi i h n thông s và b cục đồ án.
• Ch ng 2: C Sở Lý Thuy t
Ch ng này gi i thi u các lý thuy t liên quan, các linh ki n, thi t bị, ph n cứng
s dụng thi t k .
• Ch ng 3: Thi t k và thi công h th ng
Ch ng này tính toán thi t k h th ng, thi t k s đồ kh i, chức năng từng kh i
và th c thi ch ng trình trên FPGA.
• Ch ng 4: K t Qu , Nh n Xét, Đánh Giá
Ch ng này nêu k t qu đã đ t đ c, nh n xét đánh giá h th ng.
• Ch ng 5: K t Lu n và H ng Phát Triển
Ch ng này trình bày nh ng gì đã đ t đ c và ch a đ t đ c so v i mục tiêu
ban đ u, nêu h ng phát triển.
CH NG 2: C S LÝ THUY T
2.1 T NG QUAN V TÍN HI U ĐI N TIM ECG
2.1.1 Khái ni m v tín hi u đi n tim ECG
Một trong các tín hi u đi n sinh h c quan tr ng và kinh điển nh t ứng dụng trong
vi c ch n đoán và điều trị b nh là tín hi u đi n tim đồ (hay còn g i là đi n tâm đồ, ti ng
Anh: Electrocardiogram hay th ng g i tắt là ECG hay EKG).
ECG là tín hi u đi n thu đ c từ các đi n c c gắn lên c thể ng i để đo các ho t
động của tim ng i. Khi tim đ p tác dụng lên các đi n c c t o ra các xung đi n. Thông
th ng các xung đi n này r t nh do đó c n ph i khu ch đ i lên rồi m i đ c x lí. Tín
hi u đi n tim đ c đ c tr ng bởi các d ng sóng đ c ký hi u P, Q, R, S, T và U [2, 3].
Do trái tim trong h tu n hoàn là bộ ph n có c u t o hoàn toàn bằng c . M i khi
co l i trong quá trình b m máu, nó s t o ra một đi n tr ng sinh h c và truyền qua kh i
d n liên h p từ ng c, bụng t i bề m t da. Vì th , chúng ta có thể đo đ c s chênh l ch
đi n th sinh h c này từ b t kỳ 2 điểm nào trên bề m t da. Tín hi u thu đ ct im ic p
2 điểm này đ c g i là một đ o trình của tín hi u đi n tim đồ. Biên độ và d ng sóng của
tín hi u ECG phụ thuộc vào c p đi n c c đ c đ t ở đâu trên bề m t da của b nh nhân.
2.1.2 C u trúc gi i ph u và ch c năng c a tim
riêng bi t g i là tim trái và tim ph i. Tim trái b m máu ra ngo i vi, còn tim ph i b m
máu lên ph i. M i n a tim l i đ c chia ra thành hai buồng, buồng trên là tâm nhĩ có
thành m ng làm nhi m vụ chứa máu, buồng d i là tâm th t có thành dày, kh i c l n
giúp cung c p l c đ y máu đi đ n các bộ ph n. Gi a tâm nhĩ và tâm th t có van nhĩ th t,
gi a tâm th t trái và động m ch chủ, tâm th t ph i và động m ch ph i có van bán nguy t.
Các van này đ m b o cho máu chỉ di chuyển theo một chiều từ tâm nhĩ xu ng tâm th t,
từ tâm th t xu ng động m ch chứ không cho đi ng c l i, nh v y đ m b o đ cs
tu n hoàn máu.
Ngoài ra, tim còn có một c u trúc đ c bi t th c hi n chức năng phát và d n
truyền xung đ c g i là h d n truyền. H th ng d n truyền gồm:
+ Nút xoang nhĩ (SAN): là nút t o nhịp cho toàn bộ trái tim, nằm ở c tâm nhĩ
ph i, phát xung v i t n s kho ng 120 l n/phút.
+ Các đ ng liên nút: nằm ở gi a nút xoang nhĩ và nút nhĩ th t, th c hi n chức
năng d n truyền các xung động gi a nút xoang nhĩ và nút nhĩ th t.
+ Nút nhĩ th t (AVN): nằm ở bên ph i vách liên nhĩ, gi nhi m vụ làm ch m d n
truyền tr c khi các xung động đ c truyền xu ng th t v i t n s kho ng 50-60
l n/phút.
+ Bó His: bắt đ u từ nút nhĩ th t đ n vách liên th t thì chia thành hai nhánh trái và
ph i ch y d i nội tâm m c hai th t để d n truyền xung động đ n hai th t, t i đây,
chúng phân nhánh thành m ng l i Purkinje ch y gi a các s i c tim giúp d n
truyền xung động xuyên qua các thành của th t. Bó His phát xung kho ng 30-40
l n/phút.
2.1.3 Nh p tim
Nhịp tim là s nhịp đ p của tim trên một đ n vị th i gian, th ng đ c tính bằng
s nhịp/phút. Nhịp tim có thể thay đ i theo nhu c u h p thụ Oxi và bài ti t CO2 của c
thể, ví dụ nh lúc t p thể dục và lúc ngủ.
Tim là t chức c r ng, t i đó s co bóp một cách tu n t các c s t o ra áp l c
đ y máu đi qua các bộ ph n khác nhau trên c thể. M i nhịp tim đ c kích thích bởi
xung đi n từ các t bào nút xoang t i tâm nhĩ. Các xung đi n truyền đ n các bộ ph n
khác của tim và làm cho tim co bóp. Vi c ghi tín hi u đi n tim là ghi l i các tín hi u
đi n này (tín hi u ECG).
2.1.4 Các quá trình đi n h c c a tim
Năng l ng chuyển hóa đ c s dụng để t o ra môi tr ng trong giàu Kali nh ng
ít Natri so v i thành ph n ngo i bào Natri cao và Kali th p. Do có s không cân bằng
tồn t i đi n th tĩnh trên màng t bào, bên trong chừng 90mV so v i bên ngoài. Khi t
bào bị kích thích (bằng cách cho dòng đi n v n làm tăng t m th i th ngang màng), các
tính ch t của màng thay đ i theo chu trình, pha thứ nh t của nó là độ th m m nh đ i v i
Natri, dòng Natri l n (s m) ch y vào trong do các gradient khu ch tán và đi n.
Dòng ch y t o ra dòng đi n. Trong khi di chuyển ti p, t bào về c b n có tính
ch t nh nguồn l ỡng c c đi n. Dòng Natri chuyển ti p này chịu trách nhi m về dòng
m ch đi n nội t i và là một ph n của dòng đi n đó. Theo cách này, ho t động mở rộng
ti p t i các t bào lân c n. Khi màng hồi phục (trở về các tính ch t nghỉ), th tác động
của t bào k t thúc và nó trở l i tr ng thái nghỉ và có kh năng đ c tái kích thích. Nói
một cách ngắn g n khi có dòng Natri, Kali ch y qua màng tim thì có đi n th đ c sinh
ra.
2.1.5 Quá trình hình thành tín hi u đi n tim
2.1.5.1 Nhƿ đ
Tim ho t động đ c nh vào một xung động truyền qua một h th ng th n
kinh t kích của tim. Đ u tiên, nút xoang nhĩ s phát xung t động, xung động t a
ra làm c nhĩ kh c c tr c. Sóng kh c c có h ng chung là từ trên xu ng d i,
từ ph i sang trái và h p v i ph ng ngang một góc 490. Đ t sóng này đ c máy
ghi đi n tim ghi l i v i d ng một sóng d ng, đ n, th p, nh và có biên độ kho ng
0,25mV g i là sóng P (hình 2.3)
Hình 2.3 Khử cực tâm nhĩ và sự hình thành sóng P
2.1.5.2 Th t đ
Ngay khi nhĩ còn đang kh c c thì xung động đã bắt đ u truyền vào nút nhĩ
th t xu ng th t và hai nhánh bó His xu ng kh c c th t. Sóng kh c c h ng từ
gi a m t trái đi xuyên qua m t ph i của vách liên th t. Máy s ghi nh n đ c một
sóng âm nh , g n g i là sóng Q (hình 2.4).
Hình 2.4 Khử cực vách liên thất và sự hình thành sóng Q
Xung ti p tục truyền xu ng và ti n hành kh c c đồng th i c hai tâm th t theo
h ng xuyên qua bề m t dày c tim, từ d i nội tâm m c ra d i th ng tâm m c. Véc-
t kh c c h ng từ ph i sang trái và máy ghi nh n đ c một làn sóng d ng, cao và
nh n g i là sóng R. Sau cùng, xung động truyền xu ng và kh c c vùng đáy th t. Véc-
t kh c c h ng từ trái sang ph i, máy s ghi nh n đ c một sóng âm, nh và nh n
Hình 2.5 Khử cực ở tâm thất và sự hình thành sóng R, S
Hình 2.6 Tái cực tâm thất và sự hình thành sóng T
Sau khi th t kh c c xong s qua th i kỳ tái c c ch m. Giai đo n này đ c thể
hi n trên đi n tâm đồ bằng một đ ng đẳng đi n g i là đo n S – T (hình 2.6). Sau đó là
th i kỳ tái c c nhanh t o nên sóng T. Tái c c có h ng xuyên qua c tim, từ l p d i
th ng tâm m c vào l p d i nội tâm m c. Véc-t tái c c có h ng từ trên xu ng d i
và từ ph i sang trái t o ra một sóng d ng, th p, không đ i xứng mà có s n lên thoai
b nh nhân và đi n c c, …
2.1.9 Các ph ng pháp đo tín hi u ECG
2.1.9.1 Ph ng pháp Oscillometric
Ph ng pháp này th ng ph i đo nhịp tim chung v i huy t áp. D a trên c m bi n
áp su t gắn vào bắp tay ng i c n đo (n i có động m ch ch y qua), d a vào s thay đ i
l ul ng máu ch y qua động m ch thu đ c tín hi u đi n. Tín hi u đi n thu đ c từ
c m bi n áp su t thay đ i đồng bộ v i tín hi u nhịp tim. Chu kỳ thay đ i của tín hi u
này bằng đúng chu kỳ tín hi u nhịp tim. Từ đó thu đ c tín hi u đi n tim.
Hình 2.7 Thu thập tín hiệu ECG từ các điện cực
Hình 2.8 Dạng sóng của bệnh thiếu máu cục bộ cơ tim
Trong nhồi máu c tim c p:
+ D ng 1: Q rộng và sâu, ST chênh lên, T âm
+ D ng 2: ST chênh xu ng, T d ng.
Từ các ví dụ trên có thể th y b t kỳ d ng sóng thành ph n nào trong ECG cũng có
vai trò r t quan tr ng nên n u không x lý t t nhi u từ m ng đi n công nghi p để tín
hi u ECG bị sai l nh nhiều s gây h u qu nghiêm tr ng ch n đoán và điều trị các b nh
về tim – một trong các lo i b nh nguy hiểm đ n tính m ng con ng i. Vì th đồ án này
t p trung gi i quy t nhi u t n s 50Hz từ m ng đi n công nghi p.
x1(n)
x1(n) y(n) x2(n) +
+ y(n)
xi(n)
x2(n)
xM(n)
x1(n)
x1(n) y(n) x2(n) X
X y(n)
xi(n)
x2(n)
xM(n)
Để nhân tín hi u s x(n) v i hằng s a, s dụng bộ nhân hai s v i một đ u vào và
tín hi u s x(n), còn đ u vào kia là giá trị mã của a.
Phần tử trễ đơn vị: Ph n t tr đ n vị dùng để gi tr tín hi u s x(n) một m u, nó
là ph n t có nh và đ c ký hi u nh ở hình:
=ℎ ∗ = ℎ − (2.5)
=
Quan h này nói rằng chiều dài của h(n) r t quan tr ng, các h s h(n) là đ c tr ng
cho c h th ng. Chính vì th ng i ta phân lo i các h th ng thành hai lo i tùy theo
chiều dài của đáp ứng xung h(n):
- FIR (Finite-Duration Impulse Response): h th ng đ c tr ng bởi đáp ứng xung có
chiều dài h u h n, tức là h(n) khác 0 trong một kho ng có chiều dài h u h n N (từ 0
đ n N-1):
−
=ℎ ∗ = ℎ − (2.6)
=
- IIR (Infinite-Duration Impulse Response): H th ng đ c tr ng bởi đáp ứng xung có
chiều dài vô h n, tức là h(n) khác 0 trong một kho ng th i gian vô h n từ 0 đ n ∞:
∞
=ℎ ∗ = ℎ − (2.7)
=
⇒ Bộ l c IIR mang tính t ng quát h n bộ l c FIR vì IIR là bộ l c đ quy còn bộ l c FIR
là bộ l c không đ quy.
D a vào đáp ứng t n s mà chia các bộ l c thành các lo i khác nhau: L c thông
th p, l c thông cao, l c thông d i.
2.3.3.1 B l c thông th p LPF
L c thông th p là bộ l c chỉ cho phép các t n s th p h n t n s cắt đi qua, còn
thành ph n t n s cao thì bị lo i b . Thi t k bộ l c có hai ph ng pháp: d a vào t n s
l y m u ho c d a vào bi n đ i Fourier.
Đáp ứng xung của bộ lọc FIR được cho theo công thức:
−
= − (2.8)
=
Hàm truyền của bộ lọc FIR:
H(z) = b0 + b1 −
b2 −
+ …+ bk-1 z-k+1 (2.9)
+
x(n) b0 y(n)
−
+
b1
−
+
b2
−
bk-1
Hình 2.16 Sơ đồ khối bộ lọc thông thấp dạng chuyển vị
+ y(n)
x(n) b0
−
x(n-1)
b1
−
x(n-k+1)
−
bk-1
+ 𝒛−𝟏
Đáp ứng tần số đáp ứng xung của bộ lọc thông thấp:
Ω , <Ω≤Ω
| ( )| = { (2.11)
, Ω ≤Ω≤𝜋
Đáp ứng xung của bộ lọc thông thấp:
.Ω (2.12)
[ ] = 𝛿[ ] −
𝜋
2.3.3.2 B l c thông cao HPF
L c thông cao là bộ l c chỉ cho chép các t n s l n h n t n s cắt đi qua, còn thành
ph n t n s th p h n thì bị lo i b .
Đáp ứng tần số của bộ lọc thông cao lý tưởng
Ω , <Ω≤Ω
| |={ (2.13)
, Ω ≤Ω≤𝜋
Đáp ứng xung của bộ lọc thông cao lý tưởng:
.Ω
[ ] = 𝛿[ ] − (2.14)
𝜋
2.3.3.3 B l c thông d i BPF
Bộ l c thông d i là bộ l c chỉ cho các thành ph n t n s trong một d i đi qua, các
thành ph n t n s l n h n và bé h n thì lo i b .
Đáp ứng tần số bộ lọc thông dải:
Ω , < Ω ≤ Ω ,Ω ≤Ω≤𝜋
| ( )| = { (2.15)
, Ω ≤Ω≤Ω
Đáp ứng xung của bộ lọc thông dải:
Ω − Ω (2.16)
[ ] = 𝛿[ ] −
𝜋
2.3 T NG QUAN V CÔNG C MATLAB
2.3.1 Gi i thi u chung
Matlab là vi t tắt của Matrix Laboratory, là một bộ ph n mềm toán h c của hãng
Mathworks đ c dùng để l p trình, tính toán s và có tính tr c quan r t cao.
* Script file:
Thay vì nh p và th c thi từng câu l nh t i c a s Command Window, ta có thể
so n th o (trong ph n Editor) và l u t t c các câu l nh c n thi t để gi i bài toán vào
một file g i là Script file. Sau đó, khi c n ch y các câu l nh đã l u, ta chỉ c n gõ tên file
vào Command Window để th c thi toàn bộ ch ng trình.
Các b c t o và th c thi một Script file:
- Bước 1: T o và so n th o các câu l nh.
Script file đ c so n th o trong c a s Editor. Có 3 cách mở c a s Editor (hay
t o Script file):
• Cách 1: vào menu Home → New → Script
• Cách 2: Nh n t h p phím Ctrl + N
• Cách 3: Trong Command Window gõ l nh edit
• Cách 4: Nháy chuột vào icon New Script
• Cách 1: Trong c a s Editor ho c Home, vào menu Open và mở file c n dùng.
• Cách 2: T i Command Window, gõ l nh edit (‘đ ng d n\tên file’), n u l u
trong đĩa C (th mục m c định của Matlab), ta không c n ph i gõ đ ng d n
vào. Ví dụ: mở một file ml.m đã l u trong đĩa E, ta gõ l nh >>edit E:\ml.m ho c
>>edit E:\ml. N u l u trong th mục m c định ( C) ta chỉ c n gõ >>edit ml.m
ho c >>edit ml.
• Cách 3: Dùng t h p phím Ctrl + O để mở.
Ví dụ một đo n Script file đ c mở trong Matlab:
* Function file:
T ng t nh trong toán h c, các hàm (function) trong Matlab s nh n vào giá trị
của các đ i s và tr về giá trị t ng ứng của hàm. Trình t t o và th c thi một file hàm
bao gồm các b c nh sau:
- Bước 1: T o hàm.
Function file đ c so n th o trong c a s Editor. Mở c a s Editor, sau đó t o
Function file bằng cách: vào menu Home → New → Function (t o t động) ho c gõ
hàm theo c u trúc chu n:
function [danh sách tham s ra] = tên hàm (danh sách tham s vào)
- Bước 2: L u function file đã so n th o xong.
Nh cách l u của Script file, khi l u hàm, Matlab s l y tên hàm làm tên file v i
đuôi “.m”, ng i l p trình không nên s a l i tên này để tránh l n lộn khi g i th c hi n
hàm.
- Bước 3: G i th c hi n Function file. Th c hi n t ng t nh g i th c hi n Script file
vì đ cl ud i d ng đuôi “.m”.
Mở function file đã l u cũng đ c th c hi n nh khi mở Script file. Ví dụ một
đo n Function file đ c mở và th c thi trong Matlab:
dịch s không x y ra l n thứ hai. N u trong hàm có chứa l i g i hàm M-file khác thì
các hàm đó cũng đ c dịch vào trong bộ nh . Bằng l nh clear function ta có thể xóa
c ỡng bức các hàm đã dịch, nh ng v n gi nguyên các M-file.
- M i hàm có không gian làm vi c riêng của nó (local workspace) tách bi t v i môi
tr ng Matlab (s dụng base workspace), m i quan h duy nh t gi a các bi n trong
hàm v i môi tr ng bên ngoài là các bi n vào và ra của hàm đó. N u b n thân các
bi n của hàm bị thay đ i thì s thay đ i này chỉ tác động bên trong của hàm đó mà
không làm nh h ởng đ n các bi n của môi tr ng Matlab. Các bi n của hàm s đ c
gi i phóng ngay sau khi hàm th c thi xong nhi m vụ, vì v y không thể s dụng thông
tin của l n g i tr c cho l n g i sau.
- Các hàm có thể s dụng chung các bi n v i hàm khác hay v i môi tr ng Matlab n u
các bi n đ c khai báo là bi n toàn cục. Để có thể truy c p đ c các bi n bên trong
một hàm thì các bi n đó ph i đ c khai báo là bi n toàn cục trong m i hàm s dụng
nó.
- Một M-file có thể chứa nhiều hàm. Hàm chính (main function) trong M-file này ph i
đ c đ t tên trùng v i tên của M-file. Các hàm khác đ c khai báo thông qua câu
l nh function đ c vi t sau hàm đ u tiên. Các hàm con (local function) chỉ đ cs
dụng bởi hàm chính, tức là ngoài hàm chính ra thì không có hàm nào khác có thể g i
đ c chúng. Tính năng này cung c p một gi i pháp h u hi u để gi i quy t từng ph n
của hàm chính một cách riêng r , t o thu n l i cho vi c l p một file hàm duy nh t để
gi i bài toán phức t p.
2.3.2.2 M t s câu l nh c b n
* L nh for:
- Công dụng: Dùng để th c hi n 1 công vi c c n l p đi l p l i theo một quy lu t, v i s
b c l p xác định tr c.
- Cú pháp:
for bi n điều khiển = giá trị đ u : giá trị cu i,
th c hi n công vi c;
end
- Giải thích: Công vi c chính là các l nh c n thi hành, có thể có nhiều l nh, k t thúc l nh
ph i có d u ;
- Ví dụ: In ra màn hình 2 dòng ‘Nhóm Lam – My chao cac ban’.
for i = 1:2,
disp(‘Nhóm Lam – My chao cac ban’);
end
% ph n k t qu :
Nhóm Lam – My chao cac ban
Nhóm Lam – My chao cac ban
* L nh function:
- Công dụng: T o thêm hàm m i.
- Cú pháp: function s = n(x)
Trong đó:
+ s: tên bi n chứa giá trị tr về sau khi thi hành hàm.
+ n: tên g i nh .
* L nh input:
- Công dụng: Dùng để nh p vào 1 giá trị.
- Cú pháp:
tên bi n = input(‘promt’)
tên bi n = input(‘promt’, ‘s’)
Trong đó:
+ tên bi n là n i l u giá trị ng p vào.
+ ‘promt’: chu i ký t mu n nh p vào.
+ ‘s’: cho bi t giá trị nh p vào là nhiều ký t .
- Ví dụ 1: x = input(‘nh p giá trị của bi n x: ’)
% ph n k t qu :
nh p giá trị của bi n x: 5
x=5
- Ví dụ 2:
tr _l i = input(‘b n có mu n ti p tục không? ’,’s’)
% ph n k t qu :
b n có mu n ti p tục không? không
tr _l i = không
* L nh if …elseif …else:
- Công dụng: Th c hi n l nh khi th a điều ki n.
- Cú pháp:
if biểu thức lu n lý 1
th c hi n công vi c 1;
elseif biểu thức lu n lý 2
th c hi n công vi c 2;
else
th c hi n công vi c 3;
end
- Giải thích:
+ Khi biểu thức lu n lý 1 đúng thì th c hi n công vi c 1 t ng t cho biểu thức
lu n lý 2. N u c hai biểu thức sai thì th c hi n công vi c sau l nh else.
+ Biểu thức lu n lý là các phép so sánh ==, <, >, <=, >=
+ Công vi c chính là các l nh c n thi hành, có thể có nhiều l nh, k t thúc l nh ph i
có d u ;
- Ví dụ:
Vi t ch ng trình nh p vào 2 s và so sánh hai s đó.
a = input(‘Nh p a: ’);
b = input(‘Nh p b: ’);
if a > b
disp(‘a l n h n b’);
elseif a ==b
end
disp(‘ket qua:’);
disp(a);
% ph n k t qu :
nhap vao so n: 3
ket qua:
1.8333
% MATLAB Code
% Generated by MATLAB(R) 9.4 and DSP System Toolbox 9.6.
% Generated on: 04-Jan-2019 15:52:30
N = 50; % Order
Fc = 50; % Cutoff Frequency
flag = 'scale'; % Sampling Flag
% [EOF]
Sau đó, l y t p M-file đã l u, thêm vào l nh fvtool(b) vào cu i, rồi cho ch y trong
Command Window ta s đ c đồ thị mức đi n_t n s pha nh sau:
Hình 2.25 Đáp tuyến biên độ_ tần số pha của bộ lọc thông thấp
• Chuyển đổi từ thiết kế trên giao diện FDATool sang ngôn ngữ VHDL:
Phía trên, chúng ta đã th chuyển đ i thi t k trên giao di n FDATool sang M-file,
trong mục này, chúng ta s chuyển đ i thi t k trên giao di n FDATool sang ngôn ng
VHDL để phục vụ cho các d án ch y bộ l c trên FPGA.
Từ giao di n của FDATool ta ch n Targets → Generate HDL s xu t hi n giao
di n:
Configurable
Logic Blocks
I/O Blocks
Programmable Interconnects
Hình 2.29 Cấu trúc của OTP FPGA (OTP Logic Cell)
Trong SRAM Logic Cell, thay vì các c ng thông th ng, một LUT (bộ t o hàm)
s xác định các đ u ra d a vào giá trị đ u vào.
Trong OTP FPGAs s dụng k t n i gi a các đ ng theo d ng n i ng c (có nghĩa
ng c v i c u chì), s k t n i t o ra và không bị nóng ch y trong su t th i gian n p
ch ng trình), nhằm t o ra s k t n i c định trong chip. H n n a, OTP FPGA không
c n SPROM nào khác, điều đó có nghĩa là n p c u hình vào thằng FPGA. Tuy nhiên,
m i l n thay đ i thi t k b n ph i vứt b đi một chip. Lo i OTP Logic Cell có c u trúc
t ng t nh h PLD (Programmable Logic Device) bao gồm các c ng flip – flop
chuyên dụng nh Flip – Flop lo i D, T hay RS.
2.4.3 ng d ng FPGA
Ứng dụng của FPGA bao gồm: x lý tín hi u s , các h th ng hàng không, vũ trụ,
qu c phòng, tiền thi t k m u ASIC (ASIC prototyping), các h th ng điều khiển tr c
quan, phân tích nh n d ng nh, nh n d ng ti ng nói, m t mã h c, mô hình ph n cứng
máy tính...
Do tính linh động cao trong quá trình thi t k cho phép FPGA gi i quy t nh ng
bài toán phức t p mà tr c kia chỉ th c hi n nh ph n mềm máy tính, ngoài ra nh m t
độ c ng logic l n FPGA đ c ứng dụng cho nh ng bài toán đòi h i kh i l ng tính toán
l n và dùng trong các h th ng làm vi c theo th i gian th c.
2.4.4 Ý nghƿa FPGA
ASIC l p trình đ c đã xu t hi n từ lâu d i d ng PLD (Programmable Logic
Device), nh ng vai trò của các d ng ASIC này là không nhiều vì s l ng c ng trên
Chip r t ít d n t i chức năng của các PLD này cũng nghèo nàn và th ng chỉ s dụng
v i nh ng nhi m vụ r t h n ch trong toàn h th ng.
Kể từ năm 1980, các công ty s n xu t PLD hàng đ u đã đ y m nh quá trình nghiên
cứu về FPGA và nhanh chóng cho ra các th h FPGA v i s l ng c ng và t c độ ngày
càng cao. Các FPGA hi n nay có s l ng c ng đủ l n để có thể thay th c một h
th ng bao gồm lõi CPU, Bộ điều khiển bộ nh (Memory Controller), các ngo i vi nh
SPI, Timer, I2C, GPIO, PWM, Video/Audio Controller… (nghĩa là t ng đ ng v i
các SoC hi n đ i). Tuy nhiên, FPGA không thể nào so sánh đ c v i ASIC và c về
kinh t l n t c độ ho t động. Nh ng bù l i, v i kh năng tái c u hình m nh, FPGA đóng
một vai trò vô cùng to l n trong vi c gi m giá thành và th i gian ch t o ASIC bằng
cách s dụng FPGA trong quá trình thi t k lu n lý tr c khi đ a ra s n xu t các ASIC
m u. Quy trình s n xu t Chip ASIC bằng cách này g i là fabless r t ph bi n hi n nay
trên th gi i, giúp các công ty nh và vừa và đ c bi t là các n c y u về công ngh nh
Vi t Nam tham gia vào th gi i s n xu t IC. Để gi i thích cho s quan tr ng r t l n của
FPGA, s có một ví dụ cụ thể sau: Tr c đây, khi mu n ch t o ra một con chip “Vi x
lý”, ng i ta ph i thi t k chip ở mức logic s dụng các ngôn ng mô t ph n cứng, để
kiểm tra công đo n này c n ph i s dụng nh ng ph n mềm mô ph ng. Sau đó thi t k
ph i đ c t ng h p d a trên các th vi n c p th p của hãng s n xu t con Chip sau này,
sau đó là quá trình kiểm tra timing (định th i) cho toàn bộ thi t k để đ m b o thi t k
đó s ho t động ở t n s yêu c u. T t c các công đo n này đều chỉ có thể kiểm tra bằng
các ph n mềm mô ph ng (điều này d n t i nguy c x y ra sai sót r t l n khi chuyển
thi t k sang môi tr ng Chip th c).
2.4.5 Ph n m m h tr thi t k Quatus II
Quartus II là công cụ ph n mềm phát triển của hãng Altera, cung c p môi tr ng
thi t k toàn di n cho các thi t k SOPC (System on a Programmable Chip - h th ng
trên 1 chip kh trình). Đây là ph n mềm đóng gói tích h p đ y đủ phục vụ cho thi t k
logic v i các linh ki n logic kh trình PLD của Altera, gồm các dòng APEX, Cyclone,
FLEX, Stratix... Quartus cung c p các kh năng thi t k logic sau:
+ Môi tr ng thi t k gồm các b n v , s đồ kh i, công cụ so n th o các ngôn ng :
AHDL, VHDL, và Verilog HDL.
+ Thi t k LogicLock.
+ Là công cụ m nh để t ng h p logic.
+ Kh năng mô ph ng chức năng và th i gian.
+ Phân tích th i gian.
+ Phân tích logic nhúng v i công cụ phân tích SignalTap@ II.
+ Cho phép xu t, t o và k t n i các file nguồn để t o ra các file ch ng trình.
+ T động định vị l i.
+ Kh năng l p trình và nh n di n linh ki n.
+ Ph n mềm Quartus II s dụng bộ tích h p NativeLink@ v i các công cụ thi t k
cung c p vi c truyền thông tin liền m ch gi a Quartus v i các công cụ thi t k
ph n cứng EDA khác.
+ Quartus II cũng có thể đ c các file m ch (netlist) EDIF chu n, VHDL và Verilog
HDL cũng nh t o ra các file netlist này.
+ Quartus II có môi tr ng thi t k đồ h a giúp nhà thi t k d dàng vi t mã, biên
dịch, soát l i, mô ph ng...
V i Quartus có thể k t h p nhiều kiểu file trong 1 d án thi t k phân c p. Có thể
dùng bộ công cụ t o s đồ kh i (Quartus Block Editor) để t o ra s đồ kh i mô t thi t
k ở mức cao, sau đó dùng các s đồ kh i khác, các b n v nh : AHDL Text Design
Files (.tdf), EDIF Input Files (.edf), VHDL Design Files (.vhd), and Verilog HDL
Design Files (.v) để t o ra thành ph n thi t k mức th p.
Quartus II cho phép làm vi c v i nhiều file ở cùng th i điểm, so n th o file thi t
k trong khi v n có thể biên dịch hay ch y mô ph ng các d án khác. Công cụ biên dịch
Quartus II nằm ở trung tâm h th ng, cung c p quy trình thi t k m nh cho phép tùy
bi n để đ t đ c thi t k t i u trong d án.
M i m ch logic, hay m ch phụ, thi t k bằng ph n mềm Quartus II đ c g i là
một Project. Ph n mềm làm vi c trên một project t i một th i điểm và gi thông tin cho
project trong một th mục trên file h th ng. Để bắt đ u thi t k một m ch logic m i,
tr c tiên ph i t o một th mục để chứa các file của nó.
➢ Có thể truy c p làm bộ nh cho bộ x lý Nios II bằng Trình điều khiển thẻ SD
DE2
Pushbutton switches
➢ Đ c ch ng dội bởi một m ch kích ho t Schmitt
➢ Th ng cao; t o ra một xung th p ho t động khi nh n công tắc
Toggle switches
➢ 18 switch b t tắt cho đ u vào của ng i dùng
➢ Switch t o logic 0 khi ở vị trí DOWN (g n c nh của b ng DE2) và logic 1 khi ở
vị trí UP
Clock inputs
➢ Bộ dao động 50 MHz
➢ Bộ dao động 27 MHz
➢ Đ u vào đồng hồ bên ngoài SMA
Audio CODEC
➢ CODEC âm thanh sigma-delta 24 bit của Wolfson WM8731
➢ Đ u vào c p dòng, đ u ra c p dòng và giắc cắm đ u vào micrô
➢ T n su t l y m u: 8 đ n 96 KHz
➢ Ứng dụng cho máy nghe nh c và máy ghi âm MP3, PDA, đi n tho i thông
minh, máy ghi âm, v.v.
VGA output
➢ S dụng bộ gi i mã video t c độ cao 10 bit
➢ V i đ u n i D-sub m t độ cao 15 chân
➢ H tr lên t i 1600 x 1200 ở t c độ làm m i 100 Hz
➢ Có thể đ c s dụng v i Cyclone II FPGA để triển khai Bộ mã hóa TV hi u su t
cao
NTSC/PAL TV decoder circuit
➢ S dụng Bộ gi i mã video SDTV đa định d ng ADV7180
➢ H tr gi i điều ch màu NTSC/PAL/SECAM trên toàn th gi i
➢ Một ADC 10 bit, 4X l y m u quá mức cho CVBS
➢ H tr đ u vào giắc cắm RCA Video t ng h p (CVBS).
ti p trên các công ngh FPGA, CPLDs… Code VHDL đ c vi t để th c thi (implement)
các m ch tích h p trong các thi t bị l p trình đ c của các hãng nh Xilinx, Altera, …
H u h t câu l nh trong VHDL x y ra đồng th i (song song v i nhau), chứ không
ph i là x y ra tu n t nh C, C++.... Điều này là một khó khăn cho nh ng ng i bắt đ u
l p trình VHDL. Tuy nhiên, khi đã quen v i cách l p trình của ngôn ng mô t ph n
cứng, điều này s r t d dàng.
Tr c khi VHDL ra đ i, có nhiều ngôn ng mô t ph n cứng đ c s dụng nh ng
không có một tiêu chu n th ng nh t. Vì các ngôn ng mô ph ng ph n cứng đó đ c các
nhà cung c p thi t bị phát triển, nên mang các đ c tr ng gắn v i các thi t bị của nhà
cung c p đó và thuộc sở h u của nhà cung c p. Trong khi đó, VHDL đ c phát triển
nh một ngôn ng độc l p không gắn v i b t kỳ một ph ng pháp thi t k , bộ mô ph ng
hay công ngh ph n cứng nào. Ng i thi t k có thể t do l a ch n công ngh , ph ng
pháp thi t k trong khi v n s dụng một ngôn ng duy nh t.
VHDL có một s u điểm h n hẳn các ngôn ng mô t ph n cứng khác là:
• Tính công cộng: VHDL đ c phát triển d i s b o tr của chính phủ Mỹ và hi n
nay là một tiêu chu n của IEEE, VHDL không thuộc sở h u của b t kỳ cá nhân
hay t chức nào. Do đó VHDL đ c h tr của nhiều nhà s n xu t thi t bị cũng
nh nhiều nhà cung c p công cụ thi t k mô ph ng h th ng. Đây là một u điểm
n i b t của VHDL, giúp VHDL ngày càng trở nên ph bi n.
• Khả năng hỗ trợ nhiều công nghệ và phương pháp thiết kế: VHDL cho phép thi t
k bằng nhiều ph ng pháp nh ph ng pháp thi t k từ trên xu ng hay từ d i
lên d a vào các th vi n có s n. Nh v y VHDL có thể phục vụ t t cho nhiều mục
đích thi t khác nhau, từ vi c thi t k các ph n t ph bi n đ n vi c thi t k các IC
ứng dụng đ c bi t (Application Specified IC).
• Ðộc lập với công nghệ: VHDL hoàn toàn độc l p v i công ngh ch t o ph n cứng.
Một mô t h th ng dùng VHDL thi t k ở mức c ng có thể đ c chuyển thành
các b n t ng h p m ch khác nhau tuỳ thuộc vào công ngh ch t o ph n cứng nào
đ c s dụng (dùng CMOS, nMOS, hay GaAs). Đây cũng là một u điểm quan
tr ng của VHDL, nó cho phép ng i thi t k không c n quan tâm đ n công ngh
ph n cứng khi thi t k h th ng, nh th khi có một công ngh ch t o ph n cứng
ra đ i nó có thể đ c áp dụng ngay cho các h th ng đã thi t k .
• Khả năng mô tả mở rộng: VHDL cho phép mô t ho t động của ph n cứng từ mức
h th ng s (hộp đen) cho đ n mức c ng. VHDL có kh năng mô t ho t động của
h th ng trên nhiều mức nh ng chỉ s dụng một cú pháp ch t ch th ng nh t cho
m i mức. Nh th ta có thể mô ph ng một b n thi t k bao gồm c các h con
đ c mô t ở mức cao và các h con đ c mô t chi ti t.
• Khả năng trao đổi kết quả: Vì VHDL là một tiêu chu n đ c ch p nh n, nên một
mô hình VHDL có thể ch y trên m i bộ mô ph ng đáp ứng đ c tiêu chu n VHDL
và các k t qu mô t h th ng có thể đ c trao đ i gi a các nhà thi t k s dụng
công cụ thi t k khác nhau nh ng cùng tuân theo chu n VHDL. H n n a, một
nhóm thi t k có thể trao đ i mô t mức cao của các h th ng con trong một h
th ng; trong khi các h con đó đ c thi t k độc l p.
• Khả năng hỗ trợ thiết kế mức lớn và khả năng sử dụng lại các thiết kế: VHDL
đ c phát triển nh một ngôn ng l p trình b c cao, vì v y nó có thể s dụng để
thi t k một h th ng l n v i s tham gia của một nhóm nhiều ng i. Bên trong
ngôn ng VHDL có nhiều tính năng h tr vi c qu n lý, th nghi m và chia sẻ
thi t k . VHDL cũng cho phép dùng l i các ph n đã có s n.
2.6.2 C u trúc m t mô hình h th ng mô t bằng VHDL
Mục đích của ph n này nhằm gi i thi u s qua về c u trúc khung c b n của VHDL
khi mô t cho một mô hình thi t k th c. Thông th ng một mô hình VHDL bao gồm
ba ph n: th c thể, ki n trúc và các c u hình.
- Thực thể (ENTITY): Khai báo th c thể trong VHDL ph n định nghĩa các chỉ tiêu phía
ngoài của một ph n t hay một h th ng. Th c ch t của vi c khai báo th c thể chính là
khai báo giao di n của h th ng v i bên ngoài. Ta có thể có t t c các thông tin để k t
n i m ch vào m ch khác ho c thi t k tác nhân đ u vào phục vụ cho mục đích th
nghi m. Tuy nhiên ho t động th t s của m ch không nằm ở ph n khai báo này.
C u trúc của ENTITY:
LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;
ENTITY entity_name IS
PORT (declare input and output );
END entity_name;
KH I TÍN KH I X KH I TÍN
HI U VÀO LÝ HI U RA
KH I NGU N
Để đ a ra đ c nét chung nh t mang tính t ng quát của các bộ l c FIR, chúng ta
đi vào xem xét đ c tính xung của chúng: Gi ng nh các bộ l c tín hi u t ng t , bộ l c
s là m ch th c hi n chức năng ch n l c tín hi u theo t n s . Các m ch l c s cho tín
hi u s có ph nằm trong một d i t n s nh t định đi qua và không cho các tín hi u có
ph nằm ngoài d i t n s đó đi qua.
D i t n s mà m ch l c cho tín hi u đi qua đ c g i là d i thông, còn d i t n
s mà m ch l c không cho tín hi u đi qua đ c g i là d i ch n. T n s phân cách
gi a d i thông và d i ch n là t n s cắt và đ c ký hi u là c. Theo d ng của đ c
tính biên độ t n s ( ), ng i ta chia các bộ l c s thành các lo i:
+ Bộ l c thông th p, có d i thông ϵ (0, c)
𝜔 , 𝐾ℎ ∈ [ − , ]
| 𝑝 | ={
, 𝐾ℎ ∈ [ − 𝜋, − ] 𝑣à ∈ [ , 𝜋] (3.1)
Đ c tính biên độ t n s của bộ l c thông th p lý t ởng:
𝜔
| 𝑝( )|
- - c 0 c
Hình 3.2 Đặc tính biên độ tần số của bộ lọc thông thấp lý tưởng
Đ c tính xung hlp(n) của bộ l c thông th p lý t ởng:
- Xét bộ l c thông th p lý t ởng pha tuy n tính () = −α đ c tính t n s của nó có
d ng:
𝜔
𝛼𝜔
, 𝐾ℎ ∈ [ − , ]
𝑝 ={ (3.2)
, 𝐾ℎ ∈ [ − 𝜋, − ] 𝑣à ∈ [ , 𝜋]
- Đ c tính xung hlp(n) của bộ l c trên đ c xác định bằng IFT:
𝜋
𝜔 𝜔 𝜔𝑛
ℎ𝑝 = 𝐹 [ 𝑝 ]= ∫ ℎ 𝑝( ) 𝜔 (3.3)
𝜋 −𝜋
⇔
𝜔𝑐
− 𝛼𝜔 𝜔𝑛 𝜔 𝑛−𝛼
𝜔
ℎ𝑝 = ∫ 𝜔 = |−𝜔 .
𝜋 −𝜔𝑐 𝜋 − 𝛼
⇔
[ −𝛼 ] [ −𝛼 ]
ℎ𝑝 = = (3.5)
𝜋 −𝛼 𝜋 𝜋 −𝛼
→ Theo công thức trên, bộ l c thông th p lý t ởng pha tuy n tính có đ c tính
xung hlp(n) d ng hàm sin gi m d n về 0 khi n → ∞ . T i n = 0 có:
[ −𝛼 ]
ℎ𝑝 = ℎ𝑝 = [ ]= .
𝑛→ 𝑛→ 𝜋 −𝛼 𝜋
- Đ c tính xung hlp(n) đ t c c đ i t i n = 0, và hlp (n) = 0 t i các điểm = 𝜋 ⁄𝜔
v i k là s nguyên
* B l c thông cao lý t ng:
Bộ l c thông cao lý t ởng có đ c tính biên độ t n s khi () ∈ (- , ) nh sau:
𝜔 , 𝐾ℎ ∈ [ − π, − ] 𝑣à ∈ [ , π]
| 𝑝( )| = { (3.7)
, 𝐾ℎ ∈ [ − , ]
Đ c tính biên độ t n s của bộ l c thông cao lý t ởng:
𝜔
| ℎ𝑝 ( )|
- - c 0 c
Hình 3.3 Đặc tính biên độ tần số của bộ lọc thông cao lý tưởng
Đ c tính xung hlp(n) của bộ l c thông cao lý t ởng:
- Xét bộ l c thông cao lý t ởng pha tuy n tính () = −α đ c tính t n s của nó có
d ng:
𝜔
− 𝛼𝜔
, 𝐾ℎ ∈ [ − 𝜋, − ] 𝑣à ∈ [ , 𝜋]
ℎ𝑝 ={ (3.8)
, 𝐾ℎ ∈ [ − , ]
- Vì d i thông và d i ch n của bộ l c thông cao ng c v i bộ l c thông th p, nên có thể
biểu di n Hhp(ejω) qua Hlp(ejω) nh sau:
𝜔 𝜔
ℎ𝑝 ( )= − 𝑝( ) (3.9)
→ ta có thể tìm đ c đ c tính t n s của bộ l c thông cao từ đ c tính t n s của
bộ l c thông th p có cùng t n s cắt.
- Đ c tính xung hhp(n) của bộ l c trên đ c xác định bằng IFT:
𝜋
𝜔 𝜔 𝜔𝑛
ℎℎ𝑝 = 𝐹 [ ℎ𝑝 ]= ∫ | − ℎ 𝑝( )| 𝜔 .
𝜋 −𝜋
⇔
𝜋 𝜋
𝜔𝑛 − 𝛼𝜔 𝜔𝑛
ℎℎ𝑝 = ∫ 𝜔− ∫ 𝜔 .
𝜋 −𝜋 𝜋 −𝜋
𝜔𝑛 𝜋 𝜔 𝑛−𝛼
𝜔
ℎℎ𝑝 = | − |−𝜔 .
𝜋 −𝜋 𝜋 −𝛼
⇔
𝜋 [ −𝛼 ] (3.13)
ℎℎ𝑝 = −
𝜋. 𝜋 −𝛼
Hay:
𝜋 [ −𝛼 ]
ℎℎ𝑝 = − (3.14)
𝜋. 𝜋 −𝛼
Vì
𝜋 𝐾ℎ = 𝜋
= { ⇒ = 𝛿 .
𝜋 𝐾ℎ ≠ 𝜋
𝛿 là xung đ n vị Dirac:
𝛿
1
t
0
Từ (3.14) và (3.15) ⇒
sin[ −𝛼 ] sin[ −𝛼 ]
ℎℎ𝑝 =𝛿 − =𝛿 − .
𝜋 −𝛼 𝜋 −𝛼
- So sánh (3.5) v i (3.14), ta có thể biểu di n đ c tính xung hhp(n) của bộ l c thông cao
qua đ c tính xung hlp(n) của bộ l c thông th p:
ℎℎ𝑝 =𝛿 −ℎ𝑝 (3.17)
Từ đó ta có thể tìm đ c đ c tính xung hhp(n) của bộ l c thông cao từ đ c tính xung
hlp(n) của bộ l c thông th p có cùng t n s cắt c.
Đ c tính xung hhp(n) của bộ l c thông cao lý t ởng là dãy ch n, đ i xứng qua
trục tung và đ t c c đ i t i n = 0. Khi t n s cắt c = π/N thì đ c tính xung hhp
(kN) = 0 t i các điểm n = kN, v i k là s nguyên.
* B l c thông d i lý t ng:
Bộ l c thông d i lý t ởng có đ c tính biên độ t n s khi () ∈ (- , ) nh sau:
𝜔 , 𝐾ℎ ∈ [− , − ] 𝑣à ∈ [ , ]
| 𝑝 | ={ (3.18)
, 𝐾ℎ ằ 𝑔 à á ℎ ả 𝑔 ê
Đ c tính biên độ t n s của bộ l c thông d i lý t ởng:
𝜔
| 𝑝( )|
𝜔
− 𝛼𝜔
, 𝐾ℎ ∈ [ − , − ] 𝑣à ∈ [ , ]
𝑝 ={ (3.19)
, 𝐾ℎ ằ 𝑔 à á ℎ ả 𝑔 ê
- Có thể biểu di n Hbp(ej) qua đ c tính t n s Hlp1(ej) và Hlp2(ej)của các bộ l c thông
th p lý t ởng có t n s cắt c1 và c2 t ng ứng:
𝜔 𝜔 𝜔
𝑝( )= 𝑝 ( )− 𝑝 ( ) (3.20)
→ Từ đó, ta có thể tìm đ c đ c tính t n s của bộ l c thông d i có t n s cắt c1
và c2, từ đ c tính t n s của hai bộ l c thông th p có t n s cắt c1 và c2 t ng ứng.
- Đ c tính xung hbp(n) của bộ l c trên đ c xác định bằng IFT:
π
ℎ 𝑝 = IFT [H p ejω ] = ∫−π
[hlp ejω − hlp ejω ]ejωn dω (3.21)
π
⇔
𝜔𝑐 𝜔𝑐
− 𝛼𝜔 𝜔𝑛 − 𝛼𝜔 𝜔𝑛
ℎ 𝑝 = ∫ 𝜔− ∫ 𝜔 .
𝜋 −𝜔𝑐 𝜋 −𝜔𝑐
⇔
[ −𝛼 ] [ −𝛼 ]
ℎ 𝑝 = − (3.23)
−𝛼 −𝛼
⇔
[ −𝛼 ] [ −𝛼 ]
ℎ 𝑝 = − .
𝜋 −𝛼 𝜋 −𝛼
Hay:
ℎ 𝑝 = ℎ𝑝 −ℎ𝑝 (3.25)
→ ta có thể tìm đ c đ c tính xung hhp(n) của bộ l c thông cao từ đ c tính xung
hlp(n) và hlp2(n) của các bộ l c thông th p có cùng t n s cắt c1 và c2 t ng ứng.
* Nh n xét:
Qua phân tích đ c tính xung h(n) của t t c các bộ l c FIR từ thông th p, thông
cao, thông d i ta có thể nh n xét chung là: Tất cả các bộ lọc dạng FIR đều có thể được
xây dựng từ bộ lọc thông thấp. Nh v y, ta có thể xây d ng một c u hình t ng quát
chung cho t t c các bộ l c s , s khác nhau gi a các bộ l c nh thông th p, thông cao,
thông d i chỉ là h s nhân của các đ n vị delay.
3.2.2.2 C u hình t ng quát c a b l c FIR
x(n)
-1
Z
-1 b(1)
Z
-1 b(2)
Z
+
y(n)
b(M)
Hình 3.5 Cấu hình tổng quát của bộ lọc FIR đáp ứng xung hữu hạn
Trong đó:
+ Z-1 là một đ n vị delay
+ b(M) là các h s nhân t ng ứng v i đ n vị delay
đây chú ý rằng đ c tính xung đ c xét trong ph t n từ 0 đ n 2π đây là đ c tính
t n s pha. Nó có giá trị trong kho ng từ -π đ n +π còn ngoài kho ng đó nó có giá trị
bằng 0. T n s th c của bộ l c phụ vào t n s l y m u Fs và công thức t ng quát của bộ
l c FIR đáp ứng xung h u h n (b c M) là:
=∑ = − (3.26)
⇔ y(n) = b(0) x(n) + b(1) x(n –1) +… + b(M) x(n – M) (3.27)
3.2.3 Thi t k b l c s d ng FIR theo ph ng pháp MBD
Nh đã trình bày lý thuy t về thi t k bộ l c theo ph ng pháp mô hình hóa –
MBD (xem mục 2.4.8.1). đây, chúng ta bắt đ u thi t k các bộ l c thông th p, thông
cao và thông d i (đáp ứng xung h u h n – d ng FIR) để l c nhi u cho tín hi u ECG theo
ph ng pháp MBD.
3.2.3.1 Xây d ng s đ kh i
TÍN HI U
ECG
+ B L C HIỂN THỊ
TÍN HI U
NHI U
Hình 3.7 Thông số của bộ lọc thông thấp dạng FIR
- Bộ lọc thông cao:
T ng t nh bộ l c thông th p, sau khi mở FDATool, ta điền các thông s , click
ch n Design Filter sau đó l u l i v i tên highpassecg.fda để ti p tục s dụng cho nh ng
l n ti p theo.
Hình 3.8 Thông số của bộ lọc thông cao dạng FIR
- Bộ lọc thông dải:
T ng t nh hai bộ l c trên, bộ l c thông d i đ c l u v i tên bandpassecg.fda.
Hình 3.9 Thông số của bộ lọc thông dải dạng FIR
* Mô ph ng thi t k :
Để mô ph ng đ c thi t k này chúng ta chuyển thi t k này thành kh i chức năng
s dụng trong Simulink (xem mục 2.4.5 để bi t thêm về Simulink), thao tác nh sau:
- Bộ lọc thông thấp:
Đ u tiên, chúng ta mở file lowpassecg.fda đã l u tr c đó ta đ c giao di n v i
các thông s đã đ c cài đ t nh hình 3.7. Sau đó, ta chuyển toàn bộ thi t k sang d ng
kh i chức năng để mô ph ng trong simulink nh sau:
Từ giao di n FDATool của file lowpassecg.fda, ta ch n công cụ Realize Model
(thanh d c bên trái giao di n). đây ta đ t tên kh i chức năng (block name) là: lowpass
và chúng ta c n ch n các yêu c u bằng cách click vào các ô yêu c u v i kh i chức năng
nh hình v thể hi n. Sau đó ta click ch n Realize Model.
Hình 3.10 Chọn chế độ lọc thông thấp cho khối mô phỏng
Khi đó Matlab s ch y kh i mô ph ng Simulink có s n kh i chức năng của bộ l c
lowpass.
Hình 3.12 Thiết lập mô phỏng lọc nhiễu thông thấp ECG
Ch n các thông s kỹ thu t của kh i t o nhi u (kh i Sine) và ECG bằng cách click
đúp vào các kh i, b ng các thông s cài đ t s đ c hiển thị nh hình:
Hình 3.15 Thiết lập mô phỏng lọc nhiễu thông cao ECG
Ch n các thông s kỹ thu t của kh i t o nhi u (kh i Sine) và ECG bằng cách click
đúp vào các kh i, b ng các thông s cài đ t s đ c hiển thị nh hình:
năng để mô ph ng trong simulink. Tuy nhiên, ta đ t tên kh i chức năng (block name)
là: bandpass.
Hình 3.18 Thiết lập mô phỏng lọc nhiễu thông dải ECG
Nhóm ch n các thông s kỹ thu t của kh i t o nhi u (kh i Sine) và ECG đ c
hiển thị theo b ng ch n, hình bên trái là t n s cao và hình bên ph i là t n s th p:
Hình 3.19 Thiết lập mô phỏng lọc nhiễu ngẫu nhiên thông thấp ECG
* Chuy n thi t k sang mã VHDL:
Để hi n th c hoá trên FPGA, Matlab có ph n mềm h tr t ng tác v i
Altera, nó cho phép t o ra ngôn ng VHDL từ công cụ FDATool, h s (Coefficient)
dùng trong ph n mềm Quartus.
Vì các bộ l c thông cao và thông d i đ c xây d ng trên bộ l c thông th p. Nói
cách khác bộ l c thông th p đ c xem nh bộ l c c b n, từ đó có thể xây d ng các bộ
l c còn l i. Vì v y, nhóm chúng tôi chỉ xin gi i thi u cách chuyển mã VHDL từ công
cụ FDATool của bộ l c thông th p. Có 2 cách chuyển mã VHDL từ công cụ FDATool
của Matlab:
2
1
4 3
Sau đó, chúng ta ch y kiểm tra l i bằng nhiều cách nh click Processing → Start
→ Start Analysis & Synthesis (nh n t h p Ctrl + K), hay click ch n icon Start
Analysis & Synthesis trên thanh Standard ho c click ch n Analysis & Synthesis
trên thanh Tasks. N u không có l i thì s có d u tích xanh hi n lên ở khu v c Analysis
& Synthesis trên thanh Tasks và một b ng thông báo thành công.
Compilation trong thanh Standard. Khi đó, các chân gán bên Notepad++ s t động
c p nh t sang file gán chân trong quartus.
Sau đó, ta ch y Start Compilation ho c click đúp vào Compile Design để th c thi,
n u ta nh n đ c k t qu là các d u tích màu xanh, báo hi u không l i nh hình d i có
nghĩa là ch ng trình có thể ch y trên kit FPGA.
Ti p theo, chúng ta chuyển hai file count.vhd sang count.bdf và lowpass.vhd sang
lowpass.bdf bằng cách click ch n icon Symbol Tool trên thanh Block Editor. Khi đó
b ng Symbol hi n ra, ta l y từng kh i c n dùng trong Project của mục Libraries rồi click
OK đem ra màn hình v s đồ kh i. Để v các chân ngõ ra, ngõ vào, ta click vào icon
Pin Tool trên thanh Block Editor rồi kéo ra. Sau đó k t n i chúng v i nhau nh hình:
Hình 3.29 Hộp thoại add file cho project trong ModelSim
- Bước 3: Ti n hành hành add file Lowpass.vhd và file Lowpass_tb.vhd vào project.
Trong đó file Lowpass_tb.vhd là file mô ph ng.
- Bước 4: Sau khi đã add file xong thì bắt đ u compile cho t t c các file bằng cách: b m
ch n t t c file → chuột ph i → compile → compile all. Khi nào hi n dòng thông báo
Compile of Lowpass_tb.vhd was successful (biên dịch file thành công) hi n ra nghĩa là
b n đã hoàn t t quá trình biên dịch.
Hình 4.1 Các dạng sóng của hệ thống bộ lọc thông thấp trường hợp 1
Hình 4.2 Các dạng sóng của hệ thống bộ lọc thông thấp trường hợp 2
- Trường hợp 3: ở tr ng h p này, chúng ta s thay đ i biên độ sóng sine từ A = 0.05
thành A = 0.8, t t c các thông s còn l i gi nh tr ng h p 1. Trong môi tr ng
simulink, ta cho ch y mô ph ng đ c d ng sóng:
Hình 4.3 Các dạng sóng của hệ thống bộ lọc thông thấp trường hợp 3
- Trường hợp 4: ở tr ng h p này, chúng ta s thay đ i bộ l c thông th p v i t n s cắt
fc = 50Hz, t t c các thông s còn l i gi nh tr ng h p 1.
Hình 4.4 Các dạng sóng của hệ thống bộ lọc thông thấp trường hợp 4
Hình 4.5 Các dạng sóng của hệ thống bộ lọc thông cao trường hợp 1
Trong môi tr ng simulink ta cho ch y mô ph ng và mở hiển thị Scope bằng cách
nháy đúp chuột vào kh i Scope. Ta đ c các d ng sóng:
K t qu mô ph ng đ c hiển thị ở Scope v i d ng sóng thể hi n từ d i lên là:
+ Tín hi u ECG.
+ Tín hi u nhi u (sine l ng t ).
+ T ng của tín hi u ECG + nhi u (sine l ng t ).
+ Tín hi u ECG sau bộ l c.
- Trường hợp 2: ở tr ng h p này, chúng ta s thay đ i t n s sóng sine từ f = 0.4Hz
thành f = 0.015Hz, t t c các thông s còn l i gi nh tr ng h p 1.
Hình 4.7 Các dạng sóng của hệ thống bộ lọc thông cao trường hợp 2
- Trường hợp 3: ở tr ng h p này, chúng ta s thay đ i biên độ sóng sine từ A = 0.5
thành A = 1.2, t t c các thông s còn l i gi nh tr ng h p 1.
Hình 4.6 Các dạng sóng của hệ thống bộ lọc thông cao trường hợp 3
Hình 4.8 Các dạng sóng của hệ thống bộ lọc thông cao trường hợp 4
* L c thông d i:
Vì bộ l c thông d i có thể đ c xây d ng trên các bộ l c thông th p. Cũng nh , bộ l c
thông d i có t n s cắt nằm trong kho ng fc1 đ n fc2. Nên vi c mô ph ng bộ l c nhi u
thông d i gi ng nh các tr ng h p của l c thông th p và thông cao. Vì th , chúng ta
chỉ xét một tr ng h p của bộ l c thông d i.
Để mô ph ng bộ l c nhi u thông d i tín hi u ECG, nhóm chúng tôi ch n các thông
s nh sau:
+ Bộ l c thông d i: T n s l y m u: fs = 360Hz, t n s cắt fc1 = 10Hz, fc2 = 40Hz.
+ Tín hi u ECG: T n s l y m u: fs = 360Hz, nhịp tim: 82bpm.
+ Sóng sine: T n s l y m u: fs = 360Hz, t n s : f = 0.4Hz, biên độ: A = 0.5
a. L c nhi u t n s cao
b. L c nhi u t n s th p
Hình 4.9 Các dạng sóng của hệ thống dùng bộ lọc thông dải
* B l c thông th p + nhi u ng u nhiên:
Tr c h t, chúng ta c n cài đ t các thông s :
+ Bộ l c thông th p và tín hi u ECG: nh ở mục bộ l c thông th p + sine.
B MÔN ĐI N T CÔNG NGHI P – Y SINH Trang 93
CH NG 4. K T QU -NH N XÉT-ĐÁNH GIÁ
+ Nguồn ng u nhiên: Lo i nguồn (Source Type): Gaussian, ph ng pháp (Method):
Ziggurat, trung bình (Mean): 1, t n s l y m u (Simple time): 1/360
Hình 4.10 Dạng sóng của hệ lọc nhiễu ngẫu nhiên dùng lọc thông thấp lần 1
Ta th y d ng sóng ra ch a đ t yêu c u đề ra, có thể do s chênh l ch biên độ gi a
2 sóng không đáng kể nên khó để l c. Chúng ta th thêm vào các bộ nhân để khu ch đ i
tín hi u vào nh hình sau:
Hình 4.11 Thiết lập mô phỏng lọc nhiễu ngẫu nhiên thông thấp ECG có khuếch đại
Ta khu ch đ i tín hi u ECG lên 20 l n và khu ch đ i nguồn nhi u ng u nhiên lên
0.5 l n. Ta đ c d ng sóng nh sau:
Hình 4.12 Dạng sóng của hệ lọc nhiễu ngẫu nhiên dùng lọc thông thấp lần 2
L n này ta th y d ng sóng đ c c i thi n h n. Tuy nhiên, ta có thể tăng độ khu ch
đ i để kiểm tra mức độ bộ l c có thể l c đ c. Chúng ta s gi nguyên độ khu ch đ i
của tín hi u ECG và thay độ khu ch đ i của nguồn nhi u thành 1 l n. Ta đ c d ng
sóng nh sau:
Hình 4.13 Dạng sóng của hệ lọc nhiễu ngẫu nhiên dùng lọc thông thấp lần 3
Hình 4.14 Thiết lập mô phỏng lọc nhiễu ngẫu nhiên thông cao ECG có khuếch đại
Ta đ c d ng sóng:
Hình 4.15 Dạng sóng của hệ lọc nhiễu ngẫu nhiên dùng lọc thông thấp lần 1
Hình 4.16 Dạng sóng của hệ lọc nhiễu ngẫu nhiên dùng lọc thông thấp lần 2
* B l c thông d i + nhi u ng u nhiên:
Các thông s cài đ t của bộ l c và ECG nh ở mục bộ l c thông d i + sine, còn
thông s nguồn nhi u thì gi ng ở l c thông th p và thông cao. Chúng ta thêm kh i
khu ch đ i tín hi u ECG lên 30 l n và khu ch đ i nguồn nhi u lên 0.5 l n.
Hình 4.17 Thiết lập mô phỏng lọc nhiễu ngẫu nhiên thông dải ECG có khuếch đại
Hình 4.18 Dạng sóng của hệ lọc nhiễu ngẫu nhiên dùng lọc thông dải lần 1
Ti p theo chúng ta thay bộ khu ch đ i nhi u lên 1 l n để quan sát s thay đ i:
Hình 4.19 Dạng sóng của hệ lọc nhiễu ngẫu nhiên dùng lọc thông dải lần 2
CH NG 5: K T LU N VÀ H NG PHÁT TRI N
5.1 K T LU N
Sau th i gian nghiên cứu, tìm hiểu v i s giúp đỡ của th y Nguy n Thanh Nghĩa,
nhóm đã hoàn thành vi c thi t k và mô ph ng bộ l c nhi u tín hi u đi n tim thông qua
các bộ l c thông th p, thông cao và thông d i và đã xu t đ c mã VHDL. Các bộ l c khi
n p vào FPGA trong th i gian dài và không phát sinh l i khi ho t động. Tuy nhiên, do th i
gian có h n, nhóm v n ch a kịp hoàn thành vi c k t n i th c t các ph n cứng. D i đây
là đánh giá chung về u – nh c điểm của h th ng:
- u điểm của h th ng:
+ Tín hi u đ u ra t ng đ i chu n xác.
- Nh c điểm của h th ng:
+ Quá trình x lý phức t p.
+ Chi phí khá đắt.
5.2 H NG PHÁT TRI N
Trong đề tài này, nhóm đã th c hi n thi t k và mô ph ng bộ l c nhi u tín hi u đi n
tim ECG dùng công ngh Matlab và xu t mã VHDL. Để phát triển đề tài thêm n a, nhóm
xin đề xu t các ý t ởng sau:
+ Ti p tục nghiên cứu các gi i pháp ph n cứng và ph ng pháp x lí tín hi u đi n m i
để đ a ra đ c h đo t i u.
+ L c nhi u các tín hi u khác bằng công ngh FPGA ví dụ nh tín hi u đi n não để s
dụng trong lĩnh v c y sinh – y t .
+ Giám sát và qu n lý tín hi u ECG sau khi đ c thu th p và l c nhi u bằng công ngh
FPGA qua Internet.
+ Thu th p và l c nhi u tín hi u ECG và l c nhi u bằng FPGA bằng ph ng thức truyền
không dây.
TÀI LI U THAM KH O
[1] Vũ Thị Hồng Xiêm, Công nghệ xử lý tín hiệu số DSP và công nghệ FPGA, Khóa
lu n t t nghi p, tr ng ĐH S ph m Hà Nội 2, Hà Nội, 2010.
[2] Nguy n Văn Thông, Thử nghiệm thiết kế dao động ký số trên FPGA, Khóa lu n
t t nghi p, tr ng ĐH Công ngh , Hà Nội, 2008.
[3] Tr n Thanh S n, Thiết kế bộ lọc tín hiệu số trên công nghệ FPGA với công cụ
Matlab và EDA của XILINX, Lu n văn Th c sỹ Kỹ thu t, H c vi n Kỹ thu t Quân
s , Hà Nội, 2008.
[4] Nguy n Qu c Tu n, Tr n Quang Đ t, Thiết kế trên FPGA để loại ồn cho tín hiệu
ECG nhờ biến đổi sóng con, T p chí Khoa h c ĐHQGHN, Tr ng Đ i h c Công
ngh ĐHQGHN, Hà Nội, 2008.
[5] Bùi Công Quân, Thiết kế bộ lọc số trên dsPIC ứng dụng trong việc xử lý điện tâm
đồ, Khóa lu n T t nghi p, tr ng ĐH Công Ngh , Hà Nội, 2013.
[6] Bộ môn đi n t công nghi p – y sinh, Tài liệu thực hành xử lý tín hiệu y sinh,
Tr ng Đ i h c S ph m Kỹ thu t, Tp HCM, 2018.
PH L C
Code ch ng trình chính: