TỔNG QUAN VỀ THIẾT KẾ SỐ TRÊN FPGA FIELD-FROGRAMMABLE GATE ARRAY BÀI 1: hoangquang.dientu@gmail.com Nhận hướng dẫn thiết kế số sử dụng ngôn ngữ Verilog-HDL trên FPGA... Luồng thiết
Trang 1TỔNG QUAN VỀ THIẾT KẾ SỐ TRÊN FPGA
(FIELD-FROGRAMMABLE GATE ARRAY)
BÀI 1:
hoangquang.dientu@gmail.com
Nhận hướng dẫn thiết kế số sử
dụng ngôn ngữ Verilog-HDL
trên FPGA
Trang 2Nội dung chính
Luồng thiết kế cơ bản
Các phần mềm sử dụng
Ngôn ngữ mô tả phần cứng
Khái quát về lý thuyết thiết kế số
KIT DE1
Cấu trúc FPGA
Một ví dụ thiết kế (phân tích, tổng hợp, mô
phỏng và nạp KIT)
Trang 3Luồng thiết kế cơ bản
(Design Flow)
Sơ đồ khối, sơ đồ chân
Thiết kế mức cổng logic
Viết RTL (Register Transfer Level)
code
Tổng hợp và kiểm tra lỗi
Mô phỏng thiết kế
Gán chân tín hiệu và biên dịch file
nạp
Chạy kiểm tra chức năng trên FPGA
Trang 4Luồng thiết kế cơ bản
module MUX2 (input SEL, A, B, output F);
input SEL, A, B;
output F;
INV G1 (SEL, SELB);
AOI G2 (SELB, A, SEL, B, FB);
INV G3 (.A(FB), F(F));
endmodule
Trang 5Miền thiết kế
Circuit Gate
Silicon
(Physical)
Trang 6Thiết kế trên FPGA và thiết kế
ASIC (Appication_Specific Integrated Circuit)
Ngôn ngữ Verilog, VHDL Verilog, VHDL
Sản phẩm cuối cùng Chip chuyên dụng Code nhúm
Thời gian thực hiện Lâu Nhanh hơn
Chi phí ban đầu Cao Thấp hơn
Các điểm khác Tái sử dụng và nâng cấp dễ
dàng Đơn giản là sửa code
và nạp lại
Code được tổng hợp và tối ưu chuyên biệt cho thiết kế
Code được tổng hợp và tối
ưu dựa trên cấu trúc của FPGA
Trang 7Các phần mềm
Microsoft Visio – Vẽ sơ đồ, vẽ mạch
EmEditor hoặc Notepad++ để viết code
Xemacs 21.4.21 để kết nối các mô-đun
(module) tự động
Quartus (8.1 hoặc 9.0) để kiểm tra và tổng hợp
ModelSim (5.7g hoặc 6.4a) để mô phỏng chức
năng
Trang 8Ngôn ngữ mô tả phần cứng
Hardware Description Language (HDL)
VHDL (VHSIC HDL – Very-High-Speed
Integrated Circuit HDL)
Verilog HDL (gọi ngắn gọn là Verilog)
Các phiên bản Verilog
1995
2001 (IEEE std 1364-2001)
Trang 9Spartan3E Start KIT (Xilinx)
Giá: 395$ ~ 7,745 triệu
Các ngoại vi:
32-Mbyte DDR SDRAM
2-Mbyte serial Flash
512-Kbyte SRAM
4 switches, 8 leds
Ethernet 10/100 PHY
VGA
PS/2 port
Two 9-pin RS-232 serial port
16 character - 2 Line LCD
Trang 10DE2 Altera Board (TerAsic)
Giá: 495$ ~ 9,745 triệu
Với trường học: 269$
Các ngoại vi:
•16-Mbyte StrataFlash
•8-Mbyte SDRAM (enough to run uCLinux)
•4-Mbyte Flash
•18 switches with 18 red leds and 8 green ones
•Ethernet 10/100
•Infrared port
•24-bit Audio CODEC
•PS/2 mouse or keyboard port
•RS232
•TV Decoder (NTSC/PAL)
•16 x 2 LCD Module
Trang 11DE1 Altera Board (TerAsic)
Giá: 150$ ~ 3 triệu
Với trường học: 125$
Các ngoại vi:
•Line In/Out, Microphone In (24-bit Audio CODEC)
•Video Out (VGA 4-bit DAC)
•Serial port (RS232)
•PS/2 mouse or keyboard port
•Expansion headers (two 40-pin headers)
•8 MB SDRAM, 512 KB SRAM, 4 MB Flash
•SD memory card slot
•Four 7-segment displays
•10 toggle switches, 10 red LEDs, 8 green LEDs
Trang 12Cấu tạo chip FPGA (1)
Trang 13Cấu tạo chip FPGA (2)
Trang 14Ví dụ minh họa luồng thiết kế
Ví dụ: Thiết kế một bộ đếm trong khoảng từ
0-9 với 3 nút điều khiển
Nút 1: Reset đồng bộ hệ thống
Nút 2: Nút điều khiển đếm lên 1 đơn vị sau mỗi lần nhấn
Nút 3: Nút điều khiển đếm xuống 1 đơn vị sau mỗi lần nhấn
Trang 15Sơ đồ khối và sơ đồ tín hiệu
Phân tích khối
Phân tích tín hiệu
Phân tích khối COUNTER_9
Trang 16MẠch chi tiết COUNTER_9
Phân tích thiết kế mức thấp
Trang 17Biên dịch với Quartus 9.0
Kết nối sau khi tổng hợp thành công
Xem trực tiếp trên phần mềm Quartus 9.0
Trang 18Mô phỏng với ModelSim 6.4
Xem trực tiếp trên ModelSim 6.4
Trang 19KẾT THÚC BÀI 1
hoangquang.dientu@gmail.com