Thiết kế hệ thống xử lý ảnh video trên FPGA (CycloneII) - Pdf 15

Thiết kế hệ thống xử
lý ảnh video trên
FPGA (CycloneII)
Chương 1: CẤU TRÚC TỔNG QUÁT CỦA FPGA
I. Cấu trúc chung
1. Các logic block
Cấu trúc và nội dung của logic block được gọi là kiến trúc
của nó. Kiến trúc của logic block có thể được thiết kế theo
nhiều cách khác nhau. Một số logic block có thể chỉ đơn giản là
các cổng AND hai ngõ nhập. Các logic block khác có cấu trúc
phức tạp hơn như các multiplexer hay các bảng dò tìm (look-up
table). Trong một số loại FPGA, các logic block có thể có cấu
trúc hoàn toàn giống PAL. Hầu hết các logic block 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ự.
2. Khối I/O (IOB)
Mỗi chân I/O của linh kiện XC4000 có một IOB lập trình
được với các buffer tương thích với các mức tín hiệu của TTL và
CMOS. Nó được sử dụng như một lối ra, lối vào hoặc port 2
chiều. Một IOB được đònh cấu hình như một lối vào có thể có lối
vào trực tiếp, chốt. Với việc đònh cấu hình một lối ra, IOB có lối
ra trực tiếp. Lối ra bộ đệm của IOB có bộ điều khiển skew và
slew. Các thanh ghi có giá trò đối với đường dẫn lối vào lối ra
của một IOB được truyền các xung đảo riêng biệt. Có một set và
reset toàn cục.
3. Các nguồn kết nối
Cấu trúc và nội dung của 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

AMD Hierarchical-
PLD
PLD Block EEPROM
QuickLogic Symetrical
Array
Multiplexer-
based
Anti-fuse
Algotronix Sea-of-gates Multiplexer &
Based Gates
Static RAM
Concurrent Sea-of-gates Multiplexer &
Based Gates
Static RAM
Crosspoint Row-based Transitor Pairs
& Multiplexer
Anti-fuse
CHƯƠNG II: MẠCH XS40
I. Đặc điểm
XS40_005XL gồm có:
 XC4005XL FPGA
 Vi điều khiển 8031
 SRAM 32K Byte
 Bộ dao động lập trình được 100MHz
 Cổng song song
 Cổng chuột, bàn phím loại PS/2
 Cổng monitor VGA
 Led 7 đoạn
 84 chân giao tiếp với XSTEND board
 Socket EFROM nối tiếp

XS40 hoặc được cắm trực tiếp thông qua một số chân ở bên dưới
của mạch. Chỉ cần nối nguồn +5V, +3.3V và nối mass đến các
chân của mạch XS40. (Sử dụng nguồn +3.3V nếu mạch XS40
chứa loại XC4000XL của FPGA).
Loại mạch XS40 Chân
GND
Chân +5V Chân +3.3V
XS40-005E
V1.4
52 2 ; 54 None
XS40-005XL
V1.4
52 2 54
XS40-010E
V1.4
52 2 ; 54 None
XS40-010XL
V1.4
52 2 54
XS40-010
V1.4
52 2 ; 54 None
Bảng 1: Nguồn điện cung cấp cho các chân của mạch XS40
Hình 2: Các kết nối bên ngoài của mạch XS40
Hình 3: Sự sắp xếp các thành phần trên mạch XS40
Chương 2: Kết nối máy tính với mạch
XS40
Nối mạch XS40 với một máy tính bằng một dây cáp 6’. Một
đầu cáp được gắn vào cổng song song của máy tính và đầu kia
nối đến bộ nối DB-25 (J1) ở phần trên của mạch XS40 (như hình

nối tiếp trên mạch
On Đặt shunt khi EEPROM nối tiếp trên mạch
(U7) đang được lập trình
J6
Off
(mặc
đònh)
Tháo bỏ shunt trong khi sử dụng mạch thông
thường
1-2 (ext)
(mặc
đònh)
Đặt shunt vào chân 1 và chân 2 (ext) nếu
chương trình vi điều khiển 8031 được lưu trữ
trong SRAM ngoại 32KByte (U8) của mạch
XS40
J7
2-3 (int) Đặt shunt vào chân 2 và chân 3 (int) nếu
chương trình được lưu trữ nội bộ trong vi
điều khiển
On Đặt shunt trên mạch XS40 hoặc XSP sử
dụng loại XC4000XL 3.3V của họ FPGA
J8
Off Tháo bỏ shunt trên mạch XS40 hoặc XSP sử
dụng loại XC4000E 5V của họ FPGA
On Đặt shunt nếu mạch XS40 hoặc XSP đang
được đònh dạng từ EEFROM nối tiếp trên
mạch
J10
Off

cao sẽ xét bộ vi điều khiển, SRAM và FPGA được kết nối như
thế nào được trình bày như hình 4:
Hình 4: Sơ đồ kết nối các thành phần trên mạch XS40
Ghi chú
: * = not conectted on XSP Board
** = applies to XS40 + Board
Lối ra của bộ dao dộng lập trình được đưa trực tiếp đến lối
vào xung đồng bộ của FPGA. FPGA sử dụng xung này để phát
ra một xung gởi đến lối vào xung XTAL1 của vi điều khiển. Vi
điều khiển đa thành phần 8 bit thấp của một đòa chỉ bộ nhớ với 8
bit dữ liệu và các lối ra được nối đến P0. Cả những đường dữ
liệu SRAM và FPGA đều được nối đến P0. SRAM sử dụng kết
nối này để chuyển dữ liệu đến vi điều khiển và nhận dữ liệu từ
vi điều khiển. FPGA được lập trình để chốt đòa chỉ lối ra ở P0
dưới sự điều khiển của tín hiệu ALE và gửi các bit đòa chỉ đã
chốt đến 8 đường đòa chỉ thấp hơn của SRAM.
Trong khi đó, 8 bit đòa chỉ cao là lối ra ở P2 của vi điều
khiển. Trên mạch XS40, SRAM 32Kbyte sử dụng 7 trong 8 bit
đòa chỉ này trong khi SRAM 128Kbyte lấy cả 8 bit đòa chỉ. FPGA
cũng nhận đòa chỉ 8 bit cao và giải mã cùng với đường điều
khiển PSENB và Read/Write (chân P3.6 của P3) từ vi điều
khiển để phát ra tín hiệu CBE và OBE cho phép SRAM và lối ra
của nó điều khiển, hoặc đưa tín hiệu CBE hoặc OBE lên cao để
vô hiệu hóa SRAM và ngăn cản nó khỏi ảnh hưởng trên phần
còn lại của mạch XS40.
Một trong những lối ra của FPGA điều khiển chân reset của
vi điều khiển. Vi điều khiển có thể tránh khỏi ảnh hưởng trên
phần còn lại của mạch bằng cách cho chân RST lên cao thông
qua FPGA. (Khi RST hoạt động, các chân của vi điều khiển
được kéo lên cao).

khiển 8031 và FPGA
Lưu đồ thiết kế cơ bản để xây dựng các ứng dụng cho vi
điều khiển và FPGA như hình 5. Đầu tiên phải tìm ra đặc tính
cho hệ thống đang thiết kế. Sau đó, xác đònh lối vào nào là giá
trò cho hệ thống và lối ra nào sẽ phát.
Vào lúc này, hệ thống phải phân chia các hàm giữa vi điều
khiển và FPGA. Một số tín hiệu lối vào sẽ đưa vào vi điều
khiển, một số sẽ đưa vào FPGA và một số khác sẽ đi vào cả hai.
Tương tự, một số lối ra sẽ được tính toán bởi vi điều khiển và
một số được tính bởi FPGA. Cũng sẽ có thêm một số lối vào và
lối ra mới của hệ thống được tạo ra bởi yêu cầu của cả FPGA và
vi điều khiển.
Thông thường, FPGA sẽ sử dụng chủ yếu các hàm bậc thấp
mà ở đó sự chuyển tiếp các tín hiệu xảy ra thường xuyên hơn và
mức logic điều khiển đơn giản hơn. Ngược lại, vi điều khiển
được sử dụng đối với các hàm bậc cao mà ở đó các đáp ứng xảy
ra chậm hơn và mức điều khiển logic phức tạp hơn. Một khi
thiết kế được phân chia, gán giá trò các lối vào, lối ra và các
hàm cho vi điều khiển và FPGA thì sau đó thiết kế chi tiết về
phần mềm và phần cứng có thể được bắt đầu. Đối với phần
mềm, ta có thể sử dụng chương trình soạn thảo thông dụng để
tạo ra file .ASM (Như ngôn ngữ assembler) và dòch nó thành file
.HEX với ASM51 cho vi điều khiển trên mạch XS40. Đối với
phần cứng FPGA, ta sử dụng phần mềm XILINX Foundation để
đưa bảng sự thật và các phương trình logic vào file .ABL hoặc
.VHD và dòch nó thành file .BIT.
Sử dụng chương trình GXSLOAD (được trình bày ở phần
sau) để download các File .HEX và file .BIT vào mạch XS40.
GXSLOAD lưu trữ nội dung file .HEX vào SRAM trên mạch
XS40. Sau đó, nó đònh dạng lại FPGA bằng cách nạp file

phần mềm XILINX’s CORE.
Mạch XSTEND mở rộng khả năng của mạch XS40 bằng
cách cung cấp:
 Giao tiếp mở rộng cho mạch XS40
 Hỗ trợ thanh LED và LED 7 đoạn.
 Nút ấn và các công tắc DIP
 Một giao diện với các màn hình VGA
 Một giao diện với bàn phím hoặc chuột loại PS/2
 Một SRAM bổ sung 64 Kbytes (tuỳ ý)
 Một stereo codec với các kênh vào và ra trái/phải
 Một giao diện với cáp XILINX Xchecker
 Một vùng mẫu 2.75” * 3.5” với nguồn 3.3V hoặc 5V
 Một bộ kết nối header được thêm vào mạch con.
Những tài nguyên này được trình bày trong mạch XSTEND
đơn giản hoá tổng quan. Mỗi tài nguyên được mô tả trong hình
vẽ bên dưới:
Hình 1: Layout mạch XSTEND
II. Mô tả mạch XSTEND
1. Vùng lắp đặt mạch XS40
Một mạch XS40 được gắn trên mạch XSTEND sử dụng
socket mạch XS. Những socket này kết hợp với các chân giao
diện breadboard của mạch XS cho phép chúng nối đến tất cả tài
nguyên của mạch XSTEND. Để sử dụng một mạch XS40 với
mạch XSTEND, ta cắm nó vào cột bên phải của socket, (nếu
dùng mạch XS95 thì ta cắm nó vào cột bên trái của socket). Có
những chỗ đánh dấu trên mạch XSTEND cho biết cột thích hợp
với mỗi loại mạch XS.
Nếu mạch XS nối với một nguồn điện được cấp thông qua
chân J9 thì mạch quy đònh nguồn điện của nó sẽ cung cấp VCC
và GND cho mạch XSTEND thông qua socket. Mạch XS40 với

điện vớiø led 7 đoạn U2. Đặt shunt trên jumper cho
phép led U2 hoạt động
J13 Đặt shunt trên jumper này, cho phép các led hoạt động
khi ta đang sử dụng mạch XSTEND với mạch XS95.
Nếu đang sử dụng mạch XS40 với mạch XSTEND thì
ta gỡ bỏ shunt trên jumper này
Bảng 1: Thiết lập các Jumper cho mạch XSTEND
Listing 1: Sự kết nối giữa các led của mạch XSTEND
# LEFT LED DIGIT SEGMENT CONNECTIONS
(ACTIVE-LOW)
NET LSB<0> LOC=P3;
NET LSB<1> LOC=P4;
NET LSB<2> LOC=P5;
NET LSB<3> LOC=P78;
NET LSB<4> LOC=P79;
NET LSB<5> LOC=P82;
NET LSB<6> LOC=P83;
NET LDPB LOC=P84;
#
# LEFT LED DIGIT SEGMENT CONNECTIONS
(ACTIVE-LOW)
NET RSB<0> LOC=P59;
NET RSB<1> LOC=P57;
NET RSB<2> LOC=P51;
NET RSB<3> LOC=P56;
NET RSB<4> LOC=P50;
NET RSB<5> LOC=P58;
NET RSB<6> LOC=P60;
NET RDPB LOC=P28;
#

không nối mass và có thể chuyển đổi giữa mức thấp và mức cao
Listing 2: Sự kết nối giữa công tắc DIP mạch XSTEND
và công tắc nút đẩy và mạch XS40
# DIP SWITCH CONNECTIONS
NET DIPSW<1> LOC=P7;
NET DIPSW<2> LOC=P8;
NET DIPSW<3> LOC=P9;
NET DIPSW<4> LOC=P6;
NET DIPSW<5> LOC=P77;
NET DIPSW<6> LOC=P70;
NET DIPSW<7> LOC=P66;
NET DIPSW<8> LOC=P69;
#
#PUSHBUTTON SWITCH CONNECTIONS (ACTIVE-
LOW)
NET SPAREB LOC=P67;
NET RESETB LOC=P37;
4. Giao diện (interface) VGA
Mạch XSTEND cung cấp một mạch XS với một giao diện
monitor VGA thông qua bộ nối J5. Mạch XS có thể truyền các
tín hiệu đồng bộ ngang và các tín hiệu đồng bộ dọc (tác động ở
mức thấp) điều khiển chiều rộng và chiều cao của khung video
và truy xuất đến 2 bit của các tín hiệu màu đỏ, xanh lá cây và
xang dương. Vì vậy nó có thể tạo ra các pixel với bất kỳ 2
2
*2
2
*2
2
=64 màu khác nhau.

CODEC
NET LRCK LOC=P66;#LEFT/RIGHT CODEC
CHANNEL CODEC
NET SCLK LOC=P77;#SERIAL DATA CLOCK
NET SDOUT LOC=P6; #SERIAL DATA OUTPUT
FROM CODEC
NET SDIN LOC=P70;# SERIAL DATA INPUT
FROM CODEC


Nhờ tải bản gốc

Tài liệu, ebook tham khảo khác

Music ♫

Copyright: Tài liệu đại học © DMCA.com Protection Status