Phương Thức Xuất Hình VGA

You might also like

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 7

Phương Thức Xuất Hình VGA:

Đây là một phương thức xuất hình rất phỏ biển, nó dựa trên 5 tín hiệu chính:
Horizontal sync, Vertical sync, Red, Green, Blue. Trong đó Red, Green, Blue là
các tín hiệu màu cho mỗi pixel trên màn hình. Horizontal sync là tín hiệu đồng bộ
ngan khi hết một hang pixel. Tín hiệu Vertical sync là tín hiệu đồng bộ dọc khi hết
một khung hình.

Vì vậy với các tích hiệu thich hợp sẽ cho ra những chế độ hiển thị khác nhau.

Trước hết để hiển thị ảnh trên màn hình, ta sẽ tạo module thực hiên nhiệm vụ này.

Tạo tín hiệu h_sync, và v_sync:

Trong bài nào, nhóm em chọn độ phân giải 640 x 480 để cho đơn giản.
Trước hết chúng ta cần biết chúng ta đang ở pixel nào trên màn hình, và khi nào
chúng ta cần tín hiệu 2 tín hiêu đồng bộ trên.
Chúng ta tạo 2 bộ đếm x, và y cho biết chúng ta đang ở pixel thứ mấy ? hàng nào ?
Hai bộ đếm này sẽ đếm theo xung clock.
Chúng ta sẽ xác định các tham só sau
Tín hiệu h_sync
integer porchHF = 640; //vị trí bắt đầu horizntal front porch
integer syncH = 655; //vị trí bắt đầu tín hiệu horizontal sync (LOW)
integer porchHB = 747; //vị trí bắt đầu horizontal back porch
integer maxH = 793; //tổng số pixel
Tương tự cho tín hiệu v_sync
integer porchVF = 480; // vị trí bắt đầu vertical front porch
integer syncV = 490; // vị trí bắt đầu vertical sync (LOW)
integer porchVB = 492; // vị trí bắt đầu back porch
integer maxV = 525; // tổng số hàng
từ bảng trên ta có sơ đồ sau:
verilog code:

Tín hiệu display area cho chúng ta biết ràng có đang trong vùng visible hay không
để gửi các pixel cẩn để hiển thị.

Điển hiển thị con rắn, quả táo, tường, ta chị cần xác định vị trí của nó vào tạo tín
hiệu ngay lúc ta đang vẽ pixel ở vị trí tương tứng
Thực hiện xuất hình:
Quá trình trên được thực hiện trọng module snake:

Tín hiệu border để xác định biển của trò chơi. Biên có độ rộng là 30 pixel.
Với tín hiệu màu như sau:

Tín hiệu Red sẽ active khi đang trong vùng hiển thị và ở pixel vị trí quả táo hoặc
game over.
Tín hiệu Blue sẽ active khi đang trong vùng hiển thị và khộng bị game over
Tín hiệu Green sẽ active khi đang trong vùng hiển thị và chỗ con rắn, và biên

Toàn màn hình sẽ là màu xanh(Blue), trừ chỗ quả táo sẽ có màu đỏ, tín hiệu green
sẽ ở tường biên và con rắn, vị tính hiệu blue có ở chõ con rắn nên 2 tín hiệu màu
chồng nhau, tạo thành màu cyan.
Waveform:
H_sync và V_sync

Ví dụ hành pixel thứ


Vẽ 30 pixel ở biên (R = 0, B = 1, G =1) và vẽ pixel nền (R = 0, G = 0, B =1)
Vị trí quả táo xuất hiện
(apple goes HIGH)

Các tín hiệu trong 1 khung hình

You might also like