{"id":133,"date":"2020-02-23T04:58:47","date_gmt":"2020-02-23T04:58:47","guid":{"rendered":"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/s20-teame0\/?p=133"},"modified":"2020-02-23T04:58:47","modified_gmt":"2020-02-23T04:58:47","slug":"jonathans-status-update-for-2-22","status":"publish","type":"post","link":"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/s20-teame0\/2020\/02\/23\/jonathans-status-update-for-2-22\/","title":{"rendered":"Jonathan&#8217;s Status Update for 2\/22"},"content":{"rendered":"<p>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.<\/p>\n<p>After getting the FPGA toolchain set up last week, I spent most of this week putting together a basic RGMII interface.\u00a0 A significant amount of the time spent was on the IO.\u00a0 Since RGMII is a relatively fast DDR interface, in order to meet timing, I had to use ODDR2 blocks for all the pins.\u00a0 I had never used these before, and had some initial difficulty getting them to work as expected.\u00a0 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.\u00a0 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.\u00a0 At this point, the board is able to send a hardcoded UDP packet over the RGMII interface, however, the PHY does not transmit it.\u00a0 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.\u00a0 I&#8217;ve emailed Broadcom, but haven&#8217;t received a reply.\u00a0 Last week I got a sample of a PHY from Analog Devices, which does have a datasheet available online.\u00a0 If I&#8217;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).<\/p>\n<p>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.\u00a0 I did not have time to do any analysis on this data, however.<\/p>\n<p><img decoding=\"async\" loading=\"lazy\" class=\"alignnone wp-image-136 size-large\" src=\"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/s20-teame0\/wp-content\/uploads\/sites\/92\/2020\/02\/PDM_deadbug_tester_closeup-1024x768.jpg\" alt=\"\" width=\"525\" height=\"394\" \/><\/p>\n<p>(close up of the microphone)<\/p>\n<p><img decoding=\"async\" loading=\"lazy\" class=\"alignnone size-medium wp-image-135\" src=\"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/s20-teame0\/wp-content\/uploads\/sites\/92\/2020\/02\/PDM_deadbug_tester-225x300.jpg\" alt=\"\" width=\"225\" height=\"300\" \/><\/p>\n<p>(microphone test board.\u00a0 Dip switches for switching between multiple microphones)<\/p>\n<p>No significant changes to the plan have occurred, and we are still on track.\u00a0 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.<\/p>\n<p>This coming week, I plan to mainly work on the ethernet interface.\u00a0 I&#8217;ll be handing off the PDM microphone test board to Ryan and Sarah, going forward, for audio properties and testing data processing.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>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.\u00a0 A significant amount of the time spent was &hellip; <\/p>\n<p class=\"link-more\"><a href=\"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/s20-teame0\/2020\/02\/23\/jonathans-status-update-for-2-22\/\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &#8220;Jonathan&#8217;s Status Update for 2\/22&#8221;<\/span><\/a><\/p>\n","protected":false},"author":279,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[5,3],"tags":[6,7],"_links":{"self":[{"href":"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/s20-teame0\/wp-json\/wp\/v2\/posts\/133"}],"collection":[{"href":"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/s20-teame0\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/s20-teame0\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/s20-teame0\/wp-json\/wp\/v2\/users\/279"}],"replies":[{"embeddable":true,"href":"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/s20-teame0\/wp-json\/wp\/v2\/comments?post=133"}],"version-history":[{"count":2,"href":"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/s20-teame0\/wp-json\/wp\/v2\/posts\/133\/revisions"}],"predecessor-version":[{"id":137,"href":"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/s20-teame0\/wp-json\/wp\/v2\/posts\/133\/revisions\/137"}],"wp:attachment":[{"href":"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/s20-teame0\/wp-json\/wp\/v2\/media?parent=133"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/s20-teame0\/wp-json\/wp\/v2\/categories?post=133"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/s20-teame0\/wp-json\/wp\/v2\/tags?post=133"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}