Subject:NuCORES and NuTRONS
Date:Wed, 13 Jan 1999 07:25:41 -0800
From:Sean Rigter 
To:beam@relay1.corp.sgi.com

Hello everyone, 

I was going to post these papers on the Heretic board but it won't fit 
in the dialog box. I don't have a website myself, so here it is for one and all! 
I asked Mark T. for his opinion and I have attached his very encouraging 
reply. 

enjoy 

wilf 

                                        The NuCore 
                                        (c) Wilf Rigter 
                                         Jan 10,1999 

A simplified BEAM model (in the FAQ) suggests that, with minor exceptions, 
Nervous neurons (Nv) are the differentiating, dynamical inner core elements 
and that Neural neurons (Nu) are the integrating, damping peripheral elements 
of neural networks.. 

This metaphor seriously diminishes the phase space of Neural neuron applications. 

A thought experiment into extending the functionality of Neural neurons (Nu) 
led me to believe that we are ignoring important applications for the Nu 
including higher order Nu core networks which may have important applications 
for motor control. It must be emphasized that the well known 1Nu core, the 
Solar Engine,  is and must be a Neural neutron. 

Any number higher order Nu cores can be constructed from Nu elements using 
inverting and non inverting gain stages. I propose to call this class of Neural 
neuron cores the "NuCore" circuit. 

There are some significant differences between Nv cores and NuCores. 

GENERAL NuCore CIRCUIT 

NuCore circuits are based of the following general design: 

  +-- 4 Nu  <---------------------------------------------o<]--+ 
  |-- 3 Nu  <-----------------------------------+              | 
  |-- 2 Nu  <----------------o<]-+              |              | 
  |-- 1 Nu  <-----+              |              |              | 
  |    3M         |   3M         |   3M         |   3M         | 
  +---/\/\/-+-[>o-+--/\/\/-+-[>o-+--/\/\/-+-[>o-+--/\/\/-+-[>o-+ 
            |     1        |     2        |     3        |     4 
           === 0.1        === 0.1        === 0.1        === 0.1 
            |              |              |              | 
            0V             0V             0V             0V 

            Fig. 1   n Node NuCore circuits 

Note the extra inverter required for even number NuCores . These circuits were 
tested with 74HC14 inverters but preliminary results show using any very high gain 
element, like an octal inverting D latch is also possible. In addition, a certain 
manufacturer's HC octal transceivers can provide inverting and non inverting Schmitt 
trigger elements which can be used for this (and other:) application replacing the 
last node 2 inverting  elements with one non inverting element for even number node 
NuCores. 

NuCORE PROCESS AND OUTPUT PATTERNS 

Nv cores all support more than one STABLE distinct process pattern which implies that 
through an adaptive mechanism, different walking gaits may result. Yet nearly all Nv core 
applications default to cycling a single process which in fact, results in the maximum of 
n distinctive outputs patterns for n Nv nodes per cycle. 
For example, the 4 Nv micro core achieves the highest number of distinct output patterns 
(1000, 0100, 0010, and 0001) by cycling one process. The other other two 4Nv micro core 
process patterns result in two (1010,0101) and one (0000)  output patterns respectively. 

The NuCores  have only one STABLE unsaturated process pattern which results in 2n 
number of distinctive output patterns in a natural GRAY CODE sequence. 
NuCore process pattern always eventually stabilizes as a 2n length symmetric process 
pattern with a  1/n phase overlap between outputs. For example, a 3NuCore (n=3Nu) has 
a symmetric  000111 process pattern which appears at any one output. 

Various node NuCores have the following 2n output pattern sequences: 

          output  1     12     123     1234 
          step 
           1      0     00     001     0010 
           2      1     01     011     0110 
           3            11     010     0100 
           4            10     110     0101 
           5                   100     1101 
           6                   101     1001 
           7                           1011 
           8                           1010 

           Table 1   NuCore output patterns 
  

NuCore MOTOR CONTROL PATTERNS 

A 4NuCORE can be connected (through buffers) the same way as a Nv micro core 
with motor 1 connected to output nodes 1 and 3 and motor 2 to 2 and 4. 
Alternately motor 1  can be connected to 1 and 2, and motor 2 to 3 and 4. 

This gives the following distinctive motor control patterns. 

                      MOTOR                        MOTOR 
           STEP  1      2               STEP  1      2 
             1  fwd    stop               1  stop   rev 
             2  fwd    rev                2  fwd    rev 
             3  stop   rev                3  fwd    stop 
             4  stop   stop               4  fwd    fwd 
             5  rev    stop               5  stop   fwd 
             6  rev    fwd                6  rev    fwd 
             7  stop   fwd                7  rev    stop 
             8  stop   stop               8  rev    rev 

              Table 2   4NuCORE motor control patterns 

The first case results in the same 50% utilization of motor on time as 
the Nv micro core but with overlapping phases and times when all motors 
are stopped. The second case results in a greater utilization of motor 
on time of 66.6% and 1/n phase overlap.  This motor on utilization not 
as high as master-slave Bicore circuit but wastes a lot less power and 
gear wear and tear by avoiding instantaneous motor reversal. 

A 3NuCore with 3 motors connected to outputs 1 to 2, 2 to 3 and 3 to 1 
respectively has a motor pattern which may be useful for three motor or 
six motor walkers. The important limitation of this combined use of Nu 
nodes is the lack of independent adjustment of each motor on/off time. 
This leads to complex interaction which is probably difficult to tune. 

                     MOTOR 
          STEP  1      2     3 
            1  fwd    stop  rev 
            2  fwd    rev   stop 
            3  stop   rev   fwd 
            4  rev    stop  fwd 
            5  rev    fwd   stop 
            6  stop   fwd   rev 

            Table 3 3NuCore 3 motor pattern 

FUTURE NuCORE 

I have only just begun to investigate this useful class of Nu core circuits. 
Higher order NuCores would provide a large number of distinct output 
patterns, for use with a large number (arrays) of motors/actuators. 
New combinations of motor connections and motor patterns may be used 
together with other novel Nu circuits with the distinct possibility of a Nu only 
robot.  In addition, decoders and multiplexes may be used with low order 
NuCores to isolate motor control outputs and feedback paths and provide 
reversing and other motor control logic functions. New odd symmetry robot 
topologies may effectively use the odd symmetry 3Nu and 5NuCore processes. 
Some applications for using the grey code output sequence with a resistor 
network for D/A voltage conversion. 
Finally NuCores can incorporate the NuTRON -  majority logic functions to 
add a new level of complex behavior from this simple circuit. 

Comments on any other work in this area will be most welcome since it 
may save me from reinventing the wheel (hum... leg!). 

Many thanks to Mark Tilden and Brosl Haslacher for sharing their seminal 
ideas in LIVING MACHINES. 

*********************************************************************************** 

                        The NuTRON - A Majority Logic Neural neuron 
                              (c) Wilf Rigter  - Jan 10, 1999 

According to BEAM orthodoxy (an oxymoron if I ever heard one), the Nervous neuron 
(Nv) is generally used for inner core process control circuits such as the Bicore 
and Microcore. The Neural neuron (Nu), on the other hand, is generally assigned 
to peripheral duty as a stimulus signal conditioner and short term memory. 

NuTRON - MAJORITY LOGIC 

The Neural Neuron is also capable of performing a function called MAJORITY 
LOGIC.  An example is a single 74HC14 Schmitt trigger inverter with 4 equal 
resistors summed at the input (the bias point) with a delay capacitor 
connected to 0V. 
  

         input 1   o--/\/\/-+ 
                            | 
         input 2   o--/\/\/-+ 
                            | 
         input 3   o--/\/\/-+ 
                            |  74HC14 
         input 4   o--/\/\/-+---[>o---o output 
                            | 
                           === 
                            | 
                            0V 

Fig 1. NuTRON - Four input majority logic Neural neuron 

Assuming a power supply voltage V and trigger thresholds of 1/3V and 2/3V, 
the output changes state only when the >2/3 of inputs are at 1V or 0V. 
A majority in the case of the above example is 3 or 4 inputs at 1V or at 0V. 
I have tentatively called this Nu majority circuit a NuTRON. 

A small capacitor value effectively removes input transients which could 
lead to spurious output glitches. With a longer RC time constant, the 
capacitor may also function as a deliberate timing element and when the 
RC time constant is large compared to input frequency this can be used to 
extract the DC component of pulsing input wave forms to provide another type 
of majority logic based on summed input levels and input duty cycle. Using 
unequal input resistors values, or variable resistive elements or sensors 
can provide a more complex NuTRON Majority Logic. 

NuPNC - A NuTRON DESIGN EXAMPLE 

As an example of a simple NuTRON application, I designed the NuPNC, 
(NuTRON Pulse Neutralizing Circuit) used to initiate Microcore circuits. 

The conventional Pulse Neutralizing Circuit (PNC) can be described as 
a long time constant Neural neutron activated only at powerup to kill 
all processes in a Microcore except for the one process forced by the PNC. 

In contrast, the NuPNC is a NuTRON majority logic neural neuron which senses 
when a 4Nv Microcore is saturated and then forces a single process to restore 
normal operation. In effect, the NuPNC is a SATURATION WATCHDOG circuit. 

The NuPNC for a 4Nv Microcore uses the NuTRON circuit in the form of a single 
74HC14 gate, a 0.1 uF capacitor and four 1M resistors as shown : 

                      1M 
           Node 2 o--/\/\/-+ 
           output     1M   | 
           Node 3 o--/\/\/-+ 
           output     1M   | 
           Node 4 o--/\/\/-+ 
           output     1M   |  74HC14 
             0V   o--/\/\/-+-[>o----->|---o to Node 1 
                           |       1N4148    Bias Point 
                          === 0.1 
                           | 
                           0V 

   Fig 2.  Four input NuTRON NuPNC/watchdog circuit. 

The outputs of Microcore Nv Node 2, 3 and 4 are connected to three 1M input 
resistors to the bias point of the NuPNC and the 0.1 uF capacitor in 
parallel with one 1M input resistor are connected to ground. The output 
of the NuPNC is connected through a diode with the cathode attached to 
Microcore Node 1 bias point. 

On powerup, the power supply will be at voltage V and the Microcore is 
saturated. The sum of the output voltages at the NuPNC bias point will 
remain below the 2/3V 74HC14 upper switching threshold.  This causes 
the output of the NuPNC to remain at the active (Pulse Neutralizing) 
level forcing one Nv process and absorbing other Nv processes. When 
only the one forced process remains at Node 1, the outputs of Nodes 2, 
3 and 4 are high and the NuPNC bias point voltage quickly rises to 3/4V 
at which point the NuPNC output switches low, allowing the single process 
to propagate through the Nv Microcore. 

Although a low probability, a 4Nv Microcore can saturate under certain 
transient conditions, and become inoperative until the PNC is reset by 
powering down. 

However with a NuPNC, the Microcore can recover from saturation any time. 
When the 4Nv core saturates and Node 2 and Node 4 ouputs are low, the 
NuPNC  bias point drops to 1/4V and the NuPNC output turns on and remains 
on until all processes are absorbed. Then the bias point rises to 3/4V and 
the NuPNC turns off thereby starting the single process. 

Although the NuPNC circuit requires more resistors (use a resnet) than the 
conventional PNC, the capacitor is smaller, the Microcore starts faster 
and unlike the single shot PNC, the NuPNC continues to monitor the 
Microcore to ensure continued normal operation. 

A NuPNC, with additional NuTRON inputs, may also be used with higher order 
Microcores to initialize specific patterns. 

All in all, the NuPNC circuit is a BEAMish, interesting and nontrivial 
application of the NuTRON (majority gate) neuron. 

There will be many other applications for the NuTRON circuit: 
NuTRONs can be tuned to distinguish > < input sensor patterns.  With an 
analog control voltage (or waveform) at a NuTRON input, the majority 
thresholds and and hysteresis can be dynamically adjusted with fine resolution. 
Other applications include many NuTRONs used as nodes in a complex network 
for large input array signal processing. With NuTRON network output to 
input feedback, a complex multilevel process circulating logic results. 
Only time will tell what NuTRON array topology can best provide that 
interesting dynamical regime at edge of structure and chaos. 

I look forward to discussing any other designs which incorporate these idea. 

Thanks go to Mark Tilden for his BEAM, Nv, PNC and Microcore (copyright and 
patented) concepts which provide the foundation on which I explore these ideas. 

Well before I sign off here is a little Nu BiCore circuit using a 74AC14 which 
behaves very similar to the Nv Bicore. Wonders will never cease! 

                       | |   | | 
                  v v   v v  photodiodes 
                __|\|___|/|________ 
               |  |/|   |\|        |   __   74AC14   __ 
               |_____________/\  __|__/14 |_________|14 \____ 
               |            1M \/     \__ |    |    |__ /    | 
               |                               |     ___     | 
               |   __                  __      |____/ M \____| 
               |__|14 \______/\  _____|14 \____|    \_1_/ 
               |  |__ / |   1M \/  |  |__ /          ___ 
              === 0.1   |         === 0.1        ___/ M \____ 
               |        |          |            |   \_2_/    | 
              0V        |         0V   __       |    __      | 
                        |_____________|14 \_____|___|14 \____| 
                                      |__ /         |__ / 

           Phototropic Nu BiCore circuit with quadrature motor rotation 
  

Hello Mark, 

I read your Living Machines and it was an inspiration for me! 

As a result I came up with some (for me) new ideas which I decided to 
write up and share with others. 

wilf 

Mark Tilden replies: 
  
My God.  An Nv experimentalist!  I was beginning to loose hope. 

Very nice bit of work.  I studied Nu rings a while ago but only 
discovered their saturation properties.  Your steady state Grey code 
cores are quite novel.  The only thing I've seen close to them is the 
Artificial Dendrite work of John Elias (Duke University) but even that 
only shows how to hook up Nus as Nvs (3 to one ratio). 

The one thing I can say is that I've never seen the basic integrating 
neuron-with-threshold used in such minimal self-consistent structures 
before.  One of the disadvantages of conventional high-gain neural net 
neurons is that the signal degredation can never allow for pattern 
regeneration and stability as our Nu's do (except in computers where 
the losses are ignorable).  In that way, you may have hit on the secret 
of why Nu's are different from Neural net neurons: symmetric saturation 
of signals allows Nu's to sustain processes in the real world, and even 
perform digital-style processing. 

Interestingly, I did a lot of early digital-style analogs for Nv tech 
several years ago, but realized that trying to force these devices into 
exhibiting digital style behavior is like using a hammer to pound in 
screws.  The processing style of Nv tech is unique enough to warrant a 
different computational paradigm.  As you stated, NuCores are just one 
of many. 

In all quite professional, and also useful into the fledgling field of 
Nv pattern loops.  It begs me to ask the question... who are you. 

markt. 


[BACK]


Subject:Nu circuits 101- the NuSTEPPER
Date:Mon, 18 Jan 1999 19:48:25 -0800
From:Wilf Rigter 
To:beam@relay1.corp.sgi.com

If you like (or don't like) Nv Microcores, you will love the NuRING.
The NuCore was described in my earlier post and has now been renamed as 
the NuRING. Like the Nv Microcore, the NuRING is made from a number (ie 4)
of process nodes connected in a ring. It uses a single capacitor and
resistor with a gain stage for each node but as an integrator instead of a
differentiator. Think of it as a "relaxed" neuron!

While there are similarities in function between the Nv Microcore and the
NuRING, there are some important differences.
 
First of all, any linear devices like AC240 or AC245 work well as gain
elements for (>1Nu) NuRING circuits. As long as the sign of all inversions
in the NuRING is negative, it can made from any combination of inverting or
noninverting elements. The process pattern in linear NuRINGs is just as
robust as the Schmitt trigger NuRINGS and the voltage swing at the Nu bias
point of NuRINGS >2Nu approaches rail to rail.

I had previously used the Nv Microcore circuit to generate a "wave" step
sequence for uniploar and bipolar type stepper motors and I realized that
the NuRING Grey Code "phase" and "phase to phase" output patterns were
identical to 1/2 step sequences for both types of stepper motors.
I tested this idea with a small bipolar stepper motor of the type used for
head posistioning in a 3.5 inch FD. In order to use Nv Core circuits to
drive steppers, you must use output buffering for feedback isolation because
the Nervous neuron is sensitive to motor transients which in 
large quantlties could cause process modulation, instability and saturation
if motor windings were connected directly to a Nv Core.

However the Nu offers exquisite noise imunity and NuRING outputs can be
directly connected to stepper motors since any motor transients are
integrated at the bias point.

In fact, I have designed this elegant 4NuRING reversing stepper circuit (I
believe it's unique!) using a single 74AC86 as shown below:


       +V               + V    R = 510K     bipolar stepper motor =
        |                |     C = 0.01     Sony LA20-2003A 5V / 90 Ohm
       [R]              [R]    U1 = 74AC86
/REV ___|       /FWD ____|__________________________________
        |   _            |   _            |   _             |   _
        +-))86\_         +-))86\_         +-))86\_          +-))86\__
+-[R]-+---))_ / |--[R]-+---))_ / |--[R]--+--))_ / |--[R]--+---))_ /  |
|     |         |      |         |       |        |       |          |
|    ===        |     === C      |      === C     |      === C       |
|     |         |      |         |       |        |       |          |
|    0V         |     0V     blk_|_     0V        |      0V          |
|               |______________/STP\______________|                  |
|                          yel \_M_/ or                              |
|                                |brn                                |
|________________________________|___________________________________|

      Fig 1.  NuRING CONTINUOUS STEPPER CIRCUIT WITH REVERSE

When either REV or FWD is low the stepper rotates in that direction. With
the component R=510K and C=0.01 the speed is 4 revolutions per second and
power consumption 40 mA. When both inputs are high or low the stepper is
stopped and the current is zero. While torque is quite low it's useful for
the lead screw application of the FD stepper motor.

I hope you will agree that this NuSTEPPER design is surprisingly simple with
very high functionality in the best BEAM tradition.  

I will soon have my "first" web site and will post these articles together
with cad drawings and "live" waveforms.

enjoy

                Wilf Rigter     mailto:wilf.rigter@powertech.bc.ca


[BACK]


Subject:RE: a question and a comment
Date:Sat, 30 Jan 1999 15:47:18 -0800
From:Wilf Rigter 
To:beam@corp.sgi.com


This is an example of how easy it is to set up a high pass/variable
threshold detector using a spare HC04 (or HC240) gate:


                      _______________ 
                     |               |
                   [10M]      ___    |
                  C  |    ___|04  \__|_____ output signal
input signal ----||--+---'   |___ /   
                     |              
                    [1M]  
                     |
                     V 
             0V----[10K]-----Vcc        

A HC04 gives the equivalent of an inverting AC coupled comparator/amplifier
with the 10K pot adjusting the threshold. The output can be biased normally
high or low and if adjusted near the center will turn the HC04 into a linear
amplifier. The capacitor C determines the cutoff frequency, with practical
values of 100pf to 0.1uf. When used as a comparator, the threshold is
sensitive to both frequency and amplitude. When used as a linear amp it can
provide one or more stages of gain for a microphone or other low output
transducer. 

If you use a HC245 or other noninverting gate (or two HC04 inverters in
series) you get hysteresis and/or memory of the direction of the last fast
transition depending on the setting of the pot.

An HC14 probably won't work very well unless you remove the 10M resistor
(oscillates!) and then provides typically about 30% hysteresis.  

If you want to stretch the output signal (pulses) from the above circuit
just use a series diode and capacitor with another gate (ie HC14) to drive a
LED or other load like so:                     

                                  Vcc
                                   | 
                                  _V_ LED 
                                   |
                          __      [1K]
    diode            ____|14 \_____|_____ output pulse 
  --->|--+-[10K]----+    |__ /             >1sec
         |          |
       [10M]       === 0.1uf 
         |          |
        GND        GND

The 10K resistor can be used (and changed) to delay the output so that only
a burst of pulses will trigger the output and the 10M resistor sets the
output pulse width.

These circuits tie in nicely with the other BEAM components and the
discussion on signal conditioning so I thought you might be interested.


                                         |    
                Wilf Rigter     mailto:wilf.rigter@powertech.bc.ca
                                        tel:    (604)590-7493 
                                        fax:    (604)590-3411

> -----Original Message-----
> From: RoboDR@aol.com [SMTP:RoboDR@aol.com]
> Sent: Saturday, January 30, 1999 1:34 PM
> To:   beam@corp.sgi.com
> Subject:      Re: a question and a comment
> 
> << Yep!  Remember, though, that this circuit will only work if the signal
> swing
>  is larger than half of the supply voltage for a chip.  ie for a 5 volt
> chip,
>  a swing of 2 volts won't trigger it, but a swing of 4 volts will. >>
> 
> So if you used a 5V chip, it would ignor a quick change from 4V to 6V, but
> it
> would triger at  a cuick change from 2V to 5V? And it would ignor all
> changes
> that take several seconds?


[BACK]


Subject:RE: a question and a comment
Date:Sun, 31 Jan 1999 09:52:37 -0800
From:Wilf Rigter 
To:"'beam@corp.sgi.com'" 


I tried my own suggestion and found the circuit below works very well.
It is much more sensitive than a single Nv and provides a minimum 0.5 sec
output
pulse which can be used to modify other processes. Forget about a single
inverter Nv with negative feedback as I suggested in my earlier post, it
oscillates too much during transistions.
                              ______________________ 
                             |                      |
                           [10M]      ___     ___   |
              input     0.1  |    ___|04  \__|04  \_|  
              signal ----||--+---'   |___ /  |___ / |    
                             |                      |   
                            [1M]                    |  
                             |                      | 
                             V                      | 
                0V----[10K]-----Vcc            |
                                               |
              Adjustable sensitivity Nv        |  
      _________________________________________|
     |
          |                               Vcc
          |                                | 
          |                               _V_ LED 
          |                                |
          |                       __      [1K]
          | diode            ____|04 \_____|_____ output pulse 
          +-->|--+----------+    |__ /             >1sec
                 |          |
               [10M]       === 0.1uf 
                 |          |
                GND        GND

                    Pulse stretching Nu

              
                         Fig 1 - A high pass/variable threshold detector 

        This is a variation on the Nv using two HC04 inverters in series to
give hysteresis and memory of the direction of the last fast transition
depending on the setting of the pot. To stretch the output signal (pulses) a
Nu is uses with a series diode and a parallel capacitor/resistor followed by
another HC04 gate to drive a LED or other load                      

        These circuits are niffty little variations of the other basic BEAM
designs.


                Wilf Rigter     mailto:wilf.rigter@powertech.bc.ca
                                        tel:    (604)590-7493 
                                        fax:    (604)590-3411

> -----Original Message-----
> From: Wilf Rigter [SMTP:Wilf.Rigter@powertech.bc.ca]
> Sent: Saturday, January 30, 1999 3:47 PM
> To:   beam@corp.sgi.com
> Subject:      RE: a question and a comment
> 
> This is an example of how easy it is (or HC240) gate  :  [Wilf Rigter]
> Snip  
> 


[BACK]


Subject:BiCores (suspended, isolated, Schmitt)
Date:Sun, 31 Jan 1999 12:54:08 -0800
From:Wilf Rigter 
To:beam@corp.sgi.com


Hello everyone,

Well, I was a tad confused in my earlier post but without that I wouldn't
have had as much fun discovering just what goes on under the hood of  Beam
Core Circuits! 

The "pretty amazing, right?" bit, in my previous post should have alerted
you that there is more between Vcc and Ground than meets the eye!

However it make little sense to suggest a formula to calculate the time
constant of NvCore and "suspended" BiCores : it must be done by experiment
(like my first experience in electronics: probing the Galena cube in my
crystal set with a "cat's wisker"- God, I must be old!)

Perhaps a  guide line for calculating the time constant of a NvCore is
useful:

The nominal lower threshold of a National and Philips 74HC14 Schmitt trigger
is about 1.8V which makes the time constant of a NvCore stage T=R*C .
(Rather easy to calculate)  Because the voltage across the capacitor is
referenced to V (via the output of the previous Nv), the cap charges
exponentially through R towards 0V. At 63% of the applied voltage across the
cap, it crosses the lower threshold (Vt-=1.8V @ Vcc=5V) at which point the
output of the Schmitt trigger goes high. I checked this with several 74HC14s
and it is correct to within 5%!  In short, the process duration for these
makes of 74HC14 NvCore is R*C seconds. ie 1M and 0.1ufd = 100ms pulse
duration. I understand that TI parts have different Vt- threshold and will
have a longer timeconstant for the same R/C component values as a result.
Similarly the 74HCT14 would have a lower Vt- threshold and therefore a
longer time constant. I will repeat the experiment when I get some samples
and post some more guide lines. Also see
http://www.serve.com/heretics/discus/messages/223/45.html?FridayJanuary29199

The "suspended" BICORE however is a different engine: 

The "suspended" BiCore is a remarkable circuit that at first glance cannot
possibly work. It has 2 processes which are active at the same time with the
shorter process always in control. The "suspended" BiCore circuit operation
bears little or no resemblance to the operation of a 74xx14 BiCore despite
claims to the contrary!  Since we use digital devices as linear amplifiers
without a well defined voltage gain and since the trigger thresholds are
dependent on the voltage gain, the pulse duration of a bicore is notoriously
difficult to predict and ranges from 0.2RC for a 74HC00 to 5RC for a 74HC04
depending very much on gain, the level of supply ripple and spurious
oscillations. Even differences in manufacturers and families (I have tested
this with 74HC04, HCT04 and AC04 devices) can result in a 4 to 1 variation
in time constants.

In digital electronics, we think of of an inverter as a device operating
with input and output voltages at discrete logic levels, usually 0V and Vcc.
In analog electronics, we think of an inverter as a linear amplifier with
the ratio of input to output voltage directly proportional to the gain of
the circuit and the linear input range = Vcc/gain.  When we think
"suspended" BiCore, we enter the world of mixed analog and digital
electronics.

In the "suspended" BiCore Oscillator circuit both upper and lower threshold
voltages are used and for a "standard" HC inverter input these are  the
points at which the inverter output voltage starts to change (the linear
region). The switching thresholds therefore are the upper and lower edges of
the linear input region which depend on the gain of the linear inverter. For
the high gain 74HC04 or 74HC240,  it is a narrow region of ~100mV close to
the center of Vcc.  In the case of the low voltage gain 74HC00, the linear
region is about 1V giving upper and lower thresholds of 3V and 2V compared
to the 2.65V and 2.45V of the 74HC04.  I won't give the whole description of
operation of a BiCore (the suspended kind of course, more on this later) but
suffice it to say that the timing network consists of 2 (nominally equal)
capacitors in series with a series resistor and that the initial charge
across both capacitors is (nominally) 0V and that the charge across both
capacitors rises exponentially towards Vcc, while the voltage across the
resistor decays exponentially towards 0V. In the case of the high gain
inverters (74HC04) the linear region is near the center of Vcc, so the
voltage across the resistor must be close to 0V, ergo the charge across the
capacitors must be nearly Vcc. The important difference between the Schmitt
NvCore and the "suspended" BiCore is the fact that NvCore processes are
independed sequential edge trigger time constants while in the "suspended"
BiCore both proceses are triggered simultaneously and only the shorter of
the two time constants determines the combined "BiCore process"
timeconstant. 

I think using the term BiCore for both circuits is a tad of a misnomer.

Here is some good news! A 74HC14 BiCore is indeed possible! (Forget about
"crosstalk" 8^) Just use two capacitors with a ratio of values greater than
1/2  for Schmitt triggers that have thresholds at 33% and 66% ie National
74HC14 . Since the smaller capacitor (the shorter process) sets the time
constant of the BiCore you can make the ratio arbitralily large (make it 1
to 4 to be on the safe side given the variety of thresholds out there) The
larger cap has no effect on timing other that to provide positive  feedback
during switching. Interestingly enough the larger cap transfers a larger
charge and this can be used in the next circuit to provide +/- 5V
powersupply.  Amazing what you can do with the BiCore or maybe this should
be called the SCore!
 
I tested an "isolated/suspended" BiCore which uses large resistors in series
with the inverter inputs to avoid "diode clamping" of the input waveforms.
As a result, the time constant is roughly doubled and some interesting
characteristics were observed. The voltage across the resistor is now
initially 10V for a Vcc of 5V and the optional addition of some diodes and
capacitors turn the bicore into a symmetric voltage doubler circuit.
Moreover the + and - timeconstants are dependent on the  loading of these
+7.5V and -2.5V supplies. This opens up a whole new way to provide feedback
for an "isolated " BiCore circuit or maybe this should be called the ICore!

The description of operation of the "suspended" and the "isolated" BiCore is
shown below:    

The 74HC14 "suspended" BiCore waveforms are a little bit complicated and not
easy to do in ASCII so you will have to wait a bit for those details.
However, I will have the detailed description of operation of all these
circuits and GIFs up later today or tomorrow at my new website which I will
open up despite the fact that it is just bare bones right now.

In the mean time: 

enjoy

wilf

                                   The "belt and suspenders" BiCore Circuits
                                               by wilf rigter (c)  Jan 1999
 
The suspended BiCore circuit consists of 2 inverters, typically from a HC240
(or HC14 Schmitt triggers), 2 capacitors, and a resistor. In addition, there
are 2 reverse biased input protection diodes between each inverter input and
the chip supply pins. These diodes are not normally shown but they play a
role in the operation of the circuit.

Here is a brief description of a suspended BiCore oscillator operation:

Given a +5V supply , a 74HC240 and equal capacitors C1 and C2, assume that
the BiCore is oscillating with the input of A1 at +5V and the input of A2 at
0V. Each inverter amplifies and inverts the input and therefore the output
of A1 is 0V and the output of A2 is +5V.

Since each capacitor is connected between the output of one and the input of
the other inverter and since these are at the same potential, the voltage
across each cap is 0V. However the 2 caps are also connected in series with
the resistor across 0V and +5V (the two opposite outputs).

This initial +5V across the resistor causes an exponentially decaying
current which charges the caps so that the voltage approaches 0V across the
resistor and 2.5V across each cap (and at each inverter input) As the A1
input approaches 2.5V, the A1 output starts to switch state from 0V to 5V.
This A1 output signal is coupled via C1 to the input of A2 which, already at
2.5V, causes A2 output to switch rapidly from +5V to 0V. In turn, the A2
output coupled via C2, now drives the input of A1 from 2.5V to 0V. The high
gain of the two inverters and the positive feedback cause both outputs to
flip to the opposite digital states.

Theoretically , the voltage at each input should swing between 7.5V and
-2.5V, the sum of the input voltage (2.5V) and the coupled output signal
(+/-5V) at the moment of switching and this is the case in the "isolated"
BiCore. However in the "suspended" BiCore each input is protected internally
by the equivalent of 2 diodes connected in reverse bias from the input to
each supply, so that the voltage at each input is clamped and swings between
+5.6V and -0.6V respectively as shown below. The real waveform has
exponential slopes approximated here with diagonal lines. The A2 waveforms
A2 are identical but phase reversed (upside / down). The third waveform
shows sum of the 2 input voltage waveforms across the resistor which is also
proportional to the capacitor charging currents.

Note that in the case of the isolated BiCore, the over and under voltage
generated by the capacitor charge pump can be put to good use: for example
for a source side driver for MOSFETs or to overdrive the inputs of a
saturated Emitter Follower bridge or as an +/- Opamp/Comparator powersupply,
greatly easing the problem of sensing signals near ground and Vcc. 

       5.6V _                         _
 A1         _   |\    |\    |\    |   _
input  2.5V _   | \   | \   | \   |   _                 __
            _  /   | /   | /   | /    _              __|A1 \___
       -.6V _      |/    |/    |/     _             |  |__ /   |
                                                    |          |
        5.0V_  _    __    __    __    _             |         ===
  A1        _   |  |  |  |  |  |  |   _             |          | 0.1
 output     _   |  |  |  |  |  |  |   _             |---[1M]---|
            _   |  |  |  |  |  |  |   _          0.1|          |
          0V_   |__|  |__|  |__|  |   _            ===         |
                                                    |     __   |
       6.2V _                         _             |___/ A2|__|
voltage     _   |\ |\ |\ |\ |\ |\ |   _                 \ __|
across R    _   | \| \| \| \| \| \|   _
            _   | /| /| /| /| /| /|   _          
        0V  _   |/ |/ |/ |/ |/ |/ |   _

             |  |  |  |  |  |  |  |  |  

        Suspended BiCore switching waveforms     Supended BiCore Circuit

 

        7.5V_                          _
            _   |\      |\      |\     _                 __
            _   | \     | \     | \    _              __|A1 \___
TP(A1)  2.5V_   |  \    |  \    |  \   _             |  |__ /   |
            _  /    |  /    |  /   |   _             |          |
            _       | /     | /    |   _           [10M]        |0.1
       -2.5V_       |/      |/     |/  _             |         ===
                                             TP(A1)--|---[1M]---|--TP(A2)
                |   |   |   |   |   |               ===         |
        5.0V_  _     ___     ___     _ _          0.1|        [10M]
  A1        _   |   |   |   |   |   |  _             |     __   |
 output     _   |   |   |   |   |   |  _             |___/ A2|__|
            _   |   |   |   |   |   |  _                 \ __|
          0V_   |___|   |___|   |___|  _

             Isolated BiCore waveforms              Isolated BiCore



     +7.5V                                      +7.5V
      |                                           |
      |----|<-----+                    +----->|---+----|<-----+
      |+          |                    |          |+          |
     === 10uF     |                    |         === 10uF     |
      |           |                    |          |           |
     Vcc          |                    |         Vcc          |  
                  |---TP(A2)   TP(A1)--|                      |--TP(A2) 
     0V           |                    |          0V          |
      |+          |                    |          |+          |
     === 10uF     |                    |         === 10uF     |
      |           |                    |          |           |
      |---->|-----+                    +-----|<---+---->|-----+
      |                                           |
     -2.5V                                      -2.5V

Isolated Bicore Doubler             Isolated BiCore Bridge Doubler



                Wilf Rigter     mailto:wilf.rigter@powertech.bc.ca


[BACK]


Rigter's NuPages Index
Chiu-Yuan's Beam Table of Contents