h      g
Home    Background Information    Project Planning and Development    About Us

Project Design and Operation

Description
  
Side view of the LED simulation design
    This product consists of two 8x4 LED arrays driven by an Arduino microcontroller. Each LED array consists of 32 white LEDs arranged in a 4x8 grid representing the different cells in the array.  In each array there are 56 red LEDs used to represent the wordlines, and 48 yellow LEDs representing the bit lines.  The bit lines and word lines are arranged such that there are two connecting LEDs between each cell.  There also exists 8 blue LEDs separating the arrays and representing the sense amps.  
    A front panel exists on the side (version 1) or the top (version 2) consisting of a 16x2 display screen, an up and down button, and a select and back button.  

                    Schematics:
(CLick for larger view)
     
The wiring diagram of the Arduiono

   
The wiring diagram of the buttons

   
The wiring diagram of the LCD screen


The wiring diagram of the LEDs

   
The protoboard schematic of the back of the front panel


The PCB schematic

           Operation:

   The users interface is operated by means of the LCD and four buttons on the front panel.  Upon booting up the LCD will display an option on both the top and bottom line.  The < symbol is used to indicate which line is selected and a (v) or (^) symbol is used to indicate there exists more options that can be scrolled to bellow the bottom line or above the top line.  
    In order to scroll the < cursor and select new lines, the up and down arrows are used.  In order to select a line, the select button is used.  Once a line has been selected, the program will navigate to a sub menu or execute a program.  Which of these two operations is performed is governed by the flow chart seen to the left.  In order to go back up to a previous menu the back button is used.  


The different operation modes are as follows:
 - Random R/W: sets the board to perform a sequence of reads and writes on random cells in the DRAM array.  Each read/write is separated by a random gap of time.
 - Single Read: causes the board to go through a single read operaion on a preset cell
 - Single Write: causes the board to go through a single write operation on a preset cell.  The opposite value of the what was previously stored is written.  
 - Auto Refresh: sets the board to perform automatic refreshes every set interval of time
 - Manual Refresh: dissables the autmatic refresh and gives the user the option to trigger a refresh manually
 - SetBadCellsOn: diables certain preset cells designated as "bad", and enables spare cells that will be read/write to in place of the bad cells.
 - SetBadCellsOff: enables the cells disabled by the previous command
 - SetSpeed Fast/Slow: sets the delay between each step in a read/write routine to either a preset large or small value
 - SetRefreshTime Fast/Slow:  sets the delay between refreshes to either a preset large or small value
 - Reset: sets the program to Random R/W, Auto Refresh, BadCellsOff, Slow RefreshTime, Slow ProgramSpeed

             Parts Pages and Datasheets

LEDsRed
White
Yellow
Blue
LCDProduct Page
ArduinoProduct Page
ButtonsProduct Page