1. Trang chủ
  2. » Kỹ Thuật - Công Nghệ

Báo cáo chuyên đề điên tử

15 355 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

Định dạng
Số trang 15
Dung lượng 1,52 MB
File đính kèm BAO_CAO CHUYEN_DE.rar (1 MB)

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

Nội dung

thiết kế và mô phỏng lại quá trình hoạt động của đèn giao thông tại giao lộ với ngôn ngữ HDL, phần mềm IDE của hãng xilinx, kit spartan 3. trên nền FPGA. FPGA(Fieldprogrammable gate array) là một công nghệ cho phép người dùng có thể cấu hình lại bộ xử lý một cách tùy biến theo từng ứng dụng cụ thể, nhằm giúp tiết kiệm tài nguyên và tăng tốc độ xử lý. Nó gồm nhiều mảng các cổng đã được chế tạo sẵn nhưng chưa được kết nối với nhau, người lập trình có thể kết nối chúng lại với nhau tùy theo từng thuật toán cụ thể cho từng ứng dụng. Đèn giao thông là một phần thiết yếu đối với tất cả mọi người khi tham gia giao thông, giúp điều tiết mật độ và phân luồng giao thông trên tuyến đường. Nhằm giúp tìm hiểu công nghệ FPGA một cách trực quan, chúng em đã sử dụng kít FPGA để mô phỏng lại quá trình hoạt động của đèn giao thông.

Trang 1

MỤC LỤC

LỜI NÓI ĐẦU 2

CHƯƠNG 1 GIỚI THIỆU ĐỀ TÀI 3

1.1 Giới thiệu chương 3

1.2 Yêu cầu thực hiện 3

1.3 Ý tưởng thực hiện 5

CHƯƠNG 2 THỰC HIỆN Ý TƯỞNG 6

2.1 Giới thiệu chương 6

2.2 Thực hiện ý tưởng 6

2.3 Thực hiện trên phần mềm ISE của hãng Xilinx 8

CHƯƠNG 3 CHẠY THỬ VÀ CÁC KẾT QUẢ ĐẠT ĐƯỢC 13

3.1 Giới thiệu chương 13

3.2 Kết quả đạt được 13

3.3 Nhận xét về bản thiết kế 14

Trang 2

2

LỜI NÓI ĐẦU

FPGA(Field-programmable gate array) là một công nghệ cho phép người

dùng có thể cấu hình lại bộ xử lý một cách tùy biến theo từng ứng dụng cụ thể, nhằm giúp tiết kiệm tài nguyên và tăng tốc độ xử lý Nó gồm nhiều mảng các cổng

đã được chế tạo sẵn nhưng chưa được kết nối với nhau, người lập trình có thể kết nối chúng lại với nhau tùy theo từng thuật toán cụ thể cho từng ứng dụng

Đèn giao thông là một phần thiết yếu đối với tất cả mọi người khi tham gia giao thông, giúp điều tiết mật độ và phân luồng giao thông trên tuyến đường Nhằm

giúp tìm hiểu công nghệ FPGA một cách trực quan, chúng em đã sử dụng kít

FPGA để mô phỏng lại quá trình hoạt động của đèn giao thông

Trang 3

CHƯƠNG 1 GIỚI THIỆU ĐỀ TÀI

1.1 Giới thiệu chương

Chương này sẽ giới thiệu một cách tổng quan về đề tài Đèn giao thông cùng với

ý tưởng thực hiện trên kít FPGA

1.2 Yêu cầu thực hiện

Như chúng ta đề biết đèn giao thông hoạt động bằng cách đưa ra một tín hiệu đèn đã được quy định sẵn trong một thời gian nhất định để người tham gia giao thông có thể thực hiện theo nhằm đảm bảo sự an toàn, ổn định trong các cuộc hành trình Đèn giao thông trên thực tế có nhiều tín hiệu điều khiển như tín hiệu đèn (ĐỎ, VÀNG, XANH), đồng hồ số hiển thị thời gian sang của một đèn, các tín hiệu chỉ hướng di chuyển, tín hiệu cảnh báo đối với người đi bộ …

Hình 1.1 Một số tín hiệu đèn giao thông

Trang 4

4

Hình 1.2 Một số hình ảnh thực tế

Nhưng trong báo cáo này chúng em chỉ mô phỏng lại hai tín hiệu quan trọng nhất đó là trọng thái đèn báo hiệu(ĐỎ, VÀNG, XANH) và hiển thị thời gian sang của đèn theo hai hướng khác nhau tại một điểm giao nhau của hai tuyến đường cùng mức ưu tiên

Giả sử hai tuyến đường mà ta đang xét nằm theo hai hướng là Đông-Tây và Bắc-Nam Hướng Đông-Tây gọi là hướng 1 còn hướng Bắc-Nam gọi là hướng 2

Do hai tuyến đường là cùng mức ưu tiên nên thời gian sang của từng đèn (ĐỎ, VÀNG, XANH) của mỗi hướng là như nhau, cụ thể:

Hình 1.3 Đèn giao thông đang xét

 Thời gian đèn Đỏ sáng: 25s = t xanh + t vàng

 Thời gian đèn Vàng sáng: 5s

 Thời gian đèn Xanh sáng: 20s

Trang 5

Và tất nhiên là khi hướng 1 đèn Đỏ(cấm đi) thì hướng 2 sẽ là Xanh(cho phép đi) rồi đến Vàng, sau đó đổi ngược lại

Bảng 1.1 Trạng thái đèn theo hai hướng

1.3 Ý tưởng thực hiện

Với giả thiết đề ra như trên thì nhóm có ý tưởng thực hiện như sau:

Sẽ tạo ra một module với các tín hiệu đầu ra và đầu vào như sau:

 Đầu ra: gồm có 4 tín hiệu đó là mỗi hướng có một tín hiệu trạng thái đèn

và một tín hiệu số đếm hiển thị thời gian sang của đèn, cho nên hai hướng

sẽ là 4 tín hiệu

 Đầu vào: sẽ phải có xung clock để module hoạt đông, có tín hiệu start để có

thể bật/tắt module, ngoài ra để đề phòng các sự cố thì cần thêm một tín hiệu

reset để có thể reset lại

Như vậy chúng ta có thể tưởng tượng nó giống một cái hộp đen với 4 tín hiệu đầu ra

và 3 tín hiệu đầu vào

Vấn đề bây giờ là chúng ta sẽ cho gì vào bên trong để với đầu 3 đầu vào trên thì tạo

ra được 4 đầu ra điều khiển đèn tại một điểm giao nhau của hai tuyến đường

Trang 6

6

CHƯƠNG 2 THỰC HIỆN Ý TƯỞNG 2.1 Giới thiệu chương

Trong chương này sẽ trình bày về lưu đồ máy trạng thái hữu hạn tổng quát được sử dụng, sẽ đi sâu vào cụ thể của từng khối của hộp đen để có thể thực hiện được bài toán đặt ra trên kit FPGA

2.2 Thực hiện ý tưởng

Với ý tưởng hộp đen được nêu lên ở chương 1 thì nhóm đã thảo luận và đưa

ra sơ đồ khối tổng quát bên trong hộp đen như Hình 2.1

Hình 2.1 Sơ đồ khối module

Với thời gian chuyển trạng thái đèn là 25s(đỏ), 20s(xanh), 5s(vàng) thì cần

có một bộ đếm với tần số đếm 1Hz (tức là chu kỳ 1s), bộ đếm này thì tùy theo ý tưởng chuyển trạng của từng người để chọn nhưng để đơn giản và dễ hiểu thì nhóm chọn bộ đếm 50(tức là bằng tổng thời gian sáng 3 đèn cộng lại), sau đó dùng cách là chia khoảng thời gian ra để phục vụ từng đèn Để thực hiện bộ đếm 50 thì có nhiều cách nhưng do nhóm đã có thiết kế sẵn bộ đếm 10 nên bộ đếm 50 thực hiện dựa trên

2 bộ đếm 10 ghép lại

Khối trạng thái đèn sẽ liên tục kiểm tra số đếm nhận được từ bộ đếm và so sánh, nếu số đếm thuộc khoảng thời gian của đèn nào thì xuất ra đầu ra đèn tương ứng sáng Theo hai hướng thì khoảng kiểm tra số đếm với trạng thái ban đầu là khác nhau còn về mặt nguyên tắc là giống nhau cho nên ở đây chỉ nêu lên hướng Bắc-Nam

Khối hiển thị số đếm(thời gian sang của từng đèn): mục đích của khối này là hiển thị thời gian mà một đèn sáng Ở đây do trên kít FPGA đã có 4 LED 7 đoạn sẵn và đã được nối chung bus dữ liệu(mã LED 7 đoạn hiển thị trên LED) cùng với 4 chân chọn LED, vậy nên cần một module phục vụ quá trình quét led Để đơn giản thì nhóm chọn giải pháp là dùng một bộ đếm 4 trạng thái kết hợp với một bộ MUX

Trang 7

từ 4 sang 1 với độ rộng bus là 4bits để chọn led và đồng thời chọn số hiển thị lên led trước khi cho ra giải mà led 7 đoạn và hiển thị lên led

Hình 2.2 Lưu đồ chuyển trạng thái đèn hướng Bắc-Nam

Đếm 10

Đếm 10

Kiểm tra

50

clock clock

start

start reset

reset

reset start

thấp

4bits cao

4 /

4 /

4 /

4 /

1 /

1 /

1

Cờ tràn

Cờ tràn

1 /

Hình 2.3 Sơ đồ khối bộ đếm 50

Đếm 4

Hex2Led

/

7 /

4 /

4 /

4 /

4 /

4 /

6 /

8 /

Đếm

(1KHz)

AN: chọn LED

SEG: mã LED 7đoạn

2

Hình 2.4 Sơ đồ khối quét LED

MUX Chuyển đổi

(giải mã)

Trang 8

8

2.3 Thực hiện trên phần mềm ISE của hãng Xilinx

Trong báo cáo này sử dụng kít Spartan-6 SP601và phần mềm ISE của hãng

Xilinx để thực hiện

Để có thể thực hiện được cả một module lớn được nêu lên ở chương 1 và mục 2.2 của chương 2 thì ta cần đi thực hiện các module nhỏ rồi ghép chúng lại với nhau Ở đây số lớp kế thừa các module có thể lớn hơn 3 tùy theo cách chia module nhỏ

Đầu tiên là khởi động phần mềm ISE: Start=> All programs =>Xilinx ISE

Design suite 13.2=> ISE Design tools=> project Navigator

Tiếp theo là tạo một project trống để làm việc: vào File=>New project Sẽ

xuất hiện hộp thoại cho phép đặt tên project cũng như nơi lưu project

Hình 2.5.NEW PROJECT

Chọn NEXT chuyển sang hộp thoại tiếp theo

Trong mục Evaluation Development Board chọn Spartan-6 SP601 Evaluation

Platform

Trong mục preferred language chọn VHDL nếu viết bằng ngôn ngữ VHDL, chọn Verilog nếu viết bằng ngôn ngữ Verilog Và NEXT

Trang 9

Hình 2.6 Chọn kít và ngôn ngữ

Chuyển qua hộp thoại tiếp theo, chỉ cần kích finish là hoàn thành tạo project

Nếu đã có sẵn các file nguồn thì chỉ cần thêm vào là đƣợc : vào project=> add

source hoặc Add copy of source

Nếu chƣa có sẵn file nguồn thì cần tạo các file nguồn cho Project: vào project =>

tên file nguồn

Trang 10

10

Hình 2.7 tạo mới file nguồn

Tiếp theo chọn Next để chuyển sang hộp thoại tiếp theo Tại đây chọn các tín hiệu

đầu vào và đầu ra cũng nhƣ độ rộng bus của từng tín hiệu

Hình 2.8 Chọn các tín hiệu vào ra và độ rông bus

Chọn Next và finish để hoàn thành tạo file nguồn

Vấn đề còn lại là viết code cho file nguồn

Trang 11

Sau khi viết xong code của từng file nguồn thì việc còn lại là sử dụng chúng trong các module lớn hơn Sau khi viết xong code của file nguồn thì cần kiểm tra đã

viết đúng hay chƣa, đúng theo ý muốn hay chƣa rồi tiến hành tạo file VHDL

Instantiation dung kế thừa các module Kích chuột vào file nguồn và chọn View HDL instantiation template(nhƣ hình)

Hình 2.9 tạo file VHI

Phần mềm sẽ tạo file vhi cho phép sử dụng thiết kế ở các module khác

Hình 2.10 nội dung file vhi

Trang 12

12

Sau khi toàn bộ các module nhỏ đã được ghép thành công vào module lớn(tổng) và chạy không có lỗi thì cần nối dây ngoại vi cho thiết kế để có thể giao tiếp ngoại

vi(led, switch, button…) sử dụng file ucf nếu chưa có thì tiến hành lên mạng

download về còn nếu có rồi thì chỉ cần thêm vào(thêm tương tự file nguồn) và sữa tên lại cho đúng theo tên được sử dụng trong bản thiết kế

Hình 2.11 Chọn kết nối ngoại vi cho thiết kế

Cuối dùng là tạo file bit để có thể nạp xuống kít Chọn generate programming

file

Hình 2.12 tạo file bit

Để có thể nạp file bit xuống kít thì cần dùng thêm phần mềm:

digilent.adept.system_v2.15.3

Trang 13

CHƯƠNG 3 CHẠY THỬ VÀ CÁC KẾT QUẢ ĐẠT ĐƯỢC

3.1 Giới thiệu chương

Trong chương này sẽ trình bày về các kết quả chay mô phỏng thiết kế trên

phần mềm ISE cũng như chạy thử trên kít Spartan-6 sp601 Qua đó rút ra các nhận

xét liên quan đến bản thiết kế

3.2 Kết quả đạt được

Sau khi viết code testbanch cho thiết kế và tiến hành chạy mô phỏng thì được kết quả như hình

Hình 3.1 kết quả mô phỏng

Nhận xét:

 Như vậy dạng song tai các ngõ ra đúng như mục đích thiết kế khi cho tín hiệu vào ở đầu vào

Chạy trên kít:

Trang 14

14

Hình 3.2 kết quả nạp xuống kít

Nhận xét:

 chuyển trạng thái đèn đúng theo giả thiết

 Thời gian đèn Đỏ sáng: 25s = t xanh + t vàng

 Thời gian đèn Vàng sáng: 5s

 Thời gian đèn Xanh sáng: 20s

 Hiển thị số giây của từng đền đúng theo thiết kế

 Quét led chạy ổn định, mƣợt, không có vạch sáng tại những vị trí không mong muốn, không nhấp nháy led ngay cả khi quay video bằng điện thoại

3.3 Nhận xét về bản thiết kế

Sau khi cho chạy mô phỏng và chạy trên kít thì rút ra một số kết luận từ các báo cáo của phần mềm cũng nhƣ thực tế diễn ra trên kít

Trang 15

Hình 3.2 báo cáo tổng hợp về sử dụng tài nguyên phần cứng

 Thông số đầu tiên là number of slice registers : dung 59 trong tổng số

18224 chiếm 1%, điều này có nghĩa là bản thiết kế dung ít number of slice

registers và đây là một thiết kế vào loại nhỏ

 Thông số thứ hai là number of slice LUTs: dung 138 trong tổng 9112 chiếm 1%, điều này cũng cho thấy là bản thiết kế dung ít number of slice LUTs

Tiếp theo là các thông số tín hiệu đƣợc dung trong bản thiết kế

Hình 3.3 báo cáo về một số thông số của module

Ngày đăng: 18/06/2016, 10:59

HÌNH ẢNH LIÊN QUAN

Hình 1.1.  Một số tín hiệu đèn giao thông. - Báo cáo chuyên đề điên tử
Hình 1.1. Một số tín hiệu đèn giao thông (Trang 3)
Hình 1.2. Một số hình ảnh thực tế. - Báo cáo chuyên đề điên tử
Hình 1.2. Một số hình ảnh thực tế (Trang 4)
Hình 1.3. Đèn giao thông đang xét. - Báo cáo chuyên đề điên tử
Hình 1.3. Đèn giao thông đang xét (Trang 4)
Hình 2.1. Sơ đồ khối module. - Báo cáo chuyên đề điên tử
Hình 2.1. Sơ đồ khối module (Trang 6)
Hình 2.3. Sơ đồ khối bộ đếm 50. - Báo cáo chuyên đề điên tử
Hình 2.3. Sơ đồ khối bộ đếm 50 (Trang 7)
Hình 2.2. Lưu đồ chuyển trạng thái đèn hướng Bắc-Nam - Báo cáo chuyên đề điên tử
Hình 2.2. Lưu đồ chuyển trạng thái đèn hướng Bắc-Nam (Trang 7)
Hình 2.5.NEW PROJECT. - Báo cáo chuyên đề điên tử
Hình 2.5. NEW PROJECT (Trang 8)
Hình 2.6. Chọn kít và ngôn ngữ. - Báo cáo chuyên đề điên tử
Hình 2.6. Chọn kít và ngôn ngữ (Trang 9)
Hình 2.7. tạo mới file nguồn. - Báo cáo chuyên đề điên tử
Hình 2.7. tạo mới file nguồn (Trang 10)
Hình 2.8. Chọn các tín hiệu vào ra và độ rông bus. - Báo cáo chuyên đề điên tử
Hình 2.8. Chọn các tín hiệu vào ra và độ rông bus (Trang 10)
Hình 2.11. Chọn kết nối ngoại vi cho thiết kế. - Báo cáo chuyên đề điên tử
Hình 2.11. Chọn kết nối ngoại vi cho thiết kế (Trang 12)
Hình 2.12. tạo file .bit. - Báo cáo chuyên đề điên tử
Hình 2.12. tạo file .bit (Trang 12)
Hình 3.1. kết quả mô phỏng. - Báo cáo chuyên đề điên tử
Hình 3.1. kết quả mô phỏng (Trang 13)
Hình 3.2. kết quả nạp xuống kít. - Báo cáo chuyên đề điên tử
Hình 3.2. kết quả nạp xuống kít (Trang 14)
Hình 3.3. báo cáo về một số thông số của module. - Báo cáo chuyên đề điên tử
Hình 3.3. báo cáo về một số thông số của module (Trang 15)

TỪ KHÓA LIÊN QUAN

w