I3C Interface Implementation and IMU Performance Evaluation on FPGA

The I3C host interface is to be implemented on an FPGA. During the implementation, care should be taken to make the I3C IP core relatively generic so that it can be used in further projects. The I3C protocol can be very complex and supports many features. Since the Zeil platform is a resource-constrained FPGA, another focus of the implementation will be to decide which core functions must be implemented and which should be considered optional. Two identical IMUs (Bosch BMI323) are to be used as sensors. These sensors have an internal time stamping unit, so that sensor values can be tagged. Each IMU contains both a 3D accelerometer and a 3D gyroscope whose axes are to be read out.

The goal should be that the time difference between the axis values of one sensor, but also between all values (of both IMUs and both internal sensors) is as small as possible, in order to be able to merge the data in the best possible way.

For this reason, a performance evaluation should be performed. Here also the internal FIFO of the IMUs can be used to parallelize the data acquisition a bit. Overall, it will be intensively investigated which data rates and latencies can be achieved and how the I3C bus scales in the process.

The following figure illustrates the sensor system:

drawing

Tasks

Here is the task and description of the tasks in bullet points:

Further Reading