Giải đề thi môn nhúng ptit
1.1 Khái niệm hệ thống nhúng
-Đ nh nghĩa t ng quát: h th ng nhúng là m t thu t ng đ ch m t h th ng có khị ổ ệ ố ộ ậ ữ ể ỉ ộ ệ ố ảnăng ho t đ ng t tr đạ ộ ự ị ược nhúng vào trong môi trường hay m t h th ng khác quyộ ệ ố
mô ph c t p h n Đó là các h th ng tích h p c các ph n c ng(là m t h th ngứ ạ ơ ệ ố ợ ả ầ ứ ộ ệ ốmáy tính xây d ng trên c s s d ng vi x lý- microprocessor-based sytem) và ph nự ơ ở ử ụ ử ầ
m m nhúng trong ph n c ng đó đ th c hi n các bài toán chuyên bi tề ầ ứ ể ự ệ ệ
-Đ nh nghĩa theo t ch c IEEE: h th ng nhúng là m t h th ng tính toán(máy tínhị ổ ứ ệ ố ộ ệ ố
s )n m trong (hay đố ằ ược nhúng vào) s n ph m khác l n h n và r ng thông thả ẩ ớ ơ ằ ường
n đ i v i ng i s d ng Nói r ng ra và đ n gi n h n, khi m t h th ng tính
toán( có th là PC, IPC, PCL, vi x lý, vi h th ng( microcontroller), DSP….) để ử ệ ố ượcnhúng vào trong m t s n ph m hay m t h th ng nào đó và th c hi n m t s ch cộ ả ẩ ộ ệ ố ự ệ ộ ố ứnăng c th c a h th ng đó thì ta g i h th ng tính toán đó là h th ng nhúng.ụ ể ủ ệ ố ọ ệ ố ệ ố
1.2 HT nào là h th ng nhúng (A,B,D,E)ệ ố
A Các h th ng y t ệ ố ế
B Các h th ng đi u khi n quy trình công nghi p.ệ ố ề ể ệ
C Các thi t b truy n thông kỹ thu t s ế ị ề ậ ố
D Các h th ng có đ tin c y cao và r t cao.ệ ố ộ ậ ấ
1.3 Nêu tên m t s lĩnh v c đ i s ng và công nghi p trong đó có s d ng ngộ ố ự ờ ố ệ ử ụ ư
d ng c a h th ng nhúng K tên thi t b nhúng đụ ủ ệ ố ể ế ị ượ ử ục s d ng:
Ô tô: Đánh l a đi n t , đi u khi n đ ng c , h th ng phanh,ử ệ ử ề ể ộ ơ ệ ố
Y t : Máy th m tách, máy pha- l c, máy tr timế ẩ ọ ợ
M ng thông tin (WAN, LAN, tho i): B đ nh tuy n, gateway, chuy n m ch m ngạ ạ ộ ị ế ể ạ ạ1.4 HTN mà một máy tính đa năng hay máy tính chuyên dụng ?
A H th ng nhúng là máy tính chuyên d ng, dùng cho ng d ng đ c bi tệ ố ụ ứ ụ ặ ệ
Trang 2Các h nhúng thệ ường ph i ho t đ ng trong môi trả ạ ộ ường kh c nghi t nh côngắ ệ ưnghi p, quân đ i, nó c n có đ nóng m, nhi t đ cao, rung, m th p,ệ ộ ầ ộ ẩ ệ ộ ẩ ấ đ rung đ ngộ ộ
l n, nhi u sóng đi n t ớ ễ ệ ừ
M t s ví d đi n hình v h th ng nhúng các h th ng độ ố ụ ể ề ệ ố ệ ố ường d n trong không l u,ẫ ư
h th ng đ nh v toàn c u, v tinh Các thi t b gia d ngệ ố ị ị ầ ệ ế ị ụ : t l nh, lò vi sóng, lòủ ạ
nướng…môi trường nhi t đ cao, đ m l n, đ rung l n.ệ ộ ộ ẩ ớ ộ ớ
2.2 Tại sao nói hầu hết các hệ thống nhúng hoạt động với sự ràng buộc
về thời gian ?
-Ph n l n các h th ng nhúng ho t đ ng v i s ràng bu c th i gian: yêu c u có th iầ ớ ệ ố ạ ộ ớ ự ộ ờ ầ ờgian cho (đáp ng) đ u ra nhanh, đúng th i đi m, trong m i tứ ầ ờ ể ố ương quan v i th iớ ờ
đi m xu t hi n c a (s ki n) đ u vào.ể ấ ệ ủ ự ệ ầ
-H th ng nhúng có kh năng đáp ng v i s ki n bên ngoài (t các tác nhân bệ ố ả ứ ớ ự ệ ừ ị
ki m soát) nhanh nh y, k p th i, t c là kh năng theo th i gian th c: ể ạ ị ờ ứ ả ờ ự
+Các tác v có đáp ng ràng bu c b i th i h n chót (deadline) ụ ứ ộ ở ờ ạ
+Th i gian phát hi n l i ph i r t ng n (t i thi u); ờ ệ ỗ ả ấ ắ ố ể
+Khi ch y các chu trình vòng l p đi u khi n b ng ph n m m ph i có đáp ng đ uạ ặ ề ể ằ ầ ề ả ứ ầ
ra đúng th i h n; ờ ạ
2.3 a Nêu các kiểu hoạt động cơ bản của hệ thống nhúng:
-H thông minhệ
-Ho t đ ng đ c l p: nh n đ u vào t các tác nhân b đi u khi n, x lý và cho đ u ạ ộ ộ ậ ậ ầ ừ ị ề ể ử ầ
ra Th i gian có đ u ra (đáp ng) ph i trong m t khung th i gian nh t đ nh theo ý ờ ầ ứ ả ộ ờ ấ ị
a.Bus c a CPU bao g mủ ồ : Bus đ a ch , Bus d li u, Bus đi u khi nị ỉ ữ ệ ề ể
-Bus đ a chị ỉ : Trong quá trình ho t đ ng, CPU đi u khi n bus đ a ch t i nh ng v tríạ ộ ề ể ị ỉ ớ ữ ị
được chuy n giao t bên ngoài ho c t CPU Đ a ch đây là v trí b nh ho c v tríể ừ ặ ừ ị ỉ ở ị ộ ớ ặ ịvào/ra.xd
Trang 3-Bus d li u: đữ ệ ược CPU đi u khi n trong suôt chu kỳ ghi d li u và đề ể ữ ệ ược các thi t bế ịkhác đi u khi n trong su t chu kỳ đ c, v n chuy n l nh và d li u bên trong vàề ể ố ọ ậ ể ệ ữ ệngoài CPU
-Bus đi u khi n: đề ể ược đi u khi n b i CPU Bus đi u khi n quy t đ nh lo i c a chuề ể ở ề ể ế ị ạ ủ
kỳ nào di n ra và khi nào d li u sẽ đễ ữ ệ ược đ a lên bus.ư
b BUS HT = BUS CPU + mạnh hỗ trợ mở rộng của BUS CPU: tách tín hiệu dồn kênh, khuyếch đại, tạo các tin hiệu điều khiển riêng biệt
2.5: Hệ thống nhúng tướng tác với môi trường vật lí như thế nào,
phương tiện, công cụ gì ? Nêu một số ví dụ ?
H th ng nhúng tệ ố ương tác v i môi trớ ường v t lý qua nhi u phậ ề ương th cứ :
- Qua các b c m bi n (sensor), ghép n i vào h th ng nhúng b ng dây d n, hayộ ả ế ố ệ ố ằ ẫkhông dây
- Thông qua các b chuy n đ i tín hi u ADC, DACộ ể ổ ệ
-Thông qua ghép n i, h p chu n d li uố ợ ẩ ữ ệ
b M t s ví dộ ố ụ :
Phương ti n, công cệ ụ :-Phương ti n đ tệ ể ương tác v i môi trớ ường v t lýậ : chuy n đ iể ổtín hi uệ : tương t -s ADC, s -tự ố ố ương t DAC.ự
- Công c đ tụ ể ương tác v i môi trớ ường v t lýậ : ghép n i và h p chu n tín hi u.ố ợ ẩ ệ
Các m ch ghép n i vào/ra là các m ch đi n t cho phép CPU trao đ i d li u v i cácạ ố ạ ệ ử ổ ữ ệ ớthi t b ngo i vi nh bàn phím, màn hình, máy in….ế ị ạ ư
2.6: Cho một mô hình qui trình điều khiển công nghệ có ứng dụng hệthống nhúng như hình sau :Khoanh vùng cho biết hệ thống nhúng làphần nào ?
Vùng N a trên c a hình vẽ \ử ủ
Các thành ph n h p thành c a h th ng nhúngầ ợ ủ ệ ố : ph n c ng, ph n m m, RTOS(Realầ ứ ầ ềTime Operating System)
2.7 :Đ xây d ng m t ki n trúc cho m t h th ng nhúng, ph i tuân th 6ể ự ộ ế ộ ệ ố ả ủ
b ướ ơ ả c c b n Các b ướ c đó là các b ướ c nào ?
Nêu các pha trong quá trình thi t k m t h th ng nhúng ế ế ộ ệ ố ?
Tr l iả ờ :
6 bướ ơ ảc c b n đ xây d ng m t ki n trúc cho m t h th ng nhúng g mể ự ộ ế ộ ệ ố ồ :
-C n ki n th c t t v ph n c ng (thi t k logic, ki n trúc máy tính, ki n trúc CPU,ầ ế ứ ố ề ầ ứ ế ế ế ếngo i vi, h đi u hành…) ạ ệ ề
-Th trị ường: C n nh n ra các yêu c u c a th trầ ậ ầ ủ ị ường có tác đ ng vào quy trình thi tộ ế
k , bao g mế ồ : kỹ thu t, xu hậ ướng thương m i, nh hạ ả ưởng c a chính tr , xã h i.ủ ị ộ
Trang 4-M u h th ng là m t m u mô t c a h th ng, ch a đ ng các đ c t khác nhau vẫ ệ ố ộ ẫ ả ủ ệ ố ứ ự ặ ả ềcác thành ph n ph n c ng và ph n m m, ch c năng, các liên k t, giao ti pầ ầ ứ ầ ề ứ ế ế
-Các c u trúc: Đây là bấ ướ ạc t o ra ki n trúc c a HTN Ki n trúc HTN sẽ đế ủ ế ược hìnhthành b ng cách phân đ nh toàn b HTN thành các thành ph n ph n c ng, ph nằ ị ộ ầ ầ ứ ầ
m m, sau đó các thành ph n đó l i đề ầ ạ ược phân đ nh đ n chi ti t.ị ế ế
-Phân tích và đánh giá ki n trúc: ki n trúc có đ t các yêu c u, các ki n trúc khácế ế ạ ầ ếnhau v i yêu c u có cùng ch t lớ ầ ấ ượng nh nhau, đánh giá xu hư ướng r i ro h th ng,ủ ệ ố
2.8 :Th nào là phân ho ch ph n c ng và ph n m m khi thi t k m t hế ạ ầ ứ ầ ề ế ế ộ ệ
th ng nhúng ố ?Th nào là qui trình đ ng thi t k ph n c ng và ph n m m và ế ồ ế ế ầ ứ ầ ề
đ ng ki m nghi m ồ ể ệ ?
Tr l iả ờ :
a.Phân ho ch ph n c ng và ph n m m khi thi t k m t HTNạ ầ ứ ầ ề ế ế ộ :
Là đ c t , n đ nh ch c năng cho ph n c ng và ph n m m, sau đó đi thi t k , môặ ả ấ ị ứ ầ ứ ầ ề ế ế
ph ng và h p nh t.ỏ ợ ấ
b.Qui trình đ ng thi t k ph n c ng và ph n m m và đ ng ki m nghi mồ ế ế ầ ứ ầ ề ồ ể ệ :
Trong kĩ thu t này, thi t k ph n c ng và ph n m m đậ ế ế ầ ứ ầ ề ược ti n hành song song, cácế
ph n h i-hi u ch nh th c hi n liên t c, cho t i khi có k t qu t t nh t qua đ ngả ồ ệ ỉ ự ệ ụ ớ ế ả ố ấ ồ
ki m nghi m Ph n c ngs và ph n m m để ệ ầ ư ầ ề ược ch y cùng nhau trên các máy o.ạ ả
ph n c ng b ng VHDL -> máy o, ph n m m trên máy o -> hi u ch nh liên t c ->ầ ứ ằ ả ầ ề ả ệ ỉ ụmáy đích
2.9:Hãy đặc tả các tác vụ khi thực hiện khởi động hệ thống nguội (coldboot) và khởi động nóng (warm boot)?Hãy cho ví dụ về cách khởi độngvới một loại CPU tự chọn?
Tr l i:ả ờ
Các tác v khi th c hi n kh i đ ng h th ng:ụ ự ệ ở ộ ệ ố
Kh i đ ng ngu i (cold boot): B t ngu n (kh i đ ng ph n c ng), đ a các vi m ch,ở ộ ộ ậ ồ ở ộ ầ ứ ư ạphân vùng b nh , không gian đ a ch …vào tr ng thái ban đ u Sau h t chộ ớ ị ỉ ạ ầ ế ương trình
n p h th ng (boot loader) “nh y” t i đ a ch RESTART hay START c a ph n m mạ ệ ố ả ớ ị ỉ ủ ầ ề
h th ng đ chuy n đi u khi n cho nó.ệ ố ể ể ề ể
• Kh i đ ng nóng (waerm boot): CTRL + DEL, b qua m t s test ph n c ng.ở ộ ỏ ộ ố ầ ứ
1 Ví d v cách kh i đ ng v i m t lo i CPU t ch n:ụ ề ở ộ ớ ộ ạ ự ọ
Trang 5Intel CPU 8085: RESET IP = 0x0000 là đ a ch c a EPROM: kh i đ ng ch đ n i v iị ỉ ủ ở ộ ế ộ ố ớConsole (Keyboard), sau đó nh y v chả ề ương trình kh i đ ng h : JMP CLDST (kh iở ộ ệ ở
đ ng ngu i) đ a ch 0x01F1 ộ ộ ở ị ỉ
2.10:Khi thi t k HTN c n xây d ng m t mô hình chính t c (formal model) v iế ế ầ ự ộ ắ ớ các yêu c u đ t ra V y các yêu c u đó là nh ng yêu c u gì? ầ ặ ậ ầ ữ ầ
Tr l i:ả ờ
Xây d ng m t mô hình chính t c c a h th ng v i các yêu c u sau đây:ự ộ ắ ủ ệ ố ớ ầ
-Xác đ nh ch c năng: xây d ng t p các m i quan h tị ứ ự ậ ố ệ ường minh hay không tườngminh liên quan t i đ u vào/đ u ra và thông tin tr ng thái bên trong c a h th ng.ớ ầ ầ ạ ủ ệ ố-Xây d ng t p các thu c tính mà thi t k sẽ ph i th a mãn K t h p các thu c tínhự ậ ộ ế ế ả ỏ ế ợ ộ
và t p các quan h vào/ra, tr ng thái h th ng, xác đ nh l i các ch c năng h th ng.ậ ệ ạ ệ ố ị ạ ứ ệ ố-Xây d ng t p các ch s hi u năng đ đánh giá thi t k theo các tiêu chí: giá thành,ự ậ ỉ ố ệ ể ế ếnăng lượng, đ tin c y, t c đ x lý, kích thộ ậ ố ộ ử ước…
-Xây d ng t p các khác bi t coi đó nh nh ng thách th c c a thi t k , đ ra gi iự ậ ệ ư ữ ứ ủ ế ế ề ảpháp gi i quy t.ả ế
-Th c hi n tinh l c thi t k đ có thi t k t ý tự ệ ọ ế ế ể ế ế ừ ưởng đ n mô hình.ế
Xây d ng mô hình hình th c: bự ứ ước sàng l c s d ng cách t ng h p ph n c ng vàọ ử ụ ổ ợ ầ ứ
ph n m m đ chuy n hóa xác đ nh ch c năng vào mô hình ph n c ng c a thi t kầ ề ể ể ị ứ ầ ứ ủ ế ế
được th hi n trong hình dể ệ ưới đây Ko đc b hình vẽ ỏ
3.1 Nêu các thách th c ph i đ i m t khi thi t k m t h th ng nhúng ứ ả ố ặ ế ế ộ ệ ố ?
-Kh năng đáp ng v i các s ki n bên ngoài ph i nhanh nh y, k p th i, t c là khả ứ ớ ự ệ ả ạ ị ờ ứ ảnăng theo th i gian th c.ờ ự
Trang 6-Có kh năng làm vi c môi trả ệ ở ường kh c nghi t.ắ ệ
-Có giá thành th p hay hi u qu ho t đ ng, giá thành h p lý.ấ ệ ả ạ ộ ợ
-Kích thước nh g n, nh , d dàng d v n chuy n, l p đ t.ỏ ọ ẹ ễ ễ ậ ể ắ ặ
-Tiêu th năng lụ ượng th p, kh năng s d ng ngu n pin, c quy.ấ ả ử ụ ồ ắ
-Ho t đ ng tin c y, ch u l i caoạ ộ ậ ị ỗ
-Tin c yậ : đáp ng các d ch v yêu c u đúng th i h n sau th i gian t tứ ị ụ ầ ờ ạ ờ ừ 0->t
Ho t đ ng có liên k t v i nhau gi a các HTN và các trung tâm ki m soát khác ạ ộ ế ớ ữ ể Lo iạnày g i là HTN m ng.ọ ạ
• Lĩnh v c ng d ngự ứ ụ
Công c tính toán nh các máy tính nh ng ch đ ch y các bài toán nh t đ nh.ụ ư ư ỉ ể ạ ấ ị
X lý tín hi u: các thi t b video th i gian th c, DVD player, thi t b y t …ử ệ ế ị ờ ự ế ị ế
Truy n thông, m ng: thi t b m ng nh router, switchề ạ ế ị ạ ư
H th ng đi u khi n và thu th p d li u.ệ ố ề ể ậ ữ ệ
• Ki n trúc và quy môế
HTN quy mô nh v i các xác đ nh nh sauỏ ớ ị ư :
Ph n c ng ít ph c t p, thi t k v i CPU đ n, lo i 4, 8 bits.ầ ứ ứ ạ ế ế ớ ơ ạ
Ph n c ng ph c t pầ ứ ứ ạ : thi t k v i CPU 8, 16 ay 32 bits, hay s d ng vi đi u khi n.ế ế ớ ử ụ ề ể
H th ng có c u trúc BUS m r ng đ ghép n i các thi t b ngo i vi.ệ ố ấ ở ộ ể ố ế ị ạ
Ph n m m nhúng tinh vi, có h đi u hành đ th c hi n các nhi m v , thao tác đ ngầ ề ệ ề ể ự ệ ệ ụ ồ
th i.ờ
Công c l p trình: C/C++/Visual C++/Java, RTOS, mã ngu n, công c ki thu t:ụ ậ ồ ụ ậSimulator, Debugger Môi trường phát tri n h p nh t.ể ợ ấ
HTN tinh vi
Trang 7 Nhi u CPU và có th m r ng, hay các CPU có th c u hình đề ể ở ộ ể ấ ược hay m ng logic l pả ậtrình được.
Phát tri n cho các l p ng d ng m i nh t khi các ng d ng lo i này c n ph i có quáể ớ ứ ụ ớ ấ ứ ụ ạ ầ ảtrình thi t k đ ng th i gi a ph n c ng và ph n m m, h p nh t các linh ki n hế ế ồ ờ ữ ầ ứ ầ ề ợ ấ ệ ở ệ
th ng cu i cùng, s d ng công ngh ASIC đ ch t o CPU, vi m ch đ ng x lýố ố ử ụ ệ ể ế ạ ạ ồ ử
HTN ph n c ng hay HTN ph n m m.ầ ứ ầ ề
HTN theo an toàn s c , hay t an toàn.ự ố ự
HTN đáp ng đứ ược b o đ m hay đáp ng v i n l c t i đa.ả ả ứ ớ ỗ ự ố
HTN v i ngu n tài nguyên đ y đ hay ngu n tài nguyên h n ch ớ ồ ầ ủ ồ ạ ế
(1)Kh năng m r ng RAM, ROM, I/O tùy ý.ả ở ộ
(2)RAM, ROM có dung lượng c đ nh, I/O đ cho m c đích s d ng.ố ị ủ ụ ử ụ
(1)Đa năng, đ t ti n.ắ ề
(2)Không đa năng,tiêu hao ít năng lượng, giá c h p lí cho ng d ng nhúng.ả ợ ứ ụ
(1)Thi t k ch c năng ế ế ứ
(2)Thi t k ch c năng ế ế ứ
(1)C n ph i có các vi m ch RAM, ROM h p thành t bên ngoài vi m ch.ầ ả ạ ợ ừ ạ
2)Được thi t k đ có t t c trong m t Chip ế ế ể ấ ả ộ
Trang 8(1)Không th k t n i v i ngo i vi ngo i vi, c n có thêm các vi m ch h tr cho ch cể ế ố ớ ạ ạ ầ ạ ỗ ợ ứnăng này.
(2)Năng l c tính toán đự ược thi t k t i u cho ng d ng xác đ nh.ế ế ố ư ứ ụ ị
(1)Tuy nhiên năng l c tính toán m nh.ự ạ
(2)R t phù h p đ xây d ng các HTN.ấ ợ ể ự
3.4 Cho bi t tên g i c a các ki u ki n trúc là gì ? Ki u ki n trúc nào là thích ế ọ ủ ể ế ể ế
h p h n đ xây d ng các h th ng nhúng (ki u 1 hay ki u 2)? ợ ơ ể ự ệ ố ể ể
Ki u 1: ki n trúc Havardể ế
Ki u 2: ki n trúc Von Neummanể ế
Đi m khác bi t c b n hai ki n trúc này là ch nào ?ể ệ ơ ả ở ế ổ
Bus ki n trúc Havard đở ế ược tách riêng cho l nh và d li u riêng bi tệ ữ ệ ệ
Bus ki n trúc Von Neumman dùng chung cho c l nh và d li uở ế ả ệ ữ ệ
A ADC bi n đ i tế ổ ương t ->s , s hóa cho máy tính x lí s li u ự ố ố ử ố ệ
B DAC bi n đ i s ->tế ổ ố ương t , tín hi u tác đ ng l i h th ng tự ệ ộ ạ ệ ố ương t b đi u khi n,ự ị ề ể
Trang 9Có xung đ ng h h th ng CLK làm chu n cho các ho t đ ng BUS.ồ ồ ệ ố ẩ ạ ộ
Bus đ ng b có m t tín hi u trên đồ ộ ộ ệ ường dây BUS clock d ng sóng vuông, v i t n sạ ớ ầ ố
ví d , trong kho ng vài MHz ÷ GHz M i ho t đ ng bus x y ra đ u qui chi u vàoụ ả ọ ạ ộ ả ề ếBUS Clock, trong m t s nguyên l n chu kỳ này và độ ố ầ ượ ọc g i là chu kỳ bus
B. Th nào là BUS không đ ng b ế ồ ộ ?
Bus không đ ng b không s d ng xung BUS clock, chu kỳ c a nó có th kéo dài tuỳ ýồ ộ ử ụ ủ ể
và có th khác nhau đ i v i các c p thi t b khác nhau, g i là đ i tho i tu n t b iể ố ớ ặ ế ị ọ ố ạ ầ ự ởcác tín hi u đi u khi n.ệ ề ể
Các tín hi u đi u khi n đ ng b ho t đ ng là h qu c a m i thao tác gi a các việ ề ể ồ ộ ạ ộ ệ ả ủ ỗ ữ
m ch ch c năng và CPU trên BUS, ví d nh đ “đ i tho i”.ạ ứ ụ ư ể ố ạ
3.8:Trình đi u khi n thi t b là gì ề ể ế ị ? Ch c năng c a trình đi u khi n thi t b là ứ ủ ề ể ế ị
gì ?
• Là m t ph n m m đ kh i đ ng ph n c ng và ph n m m l p cao h n s d ng độ ầ ề ể ở ộ ầ ứ ầ ề ớ ơ ử ụ ể
qu n tr truy nh p vào ph n c ng ghép n i vào máy tính ả ị ậ ầ ứ ố
• Ph n m m này tầ ề ương tác tr c ti p và đi u khi n ph n c ng và đự ế ề ể ầ ứ ượ ổc t ch c d ngứ ở ạcác th vi n ph n m m ư ệ ầ ề
• Khi máy tính có h đi u hành thì TĐKTB là c u n i gi a ph n c ng và h đi u hànhệ ề ầ ố ữ ầ ứ ệ ề
A. Ch c năng c a trình đi u khi n thi t ứ ủ ề ể ế
Ghép n i m m gi a ph n m m h th ng (hay CPU) và h th ng các ngu n tàiố ề ữ ầ ề ệ ố ệ ố ồnguyên ph n c ng h th ng.ầ ứ ệ ố
Các ch c năng c b n nh :Kh i đ ng ph n c ng ,T t máy ,C m ph n c ng ho tứ ơ ả ư ở ộ ầ ứ ắ ấ ầ ứ ạ,Cho phép ho t đ ng (Hardware Enable),Dành l y ph n c ng (Hardwareạ ộ ấ ầ ứAcquire).Gi i phóng ph n c ng (Hardware Release) Đ c/ghi d li u (Hardwareả ầ ứ ọ ữ ệRead/write)Cài và tháo d ph n c ng (Hardware Install/Uninstall):.ỡ ầ ứ
B. Nhìn theo ki n trúc ph n m m máy tính, trình thi t b đ ế ầ ề ế ị ượ c đ t đâu ặ ở ?
Dưới ph n m m h th ng và trên ph n c ngầ ề ệ ố ầ ứ
3.9.Thế nào là trình điều khiển xác định theo kiến trúc
• Đi theo ki n trúc (architecture-specific) c a HTNế ủ
• Qu n tr ph n c ng h p nh t v i CPU ả ị ầ ứ ợ ấ ớ
Trang 10• Các ki n trúc ki u microcontroller, hay ki n trúc Havard v i b nh trên chip, c ng,ế ể ế ớ ộ ớ ổ
vi m ch qu n tr b nh (memory management Unit-MMU), các ph n c ng d uạ ả ị ộ ớ ầ ứ ấ
ph y đ ng, các ADC/DAC h p nh t trên bo m ch, thu c l p này.ẩ ộ ợ ấ ạ ộ ớ
Th nào là trình đi u khi n t ng quát (hay trình đi u khi n trên bo m ch) ế ề ể ổ ề ể ạ
Đi u khi n các thi t b n m trên bo m ch chính nh ng không h p nh t vào chip v iề ể ế ị ằ ạ ư ợ ấ ớCPU Đa d ng, h tr cho nhi u ki n trúc khác nhau có dùng cung m t lo i thi t bụ ổ ợ ề ế ộ ạ ế ị
tương thích
Hãy nêu m t s lo i trình đi u khi n thi t b đi n hình ? ộ ố ạ ề ể ế ị ể
Đi u khi n BUS I2C, PCI, cache L2, MMU,m ng, x lí kí t i/o, ISRề ể ạ ử ự
3.10Nêu các thao tác c a trình đi u khi n thi t b khi đ ủ ề ể ế ị ượ c kích ho t ạ ?
A Kh i đ ng HW, t t HW, C m/cho phép ng t, tranh dành tài nguyên HW, gi i phóngở ộ ắ ấ ắ ả
HW, truy nh p thi t b , đ c/ghi d li u, cài/tháo d ph n m m ĐKTB.ậ ế ị ọ ữ ệ ỡ ầ ề
B Thông tin v thi t b , thu c tính thi t b , đ nh danh ki u thi t b , cách thi t bề ế ị ộ ế ị ị ể ế ị ế ị
ho t đ ng, giao di n v i máy tính, ghép n i k thu t,ạ ộ ệ ớ ố ỉ ậ
C Kh i đ ng các thông s cho PIC, cho phép PIC nh n ng t, ISR: c m ng t (n uở ộ ố ậ ắ ấ ắ ế
c n), b o v các thanh ghi, th c thi x lí, khôi ph c các thanh ghi, IRETầ ả ệ ự ử ụ
3.11: Hãy chọn câu trả lời cho là đúng khi nói về hệ thời gian thực:
Các ch c năng ph i đứ ả ược th c hi n chu n xác Các tính toán, x lý ph i cho ra k tự ệ ẩ ử ả ế
qu trong m t chu kì th i gian đã xác đ nh trả ộ ờ ị ước Chính xác v th i gian sẽ cho phépề ờ
h đ a ra đáp ng m t cách k p th i Tuy tính chính xác th i gian là m t đ c đi mệ ư ứ ộ ị ờ ờ ộ ặ ểtiêu l ch, nh ng m t h th ng có tính năng th i gian th c không nh t thi t ph i cóị ư ộ ệ ố ờ ự ấ ế ảđáp ng th t nhanh mà quan tr ng h n là ph i có ph n ng k p th i đ i v i các yêuứ ậ ọ ơ ả ả ứ ị ờ ố ớ
c u, tác đ ng bên ngoài ầ ộ
Trang 113.12 Cho bi u đ liên quan t i tác th i đi m th c hi n m t tác v th i gian ể ồ ớ ờ ể ự ệ ộ ụ ở ờ
th c ự
Thông s ai, ri, si ố
Th i gian xu t hi n ờ ấ ệ ai (arrival time): Khi s ki n x y ra và tác v t ự ệ ả ụ ƣơ ng ng ứ
• Th i gian tính toán/th c thi ờ ự ci (Computation time): Là kho ng th i gian c n thi t đả ờ ầ ế ể
b x lý th c hi n xong nhi m v c a mình mà không b ng t ộ ử ự ệ ệ ụ ủ ị ắ
• Th i đi m hoàn thành ờ ể fi (finishing time): Là th i đi m mà t i đó tác v hoàn thànhờ ể ạ ụ
vi c th c hi n c a mình ệ ự ệ ủ
• Th i gian r i ro/ x u nh t ờ ủ ấ ấ wi(worst case time): kho ng th i gian th c hi n lâu nh tả ờ ự ệ ấ
có th x y ra, dung sai m m = wi-di ể ả ề
• Th i đi m k t thúc dờ ể ế i (due time-deadline): Th i đi m mà tác v ph i hoàn thành ờ ể ụ ả
B/H th i gian th c c ng: ệ ờ ự ứ là h mà dung sai t i h n chót x p x b ng không Nóiệ ớ ạ ấ ỉ ằcách khác ph i đúng th i đi m n u không sẽ là th m h a Các tiêu chí h th ng nhả ờ ể ế ả ọ ệ ố ưsau:
- Ph i đ m b o không đ b t kì m t s ki n t i h n (critical event) nào b s c trongả ả ả ể ấ ộ ự ệ ớ ạ ị ự ố
b t kì hoàn c nh nào c a h th ng; ấ ả ủ ệ ố
- Đ tr đáp ng cho s ki n r t nh (xét theo t ng l p ng d ng)ộ ễ ứ ự ệ ấ ỏ ừ ớ ứ ụ
- Các s ki n có tính chu kì ph i đự ệ ả ược đ m b o th c hi n đúng chu kì ả ả ự ệ
Khi thi t k h này c n tính đ k t qu tính toán có đế ế ệ ầ ể ế ả ược trước h n chót trạ ước khi
h phát ra đáp ng ệ ứ C/H th i gian th c m m ệ ờ ự ề : là h ph i h p th i gian nh ng h nệ ả ợ ờ ư ạchót có tính m m d o Nh v y h n chót có th có nhi u m c, h n chót v i th i gianề ẻ ư ậ ạ ể ề ứ ạ ớ ờ
T ước tính v i tr trung bình, xác xu t đáp ng đ a ra n m trong các m c đ khácớ ị ấ ứ ư ằ ứ ộnhau v i đ tr trung bình và ch p nh n đớ ộ ễ ấ ậ ược Tuy không gây ra th m h a h th ngả ọ ệ ố
nh ng ph i tr giá khi đ tr h th ng tăng t l thu n tùy thu c vào ng d ng.ư ả ả ộ ể ệ ố ỷ ệ ậ ộ ứ ụ
C n có c ch bù tr đ lo i tr đ tr này ầ ơ ế ừ ể ạ ừ ộ ễ
4.1:
A.Hãy đ c t ki n trúc CPU ki u Von Neumman và ki n trúc CPU ki u Harvard ặ ả ế ể ế ể
Ki n trúc CPU ki u Von Neumannế ể
Trang 12-Ki n trúc von-Neumann đế ược nhà toán h c John von-Neumann đ a ra vào nămọ ư
1945 trong m t báo cáo v máy tính EDVAC.ộ ề
-H th ng BUS đ a ch và BUS d li u, BUS đi u khi n chung cho toàn b h th ng,ệ ố ị ỉ ữ ệ ề ể ộ ệ ố
b nh chia s chung cho toàn h th ng v i vùng mã l nh (code) và d li uộ ớ ẻ ệ ố ớ ệ ữ ệ(data) trên cùng không gian đ a ch b nh và BUS d li u không th truy n đ ngị ỉ ộ ớ ữ ệ ể ề ồ
th i mã l nh và d li u cùng m t th i đi m.ờ ệ ữ ệ ộ ờ ể
-Các đ c đi m c a ki n trúc máy tính von-Neumann:ặ ể ủ ế
+M t b nh duy nh t độ ộ ớ ấ ược dùng đ l u tr d li u (data) và l nh (instructions)ể ư ữ ữ ệ ệ+D li u và l nh đữ ệ ệ ượ ưc l u tr trong các ph n riêng c a b nhữ ầ ủ ộ ớ
+B nh độ ớ ược đánh đ a ch theo vùng, không ph thu c vào lo i d li u mà nó l uị ỉ ụ ộ ạ ữ ệ ư
4) L u k t qu ra RAM qua Data BUS ư ế ả
Nh v y BUS d li u là kênh duy nh t đ trao đ i d li u, do v y ta nói BUS dư ậ ữ ệ ấ ể ổ ữ ệ ậ ữ
li u b “bão hòa”, hi u năng tính toán b h n ch V i các CPU hi n đ i BUS dệ ị ệ ị ạ ế ớ ệ ạ ữ
li u đệ ược c i ti n r t nhi u, đ c bi t là giao th c BUS và đ ng h BUS đả ế ấ ề ặ ệ ứ ồ ồ ược nângcao đ c i thi n h n ch nói trên.ể ả ệ ạ ế
Ki n trúc Harvardế
Trang 13-Howard Aiken (1900-1973) khi xây d ng máy tính v i các relé đã tách các b nhự ớ ộ ớ
d li u (RAM) và b nh chữ ệ ộ ớ ương trình v i các bus riêng rẽ đ truy c p vào b nhớ ể ậ ộ ớ
d li u (RAM) và b nh chữ ệ ộ ớ ương trình (NVM Non Volatile Memory: ROM, FLASH)
ch a ph n m m nhúng (h đi u hành, Device drivers, ng d ng nhúng ).ứ ầ ề ệ ề ứ ụ
-Các bus đi u hành đ c l p, các ch d n chề ộ ậ ỉ ẫ ương trình và d li u có th đữ ệ ể ược đ a raưcùng m t lúc, c i thi n t c đ so v i thi t k v i ch m t bus ộ ả ệ ố ộ ớ ế ế ớ ỉ ộ
-Phân bi t rõ ràng b nh d li u và b nh chệ ộ ớ ữ ệ ộ ớ ương trình, CPU có th v a đ c m tể ừ ọ ộ
l nh, v a truy c p d li u t b nh cùng lúc.ệ ừ ậ ữ ệ ừ ộ ớ
-Do các bus đ c l p, CPU có kh năng tìm trộ ậ ả ước, nên v i ki n trúc Harvard chớ ế ươngtrình ch y nhanh h n, b i vì nó có th th c hi n ngay l nh ti p theo khi v a k tạ ơ ở ể ự ệ ệ ế ừ ếthúc l nh trệ ước đó
-Tuy nhiên v ki n trúc có ph n ph c t p h n trong ph n c ng, nh ng cho hi u quề ế ầ ứ ạ ơ ầ ứ ư ệ ả
đ truy c p vào b nh d li u và b nh chể ậ ộ ớ ữ ệ ộ ớ ương trình ch a ph n m m nhúng.ứ ầ ề
(1)Bus d li u không th truy n đ ng th i mã l nh và d li u cùng m t th i đi mữ ệ ể ề ồ ờ ệ ữ ệ ộ ờ ể(2)Các bus đi u hành đ c l p, các ch d n chề ộ ậ ỉ ẫ ương trình và d li u có th đữ ệ ể ược đ aư
Trang 14B.Nêu ch c năng c a t ng kh i c a mô hình đóứ ủ ừ ố ủ ?
-Các b s hóa (A/D) và tộ ố ương t hóa (D/A).ự
-Ghép n i v i các h th ng khác: liên k t các HTN khác, m ng d li u, Trung tâmố ớ ệ ố ế ạ ữ ệ
đi u khi n SCADA, … ề ể
-Ghép n i BUS h th ng ố ệ ố
-CPU, RAM, ROM (FLASH)
4.3 Nói H th ng nhúng là m t h th ng đáng tin c y (dependable), vì các ệ ố ộ ệ ố ậ
đ c tính sau đây ặ :
-Tin c y (Reliability): lý tậ ưởng là không có s c h ng hóc.ự ố ỏ
HTN là m t ki u máy tính có yêu c u v ch t lộ ể ầ ề ấ ượng và đ tin c y r t cao, ho tộ ậ ấ ạ
đ ng độ ược trong các môi trường kh c nghi t v nhi t đ (cao, hay r t th p), đắ ệ ề ệ ộ ấ ấ ộ
m cao, đ rung đ ng l n, nhi u sóng đi n t v.v
Trang 15A.T cách xác đ nh đ a ch cho d ch v x lí ng t (Interrupt Service Routine-ISR) sauừ ị ị ỉ ị ụ ử ắđây :
-Đ a ch c a ISR đã đị ỉ ủ ược đ nh s n bên trong CPUị ẳ ;
-Đ a ch c a ISR đị ỉ ủ ược ch đ nh m t ch nào đó trong b nh , ho c ph i th c hi nỉ ị ộ ổ ộ ớ ặ ả ự ệ
m t l nh nh y (JMP addr) t i đ a ch hi n t i c a ISRộ ệ ả ớ ị ỉ ệ ạ ủ ;
-Thi t b ngo i vi ph i cung c p cho CPU đ a ch c a ISR thông qua s hi u ng t.ế ị ạ ả ấ ị ỉ ủ ố ệ ắHãy ch nọ các kh năng đ nh đ a ch phù h p v i ki u t ch c ng t sau:ả ị ị ỉ ợ ớ ể ổ ứ ắ
A.Ng t c đ nh làắ ố ị : 1 ? hay 2 ? hay 3 ?
B.Ng t vector làắ : 1 ? hay 2 ? hay 3 ?
a Ng t c đ nh - 2ắ ố ị
b Ng t vector - 3ắ
B Ng t c ngắ ứ
Là các yêu c u ng t CPU do các tín hi u đ a đ n t các chân INTR và NMI Khác v iầ ắ ệ ư ế ừ ớ
ng t m m, ng t c ng không đắ ề ắ ứ ược kh i đ ng b i chở ộ ở ương trình mà b i các thànhở
ph n có trong ph n c ng c a h vi x lý (các thi t b ngo i vi bên trong và bênầ ầ ứ ủ ệ ử ế ị ạngoài) Lo i ng t này là m t c c u đ n gi n và hi u qu đ b vi x lý ph n ngạ ắ ộ ơ ấ ơ ả ệ ả ể ộ ử ả ứ
k p th i v i các s ki n không đ ng b x y ra trong h vi x lý.ị ờ ớ ự ệ ồ ộ ả ệ ử
Ví d minh ho đ n gi n là ho t đ ng c a ng t bàn phím M i khi n hay nh m tụ ạ ơ ả ạ ộ ủ ắ ỗ ấ ả ộphím thì ng t bàn phím sẽ đắ ược kích ho t Chạ ương trình x lý ng t bàn phím sẽử ắ
được kh i đ ng b ng cách chuy n ký t đở ộ ằ ể ự ượ ấc n vào vùng b đ m c a bàn phím,ộ ệ ủ
x p ngay sau ký t đế ự ượ ấc n l n trầ ước Cũng nh m i ng t khác, vi c th c hi nư ọ ắ ệ ự ệ
chương trình chính sẽ được khôi ph c ngay sau khi chụ ương trình con x lý ng t bànử ắphím k t thúc.ế
C Ng t m m Ng t m m là ng t đắ ề ắ ề ắ ược g i b ng m t l nh trong chọ ằ ộ ệ ở ương trình ngôn
ng máy ữ L nh đó là INT mn (trong đó INT là mã l nh, mn là s hi u ng t) Các ng tệ ệ ố ệ ắ ắ
m m cho phép g i tr c ti p các chề ọ ự ế ương trình con ph c v ng t ch a trong th vi nụ ụ ắ ứ ư ệ
chương trình Nói cách khác, l nh ng t m m b n ch t là m t l nh g i chệ ắ ề ả ấ ộ ệ ọ ương trìnhcon đ c bi t, nó đặ ệ ược g i m t cách ch đ ng b ng chọ ộ ủ ộ ằ ương trình c a ngủ ườ ậi l ptrình
4.5A Ngắt có che
Ng t che đắ ược là t t c các yêu c u ng t đấ ả ầ ắ ược đ a t i chân INTR c a CPU CPU cóư ớ ủ
th c m (che)/ph c v các ng t này ph thu c vào giá tr c a c ng t IF (IF = 0 -ể ấ ụ ụ ắ ụ ộ ị ủ ờ ắ
c m, IF = 1 - cho phép) Các l nh Assembly nh CLI (xoá c ng t) và STI (thi t l p cấ ệ ư ờ ắ ế ậ ờ
ng t) sẽ tác đ ng đ n c này Khi m t ng t b che, thì m c dù đắ ộ ế ờ ộ ắ ị ặ ược g i, chọ ương trìnhcon ph c v ng t tụ ụ ắ ương ng cũng không đứ ược th c hi n.ự ệ
B Ng t không cheắ
Trang 16Ng t không che đắ ược là t t c các yêu c u ng t đấ ả ầ ắ ược đ a t i chân NMI c a CPU.ư ớ ủCác ng t này luôn đắ ược ph c v b t ch p giá tr c a c IF Chụ ụ ấ ấ ị ủ ờ ương trình con ph c vụ ụ
ng t lo i này thắ ạ ường là các chương trình có ch c năng thông báo các s ki n quanứ ự ệ
tr ng nh t c a h th ng nh s c ngu n nuôi, s c th i gian th c, ọ ấ ủ ệ ố ư ự ố ồ ự ố ờ ự
C Hãy đ c t các bặ ả ước mà CPU sẽ th c hi n khi ch p nh n x lí m t ng tự ệ ấ ậ ử ộ ắ ?
CPU x lý ng t (c ng và m m) thông qua các bử ắ ứ ề ước sau:
1 C t thanh ghi c (FR) vào ngăn x p và gi m SP đi 2 đ n v (vì thanh ghi c là thanhấ ờ ế ả ơ ị ờghi 2 byte)
2 Xoá c hai c cho phép ng t IF và c b y TF Khi đó sẽ che các yêu c u ng t khácả ờ ắ ờ ẫ ầ ắ
đ a đ n chân INTR và hu b ch đ ch y t ng l nh trong khi CPU th c hi nư ế ỷ ỏ ế ộ ạ ừ ệ ự ệCTCPVN Tuỳ thu c vào ch đ ng t mà ngộ ế ộ ắ ườ ậi l p trình có th hu b vi c che chânể ỷ ỏ ệINTR b ng l nh STI.ằ ệ
3 C t CS hi n hành vào ngăn x p và gi m SP đi 2 đ n v ấ ệ ế ả ơ ị
4 C t IP hi n hành vào ngăn x p và gi m SP đi 2 đ n v ấ ệ ế ả ơ ị
5 Th c hi n truy c p vào b ng vector ng t b ng cách xác đ nh đ a ch v t lý c aự ệ ậ ả ắ ằ ị ị ỉ ậ ủvector ng t thông qua s hi u ng t tắ ố ệ ắ ương ng, qua đó c p nh t giá tr CS và IP m iứ ậ ậ ị ớ
c a CTCPVN.ủ
6 V i c p CS:IP m i, CPU b t đ u nh n và th c hi n các l nh c a CTCPVN.ớ ặ ớ ắ ầ ậ ự ệ ệ ủ
7 L nh cu i cùng c a CTCPVN là l nh IRET L nh này thông báo đ CPU t i l i giá trệ ố ủ ệ ệ ể ả ạ ị
IP, CS và thanh ghi c t ngăn x p và nh v y, CPU có th th c hi n ti p chờ ừ ế ờ ậ ể ự ệ ế ươngtrình t i n i nó b ng t.ạ ơ ị ắ
D Khi vi t mã cho d ch v x lí ng t (Interrupt Service Routine-ISR), c n đ c bi tế ị ụ ử ắ ầ ặ ệquan tâm đ n gìế ? T i saoạ ?
• Đ y các thanh ghi c a CPU vào stackẩ ủ
• Th c hi n vi c c m ng t đ tránh đ qui ng t n u c n ho c c m các ng t khácự ệ ệ ấ ắ ể ệ ắ ế ầ ặ ấ ắ
• Mã x lí c a ISRử ủ
• Khôi ph c các thanh ghi c a CPUụ ủ
• Khôi ph c l i kh năng ch p nh n ng t cho các ng t t m c mụ ạ ả ấ ậ ắ ắ ạ ấ
• Quay v chề ương trình chính
4.6Hãy chọn những tiêu chí cho là đúng với cơ chế trao đổi dữ liệu kiểutruy nhập trực tiếp bộ nhớ (DMA) :
A.C n có m t vi m ch (DMAC) đi u khi n qui trình DMA.ầ ộ ạ ề ể
B.CPU v n ki m soát BUS h th ng.ẫ ể ệ ố
C.CPU trao cho vi m ch DMAC quy n ki m soát BUS h th ng.ạ ề ể ệ ố
D.CPU v n th c hi n ch y chẫ ự ệ ạ ương trình n u chế ương trình đó không có đòi h i truyỏ
nh p BUS h th ng.ậ ệ ố
E.Trong khi x y ra ch đ DMA, lo i CPU nào v n có th tìm l nh và th c hi n l nhẩ ế ộ ạ ẫ ể ệ ự ệ ệ
b nh l nh (code) n u không truy nh p t i b nh d li u
Trang 17(DMA: Direct Memory Access)
Có 3 phương pháp đi u khi n h th ng vào ra:ề ể ệ ố
-Vào ra b ng chằ ương trình
-Vào ra b ng ng tằ ắ
-Truy c p b nh tr c ti p DMAậ ộ ớ ự ế
Nhược đi m chính c a 2 phể ủ ương pháp đ u là CPU tham gia tr c ti p vào trao đ iầ ự ế ổ
d li u và vi c trao đ i lữ ệ ệ ổ ượng d li u nh Đ kh c ph c hai phữ ệ ỏ ể ắ ụ ương pháp trên m tộ
phương pháp m i có tên DMA sẽ s d ng thêm m t Module ph n c ng có DMACớ ử ụ ộ ầ ứ(DMA Controller) Vì v y khi trao đ i d li u không c n CPU.ậ ổ ữ ệ ầ
->Tiêu chí A là đúng
Hình sau cho th y có các đấ ược liên h tr c ti p gi a b nh chính và các ngo i việ ự ế ữ ộ ớ ạqua chip DMAC mà không qua CPU
->Tiêu chí C là đúng -> Tiêu chí B là sai
Theo nh hình trên, khi chư ương trình yêu c u truy nh p bus h th ng thì nó giaoầ ậ ệ ố
ti p thông qua DMAC Còn khi thi t b không có yêu c u truy nh p bus h th ng thìế ế ị ầ ậ ệ ốCPU v n th c hi n ch y chẫ ự ệ ạ ương trình -> Tiêu chí D là đúng
E cũng đúng nh ng mà e đek bi t gi i thích, th y cũng ch b o là : E đúng thôi ư ế ả ầ ỉ ả
4.7: A.Thế nào là lập lịch hướng vào/ra (hướng I/O) ?
B.Th nào là l p l ch hế ậ ị ướng CPU ?
C.Th nào là l p l ch tĩnh (static/offline)ế ậ ị ? Th nào là l p l ch đ ng (online)ế ậ ị ộ ?
D.Th nào là l p l ch có th chen ngang (ế ậ ị ể preemptive algorithms) và l p l ch khôngậ ị
th chen ngang (non-preemptive algorithms) ?ể
Bài làm:
A.L p l ch hậ ị ướng vào/ra(I/O bound) có nghĩa ti n trình s d ng nhi u thao tác I/Oế ử ụ ề
và s d ng nhi u th i gian đ đ i k t qu I/O.ử ụ ề ờ ể ợ ế ả
B.L p l ch hậ ị ướng CPU(CPU bound) là l p ti n trình s d ng ph n l n th i gian c aớ ế ử ụ ầ ớ ờ ủCPU đ th c hi n x lý.ể ự ệ ử
C.L p l ch tĩnh và đ ng.ậ ị ộ
-L p l ch tĩnh(offline): Vi c l p l ch đậ ị ệ ậ ị ược th c hi n d a trên các hi u bi t ho c dự ệ ự ể ế ặ ựbáo v các s ki n tác v th c hi n trong h th ng(th i đi m xu t hi n, th i gianề ự ệ ụ ự ệ ệ ố ờ ể ấ ệ ờ
th c hi n, h n chót ự ệ ạ ước tính) và được quy t đ nh t i th i đi m thi t k và đế ị ạ ờ ể ế ế ược áp
d ng c đ nh trong su t quá trình ho t đ ng c a h th ng, phân ph i x lý chu nụ ố ị ố ạ ộ ủ ệ ố ố ử ẩtheo th i gian, và đờ ược giám sát b i timer g i là time trigged(TT system).ở ọ
Trang 18-L p l ch đ ng(online): B x lý th c hi n vi c l p l ch trong quá trình th c thi(runậ ị ộ ộ ử ự ệ ệ ậ ị ựtime) d a trên c s các thông tin ho t đ ng hi n hành c a h th ng S đ l p l chự ơ ở ạ ộ ệ ủ ệ ố ơ ồ ậ ị
là không xác đ nh trị ước và thay đ i đ ng theo quá trình th c hi n, linh ho t theo sổ ộ ự ệ ạ ự
ki n.ệ
D.L p l ch chen ngang và không th chen ngang.ậ ị ể
L p l ch chen ngang(preemptive): Gi i thu t đậ ị ả ậ ượ ử ục s d ng n u có tác v nào đó cóế ụ
th i gian th c thi quá lâu, nó có th b tác v khác ng t hay n u m t s ki n bênờ ự ể ị ụ ắ ế ộ ự ệngoài c n th i gian đáp ng ng n, s ki n đó sẽ ng t s ki n khác Hay nói cáchầ ờ ứ ắ ự ệ ắ ự ệkhác m t tác v sẽ b ng t b i m t tác v khác hay tác v có m c u tiên cao h nộ ụ ị ắ ở ộ ụ ụ ứ ư ơ
ng t khi đang x lý, có tính đ qui.ắ ử ệ
-L p l ch không th chen ngang(non-preemptive): Gi i thu t gi đ nh r ng các tác vậ ị ể ả ậ ả ị ằ ụ
sẽ th c hi n cho t i khi hoàn t t Nh v y n u có m t tác v th c thi quá lâu, thì đápự ệ ớ ấ ư ậ ế ộ ụ ự
ng cho các s ki n ngoài sẽ lâu
4.8 Định thời (watch-dog) là gì?
Đ nh th i là khung th i gian th c n đ nh cho m t x lý ph i hoàn thành.ị ờ ờ ự ấ ị ộ ử ả
B giám sát đ nh th i (watchdog timer) là đ ng h th i gian c ng (dùng các bộ ị ờ ồ ồ ờ ứ ộ
đ m đi n t ) v i các ng d ng sau đây:ế ệ ử ớ ứ ụ
+Làm đ ng h th i gian th c cho h th ng.ồ ồ ờ ự ệ ố
+Kh i đ ng/kh i đ ng l i m t s ki n sau m t th i gian đ t trở ộ ở ộ ạ ộ ự ệ ộ ờ ặ ước
+T o khung c a s th i gian cho m t s ki n.ạ ử ổ ờ ộ ự ệ
+Phân gi i kho n th i gian gi a hai s ki n.ả ả ờ ữ ự ệ
+Chó canh ch ng hay đ ng h th i gian m m (l p các giá tr đ m cho m t bi nừ ồ ồ ờ ề ậ ị ế ộ ế
chương trình), các thao tác tăng/gi m giá tr đ m th c hi n b ng l nh máy, do đóả ị ế ự ệ ằ ệ
ph thu c vào CPU clock (m i lo i CPU có clock khác nhau).ụ ộ ỗ ạ
a.Vai trò c a đ nh th i trong h th i gian th c:ủ ị ờ ệ ờ ự
Trong các h th i gian th c, trong đó có HTN, watchdog r t quan tr ng, đệ ờ ự ấ ọ ược sử
d ng đ t đ ng kh i đ ng l i m t ng d ng nhúng hay th m chí c h th ng vụ ể ự ộ ở ộ ạ ộ ứ ụ ậ ả ệ ố ề
tr ng thái ban đ u mà không có s can thi p c a con ngạ ầ ự ệ ủ ười Trong các CPU nhúng ta
th y có vài b đ m th i gian c ng, đ t các giá tr khác nhau cho các ng d ng quanấ ộ ế ờ ứ ặ ị ứ ụ
tr ng, mà trong khung th i gian đó ng d ng ph i k t thúc hay ph i đ a ra đọ ờ ứ ụ ả ế ả ư ượcđáp ng, n u không (kh năng có s b t thứ ế ả ự ấ ường) ng d ng sẽ đứ ụ ược watchdog kh iở
đ ng l i t đ u ộ ạ ừ ầ
Trang 19b.Phát th o m t gi i thu t x lý có tác nhân giám sát c a đ nh th i?ả ộ ả ậ ử ủ ị ờ
M i tác v khác bi t th c thi b i m t “main loop”, n u k t thúc hoàn h o, đ t cỗ ụ ệ ự ở ộ ế ế ả ặ ờ
tr ng thái lên (Flagi set=TRUE) T t c các main loop th c hi n t i đa trong 35 microạ ấ ả ự ệ ốgiây Sau vòng cu i cùng là đo n mã ki m tra:ố ạ ể
N u t t c các Flags đ u là TRUE, kh i đ ng chu kì watchdog m i (50 micro giây),ế ấ ả ề ở ộ ớ
n u Flags = FALSE, ghi nh n s c và đ t t t c Flags = FALSE, watchdog không đế ậ ự ố ặ ấ ả ược
kh i đ ng l i trong th i gian 50 micro giây, đ u ra c a b đ m watchdog sẽ kíchở ộ ạ ờ ầ ủ ộ ế
else //n u th c hi n đo n code này có nghĩa ế ự ệ ạ
//counter sẽ vượt 50 giây n đ nh xung đ u ra sẽ RESET CPU ấ ị ầ {
Log eror; //Record failure
Reset System; //WD reset CPU
ti p, đ m b o chi phí th i gian là ít nh t.ế ả ả ờ ấ
-Trong RTOS có m t ph n độ ầ ược g i là b l p l ch, l u v t các tr ng thái c a m i tácọ ộ ậ ị ư ế ạ ủ ỗ
v và quy t đ nh m t tác v duy nh t sẽ đi vào tr ng thái Running B l p l ch trongụ ế ị ộ ụ ấ ạ ộ ậ ị
Trang 20RTOS nhìn vào m c u ti n đứ ư ệ ược gán cho m i tác v và tác v nào có m c u tiênỗ ụ ụ ứ ưcao nh t sẽ đấ ược th c hi n Các tác v có m c u tiên th p h n sẽ đ i cho đ n khiự ệ ụ ứ ư ấ ơ ợ ế
A,Có th nói trong h th i gian th c, h u h t các ho t đ ng x lí đ u do b l p bi uể ệ ờ ự ầ ế ạ ộ ử ề ộ ậ ể
ki m soát (nh hình dể ư ưới) Hãy gi i thích t i sao nh v yả ạ ư ậ ?
B.Th nào là m t h th ng nhúng th i gian th cế ộ ệ ố ờ ự ?
Bài làm:
A.M t h th ng th i gian th c c ng ph i th c hi n m t t p h p các nhi m v th iộ ệ ố ờ ự ứ ả ự ệ ộ ậ ợ ệ ụ ờgian th c đ ng th i và t t c các nhi m v quan tr ng đ u ph i đáp ng đúng th iự ồ ờ ấ ả ệ ụ ọ ề ả ứ ờgian quy đ nh c a chúng Trong khi CPU không th th c hi n cùng m t lúc 2 tác vị ủ ể ự ệ ộ ụ
và ngu n tài nguyên cũng có gi i h n Vì v y c n ph i có m t k ho ch phân b vàồ ớ ạ ậ ầ ả ộ ế ạ ổgán quy trình th c thi các tác v cho b x lý sao cho m i tác v đự ụ ộ ử ỗ ụ ược th c hi nự ệhoàn toàn K ho ch phân b đó chính là “L p l ch” L p l ch chính là k ho ch đ nhế ạ ổ ậ ị ậ ị ế ạ ị
th i cho các tác v ờ ụ
B.HTN th i gian th c là HTN có th đờ ự ể ượ ạc t o thành khi có ph n c ng nhúng và ph nầ ứ ầ
m m h th ng là RTOS(H đi u hành th i gian th c) M i quan h gi a h th i gianề ệ ố ệ ề ờ ự ố ệ ữ ệ ờ
Trang 21Trong HTN, PMTG được coi nh ph n m m h th ng PMTG gi ng nh c u n i gi aư ầ ề ệ ố ố ư ầ ố ữcác ph n m m khác c a ph n m m h th ng, cung c p các d ch v cho các ph nầ ề ủ ầ ề ệ ố ấ ị ụ ầ
m m ng d ng nh : an ninh h th ng, k t n i m ng, truy n thông c c b gi a cácề ứ ụ ư ệ ố ế ố ạ ề ụ ộ ữ
ng d ng trong h th ng, mang l i s linh ho t khi tri n khai các ng d ng V i v
trí “trung gian”, các PMTG làm gi m đáng k tính ph c t p c a các ng d ng, vì cácả ể ứ ạ ủ ứ ụ
ti n ích đã có s n và chia s ngay trong PMTG.ệ ẵ ẻ
B.Trong các hìnbh sau a, b, c, d, hình nào sai khi đ t ph n m m trung gian vào các l pặ ầ ề ớ
Mô hình phù h p v i h th ng đợ ớ ệ ố ược đ c p đây là mô hình (d)ề ậ ở
Trang 22ph n c ng, cung c p ngu n tài nguyên ph n c ng và ph n m m trung gian khác choầ ứ ấ ồ ầ ứ ầ ề
ph n m m ng d ng, th c thi mã ph n m m ng d ng sao cho hi u qu và n đ nh.ầ ề ứ ụ ự ầ ề ứ ụ ệ ả ổ ị
B.Đ c t ch c năng các l p ph n m m ( ng d ng, trung gian, h th ng, đi u khi nặ ả ứ ớ ầ ề ứ ụ ệ ố ề ểthi t b +BIOS)ế ị
Trình đi u khi n thi t b : ề ể ế ị
Các ch c năng c b n c a TĐKTB: ứ ơ ả ủ
Trang 231) Kh i đ ng ph n c ng (Hardware Startup): ở ộ ầ ứ Kh i đ ng các ph n c ng sau khi b tở ộ ầ ứ ậngu n hay sau khi RESET máy Ph n l n các ph n c ng là các vi m ch ghép n i hayồ ầ ớ ầ ứ ạ ố
đi u khi n các thi t b và là kh trình Cho nên bề ể ế ị ả ƣớc này là l p trình cho các vi m chậ ạ
ch c năng c a bo m ch, đ đ a các vi m ch vào tr ng thái đ u tiên: tr ng thái s nứ ủ ạ ể ƣ ạ ạ ầ ạ ẳsàng th c hi n các l nh ti p theo ự ệ ệ ế
2) T t máy (Hardware Shutdown): ắ Ngượ ạ ớc l i v i kh i đ ng, đi u khi n t t máy sẽở ộ ề ể ắ
c m tu nt các vi m ch, k t thúc k t n i v i các thi t b sao cho d li u không bấ ầ ự ạ ế ế ố ớ ế ị ữ ệ ịxáo tr n hay b h ng.Cu i cùng là c t ngu n đi n nuôi máy ộ ị ỏ ố ắ ồ ệ
3) C m ph n c ng ho t đ ng (Hardware Disable): ấ ầ ứ ạ ộ Cho phép ph n m m khác có thầ ề ể
t m th i vô hi u hóa m t ph n c ng khác ạ ờ ệ ộ ầ ứ
4) Cho phép ho t đ ng (Hardware Enable): ạ ộ Cho phép ph n m m khác kích ho tầ ề ạ
ph n c ng.ầ ứ
5) Dành l y ph n c ng (Hardware Acquire): ấ ầ ứ Cho phép ph n m m khác chi m l yầ ề ế ấ
ph n c ng b ng cách khoá ph n c ng đ i v i các ph n m m khác.Ví d sau khiầ ứ ằ ầ ứ ố ớ ầ ề ụHĐH gi i quy t tranh ch p ph n c ng, gán ph n c ng cho m t ti n trình t m th iả ế ấ ầ ứ ầ ứ ộ ế ạ ờ
t p c a các ng, vì các ti nạ ủ ứ ệ ích đã có s n và chia s ngay trong PMTG.Tuy nhiên khiẳ ẻ
đ a PMTG vào h th ng cũng là tăngư ệ ố thêm m t l p x p ch ng, có tác đ ng đáng kộ ớ ế ồ ộ ểvào tính m r ng, hi u năng c a các HTN, vìở ộ ệ ủ PMTG tác đ ng vào t t c các l p ph nộ ấ ả ớ ầ
m m khác.ề
Ph n m m ng d ng ầ ề ứ ụ
Ph n m m ng d ng đ ch y trên HTN.HTN đầ ề ứ ụ ể ạ ượ ức ng d ng nhi u lĩnh v c khácụ ở ề ựnhau, do đó các ng d ng là r t c th , và đứ ụ ấ ụ ể ược phát tri n b i nhà ch t o ra HTN.ể ở ế ạ
Ví d trong công nghi p ch t o các thi t b cho t đ ng hóa, robot,… các HTN cóụ ệ ế ạ ế ị ự ộ
nh ng bài toán riêng đ gi i quy t, t c là ph i phát tri n ph n m m cho bài toán đó.ữ ể ả ế ứ ả ể ầ ề
Ph n m m h th ng ầ ề ệ ố
Trong ph n m m h tr đa nhi m, và n u ch u s ràng bu c v th i gian x lý, thìầ ề ỗ ợ ệ ế ị ự ộ ề ờ ử
ph i có tính th i gian th c, và ph n m m h th ng sẽ là m t h đi u hành th i gianả ờ ự ầ ề ệ ố ộ ệ ề ờ
th c (RTOS) Ch c năng chính c a nhân RTOS là qu n lí tài nguyên CPU, b nh , qu nự ứ ủ ả ộ ớ ả