Negative Transform


This part reads pi and outputs its negation on po. It outputs logic levels (true and complement) for pi greater than 1/2.

The part is from an older Tiny12 collection that has not yet been converted to Tiny45.

            ATtiny12
              --v--
    rst pb5 -|     |- vcc
     pi pb3 -|     |- pb2 sck  pige
     po pb4 -|     |- pb1 miso pilt
        gnd -|     |- pb0 mosi scope
              -----       

pige hi if pi >= .5 pilt hi if pi < .5 po = -pi

http:files/DownloadParts/inv.asm

This is probably the simplest cybord with interesting characteristics. The heart of the program is these two instructions:

        mov byout,byin
        com byout

This moves the Bynase input to output, and then complements it before it is transmitted by the Bynase library.

This part is handy should you want a RampPulseGenerator that beats the opposite direction.

    Ramp --> Negative

It is interesting to cross-couple Negatives in the same configuration one cross-couples inverters to make a flip-flop.

 ;    --+-----> Negative ---+-->
 ;      |                   |
 ;      |  +----------------+
 ;      |  |
 ;      +--|----------------+
 ;         |                |
 ;    -----+--> Negative ---+-->

This circuit can be pulled hi or lo by briefly connecting an input to vcc or gnd. It will sustain outputs of probablility 0% or 100% indefinitely as these values can be read and integrated reliably.

The circuit is also pretty good at sustaining intermediate values, which is not true of cross-coupled inverters. This happens because the unit gain of the active elements, the Negatives, unlike the high gain of digital inverters.

Cross-coupled inverters can wallow at intermediate values for surprising lengths of time, a condition called metastability. However, the above circuit is nearly ideally metastable, in that it will often take minutes to finally drift to one "rail" or the other.

 

Last edited March 8, 2008
Return to WelcomeVisitors