Tổng quan về thiết kế số trên fpga
Trang 1BÀI 1:
TỔNG QUAN VỀ THIẾT KẾ SỐ
TRÊN FPGA
(FIELD-FROGRAMMABLE GATE ARRAY)
Trang 2II Nộ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ố
i " 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 va nap KIT)
Trang 3Luồng thiết kế cơ bản
Sơ đồ khối, sơ đồ chân ae
Thiết kế mức cổng logic
Phân tích mức gl
Viét RTL (Register Transfer Level) =
code
Phân tích thiết kế Viết RTL code be
Tổng hợp và kiểm tra lỗi _ (Specifieation)
Mô phỏng thiết kế J L Kiểm tra chức
Kiểm tra thiết kế năng bằng mô_ |—|
(Verification) phỏng
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
aera
Trang 4l Luồng thiết kế cơ bản
Video ta
DVD Player
Speaker Line out TV Box Application
Toho + High quality TV decoder
+ CD quality 24-bit audio
+ VGA monitor
* Ideal platform for video
applications
+ Allsofvare driver source
VGA (LCOICRT) Monitor code for Nios II included
FPGA Class
module MUX2 (input SEL,
A, B, output F);
input SEL, A, B;
output F;
INV G1 (SEL, SELB);
AOI G2 (SEL! EL, B,
11/23/12
Trang 5lền thiết kế
Miền hành vi Miền cấu trúc
(Behavioral Domain) (Structural Domain)
Các đối tượng
hình học
Thiết kế FPGA
Silicon
3> {><
Silicon
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
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à | Code được tổng hợp và
tối ưu chuyên biệt cho _ | tối ưu dựa trên cấu trúc thiết kế của FPGA
Trang 7l Các phần mềm
" Microsoft Visio — Vé so đồ, vẽ mạch
= EmEditor hodc Notepad++ dé viét code
" Xemacs 21.4.21 để kết nối các mô-đun
(module) tự động
" ModelSim (5.7g hoặc 6.4a) để mô phỏng
chức năng
Trang 8lÍ Ngôn ngữ mô tả phần cứng
" Hardware Description Language (HDL)
° VHDL (VHSIC HDL — Very-High-Speed Integrated Circuit HDL)
© Verilog HDL (goi ngan gon 1a Verilog)
" Cac phién ban Verilog
I © 1995
© 2001 (IEEE std 1364-2001)
Trang 9ll Spartan3E 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
" VGA
= PS/2 port
" Two 9-pin RS-232 serial
Trang 10DE2 Altera Board (TerAsic)
FPGA Class
" 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
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
FPGA Class * SD memoryldétd Bot 1
Trang 12
[ Xiinx FPOA suuetue ]
EIEl|HI|L|ll
[Programmable Interconnects | a Poa a eae eaa aa ee
[SF GF DF OF OF 57 57p
rogrammable ar
"hiacainset Ý tr sự đi? sứ si ate say | — MO Bloeks (IOBs)
iii — —_| 2 UF TF ar TF oy tr ae FT
: pth th et ed eb eb cl ed i] Configurable
2 Logic Blocks (CLBs)
Trang 13Cấu tạo chip FPGA (2)
i
LTTTTTTTTT]
HịL1|R
Logie Block Logic Block
LTTTTTTIIIR-
kết nếi
Logic PLD’ =| se Nối kết
Trang 14l Ví 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 15l_ Sơ đồ khối và sơ đồ tín hiệu
COUNTER_TOP
Phân tích tín hiệu COUNTER_TOP
Phân tích khối
rst_n ——> COUNTERS |——>lcd_en
dec_key ——+| = Phân tích khối
Trang 16MAch chi tiét COUNTER_9
Phân tích thiết kế mức
thấp
tiết Xí sync_dec_key
8h30
inc k sync_inc_key
db_ lcd[7:0]
of J——U
X1
Trang 17Biên dịch với Quartus 9.0
la 2p 4| Pe====fdb_Ícd_wr[7 0) counter_9m1
ber
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