website page counter Xiuye Gu's Projects

Projects

Connect Them

An intelligent search engine, which supports searching by words and articles, as well as connecting semantic relevant articles -- providing connection chart for similar articles. In this search engine, we implemented the boolean retrieval model, the vector space model, and pivot normalized cosine model. It is also equipped with automatic creation of literature abstracts. TFIDF-SK and Textrank are used for evaluating word importantce. [slides]

A Decent Search Engine

A decent search engine on Reuters dataset, which supports index compressing, tiered index, the boolean retrieval model, the vector space model, approximate top K search, wildcard search, phrase search, auto-correction and generating abstracts automatically. [code]

ZJU C Compiler

An ANSI C compiler features error handling & recovery and optimization in C++, generating 32-bit x86 assembly code, runnable on real computers after assembling and linking. [slides] [code]

JS in CPP

A JS interpreter in C++, implemented via recursive decent parsing. [code]

Flash Pool

A pool game implemented in WebGL with Phong shading, Per-fragment Lighting, and shadow mapping with Percentage Closer Filtering. [code]

MiniSQL

A mini database system of high efficiency with buffer manager, record manager, index manager, catalog manager, API, and interpreter, implemented in C++. [code]

A Mine Sweeper Game on FPGA board

A salute to the classic mine sweeper game on the Xilinx Spartan-6 FPGA board with VGA output in Verilog HDL. [code]

CPUs on FPGA board

For the computer hardware courses, a single-cycle CPU implemented in schematic design and Verilog HDL; a multi-cycle CPU in Verilog HDL; a 5-stage pipelined CPU with forwarding paths, predict-not-taken, and interruption implementation. All CPUs are equipped with at least 18 MIPS instructions.