Tải bản đầy đủ (.pdf) (90 trang)

thực hiện các ứng dụng nhúng cơ bản trên board altera de2 115

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (3.91 MB, 90 trang )

Luận văn tốt nghiệp

Thực hiện một số ứng dụng nhúng cơ bản trên board Altera DE2-115

TRƯỜNG ĐẠI HỌC CẦN THƠ
KHOA CÔNG NGHỆ
BỘ MÔN ĐIỆN TỬ VIỄN THÔNG

LUẬN VĂN TỐT NGHIỆP ĐẠI HỌC

THỰC HIỆN CÁC ỨNG DỤNG NHÚNG
CƠ BẢN TRÊN BOARD ALTERA DE2-115

Cán bộ hướng dẫn:

Sinh viên thực hiện:
Lê Thảo Quyên

MSSV: 1118006

ThS. Trương Phong Tuyên

Huỳnh Đặng Hoàng Quyên MSSV: 1118005
Ngành: Kỹ Thuật Máy Tính

Cần Thơ, tháng 5 năm 2015

i


Luận văn tốt nghiệp



Thực hiện một số ứng dụng nhúng cơ bản trên board Altera DE2-115

TRƯỜNG ĐẠI HỌC CẦN THƠ
KHOA CÔNG NGHỆ

BỘ MÔN ĐIỆN TỬ VIỄN THÔNG
Luận văn được thực hiện bởi:
1. Họ tên: Huỳnh Đặng Hoàng Quyên,
2. Họ tên: Lê Thảo Quyên,

MSSV: 1118005, Lớp: Kỹ thuật máy tính
MSSV: 1118006, Lớp: Kỹ thuật máy tính

Tựa đề Luận văn (Hay tên đề tài): Thực hiện một số ứng dụng nhúng cơ bản trên
board Altera DE2-115.
Luận văn đã nộp và báo cáo tại Hội đồng chấm bảo vệ Luận văn tốt nghiệp
Đại học Cần Thơ ngành Điện tử Truyền thông/ Kỹ thuật máy tính, Bộ môn
Điện tử Viễn thông vào ngày 19 tháng 5 năm 2015. (Quyết định thành lập Hội
đồng số: 133/QĐ-CN ngày 24 tháng 4 năm 2015 của Trưởng Khoa Công
Nghệ).
Kết quả đánh giá: _____________
Chữ ký của các thành viên Hội đồng:
Thành viên Hội đồng 1 (CBHD): ThS. Trương Phong Tuyên .................................
Thành viên Hội đồng 2: TS. Lương Vinh Quốc Danh ..............................................
Thành viên Hội đồng 3: ThS. Võ Ngọc Lợi ..............................................................

ii



Luận văn tốt nghiệp

Thực hiện một số ứng dụng nhúng cơ bản trên board Altera DE2-115

LỜI CAM ĐOAN
Đề tài “Thực hiện một số ứng dụng nhúng cơ bản trên board Altera DE2115” được thực hiện trên board DE2-115 Development and Education, nhằm hướng
đến việc thiết kế một số bài thí nghiệm hệ thống nhúng. Đồng thời qua đó góp phần
vào nguồn tư liệu cho các nghiên cứu về sau trong cùng lĩnh vực. Do đó đề tài đã
được chúng em chọn để thực hiện Luận văn tốt nghiệp trong thời gian này.
Trong quá trình thực hiện đề tài, có thể còn nhiều thiếu sót do kiến thức hạn
chế nhưng những nội dung trình bày trong quyển báo cáo này là những hiểu biết và
thành quả của chúng em đạt được dưới sự giúp đỡ của giảng viên hướng dẫn là
Thạc sĩ Trương Phong Tuyên
Chúng em xin cam đoan rằng: những nội dung trình bày trong quyển báo
cáo Luận văn tốt nghiệp này không phải là bản sao chép từ bất kỳ công trình đã có
trước nào. Nếu không đúng sự thật, em xin chịu mọi trách nhiệm trước nhà trường.
Cần Thơ, ngày 10 tháng 05 năm 2015
Nhóm sinh viên thực hiện:

Lê Thảo Quyên

iii

Huỳnh Đặng Hoàng Quyên


Luận văn tốt nghiệp

Thực hiện một số ứng dụng nhúng cơ bản trên board Altera DE2-115


LỜI CẢM ƠN
Đầu tiên, chúng em xin cảm ơn Thầy Trương Phong Tuyên đã quan tâm,
hướng dẫn tận tình, truyền đạt những kinh nghiệm quý báu và kịp thời hướng dẫn
giúp chúng em tìm ra con đường đúng đắn để giải quyết những khó khăn. Thầy
cũng tận tình giúp đỡ, động viên chúng em về mặt tinh thần để chúng em tự tin thực
hiện luận văn trên cơ sở phát huy khả năng tự tìm tòi, học hỏi.
Quý thầy cô trong Bộ môn Điện tử- Viễn thông đã tạo điều kiện, tận tình
giúp đỡ, cho chúng em những kiến thức quý báu trong suốt quá trình học ở đây.
Các bạn cùng khóa đã nhiệt tình hợp tác, đóng góp, giúp đỡ, ủng hộ chúng
em trong suốt quá trình hoàn thành luận văn.
Cuối cùng chúng em xin chân thành cảm ơn gia đình, nhất là cha mẹ, đã tạo
mọi điều kiện thuận lợi về vật chất và tinh thần. Gia đình đã tạo cho chúng em tâm
thế thoải mái, luôn khuyến khích để chúng em vững tin vượt qua mọi trở ngại trong
suốt quá trình hoàn thành luận văn.
Xin nhận ở chúng em lời cảm ơn chân thành và sâu sắc nhất!

Nhóm sinh viên thực hiện:

Lê Thảo Quyên

iv

Huỳnh Đặng Hoàng Quyên


Luận văn tốt nghiệp

Thực hiện một số ứng dụng nhúng cơ bản trên board Altera DE2-115

MỤC LỤC

MỤC LỤC HÌNH .................................................................................................... vii
DANH SÁCH CÁC TỪ VIẾT TẮT ....................................................................... xi
TÓM TẮT .................................................................................................................. 1
ABSTRACT ............................................................................................................... 1
CHƯƠNG 1: TỔNG QUAN .................................................................................... 2
1.1
1.1
1.2
1.3

ĐẶT VẤN ĐỀ ..................................................................................................... 2
LỊCH SỬ GIẢI QUYẾT VẤN ĐỀ ........................................................................... 2
PHẠM VI ĐỀ TÀI ................................................................................................ 2
PHƯƠNG PHÁP NGHIÊN CỨU ............................................................................. 3

CHƯƠNG 2: CƠ SỞ LÝ THUYẾT ........................................................................ 4
2.1 GIỚI THIỆU BOARD DE2-115 ..................................................................... 4
2.2 CẤU HÌNH CYCLONE IV E FPGA [7]:........................................................ 6
2.3 PHẦN MỀM QUARTUS II V11.0 .................................................................. 6
2.3.1 Giới thiệu Quartus II ................................................................................ ..6
2.3.2 Nios II 32 bit CPU ................................................................................... ..7
2.3.3 Thiết kế dự án bằng Quartus II ................................................................ ..8
2.3.4 Xây dựng hệ thống đơn giản bằng QSys trên Quartus II......................... 10
CHƯƠNG 3: THỰC HIỆN MỘT SỐ ỨNG DỤNG NHÚNG CƠ BẢN TRÊN
BOARD ALTERA DE2-115 .................................................................................. 30
3.1 BÀI THÍ NGHIỆM SỐ 1: QSYS VÀ NIOS II IDE ................................................... 30
3.1.1 Sơ đồ hệ thống ...................................................................................... 30
3.1.2 Các bước thực hiện và kết quả .............................................................. 30
3.2 BÀI THÍ NGHIỆM SỐ 2: HỆ THỐNG ĐƠN GIẢN .................................................. 38
3.2.1 Sơ đồ hệ thống ......................................................................................... 39

3.2.2 Lưu đồ giải thuật ..................................................................................... 39
3.2.3 Các bước thực hiện và kết quả ................................................................. 41
3.3 BÀI THÍ NGHIỆM SỐ 3: CHƯƠNG TRÌNH ĐIỀU KHIỂN XUẤT/ NHẬP................... 48
3.3.1 Sơ đồ hệ thống ......................................................................................... 48
3.3.2 Lưu đồ giải thuật ...................................................................................... 49
3.3.3 Các bước thực hiện và kết quả ................................................................. 50
3.4 BÀI THÍ NGHIỆM SỐ 4: CHƯƠNG TRÌNH CON VÀ NGĂN XẾP ............................ 57
3.4.1 Sơ đồ hệ thống ......................................................................................... 57
3.4.2 Lưu đồ giải thuật ...................................................................................... 58
3.4.3 Các bước thực hiện và kết quả ................................................................. 58
3.5 BÀI THÍ NGHIỆM SỐ 5: LẬP TRÌNH CHO NIOS II SỬ DỤNG NGÔN NGỮ C ........... 67
3.5.1 Sơ đồ hệ thống ......................................................................................... 68
3.5.2 Các bước thực hiện và kết quả ................................................................. 68
v


Luận văn tốt nghiệp

Thực hiện một số ứng dụng nhúng cơ bản trên board Altera DE2-115

CHƯƠNG 4: KẾT LUẬN ...................................................................................... 74
4.1 KẾT QUẢ ĐẠT ĐƯỢC ....................................................................................... 74
4.2 HƯỚNG PHÁT TRIỂN CỦA ĐỀ TÀI ................................................................... 74
TÀI LIỆU THAM KHẢO ...................................................................................... 75
PHỤ LỤC A ............................................................................................................. 76

vi


Luận văn tốt nghiệp


Thực hiện một số ứng dụng nhúng cơ bản trên board Altera DE2-115

MỤC LỤC HÌNH
Hình 2.1 Sơ đồ khối mô tả cấu tạo của board DE2-115 .............................................4
Hình 2.2 Hệ thống nạp thông qua JTAG programming. ............................................6
Hình 2.3 Hệ thống nạp thông qua AS programming. .................................................6
Hình 2.4 Giao diện Quartus II 11.0 ............................................................................7
Hình 2.5 Tạo New project wizard ...............................................................................8
Hình 2.6 Đặt tên cho project .......................................................................................8
Hình 2.7 Thêm file thiết kế .........................................................................................9
Hình 2.8 Chọn thiết bị .................................................................................................9
Hình 2.9 Thiết lập công cụ EDA ..............................................................................10
Hình 2.10 Cửa sổ tóm tắt các thông số đã chọn .......................................................10
Hình 2.11 Giao diện sau khi mở QSys. ....................................................................11
Hình 2.12 Tạo Nios II processors. ............................................................................12
Hình 2.13 Giao diện cấu hình CPU Nios II/e. ..........................................................12
Hình 2.14 Giao diện cấu hình JTAG Debug. ............................................................13
Hình 2.15 Tạo On-chip Memory. .............................................................................13
Hình 2.16 Giao diện cấu hình On-chip Memory. .....................................................14
Hình 2.17 Tạo JTAG UART. ....................................................................................15
Hình 2.18 Giao diện cấu hình JTAG Uart. ...............................................................15
Hình 2.19 Tạo System ID. ........................................................................................16
Hình 2.20 Giao diện cấu hình System ID. ................................................................16
Hình 2.21 Tạo Interval Timer ...................................................................................17
Hình 2.22 Giao diện cấu hình Interval Timer ...........................................................17
Hình 2.23 Thêm PIO .................................................................................................18
Hình 2.24 Giao diện cấu hình PIO ............................................................................18
Hình 2.25 Nối các dây clk.........................................................................................19
Hình 2.26 Nối các dây Reset ....................................................................................20

Hình 2.27 Nối các thành phần Avalon Memory Mapped Slave ...............................20
vii


Luận văn tốt nghiệp

Thực hiện một số ứng dụng nhúng cơ bản trên board Altera DE2-115

Hình 2.28 Gán bộ nhớ RAM cho CPU .....................................................................21
Hình 2.29 Gán địa chỉ nền ........................................................................................21
Hình 2.30 Hệ thống sau khi lấy chân external_connection ......................................22
Hình 2.31 Thiết kế hệ thống hoàn tất........................................................................22
Hình 2.32 Đặt tên và lưu hệ thống ............................................................................23
Hình 2.33 Biên dịch hệ thống ...................................................................................23
Hình 2.34 Biên dịch hệ thống thành công ................................................................24
Hình 2.35 Add file ....................................................................................................24
Hình 2.36 Add file nios_sys.qip ...............................................................................25
Hình 2.37 Kết quả sau khi Add file nios_sys.qip .....................................................25
Hình 2.38 Hộp thoại New .........................................................................................26
Hình 2.39 Giao diện sơ đồ khối hệ thống .................................................................26
Hình 2.40 Gán chân cho hệ thống.............................................................................27
Hình 2.41 Giao diện thiết kế hoàn tất. ......................................................................27
Hình 2.42 Set as Top-Level Entity cho nios_sys.qip ................................................27
Hình 2.43 Biên dịch hệ thống thành công ................................................................28
Hình 2.44 Add file HUONG_DAN.sof ....................................................................28
Hình 2.45 Giao diện Hardware Setup .......................................................................28
Hình 2.46 Nạp file xuống board thành công .............................................................29
Hình 3. 1 Sơ đồ hệ thống ứng dụng .......................................................................... 30
Hình 3.2 Sơ đồ hệ thống ...........................................................................................32
Hình 3.3 Sơ đồ hệ thống hoàn tất .............................................................................32

Hình 3.4 Nios II Software Build Tools for Eclipse ..................................................33
Hình 3.5 Giao diện Workspace Launcher .................................................................33
Hình 3.6 Tạo project mới cho hệ thống ....................................................................34
Hình 3.7 Giao diện cấu hình Nios II Application and BSP for Eclipse....................34
Hình 3.8 Hoàn thành tạo project mới........................................................................35
Hình 3.9 Giao diện cài đặt Nios II BSP Properties ...................................................35
viii


Luận văn tốt nghiệp

Thực hiện một số ứng dụng nhúng cơ bản trên board Altera DE2-115

Hình 3.10 Code mẫu Hello World Small ..................................................................36
Hình 3.11 Giao diện Run As/Run Configurations ....................................................36
Hình 3.12 Giao diện cài đặt New_configuration ......................................................37
Hình 3.13 Kết quả chạy chương trình .......................................................................38
Hình 3.14 Sơ đồ khối hệ thống ứng dụng .................................................................39
Hình 3.15 Lưu đồ giải thuật xác định chuỗi bit 1 liên tiếp lớn nhất .........................39
Hình 3.16 Lưu đồ giải thuật của chương trình đếm số bit 0 liên tục và bit 1 liên tục
lớn nhất. ....................................................................................................................40
Hình 3.17 Lưu đồ giải thuật chương trình con tính số bit 1 và bit 0 liên tiếp. .........41
Hình 3.18 Sơ đồ hệ thống .........................................................................................42
Hình 3.19 Giao diện tạo project mới ........................................................................45
Hình 3.20 Chọn file hệ thống....................................................................................46
Hình 3.21 Chọn ngôn ngữ lập trình ..........................................................................46
Hình 3.22 Giao diện Add file .s ................................................................................46
Hình 3.23 Giao diện cài đặt thông số hệ thống .........................................................46
Hình 3.24 Kết quả chương trình đếm 4 bit 1 liên tiếp ..............................................47
Hình 3.25 Kết quả chương trình đếm 4 bit 1 liên tiếp bằng chương trình con .........47

Hình 3. 26 Sơ đồ khối hệ thống ứng dụng ................................................................48
Hình 3.27 giải thuật (giá trị nhập được lưu vào r16 và cộng dồn vào giá trị đang có
tại r17, lưu kết quả tại r17)........................................................................................49
Hình 3.28 Lưu đồ giải thuật ......................................................................................50
Hình 3.29 Sơ đồ hệ thống .........................................................................................52
Hình 3.30 Sơ đồ khối hệ thống hoàn tất. ..................................................................52
Hình 3.31 Giao diện sau khi nạp chương trình ứng dụng .........................................54
Hình 3.32 Kết quả chạy chương trình khi cho 0+1...................................................54
Hình 3.33 Kết quả chạy chương trình cho 1+129 .....................................................55
Hình 3.34 Lưu giá trị 8 vào thanh ghi r16 ................................................................56
Hình 3.35 Kết quả sau khi nhấn key0 .......................................................................56
Hình 3.36 Sơ đồ khối hệ thống ứng dụng .................................................................57
ix


Luận văn tốt nghiệp

Thực hiện một số ứng dụng nhúng cơ bản trên board Altera DE2-115

Hình 3.37 Lưu đồ giải thuật chương trình con và ngăn xếp. ....................................58
Hình 3.38 Sơ đồ hệ thống .........................................................................................59
Hình 3.39 Sơ đồ khối hệ thống .................................................................................60
Hình 3.40 Giao diện tab Memory .............................................................................62
Hình 3.41 Load file into memory .............................................................................62
Hình 3.42 Danh sách trước khi sắp xếp ....................................................................62
Hình 3.43 Kết quả sau khi sắp xếp tăng dần .............................................................63
Hình 3.44 Danh sách sau khi sắp xếp giảm dần .......................................................63
Hình 3.45 Add file Lab5_part3.s ..............................................................................66
Hình 3.46 Kết quả sắp xếp tăng dần bằng chương trình con ....................................67
Hình 3.47 Sơ đồ khối hệ thống ứng dụng .................................................................68

Hình 3.48 Sơ đồ hệ thống .........................................................................................69
Hình 3.49 Giao diện Workspace Launcher ...............................................................70
Hình 3.50 Giao diện tạo project mới ........................................................................70
Hình 3.51 Cửa sổ Nios II Application and BSP for Eclipse .....................................71
Hình 3.52 Giao diện cài đặt Nios II BSP Properties .................................................71
Hình 3.53 Run As/Run Configuratons ......................................................................72
Hình 3.54 Giao diện cài đặt New_configuration ......................................................73
Hình 3.55 Kết quả chạy chương trình .......................................................................73

x


Luận văn tốt nghiệp

Thực hiện một số ứng dụng nhúng cơ bản trên board Altera DE2-115

DANH SÁCH CÁC TỪ VIẾT TẮT
FPGA: Field-Programmable Gate Array
CPU: Central Processing Unit
MMU: Memory Management Unit
MPU: Memory Protection Unit
RAM: Random Access Memory
ROM: Read Only Memory
SoC: System on a Chip
SOPC: System on a Programmable Chip Builder
JTAG: Joint Test Action Group
LCD: Liquid Crystal Display
UART: Universally Asynchronous Receiver-Transmitter
USB: Universal Serial Bus
PLD: Programmable Logic Device


xi


Luận văn tốt nghiệp

Thực hiện một số ứng dụng nhúng cơ bản trên board Altera DE2-115

TÓM TẮT
Hiện nay, hệ thống nhúng đã được ứng dụng trong hầu hết các lĩnh vực của
cuộc sống từ giải trí đến giáo dục, y tế, quân sự,.. Các hệ thống nhúng được phát
triển trên FPGA đang được sử dụng để nghiên cứu, ứng dụng và đào tạo khá rông
rãi. Với đặc tính có thể cấu hình lại, người dùng có thể tạo ra phiên bản thiết kế
mong muốn cho các ứng dụng khác nhau. FPGA cũng hổ trợ rất nhiều các thiết bị
ngoại vi tạo điều kiện thuận lợi cho việc phát triển hệ thống nhúng. Do đó để có
bước đầu làm quen và nghiên cứu về hệ thống nhúng trên FPGA chúng em chọn đề
tài “Thực hiện các ứng dụng nhúng cơ bản trên board Altera DE2-115” làm đề tài
luận văn tốt nghiệp. Mục tiêu của đề tài là nghiên cứu và xây dựng các bài thí
nghiệm hệ thống nhúng trên board DE2-115. Kết quả dự kiến là xây dựng hoàn
chỉnh 5 bài thí nghiệm, qua đó góp phần vào nguồn tư liệu tham khảo cho học phần
hệ thống nhúng.
Từ khóa: DE2-115, FPGA, hệ thống nhúng.

ABSTRACT
Nowadays, the embedded systems are applied in the fields from
entertainment to education, medicine, military, etc. The designing embedded
system on FPGA are used for research, application and training quite extensively.
With characteristic can reconfigure, users can create the desired design versions for
different applications. FPGA also supports many of the peripherals create favorable
conditions for the development of embedded systems. Therefore to get acquainted

and initial studies on FPGA embedded system we chose the project "Performming
basic embedded applications on board Altera DE2-115" as our graduation thesis.
The objective of this research is to study and build the experiments on board DE211. The result is complete 5 exercise, thereby contributing to reference resources for
embedded system modules.
Keyword: DE2-115, Embedded system, FPGA.

1


Luận văn tốt nghiệp

Thực hiện một số ứng dụng nhúng cơ bản trên board Altera DE2-115

CHƯƠNG 1: TỔNG QUAN
Chương này sẽ giới thiệu những nội dung chính sau:





Đặt vấn đề, giới thiệu đề tài, mục đích của đề tài.
Lịch sử giải quyết vấn đề.
Phạm vi đề tài.
Phương pháp nghiên cứu, cách thức thực hiện đề tài.

ĐẶT VẤN ĐỀ
Xuất hiện từ những năm đầu thập niên 1960, hệ thống nhúng đang dần trở
thành một ngành phát triển mạnh mẽ, với những ứng dụng rộng rãi trong công
nghiệp và đời sống. Từ những hệ thống phức tạp như hàng không vũ trụ, phòng thủ
quân sự, máy móc tự động trong công nghiệp, đến những phương tiện di chuyển

thông thường như máy bay, xe điện, xe hơi, các trang thiết bị y tế trong bệnh viện,
cho tới những thiết bị truyền hình và điện thoại di động chúng ta sử dụng hằng
ngày, đâu đâu cũng có sự hiện diện của hệ thống nhúng [1].
1.1.

Tuy nhiên môn học hệ thống nhúng chỉ mới được đưa vào giảng dạy ở các
trường học trong vài năm trở lại đây. Đề tài “Thực hiện một số ứng dụng nhúng cơ
bản trên board Altera DE2-115” được thực hiện trên board DE2-115 sẽ nghiên cứu
một số bài thí nghiệm nhằm phục vụ cho nhu cầu học tập cũng như làm tài liệu
tham khảo sau này.
LỊCH SỬ GIẢI QUYẾT VẤN ĐỀ
Việc xây dựng và phát triển hệ thống nhúng đã không còn là lĩnh vực quá
mới mẻ với một số quốc gia. Nhiều công ty, trường đại học trên thế giới cũng đã
nguyên cứu và đạt được nhiều thành công trong lĩnh vực này như công ty Terasic,
Altera, trường đại học Cornell … Và việc phát triển hệ thống nhúng để thực hiện
các công việc đồ họa máy tính cũng đã được quan tâm rất lớn.
1.1

Tuy nhiên tại Việt Nam, các công ty và các trường đại học cũng chỉ mới
tiếp cận với lĩnh vực này khoảng vài năm trở lại đây. Vì vậy, việc nghiên cứu và
phát triển trong lĩnh vực này là chưa nhiều và còn gặp nhiều khó khăn. Do đó
những đề tài về hệ thống nhúng hoàn thành chưa được như mong muốn hoặc với số
lượng còn hạn chế.
PHẠM VI ĐỀ TÀI
Đề tài được thực hiện trên board Altera DE2-115 Development and
Education do Terasic sản xuất, kết hợp với các phần mềm như Quartus II, Nios II,
Altera Monitor Program. Ngôn ngữ Assembly và C được lựa chọn để thực hiện
việc xây dựng ứng dụng.
1.2


Đề tài xây dựng các bài thí nghiệm Hệ thống nhúng nhằm phục vụ cho nhu
cầu tham khảo, học tập và giảng dạy sau này.
2


Luận văn tốt nghiệp

1.3

Thực hiện một số ứng dụng nhúng cơ bản trên board Altera DE2-115

PHƯƠNG PHÁP NGHIÊN CỨU
1.
Tìm hiểu board DE2-115 Development and Education.
2
Thiết kế và xây dựng hệ thống bằng công cụ QSys.
3
Sử dụng phần mềm Nios II tạo ứng dụng.
4
Sử dụng Altera Monitor Program thực hiện ứng dụng dùng ngôn ngữ
Assembly.
5
Kiểm tra và sửa chữa.

3


Luận văn tốt nghiệp

Thực hiện một số ứng dụng nhúng cơ bản trên board Altera DE2-115


CHƯƠNG 2: CƠ SỞ LÝ THUYẾT
Chương này sẽ trình bày các vấn đề:
 Giới thiệu tổng quan về board DE2-115.
 Giới thiệu phần mềm Quartus II.
 Hướng dẫn tạo một dự án trong Quartus II và tạo hệ thống trong
QSys.
GIỚI THIỆU BOARD DE2-115
Board DE2-115 Development and Education của Terasic có nhiều chức
năng cho phép người dùng thực hiện một loạt các mạch thiết kế, từ các mạch đơn
giản cho đến các dự án đa phương tiện khác nhau.
2.1

Sơ đồ khối của board DE2-115

Hình 2.1 Sơ đồ khối mô tả cấu tạo của board DE2-115 [7]

Bằng cách cấu tạo sơ đồ khối như bên trên, người sử dụng có thể tạo ra hệ
thống và sử dụng hệ thống đó một cách tối ưu.
 Chip FPGA Cyclone IV EP4CE115F29
o 114,480 LEs
o 432 M9K memory blocks
o 3,888 Kbits embedded memory
4


Luận văn tốt nghiệp

















Thực hiện một số ứng dụng nhúng cơ bản trên board Altera DE2-115

o 4 PLLs
Bộ cấu hình cho FPGA
o JTAG and AS mode configuration
o EPCS64 serial configuration device
o On-board USB Blaster circuitry
Thiết bị nhớ
o 128MB (32Mx32bit) SDRAM
o 2MB (1Mx16) SRAM
o 8MB (4Mx16) Flash with 8-bit mode
o 32Kb EEPROM
SD Card socket
o Provides SPI and 4-bit SD mode for SD Card access
Các kết nối (Connectors)
o Two Ethernet 10/100/1000 Mbps ports
o High Speed Mezzanine Card (HSMC)

o Configurable I/O standards (voltage levels:3.3/2.5/1.8/1.5V)
o USB type A and B
 Provide host and device controllers compliant with USB 2.0
 Support data transfer at full-speed and low-speed
 PC driver available
o 40-pin expansion port
 Configurable I/O standards (voltage levels:3.3/2.5/1.8/1.5V)
o VGA-out connector
 VGA DAC (high speed triple DACs)
o DB9 serial connector for RS-232 port with flow control
o PS/2 mouse/keyboard
Xung Clock
o Three 50MHz oscillator clock inputs
o SMA connectors (external clock input/output)
Âm thanh (Audio)
o 24-bit encoder/decoder (CODEC)
o Line-in, line-out, and microphone-in jacks
Display
o 16x2 LCD module
Switches and indicators
o 18 slide switches and 4 push-buttons switches
o 18 red and 9 green LEDs
o Eight 7-segment displays
Other features
o Infrared remote-control receiver module
o TV decoder (NTSC/PAL/SECAM) and TV-in connector
Power
o Desktop DC input
o Switching and step-down regulators LM3150MH
5



Luận văn tốt nghiệp

Thực hiện một số ứng dụng nhúng cơ bản trên board Altera DE2-115

CẤU HÌNH CYCLONE IV E FPGA [7]:
Phần mềm Quartus II của Altera được dùng để cấu hình phần cứng cho chip
FPGA. Có hai cách cấu hình như sau:
2.2

 JTAG programming: Trong cách thức này thì dữ liệu cấu hình phần
cứng được nạp trực tiếp xuống Cyclone IV E FPGA. Chip FPGA sẽ duy
trì cấu hình được lập trình trong khi nó được duy trì nguồn nuôi. Các
thông tin về cấu hình sẽ mất khi nguồn điện bị mất. Chức năng của
MAX II EPM 240 là nạp cấu hình hệ thống FPGA từ Flash.

Hình 2.2 Hệ thống nạp thông qua JTAG programming.

 AS programming: Ở cách thức này gọi là Acive Serial programming. Dữ
liệu dùng để cấu hình phần cứng sẽ được nạp xuống chip Altera
EPCS64. Do nó là một thiết bị lưu trữ không bay hơi, nên thông tin sẽ
vẫn được duy trì ngay khi nguồn điện bị mất. Khi board được cấp nguồn,
thì dữ liệu cấu hình lưu trên chip EPCS64 sẽ tự động nạp xuống chip
FPGA.

Hình 2.3 Hệ thống nạp thông qua AS programming.

2.3


PHẦN MỀM QUARTUS II V11.0

2.3.1 Giới thiệu Quartus II
Quartus II là công cụ phần mềm phát triển bởi hãng Altera, cung cấp môi
trường thiết kế toàn diện. Đây là phần mềm đóng gói tích hợp đầy đủ phục vụ cho
các thiết kế logic với các linh kiện logic khả trình PLD của Altera, gồm các dòng
APEX, CYCLONE, MAX, PLEX,..
Quartus II cho phép làm việc với nhiều file ở cùng một thời điểm, soạn thảo
file thiết kế trong khi vẫn có thể mô phỏng hay chạy mô phỏng các dự án khác.
Công cụ biên dịch Quartus II nằm ở trung tâm hệ thống, cung cấp quy trình thiết kế
cho phép tùy biến để đạt được thiết kế tối ưu trong dự án. Công cụ định vị lỗi tự
6


Luận văn tốt nghiệp

Thực hiện một số ứng dụng nhúng cơ bản trên board Altera DE2-115

động và các bản tin cảnh báo khiến cho việc phát hiện và sửa lỗi trở nên đơn giản
hơn.

Hình 2.4 Giao diện Quartus II 11.0

2.3.2 Nios II 32 bit CPU
Nios II là một kiến trúc vi xử lý 32-bit được thiết kế chuyên cho các dòng
chip FPGA của Altera. Nios II tích hợp nhiều tính năng tiên tiến và thích hợp cho
nhiều ứng dụng từ DSP cho tới điều khiển. Kiến trúc của Nios II là kiến trúc RISC
soft-core, nghĩa là Nios II được tạo thành hoàn toàn bằng các phần tử logic (logic
element) và các memory block của Altera FPGA. Kiến trúc soft-core của vi xử lý
Nios cho phép người thiết kế hệ thống có thể tùy biến lõi. CPU Nios II theo mục

đích thiết kế, ngoài ra, người thiết kế có thể mở rộng khả năng của CPU bằng cách
thêm các tính năng như quản lý bộ nhớ MMU hoặc các lệnh tùy biến (custom
instruction) …
Có 3 dạng nhân đặc trưng của bộ xử lý Nios II
 Nios II/f được dùng trong các phần thiêt kế cần hiệu suất cao và có một
số chức năng sau:
o Tùy chọn MMU (Memory Management Unit) và MPU
(MicroProcessor Unit).
o Truy cập lên đến 2GB không gian địa chỉ bên ngoài.
o Tùy chọn liên kết bộ nhớ cho instruction và data.
o Tùy chọn chia phần cứng.
o Rẻ nhánh động.
o Nhiều lớp phần cứng.
o Caches instuction và data riêng biệt.
7


Luận văn tốt nghiệp

Thực hiện một số ứng dụng nhúng cơ bản trên board Altera DE2-115

o Module sửa lỗi JTAG.
 Nios II/s được dùng để duy trì cân bằng giữa hiệu suất và chi phí, có
một số chức năng sau:
o Caches Instruction.
o Rẽ nhánh tĩnh.
o Nhiều lớp, phân chia và thay đổi phần cứng.
o Module sửa lỗi JTAG.
Nios II/e được dùng trong các ứng dụng nhỏ.
2.3.3 Thiết kế dự án bằng Quartus II

Double click vào biểu tượng Quartus II trên màn hình, sau khi xuất hiện
giao diện, vào File chọn New project wizard…

Hình 2.5 Tạo New project wizard

Chọn Next sẽ được giao diện như sau, chọn vị trí lưu dự án, đặt tên dự án.

Hình 2.6 Đặt tên cho project

Ở bước tiếp theo có thể chèn thêm file bằng cách chọn biểu tượng
dẫn
đường dẫn đến vị trí file cần chèn và chọn Add hoặc có thể bỏ qua bước này, các
file cần chèn vào sẽ được chèn thêm sau. Nhấn Next để đến bước kế tiếp.

8


Luận văn tốt nghiệp

Thực hiện một số ứng dụng nhúng cơ bản trên board Altera DE2-115

Hình 2.7 Thêm file thiết kế

Ở bước kế tiếp, chọn Cyclone IV E trong Device Family, trong mục
Available devices chọn tên chip là EP4CE115F29C7. Nhấn Next.

Hình 2.8 Chọn thiết bị

9



Luận văn tốt nghiệp

Thực hiện một số ứng dụng nhúng cơ bản trên board Altera DE2-115

Hình 2.9 Thiết lập công cụ EDA

Ở bước này cho phép cài đặt một số tính năng để phát triển dự án, trong
giới hạn phạm vi xây dựng các bài thí nghiệm thì ở bước này để mặc định (Hình
2.9).
Bước tiếp theo là cửa sổ tóm tắt các thông số thiết kế đã lựa chọn ở các
bước trước đó.

Hình 2.10 Cửa sổ tóm tắt các thông số đã chọn

Cuối cùng chọn Finish để kết thúc quá trình tạo dự án mới.
2.3.4 Xây dựng hệ thống đơn giản bằng QSys trên Quartus II
QSys là hệ thống công cụ tích hợp của Altera được sử dụng để thiết kế hệ
thống phần cứng kỹ thuật số. QSys là thế hệ sau của SoPC Builder được hỗ trợ bởi
10


Luận văn tốt nghiệp

Thực hiện một số ứng dụng nhúng cơ bản trên board Altera DE2-115

NoC (Network on a chip), công nghệ mới của FPGA tối ưu hóa cung cấp hiệu suất
cao hơn, cải tiến thiết kế tái sử dụng và được xác nhận là nhanh hơn SoPC Builder.
Công cụ QSys cho phép thiết kế hệ thống số bằng cách kết nối các thành phần như
bộ vi xử lí, bộ nhớ, cổng song song,… lại với nhau.

Ưu điểm của QSys:
 Dễ dàng để sử dụng giao diện GUI cho phép tích hợp nhanh giữa các
chức năng IP và hệ thống con.
 QSys cung cấp hỗ trợ giao diện bộ nhớ ánh xạ đạt được gần gấp đôi
hiệu suất của công cụ SOPC Builder Altera, đồng thời nâng cao khả
năng mở rộng hệ thống cho các thiết kế FPGA lớn và cho phép hỗ trợ
cho các giao diện tiêu chuẩn công nghiệp.
 Hỗ trợ các giao diện tiêu chuẩn công nghiệp, vì vậy có thể kết nối các
lõi IP của các giao diện khác nhau.
 Thiết kế phân cấp, cho phép bạn dễ dàng tái sử dụng các IP, chức năng
(như hệ thống con) và cũng để phát triển hệ thống mở rộng.
Cách tạo một hệ thống QSys:
Trên thanh công cụ Quartus chọn Tools > QSys hoặc chọn biểu tượng
để mở QSys.

Hình 2.11 Giao diện sau khi mở QSys.

Thêm Nios II Processors
Trong cửa sổ Component Library, chọn Processors > Nios II Processor.

11


Luận văn tốt nghiệp

Thực hiện một số ứng dụng nhúng cơ bản trên board Altera DE2-115

Hình 2.12 Tạo Nios II Processor.

Sau khi chọn Nios II Processor sẽ có một hộp thoại xuất hiện cho phép ta

chọn kiểu Nios II, tùy vào tính năng của hệ thống mà chọn lõi Nios II cho phù hợp.
Trong ví dụ này ta chọn phiên bản đơn giản nhất là phiên bản Nios II/e.

Hình 2.13 Giao diện cấu hình CPU Nios II/e.

12


Luận văn tốt nghiệp

Thực hiện một số ứng dụng nhúng cơ bản trên board Altera DE2-115

Sau khi chọn Nios II Core ta click vào tag JTAG Debug Mode, đối với các
thiết kế đơn giản ta chọn Level 1, nhấn Finish sau đó đổi tên nios2_qsys_0 thành
CPU để hoàn tất việc tạo CPU.

Hình 2.14 Giao diện cấu hình JTAG Debug.

Hình 2.15 Tạo On-chip Memory.

13


Luận văn tốt nghiệp

Thực hiện một số ứng dụng nhúng cơ bản trên board Altera DE2-115

Thêm Onchip Memory (RAM or ROM)
Nios II chỉ là một lõi vi xử lý chứ chưa phải là vi điều khiển do đó nó cần
phải có tối thiểu bộ nhớ dữ liệu và bộ nhớ chương trình để có thể hoạt động được.

Trong cửa sổ Component Library, chọn Memories and Memory
Controllers > On-chip > On-chip Memory (RAM or ROM) để tạo bộ nhớ. (Hình
2.15)
 Ở hộp thoại On-Chip Memory(RAM or ROM)
o Tại tag Data width: Chọn 32.
o Tại tag Total memory size chọn dung lượng cho bộ nhớ là 32768
(bytes).
o Chọn Finish để hoàn thành việc thiết kế bộ nhớ.
o Đổi tên onchip_memory2_0 thành RAM.

Hình 2.16 Giao diện cấu hình On-chip Memory.

Thêm JTAG UART
JTAG UART có chức năng kết nối dữ liệu từ máy chủ PC với board DE2115 thông qua cổng USB Blaster, phương pháp truyền chuỗi ký tự nối tiếp. Để tạo
JTAG UART trong cửa sổ Component Library chọn Interface Protocols > Serial >
JTAG UART.

14


×