Tải bản đầy đủ (.pdf) (10 trang)

Thiết kế hệ thống xử lý ảnh video trên FPGA (CycloneII), chương 5 doc

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (159.9 KB, 10 trang )

Chương 5: PHẦN MỀM HỖ TR
THIẾT KẾ
I. Phần mềm tiện ích XSTOOL
Hiện nay XILINX cung cấp các công cụ cho việc lập trình
họ FPGAs và CPLDs. Một vài phiên bản gần đây của phần
mềm XILINX tạo ra các file dạng bitstream tương thích với
mạch XS40. XESS corp. cung cấp thêm tiện ích XSTOOLs cho
việc giao tiếp một máy tính với một mạch XS40.
Phần mềm tiện ích XSTOOL này bao gồm các chức năng
sau:
 Kiểm tra mạch
 Lập trình tạo tần số cho bộ dao động trên mạch
 Download các thiết kế vào KIT
 Nạp dữ liệu vào KIT
1. Kiểm tra mạch XS40
Mỗi lần lắp đặt mạch XS40 và các jumper ở cấu hình mặc
đònh của chúng thì mạch có thể được kiểm tra bằng cách sử
dụng tiện ích GUI-based GXSTEST như sau:
Nhấp vào biểu tượng
(đã có trên màn hình nền khi cài
đặt XSTOOLS). Sau đó hiện cửa sổ:
Kế tiếp, ta sẽ chọn loại cổng song song mà mạch XS40
được kết nối từ danh sách pulldown
Port. GXSTEST bắt đầu với
cổng LPT1 như mặc đònh, nhưng ta cũng có thể chọn cổng LPT2
hoặc LPT3 tuỳ thuộc vào cấu hình máy tính.
Sau khi chọn cổng song song, ta chọn loại mạch XS40 đang
cần kiểm tra từ danh sách pulldown
Board Type. Sau đó nhấp
chọn nút
TEST để bắt đầu thủ tục kiểm tra. GXSTEST sẽ đònh


dạng FPGA để chạy thủ tục kiểm tra trên mạch XS40. Sau vài
giây, nếu việc kiểm tra được thực hiện thành công thì LED 7
đoạn hiển thò
O. Ngược lại nếu E hiển thò trên LED 7 đoạn thì
việc kiểm tra thất bại. Cửa sổ trạng thái sẽ xuất hiện trên màn
hình máy tính để khai báo cho ta biết việc kiểm tra thành công
hay thất bại.
Nếu kiểm tra mạch XS40 thất bại, ta sẽ thấy danh sách
kiểm tra thông báo nguyên nhân của việc kiểm tra không thành
công đó. Nếu tình trạng không phải là một trong những nguyên
nhân đó thì ta sẽ kiểm tra mạch XS40 bằng một máy tính khác.
2. Lập trình cho bộ dao động của mạch XS40
Mạch XS40/XSP có một bộ dao động lập trình được tần số
100MHz. Tần số chính 100MHz có thể được chia bởi các hệ số
từ 1,2,…đến 2050 để lấy xung từ 100MHz, 50MHz, …xuống
48.7KHz tương ứng. Các tần số đã chia này được gửi đến phần
còn lại của mạch XS40/XSP như một tín hiệu xung.
Các số chia (ước số) được lưu trữ ở bộ nhớ cố đònh trong
chip của bộ dao động để nó tiếp tục hoạt động ở tần số đã được
chương trình hoá bất cứ khi nào nguồn điện được cấp cho mạch
XS40/XSP. Các số chia đặc biệt có thể lưu trữ vào chip của bộ
dao động bằng các sử dụng tiện ích GUI-based GXSSETCLK
như sau:
Nhấp chọn biểu tượng
(đã có trên màn hình nền khi
cài đặt XSTOOLS). Sau đó hiện ra cửa sổ:
Bước kế tiếp là chọn cổng song song mà mạch XS40/XSP
được kết nối từ danh sách pulldown
Port. GXSSETCLK bắt đầu
với cổng song song LPT1 như đã mặc đònh, nhưng ta cũng có thể

chọn cổng song song LPT2 hoặc LPT3 tuỳ theo cấu hình máy
tính. Sau đó chọn loại mạch XS40/XSP từ danh sách pulldown
Board Type.
Kế tiếp, ta đưa vào một số chia có giới hạn trong khoảng từ
1 đến 2050 vào ô
Divisor và nhấp chọn nút SET. Sau đó các
lệnh liên tục được cho bởi GXSSETCLK để đặt các shunt, di
chuyển và lưu trữ nguồn điện trong suốt quá trình lập trình cho
bộ dao động. Khi quá trình trên hoàn tất, tần số mới sẽ được lập
trình để đưa vào DS1075
Tín hiệu xung ngoại có thể được thay thế cho bộ dao động
nội tần số 100MHz của DS1075. Việc kiểm tra hộp chọn xung
ngoại sẽ cho phép đặc tính này trong chip của bộ tạo dao động
lập trình được. Nếu điều này được chọn, ta sẽ phải tự cung cấp
xung ngoại cho mạch XS40/XSP thông qua chân 64 sau đó.
3. Lập trình
Phần này sẽ cho biết làm thế nào để download một thiết kế
logic từ máy tính vào mạch XS40 và làm sao để lưu trữ một
thiết kế trong EEFROM nối tiếp tuỳ ý mà khi cấp nguồn điện
vào thì nó sẽ hoạt động.
a. Download các thiết kế vào mạch XS40
Trong giai đoạn triển khai và kiểm tra, thông thường ta sẽ
kết nối mạch XS40 đến cổng song song của máy tính và
download mạch mỗi khi thay đổi nó. Download một thiết kế
FPGA vào mạch XS40 bằng cách sử dụng tiện ích GXSLOAD
như sau:
Nhấp chọn biểu tượng
(đã có sẵn trên màn hình nền
khi cài đặt XSTOOLS). Sau đó xuất hiện cửa sổ như hình:
Chọn cổng song song mà mạch XS40 được kết nối đến từ

danh sách pulldown
Port. Thông thường GXSLOAD được mặc
đònh với cổng song song LPT1 nhưng ta có thể chọn cổng song
song LPT2 hoặc LPT3 tuỳ theo cấu hình của máy tính. Sau đó
chọn loại mạch XS40 đang sử dụng từ danh sách pulldown
Board Type.
Sau khi thiết lập loại mạch và cổng song song, ta tải các file
.BIT đến FPGA trên mạch XS40 bằng cách kéo chúng đến vùng
FPGA/CPLD của GXSLOAD như cửa sổ bên dưới:
Mỗi lần rê nút chuột trái và thả file, file có vệt sáng xuất
hiện trong vùng
FPGA/CPLD và nút Load trong cửa sổ
GXSLOAD được cho phép. Nhấp chọn nút
Load file có vệt sáng
sẽ được gửi đến mạch XS40 thông qua kết nối cổng song song.
Các file .BIT chứa cấu hình các bitstream được nạp vào FPGA.
GXSLOAD sẽ bỏ đi những file không cho phép download.
Trong suốt quá trình download, GXSLOAD sẽ hiển thò tên file
và quá trình download hiện thời.
Ta có thể kéo và thả nhiều file trong vùng FPGA/CPLD.
Khi nhấp chọn chuột vào một file thì tên file đó sáng và chọn nó
để download. Chỉ có một file có thể được chọn để download ở
một thời điểm.
Nhấp kép vào file có vệt sáng thì file đó sẽ không được
chọn. Vì vậy không có file nào được download. Khi đó nút
Load
sẽ không được phép
b. Lưu trữ mà không xoá các thiết kế trong mạch XS40
FPGA trên mạch XS40 lưu trữ cấu hình của nó trên chip của
SRAM và được xoá bất cứ khi nào nguồn điện được ngắt. Một

khi thiết kế được hoàn thành, ta có thể lưu trữ bitstream trong
một EEFROM nối tiếp được đặt trên socket U7 của mạch XS40.
EEFROM sẽ đònh dạng FPGA để hoạt động ngay khi nguồn điện
được cấp vào.
XILINX XC1700 là một loạt các EEFROM nối tiếp tương
thích với mạch XS40. Hơn nữa, XC1700 chỉ có thể lập trình một
lần (OTP), vì vậy cần phải có một chip mới mỗi lần thay đổi
thiết kế logic. Bảng 3 liệt kê các chip EEFROM nối tiếp cần để
lưu trữ các file bitstream đối với mỗi loại mạch XS40
Loại mạch XS40 Kích thước
Bitstream
EEPROM XILINX
XS40-005E 95,008 XC17128E
XS40-005XL 151,960 XC17256E
XS40-010E 178,144 XC17256E
XS40-010XL 283,424 XC1701
XSP-010 95,008 XC17S10
Bảng 3: Giới thiệu các EEPROM nối tiếp của hãng XILINX
đối với mỗi loại mạch XS40 khác nhau
Ngoài ra cần phải lựa chọn việc lưu trữ các thiết kế vào
EEPROM nối tiếp AT7C256 Atmel lập trình lại được. Nếu mạch
XS40-005E, XS40-005XL hoặc mạch XS40-010E được sử dụng
thì mạch XS40 có thể lập trình trực tiếp trên chip Atmel và các
FPGA trên các mạch này có các file bitstream có kích thước phù
hợp với AT7C256. Thiết kế được nạp vào EEPROM Atmel bằng
cách kéo file
.BIT vào vùng Flash/EEPROM và nhấp vào nút
Load. Tuần tự các bước đưa dữ liệu vào bộ nhớ là như sau:
i. Toàn bộ EEPROM được xoá.
ii. FPGA trên mạch XS40 được lập trình để tạo ra một

giao diện giữa EEPROM và cổng song song.
iii. Nội dung của file .BIT được download vào EEPROM
thông qua cổng song song
Mỗi lần các thiết kế được nạp vào EEPROM, các bước tiếp
theo sẽ đònh dạng mạch XS40 từ EEPROM khi cấp điện
i. Tháo dây cáp tải từ bộ nối J1 của mạch XS40. (Có
thể sử dụng lệnh XSPORT 0 để đảm bảo 2 bit cao
của cổng song song đều ở mức logic 0. Các bit này
được nối đến các chân chế độ của FPGA và phải ở
mức logic 0 hoặc FPGA sẽ không cấp điện ở chế độ
hoạt động nối tiếp).
ii. Đặt shunt ở jumper J10. Khi đó FPGA được đặt ở chế
độ hoạt động nối tiếp để nó cấp một tín hiệu xung
đến EEPROM và tuần tự nạp cấu hình từ EEPROM
vào FPGA.
iii. Tháo bỏ các shunt ở các jumper J4 và J11. Điều này
ngăn cản mạch giao diện PC trên XS40 không bò
nhiễu khi có tín hiệu xung từ FPGA.
iv. Cấp nguồn điện vào mạch XS40. FPGA sẽ được đònh
dạng từ EEPROM nối tiếp. Ta có thể nối lại dây cáp
nếu cần xen các tín hiệu kiểm tra vào các thiết kế
đang sử dụng chương trình XSPORT
c. Download và Upload dữ liệu đến RAM hoặc từ RAM
trên mạch XS40
Mạch XS40 chứa RAM 32Kbytes hoặc 128KByte, nội dung
của nó có thể download và upload bằng
GXSLOAD. Điều này
thuận lợi cho việc khởi chạy RAM với dữ liệu sử dụng bằng
FPGA và đọc nội dung của RAM sau khi FPGA hoạt động.
RAM được nạp dữ liệu bằng cách kéo và thả một hoặc nhiều

file
.EXO, .MCS, .HEX, và/hoặc file .XES vào vùng RAM của
cửa sổ GXSLOAD và sau đó nhấp vào nút Load. Tuần tự các
bước đưa dữ liệu vào bộ nhớ là như sau:
i. FPGA trên mạch XS40 được lập trình lại để tạo ra
một giao diện giữa thiết bò RAM và cổng song song
của máy tính
ii. Nội dung của các file .
EXO, .MCS, .HEX hoặc .XES
được download vào RAM thông qua cổng song song.
Dữ liệu các file sẽ viết đè lên nhau nếu đòa chỉ
trùng lấp.
iii. Sau khi dữ liệu đã download vào RAM, một vài file
bitstream có vệt sáng trong vùng
FPGA/CPLD được
download vào FPGA trên mạch XS40. Ngoài ra
FPGA vẫn còn đònh cấu hình như một giao diện trên
RAM.
Nội dung của RAM được kiểm tra bằng cách upload nó đến
máy tính. Để upload dữ liệu từ một vùng đòa chỉ trong RAM, gõ
các ranh giới cao và thấp vào vùng
High Address và Low
Address
bên dưới vùng RAM và chọn dạng muốn lưu trữ dữ
liệu đang sử dụng trong danh sách pulldown
Upload Format.
Sau đó chọn biểu tượng file, kéo và thả nó vào một vài danh
mục. Tuần tự các bước đưa dữ liệu vào bộ nhớ là như sau:
i. FPGA trên mạch XS40 được lập trình lại để tạo ra
giao diện giữa thiết bò RAM và cổng song song của

máy tính
ii. Dữ liệu RAM giữa đòa chỉ cao và thấp được upload
thông qua cổng song song.
iii. Dữ liệu đã upload được lưu trữ ở dạng file được đặt
tên là RAMUPLD có phần mở rộng tương ứng với
file đònh dạng.

×