written 6.1 years ago by |
The basic building block of NORA logic is the ϕ−section logic network illustrated in Figure. This consists of a dynamic nMOS logic state that is cascaded into a dynamic pMOS logic gate; a C2MOS inverter is used as an output latch. Note that optional inverters are provided at the outputs of both logic gates if, for example, one wishes to use a glitch-free domino nMOS-nMOS cascade. Moreover, the ordering of the logic gates may be reversed (i.e., pMOS to nMOS) without loss of generality.
The main features of NORA logic arise from the manner in which the clocks are applied to the logic gates and the C2MOS latch. A clock value of ϕ=0 defines the precharge interval for the ϕ−section the main features are shown in Figure (a). The output capacitors of the logic stages are precharged to values of
C1:V1→VDD
C2:V2→0V
for the nMOS and pMOS gates, respectively. The most important aspect of the precharge is noting that the output of the C2MOS latch is in the Hi-Z state at this time. This means that the voltage Vout on Cout is not affected by the precharge states. The actual value of Vout is due to charge held on the capacitor. When the clock makes a transition to ϕ=1 the entire section goes into evaluation as illustrated in Figure (b). During this time, the inputs are valid and the output result from the logic chain is given by the voltage Vout on the output capacitor Cout.This is held when the clock changes back to ϕ=0 for the next precharge event. The operation of the ϕ−section is summarized by the simplified block diagrams in Figure
Next, we construct a NORA ϕ−section that has the general features shown in Figure. We again use a cascade of dynamic logic gates with alternating polarities (nMOS to pMOS, etc.), and provide a C2MOS tri-state latch at the output. The only difference is that the clock phases ϕ and ˉϕ have been reversed everywhere throughout the circuit. This means that a ˉϕ−section precharges when ϕ=1 and undergoes evaluations when ϕ=0,exactly opposite to the behavior of a ϕ−section.
The no race characteristic of the design style is obtained by creating an alternating cascade of ϕandˉϕ−sections as in Figure.
The timing of the two section types automatically ensures that signal races cannot occur through either section. To understand this comment, consider the operational drawings in Figure. When the clock is at a value ϕ=1 the ϕ−section are in evaluation and the ˉϕ−section are undergoing precharge. This is shown in Figure (a). Consider the first logic section in the chain. During this time, the inputs are valid and yield results at the output. However, since the next logic group is a ϕ−section, it is in precharge with ϕ=1 and does not accept input data values. This eliminates race problems through the ˉϕ−section.
Similarly, when the clock changes to ϕ=0 as in Figure (b), the ϕ−section are in precharge and block data transmission while the ˉϕ−section undergo evaluation. As the clock oscillates, the sections take turns evaluating the inputs and blocking data transmission. The race-free characteristics remain even in the presence of clock skew, and the structuring of the logic into separate ϕ and ϕ−section is convenient for designing pipelined systems.