TY - GEN
T1 - Low-level algorithm for a software-emulated I2C I/O module in general purpose RISC-V based microcontrollers
AU - Molina-Robles, Roberto
AU - Garcia-Ramirez, Ronny
AU - Chacon-Rodriguez, Alfonso
AU - Rimolo-Donadio, Renato
AU - Arnaud, Alfredo
N1 - Publisher Copyright:
© 2021 IEEE.
PY - 2021
Y1 - 2021
N2 - To date, I2C is a protocol that has a lot of use on microcontroller applications. Implementing the hardware for a I2C controller affects directly chip size, cost and time development in VLSI projects. To save on these aspects, we have used hardware emulation by software to recreate the I2C behavior through GPIO ports in a RISC-V microcontroller of our own. This paper proposes a flexible and practical low-level algorithm that replaces a physical I2C controller, to be able connect an I2C peripheral device to its driver code inside the microcontroller using GPIO ports as channels. An explanation of the application is described, along with the code structure and the logic behind the algorithm. At the end, this paper presents results with a brief analysis of its benefits and future improvements.
AB - To date, I2C is a protocol that has a lot of use on microcontroller applications. Implementing the hardware for a I2C controller affects directly chip size, cost and time development in VLSI projects. To save on these aspects, we have used hardware emulation by software to recreate the I2C behavior through GPIO ports in a RISC-V microcontroller of our own. This paper proposes a flexible and practical low-level algorithm that replaces a physical I2C controller, to be able connect an I2C peripheral device to its driver code inside the microcontroller using GPIO ports as channels. An explanation of the application is described, along with the code structure and the logic behind the algorithm. At the end, this paper presents results with a brief analysis of its benefits and future improvements.
KW - I/O protocols
KW - IC bus protocol
KW - RISC-V
KW - algorithms
KW - architecture
KW - hardware emulation
KW - hardware-software applications
KW - microcontroller
UR - http://www.scopus.com/inward/record.url?scp=85124366535&partnerID=8YFLogxK
U2 - 10.1109/URUCON53396.2021.9647309
DO - 10.1109/URUCON53396.2021.9647309
M3 - Contribución a la conferencia
AN - SCOPUS:85124366535
T3 - 2021 IEEE URUCON, URUCON 2021
SP - 90
EP - 94
BT - 2021 IEEE URUCON, URUCON 2021
PB - Institute of Electrical and Electronics Engineers Inc.
T2 - 2021 IEEE URUCON, URUCON 2021
Y2 - 24 November 2021 through 26 November 2021
ER -