1. Trang chủ
  2. » Luận Văn - Báo Cáo

Công nghệ fpga và ứng dụng giảng dạy môn điện tử số tại trường đại họ công nghiệp việt hung

143 4 0

Đ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 đề Công Nghệ FPGA Và Ứng Dụng Giảng Dạy Môn Điện Tử Số Tại Trường Đại Học Công Nghiệp Việt-Hung
Tác giả Phùng Toàn Thắng
Người hướng dẫn PGS.TS. Phí Hòa Bình, TS. Phạm Ngọc Nam
Trường học Trường Đại Học Công Nghiệp Việt-Hung
Chuyên ngành Sư Phạm Kỹ Thuật
Thể loại Luận Văn Thạc Sĩ
Năm xuất bản 2012
Thành phố Hà Nội
Định dạng
Số trang 143
Dung lượng 5,12 MB

Nội dung

77 Trang 9 DANH MỤC CÁC CHỮ VIẾT TẮTTT Chữ viết tắt Ý Nghĩa 1 CLB Configurable Logic Blocks 2 CPLD Complex Programmable Logic Devices 3 CN Công nghiệp 4 CNTT Công nghệ thông tin 5 CONL

Trang 1

CÔNG NGHỆ FPGA VÀ ỨNG DỤNG GIẢNG DẠY MÔN ĐIỆN

TỬ SỐ TẠI TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP VIỆT -HUNG

LUẬN VĂN THẠC SĨ SƯ PHẠM KỸ THUẬT

CHUYÊN NGÀNH: LÝ LUẬN VÀ PHƯƠNG PHÁP DẠY HỌC

CHUYÊN SÂU: SƯ PHẠM KỸ THUẬT ĐIỆN TỬ

Trang 2

BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI

-

PHÙNG TOÀN THẮNG

CÔNG NGHỆ FPGA VÀ ỨNG DỤNG GIẢNG DẠY MÔN ĐIỆN TỬ SỐ

TẠI TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP VIỆT- HUNG

LUẬN VĂN THẠC SĨ SƯ PHẠM KỸ THUẬT CHUYÊN NGÀNH: LÝ LUẬN VÀ PHƯƠNG PHÁP DẠY HỌC

CHUYÊN SÂU: SƯ PHẠM KỸ THUẬT ĐIỆN TỬ

NGƯỜI HƯỚNG DẪN KHOA HỌC :

2 TS PHẠM NGỌC NAM

Trang 3

LỜI CẢM ƠN

Sau một thời gian nghiên cứu và làm việc khẩn trương cùng với sự giúp đỡ

và chỉ bảo tận tình của PGS.TS Phí Hòa Bình và Ts Phạm Ngọc Nam luận văn với đề tài: “Công nghệ FPGA và ứng dụng giảng dạy môn điện tử số tại trường Đại học công nghiệp Việt-Hung” đã hoàn thành

Tác giả xin bày tỏ lòng biết ơn sâu sắc tới:

Các thầy giáo hướng dẫn PGS.TS Phí Hòa Bình và Ts Phạm Ngọc Nam

đã tận tình chỉ dẫn, giúp đỡ tác giả hoàn thành luận văn này

Viện Đào Tạo Sau Đại Học, Ban chủ nhiệm và các thầy Khoa Sư Phạm Kỹ Thuật, Khoa Điện Tử Viễn Thông, tập thể các thầy cô giáo trường ĐHBK Hà Nội, Ban Giám Hiệu, tập thể giáo viên Khoa Điện Điện tử CNTT trường ĐHCN Việt - - – Hung đã tạo mọi điều kiện thuận lợi cho việc học tập, nghiên cứu và tiến hành luận văn của tác giả

Toàn thể bạn bè đồng nghệp, gia đình và người thân đã quan tâm, động viên giúp đỡ để tác giả hoàn thành luận văn này

Mặc dù đã rất cố gắng tuy nhiên luận văn này không tránh khỏi những thiếu sót Rất mong được sự đóng góp ý kiến của thầy cô giáo, bạn bè đồng nghiệp để luận văn của tác giả được hoàn thiện hơn

Xin chân thành cám ơn!

Hà Nội, ngày15 tháng 01 năm 2012

Tác giả

Phùng Toàn Thắng

Trang 4

LỜI CAM ĐOAN

Tôi xin cam đoan những gì viết trong luận văn này là do tìm hiểu, nghiên cứu của bản thân cùng với sự hướng dẫn chỉ bảo tận tình của PGS.TS Phí Hòa

Bình và Ts Phạm Ngọc Nam Mọi kết quả nghiên cứu cũng như ý tưởng của tác

giả khác nếu có đều được trích dẫn cụ thể

Luận văn này cho đến nay chưa được ai bảo vệ tại bất kỳ một hội đồng nào cũng như chưa từng được công bố trên bất kỳ phương tiện thông tin nào

Tôi xin hoàn toàn chịu trách nhiệm về những lời cam đoan trên

Hà Nội, ngày 15 tháng 01 năm 2012

Tác giả

Phùng Toàn Thắng

Trang 5

MỤC LỤC

LỜI CẢM ƠN 1

LỜI CAM ĐOAN 2

DANH MỤC CÁC CHỮ VIẾT TẮT 7

DANH MỤC CÁC BẢNG BIỂU 8

DANH MỤC CÁC HÌNH VẼ 9

MỞ ĐẦU 11

1 LÝ DO CHỌN ĐỀ TÀI 11

1.1 Xuất phát từ định hướng cơ bản về mục tiêu đào tạo 11

1.2 Xuất phát từ nhiệm vụ, đặc điểm đặc trưng của môn học 12

1.3 Xuất phát từ thực trạng dạy học môn điện tử số tại trường đại học công nghiệp Việt-Hung 12

2 MỤC ĐÍCH, NHIỆM VỤ CỦA ĐỀ TÀI 12

2.1 Mục đích 12

2.2 Nhiệm vụ của đề tài 12

3 GIẢ THIẾT KHOA HỌC 13

4 ĐỐI TƯỢNG VÀ PHẠM VI NGHIÊN CỨU 13

4.1 Đối tượng nghiên cứu 13

4.2 Phạm vi nghiên cứu 13

5 PHƯƠNG PHÁP NGHIÊN CỨU 13

6 CẤU TRÚC CỦA LUẬN VĂN 14

CHƯƠNG 1: CÔNG NGHỆ FPGA 15

1.1 GIỚI THIỆU VỀ CÔNG NGHỆ FPGA 15

1.1.1 Sự phát triển của các vi mạch lập trình được 15

1.1.2 Cấu trúc cơ bản của FPGA 18

1.1.2.1.Cấu trúc tổng quát của FPGA 19

1.1.2.2 Mô tả chức năng logic 19

Trang 6

1.1.3 Một số công nghệ lập trình sử dụng trong công nghệ FPGA 25

1.1.3.1 Cấu trúc tế bào SRAM 25

1.1.3.2 Cấu trúc Antifuse 26

1.2 QÚA TRÌNH THIẾT KẾ CƠ BẢN TRÊN FPGA VÀ ỨNG DỤNG CỦA FPGA 26

1.2.1 Giới thiệu về quá trình thiết kế 26

1.2.2 Ứng dụng của FPGA 27

1.3 GIỚI THIỆU VỀ BOARD SPANRTN 3E CỦA XILINX 29

1.4 KẾT LUẬN CHƯƠNG 1 34

CHƯƠNG 2: NGÔN NGỮ MÔ TẢ PHẦN CỨNG VHDL 35

2.1 GIỚI THIỆU VỀ VHDL 35

2.2 CÁC THUẬT NGỮ CỦA VHDL 36

2.3 CẤU TRÚC CỦA MỘT CHƯƠNG TRÌNH VHDL 36

2.4 CÁC ĐƠN VỊ THIẾT KẾ TRONG VHDL 38

2.4.1.Gói (Package) 38

2.4.2 Thực thể (Entity) 40

2.4.3 Kiến trúc (ARCHITECTURE) 41

2.4.3.1 Mô tả kiến trúc bằng hành vi 42

2.4.3.2 Mô tả kiến trúc bằng cấu trúc 43

2.4.4 Cấu hình (CONFIGURATION) 45

2.5 CÁC KIỂU DỮ LIỆU TRONG VHDL 46

2.5.1 Các đối tượng dữ liệu 46

2.5.1.1 Hằng 46

Trang 7

2.7 CÁC LỆNH TUẦN TỰ TRONG VHDL 49

2.7.1 Câu lệnh gán cho biến 49

2.7.2 Câu lệnh gán tín hiệu 50

2.7.3 Câu lệnh if 50

2.7.4 Câu lệnh Case 51

2.7.5 Các lệnh vòng lặp 51

2.7.6 Câu lệnh Null 52

2.8 CÁC LỆNH SONG SONG TRONG VHDL 52

2.8.1 Các quá trình Process 53

2.8.2 Các phép gán tín hiệu song song 54

2.8.3 Phép gán tín hiệu có điều kiện 55

2.8.4 Phép gán tín hiệu theo lựa chọn 56

2.8.5 Khối 57

2.9 Kết luận chương 2 58

CHƯƠNG 3: ỨNG DỤNG CÔNG NGHỆ FPGA VÀO GIẢNG DẠY MÔN ĐIỆN TỬ SỐ TẠI TRƯỜNG ĐHCN VIỆT-HUNG 59

3.1 VÀI NÉT VỀ ĐẠI HỌC CÔNG NGHIỆP VIỆT HUNG 59

3.1.1 Quá trình hình thành và phát triển 59

3.1.2 Nhiệm vụ của nhà trường 60

3.1.3 Cơ cấu tổ chức 61

3.1.4 Về quy mô và loại hình đào tạo 62

3.1.5 Đội ngũ cán bộ, giảng viên, công nhân viên 65

3.1.6 Cơ sở vật chất 65

3.1.7 Lịch sử hình thành ngành công nghệ kỹ thuật điện tử 66

3.2 THỰC TRẠNG GIẢNG DẠY MÔN ĐIỆN TỬ SỐ TẠI TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP VIỆT-HUNG 67

3.2.1 Chương trình đào tạo 67

3.2.2 Giảng viên 74

Trang 8

3.2.4 Đánh giá chương trình 76

3.2.5 Kết luận chung 76

3.3 ỨNG DỤNG CÔNG NGHỆ FPGA GIẢNG DẠY THỰC HÀNH MÔN ĐIỆN TỬ SỐ TẠI TRƯỜNG ĐẠI HỌC CN VIỆT – HUNG 77

3.3.1 Xây dựng chương đào tạo thực hành 77

3.3.2 Thực nghiệm sư phạm 85

3.3.2.1 Mục đích thực nghiệm 85

3.3.2.2 Nội dung thực nghiệm 85

3.3.2.3 Kế hoạch thực nghiệm 97

3.3.2.4 Kết quả thực nghiệm 97

KẾT LUẬN VÀ KIẾN NGHỊ 105

Kết luận 105

Một số kiến nghị: 105

TÀI LIỆU THAM KHẢO 107

PHỤ LỤC 108

Trang 9

DANH MỤC CÁC CHỮ VIẾT TẮT

6 EPROM Erasable Programmable Read Only Memory

7 EEPROM Electrically Erasable Programmable Read Only Memory

9 IEEE Institute of Electrical and Electronic Engineers

15 FPGA Field-Programmable Gate Array

16 FLEX Flexible Logic Element Matrix

21 TEGAS Test Generation and Simulation

23 VHSIC Very High Speed Itergrated Circuit

Trang 10

DANH MỤC CÁC BẢNG BIỂU

Bảng 1.1: Sự kết nối của VGA tới Spartan 3E FPGA

Bảng 1.2: Bảng mã màu

Bảng 1.3: Sự kết nối của PS/2 với Spartan 3 FPGA

Bảng 3.1: Quy mô đào tạo từ năm 2007 đến 2010

Bảng 3.2: Quy mô đào tạo được giao năm 2011

Bảng 3.11: Mức độ hài lòng của sinh viên khi thực hành bài 1Bảng 3.12: Điểm kiểm tra sinh viên thực hành bài 6

Bảng 3.13: Mức độ hài lòng của sinh thực hành trên bài 6

Bảng 3.14: Điểm kiểm tra sinh viên khi thực hành bài 4

Bảng 3.15: Mức độ hài lòng của sinh viên khi thực hành bài 4 Bảng 3.16: Điểm kiểm tra sinh viên thực hành bài 9

Bảng 3.17: Mức độ hài lòng của sinh viên thực hành bài 9

Trang 11

DANH MỤC CÁC HÌNH VẼ

Hình 1.1: Cấu trúc của PAL

Hình 1.2: Cấu trúc của PLA

Hình 1.3: Cấu trúc của CPLD

Hình 1.4: Cấu trúc chung của FPGA

Hình 1.5: Tạo hàm 3 đầu vào bằng MUX

Hình 1.6: Bảng tìm kiếm LUT 3 đầu vào

Hình 1.7: Tạo hàm 3 đầu vào bằng LUT

Hình 1.8: Cấu trúc của môt LC trong FPGA của Xilinx

Hình 1.9: CLB gồm có 4 Slice của FPGA

Hình 1.10: Ma trận kết nối dùng Transitor truyền trong FPGA Hình 1.11: Các loại kết nối trong FPGA

1.12 Một số công nghệ lập trình sử dụng trong công nghệ FPGA Hình 1.13: Cấu trúc tế bào SRAM của Xilinx

Hình 1.14: Cấu trúc tế bào OTP sử dụng Antifuse

Hình 1.15: Quá trình thiết kế trên FPGA

Hình 1.16: Mặt trên của board Spartan 3E

Hình 1.17: Bốn công tắc trượt có điện trở Pullup

Hình 1.18: Bốn công tắc nút ấn và công tắc xoay

Hình 1.19: Dạng công tắc nút ấn có điện trở Pull-Down

Hình 1.20: Hai chuyển mạch xoay có điện trở Pullup

Hình 1.21: Tám led đơn và các chân được gán

Hình 1.22: Cổng hiển thị VGA 3 bit , 8 màu

Hình 1.23: Cổng RS232

Hình 1.24: PS/2DIN Connector

Hình 1.25: Sơ đồ chân LCD 16x2

Hình 2.1: Cấu trúc chung của chương trình VHDL

Hình 2.2: Quan hệ giữa các đơn vị thiết kế

Trang 12

Hình 2.5: Sơ đồ của trigo RS

Hình 3.1: Mô hình thực hiện quá trình dạy học

Hình 3.2:Kết quả phỏng vấn giảng viên trong khoa Điện Điện tử- -CNTT Hình 3.3: Kết quả điều tra sinh viên về chuẩn bị cho bài kiểm tra

Hình 3.4: Kết quả học tập của sinh viên thực hành bài 1

Hình 3.5: Mức độ hài lòng của sinh viên thực hành bài 1

Hình 3.6: Kết quả học tập của sinh viên thực hành bài 6

Hình 3.7: Mức độ hài lòng của sinh viên khi thực hành bài 6

Hình 3.8: Kết quả học tập của sinh viên thực hành bài 4

Hình 3.9: Mức độ hài lòng của sinh viên khi thực hành bài 4

Hình 3.10: Kết quả học tập của sinh viên thực hành bài 9

Hình 3.11: Mức độ hài lòng của sinh viên khi ứng bài 9

Trang 13

MỞ ĐẦU

1 LÝ DO CHỌN ĐỀ TÀI

1.1 Xuất phát từ định hướng cơ bản về mục tiêu đào tạo

Đào tạo nguồn nhân lực có tay nghề cao là một khâu rất quan trọng trong sự nghiệp công nghiệphóa, hiện đại hóa của bất cứ quốc gia nào

Để thích ứng với sự thay đổi của nền kinh tế trong giai đoạn mới, công tác đào tạo nguồn nhân lực cần được mềm hóa, đa dạng hóa nhằm phù hợp với nhu cầu của thị trường lao động và nhu cầu của người học

Đặc biệt trong điều kiện nước ta hiện nay, nền kinh tế đang trên đà phát triển nhiều cơ hội và cũng nhiều thách thức Nền công ghiệp của nước nhà còn thiên về ngia công và lắp ráp, các lĩnh vực công nghệ cao đang hình thành và sẽ phát triển; việc định hướng đào tạo theo quan điểm nào đó là một việc làm vô cùng cần thiết Việc đưa những công nghệ mới vào các chương trình đào tạo nhằm nâng cao chất lượng nguồn nhân lực, giúp người học tìm kiếm công việc sau đào tạo một cách tốt hơn hoặc để nâng cao năng suất lao động đang là nhu cầu bức bách của toàn xã hội

-Xác định được yêu cầu đó trong chiến lược giá dục 2001 2010 đã khẳng định cần Tạo bước chuyển biến về chất lượng giáo dục theo hướng tiếp cận trình “

độ tiên tiến của thế giới, phù hợp với thực tiễn ở Việt Nam, phục vụ thiết thực cho

sự phát triển kinh tế xã hội của đất nước; nâng cao chất lượng đào tạo nguồn nhân lực góp phần nâng cao sức cạnh tranh của nền kinh tế; Đổi mới mục tiêu, nội dung, phương pháp chương trình giáo dục các bậc học các trình độ đào tạo…”.,

-Để đáp ứng nhu cầu trên, đã có nhiều trường cao đẳng, đại học trong cả nước

đã triển khai các công nghệ mới trong chương trình đào tạo của mình và giảng dạy cho sinh viên Tuy nhiên tại trường đại học công nghiệp Việt- Hung việc đưa các công nghệ mới vào các chương trình đạo tạo còn rất hạn chế, công nghệ FPGA gần như chưa được đề cập tới

Trang 14

1.2 Xuất phát từ nhiệm vụ, đặc điểm đặc trưng của môn học

Nhiệm vụ của môn học Điện tử số là trang bị cho sinh viên những hiểu biết

về khái niệm tín hiệu số, các bài toán về mạch tổ hợp, mạch logic dãy từ đó sinh viên biết cách ứng dụng, lựa chọn, lắp ráp tạo ra các mạch số cơ bản

Đặc trưng của môn học Điện tử số là môn học có tính tư duy trừu tượng cao,

có tính ứng dụng cao đối với người học chuyên nghành kỹ thuật điện tử Điều này đòi hỏi giảng viên, sinh viên phải nghiên cứu tìm tòi để có thể vận dụng các kiến thức đã học vào thực tiễn có hiệu quả

1.3 Xuất phát từ thực trạng dạy học môn điện tử số tại trường đại học công nghiệp Việt-Hung

g

Là một iảng viên giảng dạy môn học Điện tử số tại trường Đại học công nghiệp Việt-Hung, tác giả nhận thấy: Phần học lý thuyết thường tách rời với thực hành, trang thiết bị thực hành còn hạn chế, các bài thực hành chỉ tiến hành trên các

IC cỡ nhỏ cho các bài tập Việc triển khai thiết kế các ứng dụng từ IC cỡ nhỏ đã gặp nhiều khó khăn, từ đó không gây hứng thú cho người học, làm mất dần đi tính tích cực, chủ động và sáng tạo trong học tập, nghiên cứu của sinh viên

Từ những tồn tại nêu trên, được sự đồng ý của PGS.TS Phí Hòa Bình và

Ts Phạm Ngọc Nam, tác giả chọn đề tài “Công nghệ FPGA và ứng dụng giảng dạy môn điện tử số tại trường Đại học công nghiệp Việt-Hung(FPGA and its

applications in teaching digital electronics in Viet-Hung industrial university)”

2 MỤC ĐÍCH, NHIỆM VỤ CỦA ĐỀ TÀI

2.1 Mục đích

Ứng dụng cộng nghệ FPGA và kiến thức ngôn ngữ mô tả phần cứng VHDL

để xây ựng bài giảng thực hành ứng dụng công nghệ FPGAd , nhằm nâng cao

Trang 15

- Nghiên cứu lý thuyết về công nghệ FPGA, ngôn ngữ mô tả phần cứng VHDL

- Nghiên cứu thực trạng giảng dạy môn học điện tử số tại trường

- Đề xuất một số giải pháp để đổi mới việc biên soạn chương trình và thực hiện giảng dạy theo hướng ứng dụng công nghệ mới FPGA

- Xây dựng bài giảng thực hành ứng dụng công nghệ FPGA của Xinlinxcho

hệ đào cao đẳng và đại học tại trường ĐHCN Việt-Hung

- Tiến hà h thực nghiệm một số bài học ứng dụng côn nghệ FPGAn g

3 GIẢ THIẾT KHOA HỌC

Trong những năm qua việc giảng dạy môn điện tử số còn nhiều hạn chế, tình trạng thiếu những trang thiết bị, nhất là các công nghệ mới như FPGA đã chưa được đưa vào nghiên cứu, giảng dạy tại trường nhằm phát huy tích tích cực chủ động củangười học trong học tập, nghiên cứu Việc triển khai các ứng dụng từ các linh kiện

cỡ nhỏ còn có nhiều hạn chế, gặp nhiều khó khăn khi triển khai nhất là các hệ thống quy mô lớn Vì vậy việc nghiên cứu đề tài đề xuất các giải pháp hợp lý sẽ góp phần nâng cao chất lượng dạy học môn điện tử số làm tiền đề cho sinh viên lĩnh hội tốt nhất những môn học thuộc chuyên ngành điện tử tại trường ĐHCN Việt-Hung

4 ĐỐI TƯỢNG VÀ PHẠM VI NGHIÊN CỨU

4.1 Đối tượng nghiên cứu

Ứng dụng công nghệ FPGA trong giảng dạy môn điện tử số tại trường ĐHCN Việt – Hung

4.2 Phạm vi nghiên cứu

Đề tài tập trung nghiên cứu về công nghệ FPGA êu ra thực trạng giảng dạy , nmôn điện tử số, đề xuất một số giải pháp và ứng dụng công nghệ FPGA vào giảng dạy trong môn học tại tr ng ĐHCN Việtườ -Hung

5 PHƯƠNG PHÁP NGHIÊN CỨU

Phương pháp phân tích tổng hợp nghiên cứu lý thuyết Nghiên cứu dựa

Trang 16

giới Nhằm phân tích, tổng hợp, hệ thố g hóa, khái quát hóa các tri thức đãn có trong tài liệu, đưa ra cơ sở lý luận của các vấn đề nghiên cứu

Phương pháp điều tra khảo sát: Là phương pháp khảo sát một số lượng

lớn các đối tượng nghiên cứu vào một hay nhiều thời điểm Điều tra khảo sát nhằm thu thập rộng rãi các số liệu, hiện tượng để từ đó phát hiện các vấn đề cần giải quyết, xác định tính phổ biến, nguyên nhân chuẩn bị c o các nghiên cứu tiếp theo h

Phương pháp lấy ý kiến chuyên gia: Là phương pháp thông tin khoa học,

nhận định, đánh giá một sản phẩm khoa học bằng cách sử dụng trí tuệ một đội ngũ chuyên gia giáo dục có trình độc cao, ý kiến từng người bổ sung lẫn nhau, kiểm tra lẫn nhau cho người nghiên cứu một ý kiến đa số, khách quan về một vấn đề

Phương pháp thực nghiệm sư phạm: Thực nghiệm sư phạm là phương

pháp thu nhận thông tin về sự thay đổi số lượng, chất lượng trong nhận thức và hành vi của các đối tượng giáo dục do người nghiên cứu tác động bằng một tác nhân điều khiển và đã được kiểm tra

Nghiên cứu chủ động tác động vào đối tượng và qúa trình diễn biến sự kiện

mà đối tượng tham gia, để hướng dẫn sự phát triển của chúng theo mục tiêu dự kiến của mình

6 CẤU TRÚC CỦA LUẬN VĂN

Ngoài phần mở đầu và kết luận, nội dung chính thể hiện ở 3 chương:

Chương 1: Công nghệ FPGA

Chương 2: Ngôn ngữ mô tả phần cứng VHDL

Chương 3: Ứng dụng công nghệ FPGA vào giảng dạy môn điện tử số tại trường ĐHCN Việt –Hung

Ngoài ra còn thêm phần tài liệu tham khảo và phụ lục

Trang 17

CHƯƠNG 1: CÔNG NGHỆ FPGA

Chương này tác giả trình bày về công nghệ FPGA, giới thiệu lịch sử phát triển của các vi mạch lập trình được, cấu trúc của công nghệ FPGA và mô tả chức năng của FPGA Tác giả trình bày các khối cơ bản Board SPANRTN 3E của Xinlinx sẽ được ứng dụng để xây dựng cho bài thực hành môn điện tử số tại trường đại học CN Việt-Hung

1.1 GIỚI THIỆU VỀ CÔNG NGHỆ FPGA

Công nghệ chế tạo mạch vi điện tử ngày nay đang có một sự thay đổi lớn: Từ một mạch tính hợp vi điện tử với cơ sở thiết bị công nghệ tiên tiến chế tạo ra với số lượng lớn chuyển dần sang các mạch chuyên dụng sản xuất với lô nhỏ tại các cơ sở

có điều kiện công nghệ chưa phát triển Sự thay đổi đó được hình thành nhờ các công cụ thiết kế tự động Động lực chính của quá trình thay đổi này là giảm thời gian thiết kế, chế tạo vi mạch và tăng tính linh hoạt cho ngừời thiết kế lập trình với những ứng dụng riêng biệt

FPGA (Field-Programmable Gate Array), là mạch tích hợp cỡ lớn trong đó cho phép người lập trình thay đổi các thiết kế của mình mà không phải sử dụng bất

kỳ một công cụ chế tạo mạch tích hợp nào FPGA là công nghệ tiên tiến nhất hiện nay của ngành công nghệ chế tạo IC (Integrated Circuit) chuyên biệt

1.1.1 Sự phát triển của các vi mạch lập trình được

Các vi mạch lập trình được đóng vai trò quan trọng, lâu dài trong thiết kế các

vi mạch với những ứng dụng riêng biệt trong ngành điện tử viễ- n thông Chúng là các chíp đa dụng có thể được cấu hình theo nhiều cách cho ứng dụng Các loại vi mạch lập trình đơn giản đầu tiên được sử dụng rộng rãi là PROM (Programmable Read Only Memory) PROM là thiết bị lập trình chỉ được một lần gồm một dãy các

ô nhớ chỉ đọc

Hai biến thể của PROM là EPROM (Erasable Programmable Read Only Memory) và EEPROM (Electrically Erasable Programmable Read Only Memory) chúng điều có chung một ưu điểm là có thể xoá và lập trình nhiều lần

Trang 18

Một loại vi mạch lập trình được khác được thiết kế đặc biệt để thể hiện các mạch lôgíc là PLD (Programmable Logic Device )

Một PLD thông thường gồm một dãy các cổng AND được nối với một dãy các cổng OR Có 2 loại cơ bản nhất của PLD là PAL (Programmable Array Logic), PLA (Programmable Logic Array)

- PAL gồm một khối các cổng AND lập trình được nối đến một khối các cổng OR cố định [7]

Hình 1.1: Cấu trúc của PAL

Theo hình 1.1 các chân đầu vào được nối vào các đường theo chiều đứng, các đường nằm ngang được nối với các cổng AND OR Cấu trúc này có các mắt – lưới của các đường nối theo chiều ngang và chiều đứng Tại mỗi điểm giao nhau là một cầu chì, với sự trợ giúp của các công cụ phần mềm, người thiết kế có thể lựa chọn mối nối nào không được nối thì huỷ cầu chì Điều này được thực hiện bởi một

bộ nạp chương trình

- PLA cũng có cấu trúc giống PAL nhưng tất cả các kết nối là lập trình được

Trang 19

Hình 1.2: Cấu trúc của PLA

.Cả hai loại PAL và PLA cho phép thực hiện các mạch lôgíc tốc độ cao, tuy nhiên cấu trúc đơn giản của chúng chỉ cho phép thực hiện các mạch lôgíc cỡ nhỏ

Để thực thi các mạch yêu cầu nhiều đầu vào và nhiều đầu ra có nhiều chíp tinh vi hơn gọi là thiết bị lôgíc lập trình phức hợp CPLD (Complex Programmable Logic Devices)

CPLD là kết hợp vài PLA vào trong một IC đơn để tạo ra các thiết bị logic phức hợp lập trình được [7]

Hình 1.3: Cấu trúc của CPLD

Trang 20

Các CPLDs cực kỳ thích hợp trong việc mô tả các cổng logic phức tạp với tốc độ lớn 200 Mhz Khuôn mẫu thời gian cho CPLD rất dễ tính toán, bởi thế trước khi bắt đầu thiết kế chúng ta có thể tính toán các tốc độ từ đầu vào đến đầu ra của mình dựa trên khuôn mẫu này CPLDs đưa ra cách đơn giản nhất để thực hiện một thiết kế, một thiết kế có thể được mô tả bởi các sơ đồ hoặc bằng một ngôn ngữ mô

tả phần cứng, đơn giản khi sử dụng các công cụ phát triển để tối ưu hoá, nạp và mô phỏng thiết kế Các công cụ thiết kế tạo ra một file chương trình mà file này được dùng để đưa các chuẩn logic vào trong một chip CPLD cùng với chức năng mong muốn Giả sử nếu cần có một một sự thay đổi về thiết kế, chúng ta có thể đưa sự thay đổi thiết kế đó vào trong công cụ phát triển CPLD và thực thi trên nó sau đó có thể kiểm tra lại ngay thiết kế CPLD có mức tích hợp rất cao và được đóng gói trong một khuôn dạng rất nhỏ Điều này đã cung cấp một giải pháp tuyệt vời cho những người thiết kế cần sản phẩm của mình được đóng gói nhỏ gọn với diện tích bo mạch

bị giới hạn về khoảng không

1.1.2 Cấu trúc cơ bản của FPGA

FPGA được công ty Xilinx giới thiệu lần đầu vào năm 1985 nhằm tạo ra một thiết bị lập trình có mật độ tích hợp cao Kể từ đó cho đến nay có rất nhiều các hãng thiết kế và cung cấp các loại FPGA như Xilinx, Altera, Actel, Plus Logic…

Trang 21

1.1.2.1.Cấu trúc tổng quát của FPGA

Hình 1.4: Cấu trúc chung của FPGA

1.1.2.2 Mô tả chức năng logic

FPGA bao gồm một mảng các CLB(Configurable Logic Blocks) được đặt trong một ma trận của các kênh kết nối( Programmable Iterconnects) Đầu vào và đầu ra của các tín hiệu nhận được thông qua một sự thiết lập của các khối I/O Blocks xung quanh CLB và các kênh kết nối

- Các khối logic (logic block): Kiến trúc của khối logic có thể được thiết kế

theo nhiều cách khác nhau CLB có thể chỉ là các cổng NAND 2 đầu vào, có thể nó

là một bộ dồn kênh (multiplexer), hay các bảng tìm kiếm LUT (Luck-Up Table) Trong một số loại FPGA các khối logic có thể có cấu trúc hoàn toàn giống như PAL Các khối logic chứa một số loại flip flop để hỗ trợ cho việc thực hiện các -mạch tuần tự

CLB được sử dụng để thực hiện hầu hết các chức năng logic trong FPGA

Cấu trúc củacác CLB được trình bày như sau:

hình 1.5 + Cấu trúc CLB là một bộ dồn kênh (multiplexer) [8]

Trang 22

Hình 1.5: Tạo hàm 3 đầu vào bằng MUX

-+ Cấu trúc CLB là một bảng tìm kiếm LUT (Luck Up Table) hay được dùng trong FPGA, hình 1.6 mô tả LUT với 3 đầu vào[8]

Hình 1.6: Bảng tìm kiếm LUT 3 đầu vào

LUT thực hiện chức năng tạo hàm 3 đầu vào được mô tả như hình 1.7

CLB

Trang 23

Hình 1.7 : Tạo hàm 3 đầu vào bằng LUT

Ví dụ FPGA của Xilinx CLB gồm các : logic cell(LC), FPGA của hãng Altera gồm các logic element (LE), tuy nhiên LC và LE không khác nhau nhiều

Mỗi logic celllà một LUT 4 đầu vào được mô tả như hình 1.8

Mỗi LC chứa 1 flip flop dùng làm thanh ghi (lưu trữ) các đầu ra của bộ tạo hàm, flip-flop và bộ tạo hàm có thể được sử dụng độc lập hờ đầu vào e thông qua n

-bộ chọn đường MUX, Flip Flop được đồng -bộ bởi xung clock, xung nhịp cho phép clock enable và tín hiệu điều khiển set/reset

-Hình 1.8: Cấu trúc của môt LC trong FPGA của Xilinx

Trang 24

Bộ tạo chức năng của FPGA thực hiện như LUT có bốn đầu vào Mỗi một LUT có thể cung cấp một RAM 16x1bit đồng bộ Hơn nữa hai LUT trong một Slice

có thể được kết hợp để tạo RAM 16x2 bit hoặc 32x1 bit đồng bộ

Hình 1.9: CLB gồm có 4 Slice của FPGA

- Các nguồn tài nguyên kết nối: Các nguồn kết nối trong FPGA được gọi là

kiến trúc routing (routing architecture) Kiến trúc routing gồm các đoạn dây nối và các chuyển mạch lập trình được Các chuyển mạch lập trình được có thể có nhiều cấu tạo khác nhau như : Transitor truyền (pass transitor) được điều khiển bởi- cell SRAM, cầu chì nghịch (anti - fuse), EPROM transitor và EEPROM transitor

Các đường dây ngang và dọc, đơn và đôi giao nhau trong một một ma trận chuyển mạch chương trình Mỗi Ma trận kết nối gồm chương trình có thể lập trình được thông qua transistor sử dụng để thiết lập kết nối giữa các đường như hình 1.10

Trang 25

+ Kết nối giữa các CLB : Các kết nối giữa các CLB thông qua các ma trận kết nối

để nối các CLB với nhau chạy dọc theo mỗi hàng và mỗi cột của mảng CLB Các cách kết nối với nhau được mô tả trong hình 1.11

Các đường dây nối đơn:

Các đường chiều dài đơn cung cấp kết nối thông một cách mềm dẻo nhất và đem lại sự định đường nhanh giữa các khối kề cận Có 8 đường đơn dài dọc và 8 đường đơn dài ngang được kết hợp với từng CLB Nó được kết nối với ma trận chuyển mạch mà ma trận chuyển mạch này thì được định vị trong từng hàng và từng cột của CLB(hình 1.11 b)

Các đường dây nối đôi:

có Đường dài đôi chứa một lưới các đoạn kim loại độ dài bằng hai lần dây đơn Chúng chạy qua hai CLB trước khi vào một ma trận chuyển mạch Đường đôi được gộp trong một cặp xoắn với ma trận chuyển mạch và được đảo từng đường đi qua một ma trận chuyển mạch trong từng hàng, cột của CLB( hình 1.11 c)

Có 4 đường đôi ngang và 4 đường đôi dọc được kết nối với từng CLB.Các đường này cung cấp sự định đường tín hiệu nhanh hơn vượt khoảng cách trung gian, trong khi duy trì sự định đường mềm dẻo

Các đường dây nối dài:

Các đường dây nối dài có dạng lưới gồm các đoạn dây dẫn kim loại kết nối bên trong theo chiều ngang hoặc chiều dọc của mảng Đường dây dài dành cho các đầu ra cao, các mạng tín hiệu đồng bộ thời gian hoặc các mạng được phân bố với khoảng cách dài ( hình 1.11 a)

+ Kết nối giữa các IOB: Các kết nối ở IOB có dạng một vòng chạy xung quanh bên

ngoài của mảng CLB Kết nối I/O với các kênh kết nối CLB bao gồm 8 đường đôi

và 4 đường đơn, đáp ứng hoàn toàn khả năng trao đổi chân, thiết kế lại mà không ảnh hưởng tới vẽ mạch

Trang 26

Hình 1.11: Các loại kết nối trong FPGA

1.1.2.3 Các khối vào ra(IOB)

Người sử dụng có thể đặt cấu hình các khối vào ra IOB để tạo giao diện giữa các chân đóng vỏ bên ngoài với chức năng logic bên trong Mỗi IOB điều khiển một chân đóng vỏ và có thể đặt cấu hình cho đầu I/O hoặc tín hiệu 2 chiều Hình 1.12 minh hoạ chức năng đơn giản của IOB

Tín hiệu vào IOB có thể được đưa vào trực tiếp từ các kết nối(thông qua I1 I2 ở hình 1.12) hoặc từ đầu vào thanh ghi Đầu vào thanh ghi có thể lập trình như

Trang 27

Hình 1.12: IOB của FPGA

1.1.3 Một số công nghệ lập trình sử ụng trong công nghệ FPGAd

1.1.3.1 Cấu trúc tế bào SRAM

- SRAM xác định kết nối

- SRAM định nghĩa logic trong bảng tìm kiếm LUT

- Có thể lập trình lại, dữ liệu bị mất khi mất nguồn nuôi

Trên hình 1.13 tế bào SRAM là sáu kết hợp khác nhau của bốn yếu tố đầu vào xác định giá trị của bit SRAM đầu ra được sử dụng để làm cho các kết nối

EC

Q CLK

EC

D

Delay

Package pad

INPUT BUFFER

OUTPUT DRIVER

y

Trang 28

Hình 1.13: Cấu trúc tế bào SRAM của Xilinx

1.1.3.2 Cấu trúc Antifuse

- Cấu trúc Antifuse là dạng cầu trì ngược giống như một công tắc

- Lập trình một lần, không mất dữ liệu khi mất nguồn nuôi

Hình 1.14: Cấu trúc tế bào OTP sử dụng Antifuse

Hnhf 1.14 mô tả tế bào logic OTP(One – time programmable)sử dụng

Antifuse Các tế bào OTP tương tự như trong PLDs với cổng logic và flipflops

Trang 29

bắt đầu ch thiết kế là mạch lôgic ban đầu Bước này cần một sơ đồ biểu diễn mạch, o

hay một mô tả VHDL hoặc một đặc tả các biểu thức Boolean Từ các đầu vào như vậy, chúng được chuyển thành dạng chuẩn như là các biểu thức Boolean Các biểu thức Boolean này được xử lý bằng công cụ tối ưu lôgíc (rút gọn các biểu thức), mục đích của việc này là để tối ưu về diện tích và tốc độ của mạch thiết kế Sau khi đã được tối ưu, các biểu thức Boolean được chuyển tới mạch lôgíc block của FPGA thông qua chương trình ánh xạ công nghệ (technology mapping), bộ ánh xạ sẽ tối thiểu số khối được dùng và giảm đường dẫn để tối ưu về giữ chậm Sau khi ánh xạ mạch vào các logic block thì cần phải quyết định đặt mỗi khối ở đâu, công việc này

do chương trình Placement giải quyết Bước cuối cùng trong hệ thống CAD là nối kết do phần Rounting thực hiện, chúng ấn định các đoạn dây FPGA và chọn các chuyển mạch có thể lập trình phù hợp với các kết nối trong logic block Sau khi thực hiện xong bước này, kết quả của CAD sẽ được nạp vào đơn vị lập trình tạo ra chip FPGA cuối cùng

3 Thay thế các chíp tích hợp nhỏ cho mạch ngẫu nhiên: Các mạch trong các sản phẩm thương mại thường chứa nhiều chíp SSI (Small Scale Integrated) Trong nhiều trường hợp các chip SSI này có thể được thay thế bằng FPGA và kết quả là giảm diện tích của bo mạch đi đáng kể

4 Chế tạo mẫu: FPGA rất lý tưởng cho các ứng dụng tạo sản phẩm mẫu Giá thành thực hiện thấp, thời gian ngắn

Trang 30

5 Máy tính dựa trên FPGA: Một loại máy tính mới có thể được chế tạo với các FPGA có thể tái lập trình ngay trên mạch FPGA Các máy này có một bo mạch chứa các FPGA mà các chân nối với các chip lân cận giống như thông thường.

Trang 31

1.3 GIỚI THIỆU VỀ BOARD SPANRTN 3 CỦA XILINXE

Hình 1.16: Mặt trên của board Spartan 3E

Thực tế có nhiều loạiFPGA trên thị trường, tác giả đã chọn FPGA của Xilinx, cụ thể là Board Spanrtn-3E làm thực nghiệm của luận văn

Một số phần tử của Board được giới thiệu như sau:

1 Xilinx XC3S500E FPGA

- Gồm 320 chân

- 10.000 tế bào lôgic

- 232 chân tín hiệu vào ra

2 Công tắc trượt(Slide Switches)

Board Spanrtn-3E gồm 4 công tắc trượtmô tả như hình 1.17:

Trang 32

Hình 1.17: Bốn công tắc trượt có điện trở Pullup

3 Công tắc nút bấm

Hình 1.18: Bốn công tắc nút ấn và công tắc xoay

- Năm công tắc nút ấn (BTN_NORTH, BTN_EAST, BTN_SOUTH, BTN_WEST, ROT_CENTER ) có điện trở Pull Down ở chân đầu vào của FPGA.-

Hình 1.19: Dạng công tắc nút ấn có điện trở Pull-Down

- Hai công tắc xoay (ROT_A, ROT_B) có dạng như hình 1.20

Trang 33

Hình 1.20: Hai chuyển mạch xoay có điện trở Pullup

4 Tám LED đơn Katot chung, Anode tích cực ở mức thấp

Hình 1.21: Tám led đơn và các chân được gán

5 VGA

Cổng hiển thị VGA 3 bit , 8 màu như hình 1.22

Trang 34

Bảng 1.1 Sự kết nối của VGA tới Spartan 3: E FPGA Signal

Red (R) Green (G) Blue(B) Horizontal

Sync (HS)

Vertical Sync (VS)

Bảng 1.2: Bảng mã màu

6 Hai cổng RS232

Hai cổng nối tiếp có chín chân như hình 1.23

Trang 35

Hình 1.24: PS/2DIN Connector

Bảng 1.3 Sự kết nối của PS/2 với Spartan 3 FPGA:

Trang 36

Ngoài ra Board Spartan-3E còn có nhiều phần mạch với những chức năng khác nhau như: Phần nguồ các đèn chỉ thị nguồnn, …

- Nếu được đưa vào giảng dạy trong các trường cao đẳng, đại học sẽ nâng cao được chất lượng đào tạo, năng lực nghiên công nghệ cho sinh viên

Trang 37

CHƯƠNG 2: NGÔN NGỮ MÔ TẢ PHẦN CỨNG VHDL

Chương này tác giả giới thiệu về ngôn ngữ VHDL, trình bày các đơn vị thiết

kế cơ bản của ngôn ngữ VHDL, Các kiểu dữ liệu, phép toán và các câu lệnh trong ngôn ngữ VHDL

2.1 GIỚI THIỆU VỀ VHDL

VHDL ( VHSIC- Hardware Description Language là một ngôn ngữ mô tả )

hệ thống điện tử số, mạch tích hợp tốc độ cao Nó được dùng để mô phỏng phần cứng được phát triển dùng trong chương trình VHSIC (Very High Speed Itergrated Circuit) của bộ quốc phòng mỹ năm (1980) Mục tiêu của việc phát triển VHDL là

có được một ngôn ngữ phần cứng tiêu chuẩn, ho phép phát triển, thử nghiệm các c

hệ thống số nhanh hơn cũng như dễ dàng cho phép các hệ thống đó vào những ứng dụng trong thực tế Được quy định trong chuẩn IEEE 1076 từ năm 1983 [6]

VHDL được thiết kế để cải thiện một số vấn đề trong quá trình thiết kế:

Thứ nhất, nó cho phép mô tả cấu trúc của một thiết kế, làm thế nào để chia thành hai phần (sub designs) và làm thế nào để hai phần đó được kết nối lại.-

Thứ hai, nó cho phép các đặc điểm kỹ thuật của chức năng các thiết kế được

sử dụng giống như chuẩn ngôn ngữ lập trình

Thứ ba, như một kết quả nó cho phép một thiết kế được thử nghiệm trước khi sản xuất

Vì thế các nhà thiết kế có thể nhanh chóng so sánh và kiểm tra kết quả [6]

Trang 38

2.2 CÁC THUẬT NGỮ CỦA VHDL

Thực thể (Entity): Tất cả các thiết kế đều được biểu diễn dưới dạng các thực thể Một thực thể là một khối xây dựng sẵn cơ bản nhất trong một thiết kế Mức cao nhất của thiết kế là thực thể mức đỉnh (top level entiny) Nếu thiết kế có thứ bậc, mô

tả mức đỉnh sẽ có các mô tả mức thấp hơn chứa bên trong Những mô tả mức thấp hơn này sẽ là các thực thể mức thấp hơn chứa trong mô tả thực thể mức đỉnh

Kiến trúc (Architecture): Tất cả các thực thể có thể được mô phỏng đều có một mô tả kiến trúc Kiến trúc mô tả chức năng của thực thể Một thực thể đơn có thể có nhiều kiến trúc Một kiến trúc có thể ở mức chức năng (behavioral) trong khi một kiến trúc khác có thể mô tả ở mức cấu trúc của thiết kế

Cấu hình (Configuration): Một cấu hình được sử dụng để làm kết nối một thể hiện thành phần với một cặp thực thể kiến trúc Một cấu hình có thể được khảo sát giống như một danh sách các phần của một thiết kế

Gói (package): Một gói là một tập các chương trình con và các kiểu dữ liệu phổ biến được sử dụng trong một thiết kế

Thuộc tính ( Attribute): Thuộc tính là dữ liệu được gán cho các đối tượnghoặc dữ liệu được tiền định nghĩa liên quan đến các đối tượng trong VHDL

Generic: Generic là thuật ngữ của VHDL dùng cho một thông số, thông tin này chuyển thông tin tới thực thể

Quá trình (Process): Một quá trình là một đơn vị thực thi cơ bản trong VHDL Tất cả các thao tác được thực hiện trong khi mô phỏng mô tả VHDL đều được chia nhỏ trong một hay nhiều quá trình

2.3 CẤU TRÚC CỦA MỘT CHƯƠNG TRÌNH VHDL

Cấu trúc của một chương trình VHDL được minh họa như hình 2.1.[10]

Trang 39

Hình 2.1: Cấu trúc chung của chương trình VHDL

Các đơn vị thiết kế là các thành phần chính của mô tả VHDL, bao gồm các đơn vị sau:

Khai báo các gói

Khai báo thư viện sử dụng

Thực thể (Entity)

C ác tiến trình

C l ác ệnh tuần ự t

Trang 40

Hình 2.2: Quan hệ giữa các đơn vị thiết kế

2.4 CÁC ĐƠN VỊ THIẾT KẾ TRONG VHDL

Các mô tả VHDL chứa các đơn vị thiết kế sơ cấp và các đơn vị thiết kế thứ cấp Các đơn vị thiết kế sơ cấp là thực thể và gói, các đơn vị thiết kế thứ cấp là kiến trúc và thân của gói Các đơn vị thiết kế thứ cấp luôn luôn gắn liền với một đơn vị thiết kế sơ cấp Các thư viện thiết kế là các tập của các đơn vị thiết kế sơ cấp và thứ cấp Một thiết kế điển hình thường chứa một hay nhiều thư viện các đơn vị thiết kế.2.4.1.Gói (Package)

Mục đích chính của gói là tập hợp các phần tử có thể dùng chung giữa hai hay nhiều đơn vị thiết kế Một ‘Package’ chứa các định nghĩa về hằng số, khai báo component, các kiểu dữ liệu của người sử dụng, các chương trình con viết bằng

PACKAGE

ENTITY

CONFIGURATION PROCESS ARCHITECTURE

Ngày đăng: 26/01/2024, 15:25

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN