1
Chương I: Tổng quan sự phát triển ứng dụng hệ
thống nhúng
1.1 Ứng dụng và phát triển hệ thống nhúng
Hệ thống nhúng ñược dựa trên vi xử lý nhúng là phương thức kỹ thuật mới trong kỹ
thuật công nghệ thông tin. Bộ xử lý chuỗi ARM là sản phẩm từ bộ máy RISC tiên tiến.
Bản chất ARM hiện tại bao gồm ARM 7TDMI, ARM 720T, ARM 9TD MI, ARM
920T, ARM 970T, ARM 946T, ARM 966T VÀ Xscale,ect… Ltd ARM gần ñây ñã bỏ 4
bộ vi xử lý ARM11( ARM 1156T2, ARM 1156T2F-S, ARM 1176T2 và ARM 11TZF-
S). Chip ARM ñược nâng cấp bởi nhiều hệ thống thời gian thực từ các nhà cung cấp
như: Windows CE, UC Linux, VX works, Nucleus, EPOC…
1.2 Tổng quan môi trường phát triển nhúng cho ARM
1.2.1 Môi trường phát triển chéo( Cross)
Phát triển chéo nghĩa là phần mềm biên dịch và biên soạn trên máy tính ña năng
và sau ñó tải phần mềm tới thiết bị nhúng và gỡ rối nó trên cả chủ và ñối tượng.Máy
tính ña năng ñược gọi là chủ.Thiết bị nhúng ñược gọi là ñối tượng.Môi trường phát triển
chéo bao gồm phần mềm phát triển chéo chạy trên máy tính chủ và kênh gỡ rối từ chủ
tới ñối tượng.Có 3 loại kênh gỡ rối từ chủ tới ñối tượng.
1.JTAG dựa trên ICD:
JTAG dựa trên ICD ( In- Circuit Debugger- Gỡ rối trong mạch ñiện) ñược gọi là bộ mô
phỏng JTAG. Bộ mô phỏng JTAG kết nối tới ñối tượng thông qua giao diện JTAG của
bộ xử lý ARM và kết nối tới ñối tượng thông qua giao diện JTAG của bộ xử lý ARM và
kết nối với chủ thông qua cổng serial( nối tiếp), cổng mạng hoặc cổng USB. Bộ mô
phỏng JTAG có chức năng sau:
• Thanh ghi: ðọc/ ghi CPU, ñiều khiểnlõi bộ xử lý
• Bộ nhớ ñọc/ ghi
• Thăm: Hệ thống ASIC
• Thăm; Hệ thống I/O( vào/ra)
• Chương trình thực hiện bước ñơn và chương trình thực hiện thời gian thực.
• Cài ñặt ñiểm ngắt: Bộ mô phỏng JTAG là phương thức gỡ rối ñược sử
dụng rộng rãi nhất
2.Phần mềm gỡ rối góc:
2
Phần mềm giám sát gỡ rối góc là một nhóm chương trình phần mềm chạy tại bảng
mạch ñích. Nó nhận lệnh gỡ rối từ chủ tới ñiểm ngắt, chương trình thực hiện bước ñơn,
bộ nhớ ñọc/ghi… Phần mềm góc rẻ và không cần bất cứ bộ mô phỏng gỡ rối phần cứng
nào khác. Nhược ñiểm của phần mềm này là nó chỉ có thể ñược sử dụng sau khi phần
cứng ở trạng thái ổn ñịnh.
3.Mô phỏng mạch ñiện ( ICE) là một thiết bị mô phỏng CPU
ICE có thể mô phỏng hoàn toàn 1 ñối tượng CPU như là bộ xử lý ARM và cung cấp
những chức năng gỡ rối sâu hơn. Cổng nối tiếp, cổng mạng và cổng USB cũng là kênh
liên lạc của ICE. ICE có thể mô phỏng bộ xử lý ARM tốc ñộ cao.Nó hiếm khi ñược sử
dụng trong phát triển phần mềm.
1.2.2 Bộ mô phỏng phần mềm:
Bộ mô phỏng phần mềm có thể mô phỏng một phần phần cứng ñối tượng. Thông
thường nó là một cấu trúc mô phỏng .Bộ mô phỏng phần mềm chỉ có thể ñược sử dụng
như một công cụ gỡ rối ñầu tiên bởi vì chức năng của nó bị giới hạn và không thể mô
phỏng hoàn toàn phần cứng thực.
1.2.3 Bảng ñánh giá:
Bảng ñánh giá cũng ñược gọi là một bảng phát triển.Nó có ích với người lập trình
viên.Những kỹ sư có kinh nghiệm cũng có thể làm bảng phát triển thuộc sở hữu của
chính họ. Một bảng phát triển tốt khi có tài liệu hoàn chỉnh, phần cứng, những cài ñặt
phần mềm, lược ñồ, chương trình mẫu, mã nguồn…dành cho mẫu ( ñiểm chuẩn) phát
triển.
1.2.4 Hệ thống hoạt ñộng nhúng:
Hệ thống hoạt ñộng thời gian thực nhúng ( RTOS) cung cấp quản lý bộ nhớ, quản lý
công việc và quản lý tài nguyên. RTOS có thể lưu trữ nhiều vấn ñề trong những ứng
dụng phức tạp.Nhưng nếu ứng dụng không phức tạp thì hệ thống nhúng có thể chạy mà
không cần hệ thống hoạt ñộng thời gian thực.
1.3 Tổng quan hệ thống phát triển ARM:
1.3.1 ARM SDT
ARM SDT ñược gọi là công cụ phát triển phần mềm ARM ñược tạo ra ARM Ltd.
Phiên bản cuối cùng là 2.5.2.Những bộ xử lý ARM cao nhất mà nó có thể hỗ trợ là
chuỗi ARM9.ARM Ltd sẽ không tiếp tục ARM SDK trong tương lai. Giao diện người
dùng của ARM SDK ñược trình bày ở hình 1.1 và hình 1.2
3
Hình 1.1 - Quản lý dự án ARM
Hình 1.2 - Cửa sổ ADW
1.3.2 ARM ADS
ADS là ứng dụng phát triển ARM. ADS ñang ñược sử dụng thay cho ARM SDK.Phiên
bản cuối cùng của ADS là 1.2. ARM ADS hỗ trợ tất cả những bộ xử lý nối tiếp ARM.
Nó ñược hỗ trợ bởi Windows 2000/ Me, RedHat Linux, ect.
4
ARM ADS bao gồm 6 phần:
+ Code generation Tools
+ Code Warrior IDE
+ Debugger ( gỡ rối) ( ADS và ARMSD)
+ Cấu trúc mô phỏng cài ñặt
+ Dãy vi chương trình ARM và thư viện ứng dụng ARM
Giao diện CodeWarrior ñược trình bày ở hình 1.3
Giao diện ADS ñược biểu diễn ở hình 1.4
Hình 1.3 Cửa sổ mã nguồn
5
Hình 1.4 Cửa sổ ADS
1.3.3 Multi 2000:
Multi 2000 ñược phát triển bởi Green Hills.Multi 2000 hỗ trợ C/C++, Embedded C++,
Ada95 và Fortan ngôn ngữ chương trình. Nó có thể chạy trên Window và Unix và hỗ
trợ gỡ rối từ xa. Multi 2000 hỗ trợ 16 bit khác nhau, 32 bit và 64 bit CPUs và DSPs cụ
thể là: Power Sparc, Trico và SH- DSP… Multi 2000 cũng hỗ trợ Project Builder( xây
dựng dự án) ( Hình 1.6), Source- Level Debugger( Gỡ rối mức nguồn) ( Hình 1.7),
Event Analyzer ( Bộ phân tích sự kiện) ( Hình 1.8), Perfomance Profiler( Công suất
máy phay) ( Hình 1.9), Run time Error Checking( Kiểm tra lỗi thời gian chạy thực) ,
Graphic Browser ( Trình duyệt ñồ họa) ( Hình 1.10), Text Editor and Version Control
System( Hệ thống ñiều khiển thiết kế và soạn thảo văn bản)
1.3.4 Embest IDE cho ARM
Embest IDE ñược gọi là môi trường phát triển tích hợp nhúng, ñược phát triển bởi công
ty Embest Info and Tech Co., Ltd. Embest IDE là một môi trường phát triển ñồ họa tích
hợp cao mà bao gồm một người soạn thảo, một người biên tập, bộ gỡ rối, giám ñốc thiết
kế, người lập trình nhanh… Embest IDE hiện tại hỗ trợ tất cả bộ xử lý dựa trên ARM7
và ARM9.Phần mềm cũng có thể ñược nâng cấp ñể hỗ trợ bộ nhớ ARM mới. Giao diện
Embest IDE ñược trình bày ở hình 1.11
6
Hình 1.11 – Cửa sổ Embest IDE cho ARM
1.3.5 Bộ mô phỏng OPENNice32- A900
Bộ mô phỏng OPENNice32- A900 ñược sản xuất bởi AIJI.OPENNice32- A900 là một
bộ mô phỏng JTAG và hỗ trợ ARM7/ARM9/ARM10 và chuỗi xử lý Intel Xscale.
OPENNice32- A900 có những ñặc ñiểm sau:
• Hỗ trợ nhiều CPUs hoặc nhiều cổng CPU
• Hỗ trợ gỡ rối ngôn ngữ Assembly và C
• Cung cấp, công cụ chương trình nhanh gắn trong máy
• Cung cấp GUI( Graphical User Interface) ( Giao diện người dùng ñồ họa),
hệ ñiều khiển bộ nhớ
• Phần mềm có thể ñược nâng cấp ñể hỗ trợ bộ nhớ ARM mới.
7
1.3.6 Bộ mô phỏng Multi ( nhiều) ICE
Multi ICE là một bộ mô phỏng JTAG ñược phát triển bởi ARM Ltd. Phiên bản cuối
cùng là hình 2.1.Multi ICE hỗ trợ nguồn ñiện bên ngoài. ðiều này quan trọng ñối với
việc gỡ rối thiết bị như ñiện thoại di ñộng, thiết bị nguồn ñiện acquy…
Dưới ñây là những ưu ñiểm của bộ mô phỏng Multi ICE
+ Download nhanh và thực hiện chương trình theo bước ñơn
+ Người sử dụng ñiều khiển ñược ñầu vào/ ra tại bậc bit
+ Chế ñộ chuyển bit JTAG lập trình ñược
+ Giao diện mở hỗ trợ cho bộ nhớ ARM bất ñịnh và DSPS
+ Nhiều bộ gỡ rối có thể ñược kết nối tới mạng
+ Cổng ñối tượng và nguồn ñiện bên ngoài nguồn ñiện
Chương II :Hệ thống phát triển Lab Embest
ARM
2.1.Tổng quan về hệ thống phát triển Lab
Hệ thống phát triển Lab ARM nhúng bao gồm:
• Embest ARM cho ARM 2003
• Bộ mô phỏng Embest cho JTAG ARM
• Bộ chương trình nhanh ( không gian)
• Cổng phát triển Embest S3CEV40
• Cáp kết nối, bộ chính lưu nguồn và bản hướng dẫn Lab
• Hai CD:
- 1 CD hệ thống phần mềm Embest IDE cho ARM
- 1 CD hệ thống phát triển ña Lab
Phần mềm Embest IDE và phần mềm bộ chương trình nhanh là CD hệ thống phần mềm
Embest IDE cho ARM. Nội dung CD bao gồm: Cẩm nang bảng ñánh giá Embest
S3CEV40, sơ ñồ bảng ñánh giá, chương trình khởi ñộng, chương trình kiểm tra Modun
hàm số, hệ thống hoạt ñộng thời gian thực UC/OS- II… CD này cũng có tất cả các mã
nguồn của chuỗi Lab này.
ðể chạy ñược chương trình mẫu của chuỗi Lab này, hãy copy nội dung của CD trong
thư mục sau:
8
C:\ Embest\ Examples\ Samsung\ C3CEV40
“ C” ; Ổ cứng mặc ñịnh. Người sử dụng có thể lựa chọn ổ cứng khác trong
suốt quy trình hệ thống. Trong tất cả các Lab của quyển sách này thư mục “C:\
Embest\ Examples\ Samsung\ C3CEV40” ñược gọi là thư mục chương trình
mẫu. Gắn liền với quyển sách này là bản mới nhất của bản ñào tạo IDE xử lý
hệ thống của phần mềm này chính xác như xử lý hệ thống của bản Embest
IDE cho ARM 2003 thông thường mà ñược cung cấp trong bản Embest IDE
ñầy ñủ. Trong quá trình xử lý hệ thống của bản ñào tạo IDE, mã nguồn của
chương 3 ñược copy tự ñộng trong thư mục C:\ Embest\ Examples\ Samsung\
C3CEV40
Mẫu cơ bản của hệ thống phát triển Embest ARM ñược trình bày ở hình 2.1
Hình 2.1: Sơ ñồ chế ñộ của Labs.
2.1.1.Embest IDE:
1.Tổng quan về Embest IDE :
Embest là một bộ khởi ñộng mới của môi trường phát triển tích hợp sử dụng phát triển
phần mềm nhúng. Nó cung cấp giao diện ñồ họa mức cao cho phát triển phần mềm
nhúng. Nó cung cấp tập hợp công cụ gỡ rối và phát triển bao gồm: Soạn thảo, biên dịch,
kết nối, quản lý project ….
Embest IDE tương tự như là Microsoft Visual Studio. Nó là tập hợp hệ thống phát triển
Visual cho phát triển phần mềm nhúng. Trong IDE, người sử dụng có thể tạo chuyển
ñổi hoặc mở các project, tạo hoặc mở các file, biên dịch, kết nối, chạy hoặc gỡ rối
những loại chương trình nhúng khác nhau. Giao diện Embest IDE như ở hình 2.2:
9
Hình 2.2- Giao diện của Embest IDE
2. ðặc ñiểm của hệ thống Embest IDE
Embest IDE có thể ñược chạy dưới nhiều hệ ñiều hành khác nhau như: Windows
98, 2000, NT, XP…Nó hỗ trợ chính những bộ xử lý ARM ( ARM7 và 9 hiện tại
). Bản ñầu tiên của Embest IDE cho ARM ñược hoàn tất năm 2001. Bản mới nhất
là Embest IDE 2003 cho ARM.
• Dưới ñây là những ñặc ñiểm quan trọng của Embest IDE cho ARM
• Hỗ trợ ngôn ngữ lập trình: C và Assembly
• Giao diện thích hợp và dễ nhớ: Microsoft Visual Studio như giao diện của
người sử dụng
• Quản lý dự án : công cụ quản lý dự án ñồ họa mà tổ chức và quản lý nhiều
file mã nguồn. Nó cung cấp cửa sổ cho biên dịch, kết nối va cài ñặt thư
viện… Những dự án ña phần mềm hoặc những dự án ña thư viện có thể
ñược quản lý trong cùng khu vực làm việc
10
• Bộ soạn thảo mã nguồn: Bộ soạn thảo văn bản chuẩn mà hỗ trợ hiển thị
màu sắc cho từ khóa, cú pháp từ khóa… IDE cũng cung cấp tìm kiếm
chuỗi ñộng cơ ( cơ cấu) cho tìm kiếm nhanh.
• Công cụ biên dịch: GCC từ GNU ñược tối ưu và kiểm tra chặt chẽ trên môi
trường Win32. IDE cung cấp giao diện cài ñặt, biên dịch, ñồ họa, người sử
dụng có thể sử dụng ñơn giản, nhanh chóng và cài ñặt trực tiếp cho việc
dịch dự án. ðầu ra của thông tin biên dịch dễ hiểu và ñược tổ chức ñối với
người sử dụng ñể tìm ra nhanh chóng lỗi cú pháp trong mã nguồn của họ
• Gỡ rối: Gỡ rối bậc mã nguồn. Bộ gỡ rối cung cấp 2 cách gỡ rối, ñó là gỡ
rối giao diện ñồ họa và gỡ rối dòng lệnh. Bộ gỡ rối là ñiểm ngừng( giới hạn
bền) có khả năng cài ñặt, thực hiện mã nguồn bước ñơn, bộ xử lý ngoài
trong bộ nhớ ñiều chỉnh hoặc ngang hàng, giá trị thanh ghi và các biến,
ngăn xếp chức năng hoặc ngàng hàng, mã phân giải…
• Thiết bị gỡ rối: Bộ mô phỏng Embest JTAG, một trong số kết thúc của nó
là DB25 mà kết nối tới cổng song song hoặc một PC( máy tính cá nhân),
một kết thúc khác là bộ ghép IDC mà kết nối tới giao diện JTAG của bảng
dịch( bảng ñối tượng). Người sử dụng có thể dùng Embest IDE và bộ mô
phỏng Embest JTAG cùng nhau cho việc phát triển phần mềm. Embest
IDE cũng hỗ trợ cab kết nối JTAG phổ biến.
• Gỡ rối gián tiếp: Embest IDE cho ARM cung cấp bộ mô phỏng hướng dẫn.
Người sử dụng có thể gỡ rối cho phần mềm ứng dụng ARM trên PC mà
không cần kết nối phần cứng ñối tượng.
• Cài ñặt chương trình mẫu: Cung cấp chương trình mẫu cho gỡ rối trong
miêu tả người dùng cho bộ xử lý ARM từ nhiều công ty như: Atmel,
Samsung, Cirrus Logic…
• Trợ giúp trực tuyến: File trợ giúp trực tiếp bản Tiếng Anh và Tiềng Trung
Quốc
Khi phát triển phần mềm nhúng bước ñầu tiên là thiết kế, bước thứ 2 là lập
trình, bước thứ 3 là gỡ rối.Một chương trình hàng nghìn lệnh có thể không
có cảnh báo trong biên soạn nhưng sẽ không gặp ñiều kiện khi ñược thực
hiện trong phần cứng. Hoặc chương trình sẽ gây mất ổn ñịnh hệ thống và
không khởi ñộng ngay
Chức năng gỡ rối của Embest bao gồm:
• ðiểm ngắt: cài ñặt ñiểm ngắt, việc chặn ñiểm ngắt, việc xóa bỏ
ñiểm ngắt, các biến cũng có thể ñược thay ñổi tại thời gian chạy.
• Từng bước thực hiện chương trình
11
• Chức năng biến chính: Hiển thị giá trị biến có thể ñược thay ñổi
trong khi chương trình ñang hoạt ñộng, các biến cũng có thể ñược
ñiều chỉnh tại thời gian chạy.
• Hiển thị và ñiều chỉnh nội dung bộ nhớ, cài ñặt dạng hiển thị nội
dung.
• Hiển thị ngăn xếp
• Gỡ rối giao diện ñồ họa và gỡ rối dòng lệnh
• Chế ñộ ña hiển thị cho cùng mã nguồn , mã nguồn có thể ñược hiển
thị cho cùng nguồn, hệ thống hoặc pha trộn nguồn/ hệ thống.
• Cung cấp MS Visual Studio như menu gỡ rối: ñi, dừng, Step into,
Step over, Step out, chạy tới con trỏ màn hình…
• Tải xuống và nạp chương trình lên.
2.1.2 Bộ mô phỏng Embest cho JTAG ARM:
Bộ mô phỏng JTAG cũng ñược gọi là bộ gỡ rối JTAG.Bộ mô phỏng JTAG giao
tiếp với hệ thống ARM thông qua giao diện lặp JTAG.Phương thức gỡ rối này
không cần sử dụng nguồn tài nguyên chính trên chip. Nó không cần bộ nhớ ñích
và không chiếm bất cứ cổng ngoại vi nào của hệ thống ñối tượng.
Vì chương trình ñích ñược thực hiện bởi bảng ñích, việc mô phỏng là bộ ñóng
mạch tới phần cứng.Một vài vấn ñề giao diện như việc hạn chế tần số cao, những
vấn ñề phù hợp tham số, AC và DA, chiều dài dây… ñều ñược giảm thiểu.Sự kết
hợp của IDE và bộ mô phỏng JTAG là cách gỡ rối ñược sử dụng thông dụng
nhất. Bộ mô phỏng Embest Emulator cho ARM ñược trình bày ở hình 2.3
Hình 3: Bộ mô phỏng Embest choARM JTAG
12
2.1.3 Chương trình Flash:
Sau khi chương trình kết thúc, người sử dụng cần tải mã nhị phân tới bộ nhớ
Flash ñể kiểm tra thời gian chạy. Embest Inc cung cấp chương trình Flash mà cho
phép người sử dụng viết trực tiếp bảng phát triển nhanh. Giao diện cửa sổ ñược
trình bày ở hình 2.4:
Hình 2.4 – Cửa sổ chương trình Flash
Dưới ñây là những ñặc ñiểm của chương trình Flash:
• Hỗ trợ tất cả bộ vi xử lý ARM7 và ARM9, ATMEL AT91, cổng
INTEL 28, cổng SST 29/39/49
• Kiểm tra không gian bộ nhớ trống nhanh, xóa bộ nhớ lập trình bộ
nhớ, kiểm tra file, bảo vệ và tải về
• Sự hoạt ñộng khu vực bộ nhớ riêng mà không thay ñổi khu vực bộ
nhớ
• ðộ rộng ñọc/ ghi 8 bit, 16 bit, 32 bit
• Hỗ trợ cho lập trình chip flash từ 1 ñến 4, file chương trình không
cần phải chia ra.
• Hỗ trợ cho hệ ñiều hành Windows 98, 2000, NT và XP
13
2.1.4. Bảng phát triển Embest S3CCEV 40
Embest S3CEV 40 là dàn phần cứng của hệ thống phát triển Lab. Nó là một bảng
phát triển ARM ñược phát triển bởi Embest INC với ñầy ñủ chức năng. Bảng này
cung cấp những nguồn tài nguyên khác nhau và dựa trên bộ vi xử lý Samsung
S3C44 BOX. Phần cứng bao gồm hầu hết những thiết vị ñược sử dụng thông
dụng ñể phát triển một hệ thống nhúng. Những thiết bị này là cổng nối tiếp, cổng
Ethernet, cồng ñầu ra âm thanh, màn hình cảm ứng LCD và TSP, bàn phím dạng
nhỏ 4x4, ñĩa cứng trạng thái sẵn, Flash, SDRAM… Sau giáo trình này, người sử
dụng không chỉ có thể hoàn tất ví dụ ñược cung cấp bới hệ thống Lab mà còn có
thể xây dựng hệ thống ñối tượng của chính mình. Dàn phần cứng ñược trình bày
ở hình 2.5
Hình 2.5 – Dàn phần cứng hệ thống Lab
Dưới ñây là những ñặc ñiểm cơ bản của bảng phát triển S3CEV40:
• Nguồn ñiện: Nguồn 5V hoặc nguồn USB qua PC, hiển thị trạng thái
LED, bộ bảo vệ 500mA.
Flash 1Mx16bit
• SDRAM 4x1Mx16 bit
• EFROM tuần tự bus 4Kbit IIC
• Hai cổng nối tiếp: Một cổng giao diện ñơn, một cổng giao diện ñầy
ñủ mà có thể ñược kết nối tới MODEM RS232
• Công tắc Reset
14
• Hai nút ngắt, hai ñèn Led
• Giao diện ổ cứng IDE
• Giao diện màn hình cảm ứng LCD và TSP
• Giao diện JTAG 20 chân
• Kết nối USB
• Giao diện bàn phím 4x4
• Bốn giao diện CPU mở rộng 2x20
• Giao diện Ethernet 10 Mb/s
• LED và thanh
• Cồng ñầu vào Micro
• Cổng ñầu ra tín hiệu âm thanh IIS mà có thể ñược kết nối tới 1 loa,
2 kênh.
• ðĩa cứng trạng thái rắn 16Mx8bit
• Bảng ñiều khiển LCD 320x240 với bảng ñiều khiển màn hình cảm
ứng.
2.1.5 Cap kết nối và bộ ñiều chỉnh nguồn:
Bên cạnh các thành phần ở trên, hệ thống Lab cũng cung cấp cap cho kết nối bao gồm
1 cap mạng, 1 cap USB, 1 cap nối tiếp, 1 cap song song, 2 cap JTAG (20 chân và 16
chân). Hệ thống Lab cũng cung cấp bộ ñiều chỉnh nguồn 5V cho bảng Embest
S3CEV40
2.2 Lắp ñặt của hệ thống phát triển Lab:
Hệ thống Lab Embest ARM bao gồm: Embest IDE, chương trình Flash, bộ mô phỏng
Flash cho JTAG ARM, bảng phát triển Embest S3CEV40, cap các loại và bộ ñiều chỉnh
nguồn. Dàn phần mềm bao gồm: Embest IDE và chương trình Flash. Ổ tựa là một phần
của dàn phần cứng. Bộ phận này là cơ sở ñể lắp ñặt và cài ñặt dàn phần mềm
Lắp ñặt dàn phần mềm bao gồm:
• Lắp ñặt Embest IDE
• Lắp ñặt chương trình Embest Flash
2.2.1 Lắp ñặt Embest IDE
ðặt CD lắp ñặt phần mềm Embest IDE cho ARM tới CD- ROM của bạn, lấy thư mục
“Embest IDE 2004” và kích Setup.exe ñể ñặt Embest IDE
15
Hình 2-6: giao diện lắp ñặt Embest IDE
H2-7: giao diện lựa chọn phần mềm lắp ñặt
16
Chọn “Next” ñể tiếp tục các bước lắp ñặt. Kiểu cài ñặt sẽ hiện ra như ở H2-8
Hình 2-8: Lựa chọn loại cài ñặt
Sau khi lắp ñặt, hệ thống sẽ nhắc bạn ñể khởi ñộng lại máy tính.Sau khi máy tính ñược
khởi ñộng lại một biểu tượng của Embest IDE sẽ ñược hiển thị trên màn hình.Kích ñúp
vào biểu tưởng này ñể chạy Embest IDE.Khi Embest IDE chạy lần ñầu tiền phần mềm
sẽ nhắc ñể ñăng ký hội thoại như ñược trình bày ở hình 2-9 :
17
Sau khi bạn ñiền vào ñúng thông tin người sử dụng, kích nút “Generalkey.dat.Phần
mềm sẽ khởi ñộng 1 file key.dat trong thư mục con License. Gửi file key.dat tới
qua thư ñiện tử. Người sử dụng sẽ nhận 1 file Licenses.dat
trong vòng 24h. Copy file Licenses.dat tới thư mục con Licenses. Khởi ñộng lại IDE và
Embest IDE sẽ làm việc thực sự.
2.2.2 Lắp ñặt chương trình Flash
Vào thư mục Flash programmer và kích Setup exe ñể lắp ñặt. Một giao diện sẽ bắt ñầu
như hình 2-10:
Hình 2-10: Giao diện lắp ñặt Flash programmer
Thực hiện các bước lắp ñặt và kết thúc việc lắp ñặt.
2.2.3 Liên kết mạng của dàn phần cứng trong phần mềm:
Như ở hình 2-11, bộ mô phỏng ñược kết nối tới PC qua cáp song song và tới bảng ñích
qua cáp JTAG 20 chân.
18
Hình 2-11: Sơ ñồ liên kết dàn Lab.
2.3 Mạch phần cứng hệ thống phát triển Lab
2.3.1 Tổng quan phần cứng hệ thống phát triển Lab
1. Hệ thống phát triển Lab Embest ARM
Sơ ñồ khối hệ thống phát triển Embest ARM ñược trình bày trên hình 2-12.
19
Hình 2-12 : Biểu ñồ các khối chức năng Embest S3CEV40
2. Hệ thống bộ nhớ:
Hệ thống Lab có một chip Flash 1M x 16 (SST39VF160) và một chip SDRAM 4M x
16 (HY57V65160B). Sơ ñồ liên kết chip Flash ñược trình bày ở hình 2-13 chân nGCSO
của chip VXL 144 B ñược kết nối tới chân nCE của chip Flash SST39VF160. Vì chip
Flash 10 bit, bus, ñịa chỉ A1- A20 của CDV 44BVX ñược kết nối tới A0- A19 của chip
flash SST39VF160. ðịa chỉ không gian bộ nhớ của Flash là 0X000000- 0X00200000.
Sơ ñồ liên kết mạch SDRAM ñược trình bày ở hình 2-14. SDRAM có thanh ghi
không nhìn thấy ñược (bank). Mỗi bank có 1M x 16 bit. ðịa chỉ của bank ñược quy
ñịnh bởi chân BA1 và BA0: 00 lựa chọn bank 0
01 lựa chọn bank 1
10 lựa chọn bank 2
11 lựa chọn bank 3
Xung ñịa chỉ hàng RAS và xung ñịa chỉ cột CAS ñược sử dụng trong mỗi ñịa chỉ bank
hệ thống Lab cung cấp lệnh nhảy cho người sử dụng ñể nâng cấp dung lượng của
SDRAM lên tới 4 x 2M x 16 bit. Phương thức nâng cấp ñược hoàn thành xong bởi việc
kết nối chân BA0, BA1 của chíp SDRAM tới chân A21, A22 của chip CDV. SDRAM
sẽ là chip ñược lựa chọn bởi tín hiệu lựa chọn chip riêng nSCSO của CDV. Không gian
bộ nhớ SDRAM là 0X0C000000-0X0C800000.
20
Hình 2-13 Sơ ñồ mạch liên kết Flash
Hình 2-14 Sơ ñồ mạch liên kết SDRAM
3. Giao diện EFPROM IIC
Hệ thống Lab cung cấp một chip 4 kb EFPROM hỗ trợ bus IIC. IIC là hai hướng ñiều
hành hai dây dẫn bus nối tiếp ñơn giản mà ñược dùng cho việc ñiều khiển IC bên trong.
Tốc bộ truyền dữ liệu là 100 kb/s trong chế ñộ chuẩn. Tốc ñộ dữ liệu có thể ñến 400
kb/s như trong chế ñộ tốc ñộ cao.
4. Giao diện nối tiếp
Giao diện nối tiếp của mạch ñược trình bày ở hình 2-15. Hệ thống Lab cung cấp cổng
nối tiếp (DB9). Một là cổng chính VART1 mà ñược sử dụng ñể giao tiếp với PC hoặc
MODEM. Vì S3C44BOX không thể cung cấp tín hiệu giao tiếp môñem DCD, DTR,
DSR, RIC nên mục ñích tổng quát vào/ ra MCV phải ñược sử dụng. Giao diện nối tiếp
khác là VART0 có hai dây dẫn RxD và TxD cho việc truyền và nhận dữ liệu ñơn. Cổng
VART1 sử dụng MAX 3243E cho bộ biến ñổi ñiện áp. VART0 sử dụng MAX 3221E
cho bộ biến ñổi ñiện áp.
21
Hình 2-15 Sơ ñồ mạch cổng nối tiếp.
5. Modun kênh (cổng) USB.
Mạch Modun USB ñược trình bày ở Hinh 2-16. Chip IC là USB N9603. Một công ty
có tên NS tạo ra bộ ñiều khiển USB này. Bộ ñiều khiển USB hỗ trợ giao thức giao tiếp
USB 1.0 và 1.1 và có 1 bus song song. Nó có 3 chế ñộ làm việc là chế ñộ giao diện
ñồng thời không phải ña kênh, chế ñộ giao diện ñồng thời ña kênh và chế ñộ giao diện
MICROWIRE. Việc lựa chọn chế ñộ ñược quy ñịnh bởi chân MODE1 và MODE2. Nếu
MODE1 và MODE2 ñược kết nối theo khu vực thì chế ñộ làm việc ñược xác ñịnh như
chế ñộ giao diện ñồng thời không phải ña kênh. Ở chế ñộ này, chân DACK nên ñược
kết nối ở mức cao bởi vì DMA không ñược sử dụng. MCP sẽ lựa chọn bộ ñiều khiển
USB sử dụng tín hiệu lựa chọn chip CS1 ñược khởi ñộng bởi bộ giải mã. USB N9603
gửi yêu cầu ngắt tới MCV thông qua chân EXINTO.
Hình 2-16 Sơ ñồ mạch USB
22
6. Modun mạch Ethernet.
Modun mạch Ethernet ñược trình bày ở Hình 2-17. Hệ thống phát triển nhúng sử
dụng bộ ñiều khiển Ethernet 2 chiều RTL8019AS của REALTEK mà có thể ñược trao
ñổi nóng (hot swapped). Dưới ñây là những ñặc ñiểm của chip ñiều khiển Ethernet:
• ðáp ứng tiêu chuẩn của Ethernet II và IEEE8023
• Gửi và nhận 2 chiều với 10 Mb/s.
• SRAM 10 bit kB có sẵn cho bộ ñệm gửi và nhận. Bộ ñệm này có thể giảm ñiều
kiện tốc ñộ của CDV chính.
• Hỗ trợ bus dữ liệu 8/16 bit, 8 lệnh ngắt, 16 lựa chọn ñịa chỉ cơ bản I/O.
• Hỗ trợ UTP, AVI và phát hiện tự ñộng hỗ trợ ñiều chỉnh có cực tự ñộng cho cấu
trúc mạng 10BaseT.
• 4 LED ñầu ra lập trình ñược.
• Bộ PQFP 100 chân ñược tối thiểu hóa kích cỡ của cổng PCB ( printed wiring
board) bảng mạch nối ñã in.
H2-17: Sơ ñồ mạch Ethernet
RTL 8019 có chế ñộ làm việc.Nếu trong ứng dụng nhúng không sử dụng 93C46 thì giá
có thể giảm, do ñó chế ñộ làm việc làm việc nối thường ñược sử dụng.ðịa chỉ I/O của
bảng card mạng ñược quyết ñịnh bởi IOS3, IOS2, IOS1, IOS0.Có hai RAM ñược tích
hợp trong RTL8019. Một là 16 kB từ 0X4000 ñến 0X7FFF và còn lại là 3bit từ 0X0000
ñến 0X001F. RAM là một bộ nhớ trong với môi trường 256bit. Nói chung page 0 ñược
gọi là PROM (ROM lập trình ñược) ñể lưu trữ card mạng, nó sẽ ñược ñọc khi card
mạng ñược reset. Hệ thống Lab này không dùng 93C46, vì vậy PROM không ñược sử
23
dụng. Trong trường hợp này phần mềm phải chỉ rõ ñịa chỉ mạng và viết nó tới MAR0-
MAR5 (MAR: memory address resgister: thanh ghi ñịa chỉ bộ nhớ). RAM 16KB ñược
sử dụng cho bộ ñếm nhận/phát, nơi mà 0X4000-0X7FFF ñược sử dụng như một bộ ñệm
nhận và 0X4000-0X4BFF ñược sử dụng như một bộ ñệm gửi.
7. Giao diện IIS
IIC là một giao diện bus âm thanh.Nó là một giao diện chuẩn ñược sử dụng bởi Sony,
Philips…Sơ ñồ mạch giao diện IIS ñược giới thiệu ở H2-18.Giao diện IIS của S3C44
BOX ñược kết nối tới Codec âm thanh số VDA1341TS của Philips.Một kênh ñầu ra của
micro và kênh ñầu vào của loa thì có sẵn trên chip này. VDA1341 có thể biến ñổi stereo
âm thanh chiều tương tự sang tín hiệu số và ngược lại. ðối với tín hiệu số, chip này
cung cấp chức năng DSP(Digital signal processing: xử lý tín hiệu số). Cho việc xử lý tín
hiệu âm thanh số .
Trong những ứng dụng, chip này có thể dùng cho MDS, CDS, máy tính Notebook,
PCS, Camera số…Cổng IIS của S3C44 Box có thể kết nối ñược tới chân BCK, WS,
DATA1, DATA0 và SYSCLK của VDA1341TS. Chân L3DATA-L3MODE và
L3CLOOCK là bus L3 của VDA1341TX. Bus này ñược dùng ở chế ñộ ñầu vào bộ vi
xử lý. Những chân này là ñường truyền dẫn liệu bộ vi xử lý, ñường truyền chế ñộ bộ vi
xử lý, ñường truyền ñịnh thời bộ vi xử lý. Bộ vi xử lý có thể thiết lập căn cấu hình tham
số bộ xử lý âm thanh số và tham số ñiều khiển hệ thống thông qua giao diện bus này.
Nhưng S3C44BOX không có sự kết nối tới giao diện bus này. Giao diện bus này có thêt
ñược thực hiện thông qua cổng I/O.
Hình 2-18 : Sơ ñồ mạch giao diện IIS
24
8. LED 8 thanh :
Hệ thống Lab có một LED 8 thanh ñược trình bày ở H2-19.Tín hiệu mức thấp
làm sáng LED. Bus dữ liệu CPU DATA (0-7) ñiều khiển LED thông qua driver
74LC573. Tín hiệu lựa chọn chip của nó ñược lựa chọn bởi CS1 và CS6 của
CPU, ñược khởi ñộng bởi CODEC từ 3 ñường dây dẫn(A20, A19, A18). Dây dẫn
dữ liệu ở mức thấp của CPU quyết ñịnh nội dung LED 8 thanh.
Hình 2-19 : Sơ ñồ Led 8 thanh.
9. ðĩa cứng trạng thái rắn
Như ở Hình 2-20, bảng tính nhúng có 1 ñĩa cứng trạng thái rắn 16MB. Kiểu chip là
K9F2808 chân lựa chọn chip CS2, ñược giải mã từ NGES1 bởi 74LS138. Cổng I/O nói
chung(DF6, PF5, NXDACKO, NXPREQ0) ñược kết nối ALE, CLE, R/B. Và cổng CE
tách biệt. Người sử dụng có thể xử lý ñĩa cứng trạng thái rắn và cổng USB cùng lúc như
1 ñĩa U. Người sử dụng có thể lưu lại chương trình và dữ liệu của mình trên ñĩa cứng
trạng thái rắn. Ứng dụng ñĩa cứng trạng thái rắn bao gồm:
+ Lưu giữ dữ liệu ñược lấy lại trên ñĩa cứng trạng thái rắn và tải những dữ liệu
này tới PC thông qua USB dự phòng và những mục ñích phân tích.
+ Bảo vệ tham số hệ thống, trong ñĩa cứng trạng thái và thực hiện việc hiệu chỉnh
thời gian thực khi hệ thống ñang chạy. Bảo vệ dữ liệu khi ñiện giảm.
+ Khi ñại lượng mã nguồn hệ thống trong rất lớn và không thể chạy trong bộ nhớ
FLASH 2M, mã nguồn hệ thống có thể ñược lưu giữ trong ñĩa cứng trạng thái rắn. Khi
hệ thống ñược cấp năng lượng, một mã khởi ñộng trong bộ nhớ FLASH có thể tải mã
25
trong SDRAM chức năng này cực kỳ hữu ích khi chạy những ứng dụng hệ ñiều hành
lớn.
Hình2-20: Sơ ñồ mạch ñĩa cứng trạng thái rắn
10. Giao diện IDE:
Cổng này là cổng mở rộng bus 8/16 bit nói chung. Nó có thể kết nối tới ñĩa cứng hoặc
card, CF tốt như những bộ phận ngoại vi khuếch ñại của chính người sử dụng. Khi
cổng ñược kết nối tới ñĩa cứng hoặc card CF, LED-04…ñèn cảnh báo ñĩa cứng làm việc
ñược bất. Cổng này sử dụng 2 tín hiệu lựa chọn chip (CS3, CS4, CS5) và 2 ngắt ngoài
(EXINT4, EXINT5).
11. Mạch LCD & TSP:
Vì chip 44BOC cung cấp bộ ñiều khiển LCD, driver và cổng vào/ra nên các chân cổng
LCD cơ bản ñược kết nối tới các chân cơ bản CPU tương ứng bên trong chip. ðiều
khiển LCD và driver ñược tích hợp trên chip 44BOX có thể hỗ trợ màu ñơn, 4 màu
xám, LCD mức xám 16 và màu ñơn, LCD STN và LCD DSTN màu 256. Cỡ màn hình
thực là: 640x468, 320x240, 160x160 (pixels). Những thanh ghi chức năng ñặc biệt có
thể tạo ñược cấu hình ñể xác ñịnh những loại LCD thực tế.
Tín hiệu lựa chọn chip sử dụng ở LCD là CS8. ðối với TSP kể từ khi chip 44BOX
không cung cấp chức năng bộ ñiều khiển thì cổng I/O nói chung có thể tạo ñược cấu
hình và sử dụng TSP bao gồm 2 ñiện trở bề mặt, ñược gọi là thanh ghi bề mặt hướng
trục X, Y. Do ñó TSP có 4 thiết bị ñầu cuối. Việc kết nối của nó ñược trình bày ở H2-