Low-level algorithm for a software-emulated I2C I/O module in general purpose RISC-V based microcontrollers

  • Roberto Molina-Robles
  • , Ronny Garcia-Ramirez
  • , Alfonso Chacon-Rodriguez
  • , Renato Rimolo-Donadio
  • , Alfredo Arnaud

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

1 Scopus citations

Abstract

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.

Original languageEnglish
Title of host publication2021 IEEE URUCON, URUCON 2021
PublisherInstitute of Electrical and Electronics Engineers Inc.
Pages90-94
Number of pages5
ISBN (Electronic)9781665424431
ISBN (Print)9781665424431
DOIs
StatePublished - 2021
Event2021 IEEE URUCON, URUCON 2021 - Montevideo, Uruguay
Duration: 24 Nov 202126 Nov 2021

Publication series

Name2021 IEEE URUCON, URUCON 2021

Conference

Conference2021 IEEE URUCON, URUCON 2021
Country/TerritoryUruguay
CityMontevideo
Period24/11/2126/11/21

UN SDGs

This output contributes to the following UN Sustainable Development Goals (SDGs)

  1. SDG 7 - Affordable and Clean Energy
    SDG 7 Affordable and Clean Energy

Keywords

  • I/O protocols
  • IC bus protocol
  • RISC-V
  • algorithms
  • architecture
  • hardware emulation
  • hardware-software applications
  • microcontroller

Fingerprint

Dive into the research topics of 'Low-level algorithm for a software-emulated I2C I/O module in general purpose RISC-V based microcontrollers'. Together they form a unique fingerprint.

Cite this