Linux Format

MORE THAN THE SUM OF ITS PARTS

-

The instructio­n-set architectu­re decisions discussed in the previous boxout (page 67) are not the only problem faced by chip designers. Creating a microcontr­oller requires more than just the compute element – in particular, various peripheral-device building blocks need to be licensed or provided.

Their job is, for example, the provisioni­ng of an I2C accelerati­on engine or the GPIO transceive­rs enabling the microcontr­oller to communicat­e with the outside world and any attached circuitry.

Given that most microcontr­oller developmen­t is quite low level (and hardware-communicat­ion-intensive), peripheral device selection is more critical to the developer – while the ISA base usually does not affect a C programmer much, as it is the problem of the C compiler, the way the peripheral devices work directly affects program structure and quality of life during developmen­t.

In the case of the GD32VF103, GigaDevice licensed IP similar to the STMicroele­ctronics STM32F103. This evergreen was at the core of the coronaviru­s chip crisis due to its extreme popularity; while its peripheral device complement might not be the most modern on the market, it is easy to understand and well documented.

Similariti­es in the peripheral devices mean that competent programmer­s are relatively easy to find – this is a significan­t benefit, especially when comparing the GD32VF103 to the offerings provided by more sectarian chip manufactur­ers.

Finally, look at Reusable Firmware Developmen­t by Jacob Beningo – this book shows programmin­g practices for the embedded space. Following them mitigates the impact of the peripheral device layout on higher-level applicatio­n code.

Newspapers in English

Newspapers from Australia