Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 51 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
51
Dung lượng
1,59 MB
Nội dung
1.1 Khái niệm hệ thống nhúng -Định nghĩa tổng quát: hệ thống nhúng thuật ngữ để hệ thống có khả hoạt động tự trị nhúng vào môi trường hay hệ thống khác quy mơ phức tạp Đó hệ thống tích hợp ph ần c ứng(là m ột h ệ th ống máy tính xây dựng sở sử dụng vi xử lý- microprocessor-based sytem) phần mềm nhúng phần cứng để thực toán chuyên biệt -Định nghĩa theo tổ chức IEEE: hệ thống nhúng hệ thống tính tốn(máy tính số)nằm (hay nhúng vào) sản phẩm khác lớn r ằng thông thường ẩn người sử dụng Nói rộng đơn giản hơn, hệ thống tính tốn( PC, IPC, PCL, vi xử lý, vi hệ thống( microcontroller), DSP….) đ ược nhúng vào sản phẩm hay hệ thống thực số chức cụ thể hệ thống ta gọi hệ thống tính tốn hệ thống nhúng 1.2 HT 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 cao 1.3 Nêu tên số lĩnh vực đời sống cơng nghiệp có sử dụng ưng dụng hệ thống nhúng Kể tên thiết bị nhúng 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áy tính đa hay máy tính chuyên dụng ? A.Hệ thống nhúng máy tính chuyên dụng, dùng cho ứng dụng đặc biệt B.Phần mềm hệ thống nhúng phần mềm hướng ứng dụng C Ví dụ phần mềm hệ thống chạy hệ thống nhúng là: Monitor , RTOS hướng đích 2.1 a Hãy nêu đặc điểm môi trường mà hệ thống nhúng hoạt động b Cho ví dụ hệ thống nhúng nêu đặc điểm mơi trường mà hệ thống nhúng hoạt động Các hệ nhúng thường phải hoạt động môi trường khắc nghiệt cơng nghiệp, qn đội, 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 hệ thống nhúng hệ thống đường dẫn 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 nói hầu hết hệ thống nhúng hoạt động với ràng buộc v ề thời gian ? -Phần lớn hệ thống nhúng hoạt động với ràng buộc thời gian: yêu c ầu có th ời gian cho (đáp ứng) đầu nhanh, thời điểm, mối tương quan v ới thời điểm xuất (sự kiện) đầu vào -Hệ thống nhúng có khả đáp ứng với kiện bên (từ tác nhân bị kiểm soát) nhanh nhạy, kịp thời, tức khả theo thời gian thực: +Các tác vụ có đáp ứng ràng buộc thời hạn chót (deadline) +Thời gian phát lỗi phải ngắn (tối thiểu); +Khi chạy chu trình vòng lặp điều khiển phần mềm phải có đáp ứng đầu thời hạn; 2.3 a Nêu kiểu hoạt động hệ thống nhúng: -Hệ thông minh -Hoạt động độc lập: nhận đầu vào từ tác nhân bị điều khiển, xử lý cho đầu Thời gian có đầu (đáp ứng) phải khung thời gian định theo ý đồ thiết kế -Hệ liên kết tự độngHoạt động có liên kết với HTN trung tâm kiểm soát khác -Hệ tự phản ứng với kiện b.Hệ thụ động, nhạy cảm với kiện, với thời gian, tự phản ứng với kiện 2.4: BUS gồm thành phần hợp thành ? a.Bus CPU bao gồm : Bus địa chỉ, Bus liệu, Bus điều khiển -Bus địa : Trong trình hoạt động, CPU điều khiển bus địa tới vị trí chuyển giao từ bên từ CPU Địa vị trí nhớ v ị trí vào/ra.xd -Bus liệu: CPU điều khiển suôt chu kỳ ghi liệu đ ược thi ết b ị khác điều khiển suốt chu kỳ đọc, vận chuyển lệnh liệu bên CPU -Bus điều khiển: điều khiển CPU Bus điều khiển định loại c chu kỳ diễn liệu đưa lên bus b BUS HT = BUS CPU + mạnh hỗ trợ mở rộng BUS CPU: tách tín hi ệu d ồn kênh, khuyếch đại, tạo 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í nào, ph ương tiện, cơng cụ ? Nêu 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ảm biến (sensor), ghép nối vào hệ thống nhúng dây dẫn, hay không dây - Thông qua chuyển đổi tín hiệu ADC, DAC -Thơng qua ghép nối, hợp chuẩn 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 hợp chuẩn tín hiệu Các mạch ghép nối vào/ra mạch điện tử cho phép CPU trao đ ổi d ữ li ệu v ới thiết bị ngoại vi bàn phím, hình, máy in… 2.6: Cho mơ hình qui trình điều khiển cơng nghệ có ứng d ụng h ệ th ống nhúng hình sau :Khoanh vùng cho biết hệ thống nhúng phần ? Vùng Nửa hình vẽ \ Các thành phần hợp thành hệ thống nhúng : phần cứng, phần mềm, RTOS(Real Time Operating System) 2.7 :Để xây dựng kiến trúc cho hệ thống nhúng, phải tuân th ủ b ước Các bước bước ? Nêu pha trình thiết kế hệ thống nhúng ? Trả lời : bước để xây dựng kiến trúc cho hệ thống nhúng gồm : -Cần kiến thức tốt 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 yêu cầu 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 trị, xã hội -Mẫu hệ thống mẫu mô tả hệ thống, chứa đựng đặc tả khác thành phần phần cứng phần mềm, chức năng, liên kết, giao tiếp -Các cấu trúc: Đây bước tạo kiến trúc HTN Kiến trúc HTN đ ược hình thành cách phân định toàn HTN thành thành phần phần c ứng, ph ần mềm, sau thành phần lại phân định đến chi tiết -Phân tích đánh giá kiến trúc: kiến trúc có đạt yêu c ầu, kiến trúc khác với yêu cầu có chất lượng nhau, đánh giá xu hướng r ủi ro hệ th ống, hỏng hóc có thể, hiệu chỉnh -Viết tài liệu: Tài liệu toàn hệ thống theo chuẩn tài liệu, Tài li ệu v ề t ừng cấu trúc, Tài liệu tổng thể kiến trúc hệ thống -Các pha trình thiết kế HTN : Xác định yêu cầu, phân tích, thử nghiệm đánh giá, sản xuất sản phẩm Pha 2,3 lặp lại 2.8 :Thế phân hoạch phần cứng phần mềm thiết kế hệ thống nhúng ?Thế qui trình đồng thiết kế phần cứng phần mềm đồng kiểm nghiệm ? Trả lời : a.Phân hoạch phần cứng phần mềm thiết kế HTN : Là đặc tả, ấn định chức cho phần cứng phần mềm, sau thi ết k ế, mơ hợp b.Qui trình đồng thiết kế phần cứng phần mềm đồng kiểm nghiệm : Trong kĩ thuật này, thiết kế phần cứng phần mềm tiến hành song song, phản hồi-hiệu chỉnh thực liên tục, có kết tốt qua đ ồng kiểm nghiệm Phần cưngs phần mềm chạy máy ảo phần cứng VHDL -> máy ảo, phần mềm máy ảo -> hiệu chỉnh liên t ục -> máy đích 2.9:Hãy đặc tả tác vụ thực khởi động hệ thống ngu ội (cold boot) khởi động nóng (warm boot)?Hãy cho ví dụ cách khởi động với loại CPU tự chọn? Trả lời: Các tác vụ thực 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 vi m ạch, phân vùng 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 RESTART hay START phần mềm hệ thống để chuyển điều khiển cho • Khởi động nóng (waerm boot): CTRL + DEL, bỏ qua số test phần cứng Ví dụ cách khởi động với loại CPU tự chọn: Intel CPU 8085: RESET IP = 0x0000 địa EPROM: khởi động chế độ nối với Console (Keyboard), sau nhảy chương trình khởi động hệ: JMP CLDST (khởi động nguội) địa 0x01F1 2.10:Khi thiết kế HTN cần xây dựng mơ hình tắc (formal model) v ới u cầu đặt Vậy yêu cầu u cầu gì? Trả lời: Xây dựng mơ hình tắc hệ thống với yêu cầu sau đây: -Xác định chức năng: xây dựng tập mối quan hệ tường minh hay không t ường minh liên quan tới đầu vào/đầu thông tin trạng thái bên hệ thống -Xây dựng tập thuộc tính mà thiết kế phải thỏa mãn K ết hợp thu ộc tính tập quan hệ vào/ra, trạng thái hệ thống, xác định lại chức hệ thống -Xây dựng tập số hiệu để đánh giá thiết kế theo tiêu chí: giá thành, lượng, độ tin cậy, tốc độ xử lý, kích thước… -Xây dựng tập khác biệt coi thách thức c thi ết k ế, đ ề gi ải pháp giải -Thực 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 phần mềm để chuyển hóa xác định chức vào mơ hình phần cứng c thi ết k ế thể hình Ko đc bỏ hình vẽ 3.1 Nêu thách thức phải đối mặt thiết kế hệ thống nhúng ? -Khả đáp ứng với kiện bên phải nhanh nhạy, k ịp th ời, t ức kh ả theo thời gian thực -Các tác vụ có đáp ứng ràng buộc thời hạn chót -Thời gian phát lỗi phải ngắn -Khi chạy chu trình vòng lặp điều khiển phần mềm phải có đáp ứng đầu thời hạn -Khi chạy chu trình vòng lặp điều khiển phần mềm phải có đáp ứng đầu thời hạn -Có khả làm việc mơi trường khắc nghiệt -Có giá thành thấp hay hiệu 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ụ lượng thấp, khả sử dụng nguồn pin, ắc quy -Hoạt động tin cậy, chịu lỗi cao -Tin cậy : đáp ứng dịch vụ yêu cầu thời hạn sau thời gian từ t0->t -Độ tin cậy cao đạt ~ 10-9 cố / -Tính sẵn sàng cao : thời gian sửa chữa cố trung bình MTTR, tinh sẵn sàng A=MTTF/(MTTF + MTTR) -An toàn bảo mật -Khả cấp phần mềm dự phòng nâng cấp phần cứng 3.2 :Các tiêu chí phân loại hệ thống nhúng Tại HTN có khác • Hệ thống nhúng hoạt động đâu Hoạt động độc lập : nhận đầu vào từ tác nhân bi điều khiển, xử lý cho đầu ra.Thời gian có đầu (đáp ứng) phải khung thời gian định theo ý đ thiết kế Hoạt động có liên kết với HTN trung tâm kiểm soát khác Loại gọi HTN mạng • Lĩnh vực ứng dụng Cơng cụ tính tốn máy tính để chạy tốn định Xử lý tín hiệu: 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 router, switch Hệ thống điều khiển thu thập liệu • Kiến trúc quy mơ HTN quy mô nhỏ với xác định sau : Phần cứng phức tạp, thiết kế với CPU đơn, loại 4, bits Phần mềm đơn giản, dùng monitor để kiểm sốt hoạt động Cơng cụ phát triển phần mềm : soạn thảo chương trình, hợp ngữ hợp ngữ chéo, môi trường phát triển hợp sử dụng với vi điều khiển chọn Tiêu thụ lượng HTN quy mơ phức tạp 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 thiết bị ngoại vi Phần mềm nhúng tinh vi, có hệ điều hành để thự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 HTN tinh vi Phần cứng phần mềm đặc biệt Nhiều CPU mở rộng, hay CPU cấu hình đ ược hay mảng logic lập trình Phát triển cho lớp ứng dụng ứng dụng loại cần phải có q trình thiết kế đồng thời phần cứng phần mềm, hợp 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 cố, hay tự an toàn HTN đáp ứng 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ế HTN phản ứng với kiện hay phản ứng với kiện có thời hạn 3.2.2 Tại HTN có khác • Phần cứng đơn giản hay phức tạp ứng dụng định :HTN dành để th ực tác vụ riêng biệt Các tác vụ riêng biệt phần l ớn liên quan t ới x lý khác chuyên biệt, kiện, trạng thái qui trình cơng nghệ … • Về phần cứng, HTN thiết kế từ nhiều loại CPU nhúng CPU nhúng thân chúng lại có kiến trúc khác • Phần mềm đơn giản hay phức tạp ứng dụng định:Về phần mềm cở sở từ đơn giản tinh xảo, hệ điều hành thời gian thực (RTOS-Real Time Operating System) 3.3: Hãy nêu khác biệt thiết kế hệ thống nhúng kiểu m ột bo mạch : Trả lời (1)Hệ thống nhúng xây dựng từ vi xử lí (2)Hệ thống nhúng xây dựng từ vi điều khiển (1)Có CPU độc lập (2)CPU dạng lõi chuyên biệt (1)Có RAM, ROM, định thời (2)RAM, ROM, định thời, (1)I/O độc lập (2)I/O vi mạch đơn (1)Khả 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 lượng, giá hợp lí cho ứng dụng nhúng (1)Thiết kế chức (2)Thiết kế chức (1)Cần phải có vi mạch RAM, ROM hợp thành từ bên vi mạch 2)Được thiết kế để có tất Chip (1)Khơng thể kết nối với ngoại vi ngoại vi, cần có thêm vi m ạch h ỗ tr ợ cho ch ức (2)Năng lực tính tốn thiết kế tối ưu cho ứng dụng xác định (1)Tuy nhiên lực tính tốn mạnh (2)Rất phù hợp để xây dựng HTN 3.4 Cho biết tên gọi kiểu kiến trúc ? Kiểu kiến trúc thích hợp để xây dựng hệ thống nhúng (kiểu 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 hai kiến trúc chổ ? Bus kiến trúc Havard tách riêng cho lệnh liệu riêng biệt Bus kiến trúc Von Neumman dùng chung cho lệnh liệu Tại ? -kiến trúc Havard thích hợp Vì : việc dùng tách riêng bus cho lệnh liệu giúp t ốc đ ộ xử lí nhanh h ơn, vi ệc đọc liệu thực xảy đồng thời 3.5 ADC, DAC 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, ví dụ tí hiệu phản hồi, tí hiệu hiệu chỉnh C Để chọn ADC cần thông số bản:Kiểu ADC cho loại ứng d ụng/Th ời gian biến đổi /Độ phân giải/Tín hiệu đối thoại với CPU 3.6:Khi nghiên cứu CPU để thiết kế hệ thống vi xử lí hệ th ống nhúng, có số khái niệm sau A/Một trạng thái máy : định nghĩa thời gian chu kỳ xung đồng hồ hệ thống (CLK) • Một chu kỳ máy: tập hợp số trạng thái máy để CPU hay m ột vi mạch nắm quyền kiểm soát Bus hệ thống, thực xong thao tác bus hệ thống B/ Một chu kỳ lệnh tập chu kỳ máy cần thiết để hoàn thành m ột l ệnh c máy C/Tác động: Tính tốn số CLK, qui đổi thời gian, tối ưu lệnh, tính t th ời gian cho đáp án 3.7:Cho mô hình kiến trúc hệ thống hình vẽ Hãy giải thích chức khối ‘GIAO DIỆN VỚI CPU’, lí có mặt khối ? Các chức : • Các vi mạch khuyếh đại BUS, • Tách địa chỉ/dữ liệu từ BUS dồn kênh CPU, • Tạo BUS hệ thống mở rộng Lý do: Tín hiệu phát sinh từ CPU thường có cơng suất thấp đủ cho m ột s ố t ải danh đ ịnh (fan-out), không đủ để mở rộng BUS, bus dài có nhi ều thi ết b ị n ối với Chính mà hầu hết BUS nối số vi mạch khuy ếch bus (bus driver), vi mạch khuyếch đại tín hiệu số A.Thế BUS đồng ? Có xung đồng hồ hệ thống CLK làm chuẩn cho hoạt động BUS Bus đồng có tín hiệu đường dây BUS clock dạng sóng vng, v ới tần s ố ví dụ, khoảng vài MHz ÷ GHz Mọi hoạt động bus xảy qui chi ếu vào BUS Clock, số nguyên lần chu kỳ gọi chu kỳ bus B.Thế BUS không đồng ? Bus không đồng không sử dụng xung BUS clock, chu kỳ kéo dài tuỳ ý khác cặp thiết bị khác nhau, gọi đối tho ại tu ần t ự b ởi tín hiệu điều khiển Các tín hiệu điều khiển đồng hoạt động hệ thao tác vi mạch chức CPU BUS, ví dụ để “đối thoại” 3.8:Trình điều khiển thiết bị ? Chức trình điều khiển thiết bị ? • Là phần mềm để khởi động phần cứng phần mềm lớp cao 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 tương tác trực tiếp điều khiển phần cứng tổ chức dạng thư viện phần mềm • Khi máy tính có hệ điều hành TĐKTB cầu nối phần cứng hệ ều hành A.Chức trình điều khiển thiết Ghép nối mềm phần mềm hệ thống (hay CPU) hệ thống nguồn tài nguyên phần cứng hệ thống Các chức 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 liệu (Hardware Read/write)Cài 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ị đặt đâu ? Dưới phần mềm hệ thống phần cứng 3.9.Thế trình điều khiển xác định theo kiến trúc • Đi theo kiến trúc (architecture-specific) HTN • Quản trị phần cứng hợp với CPU • Các kiến trúc kiểu microcontroller, hay kiến trúc Havard v ới nh chip, cổng, vi mạch quản trị nhớ (memory management Unit-MMU), phần c ứng dấu phẩy động, ADC/DAC hợp bo mạch, thuộc lớp Thế trình điều khiển tổng quát (hay trình điều khiển bo mạch) Điều khiển thiết bị nằm bo mạch 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 có dùng cung m ột lo ại thi ết b ị tương thích Hãy nêu 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 thao tác trình điều khiển thiết bị 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 liệu, cài/tháo dỡ phần mềm ĐKTB B Thơng tin 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 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ệ ghi, thực thi xử lí, khơi phục ghi, IRET 3.11: Hãy chọn câu trả lời cho nói hệ thời gian thực: Trả lời : - Chọn B : hệ hoạt động có tính tiền định Tính tiền định : Dự đoán trước thời gian phản ứng tiêu lịch, thời gian phản ứng chậm trình tự đưa đáp ứng Ví dụ : điều khiển phải xử lý đồng thời nhiều nhiệm v ụ, ta ph ải tham gia định trình tự thực cơng việc đánh giá thời gian xử lý công việc ->Người sử dụng có sở đánh giá khả đáp ứng tính thời gian thực hệ thống - Chọn C : hệ có khả cho đáp ứng kịp thời xác Các chức phải thực chuẩn xác Các tính tốn, xử lý phải cho k ết chu kì thời gian xác định trước Chính xác v ề thời gian cho phép hệ đưa đáp ứng cách kịp thời Tuy tính xác th ời gian m ột đặc ểm tiêu lịch, hệ thống có tính thời gian thực khơng nh ất thi ết ph ải có đáp ứng thật nhanh mà quan trọng phải có phản ứng kịp thời đối v ới yêu cầu, tác động bên 5.8: Hãy thiết kế module ROM với kiện sau đây: - Dung lượng module 32 KB - Sử dụng chip ROM loại 2732, dung lượng 4KB/chip - Giải địa từ FFFF-8000 - Hãy vẽ sơ đồ thiết kế giải thích nguyên lí hoạt động Bài làm : bước cần thực Dung lượng module ROM cần thiết kế 32KB Chíp 2732 dung lượng 4KB Số lượng chíp cần dùng 32/4=8 chíp Chip ROM dung lượng 4KB/ chip hay 4K x bit ( 4K địa ch ỉ, m ỗi đ ịa ch ỉ có đ ộ dài bit=1 byte) Để truy cập 4K địa cần 12 đường địa (do 212= 4069), từ A11 -> A0 Để truy cập vào chíp chíp cần đường địa : A14, A13, A12 Để xác định vùng địa cần đường địa : A19-> A15 Địa đầu 8000 hex tương ứng 1000 0000 0000 0000 Tính khơng gian địa Sơ đồ thiết kế chi tiết : Giải mã thứ có đầu vào từ A19-A15 32 đâu chọn vùng địa ch ỉ V ới giá tr ị: 00001 , chọn vùng địa yêu cầu (8000-FFFF)hex = 32 K, có đầu cho phép gi ải mã thứ hoạt động Giải mã thứ hai dùng A12- A13-A14 tạo CS/ chọn chip, A11-A0 chọn ô nhớ chip 5.9: Cho trước bảng giá trị để thiết kế nhớ RAM với chip loại 4KB/chip sau đây: Địa đầu/địa cuối (HEX) ? Chi F8000 p F8FFF Chi F9000 p F9FFF Chi FA000p FAFFF Chi FB000 p FBFFF Chi FC000 p -FCFFF Chi FD000 p FDFFF Chi FE000 p FEFFF Chi FF000 p FFFFF 5.10: Cho thiết bị ngoại vi có khả ghép nối với hệ vi xử lí v ới thơng s ố sau đây: Trao đổi liệu vào hệ vi xử lí lần bit, Có thơng báo cho CPU biết qua tín hiệu Strobe (STB) có sẳn liệu để CPU đọc vào : CPU cung cấp hai cổng với địa sau: 300 (hex): cổng để thiết bị thơng báo có liệu sẳn sàng để CPU đọc vào; 301(hex): địa cổng ghép nối thiết bị đặt liệu vào CPU đ ọc d ữ liệu vào a.Hãy chọn giải pháp thiết kế, lên sơ đồ thiết kế ghép nối b.Phát thảo lưu đồ trình điều khiển ghép nối Trả lời: Có thơng báo cho CPU biết qua tín hiệu Strobe (STB) có sẳn d ữ li ệu đ ể CPU đọc vào nên Vào/ra số liệu có điều kiện, điều khiển chương trình.và đ ọc vào có đối thoại Về mặt thực hiện, cần cổng: cổng để đọc trạng thái thiết bị, c để trao đổi liệu vào hay Trạng thái thông thƣờng mức dộ đơn giản cần bit để thể hiện, ví dụ STATUS=1, thiết bị sẳn sàng , ngƣợc lại - Cần CS0/ để đọc trạng thái READY thiết bị qua port_status, giả định n ối vào D0 BUS liệu - Cần CS1/ để đọc liệu qua port_in, hợp thành từ Flip/flop, c 3-state, nối vado bit D0 BUS liệu Các bước thực hiện: - CPU đƣa địa port_status BUS địa chỉ, vào giãi mã, tạo CS0, đọc STATUS, giá tr ị bit READY D0 (IN port_status) - CPU kiểm tra giá trị READY - Nếu READY=0, quay lại đọc STATUS NếuREADY=1, CPU đọc liệu vào ACC (IN port_in) - Thực lệnh cất liệu vào RAM - Lưu đồ điều khiển: 5.11: Cho thiết bị ngoại vi có khả ghép nối với h ệ vi x lí v ới thơng s ố sau đây: -Nhận liệu từ hệ vi xử lí lần bit, -Có thơng báo cho CPU biết qua tín hiệu Strobe (STB) r ằng thi ết b ị s ẳn sàng nhận liệu, để CPU gởi liệu cho thiết bị: CPU cung cấp hai cổng với địa sau: 300 (hex): cổng để thiết bị thông báo sẳn sàng nhận liệu từ CPU; 301(hex): địa cổng để CPU gởi liệu cho thiết bị a Hãy chọn giải pháp thiết kế, lên sơ đồ thiết kế ghép nối b.Phát thảo lưu đồ trình điều khiển ghép nối Trả lời Dựa theo đề : thiết bị ngoại vi nhận liệu từ vi xử lý có thơng báo cho CPU biết thiết bị sẵn sàng để nhận liệu (tức có điều kiện) để CPU g ửi d ữ liệu cho thiết bị Đưa có đối thoại Thiết kế mạch ghép nối đưa tín hiệu có đối thoại : Bộ VXL kiểm tra trạng thái thiết bị ngoại vi Nếu thấy thiết bị ngoại vi s ẵn sàng nhận gửi tín hiệu ghi với địa tương ứng để tạo xung chọn mạch Sườn lên xung nạp số liệu từ BUS vào ghi, sườn xuống đưa tín hi ệu s ố liệu sẵn sàng lên "1" để báo cho thiết bị ngoại vi Sau nhận số liệu, thiết bị ngoại vi sinh tín hiệu ghi nhận để xố tín hiệu số liệu sẵn sàng thi ết l ập tín hi ệu thiết bị ngoại vi sẵn sàng Lúc VXL gửi tín hiệu tiếp sau 5.12 Đây mơ hình nguyên lý hoạt động định thời a.Giải thích cách hoạt động mơ hình ngun lý hoạt động định thời Watchdog thực tái khởi động (reset) hệ thống hay m ột hành đ ộng (x lý), hay kích hoạt xử lý hiệu chỉnh chương trình bị lỗi, khơng tiến triển điều kiện khơng thể đạt khung thời gian d ự tính (chương trình bị treo) Trong hệ thời gian thực, có HTN, watchdog quan trọng, sử dụng để tự động khởi động lại ứng dụng nhúng hay chí hệ thống trạng thái ban đầu mà khơng có can thiệp c người Trong CPU nhúng ta thấy có vài đếm thời gian ( specialized timers) cứng, đặt giá trị khác cho ứng dụng quan trọng, mà khung th ời gian ứng dụng phải kết thúc hay phải đưa đáp ứng, không (khả có bất thường) ứng dụng chó canh chừng khởi động lại từ đầu Các hệ có cài trình gởi rối ghi lại vào lưu trữ đặc biệt để hỗ trợ khác phục cố B.Theo đề bài: Ttask= 40µs Tdeadline = 50 µs Twd= 55µs a.Khi vòng lặp kết thúc bình thường, watchdog timer nạp l ại giá tr ị 55µs cho chu kì b.Khi vòng lặp kết thúc khơng bình thường Tdeadline>55µs ,đầu watchdog timer kích hoạt RESET,khởi động lại hệ thống c.Phác thảo giải thuật logic cho phần mềm: Mỗi tác vụ khac biệt thực thi "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 main loop thực tối đa 50µs.Sau vòng cuối đoạn mã kiểm tra Nếu tất Flags True,khởi động chu kì watchdog mới(55µs),nếu Flags= FALSE,ghi nhận cố đặt tất Flags=FALSE,watchdog không kh ởi đ ộng lại(kick the dog) thời gian 55µs, đầu đếm watchdog kích hoạt RESET hệ thống Đoạn mã if (all flag are OK) { Call(Reset Twd); //Hệ hoạt động bình thƣờng, //đặt giá trị 55 micro giây co watchdog Jmp mainloop; //Trở chu kì mới; } else //nếu thực đoạn code có nghĩa //counter vượt 55 giây ấn định xung đầu RESET CPU { Log eror; //Record failure Reset System; //WD reset CPU } 5.13 Dưới giải thuật với định thời watchdog A Twd>Ttask => Ttask thời gian thực tác vụ vòng lặp Twd thời gian nạp cho chu kì,nếu vòng lặp kết thúc với thời gian lớn Twd đầu watchdog timer kích hoạt RESET,khởi động lại hệ thống D.Một hard deadline nên đáp ứng Nếu hard deadline bị bỏ lỡ hệ thống không Yêu cầu phương pháp để đảm bảo thời hạn đáp ứng Hệ thống thời gian thực cứng hệ thống tất tới hạn khó ví dụ :kiểm sốt nhà máy điện hạt nhân,kiểm soát chuyến bay Cách sử dụng: Khi máy tính phần hệ thống thời gian thực cứng, tất phần mềm chạy điều chỉnh để đáp ứng thời hạn tất hệ thống kiểm sốt E.Một soft deadline bỏ qua hệ thống thời gian thực mềm hệ thống thời gian thực số thời hạn coi nhẹ ví dụ: thiết bị chuyển mạch điện thoại,ứng dụng đa phương tiện 5.14 :Nêu kịch khởi động chạy phần mềm HTN từ ROM, RAM cho liệu Một số HTN có giới hạn nhớ, hệ khởi động trực tiếp từ ROM Trong trường hợp khơng có q trình copy mã lệnh vào RAM để chạy Tuy nhiên không gian cho liệu phải xác định RAM (nhớ lập trình) Có ghi IP (Instruction register)-thanh ghi lệnh, tr ỏ vào l ệnh ti ếp theo thực (.text) SP (Stack Pointer), trỏ vào địa ngăn xếp Ngôn ngữ C sử dụng ngăn xếp để truyền thông số kích hoạt m ột hàm Vùng ngăn xếp phải RAM SP phải trỏ vào khởi động CPU Qui trình khởi động sau: 1) Thanh ghi IP thiết kế cứng để thực lệnh b ộ nh ớ, reset vector 2) Reset vector nhảy tới lệnh phần text mã boot (tức boot image), text thường trú ROM; CPU dùng IP để thực text, khởi động nhớ, kể RAM 3) Phần data boot image copy vào RAM để đọc/ghi 4) Xác lập bss RAM 5) Xác lập ngăn xếp stack RAM, khởi động SP trỏ vào địa đầu stack 6) Hoàn tất khâu khởi động, CPU tiếp tục thực lệnh text cho t ới hệ thống shutdown hay RESET Lưu ý lệnh đầu bước 1) không định dạng chuẩn ELF mà đ ơn giản mã máy nhị phân sẳn sàng chạy Nhưng boot image định dạng ELF (vi ết từ công cụ phát triển) khơng có program header header table, l ưu ý viết mã thực thi cho khởi tạo phần datta, bss, stack RAM ( ví d ụ n ếu dùng hợp ngữ gán nhãn, …) 5.15 :Nêu kịch khởi động chạy phần mềm RAM sau mã copy từ ROM vào RAM Ở kịch này, boot loader chuyển chương trình nhỏ từ ROM vào RAM kích hoạt chạy Thường mã chương trình hệ thống ROM l ớn mà ghi kiểu nén để nạp vừa ROM, nên boot loader phải gỉai nén tr ước kh ởi đ ộng phần mã cần khơng gian nhớ RAM để thực 1) - đến 6) giống Môi trường làm việc cho loader khởi động RAM (3, 4, 5) 7) Loader copy phần mã nén image vào RAM 8) –> 10) Copy phần mã giải nén vào vùng làm việc tạm RAM (8, 9, 10) Hồn tất giải nén image Image RAM hình đoạn Final Boot image 10) … 11) Loader chuyển điều khiển cho image lệnh JMP vào text (nạp cho IP địa trước JMP tới đó) 12) Vùng RAM mà loader chiếm copy từ ROM tái sử dụng, SP tái khởi động để trỏ vào dùng ngăn xếp cho chương trình m ới Vung RAM để giải nén giải phóng để sử dụng khác Hệ thống vào hoạt động 5.16:Nêu kịch khởi động chạy phần mềm RAM sau tải xu ống t h ệ phát triển (đang phát triển hệ thống) Chạy từ RAM sau tải xuống từ hệ phát triển (đang phát triển hệ thống) Là kịch q trình phát triển Mơi tr ường phát tri ển có m ột PC h ổ tr ợ S dụng để phát triển phần mềm ứng dụng cho hệ thống nhúng Phần mềm phát triển nằm PC tải xuống hệ đích để chạy thử hay nạp vào hệ đích pha cuối Trong ROM có chương trình gọi Debug Agent đóng vai trò kép nh loader kịch 1) …6 ) giống trước 7) Tải ứng dụng từ PC vào hệ đích 8) Kiểm tra hợp phần mềm tải xuống 9) Giải nén ứng dụng cần 10) … 12 ) chương trình debug tái định vị ứng dụng vào vị trí RAM (10, 11, 12) 13 ) Debug chuyển điều khiển cho image tải xuống Hệ chạy ... hợp để xây dựng hệ thống nhúng đề cập ? Mơ hình phù hợp với hệ thống đề cập mơ hình (d) 5.1: A.Nêu mơ hình phần mềm hệ thống nhúng ? B.Đặc tả lớp mơ hình phần mềm hệ thống nhúng ? A.Mơ hình phần... Operating System) 3.3: Hãy nêu khác biệt thiết kế hệ thống nhúng kiểu m ột bo mạch : Trả lời (1)Hệ thống nhúng xây dựng từ vi xử lí (2)Hệ thống nhúng xây dựng từ vi điều khiển (1)Có CPU độc lập... đ ể thi ết kế hệ thống nhúng Với ưu điểm kiến trúc Harvard, kiến trúc Harvard thích h ợp h ơn đ ể thi ết kế hệ thống nhúng 4.2 :Nêu (vẽ ) mơ hình tổng qt phần cứng hệ thống nhúng ? B.Nêu chức