Hình 2.3 mơ tả ý kiến này dựa trên mơ hình thƣờng sử dụng. Ở thời điểm t1, quyết định
liệu thiết bị (bộ vi điều khiển) có chuyển sang trạng thái ngủ để giảm năng lƣợng tiêu thụ từ
Pactive sang Psleep khơng? Nếu nó vẫn hoạt động và sự kiện tiếp theo xảy ra tại thời điểm tevent
thì năng lƣợng tổng Eactive = Pactive(tevent − t1) đã đƣợc sử dụng một cách vơ ích. Đặt thiết bị ở
trạng thái ngủ thì nó u cầu thời gian τdown cho đến khi đạt đƣợc trạng thái ngủ. Đơn giản hoá, giả sử rằng tiêu thụ năng lƣợng trung bình trong giai đoạn này là (Pactive + Psleep)/2. Khi
đó Psleep là năng lƣợng đƣợc tiêu thụ cho đến thời điểm tevent. Gộp lại, năng lƣợng τdown
(Pactive+Psleep)/2 + (tevent − t1 − τdown)Psleep đƣợc yêu cầu trong trạng thái ngủ, ngƣợc lại là
năng lƣợng (tevent − t1 )Pactive khi vẫn hoạt động. Do đó, sự tiết kiệm năng lƣợng ở đây là : down active sleep
saved event 1 active
event 1 down sleep
2
P P /
E t t P
t t P
(2.3)
Một khi sự kiện xảy ra:
overhead up active sleep 2
E P P / (2.4)
là năng lƣợng bổ sung để quay trở lại trạng thái hoạt động trƣớc khi sự kiện có thể xử lý, với giả thiết đơn giản về tiêu thụ năng lƣợng trung bình trong thời gian bổ sung. Năng lƣợng này là chi phí chung do khơng nhận đƣợc hoạt động hữu dụng nào trong thời gian này. Rõ ràng,
56
chuyển sang chế độngủ chỉ có lợi nếu Eoverhead < Esaved, hay tƣơng tự, nếu thời gian để sự kiện
tiếp theo xảy ra là đủ lớn :
active sleep event 1 down up active sleep 1 2 P P t t P P (2.5)
2.2.2 Năng lượng tiêu thụ của các thành phần phần cứng a. Tiêu thụ năng lượng của bộ điều khiển:
Tiêu thụ công suất cơ bản trong các trạng thái hoạt động rời rạc:
Các bộ điều khiển nhúng thƣờng thực hiện nhiều trạng thái hoạt động nhƣ đã liệt kê ở trên. Nó cũng tƣơng đối dễ điều khiển. Một số ví dụ sau là cách giải thích tốt nhất cho ý kiến này.
Intel StrongARM: The Intel StrongARM cung cấp ba chế độ ngủ:
• Ở chế độ bình thường, tất cả các phần của bộ xử lý đƣợc cấp nguồn đầy đủ. Năng lƣợng tiêu thụ lên đến 40 mw.
• Ở chế độ nghỉ, clock của CPU bị dừng, clock gắn với thiết bị ngoại vi đƣợc kích hoạt. Một số ngắt sẽ làm cho nó quay trở về chế độ bình thƣờng. Cơng suất tiêu thụ lên đến 100 mW.
• Ở chế độ ngủ, chỉ clock thời gian thực là vẫn hoạt động. Thức xảy ra sau khi bộ định thời ngắt 160 ms. Công suất tiêu thụ lên đến 50 s.
Texas Instruments MSP 430: Họ MSP430 mô tả một dải rộng các chế độ hoạt động: một chế độ hoạt động đầy đủ tiêu thụ khoảng 1,2 mW (tất cả giá trị năng lƣợng đƣợc cho ở 1 MHz và 3V). Tổng cộng có tất cả 4 chế độ ngủ. Chế độ ngủ sâu nhất, LPM4, chỉ tiêu thụ 0.3 W nhƣng bộ điều khiển chỉ thức từ các ngắt bên ngoài. Chế độ cao hơn tiếp theo, LMP3, clock vẫn chạy và có thể đƣợc sử dụng để lên lịch trình q trình thức, nó tiêu thụ năng lƣợng khoảng 6 W.
Atmel ATmega: Atmel ATmega 128L có sáu chế độ tiêu thụ năng lƣợng, về nguyên tắc cơ bản nó giống nhƣ MSP 430 nhƣng khác nhau ở một số chi tiết. Tiêu thụ công suất thay đổi trong khoảng 6 mW đến 15 mW ở các trạng thái nghỉ và thức, khoảng 75 µW ở các chế độ tắt nguồn.
Phạm viđiện áp động:
Có thể phức tạp hơn các trạng thái hoạt động rời rạc là sử dụng khái niệm liên tục của liên lạcchức năng/nguồn bằng cách thích ứng tốc độ với các hoạt động của bộ điều khiển. Ý tƣởng này chọn tốc độ tốt nhất có thể để tính tốn nhiệm vụ phải hồn thành theo các giới hạn đã cho. Một giải pháp hiển nhiên là bật bộ điều khiển ở chế độ hoạt động hồn tồn, tính tốn nhiệm vụ ở tốc độ cao nhất và quay trở về trạng thái ngủ nhanh nhất có thể.
Phƣơng pháp khác là tính toán nhiệm vụ chỉ ở tốc độ yêu cầu để kết thúc nó trƣớc thời hạn. Lý do cơ bản là bộ điều khiển chạy ở tốc độ thấp hơn thì tốc độ clock cũng thấp hơn, tiêu thụ ít năng lƣợng hơn tốc độ cực đại. Điều này là do nguồn cấp có thể giảm ở các tốc độ
57
clock thấp hơn nhƣng vẫn đảm bảo hoạt động đúng. Kỹ thuật này gọi là phạm vi điện áp động (DVS - Dynamic Voltage Scaling).
Kỹ thuật này có lợi đối với các chip CMOS: khi cơng suất tiêu thụ thực tế P tỉ lệ với bình phƣơng điện áp cung cấp VDD thì giảm điện áp là cách hiệu quả để giảm công suất tiêu thụ. Công suất tiêu thụ cũng phụ thuộc vào tần số f, do đó P f.V2DD.
Phạm vi điện áp động cũng giảm tiêu thụ năng lƣợng. Ví dụ, bộ xử lý Transmeta Crusoe có thang điện áp từ 700 MHz ở 1.65 V xuống đến 200 MHz ở 1.1 V. Công suất tiêu thụ giảm theo thừa số 700.(1.65)2/200.(1.1)2 = 7.875, nhƣng tốc độ chỉ giảm theo thừa số 700/200 = 3.5. Do đó năng lƣợng yêu cầu/lệnh giảm 3.5/7.875 44%. Các bộ xử lý và vi điều khiển khác cũng tƣơng tự nhƣ vậy. Hình 2.4 là ví dụ về StrongARM SA-1100. Lý do cuối cùng của sự cải tiến này là hình dáng lồi của hàm cơng suất theo tốc độ khi thay đổi nguồn cung cấp.