This week I mainly worked on getting the gigabit ethernet interface working on a development board, and, put together a board for testing the PDM microphones.
After getting the FPGA toolchain set up last week, I spent most of this week putting together a basic RGMII interface. A significant amount of the time spent was on the IO. Since RGMII is a relatively fast DDR interface, in order to meet timing, I had to use ODDR2 blocks for all the pins. I had never used these before, and had some initial difficulty getting them to work as expected. Additionally, some of the IO that I was using to verify operation were buffered with 74HC245 bus transceivers, which cannot operate at the 125MHz required for RGMII. Once I realized that they were to blame for some of the unusual behavior, I removed them from the board and bypassed their footprints with wires. At this point, the board is able to send a hardcoded UDP packet over the RGMII interface, however, the PHY does not transmit it. I am not sure whether this is because some additional configuration is required for the PHY, the RGMII is not being generated correctly or something else, and, cannot find a datasheet for the PHY. I’ve emailed Broadcom, but haven’t received a reply. Last week I got a sample of a PHY from Analog Devices, which does have a datasheet available online. If I’m unable to get the broadcom PHY working, I will probably either use the AD PHY, or purchase a breakout board for a different chip (several are available online for ~$40).
I also built a basic breakout board for one of the PDM microphones, and wrote a basic interface using a Teensy 4.0, that sends the raw PDM data over USB. I did not have time to do any analysis on this data, however.
(close up of the microphone)
(microphone test board. Dip switches for switching between multiple microphones)
No significant changes to the plan have occurred, and we are still on track. Our main risk of falling off-track will be that I will have to get at least a basic ethernet interface working, or else pivot to a different interface, within the next week.
This coming week, I plan to mainly work on the ethernet interface. I’ll be handing off the PDM microphone test board to Ryan and Sarah, going forward, for audio properties and testing data processing.