Một số nền phần cứng và cơ sở kỹ thuật của phần mềm nhúng

8 211 0
Một số nền phần cứng và cơ sở kỹ thuật của phần mềm nhúng

Đang tải... (xem toàn văn)

Thông tin tài liệu

Một số phần cứng Cơ sở kỹ thuật phần mềm nhúng Một số phần cứng Cơ sở kỹ thuật phần mềm nhúng Bởi: Khoa CNTT ĐHSP KT Hưng Yên Một số phần cứng nhúng thông dụng Trong phần giới thiệu ngắn gọn cấu trúc nguyên lý chip xử lý nhúng ứng dụng phần cứng nhúng Sự phát triển nhanh chóng chủng loại Chip khả trình với mật độ tích hợp cao có tác động đáng kể đến thay đổi việc thiết kế phần cứng thiết bị xử lý điều khiển số thập kỷ gần Mỗi chủng loại có đặc điểm phạm vi đối tượng ứng dụng không ngừng phát triển để đáp ứng cách tốt cho yêu cầu công nghệ Chúng hướng tới tập trung cho thị trường công nghệ tiềm rộng lớn thiết bị xử lý điều khiển nhúng Ở giới thiệu ngắn gọn chủng loại chip xử lý, điều khiển nhúng điển hình tồn phát triển số đặc điểm hướng phạm vi ứng dụng chúng Có thể kể hàng loạt Chíp khả trình sử dụng cho toán thiết kế hệ nhúng họ vi xử lý/vi điều khiển nhúng (Microprocessor/ Microcontroller), Chip DSP (Digital Signal Processing), Chip khả trình trường (FPD – Field Programmable Device) Chúng ta dễ bị choáng ngợp bắt đầu công việc thiết kế việc tìm kiếm Chip xử lý điều khiển phù hợp cho ứng dụng Vì cần phải có hiểu biết phân biệt đặc điểm ứng dụng chúng lựa chọn thiết kế Các thông tin liên quan nhà sản xuất cung cấp Chip, kiến thức công cụ phát triển kèm theo…Một số chủng loại Chip điển hình giới thiệu Chip Vi xử lý/Vi điều khiển nhúng Đây chủng loại điển hình sử dụng phổ biến Chúng đời sử dụng theo phát triển Chip xử lý ứng dụng cho máy tính Vì đối tượng ứng dụng thiết bị nhúng nên cấu trúc thay đổi theo để đáp 1/8 Một số phần cứng Cơ sở kỹ thuật phần mềm nhúng ứng ứng dụng Hiện thấy họ vi xử lý điều khiển nhiều nhà chế tạo cung cấp như, Intel, Atmel, Motorola, Infineon Về cấu trúc, chúng tương tự Chíp xử lý phát triển cho PC mức độ đơn giản nhiều công tài nguyên Phổ biến Chip có độ rộng bus liệu 8bit, 16bit, 32bit Về chất cấu trúc, Chip vi điều khiển chip vi xử lý tích hợp thêm ngoại vi Các ngoại vi thường khối chức ngoại vi thông dụng định thời gian, đếm, chuyển đổi A/D, giao diện song song, nối tiếp…Mức độ tích hợp ngoại vi khác tuỳ thuộc vào mục đích ứng dụng tìm Chip phù hợp Thực tế với ứng dụng yêu cầu độ tích hợp cao sử dụng giải pháp tích hợp chip, không hầu hết Chip cung cấp giải pháp để mở rộng ngoại vi đáp ứng cho số lượng ứng dụng rộng mềm dẻo Kiến trúc nguyên lý VĐK với cấu trúc Havard Kiến trúc họ VĐK AVR Chip DSP DSP biết tới loại vi điều khiển đặc biệt với khả xử lý nhanh để phục vụ toán yêu cầu khối lượng tốc độ xử lý tính toán lớn Với ưu điểm 2/8 Một số phần cứng Cơ sở kỹ thuật phần mềm nhúng bật độ rộng băng thông bus ghi tích luỹ, cho phép ALU xử lý song song với tốc độ đọc xử lý lệnh nhanh loại vi điều khiển thông thường Chip DSP cho phép thực nhiều lệnh nhịp nhờ vào kiến trúc nhớ Havard Thông thường phải sử dụng DSP tức để đáp ứng toán tính toán lớn tốc độ cao định dạng biểu diễn toán học yếu tố quan trọng để phân loại quan tâm Hiện chủ yếu chúng phân loại theo hai kiểu dấu phảy động dấu phảy tĩnh Đây yếu tố quan trọng phải quan tâm người thiết kế để lựa chọn DSP phù hợp với ứng dụng Các loại DSP dấu phảy tĩnh thường loại 16bit 24bit loại dấu phảy tĩnh thường 32bit Một ví dụ điển hình DSP 16bit dấu phảy tĩnh TMS320C55x, lưu số nguyên 16bit số thực miền giá trị cố định Tuy nhiên giá trị hệ số trung gian lưu trữ với độ xác 32bit ghi tích luỹ 40bit nhằm giảm thiểu lỗi tính toán phép làm tròn trính tính toán Thông thường loại DSP dấu phảy tĩnh có giá thành rẻ loại DSP dấu phảy động yêu cầu số lượng chân Onchip cần sử dụng lượng silicon Ưu điểm bật DSP dấu phảy động xử lý biểu diễn số dải phạm vi giá trị rộng động Do vấn đề chuyển đổi hạn chế phạm vi biểu diễn số quan tâm loại DSP dấu phảy tĩnh Một loại DSP 32bit dấu phảy tĩnh điển hình TMS320C67x xử lý biểu diễn số gồm 24bit mantissa 8bit exponent Phần mantissa biểu diễn phần số lẻ phạm vi -1.0 → +1.0 phần exponent biểu diễn vị trí dấu phảy nhị phân dịch chuyển sang trái phải tuỳ theo giá trị số mà biểu diễn Điều trái ngược với thiết kế DSP dấu phảy tĩnh, người phát triển chương trình phải tự qui ước, tính toán phân chia ấn định thang biểu diễn số phải lưu tâm tới khả tràn số xảy trình xử lý tính toán Chính điều gây khó khăn không nhỏ người lập trình Nói chung phát triển chương trình cho DSP dấu phảy động thường đơn giản giá thành lại cao nhiều lượng tiêu thụ thông thường lớn Ví dụ độ xác DSP dấu phảy động 32 bit 2−23 với 24 bit biểu diễn phần mantissa Vùng động (1.18 ×10−38 ≤ x ≤ 3.4 × 1038) Những nhà thiết kế hệ thống phải định vùng độ xác cần thiết cho ứng dụng Các vi xử lý dấu phảy động thường sử dụng cho ứng dụng yêu cầu độ xác cao dải biểu diễn số lớn phù hợp với hệ thống có cấu trúc nhớ lớn Hơn DSP dấu phảy động cho phép phát triển phần mềm hiệu đơn giản trình biên dịch ngôn ngữ bậc cao C giảm giá thành thời gian phát triển Tuy nhiên giá thành lại cao nên DSP dấu phảy động phù hợp với ứng dụng đặc biệt thường với số lượng 3/8 Một số phần cứng Cơ sở kỹ thuật phần mềm nhúng Cơ sở kỹ thuật phần mềm nhúng Phần mềm nhúng gì? Phần mềm nhúng chương trình viết, biên dịch máy tính nạp vào hệ thống khác (gọi tắt KIT) bao gồm nhiều vi xử lý cài sẵn hệ điều hành, nhớ ghi chép được, cổng giao tiếp với phần cứng khác… Phần mềm nhúng phần mềm tạo nên phần hồn, phần trí tuệ sản phẩm nhúng Phần mềm nhúng ngày có tỷ lệ giá trị cao giá trị sản phẩm nhúng Hiện phần lớn phần mềm nhúng nằm sản phẩm truyền thông sản phẩm điện tử tiêu dùng (consumer electronics), tiếp đến sản phẩm ô tô, phương tiện vận chuyển, máy móc thiết bị y tế, thiết bị lượng, thiết bị cảnh báo bảo vệ sản phẩm đo điều khiển Để tồn phát triển, sản phẩm công nghiệp tiêu dùng cần phải thường xuyên đổi ngày có nhiều chức tiện dụng thông minh Các chức phần lớn chương trình nhúng tạo nên Phần mềm nhúng lĩnh vực công nghệ then chốt cho phát triển kinh tế nhiều quốc gia giới Nhật Bản, Hàn Quốc, Phần Lan Trung quốc Tại Mỹ có nhiều chương trình hỗ trợ Nhà nước để phát triển hệ thống phần mềm nhúng Hàn Quốc có dự án lớn nhằm phát triển công nghệ phần mềm nhúng thiết bị gia dụng nối mạng Internet, hệ thống phần mềm nhúng cho phát triển thành phố thông minh, dự án phát triển ngành công nghiệp phần mềm nhúng, trung tâm hỗ trợ ngành công nghiệp hậu PC Thụy Điển coi phát triển hệ nhúng có tầm quan trọng chiến lược cho phát triển đất nước Phần Lan có sách quốc gia tích cực cho nghiên cứu phát triển hệ nhúng đặc biệt phần mềm nhúng Những quốc gia thành lập nhiều viện nghiên cứu trung tâm phát triển hệ nhúng Đặc điểm phần mềm nhúng Hiện phần mềm nhúng có số đặc điểm sau bật: • Phần mềm nhúng phát triển theo hướng chức hóa đặc thù • Hạn chế tài nguyên nhớ • Yêu cầu thời gian thực 4/8 Một số phần cứng Cơ sở kỹ thuật phần mềm nhúng Quy trình phát triển phần mềm nhúng Quá trình biên dịch phát triển phần mềm nhúng • Quá trình biên dịch (Computing): Nhiệm vụ biên dịch chuyển đổi chương trình viết ngôn ngữ thân thiện với người ví dụ C, C++,…thành tập mã lệnh tương đương đọc hiểu vi xử lý đích Theo cách hiểu chất hợp ngữ biên dịch để chuyển đổi - từ dòng lệnh hợp ngữ thành dạng mã lệnh tương đương cho vi xử lý hiểu thực thi Chính người ta nhầm hiểu khái niệm hợp ngữ biên dịch Tuy nhiên việc biên dịch hợp ngữ thực thi đơn giản nhiều so với biên dịch cho mã nguồn viết ngôn ngữ bậc cao khác Mỗi xử lý thường có riêng ngôn ngữ máy cần phải chọn lựa biên dịch phù hợp để chuyển đổi xác thành dạng mã máy tương ứng với xử lý đích Đối với hệ thống nhúng, biên dịch chương trình ứng dụng thực thi máy chủ (môi trường phát triển chương trình) có tên gọi biên dịch chéo (cross - compiler) Vì biên dịch chạy phần cứng để tạo mã chương trình chạy môi trường phần cứng khác Việc sử dụng biên dịch chéo thành phần thiếu trình phát triển phần mềm cho hệ nhúng Các biên dịch chéo thường cấu hình để thực thi việc chuyển đổi cho nhiều phần cứng khác cách linh hoạt Và việc lựa chọn cấu hình biên dịch tương ứng với phần cứng độc lập với chương trình ứng dụng biên dịch Kết trình biên dịch nhận dạng mã lệnh biết tới với tên gọi tệp đối tượng (object file) Nội dung tệp đối tượng xem cấu trúc liệu trung gian thường định nghĩa định dạng chuẩn COFF (Common Object File Format) hay định dạng liên kết mở rộng ELF (Extended Linker Format)… Nếu sử dụng nhiều biên dịch cho modul mã 5/8 Một số phần cứng Cơ sở kỹ thuật phần mềm nhúng nguồn chương trình lớn cần phải đảm bảo tệp đối tượng tạo phải có chung kiểu định dạng Hầu hết nội dung tệp đối tượng bắt đầu phần header để mô tả phần theo sau Mỗi phần chứa nhiều khối mã liệu sử dụng tệp mã nguồn Tuy nhiên khối nhóm lại biên dịch vào phần liên quan Ví dụ tất khối mã nhóm lại vào phần gọi text, biến toàn cục khởi tạo (cùng giá trị khởi tạo chúng) vào phần liệu, biến toàn cục chưa khởi tạo vào phần bss Cũng phổ biến thường có bảng biểu tượng chứa nội dung tệp đối tượng Nó chứa tên địa tất biến hàm tham chiếu tệp mã nguồn Các phần chứa bảng lúc đầy đủ có số biến hàm định nghĩa chứa tệp mã nguồn khác Chính cần phải có liên kết để thực thi xử lý vấn đề • Quá trình liên kết (Linking): Tất tệp đối tượng nhận sau bước thực biên dịch phải tổ hợp lại theo cách đặc biệt trước nạp chạy môi trường phần cứng đích Như thấy trên, thân tệp đối tượng chưa hoàn thiện liên kết phải xử lý để tổ hợp tệp đối tượng với hoàn thiện nốt phần khuyết cho biến hàm tham chiếu liên thông tệp mã nguồn biên dịch độc lập Kết đầu liên kết tệp đối tượng có chứa tất mã liệu tệp mã nguồn kiểu định dạng tệp Nó thực thi điều cách tổ hợp cách tương ứng phần text, liệu phần bss …từ tệp đầu vào tạo tệp đối tượng theo định dạng mã máy thống Trong qúa trình liên kết thực tổ hợp phần nội dung tương ứng thực thêm vấn đề hoàn chỉnh địa tham chiếu biến hàm chưa đầy đủ bước thực biên dịch Các liên kết kích hoạt thực độc lập với biên dịch tệp đối tượng tạo biên dịch coi tham biến vào Đối với ứng dụng nhúng thường chứa phần mã khởi tạo biên dịch phải gộp danh sách tham biến vào Nếu biểu tượng khai báo lần nằm tệp đối tượng liên kết xử lý Nó kích hoạt chế báo lỗi để người phát triển chương trình xem xét lại Hoặc biểu tượng tìm địa tham chiếu thực toàn tệp đối tượng liên kết cố gắng tự giải theo khả 6/8 Một số phần cứng Cơ sở kỹ thuật phần mềm nhúng cho phép dựa vào thông tin ví dụ chứa phần mô tả thư viện chuẩn Điều thường gặp với trường hợp hàm tham chiếu chương trình Rất đáng tiếc hàm thư viện chuẩn thường yêu cầu vài thay đổi trước sử dụng chương trình ứng dụng nhúng Vấn đề thư viện chuẩn cung cấp cho công cụ phát triển dừng đến khả định dạng tạo tệp đối tượng Hơn truy nhập vào mã nguồn thư viện chuẩn để tự thay đổi Hiện có số nhà cung cấp dịch vụ phần mềm hỗ trợ công cụ chuyển đổi hay thay đổi thư viện C chuẩn để ứng dụng cho ứng dụng nhúng, ví dụ Cygnus Gói phần mềm gọi newlib cung cấp miễn phí Chúng ta tải trang web Cygnus Nó hỗ trợ giải vấn đề mà liên kết gặp phải chương trình sử dụng hàm thuộc thư viện C chuẩn Sau hợp thành công tất thành phần mã phần liệu tương ứng vấn đề tham chiếu tới biểu tượng chưa thực thi trình biên dịch đơn lẻ, liên kết tạo đặc biệt chương trình có khả định vị lại (relocatable) Hay nói cách khác, chương trình hoàn thiện ngoại trừ điều: Không có địa nhớ chưa gán bên phần mã liệu Nếu phát triển phần mềm cho hệ nhúng trình biên dịch kết thúc Tuy nhiên, với hệ nhúng hệ thống nhúng bao gồm hệ điều hành cần phải có mã chương trình (image) nhị phân định vị tuyệt đối Thực tế có hệ điều hành phần mã liệu thường gộp vào bên chương trình có khả định vị lại Toàn ứng dụng nhúng bao gồm hệ điều hành thường liên kết tĩnh với thực mã chương trình nhị phân thống • Quá trình định vị (Locating) Công cụ thực việc chuyển đổi chương trình có khả định vị lại thành dạng mã chương trình nhị phân thực thi gọi định vị Nó đảm nhiệm vai trò bước đơn giản bước thực thi biên dịch nói chung Thực tế phải tự làm hầu hết công việc bước cách cung cấp thông tin nhớ cấu hình phần cứng mà phát triển tham số đầu vào cho việc thực thi định vị Bộ định vị sử dụng thông tin để gán địa vật lý cho phần mã lệnh liệu bên chương trình thực thi mà định vị lại Tiếp theo tạo tệp có chứa chương trình nhớ nhị phân để nạp trực tiếp vào nhớ chương trình phần cứng thực thi Trong nhiều trường hợp định vị chương trình độc lập với phần công cụ khác hệ thống phần mềm phát triển Tuy nhiên công cụ phát triển 7/8 Một số phần cứng Cơ sở kỹ thuật phần mềm nhúng GNU chức tích hợp liên kết Tuy nhiên không nên nhầm lẫn chức chúng trình thực thi biên dịch Thông thường chương trình chạy máy tính mục đích chung hệ điều hành thực việc chuyển đổi gán xác địa thực cho phần mã liệu chương trình ứng dụng, với chương trình phát triển chạy hệ nhúng việc phải thực định vị Đây điểm khác biệt thực biên dịch chương trình ứng dụng cho hệ nhúng Thông tin nhớ vật lý hệ thống phần cứng phát triển mà cần phải cung cấp cho định vị GNU phải định dạng theo kiểu biểu diễn liên kết Thông tin sử dụng để điều khiển cách xác thứ tự phần mã chương trình liệu bên chương trình định vị lại Nhưng cần phải thực nhiều thế, tức phải thiết lập xác khu vực phần nhớ 8/8 ... biệt thường với số lượng 3/8 Một số phần cứng Cơ sở kỹ thuật phần mềm nhúng Cơ sở kỹ thuật phần mềm nhúng Phần mềm nhúng gì? Phần mềm nhúng chương trình viết, biên dịch máy tính nạp vào hệ thống... tiếp với phần cứng khác… Phần mềm nhúng phần mềm tạo nên phần hồn, phần trí tuệ sản phẩm nhúng Phần mềm nhúng ngày có tỷ lệ giá trị cao giá trị sản phẩm nhúng Hiện phần lớn phần mềm nhúng nằm... nguyên nhớ • Yêu cầu thời gian thực 4/8 Một số phần cứng Cơ sở kỹ thuật phần mềm nhúng Quy trình phát triển phần mềm nhúng Quá trình biên dịch phát triển phần mềm nhúng • Quá trình biên dịch (Computing):

Ngày đăng: 31/12/2015, 10:52

Từ khóa liên quan

Mục lục

  • Một số nền phần cứng và Cơ sở kỹ thuật của phần mềm nhúng

  • Một số nền phần cứng nhúng thông dụng

    • Chip Vi xử lý/Vi điều khiển nhúng

    • Chip DSP

    • Cơ sở kỹ thuật của phần mềm nhúng

      • Phần mềm nhúng là gì?

      • Đặc điểm của phần mềm nhúng

      • Quy trình phát triển của phần mềm nhúng

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan