Work

SPI-FSMC Expander with DMA Mode Support

Year: 2024
Type: article
Abstract: The article provides further development of software and hardware solutions for building fully functional Industrial Internet of Things (IIoT) systems based on high-speed SPI. The possibility of overcoming the obstacles caused by the limitation of the set of input/output lines to a more complete use of the redundant computing resource of Wi-Fi modules outside the provision of "access point – station" information exchange for solving problems related to other aspects of the functioning of the embedded system has been investigated. It has been established that the current issue is to expand the basic capabilities of embedded system components, taking into account the provision of comprehensive access to the SPI bus for all the functionality of typical IIoT systems. The implementation of the proposed hardware and software solutions was carried out in the form of an expander module for the basic capabilities of the SPI bus, designed to intensify information exchange over the Wi-Fi channel between the SoC controller and peripherals: IO and LCD extensions, SD cards, DRAM and SPI-Flash file storage. The SPIExpander hardware driver and the MultySwitcher software driver for its control were developed. In software driver developing was implement the HAL paradigm and was used RTOS methods to prevent abnormal situations of multiple access on the bus. The advantages of introducing the high-speed SPI bus as opposed to the STM-FSMC interface are demonstrated in the example with the implementation of their HMI components into the structure of the embedded device. SPIExpander was used as a system proxy driver that implements the function of a network switch, with controlled by DrvLoadBlock software driver DrvSPI2LCD hardware adapter driver connecting on the one of its serial ports for converts DMA packets into a stream of 16-bit words. Hardware stability has been increased and the set of input lines for generating LCD control system signals and conducting DMA block operations has been minimized. The software model of the driver for the implementation of polycore and multithreaded information exchange is presented. Recommendations for using the SPI-FSMC expander are provided.
Language: English
Open Access status: diamond
OpenAlex ID: W4409575958
FWCI:
Cites: 2
Cited by:
Related to: 10