Programs

Simulators\annsim3.c (DJGPP):

Custom artificial neural network simulator, used in the optical character recognition test problem. This version simulates the dynamic re-routing algorithm to obtain the first set of results, by starting with a fully-connected network, and ending with an approx. 90%-connected network. This is a less-accurate simulation of how the algorithm would work in chip implementation. The program is set up within the C code, to change the cycles, trials, learning methods, layer setup, and parameters related to the dynamic re-routing algorithm.
  • Adobe PDF - annsim3.c.pdf (10 pages)
    Size: 0.06MB
    Click here to Open (right-click, "save target as" to download)

Simulators\annsim4.c (DJGPP):

Custom artificial neural network simulator, used in the optical character recognition test problem. This version simulates the dynamic re-routing algorithm to obtain the second set of results, by keeping the number of synapses as approx. 20%-connected. This is a very accurate simulation of how the algorithm would work in chip implementation. The program is set up within the C code, to change the cycles, trials, learning methods, layer setup, and parameters related to the dynamic re-routing algorithm. The program is currently set up to measure mean square error of the test dataset, as opposed to the training dataset, to test the generalization performance of the neural network.
  • Adobe PDF - annsim4.c.pdf (14 pages)
    Size: 0.07MB
    Click here to Open (right-click, "save target as" to download)

Simulators\ocrsets.h (DJGPP):

Datasets for the neural network simulations. This data includes 5 training, and 5 test sets for a digit-based optical character recognition test. Each character is presented with a 1 pixel offset, and 5% noise. Training and test data is individually generated with the same parameters for random generation.
  • Adobe PDF - ocrsets.h.pdf (6 pages)
    Size: 0.04MB
    Click here to Open (right-click, "save target as" to download)

Test Gen\neural_test_data_generator.vbp (VB):

Program to generate ocrsets.h. Some changes have made to ocrsets.h file, in terms of code formatting, after generation.
  • Adobe PDF - neural_test_data_generator.frm.pdf (4 pages)
    Size: 0.04MB
    Click here to Open (right-click, "save target as" to download)
  • ZIP Archive - neural_test_data_generator.zip
    Size: 0.01MB
    Click here to Open (right-click, "save target as" to download)

Routing\nnrouter.c (DJGPP):

Incomplete routing program for the neural network. At this point, the program will read in a netlist of neuron-synapse connections, and begin to process this into the routing layout.
  • Adobe PDF - nnrouter.c.pdf (8 pages)
    Size: 0.06MB
    Click here to Open (right-click, "save target as" to download)

Routing\VB Final\neuron router*.* (VB):

Incomplete neural network routing GUI, for use after the chip is manufactured. An interface will be constructed between this program and nnrouter.c. The program allows the user to design the neural network based on neuron and synapse connections, and set routing constraints. Additional options, routing, and hardware interface will be added in the future.
  • Adobe PDF - neuron_router_about.frm.pdf (5 pages)
    Size: 0.05MB
    Click here to Open (right-click, "save target as" to download)
  • Adobe PDF - neuron_router_options.frm.pdf (4 pages)
    Size: 0.05MB
    Click here to Open (right-click, "save target as" to download)
  • Adobe PDF - neuron_router_splash.frm.pdf (3 pages)
    Size: 0.04MB
    Click here to Open (right-click, "save target as" to download)
  • Adobe PDF - neuron_router_tip.frm.pdf (4 pages)
    Size: 0.05MB
    Click here to Open (right-click, "save target as" to download)
  • Adobe PDF - neuron_router.frm.pdf (39 pages)
    Size: 0.11MB
    Click here to Open (right-click, "save target as" to download)
  • Adobe PDF - neuron_router1.frm.pdf (4 pages)
    Size: 0.05MB
    Click here to Open (right-click, "save target as" to download)
  • Adobe PDF - neuron_router2.frm.pdf (10 pages)
    Size: 0.06MB
    Click here to Open (right-click, "save target as" to download)
  • Adobe PDF - neuron_router3.frm.pdf (4 pages)
    Size: 0.04MB
    Click here to Open (right-click, "save target as" to download)
  • Adobe PDF - neuron_router4.frm.pdf (4 pages)
    Size: 0.04MB
    Click here to Open (right-click, "save target as" to download)
  • ZIP Archive - neuron_router.zip
    Size: 0.03MB
    Click here to Open (right-click, "save target as" to download)

Routing\VB Demo\*.* (VB):

Incomplete demonstration of the channel routing algorithm used with the chip routing. First the user will select which nodes to connect together, by selecting the output, then the input for each connection. The routing algorithm decides the best channel to choose for each connection, based on the overall cost of programmable wires and connections (usually corresponding to the smallest area). Improvements are still needed to ensure that channels are never overcrowded.
  • Adobe PDF - demo1_v2.frm.pdf (36 pages)
    Size: 0.11MB
    Click here to Open (right-click, "save target as" to download)
  • Adobe PDF - Module1.bas.pdf (1 page)
    Size: 0.04MB
    Click here to Open (right-click, "save target as" to download)
  • ZIP Archive - routing_demo.zip
    Size: 0.01MB
    Click here to Open (right-click, "save target as" to download)

Routing\Serial\VB\*.* (VB):

Visual basic interface to the hardware routing array demonstration, using a 9600 baud serial link. Programmable wires and connections in the demonstration circuit can be enabled and disabled to form complex layouts of channel connections.
  • Adobe PDF - hardwarerouter.frm.pdf (19 pages)
    Size: 0.08MB
    Click here to Open (right-click, "save target as" to download)
  • ZIP Archive - routing_serial_vb.zip
    Size: 0.01MB
    Click here to Open (right-click, "save target as" to download)

Routing\Serial\*.* (CCS PIC C):

Incomplete demonstration of the channel routing algorithm used with the chip routing. First the user will select which nodes to connect together, by selecting the output, then the input for each connection. The routing algorithm decides the best channel to choose for each connection, based on the overall cost of programmable wires and connections (usually corresponding to the smallest area). Improvements are still needed to ensure that channels are never overcrowded.
  • Adobe PDF - main.c.pdf (3 pages)
    Size: 0.04MB
    Click here to Open (right-click, "save target as" to download)
  • Adobe PDF - main.h.pdf (1 page)
    Size: 0.04MB
    Click here to Open (right-click, "save target as" to download)
  • ZIP Archive - routing_serial.zip
    Size: 0.04MB
    Click here to Open (right-click, "save target as" to download)

May9_full.do.pdf (STATA):

STATA DO file used in the analysis of the data from the C neural network simulation programs.
  • Adobe PDF - May9_full.do.pdf (3 pages)
    Size: 0.04MB
    Click here to Open (right-click, "save target as" to download)
Copyright © Malcolm Stagg 2006. All Rights Reserved.
Website: http://www.virtualsciencefair.org/2006/stag6m2. Email: malcolmst@shaw.ca.