Learning Polar Codes using Python Program with Graphical User Interface - Aung, Htain Lynn; Bhone Maung, Tay Zar; Sasithong, Pruk; Sreprasurt, Teesid; Wijayasekara, Sanika; Pengnoo, Manus; Wuttisittikulkij, Lunchakorn; Phakphisut, Watid; Phongphanphanee, Chairat; Bajpai, Ambar; Saadi, Muhammad; Vanichchanunt, Pisit (My University, 2019)
Polar codes are an emerging class of powerful capacity-achieving channel codes for binary-input memoryless channels. Very recently, polar codes have been adopted as an official channel coding technology for control channels of 5G communications systems. In this paper, we aim to develop a self-learning software tool to help electrical engineering students understand polar codes in the most effective manner. The software tool developed in Python provides a graphical display for detailed and step-by-step encoding and decoding processes for polar codes of various different block lengths. We have applied this tool in our lecture class of the fourth year undergraduate students. It is found that students are able to gain insight the basic concept of polar codes quickly through the interactive and friendly graphical user interface.
Keywords: channel polarization; polar codes; self-learning software tool; successive cancellation decoder