FPGA Polar Code SC Decoder ๐ Project Overview This project implements a Successive Cancellation (SC) decoder for Polar codes on FPGA, focusing on low resource utilization and hardware efficiency. The design demonstrates how channel coding algorithms can be efficiently mapped onto FPGA hardware with minimal logic resources.
๐ง Background Polar codes are a class of channel codes that achieve channel capacity, widely adopted in modern communication systems such as 5G. The SC (Successive Cancellation) decoding algorithm is the most fundamental decoding method for Polar codes, offering a good trade-off between complexity and performance.
โ๏ธ Key Features ๐ Ultra-low resource usage LUT: 316 Flip-Flops: 192 โก Hardware-efficient SC decoding architecture ๐ Supports iterative bit-by-bit decoding ๐งฉ Modular design for easy extension ๐ Suitable for FPGA-based communication systems
๐๏ธ Architecture Overview The SC decoder is implemented based on a recursive structure, consisting of: Processing Elements (PEs) for LLR computation Partial sum update logic Control logic for sequential decoding Block RAM for LLRS storage
๐ How to Run 1๏ธโฃ Simulation Use your preferred simulator (e.g., ModelSim / Vivado) 2๏ธโฃ Synthesis (Vivado) Open Vivado Add source files from src/ Run synthesis
๐ Resource Utilization Resource Usage: LUT 316 FF 192 This demonstrates the efficiency of the proposed architecture for low-cost FPGA implementations.
๐ฌ Design Highlights Optimized SC decoding datapath for minimal hardware usage Sequential architecture reduces parallel hardware overhead Efficient LLR computation using shared processing elements Balanced trade-off between latency and resource consumption
๐ Future Improvements โก Implement Fast-SSC decoding using specialized nodes ๐งฉ Introduce multiple Processing Elements (PEs) for better parallelism ๐ Extend to SCL (Successive Cancellation List) decoding