1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Nghiên cứu và xây dựng bộ công cụ phát triển phần mềm nhúng E-Studio, phần mềm Bare Project

40 617 0
Tài liệu đã được kiểm tra trùng lặp

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

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Nghiên Cứu Và Xây Dựng Bộ Công Cụ Phát Triển Phần Mềm Nhúng E-Studio, Phần Mềm Bare Project
Trường học Trường Đại Học Khoa Học Tự Nhiên
Chuyên ngành Kỹ Thuật Phần Mềm
Thể loại Báo Cáo Khóa Luận Tốt Nghiệp
Thành phố Hồ Chí Minh
Định dạng
Số trang 40
Dung lượng 4,43 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Giới thiệu; Eclipse và kiến trúc plug-in trong Eclipse; kiến trúc vi xử lý ARM; xây dựng hệ thống ARMStudio cho các vi xử lý họ ARM

Trang 1

BÁO CÁO KHÓA LUẬN TỐT NGHIỆP

NGHIÊN CỨU VÀ XÂY DỰNG BỘ CÔNG CỤ

PHÁT TRIỂN PHẦN MỀM NHÚNG

E-STUDIO, PHẦN BARE PROJECT

Trang 4

• Môi trường debug chậm và khó sử dụng

Hills… không miễn phí

Trang 7

• Java IDE

Trang 8

Plug-in: tập hợp các chức năng

– Đơn vị nhỏ nhất của Eclipse

– Ví dụ plug-in lớn: HTML editor

– Ví dụ plug-in nhỏ: Action để tạo file zip

Extension point: thực thể được đặt tên đại diện

cho tập hợp các chức năng

– Extension point là 1 cơ chế cho phép 1 plug-in có thể

thêm các chức năng từ 1 plug-in khác.

– Ví dụ: extension point cho giao diện người dùng

workbench

Extension: một chức năng

– Ví dụ: các chức năng của HTML editor

Trang 10

• Vi xử lý 32 bit, kiến trúc RISC

• Kích thước nhỏ, tiêu thụ năng lượng ít

• Hỗ trợ Debug tốt cho thiết kế hệ thống System on Chip

• Gồm các vi xử lí: ARM7TDMI-S, ARM7TDMI, ARM7EJ-S

• Lĩnh vực ứng dụng

• Công nghiệp : đồng hồ năng lượng, bộ ngắt mạch, UPS, tự động hóa nhà máy

• Đầu đọc thẻ, máy ATM, máy tính tiền, máy bán hàng

• Tiêu dùng : đồ chơi điện tử, thiết bị cầm tay, GPS, MP3 Player, máy thu phát cầm tay

• Nhúng : USB controllers, HDD controllers, Bluetooth controllers, Networking/WiFi , máy quét y khoa

Trang 11

• Vi xử lý 32 bit, kiến trúc ARMv5TE

phức tạp, tiết kiệm năng lượng

• Tiêu dùng : Smartphones, PDA, Set top box, đồ chơi điện tử, máy quay phim kĩ thuật số.

Mạng : Wireless LAN, 802.11, Bluetooth, SCSI, 2.5G/3G, Baseband

Xe hơi : Power train, ABS, Body systems, Navigation, Infotainment.

Nhúng : USB controllers, Bluetooth controllers, máy quét y khoa

Lưu trữ : HDD controllers, ổ cứng trạng thái rắn (solid state drive)

Trang 13

• ARMStudio là môi trường phát triển tích hợp (IDE) hỗ trợ phát triển các chương trình C/C++ chạy trên chip họ

ARM7, ARM9

Trang 14

• Hệ thống giao diện cải tiến

• Hệ thống gỡ lỗi

• Hệ thống ARMStudio chạy trên Linux

• Hỗ trợ đa ngôn ngữ

Trang 15

• Hệ thống ARMStudio sử dụng bộ cài đặt GNUARM Toolchain

• GNUARM Toolchain gồm: GNU binutils, GCC, Debugger (Insight cho Window và Linux, GDB cho MacOS), Newlib

Trang 16

• Toolchain là một chuỗi các tool được kết nối với nhau theo thứ tự

và output của tool này có thể là input của tool khác

• Ví dụ: trình biên dịch nhận các tập tin nguồn C++ (*.cpp), biên dịch thành các tập tin object (*.obj) và tất cả tập tin object là input của trình liên kết để tạo ra tập tin thực thi (*.exe)

• Hệ thống quản lý biên dịch của CDT được thiết kế có thể mở rộng

để người dùng có thể định nghĩa các bộ biên dịch bằng cách kết hợp tool, định nghĩa các cấu hình, projectType…

• Dựa vào các tool của bộ cài đặt GNUARM, ARMStudio xây dựng 2

bộ cấu hình Toolchain:

• “Windows GNUARM” cho ARMStudio chạy trên nền Window

• “Linux GNUARM” cho ARMStudio chạy trên nền Linux

Trang 17

Hệ thống giao diện trong ARMStudio gồm có:

• Giao diện người dùng được cải tiến:

• Template project cho các vi xử lý ARM7, ARM9

• Giao diện cấu hình thông tin chip (*.s và *.ld)

• New Project Wizard

• Giao diện Debug

Trang 18

• Template Project trong ARMStudio sử dụng “Project

Template Engine” do CDT cung cấp

• Cơ chế “Project Template Engine” cho phép người dùng thêm các project mẫu vào New Project Wizard để tạo ra các project có sẵn tập tin mã nguồn và cấu hình.

• Hai bước tạo ra Template Project

• Bước 1: Tạo tập tin Template.xml theo cấu trúc do CDT quy định

• Bước 2: Đăng ký tập tin Template.xml với Eclipse

Trang 19

ARMStudio xây dựng các template mẫu

phong phú, giúp

người dùng không cần quan tâm đến cấu hình thông tin biên dịch và thông tin chip mà vẫn xây

dựng được chương trình

Trang 20

• Mở rộng thông tin cấu hình bộ nhớ

• Cấu hình chiều dài vùng nhớ ROM, RAM

• Kiểm tra dữ liệu cấu hình do người dùng nhập vào

• Phân biệt được template của mỗi loại vi xử lý được tạo để từ đó

có cảnh báo thích hợp khi người dùng cấu hình vùng nhớ

• Hỗ trợ cấu hình đầy đủ các thông số và kiểm tra dữ liệu nguời dùng nhập vào chặt chẽ hơn so với hệ thống cũ

• Giao diện cấu hình được trình bày dưới dạng cây với sự kết hợp

đa dạng các control: combo box, check box, textbox

Trang 22

• Trong New Project Wizard, người dùng chỉ cần chọn vi xử lý cần thiết, ARMStdio sẽ tự động tạo và phát sinh project với các cấu hình thích hợp tương ứng

• Ngoài ra, có thể cấu hình địa chỉ bộ nhớ ROM, RAM, Heap size, ROM size và RAM size lúc tạo mới project

Trang 23

• Hệ thống giao diện debug trong ARMStudio gồm 2 phần

chính:

• Giao diện cấu hình debug.

• Giao diện điều khiển, xem kết quả trong quá trình debug

thông tin trước khi phiên debug diễn ra Các thông tin liên

quan tới project, tập tin thực thi, debugger, debug server,

target…

cho phép người dùng điều khiển, xem kết quả hiển thị khi quá

breakpoint, debug, diassembly, register…

Trang 24

Giao diện cấu hình Debug Server Giao diện điều khiển quá trình Debug

Trang 25

• Hệ thống Debug trong ARMStudio được xây dựng trên cơ sở kế thừa từ CDT Debugger

Trang 26

CDI là giao diện lập trình ứng

dụng Java bao gồm các lớp và

interface thực hiện các chức năng

truy xuất tới CDT debug

framework Một plugin sử dụng

CDI có thể thêm mới một trình gỡ

lỗi vào quy trình xử lý và hiển thị

kết quả gỡ lỗi trên Eclipse/CDT

Trang 27

GDBCDIDebugger2 ICDISession

OutputStream

in_cmdQueue

ghi lệnh ghi lệnh

Trang 28

step, resume, continue…

ViewContent Provider

cung cấp nội dung

ICDIEvents

CDebugTarge

t

Trang 29

• Hệ thống gỡ lỗi trong ARMStudio hoạt động theo cơ chế Remote Debugging

dụng được gỡ lỗi chạy trên các vi xử lý khác nhau, phần vật lý và logic tách biệt với nhau, giao tiếp thông qua

• IDE

• GDB

• Debug Server

• Debug Stub

Trang 30

số từ DB Server

Phát sinh giao diện từ các tham số

Danh sách các tham số

Gõ lệnh

Gởi lệnh

Nhận lệnh và thực thi

Lắng nghe

Gọi thực hiện các phương thức

Tác động lên Board/Simulator

Nhận trả lời

từ DLL

Nhận kết quả trả lời từ DB Server Show kết quả

Start, thiết lập tham số

Trang 31

• Hệ thống biên dịch

Trang 32

• Hệ thống biên dịch ARMStudio trên Linux bao gồm bộ cấu hình toolchain “Linux GNUARM” , Project Type “ARM Linux Application” và GNUARM toolchain cho Linux

• Toolchain “Linux GNUARM” được kế thừa từ hệ thông quản

lý biên dịch của CDT và kết hợp danh sách các tool để tạo

ra tập tin thực thi.

• GNUARM toolchain cho Linux: ARMStudio sử dụng

GNUARM toolchain cho Linux 32 bit của tổ chức Sourcery

Trang 34

Giao diện cấu hình thông tin

chip trên Linux

Project Template trên Linux

Trang 35

• Flash Magic là phần mềm của hãng NXP dùng để nạp chương trình lên board sử dụng cổng COM Tuy nhiên, Flash Magic chỉ chạy được trên môi trường Window

• Để có thể chạy Flash Magic trên môi trường Linux cần cài đặt Wine để giả lập môi trường Window trên Linux

Trang 36

• Về cơ chế, hệ thống debug Linux không có sự khác biệt so với

hệ thống debug trên Windows Java với tính chất “code one, run any where” cho phép sử dụng lại các gói, các lớp một

cách dễ dàng Chỉ cần thêm một số hàm/lớp để phân tích,

chuyển đổi đường dẫn cho phù hợp với môi trường hệ điều hành, ta có thể tái dựng lại cơ chế hoạt động của hệ thống debug đã có trên Windows trên nền Linux một cách dễ dàng

giao diện chính:

– Giao diện cấu hình debug.

– Giao diện điều khiển, xem kết quả trong quá trình debug

Trang 37

• “Quốc tế hóa” (internationalize) là một quy trình tạo ra phần mềm cho thị trường toàn cầu Ngoài các lợi ích về kinh tế, một số quốc gia đòi hỏi sản phẩm phải đạt một

số tiêu chuẩn nhất định để có thể lưu hành trong thị

trường

ra một sản phẩm cho dù có mang tính thương mại hay không

nền Window và Linux

Trang 38

Window

Trang 40

Xin chân thành cám ơn sự quan tâm theo

dõi của anh Nguyễn Long Thịnh

Ngày đăng: 19/03/2013, 15:03

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w