Guest Post by Michael Debole with contributions by Rodrigo Alvarez-Icaza, Filipp Akopyan, Nabil Imam, Bryan Jackson, William Risk, and Jun Sawada.
Today, we end our first week of a 3-week TrueNorth bootcamp, where we began to unveil and teach the ecosystem for TrueNorth. We take a look behind the scenes and present some of the effort the team has put forth when preparing the hardware for participants to learn on, play with, and eventually call their own.
The goal was simple: Assemble, test, and configure the first batch of 100 single-chip, index card-sized TrueNorth development boards (dubbed NS1e for Neurosynaptic System Evaluation Platform), 48 of which will be used as the playground for the Boot Camp participants. First to learn on, but eventually to take home and continue to develop their own algorithms and apply to their own applications. While seemingly straightforward, several items had to come together to allow us to provide users with an experience that has become expected of a development platform. While there was much to do, boards from the factory were received almost exactly one month to the day (actually less), leaving very little room for errors. Here is a timeline that summarizes our experiences as we worked to deliver the hardware in time for bootcamp:
07/01/15-07/06/15: NS1e boards are in-route from the factory, but there is little time to waste. We begin to create manufacturing and test scripts responsible for exercising board components as well as tracking boards as they execute the test procedures.
07/08/15: Boards are here! Less than one month away from bootcamp, we received NS1e boards in Almaden for assembly, test, and staging.
07/09/15: It was all hands on deck as we began to assemble and test the boards, attaching feet and heat sinks, everyone got involved in the fun! After boards were assembled, they were run through a round of testing which exercised TrueNorth and other discrete components to ensure functionality.
Bryan Jackson assembling and testing NS1e True North development boards.
7/9/15: Due to the hardwork of the team and lab members, all boards were tested and configured by the end of the day!
Assembled NS1e Boards.
07/10/15-07/24/15: With two weeks before we begin infrastructure testing the team still needed to decide how the NS1e boards would be finally configured. One important choice was which operating system would be loaded on the embedded Zynq platform: whether to use the strongly tested Petalinux or to push to provide Ubuntu. The team collectively decided to ensure the boards could run Ubuntu, which enables the NS1e platforms to pick up applications from the Linux community at large and expands the platforms versatility. To enable this, the team worked to resolve a few compatibility issues, but finally managed to get a working and tested image in time for infrastructure testing.
07/24/15-7/30/15: Infrastructure testing week! Due to the number of participants we split our 48 boards across 4 gateway servers. Testing now consists of ensuring each board is accessible by the servers and each has the latest version of the image containing FPGA firmware, OS, and the TrueNorth control software. S ome load testing is also performed to see what happens when many users are requesting to use boards simultaneously. Things mostly worked, and we fixed what didn’t.
Staging area for the 48 NS1e Development Boards the Participants will use while at Boot Camp.
07/31/2015: It is the weekend before bootcamp, so the team builds the final home of the NS1e development boards before they are finally transported to the classroom. Each of the NS1e platforms are placed into individual cases and inserted into a 6×8 array. The final rack contains the same number of neurons as a small mouse (48 Million Neurons and 12 Billion Synapses)! Now off to bootcamp!