{'fraction_non_alphanumeric': 0.016198704103671708, 'fraction_numerical': 0.0, 'mean_word_length': 5.4375, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
ALCHA: An Alternative Programming Model for FPGA Firmware

Existing hardware description languages, as well as other FPGA firmware design tools, utilise a programming model that closely resembles physical circuitry. This approach is appropriate for ASIC designs, where modification is expensive, but is somewhat limiting when designing complex, highly integrated firmware for large FPGAs, which are more flexible than ASICs. ALCHA is a new programming language for coding FPGA firmware that is currently under development. It focuses on providing a variety of powerful features aimed at improving developer productivity and reducing the cost of maintenance. This paper presents the ALCHA programming model, which aims to improve code re-usability by easing the process of implementing abstraction layers. The concept is illustrated by means of a case study relating to the implementation of firmware for a modern radar system.