ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƢỜNG ĐẠI HỌC CÔNG NGHỆ
VŨ VĂN PHÚC
NGHIÊN CỨU CÁC PHƢƠNG PHÁP ĐỂ GIẢM
THIỂU NĂNG LƢỢNG TRONG PHÁT TRIỂN HỆ
THỐNG NHÚNG
LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN
Hà Nội – 2014
ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƢỜNG ĐẠI HỌC CÔNG NGHỆ
VŨ VĂN PHÚC
NGHIÊN CỨU CÁC PHƢƠNG PHÁP ĐỂ GIẢM
THIỂU NĂNG LƢỢNG TRONG PHÁT TRIỂN HỆ
THỐNG NHÚNG
Ngành: Công nghệ thông tin
Chuyên ngành: Kỹ thuật phần mềm
Mã số: 60480103
LUẬN VĂN THẠC SĨ CÔNG NGHỆ THƠNG TIN
NGƢỜI HƢỚNG DẪN KHOA HỌC:
PGS.TS. NGUYỄN NGỌC BÌNH
Hà Nội – 2014
góp cho tơi những ý kiến quý báu và chia sẻ những kinh nghiệm hay cho tôi
trong mỗi buổi seminar hàng tuần.
Tôi xin được gửi lời cảm ơn đến các tác giả, nhóm tác giả của những
giáo trình, những cơng trình khoa học và những bài báo khoa học mà tôi tham
khảo để hoàn thiện luận văn này.
3
MỤC LỤC
DANH MỤC CÁC KÝ HIỆU, CHỮ VIẾT TẮT .............................. 6
DANH MỤC CÁC BẢNG ................................................................... 7
DANH MỤC CÁC HÌNH VẼ ............................................................. 7
DANH MỤC CÁC KÝ PHÁP ............................................................. 8
MỞ ĐẦU ............................................................................................... 9
CHƢƠNG 1. TỔNG QUAN .............................................................. 11
1.1 Giới thiệu về hệ thống nhúng ...................................................... 11
1.1.1 Hệ thống nhúng ............................................................................. 11
1.1.2 Phần mềm nhúng ........................................................................... 12
1.1.3 Hệ thống nhúng thời gian thực...................................................... 12
1.2 Đặc điểm khác biệt giữa phần mềm nhúng và phần mềm thông
thường.......................................................................................................... 14
1.3 Ứng dụng của hệ nhúng ................................................................... 15
1.4 Xu hướng phát triển của các hệ thống nhúng................................... 16
1.5 Những thách thức và các vấn đề còn tồn tại .................................... 16
1.6 Một số hướng tiếp cận tối ưu trong hệ thống nhúng ........................ 17
1.6.1 Tối ưu hiệu năng ........................................................................... 18
1.6.2 Tối ưu năng lượng ......................................................................... 21
1.6.3 Tối ưu kích thước .......................................................................... 21
1.6.4 Tối ưu chi phí ................................................................................ 22
CHƢƠNG 2. CÁC PHƢƠNG PHÁP GIẢM THIỂU NĂNG
2.6 Một số hướng tiếp cận tối ưu dựa trên truy xuất bộ nhớ, thanh ghi 32
2.6.1 Giảm thiểu truy cập bộ nhớ ........................................................... 32
2.6.2 Cấp phát thanh ghi bằng tô màu đồ thị ......................................... 32
2.6.3 Phân cấ p bô ̣ nhớ cache .................................................................. 33
CHƢƠNG 3. PHƢƠNG PHÁP TỐI ƢU ĐIỆN NĂNG TIÊU THỤ
CỦA HỆ THỐNG NHÚNG DỰA TRÊN KỸ NGHỆ NGƢỢC VÀ
TÁI CẤU HÌNH CPU ........................................................................ 35
3.1 Giới thiệu phương pháp.................................................................... 35
3.2 Mơ hình tối ưu và giải thích phương pháp ....................................... 36
3.2.1 Mơ hình tối ưu tổng thể ................................................................. 36
3.2.2 Giải thích phương pháp tối ưu ...................................................... 37
3.3 Triển khai phương pháp tối ưu ......................................................... 39
3.3.1 Dịch ngược mã thực thi sang hợp ngữ .......................................... 39
3.3.2 Phân tích mã ngược, hồ sơ CPU và tái cấu hình ........................... 39
CHƢƠNG 4. THỰC NGHIỆM ........................................................ 43
4.1
4.2
4.3
Cơng cụ và mơ hình thực nghiệm .................................................... 43
Bộ chương trình thực nghiệm .......................................................... 44
Quy trình thực nghiệm ..................................................................... 44
5
4.3.1 Tạo bộ chương trình thực nghiệm ................................................. 44
4.3.2 Dịch ngược từ mã thực thi sang assembly .................................... 46
4.3.3 Thực hiện chương trình tìm cấu hình tối ưu ................................. 47
4.3.4 Thực thi mô phỏng trong Sim-Wattch để ước lượng năng lượng . 47
4.4 Đánh giá kết quả thực nghiệm.......................................................... 49
Personal Computer
Máy tính cá nhân
LAN
Local Area Network
Mạng máy tính cục bộ
RR
Round-Robin
Kiến trúc xoay vòng
CPU
Central Processing Unit
Bộ vi xử lý trung tâm
ROM
Read-Only Memory
Bộ nhớ chỉ đọc
RAM
Force-Directed
For Low Power
Lập lịch cho năng lượng
thấp
PSO
Particle Swarm Optimization
Scheduling
Tối ưu bầy đàn
7
DANH MỤC CÁC BẢNG
Bảng 1 . So sánh tiêu thụ năng lượng của PXA255 ........................................ 27
Bảng 2. Tổng hợp kết quả thực nghiệm .......................................................... 50
Bảng 3. Bảng so sánh kết quả thực nghiệm với phương pháp tối ưu khác ..... 51
DANH MỤC CÁC HÌNH VẼ
Hình 1. Lập lịch danh sách để giảm thiểu năng lượng .................................... 30
Hình 2. Tổ chức ba cấp độ của bộ nhớ cache ................................................. 33
Hình 3. Mơ hình tối ưu tổng thể ...................................................................... 37
Hình 4. Chương trình phân tích và tạo cấu hình tối ưu ................................... 40
Hình 5. File hợp ngữ dịch ngược từ mã máy .................................................. 40
Hình 6. Cấu hình gốc ban đầu ......................................................................... 41
Hình 7. Cấu hình tối ưu ................................................................................... 41
Số lệnh trong một khối
Ni
Số lần lệnh i được thực thi
Ni,j
Số lần mỗi cặp được thực hiện
Ek
Năng lượng chuyển giữa các lệnh
PCPU
Điện năng tiêu thụ của CPU
Pd
Điện năng tiêu thụ động
Ps
Điện năng tiêu thụ do đoản mạch
Pl
Điện năng lãng phí
9
MỞ ĐẦU
Hệ thống nhúng như chúng ta đã biết ngày càng quan trọng hơn đối với
cuộc sống hằng ngày của chúng ta, qua số liệu thống kê cho thấy doanh
thucủa một quốc gia thông qua công nghệ phần mềm nhúng, hệ thống nhúng
chiếm một tỉ trọng lớn trong nền kinh tế quốc dân. Nhưng để đạt được điều đó
thì mỗi quốc gia cũng phải đầu tư rất lớn vào nguồn nhân lực, khoa học công
nghệ.
Bên cạnh sự phát triển mạnh mẽ của hệ thống nhúng, phần mềm nhúng
cũng gặp phải một số khó khăn thách thức như tính đặc trưng của hệ thống
nhúng về tài ngun, mơi trường, tính tương thích, …Một trong số các yếu tố
đó có yếu tố năng lượng. Việc tối ưu năng lượng trong hệ thống nhúng sẽ làm
cho hệ thống hoạt động hiệu quả hơn, giảm chi phí, thời gian sử dụng các thiết
bị nhúng dùng Pin được dài hơn,…
Trong luận văn tơi trình bày hoàn chỉnh một phương pháp tối ưu điện
năng lượng tiêu thụ làm giảm được năng lượng tốt hơn, góp phần xây dựng
thêm một phương pháp, một hướng tiếp cận mới trong tối ưu năng lượng. Cấu
trúc luận văn gồm các phần sau:
Chương 1.Tổng quan.Trong chương này , chúng tôi hệ thống hóa , giới
thiệu một số khái niệm cơ bản về hệ thống nhúng, phần mềm nhúng, xu
hướng phát triển, khó khăn và thách thức, một số hướng tiếp cận tối ưu trong
hệ thống nhúng nhằm định hướng nghiên cứu cho phù hợp.
Chương 2.Các phương pháp giảm thiểu năng lượng.Trong chương
này, chúng tơi trình bày về tổng quan các phương pháp để giảm thiểu năng
lượng, khái niệm và mục đích của việc giảm thiểu năng lượng nói chung và
của hệ thống nhúng nói riêng, tổng hợp và hệ thống hóa lại các kết quả tối ưu
năng lượng trong hệ thống nhúng thời gian gần đây.
Chương 3.Phương pháp tối ưu điện năng tiêu thụ của hệ thống
nhúng dựa trên kỹ nghệ ngược và tái cấu hình.Nội dung chương này được
mơ tả chi tiết phương pháp tối ưu điện năng, đưa ra mơ hình tổng qt, giải
thống nhúng là cốt lõi và đang làm nên làn sóng đổi mới thứ 3 [2].
Hệ thống nhúng là phần cốt lõi tạo lên các sản phẩm nhúng và các môi
trường thông minh.Theo thống kê trong [1], trên 95% phầ n mề m phát triể n
trên thế giới liên quan đế n phầ n mề m nhúng ..Các sản phẩm nhúng có hầu hết
trong đời sống xã hội từ các thiết bị giải trí đến các ứng dụng trong khoa học
kỹ thuật, công nghiệp, quân sự,…
Trên thế giới, phần mềm nhúng đã trở thành lĩnh vực then chốt của nền
kinh tế, hầu hết các nước phát triển như Mỹ, Nhật bản, Hàn quốc, Trung Quốc
đều được đầu tư và phát triển. Những quốc gia này đã thành lập nhiều viện
nghiên cứu, trung tâm nghiên cứu, nhà nước thì ban hành nhiều chính sách hỗ
trợ để phát triển hệ thống và phần mềm nhúng. Một số sản phẩm của quá trình
nghiên cứu như: Ngôi nhà thông minh, xe hơi tự lái,…
Ở Việt Nam, các hệ thống nhúng và phần mềm nhúng còn chưa được
nghiên cứu nhiều.Các sản phẩm về hệ thống nhúng và phần mềm nhúng cịn
ít.Cơng việc chủ yếu vẫn chỉ là gia cơng phần mềm cho nước ngồi. Bên cạnh
đó chúng ta cịn đối mặt một số khó khăn thử thách như để đào tạo được một
chun viên có trình độ trong mơi trường cơng nghệ cao địi hỏi mất khoảng
thời gian ít nhất là 6 tháng đến 1 năm, để có được một sản phẩm nhúng đúng
nghĩa địi hỏi phải có kiến thức cơ bản, chuyên sâu, giao tiếp chặt chẽ được
với khác hàng,... Như vậy, để chúng ta có thể phát triển được lĩnh vực nhúng
ở Việt Nam cần định hướng chiến lược và đầu tư hợp lý, đào tạo cơ bản và
chuyên sâu, đẩy mạnh nghiên cứu và phát triển cho ngành hệ thống nhúng
ngay từ các trường và các trung tâm, viện nghiên cứu.
1.1.1 Hệ thống nhúng
Hệ thống nhúng (Embedded system) là một hệ thống tính toán có khả
năng tự trị được nhúng vào trong một mơi trường hay một hệ thống lớn hơn .
Đó là các hệ thống tích hợp cả phần cứng và phần mềm phục vụ các bài toán
12
Hệ thống thời gian thực: là hệ thống phải đáp ứng công việc trong một
giới hạn thời gian nào đó, việc vượt quá thời gian có thể gây ra hậu quả
nghiêm trọng hoặc kết quả cơng việc khơng có ý nghĩa. Do đó tính đúng đắn
13
của tồn bộ hệ thống phụ thuộc cả vào tính đúng đắn về chức năng và tính
đúng đắn về thời gian.
Ở dạng đơn giản, các hệ thống thời gian thực có thể được định nghĩa là
hệ thống đáp ứng các sự kiện bên ngoài trong một khoảng thời gian nào đó, và
thời gian đáp ứng phải được đảm bảo.
Các sự kiện bên ngồi có thể là sự kiện đồng thời hoặc không đồng
thời. Việc đáp ứng các sự kiện bên ngoài bao gồm: phát hiện sự kiện, xử lý sự
kiện và đưa ra các kết quả cần thiết trong một ràng buộc thời gian cho trước.
Các ràng buộc thời gian bao gồm thời gian kết thúc hoặc cả thời gian bắt đầu
và kết thúc.
Hệ thời gian thực còn được gọi là hệ thống xác định bởi vì thời gian
đáp ứng cho một sự kiện được giới hạn.Các tác vụ đáp ứng cho sự kiện còn
được gắn với một độ ưu tiên cho trước.Hơn nữa, hệ thống thời gian thực có
khả năng khả chuyển kém khi thay đổi môi trường.
Phân loại hệ thống thời gian thực [29]:
Trong hệ thời gian thực, mọi cơng việc tính tốn đều phải hồn thành
trước thời gian cho phép (deadline), xác định và nhỏ nhất có thể chấp nhận
được gọi là deadline. Nói cách khác, hệ thống thời gian thực bị ràng buộc về
thời gian và được điều khiển bởi các deadline. Về mặt này, hệ thời gian thực
có thể được chia thành hệ thời gian thực mềm và hệ thời gian thực cứng.
Hệ thống thời gian thực cứng: chỉ cho phép chênh lệch với deadline
trong một mức độ dao động gần như bằng không. Nếu khơng hồn
thành đúng so với deadline thảm họa có thể xảy ra và khơng cịn cách
nào có thể khơi phục được hệ thống, trong trường hợp đó có nghĩa là
Hệ thống nhúng được thiết kế cho các tác vụ đặc biệt, trong khi các
máy tính là các nền tảng tính tốn và xử lý chung. Một số phần mềm
nhúng đơn giản được lập trình chỉ để thực hiện một vài tác vụ. Thay đổi
các tác vụ có thể đòi hỏi phải thiết kế lại hệ thống và thay đổi toàn bộ
hệ thống.
Hệ thống nhúng được hỗ trợ bởi một số lượng lớn các vi xử lý và kiến
trúc vi xử lý.
Hệ thống nhúng thường được cân nhắc cùng với chi phí phát triển.
Các hệ thống nhúng được thiết kế cùng với phần cứng được chỉ định
sẵn. Chính vì thế, tính năng của hệ thống ln được cân nhắc cùng với
chi phí phát triển. Ngồi ra, với một số tác vụ cần phải có những phần
cứng chuyên biệt.
Hệ thống nhúng yêu cầu khả năng đáp ứng nhanh và phần nhiều có các
ràng buộc thời gian thực.
Nếu hệ thống nhúng sử dụng hệ điều hành, thì hầu như nó phải sử dụng
hệ điều hành thời gian thực. Giống như vi xử lý nhúng, hệ điều hành
15
nhúng cũng có rất nhiều và có cách quản lý khác nhau. Tuy nhiên, mục
tiêu quan trọng là nó phải giải quyết các vấn đề khắt khe về mặt thời
gian và chia sẻ tài nguyên.
Khó khăn khi xử lý lỗi phần mềm nhúng: Với phần mềm nhúng, việc
dò lỗi chương trình thường thơng qua các bộ mơ phỏng thiết bị.
Hệ thống nhúng có ràng buộc về điện năng: Với nhiều hệ thống nhúng,
vấn đề năng lượng được coi là quan trọng hàng đầu. Phương pháp đầu
tiên để duy trì năng lượng là tắt bớt các phần hoặc cả hệ thống khi có
thể tắt được. Có thể là cả vi xử lý. Hầu hết các vi xử lý cho hệ thống
nhúng, có ít nhất một kiểu tiết kiệm năng lượng. Phần mềm thường đặt
vi xử lý trong những chế độ này với các chỉ thị đặc biệt hoặc ghi một
Xu hƣớng phát triển của các hệ thống nhúng
Sau máy tính lớn (mainframe), PC và Internet thì hệ thống nhúng đang
là làn sóng đổi mới thứ 3 trong công nghệ thông tin và truyền thông [2].
Xu hướng phát triển của các hệ thống nhúng hiện nay là:
Phần mềm ngày càng chiếm tỷ trọng cao và đã trở thành một thành
phần cấu tạo nên thiết bị bình đẳng như các phần cơ khí, linh kiện điện
tử, linh kiện quang học….
Các hệ nhúng ngày càng phức tạp hơn đáp ứng các yêu cầu khắt khe về
thời gian thực, tiêu tốn ít năng lượng và hoạt động tin cậy ổn định hơn.
Các hệ nhúng ngày càng có độ mềm dẻo cao đáp ứng các yêu cầu
nhanh chóng đưa sản phẩm ra thị trường, có khả năng bảo trì từ xa, có
tính cá nhân cao.
Các hệ nhúng ngày càng có khả năng hội thoại cao, có khả năng kết nối
mạng và hội thoại được với các đầu đo cơ cấu chấp hành và với người
sử dụng.
Các hệ nhúng ngày càng có tính thích nghi, tự tổ chức cao có khả năng
tái cấu hình như một thực thể, một tác nhân.
Các hệ nhúng ngày càng có khả năng tiếp nhận năng lượng từ nhiều
nguồn khác nhau (ánh sáng, rung động, điện từ trường, sinh học….) để
tạo nên các hệ thống tự tiếp nhận năng lượng trong quá trình hoạt động.
1.5
Những thách thức và các vấn đề còn tồn tại
Hệ thống nhúng hiện đại còn phải đối mặt với các vấn đề sau [2]:
Độ phức tạp của sự liên kết đa ngành phối hợp cứng – mềm.
Độ phức tạp của hệ thống tăng cao do nó có kết hợp nhiều lĩnh vực đa
ngành, kết hợp phần cứng – phần mềm, trong khi các phương pháp thiết
kế và kiểm tra chưa chín muồi. Khoảng cách giữa lý thuyết và thực
hệ thống trong biên dịch, kiến trúc. Phần nhiều các kỹ thuật này, với một số
phạm vi áp dụng cụ thể đã không khai thác đầy đủ các khả năng tối ưu trong
thiết kế hệ thống nhúng. Từ quan điểm ứng dụng, hệ thống nhúng là các hệ
thống chuyên biệt, tuân theo các kỹ thuật tối ưu để có thể sử dụng các tri thức
của ứng dụng. Trái lại nhiều phương pháp tối ưu phần cứng, phần mềm truyền
thống liên quan đến bộ nhớ phải thay đổi cho phù hợp vì tối ưu bộ nhớ ứng
dụng mục đích chung cần phù hợp với các hồ sơ của mã nguồn và dữ liệu.
Tiếp đến là góc nhìn kiến trúc, người thiết kế hệ thống nhúng cần chú ý đến
nhiều đến việc tùy biến các hệ thống con bộ nhớ (cả on-chip cũng như offchip), điều này dẫn đến nhiều cách tổ chức bộ nhớ khác truyền thống.Với mỗi
phân cấp bộ nhớ ẩn (cache) có thể có một hoặc nhiều lựa chọn kiến trúc bộ
nhớ. Cuối cùng, từ góc nhìn ràng buộc, người thiết kế hệ thống nhúng cần
18
đảm bảo không chỉ về mục tiêu hiệu năng mà cịn về chi phí năng lượng, ràng
buộc thời gian thực. Hiệu năng hệ thống cần được xem xét không chỉ do tốc
độ CPU mà còn do việc nạp bus (đường truyền hệ thống) đến các đơn vị lưu
trữ mức mạch như bộ nhớ chính, ổ đĩa ngồi. Thậm chí cần xét cả bộ nhớ ẩn
L2 trong ngữ cảnh đa CPU. Nói tóm lại, bộ nhớ và hệ thống bus là nguyên
nhân dẫn đến chi phí chung của hệ thống tổng thể. Và do đó, người thiết kế hệ
thống cần cố gắng tối giản các yêu cầu bộ nhớ với mục đích giảm chi phí tổng
thể của hệ thống.
1.6.1 Tối ưu hiệu năng
Tối ưu hiệu năng bao hàm nhiều lĩnh vực và có ý nghĩa khác
nhau.Trong phát triển phần cứng có thể gồm tốc độ xử lý của CPU, tốc độ
truy xuất bộ nhớ. Trong phần mềm, hiệu năng có thể gồm: thời gian thực thi
ứng dụng, thời gian phân tích lỗi, thời gian biên dịch, …Ví dụ như trong các
hệ thống nhúng mức cao như ứng dụng Mobile trong môi trường phân tán,
thời gian thực thi ứng dụng bao gồm thời gian xử lý tại các nút tính tốn và
thời gian truyền dữ liệu trong mạng. Khi kích thước dữ liệu truyền thông lớn,
nhớ trong vùng ngăn xếp và được thu hồi khi hàm kết thúc. Ngược
lại, các biến toàn cục sẽ được cấp phát bộ nhớ ngay từ khi chương
trình được nạp vào bộ nhớ. Do đó việc sử dụng các biến toàn cục
thay thế cho các biến cục bộ cũng làm giảm thời gian thực thi của
chương trình. Tuy nhiên khi sử dụng các biến tồn cục có thể phá vỡ
tính mơ-đun của chương trình và có thể khơng đảm bảo toàn vẹn dữ
liệu khi nhiều hàm cùng sử dụng biến tồn cục.
Thay thế vịng lặp: Trong nhiều trường hợp, các cấu trúc lặp có thể
được thay thế bằng các câu lệnh tuần tự cũng làm giảm thời gian
thực thi vì loại bỏ được thời gian quay lui của con trỏ lệnh, tiết kiệm
được thời gian kiểm tra điều kiện dừng và thời gian thay đổi giá trị
biến lặp.
Khử đệ quy: Việc sử dụng đệ quy trong chương trình làm việc biểu
diễn thuật tốn và tổ chức chương trình tốt hơn nhưng lại làm mất
nhiều thời gian chuyển điều khiển chương trình (overhead). Bản
chất của đệ quy là quá trình gọi chương trình con nhiều lần nên việc
khử đệ quy cũng là một giải pháp tốt để cải tiến hiệu năng chương
trình.
Hạn chế các phép tốn dấu chấm động: Nếu CPU khơng hỗ trợ phép
tốn trên so thực dấu chấm động, việc sử dụng các phép tốn dấu
chấm động trong chương trình sẽ làm thời gian xử lý tăng đáng kể
do phải thực hiện một tập các chương trình con xử lý dấu chấm
động. Do đó, nếu chỉ có một số ít phép tốn trên số thực dấu chấm
động, nên biểu diễn lại và dưa về phép toán trên số nguyên.
20
Thay thế các phép nhân/chia bằng các phép dịch: Việc sử dụng các
phép nhân/chia cũng chậm hơn các phép dịch. Do đó, để cải tiến tốc
độ, các phép nhân/chia có thể được chuyển về các phép dịch trái,
21
được ghi cứng trên ROM. Kỹ thuật này có tác dụng khi sử dụng nhiều
dữ liệu hằng dạng chuỗi, bảng trong thời gian thực thi. Trong trường
hợp dữ liệu không thay đổi khi thực thi chương trình nhưng khơng cần
thiết phải là hằng, các đoạn dữ liệu hằng có thể được đặt vào bộ nhớ lai
như flash, EFROM.
1.6.2 Tối ưu năng lượng
Như đã trình bày ở trên các hệ thống nhúng có hầu hết trong các lĩnh
vực trong đời sống xã hội.Đặc biết nhiều hệ thống nhúng là các hệ thống di
động dùng năng lượng Pin. Trong khi đó cơng nghệ Pin thì tiến bộ rất chậm,
hay nói cách khác các nghiên cứu nâng cao năng lượng và chất lượng Pin rõ
ràng là chưa theo kịp được với những yêu cầu tính tốn tăng với tốc độ cao,
đặc biệt đối với các ứng dụng âm thanh, đồ họa, và khách hàng muốn có Pin
chạy lâu hơn. Do đó năng lượng phải được sử dụng một cách hiệu quả. Xuất
phát từ thực tế nhu cầu về năng lượng, đã có một số lượng đáng kể nghiên cứu
về giảm thiểu năng lượng theo các hướng khác nhau. Có những nghiên cứu tối
ưu dựa trên phần mềm, chẳng hạn tronggiai đoạn thiết kế áp dụng một số
phương pháp thiết kế như: phương pháp tối ưu dựa trên mô phỏng, phương
pháp tối ưu dựa trên đánh giá trực tiếp, phương pháp tối ưu dựa trên SPE
(Software Performance Engineering). Một số nghiên cứu dựa trên cấu hình tối
ưu phần cứng, theo hướng tối ưu này có một số phương pháp tối ưu được đưa
ra như: tối ưu bộ nhớ ROM, tối ưu bộ nhớ RAM, tối ưu bộ nhớ cache, tối ưu
số thanh ghi cho CPU,…
1.6.3 Tối ưu kích thước
Như chúng ta đã biết, các hệ thống nhúng có kích thước nhỏ và được
thiết kế trong mơi trường cơng nghiệp.Tối ưu kích thước ở đây bao gồm cả tối
ưu kích thước phần mềm, tối ưu cả kích thước phần cứng. Tối ưu kích thước
phần mềm có thể sử dụng một số kỹ thuật như tối ưu mã, tối ưu bằng việc
Chƣơng 2.CÁC PHƢƠNG PHÁP GIẢM THIỂU NĂNG LƢỢNG
TRONG HỆ THỐNG NHÚNG
Trong kỹ thuật hệ thống nhúng, việc tối ưu hóa là một việc hết sức quan
trọng. Bởi vì, hệ thống nhúng thường bị hạn chế bởi một số giới hạn về tài
nguyên như: kích thước bộ nhớ, tốc độ xử lý, tiêu thụ điện năng,…Từ đó, việc
tối ưu sẽ làm cho các hệ thống hoạt động hiệu quả hơn. Trong các hoạt động
tối ưu cho hệ thống nhúng nói chung thì tối ưu năng lượng là một vấn đề quan
trọng, đặc biệt cho các hệ thống có sử dụng Pin. Vì hầu hết các thiết bị nhúng
di động đều sử dụng Pin và bên cạnh nhu cầu sử dụng của các thiết bị nhằm
hỗ trợ chất lượng cuộc sống ngày càng phát triển.Vấn đề tối ưu trở thành một
thách thức đối với các nhà thiết kế, các nhà sản xuất.Họ phải liên tục nâng cao
chất lượng sản phẩm nhằm đáp ứng được các đòi hỏi của người sử dụng và
tiêu thụ năng lượng thấp là một nhu cầu cần thiết.
Có rất nhiều cách người ta sử dụng để tối ưu năng lượng cho hệ thống
nhúng.Như đưa ra phần mềm quản lý tiêu thụ năng lượng, hay lập lịch tiêu
thụ năng lượng cho hệ thống.
2.1
Khái niệm về giảm thiểu năng lƣợng
Giảm thiểu năng lượng: là cách thức duy trì vận hành hệ thống tốt bằng
một mức năng lượng thấp nhất có thể.
Ngày nay, việc sử dụng năng lượng và tiết kiệm năng lượng trở lên vô
cùng quan trọng và cấp thiết nó ảnh hưởng đến mọi mặt của đời sống xã hội,
trở thành vấn đề sống còn của nhiều quốc gia trên thế giới.Trong tất cả các
lĩnh vực của đời sống xã hội, việc tiết kiệm năng lượng phải được sử dụng và
xử lý một cách khoa học, bài bản. Việc tiết kiệm phải đi kèm, kết hợp với các
biện pháp khác như truyền thơng, tun truyền qua truyền hình, báo trí, giáo
dục,... Trong hệ thống nhúng, do đặc thù riêng của hệ thống nhúng là một hệ