The NCL Difference

How NCL is different
NCL is a coherent and sufficient logic that engenders a new model of logically determined computation. It is coherent in that it consists entirely of functions with a common behavior mode: threshold functions with hysteresis behavior. It is sufficient in that it can realize a computation solely in terms of logical function relationships. Being fully logically determined, it happens not to need a time referent.
Boolean Logic
Boolean logic is coherent as far as it goes but it is not sufficient in that it cannot realize a computation solely in terms of Boolean logic but requires another form of expression, a time referent. Coordinating instantiated logic with the time referent is a complexity beyond the logic itself.
Asynchronous methodologies
Asynchronous design methodologies attempt to make the time referent very local (matched delay) or generate a local completeness relation in terms of logical relations (dual-rail) while retaining the basic computation model that inherently assumes a clock. NCL is not a method of replacing the clock or getting rid of the clock it is a model of computation that does not need a clock to begin with.

Two  synthesis flows illustrate why asynchronous design has earned a reputation for costly complexity and why the reputation does not apply to NCL.

Meng flow

Tangram

NCL buf2

 

NCL is not a method of asynchronous design It is a model of logically determined computation which happens to behave so called asynchronously so we compare it to  asynchronous design.

micropipe

 

QDI

 

NCL

NCL is sufficient in itself to express all functional behaviors of a computing system.