Part II: The Digital Neuron

This part of the lab is the design of a special-purpose digital circuit that mimics a neuron (brain cell). Be sure to finish and test your schematic of the neuron before you start the neuron layout.

There are 10 inputs to the neuron:

  • 10 single-bit data inputs to the neuron, P, Q, R, S, T, U, V, W, Y, Z that could be different every clock cycle
  • a single-bit inhibitory input I,
  • Load control signal, that allows the output ff to be loaded with a new value,
  • Reset control signal
  • and a clock with 50% duty cycle.

Name your signals as shown in bold above. The output should be named AP. It is important you follow this naming convention so we can verify that your circuit works.

The basic Neuron Function:

  • Each data input and control input has a single bit.
  • The inhibitory input I is a single bit.
  • The neuron output contains one firing flip-flop you designed in Lab 2, and the output of the flip-flop AP represents the output of the neuron.
  • The neuron "fires" when at least three out of 10 data inputs P, Q, R, S, T, U, V, W, Y, Z are equal to 1, and I is NOT equal to 1. The firing test logic is combinational.
  • After the negative edge of the clock, if the neuron fires, the output of the firing flip-flop goes from low to high. The output remains high until the next falling clock, when it is lowered if the new inputs do not cause a "1" to be loaded into the FF.
  • Load is normally held high, but is lowered if we want to emulate a neuron failing to fire due to lack of sleep or similar circumstance.
  • Note that you might find a way to use the compound gate you designed in Lab 1, and you might need more than one of these gates. You do not have to use it at all.

A block diagram of the neuron is shown below.