More specifically, we originally considered storing both the automaton state information and user interface features (i.e. One of the main hardware tradeoffs that we made in designing our final system involved how to display user interface features without significantly reducing bandwidth to memory. An image of our setup is provided below:Ĭonway's Game of Life Music Generator: Hardware Setup Hardware & Software Tradeoffs Each of these pieces of our design is described in more detail later on in the report. All of the key presses on the keyboard were routed to the NIOS which then drove the appropriate control lines for each of the affected hardware modules. Finally, the user interface consisted of many small hardware modules, the most significant of which was the NIOS processor. The audio synthesis hardware, as mentioned earlier, simply created multiple tones based on state information from the cellular automaton and routed them to the audio codec for playback on external speakers. Additionally, this hardware supported adding objects or even individual cells to the screen when the game was "paused". The automton generation hardware simply calculated the next state of the Game Of Life given its current state, and updated all cell values in memory. The hardware synthesized on the FPGA itself was broken into three logical pieces: automaton generation, audio synthesis and the user interface. Finally a pair of basic speakers were attached in order for the music to be played in real-time, as the automaton evolved. An external VGA monitor allowed the user to see the automaton as it evolved and manipulate it with ease via a simple keyboard interface. As can be seen above, all of the control logic (both hardware and software) was imlpemented on the Altera DE2 Development Board. Additionally, we wanted the user to easily be able to manipulate both the automaton and its mapping to audio in order to produce an interesting musical signal which could be played with basic speakers. Our goal from the outset was to design a system that allowed a user to interact with Conway's Game of Life in a way much like the flash-version included above. High-Level View showing Logical Structure A few examples are presented below for reference (taken from ): With these four simple rules (and extremely basic mathematics), many interesting visual structures can be created starting from a variety of intial conditions (i.e.
0 Comments
Leave a Reply. |