Đăng ký Đăng nhập

Tài liệu C3 realtime requirement

.PDF
38
104
85

Mô tả:

Chương 1 Hệ thống thông tin công nghiệp © 2004, HOÀNG MINH SƠN Chương 3: Vấn ₫ề thời gian thực 1/19/2006 Chương 3: Nội dung © 2004, HOÀNG MINH SƠN 1. 2. 3. 4. 5. Khái niệm “hệ thời gian thực” Xử lý thời gian thực Hệ điều hành thời gian thực Giao tiếp thời gian thực Lập trình thời gian thực Chương 3: Vấn đề thời gian thực © 2005 - HMS 2 3.1 Hệ thời gian thực là gì? “A real-time system is one in which the correctness of the system depends not only on the logical results, but also on the time at which the results are produced,...” Một hệ thời gian thực là một hệ thống mà sự hoạt ₫ộng tin cậy của nó không chỉ phụ thuộc vào sự chính xác của kết quả, mà còn phụ thuộc vào thời ₫iểm ₫ưa ra kết quả ₫ể phản ứng với sự kiện bên ngoài. Hệ thống có lỗi khi thời gian yêu cầu không ₫ược thoả mãn. © 2004, HOÀNG MINH SƠN JOHN A. STANKOVIC ET AL.: Strategic Directions in Real-Time and Embedded Systems. ACM Computing Surveys, Vol. 28, No. 4, December 1996 Thời gian thực không phải là thời gian tuyệt đối Tính năng thời gian thực không đồng nghĩa với tốc độ tính toán rất nhanh Tính năng thời gian thực = tính chính xác + tính kịp thời Chương 3: Vấn đề thời gian thực © 2005 - HMS 3 Các dạng của “tính kịp thời” Sự kiện Phản ứng Sự kiện Phản ứng T tp ts a) T Thời gian Chính xác tại ... (t = tp) Sự kiện Phản ứng © 2004, HOÀNG MINH SƠN Thời gian b) Trong khoảng ... (tp2 ≤ t ≤ tp2 ) Sự kiện Phản ứng T ts tp1 tp2 ts T tp Thời gian c) Chậm nhất là ... (t ≥ tp) Chương 3: Vấn đề thời gian thực ts tp Thời gian d) Sớm nhất là ... (t ≥ tp) © 2005 - HMS 4 HT ₫iều khiển có phải là hệ TGT? Mỗi hệ thống điều khiển là một hệ thời gian thực © 2004, HOÀNG MINH SƠN Chất lượng điều khiển không chỉ phụ thuộc vào thuật toán điều khiển, mà còn phụ thuộc vào khả năng phản ứng của hệ thống, thời điểm đọc tín hiệu đầu vào (tín hiệu đo), vào thời gian tính toán luật điều khiển và thời điểm đưa ra tín hiệu điều khiển Tính năng thời gian thực của một HTĐK phụ thuộc cả vào phần cứng và phần mềm và vào kiến trúc hệ thống ƒ Phần cứng: Tốc độ tính toán của vi xử lý, tốc độ chuyển đổi DA/AD, cơ chế vào/ra, chậm trễ trong các thiết bị ƒ Phần mềm: Thuật toán điều khiển, phương pháp lập trình, tổ chức thực hiện chương trình Tính năng TGT của một HTĐK liên quan tới tính mạng con người Phần lớn các hệ thời gian thực là các hệ thống điều khiển Chương 3: Vấn đề thời gian thực © 2005 - HMS 5 Hai dạng hệ thống TGT tiêu biểu 1. Hệ thống nhúng (Embedded Systems) — Các hệ thống điều khiển chuyên dụng, đặc chủng cho các thiết bị, máy móc đơn lẻ — Máy tính điều khiển là một phần không tách rời của thiết bị được điều khiển — Dựa trên nền vi xử lý, nhân thời gian thực, hệ điều hành thời gian thực — Ví dụ ứng dụng: công nghiệp hàng không-vũ trụ, robot công nghiệp, phương tiện giao thông, ... © 2004, HOÀNG MINH SƠN 2. Hệ thống điều khiển công nghiệp (Industrial Control Systems) — Distributed Control Systems (DCS), Programmable Logic Controllers (PLC), Soft-PLCs — Các hệ thống điều khiển phân cấp, phân tán — Ứng dụng trong CN chế biến, CN chế tạo Chương 3: Vấn đề thời gian thực © 2005 - HMS 6 Chiếc xe hơi có là một hệ TGT? © 2004, HOÀNG MINH SƠN Hơn 50 máy vi tính bên trong (μP) nối mạng Chúng ta có nên tìm hiểu nguyên lý hoạt động của chúng? Chương 3: Vấn đề thời gian thực © 2005 - HMS 7 Bus trường có phải là một hệ TGT? Controller Tc Tbus Tin © 2004, HOÀNG MINH SƠN I/O Tout Bus trường I/O Tio Tad Tsd Sensor I/O I/O Sensor Chương 3: Vấn đề thời gian thực Ts Ta Actuator Actuator © 2005 - HMS 8 © 2004, HOÀNG MINH SƠN Tính năng thời gian thực là yêu cầu chung của hầu hết các hệ thống thông tin công nghiệp! Chương 3: Vấn đề thời gian thực © 2005 - HMS 9 Đặc ₫iểm của một hệ thời gian thực © 2004, HOÀNG MINH SƠN ƒ Tính phản ứng: Hệ thống phải phản ứng với các sự kiện xuất hiện vào các thời điểm không biết trước. ƒ Tính nhanh nhạy: Hệ thống phải xử lý thông tin một cách nhanh chóng để có thể đưa ra kết quả phản ứng một cách kịp thời. ƒ Tính ₫ồng thời: Hệ thống phải có khả năng phản ứng và xử lý đồng thời nhiều sự kiện diễn ra. ƒ Tính tiền ₫ịnh: Dự đoán trước được thời gian phản ứng tiêu biểu, thời gian phản ứng chậm nhất cũng như trình tự đưa ra các phản ứng. Chương 3: Vấn đề thời gian thực © 2005 - HMS 10 3.2 Xử lý thời gian thực là gì? © 2004, HOÀNG MINH SƠN Xử lý thời gian thực là hình thức xử lý thông tin trong một hệ thống ₫ể ₫ảm bảo tính năng thời gian thực của nó. Luôn liên quan với các sự kiện bên ngoài (tính phản ứng) Yêu cầu cao về hiệu suất phần mềm (tính nhanh nhạy) Đòi hỏi xử lý ₫ồng thời nhiều tác vụ (tính ₫ồng thời) Đòi hỏi cơ sở lý thuyết chặt chẽ phục vụ phân tích và đánh giá (tính tiền ₫ịnh) Chương 3: Vấn đề thời gian thực © 2005 - HMS 11 Tại sao phải nghiên cứu về xử lý TGT? ƒ ƒ © 2004, HOÀNG MINH SƠN ƒ Xử lý thời gian thực là nguyên lý làm việc cơ bản của mỗi hệ thống điều khiển và của mỗi hệ thống thông tin công nghiệp, nhìn từ quan điểm tin học Chất lượng điều khiển và độ tin cậy của hệ thống điều khiển không chỉ phụ thuộc vào thuật toán ₫iều khiển, công nghệ phần cứng, mà còn phụ thuộc một cách tất yếu vào phương pháp xử lý thời gian thực Chúng ta còn biết quá ít về cơ chế thực hiện các chức năng phần mềm bên trong một bộ điều khiển (số) Chương 3: Vấn đề thời gian thực © 2005 - HMS 12 Các hình thức cơ bản của xử lý TGT ƒ Khả năng phản ứng đồng thời với các sự kiện bên ngoài: Xử lý đa nhiệm ƒ Đáp ứng yêu cầu về thời gian của nhiều “tác vụ”: © 2004, HOÀNG MINH SƠN — Xử lý song song — Xử lý phân tán — Xử lý cạnh tranh Chương 3: Vấn đề thời gian thực © 2005 - HMS 13 Tác vụ và xử lý ₫a nhiệm ƒ Một quá trình tính toán cho một nhiệm vụ cụ thể, có thể được thực hiện đồng thời, ví dụ: — — — — — Các Các Các Các ... tác tác tác tác vụ vụ vụ vụ xử lý giá trị vào/ra điều chỉnh điều khiển logic xử lý biến cố © 2004, HOÀNG MINH SƠN ƒ Một tác vụ là sự thi hành một chương trình hoặc một phần chương trình — Một chương trình chạy nhiều lần => nhiều tác vụ — Một đoạn mã chương trình (ví dụ một hàm) được gọi tuần hoàn với các chu kỳ khác nhau => nhiều tác vụ khác nhau ƒ Multitasking (đa nhiệm): khả năng thi hành đồng thời nhiều tác vụ Chương 3: Vấn đề thời gian thực © 2005 - HMS 14 Các trạng thái của một tác vụ ƒ ƒ DORMANT READY ƒ © 2004, HOÀNG MINH SƠN WAITING RUNNING Chương 3: Vấn đề thời gian thực ƒ Trạng thái nghỉ, chưa tồn tại (Dormant, Nonexistence): Task trong bộ nhớ nhưng hệ điều hành không quản lý. Trạng thái sẵn sàng (Ready state): Khi nó có thể được điều hoạt nhưng hiện đang có một Task khác có mức ưu tiên cao hơn đang được thực hiện. Trạng thái chạy (Running state): Khi nó đang được điều khiển bởi CPU Trạng thái đợi (Waiting state) : Khi nó đang chờ một sự kiện xảy ra để được sẵn sàng như một sự kiện vào/ra, khi tài nguyên chung có thể sử dụng hay là khi có các ngắt thời gian. © 2005 - HMS 15 Phân loại tác vụ (IEC 61131-3) Chờ tới chu kỳ Thời gian © 2004, HOÀNG MINH SƠN Mã thực thi Mã thực thi Chờ sự kiện Sự kiện Mã thực thi Tác vụ mặc định Tác vụ tuần hoàn Tác vụ sự kiện Ví dụ: - Điều khiển logic - Kiểm tra lỗi Ví dụ: - Điều chỉnh vòng kín - Xử lý truyền thông Ví dụ: - Điều khiển trình tự - Xử lý sự cố Chương 3: Vấn đề thời gian thực © 2005 - HMS 16 Các hình thức xử lý ₫ồng thời © 2004, HOÀNG MINH SƠN ƒ Xử lý song song: Các tác vụ (task) được phân chia thực hiện song song trên nhiều bộ xử lý ƒ Xử lý cạnh tranh: Nhiều tác vụ chia sẻ thời gian của một bộ xử lý. ƒ Xử lý phân tán: Mỗi (nhóm) tác vụ được thực hiện riêng trên một máy tính (trường hợp đặc biệt của xử lý song song). Xử lý cạnh tranh là hình thức quan trọng nhất trong các hệ thống điều khiển (có thể kết hợp với xử lý phân tán) Chương 3: Vấn đề thời gian thực © 2005 - HMS 17 Xử lý cạnh tranh ƒ Các vấn đề: © 2004, HOÀNG MINH SƠN — Tổ chức, lập lịch phân chia tài nguyên cho các tác vụ — Giao tiếp giữa các tác vụ — Đồng bộ hóa giữa các tác vụ Chương 3: Vấn đề thời gian thực © 2005 - HMS 18 Phương pháp lập lịch ƒ Vấn đề: — Bên cạnh hiệu năng của phần cứng máy tính, thì phương pháp lập lịch có ảnh hưởng lớn tới tính năng thời gian thực của hệ thống — Cần sự thỏa hiệp giữa tính năng thời gian thực và hiệu suất sử dụng tài nguyên máy tính © 2004, HOÀNG MINH SƠN ƒ Cơ chế lập lịch — Lập lệnh tĩnh: thứ tự thực hiện các tác vụ được xác định trước khi hệ thống đi vào hoạt động. — Lập lệnh động: thứ tự thực hiện các tác vụ được xác định trong khi hệ thống đang hoạt động. Chương 3: Vấn đề thời gian thực © 2005 - HMS 19 Phương pháp lập lịch ƒ Sách lược lập lịch — FIFO: đến trước sẽ được thực hiện trước. — Non-preemptive: không chen hàng, các tác vụ được thực hiện bình thường dựa trên mức ưu tiên của chúng. — Preemptive: chen hàng, chọn một tác vụ để thực hiện trước các tác vụ khác. — Round-robin/Time-slicing: Mỗi tác vụ có mức ưu tiên như nhau được thực hiện một số “lát thời gian” — Mức ưu tiên cố định/động: các tác vụ được đặt các mức ưu tiên cố định hoặc có thể thay đổi nếu cần. © 2004, HOÀNG MINH SƠN ƒ Thuật toán lập lịch — Rate monotonic: càng thường xuyên càng được ưu tiên. — Deadline monotonic: càng gấp càng được ưu tiên. — Least laxity: tỷ lệ thời gian tính toán/thời hạn cuối cùng (deadline) càng lớn càng được ưu tiên. Chương 3: Vấn đề thời gian thực © 2005 - HMS 20
- Xem thêm -

Tài liệu liên quan