ch03.a.htm

来自「介绍asci设计的一本书」· HTM 代码 · 共 2,595 行 · 第 1/5 页

HTM
2,595
字号
3.18&nbsp;(Set and reset, 10 min.) Show how to add a <SPAN CLASS="Definition">

synchronous set</SPAN>

<A NAME="marker=106063">

 </A>

 or a <SPAN CLASS="Definition">

synchronous reset</SPAN>

<A NAME="marker=106064">

 </A>

 to the flip-flop of Figure&nbsp;2.18(a) using a two-input MUX.</P>

<P CLASS="ExerciseHead">

<A NAME="pgfId=123413">

 </A>

3.19&nbsp;(Clocked inverters, 45 min.) Using PSpice compare the delay of an inverter with transmission gate with that of a clocked inverter using the G5 process SPICE parameters from Table&nbsp;2.1.</P>

<P CLASS="ExerciseHead">

<A NAME="pgfId=185168">

 </A>

3.20&nbsp;(S-R, T, J-K flip-flops, 30 min.)&nbsp;The <SPAN CLASS="Definition">

characteristic equation</SPAN>

<A NAME="marker=105911">

 </A>

 for a D flip-flop is Q<SUB CLASS="Subscript">

t+1</SUB>

<SPAN CLASS="Symbol">

 </SPAN>

=<SPAN CLASS="Symbol">

 </SPAN>

D. The characteristic equation for a J-K flip-flop is Q<SUB CLASS="Subscript">

t+1</SUB>

<SPAN CLASS="Symbol">

 </SPAN>

=<SPAN CLASS="Symbol">

 </SPAN>

J(Q<SUB CLASS="Subscript">

t</SUB>

)'<SPAN CLASS="Symbol">

 </SPAN>

+<SPAN CLASS="Symbol">

 </SPAN>

K'Q<SUB CLASS="Subscript">

t</SUB>

. </P>

<UL>

<LI CLASS="ExercisePartFirst">

<A NAME="pgfId=123726">

 </A>

a.&nbsp;Show how you can build a J-K flip-flop using a D flip-flop. </LI>

<LI CLASS="ExercisePart">

<A NAME="pgfId=123730">

 </A>

b.&nbsp;The characteristic equation for a T flip-flop (toggle flip-flop) is Q<SUB CLASS="Subscript">

t+1</SUB>

<SPAN CLASS="Symbol">

 </SPAN>

=<SPAN CLASS="Symbol">

 </SPAN>

(Q<SUB CLASS="Subscript">

t</SUB>

)'<SPAN CLASS="Symbol">

 </SPAN>

. Show how to build a T flip-flop using a D flip-flop. </LI>

<LI CLASS="ExercisePart">

<A NAME="pgfId=123731">

 </A>

c.&nbsp;The characteristic equation does not show the timing behavior of a sequential element&#8212;the characteristic equation for a D latch is the same as that for a D flip-flop. The characteristic equation for an S-R latch and an S-R flip-flop is Q<SUB CLASS="Subscript">

t+1</SUB>

<SPAN CLASS="Symbol">

 </SPAN>

=<SPAN CLASS="Symbol">

 </SPAN>

S<SPAN CLASS="Symbol">

 </SPAN>

+<SPAN CLASS="Symbol">

 </SPAN>

R'Q<SUB CLASS="Subscript">

t</SUB>

. An S-R flip-flop is sometimes called a pulse-triggered flip-flop. Find out the behavior of an S-R latch and an S-R flip-flop and describe the differences between these elements and a D latch and a D flip-flop. </LI>

<LI CLASS="ExercisePart">

<A NAME="pgfId=123732">

 </A>

d.&nbsp;Explain why it is probably not a good idea to use an S-R flip-flop in an ASIC design.</LI>

</UL>

<P CLASS="ExerciseHead">

<A NAME="pgfId=58665">

 </A>

3.21&nbsp;(**Optimum logic, 60 min.) Suppose we have a fixed logic path of length <SPAN CLASS="EquationVariables">

n</SPAN>

<SUB CLASS="Subscript">

1</SUB>

. We want to know how many (if any) buffer stages we should add at the output of this path to optimize the total path delay given the output load capacitance. </P>

<UL>

<LI CLASS="ExercisePartFirst">

<A NAME="pgfId=123733">

 </A>

a.&nbsp;If the total number of stages is <SPAN CLASS="EquationVariables">

N </SPAN>

(logic path of length <SPAN CLASS="EquationVariables">

n</SPAN>

<SUB CLASS="Subscript">

1</SUB>

 plus <SPAN CLASS="EquationVariables">

N</SPAN>

<SPAN CLASS="Symbol">

 </SPAN>

&#8211;<SPAN CLASS="Symbol">

 </SPAN>

<SPAN CLASS="EquationVariables">

n</SPAN>

<SUB CLASS="Subscript">

1</SUB>

 inverters), show that the total path delay is  </LI>

<TABLE>

<TR>

<TD ROWSPAN="1" COLSPAN="1">

<P CLASS="TableEqn">

<A NAME="pgfId=328620">

 </A>

&nbsp;</P>

</TD>

<TD ROWSPAN="1" COLSPAN="1">

<P CLASS="TableEqnCenter">

<A NAME="pgfId=328622">

 </A>

&nbsp;</P>

</TD>

<TD ROWSPAN="1" COLSPAN="1">

<P CLASS="TableEqnLeft">

<A NAME="pgfId=328624">

 </A>

&nbsp;</P>

</TD>

<TD ROWSPAN="1" COLSPAN="1">

<P CLASS="TableEqnCenter">

<A NAME="pgfId=328626">

 </A>

&nbsp;</P>

</TD>

<TD ROWSPAN="1" COLSPAN="1">

<P CLASS="TableEqnCenter">

<A NAME="pgfId=328628">

 </A>

<SPAN CLASS="EquationVariables">

n</SPAN>

<SUB CLASS="Subscript">

1</SUB>

</P>

</TD>

<TD ROWSPAN="1" COLSPAN="1">

<P CLASS="TableEqnCenter">

<A NAME="pgfId=328630">

 </A>

&nbsp;</P>

</TD>

<TD ROWSPAN="1" COLSPAN="1">

<P CLASS="TableEqn">

<A NAME="pgfId=328632">

 </A>

&nbsp;</P>

</TD>

</TR>

<TR>

<TD ROWSPAN="1" COLSPAN="1">

<P CLASS="TableEqn">

<A NAME="pgfId=328634">

 </A>

<SPAN CLASS="EquationVariables">

D^</SPAN>

</P>

</TD>

<TD ROWSPAN="1" COLSPAN="1">

<P CLASS="TableEqnCenter">

<A NAME="pgfId=328636">

 </A>

=</P>

</TD>

<TD ROWSPAN="1" COLSPAN="1">

<P CLASS="TableEqnLeft">

<A NAME="pgfId=328638">

 </A>

<SPAN CLASS="EquationVariables">

NF</SPAN>

<SUP CLASS="Superscript">

1/</SUP>

<SUP CLASS="SuperscriptVariable">

N</SUP>

</P>

</TD>

<TD ROWSPAN="1" COLSPAN="1">

<P CLASS="TableEqnCenter">

<A NAME="pgfId=328640">

 </A>

+</P>

</TD>

<TD ROWSPAN="1" COLSPAN="1">

<P CLASS="TableEqnCenter">

<A NAME="pgfId=328642">

 </A>

<SPAN CLASS="BigMath">

&#8721;</SPAN>

</P>

</TD>

<TD ROWSPAN="1" COLSPAN="1">

<P CLASS="TableEqnLeft">

<A NAME="pgfId=328644">

 </A>

(<SPAN CLASS="EquationVariables">

p</SPAN>

<SUB CLASS="SubscriptVariable">

i</SUB>

 + <SPAN CLASS="EquationVariables">

q</SPAN>

<SUB CLASS="SubscriptVariable">

i</SUB>

) + (<SPAN CLASS="EquationVariables">

N</SPAN>

 &#8211; <SPAN CLASS="EquationVariables">

n</SPAN>

<SUB CLASS="Subscript">

1</SUB>

)(<SPAN CLASS="EquationVariables">

p</SPAN>

<SUB CLASS="SubscriptVariable">

inv</SUB>

 + <SPAN CLASS="EquationVariables">

q</SPAN>

<SUB CLASS="SubscriptVariable">

inv</SUB>

) .</P>

</TD>

<TD ROWSPAN="1" COLSPAN="1">

<P CLASS="TableEqnNumber">

<A NAME="pgfId=328646">

 </A>

(3.51)</P>

</TD>

</TR>

<TR>

<TD ROWSPAN="1" COLSPAN="1">

<P CLASS="TableEqn">

<A NAME="pgfId=328648">

 </A>

&nbsp;</P>

</TD>

<TD ROWSPAN="1" COLSPAN="1">

<P CLASS="TableEqnCenter">

<A NAME="pgfId=328650">

 </A>

&nbsp;</P>

</TD>

<TD ROWSPAN="1" COLSPAN="1">

<P CLASS="TableEqnLeft">

<A NAME="pgfId=328652">

 </A>

&nbsp;</P>

</TD>

<TD ROWSPAN="1" COLSPAN="1">

<P CLASS="TableEqnCenter">

<A NAME="pgfId=328654">

 </A>

&nbsp;</P>

</TD>

<TD ROWSPAN="1" COLSPAN="1">

<P CLASS="TableEqnCenter">

<A NAME="pgfId=328656">

 </A>

<SPAN CLASS="EquationVariables">

i </SPAN>

<SPAN CLASS="Symbol">

= 1</SPAN>

</P>

</TD>

<TD ROWSPAN="1" COLSPAN="1">

<P CLASS="TableEqnCenter">

<A NAME="pgfId=328658">

 </A>

&nbsp;</P>

</TD>

<TD ROWSPAN="1" COLSPAN="1">

<P CLASS="TableEqn">

<A NAME="pgfId=328660">

 </A>

&nbsp;</P>

</TD>

</TR>

</TABLE>

</UL>

<P CLASS="Exercise">

<A NAME="pgfId=58673">

 </A>

The optimum number of stages is given by the solution to the following equation:  </P>

<TABLE>

<TR>

<TD ROWSPAN="1" COLSPAN="1">

<P CLASS="TableEqn">

<A NAME="pgfId=328903">

 </A>

<SPAN CLASS="EquationVariables">

</SPAN>

&nbsp;</P>

</TD>

<TD ROWSPAN="1" COLSPAN="1">

<P CLASS="TableEqnCenter">

<A NAME="pgfId=328905">

 </A>

&nbsp;</P>

</TD>

<TD ROWSPAN="1" COLSPAN="1">

<P CLASS="TableEqnLeft">

<A NAME="pgfId=328907">

 </A>

&nbsp;</P>

</TD>

<TD ROWSPAN="1" COLSPAN="1">

<P CLASS="TableEqnCenter">

<A NAME="pgfId=328909">

 </A>

&nbsp;</P>

</TD>

<TD ROWSPAN="1" COLSPAN="1">

<P CLASS="TableEqnLeft">

<A NAME="pgfId=328911">

 </A>

&nbsp;</P>

</TD>

<TD ROWSPAN="1" COLSPAN="1">

<P CLASS="TableEqn">

<A NAME="pgfId=328913">

 </A>

&nbsp;</P>

</TD>

</TR>

<TR>

<TD ROWSPAN="1" COLSPAN="1">

<P CLASS="TableEqnRight">

<A NAME="pgfId=328915">

 </A>

<SPAN CLASS="Symbol">

&#8706;</SPAN>

<SPAN CLASS="EquationVariables">

D^/&#8706;N</SPAN>

 </P>

</TD>

<TD ROWSPAN="1" COLSPAN="1">

<P CLASS="TableEqnCenter">

<A NAME="pgfId=328917">

 </A>

=</P>

</TD>

<TD ROWSPAN="1" COLSPAN="1">

<P CLASS="TableEqnLeft">

<A NAME="pgfId=328919">

 </A>

<SPAN CLASS="Symbol">

&#8706;</SPAN>

<SPAN CLASS="EquationVariables">

/&#8706;N</SPAN>

 (<SPAN CLASS="EquationVariables">

 NF</SPAN>

<SUP CLASS="Superscript">

1/</SUP>

<SUP CLASS="SuperscriptVariable">

N</SUP>

 + (<SPAN CLASS="EquationVariables">

N</SPAN>

 &#8211; <SPAN CLASS="EquationVariables">

n</SPAN>

<SUB CLASS="Subscript">

1</SUB>

)(<SPAN CLASS="EquationVariables">

p</SPAN>

<SUB CLASS="SubscriptVariable">

inv</SUB>

 + <SPAN CLASS="EquationVariables">

q</SPAN>

<SUB CLASS="SubscriptVariable">

inv</SUB>

 ) )</P>

</TD>

<TD ROWSPAN="1" COLSPAN="1">

<P CLASS="TableEqnCenter">

<A NAME="pgfId=328921">

 </A>

=</P>

</TD>

<TD ROWSPAN="1" COLSPAN="1">

<P CLASS="TableEqnLeft">

<A NAME="pgfId=328923">

 </A>

0 .</P>

</TD>

<TD ROWSPAN="1" COLSPAN="1">

<P CLASS="TableEqnNumber">

<A NAME="pgfId=328925">

 </A>

(3.52)</P>

</TD>

</TR>

<TR>

<TD ROWSPAN="1" COLSPAN="1">

<P CLASS="TableEqn">

<A NAME="pgfId=328927">

 </A>

&nbsp;</P>

</TD>

<TD ROWSPAN="1" COLSPAN="1">

<P CLASS="TableEqnCenter">

<A NAME="pgfId=328929">

 </A>

&nbsp;</P>

</TD>

<TD ROWSPAN="1" COLSPAN="1">

<P CLASS="TableEqnLeft">

<A NAME="pgfId=328931">

 </A>

&nbsp;</P>

</TD>

<TD ROWSPAN="1" COLSPAN="1">

<P CLASS="TableEqnCenter">

<A NAME="pgfId=328933">

 </A>

&nbsp;</P>

</TD>

<TD ROWSPAN="1" COLSPAN="1">

<P CLASS="TableEqnLeft">

<A NAME="pgfId=328935">

 </A>

&nbsp;</P>

</TD>

<TD ROWSPAN="1" COLSPAN="1">

<P CLASS="TableEqn">

<A NAME="pgfId=328937">

 </A>

&nbsp;</P>

</TD>

</TR>

</TABLE>

<UL>

<LI CLASS="ExercisePart">

<A NAME="pgfId=123734">

 </A>

b.&nbsp;Show that the solutions to this equation can be written in terms of <SPAN CLASS="EquationVariables">

F</SPAN>

<SUP CLASS="Superscript">

1/</SUP>

<SUP CLASS="SuperscriptVariable">

N^</SUP>

 (the optimum stage effort) where <SPAN CLASS="EquationVariables">

N^</SPAN>

 is the optimum number of stages:  </LI>

<TABLE>

<TR>

<TD ROWSPAN="1" COLSPAN="1">

<P CLASS="TableEqn">

<A NAME="pgfId=223046">

 </A>

<SPAN CLASS="EquationVariables">

F</SPAN>

<SUP CLASS="Superscript">

1/</SUP>

<SUP CLASS="SuperscriptVariable">

N^</SUP>

(1 &#8211; ln <SPAN CLASS="EquationVariables">

F</SPAN>

<SUP CLASS="Superscript">

1/</SUP>

<SUP CLASS="SuperscriptVariable">

N^</SUP>

 ) + (<SPAN CLASS="EquationVariables">

p</SPAN>

<SUB CLASS="SubscriptVariable">

inv</SUB>

 + <SPAN CLASS="EquationVariables">

q</SPAN>

<SUB CLASS="SubscriptVariable">

inv</SUB>

 ) = 0 .</P>

</TD>

<TD ROWSPAN="1" COLSPAN="1">

<P CLASS="TableEqnNumber">

<A NAME="pgfId=223048">

 </A>

(3.53)</P>

</TD>

</TR>

</TABLE>

</UL>

<P CLASS="ExerciseHead">

<A NAME="pgfId=123554">

 </A>

3.22&nbsp;<A NAME="16983">

 </A>

(XOR and XNOR cells, 60 min.) Table&nbsp;<A HREF="#37834" CLASS="XRef">

3.4</A>

 shows the implementations of two- and three-input XOR cells in an ASIC standard-cell library (D1 are the 1X drive cells, and D2 are the 2X drive versions). Can you explain the choices for the two-input XOR cell and complete the table for the three-input XOR cell?</P>

<TABLE>

<TR>

<TD ROWSPAN="1" COLSPAN="3">

<P CLASS="TableTitle">

<A NAME="pgfId=212693">

 </A>

TABLE&nbsp;3.4&nbsp;<A NAME="37834">

 </A>

Implementations of XOR cells (Problem <A HREF="#16983" CLASS="XRef">

3.22</A>

).</P>

</TD>

</TR>

<TR>

<TD ROWSPAN="1" COLSPAN="1">

<P CLASS="TableFirst">

<A NAME="pgfId=212699">

 </A>

<SPAN CLASS="TableHeads">

Cell</SPAN>

</P>

</TD>

<TD ROWSPAN="1" COLSPAN="1">

<P CLASS="TableFirst">

<A NAME="pgfId=212704">

 </A>

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?