Skip to content

Chinese chess game implemented using Verilog, controlled with Ps2 keyboard and displayed using VGA.

Notifications You must be signed in to change notification settings

Shiritai/Verilog-VGA-ChineseChess

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 

Repository files navigation

VGA Chinese Chess with Verilog

This repository contains the final project for NTHU Logic Design Laboratory (2022 Spring). The project is a special VGA Chinese chess game designed and implemented using Verilog. The game supports two players with individual timers, random chess mode, and P2S keyboard. This repository aims to be a meaningful reference for those interested in writing a game with OOP-styled Verilog.

For Chinese guests, please refer to doc/README.md to see the specifications, designs, and implementation methods directly. The source code contains mostly English comments. The following module dependency diagram may help you understand the whole structure.

image

Please note that Ps2Interface.v, KeyboardCtrl.v, and KeyboardDecoder.v were originally implemented by a senior, who re-implemented Ulrich Zolt's work from VHDL to Verilog. I made some modifications to Ps2Interface.v for better coding style. Additionally, vga_controller.v was also created by a senior, but the coding style was quite... mentally distorting, so I re-implemented a better version that allows control of hyper-parameters for different VGA resolutions. All other files were implemented by myself.

I hope this repository serves as a helpful reference. Please feel free to contact me or submit a patch if you have any questions. Have a great day!

About

Chinese chess game implemented using Verilog, controlled with Ps2 keyboard and displayed using VGA.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published