Bài giảng Hệ thống nhúng - Vũ Quang Dũng

Nội dung

„ Giới thiệu hệ thống nhúng

„ Kiến trúc HW/SW

„ Đặc trưng và thiết kế hệ thống nhúng

„ Khái niệm thời gian thực

„ Đặc trưng và ràng buộc thời gian thực

„ Những mô hình tính toán thông dụng của

ES

pdf 40 trang phuongnguyen 8140
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng Hệ thống nhúng - Vũ Quang Dũng", để tải tài liệu gốc về máy hãy click vào nút Download ở trên

Tóm tắt nội dung tài liệu: Bài giảng Hệ thống nhúng - Vũ Quang Dũng

Bài giảng Hệ thống nhúng - Vũ Quang Dũng
Hệ thống nhúng
Nội d ung
„ Giới thiệu hệ thống nhúng
Kiến trúc HW/SW„
„ Đặc trưng và thiết kế hệ thống nhúng
„ Khái niệm thời gian thực
Đặ t à à b ộ thời i th„ c rưng v r ng u c g an ực
„ Những mô hình tính toán thông dụng của
ES
2Vũ Quang Dũng
Phần mềm hệ thống nhúng truyền 
thống = CPU + RTOS
3Vũ Quang Dũng
Hệ thố hú hiệ t i ng n ng n ạ
Application 
Specific Gates
Analog 
I/O
DSP 
Code
Processor 
Cores Memory
„ Hệ thống nhúng bao gồm
… Hệ thống phần cứng (boards, ASICs, FPGAs etc.)
Th thi tiết kiệ ă l„ ực , m n ng ượng
… Chương trình phần mềm. Bộ vi xử lý: xử lý tín hiệu số DSP, μcontrollers etc.
„ Tính linh động, tính phức hợp
… Bộ chuyển đổi 
„ Tích hợp trong hệ thống SoC
… Đặc trưng của chip : 50 sq. mm., 50M transistors, 1010GHz, 100-1000 MOP/sq. 
mm, 10-100 MIPS/mW
4Vũ Quang Dũng
Tí h hứ h à khô đồ hấtn p c ợp v ng ng n
control panel
controller
μcontroller
Real-time
OS
processes
UIASIC
processes
Programmable
DSP
Programmable
DSP
DSP
Assembly
Code
DSP
Assembly
Code
Dual-ported
RAM CODEC
„ Tính không đồng nhất trong phần cứng và phần mềm
… S/W: điều khiển định hướng, xử lý tín hiệu số
… H/W: ASICs
5Vũ Quang Dũng
Xử lý và nắm bắt tính không đồng 
nhất
6Vũ Quang Dũng
M d l hầ ứ à hầ ềo u e p n c ng v p n m m
„ Hardware = thực thi chức năng thông qua cấu trúc thiết , 
kế
„ Software = thực thi chức năng phần mềm trên bộ vi xử
lý lập trình được
„ Từ khóa phân biệt:
Tí h tí h h (M lti l i )… n c ợp u p ex ng
„ Module phần mềm tích hợp với các thành phần khác trong
bộ vi xử lý (ví dụ như hệ điều hành)
„ Module phần cứng kết hợp riêng rẽ trong thành phần phần
cứng riêng
… Tính song hành (Concurrency) 
„ Trong bộ vi xử lý luôn có sự xử lý luồng “thread of control”
„ Thành phần phần cứng riêng thường có sự xử lý song song
7Vũ Quang Dũng
Tính tích hợp của thành phần phần mềm 
A B A B A B
Call B
Resume B
Resume A
Resume B
Resume A
Return
Thủ tục Các thành phần tương đương Các tiến trình
Có thứ tự Tính cân đối Tính cân đối
Tính liên tiếp Tính liên tiếp Tính song song
8Vũ Quang Dũng
Module 
tích hợp
Cá á h thứ tái lậ t ì h i ử lýc c c c p r n v x 
„ Phương thức cũ „ Hiện tại
‹Bộ vi xử lý
‹Vi điều khiển
‹Xử lý mạng
‹Xử lý cảm biến 
‹DSP
‹Đồ h
‹Xử lý mã hóa
‹Xử lý t ò h i ọa
‹Bộ xử lý
 r c ơ
‹Xử lý chuyên dụng
‹Xử lý di động
9Vũ Quang Dũng
Tái ấ hì h S C c u n o
10Vũ Quang Dũng
Kiế t ú H/W S/Wn r c -
„ Vấn đề quan trọng trong kiến trúc là xác 
định được rõ phần nào cần phần mềm 
trong xử lý, phần nào cần phân cứng
„ Hiện tại:
…Kinh nghiệm trong thiết kế
…Sự phân chia H/W-S/W được quyết định tại 
lúc khởi điểm và được thiết kế riêng biệt 
11Vũ Quang Dũng
Các hình thái trong phát triển phần 
mềm
„ Dung lượng lớn, giá thấp, tính tích hợp thấp: CD player
… 8-bit vi xử lý với RAM, ROM, IO nằm trên chip
… mã assembly, đơn tác vụ, 1K-8K bytes mã
„ Dung lượng trung bình, giá vừa phải, tính hợp trung bình: bộ điều khiển từ xa bằng 
tay
… 16-bit or 32-bit vi xử lý với bộ nhớ và thiết bị ngoại vi
… Tùy biến phát triển phần mềm giữa C và assembly 
… 64 KB-1MB mã, đa tác vụ
„ Dung lượng thấp, giá cao, tính tích hợp cao: hệ thống điều khiển không khí
… Tính bảo mật và tin cậy là thước đo chủ yếu của chất lượng 
… Phát triển và duy trì giá cả
… Tính hiệu quả cao
„ Tính hiệu quả cực cao: modem không dây
… Thiết kê phần cứng, phần mềm phải tương thích với phần cứng
… Tùy biến bộ lệnh xử lý, môi trường phát triển phức hợp
… Tích hợp với thiết kế công cụ phần cứng
„ Mô phỏng và công cụ tổng hợp
12Vũ Quang Dũng
Thiết kế hệ thố hú ng n ng
„ Quan hệ các tác vụ con
… Đặc tả/mô hình hóa
… Phân chia H/W & S/W
… Lập lịch và phương thức định
vị
… Thực thi H/W & S/WProcessor
Analog I/O
Memory
ASIC
… Kiểm chứng và debugging
ố ế ế ế„ Tính c t y u là sự thi t k tích
hợp và kết nối giữa phần cứng và
phần mềm
DSP
Code
13Vũ Quang Dũng
Luồng thiết kê của hệ thống nhúng 
Environ
-ment
„ Mô hình hóa
‹ Hệ thố đ thiết kế à th hiệ ới áng ược v ực ng m v c c
thuật toán
„ Phân loại
‹ Chức năng được thực thi sẽ được phân chia
nhỏ hơn, có tác động qua lại lẫn nhau
„ Phân chia HW-SW : phân rõ thành phần
‹ Các phần tử trong mô hình phân chia gồm (1)
Processor 
Analog I/O
Memory
ASIC
HW, hoặc (2) SW chạy trên nền phần cứng
hoặc tương thích với lập trình vi xử lý
„ Lập lịch
‹ Đưa ra số lần các chức năng được gọi trong
hệ thống. Nó quan trọng khi một số module 
trong thành phần chia thành các phần tử phần
ỏ
DSP 
C d
cứng nh hơn.
„ Liên kết (Thực thi)
‹ Chức năng mô phỏng (1) phần mềm chạy trên
i ử lý h ặ (2) á thà h hầ ủ hầ
14Vũ Quang Dũng
o e v x o c c c n p n c a p n
cứng
Cấ t úu r c
Specification App Knowledge
Function & Performance
(e.g. SP)
System
Architecture
Design & Optimization
H/W & S/W
Components
Design Tools
and Languages
F b i tia r ca on
15Vũ Quang Dũng
Testing
Kỹ thuật thiết kế đặc biệt và sự tiếp cận của 
hệ thống nhúng
„ Hướng tiếp cận chung
… Phần lớn mã viết trên assembly
ế ầ ấ… Lập trình đo thời gian, các driver liên k t t ng th p, tác vụ và 
hàm ngắt
„ Hoàn thiện khả năng, và bất lợi 
… Chương trình buồn tẻ
… Khó hiểu và duy trì
… Khó kiểm tra theo thời gian và giới hạn bộ nhớ
„ Hệ quả chính là không thể dự đoán được
… Hệ thống có thể làm iệc tốt trong một khoảng thời gian nh ng v ư 
sẽ có lỗi trong một số điều kiện
16Vũ Quang Dũng
Thiết kế ó hệ thố ủ ES c ng c a 
„ Kiểm tra, mặc dù quan trọng nhưng kết quả không thể 
dự đoán trước
L ồ điề khiể h th ộ à á dữ liệ đặ thù à điề kiệ… u ng u n p ụ u c v o c c u c v u n 
môi trường, không thể tái tạo một cách toàn diện trong giai đoạn 
kiểm tra
ể ỉ ầ ủ ể ử ố… Do vậy, ki m tra ch là một ph n c a ki m th hệ th ng, liên 
quan tới các dữ liệu đặc thù trong input
„ Sự cần thiết trong đảm bảo hệ thống
… Sử dụng các phương pháp thiết kế (Design methodologies)
… Phân tính tĩnh hệ thống phần cứng và mềm
Thiết kế ổi bật thể hiệ hữ điề khô d đ á t ớ t… n n n ng u ng ự o n rư c rong 
kịch bản như các điều kiện, môi trường liên quan
17Vũ Quang Dũng
Công cụ và mô hình cho thiết kế có 
hệ thống
„ Cách tiếp cận đặc biệt trong thiết kế không thuộc về các 
thành phần thiết kế phức tạp, được sử dụng phần lớn 
trong hệ thống nhúng 
„ Phương pháp, hướng kỹ thuật, công cụ tiếp cận
… Đặc điểm kỹ thuật tổng hợp tối ưu hóa kiểm chứng , , , 
… Sự phổ biến của phần cứng, và các phần mềm tương ứng
„ Khía cạnh của mô hình thiết kế
… Cụ thể hóa trình bày sự hiểu biết, ý tưởng về hệ thống
… Cân nhắc tới sự thay đổi của mô hình hoặc các chi tiết cần thiết, 
và cần biết chúng đã được phân tích, tìm hiểu và kiểm tra 
… Công cụ mang tính hệ thống hóa
18Vũ Quang Dũng
Mô hì h ô ữ à ô n , ng n ng v c ng cụ
19Vũ Quang Dũng
Đặc điểm chung của hệ thống 
nhúng
Control System
Sensory System Actuation System
ENVIRONMENT
20Vũ Quang Dũng
Đặc trưng hệ thống nhúng 
ốThuật toán 
trong điều khiển Giao diện
Hệ th ng 
kỹ thuật
Đồng hồ 
thời gian thực
Ghi dữ liệu Quá trình truy cập 
ốhệ th ng từ xa
Database
Nhân dữ liệu 
và hiển thị
Thiết bị 
hiển thị
Điề khiể
21Vũ Quang Dũng
u n 
giao diện
Lệnh điều khiển Máy tính thời gian thực
Thời i th là ì? g an ực g
Thời i là thà h hầ hâ biệt hí h liê„ g an n p n p n c n n 
quan tới mục đính cơ bản của hệ thống tính 
toán
… Thời gian: hệ thống đúng đắn phụ thuộc không chỉ 
vào kết quả logic của sự tính toán mà con phụ thuộc 
vào thời gian diễn ra tiến trình tính toán đó
… Hiện thực: là phản ứng của hệ thống với các sự kiện 
bên ngoài mà phải xảy ra trong suôt quá trình phát 
triển và hoạt động của hệ thống
„ Thời gian thực trong hệ thống phải được sử dụng 
thước đo giống với thước đo cho môi trường thời 
gian ngoài hệ thống
22Vũ Quang Dũng
Tá thời i thc vụ g an ực
„ Khóa chính để phân biệt giữa tác vụ thời gian thực và không thời
gian thực là sự tồn tại của giới hạn thời gian thực hiện (deadline)
… Kết quả sau giới hạn không chỉ muộn mà còn sai
… Hệ thống phải sử dụng input tiếp theo sau giới hạn
„ Phần cứng và phần mềm (Hard - Soft)
ế ế… Phụ thuộc vào k t quả của sự thi u hụt giới hạn
… Soft: thiếu hụt giới hạn không ảnh hưởng trầm trọng tới môi
trường và không gây nguy hiểm tới sự đúng đắn của hệ thống
… Hard: thiếu hụt giới hạn gây ảnh hưởng trầm trọng tới môi
trường hoạt động của hệ thống
„ Hệ thống thông thường là sự kết hợp giữa hai kiểu tác vụ
23Vũ Quang Dũng
Tí h hất thời i thn c g an ực
„ Hard real-time — hệ thống hoàn toàn cưỡng chế sự trả
lời trong khoảng thời gian deadline cho phép. Ví dụ như
ố ề ểhệ th ng đi u khi n bay.
„ Soft real-time — deadline là quan trọng đối với hệ thống,
nhưng cũng tồn tại chức năng để sửa lỗi hệ thống khi
deadline không được đáp ứng kịp thời. Ví dụ như hệ
thống nhận dữ liệu.
„ Firm real time là hệ thống soft real time trong trường- — -
hợp không có sự ràng buộc gì trong giới hạn cần thiết.
24Vũ Quang Dũng
Điể đặ tm c rưng
„ Tính đúng lúc 
… Kết quả cần phải chính xác không chỉ trong giá trị mà còn trong khoảng thời gian
„ Hệ điều hành phải cung cấp cơ chế hoạt động của nhân trong điều khiển thời gian, nắm 
bắt các tác vụ với thời gian chính xac
Tí h đả bả ới h t độ hiệ ất hất„ n m o v oạ ng u xu cao n
… Phải đảm bảo điều kiện hoạt động với hiệu xuất cao nhất
„ Tính có thể dự đoán được
… Hệ thống phải có thể dự đoán được kết quả của bất kỳ trạng thái phân công của 
hệ thống
„ Nếu tác vụ không đảm bảo thời gian trả lời, thì hệ thống phải thông báo đưa ra phương 
án dự phòng
Câ hắ khả ă ủ i ử lý h h DMA„ n n c n ng c a v x n ư cac e, 
„ Cân nhắc tới các đặc trưng của nhân hệ thống như chế độ lập lịch, đồng bộ, quản lý bộ 
nhớ, nắm bắt các lệnh ngắt.
„ Lỗi có thể chấp nhận được
… Hệ thống đơn của phần cứng và phần mềm có lỗi chấp nhận được khi không là 
nguyên nhân của sự phá hủy hệ thống
„ Thực thi và nâng cấp
… S th đổi ủ hệ thố hải dễ dà th hiệự ay c a ng p ng ực n
25Vũ Quang Dũng
Tí h đú lún ng c
„ Tính đúng lúc là cơ sở chính tronghoatj động của hệ thống
„ Tăng khả năng hoạt động có tính chặt chẽ của hệ thống
„ Tính đúng lúc chặt chẽ (cứng), tính đúng lúc mềm, sự tác 
động qua lại
„ Hai loại của tính đúng lúc 
… Ràng buộc trong thực thi: giới hạn về thời gian trả lời của hệ 
thống
… Ràng buộc trong hành vi: sự đòi hỏi về khả năng yêu cầu của 
người sử dụng tới hệ thống
„ Một số loại khác trong ràng buộc
… Maximum: không lớn hơn khoảng thời gian t giữa 2 sự kiện 
… Minimum: không nhỏ hơn khoảng thời gian t giữa 2 sự kiện
… Durational: sự kiện phải xảy ra trong khoảng thời gian t
26Vũ Quang Dũng
M i t à b ộ thời iax mum rong r ng u c g an
A. Liên kết S-S (Stimuli - Stimuli): thời gian cực đại cho phép giữa hai tác nhân 
kích thích
„ Ví dụ yêu cầu số thứ 2 phải xảy ra không muôn hơn 20 giây sau số thứ nhất
B. Liên kết S-R (Stimuli - Response): thời gian cực đại cho phép giữa tác nhân 
kích thích đầu vào và sự trả lời của hệ thống
„ Ví dụ người gọi điện sẽ nhận được tín hiệu gọi không muộn hơn 2 giây sau 
khi hấ ố h n c ng ng e
C. Liên kết R-S (Response - Stimuli): thời gian cực đại cho phép giữa khoảng 
tra lời của hệ thống và tác nhân kích thích tiếp theo từ môi trường
„ Vi dụ sau khi nhận được tín hiệu gọi người gọi phải ấn số trong vào 30 giây , 
D. Liên kết R-R (Response - Response): thời gian cực đại cho phép giữa 2 lần 
trả lời của hệ thống
„ Ví dụ sau khi kết nối được người gọi sẽ nhận được chuông reo không trễ , 
hơn 0.5 giây sau khi nhân được tin hiệu chuông
27Vũ Quang Dũng
Mi i t à b ộ thời in mum rong r ng u c g an
A. Liên kết S-S: thời gian nhỏ nhất cần thiết giữa hai tác nhân kích thích
„ Ví dụ 0.5s là thời gian nhỏ nhất xảy ra giữa lần gọi thứ nhất đến lần gọi tiếp 
theo
B. Liên kết S-R: thời gian nhỏ nhất cần thiết giữa tác nhân kích thích vào hệ 
thống và sự trả lời của hệ thống
„ Vi dụ sau khi người gọi nhấn 0, hệ thống sẽ đợi khoảng 15 giây sau khi có 
tín hiệu 
C. Liên kết R-S: thời gian nhỏ nhất cần thiết giữa sự trả lời của hệ thống và tác 
nhân kích thích tiếp theo từ môi trường
„ Vi dụ khi hệ thống bận với quá trình xử lý yêu cầu từ một số cổng và không , 
thể xử lý thêm các thông tin vào các cổng đó tại cùng một thời điểm
D. Liên kết R-R: thời gian nhỏ nhất phải có giữa 2 lần trả lời của hệ thống
„ Ví dụ người sử dụng cần biết chắc khoảng thời gian sau lần trả lời đầu
28Vũ Quang Dũng
Phâ biệt iữ á d ln g a c c mo e
„ Trạng thái: có giới hạn và vô hạn
„ Thời gian: không giới hạn thời gian liên tiếp thứ , , 
tự cục bộ, thứ tự toàn bộ
„ Tính song song: liên tiếp song song , 
„ Tính xác định: xác định và không xác định
„ Giá trị: liên tiếp, mẫu, sự kiện
„ Sự liên kết trong cơ chế hoạt động
„ Những phân biệt khác: sự tổ chức, công cụ 
29Vũ Quang Dũng
Những mô hình tính toán thông 
dụng của ES
„ Máy trạng thái(State Machines)
… FSM, CFSM
„ Quá trình liên kết 
„ Mô hình luồng dữ liệu
„ Mô hình ngôn ngữ
… VHDL, Verilog, SystemC, SpecC, Java
„ Đồng bộ hóa / Ngôn ngữ tác động ngược
… Esterel Lustre Signal, , 
„ Unified Modeling Language (UML)
30Vũ Quang Dũng
Má t thái hữ h (FSM)y rạng u ạn
„ FSM là mô hình toán học của hệ thống gồm có:
„ Hệ thống có thể trong giới hạn của điều kiện được gọi là trạng thái
„ Hành vi hệ thống bên trong trang thái là sự đồng nhất tồn tại
Hệ thố ở t á t thái dà h h từ kh ả thời i hất đị h„ ng rong c c rạng n c o ng o ng g an n n
„ Hệ thống có thể thay đổi trạng thái chỉ trong giới hạn được định nghĩa trước, gọi là sụ 
chuyển đổi
„ Sự chuyển đổi là sự trả lời của hệ thống tới các sự kiện bên trong hoặc ngoài hệ thống
ể ể ổ„ Chức năng hoặc các quá trình gọi là hành động, có th xảy ra khi có sự chuy n đ i, 
trạng thái được gọi hoặc thoát khỏi trạng thái
„ Sự chuyển đổi và hành động sẽ không chiếm một khoảng thời gian nào ví dụ như quá 
trình đồng bộ hóa”
ế„ Sự kiện không được phép trong trạng thái sẽ được loại bỏ hoặc có k t quả sai
„ FSM = (Đầu vào, đầu ra, trạng thái, khởi tạo trạng thái, trạng thái tiếp theo)
„ Tương thích giữa điều kiển và các cổng điều khiển
„ Ít tương thích cho bộ nhớ và dữ liệu 
„ Dễ dàng sử dụng với các thuật toán dành cho mô hình và kiểm chứng
31Vũ Quang Dũng
FSM ổ điể c n
32Vũ Quang Dũng
Thiết kê đồng bộ máy trạng thái 
hữu hạn (CFSMs)
„ Kết hợp các mặt của một số mô hình
… FSM kết hợp với sự nắm bắt dữ liệu và kết nối không đồng bộ
„ Các thành phần FSM: I/O, trạng thái, chuyển đổi và quan hệ đầu ra
„ Thành phần dữ liệu tính toán: bên ngoài, ngay lập
„ Kết hợp 
… Đồng bộ hóa: zero và trễ vô hạn
… Không đồng bộ:non-zero, hữu hạn và biên độ trễ 
„ Hệ thống nhúng sử dụng cả đồng bộ hóa lẫn không 
đồng bộ
33Vũ Quang Dũng
Ví d CFSM ụ 
Wait*Key = On → *Start
Off
*End=5 → *Alarm = On*Key = Off or
*Belt = On →
Alarm*End=10 or
*Belt = On or
*Key = Off→
„ Trạng thái của CFSM bao gồm những sự kiện mà tại cùng thời
*Alarm = Off
điểm đầu vào và đầu ra cho no
… non-zero tương tác thời gian ngược trong lưu trữ
34Vũ Quang Dũng
Quá trình liên kết 
„ Chương trình liên tục, vòng lặp
vô hạn
… Kích hoạt song song với
nhiều quá trình
„ Các cơ chế cơ bản
… Khởi tạo và kết thúc
… Ngắt và khôi phục lại
… Liên kết
„ Quá trình liên kết
… Chia xẻ bộ nhớ
… Quan hệ loại trừ
… Trao đổi thông tin
„ Thuộc tính
… Liên tục
35Vũ Quang Dũng
… Đơn điệu
Mô hình luồng dữ liệu 
„ Chi phối các hình thức dữ liệu 
của hệ thống
„ Mô hình hóa thứ tự từng thành
phần
„ Xác định hoạt động riêng biệt của
thành phần hệ thống
ử ỏ„ S dụng cho mô ph ng, lập lịch, 
phân vùng bộ nhớ, xử lý tín hiệu
số
„ Cú pháp và ngữ nghĩa: hành
động, biểu hiện, khởi tạo
„ Phương án: luồng dữ liệu tĩnh, 
luồng dữ liệu boolean, luồng dữ
liệu động
36Vũ Quang Dũng
Đồ thị ô hì h l ồ m n u ng
Control/Data 
Flow Graph Implementation
2 3 2 ... 2 1 1 ... Reg Reg
x 4 3 2 ...
Multiplier
+D Reg Reg
4 7 9 ...
0 4 7
Adder
37Vũ Quang Dũng
...
Mô hì h hầ ứ n p n c ng
1. Mức hệ thống
2. Mức thuật toán
3. Mức các tập lệnh
4. Mức trao đổi dữ liệu thanh ghi
5 Mô hình mức cổng (Gate level). -
6. Mô hình mức chuyển đổi (Switch-level)
7. Mô hình mức mạch
8. Mô hình mức thiết bị
9. Mô hình sắp xếp
ế10. Quy trình và mô hình thi t bị
38Vũ Quang Dũng
L h ô hì hựa c ọn m n
„ Lựa chọn mô hình phụ thuộc vào:
… Chương trình
DSP„
„ Điều khiển trạng thái FSM
„ Theo dõi sự kiện
Nổi bật ủ ô hì h… c a m n
„ Trong quá trình mô phỏng
„ Trong quá trình thực hiện và code
„ Lựa chọn ngôn ngữ:
… Ngôn ngữ cơ bản thực thi mô hình
… Các công cụ hỗ trợ 
… Theo yêu cầu
39Vũ Quang Dũng
L h ô hì h (tiế )ựa c ọn m n p
„ Tích hợp mô hình và ngôn ngữ
… Quản lý theo mô hình trừu tượng
… Lựa chọn sự đúng đắn 
… Lựa chọn mô hình phụ thuộc vào
„ Các lớp ứng dụng
„ Các thao tác cần thiết (tổng hợp lập lịch ) , , ...
„ Thiết kế
Chi tiết kỹ th ật… u
… Kiến trúc liên kết và mô phỏng
… Tổng hợp, ngôn ngữ và lập lịch
ế ế ế… Thi t k chi ti t và thực thi
… Mô phỏng toàn hệ thống
40Vũ Quang Dũng

File đính kèm:

  • pdfbai_giang_he_thong_nhung_vu_quang_dung.pdf