EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
什么是时序电路?1 j. O- O3 H+ f1 x0 h
3 w! {! N% P5 ^& j
7 B. q0 c* e: z0 c/ x2 l q
组合电路是根据当前输入信号的组合来决定输出电平的电路,换言之,就是现在的输出不会被过去的输入所左右,也可以说成是,过去的输入状态对现在的输出状态没有影响的电路。
5 L/ `# T e2 e! G8 K# b* F/ C& q' }7 L9 ]" I; ^+ P
# R% P3 }7 [; o$ E. @时序电路和组合电路不同,时序电路的输出不仅受现在输入状态的影响,还要受过去输入状态的影响。0 S1 Y' X& |6 N
2 P# c% Z6 v5 }6 F4 @- k: _
( ^& Y, f5 V) ~% e3 q那么,如何才能将过去的输入状态反映到现在的输出上呢?时序电路到底需要些什么呢?人类总是根据过去的经验,决定现在的行动,这时我们需要的就是—记忆,同样时序电路也需要这样的功能,这种能够实现人类记忆功能的元器件就是触发器。按结构和功能,触发器可以分为RS型、JK型、D型和T型,在这里,我们只讲解比较有代表性的类型,RS型和D型。
& b6 Q0 N9 y6 ~; A- k
! E1 C4 s3 D5 f/ |# L
5 H( V. t$ H; d5 S+ d2触发器就像一个跷跷板
6 |; @8 s1 k; r9 \4 e( `1 S$ @0 q. |" B
6 ~( L H" P5 {# \1 e& d触发器的工作方式与日本的“起坐亲子游戏”很象,日本的“起坐亲子游戏”,指的就是公园里的跷跷板,想起跷跷板,就能想象出RS触发器的工作原理。
4 Q3 d; c% M- O* u" G& d
! K% ~' _1 x0 m2 \ O' `
+ r* N5 {8 g s3 U7 ~0 V# D
' v0 {, z9 V! i3 S0 g
* _ p1 N6 G% [2 H' Y2 @ u4 D6 a$ V图1:RS触发器的电路图 8 M# v+ x3 E0 n
3 ^) v' t1 D# Z, R9 _: U
图2就是一个跷跷板,这个跷跷板有些生锈,即使没有人坐,也不能恢复水平状态,请记住它保持倾斜的样子,假设:0 V- L% z0 o; i1 f
: r# B/ a1 z- d2 k+ v+ \: F- 跷跷板的两端是输出Q和Q#。
# {' T8 I- Z" O3 z" g- K' f0 f - \) s2 K( l& n# d& h
- 左右的2个人是R君和S君,表示输入,坐上跷跷板表示逻辑高H状态,没有在跷跷板上表示逻辑低L状态。
5 r( R% K9 o; {' O8 C% b 9 N {/ h4 V% D9 T P
7 [: J- q; A1 s6 ]. X* r
! L0 Y; t6 h. [2 h3 y" p6 C _3 j' b3 _
- 每次只允许一个人坐,两人不能同时坐。, }5 i. ]& V0 d' Q; D6 D" F, L0 [
" B7 ~6 M$ b, \$ H- C5 C$ ]
- Z U7 k1 X1 j! {. N& w
" T" {" B9 H$ \. H
, N6 U7 p& G# h8 k& o0 i# v
2 v; h5 L3 `$ S# _! n & U1 x0 Y; w/ V# D8 B
图2:跷跷板的初始状态 7 B4 B+ o8 Q' V& s7 m7 a
Q=L、Q#=H、R=L、S=L
y0 ^4 a r- E/ d- \1 T
+ R7 _$ |+ t" k" v3 c
当S君坐上跷跷板(S=H)时,输出Q就变为H(Q#变成L)(图3 )。 |0 y1 a, Y( K6 ?2 G1 y
8 M" v; i0 ~2 V2 v" a; {
5 R5 y* \$ a; b. t) `
7 t, m9 _9 z* z6 |
) x( q* x! O- T, x, i9 k
$ w3 {( j/ Z! C2 ~图3:S君坐在跷跷板上的状态
/ Y6 ]. E" N; a9 U( z
Q=H、Q#=L、R=L、S=H $ _) ^8 d0 ^+ E
即使S君下来了,跷跷板也不会改变动作(S=L),Q#还是L,不改变(图4)。 : e- g' z) c+ X& a: }
, ~5 R, a. | p' [" f
: @ [4 X0 w$ U: O+ p9 }
图4:S君从跷跷板上下来的状态
6 g2 Y2 q. w3 n
! A5 a- a b1 H* S7 m1 B1 |) n
Q=H、Q#=L、R=L、S=L ; i$ F3 p( T, I
当R君坐上跷跷板时,Q变成L(Q#变成H),当R君从跷跷板上下来时,也会保持L状态,从这个过程来看,我们是不是可以说跷跷板记住了以前坐过它的人呢。用真值表表示RS触发器的工作过程,就像图5所示一样,表中Q0和Q0#表示的是输入变化以前的输出。 " L9 ~) E3 P# G
( ^2 t, g, K$ z8 f o0 ]
% P% h0 N0 n9 E+ ]$ J) q5 B/ u
" Y$ N9 s/ p* I9 B4 X4 h$ h$ s2 o " H; n$ k' b4 a/ O# Q
* m q, o; Q1 h& H
1 O& p+ o. S' u* R. T
图5:RS触发器的真值表
( `- T1 w" M: n+ b
# K% b! Z; V0 C% e$ b3 U
RS触发器是最简单的触发器,主要用于防止机械式开关的误操作。
2 I, F! [! v$ j+ I+ j4 S( R
0 k) l0 Q3 J* r' b4 O( k' Z9 H( Y
' E1 s) }# H. N8 p* C; g# W( u
D触发器是在时钟信号(CK)的上升沿(信号从L→H的变化)或下降沿(信号从H→L的变化)时,保持输入信号状态,改变输出信号的触发器。 7 ]' l6 V, o& e9 @, ~0 N
# S( L6 V* l* L7 J" `+ S1 T# m$ ^) z
图6:D触发器
! L3 u8 e5 a3 ~$ i: T* \
5 D/ l7 L! U' r7 s. S1 |
9 X0 I( G: J3 Z0 b2 H Y v
Q0:输入变化前的输出
! K# q/ n, ]# J- {3 Sx:H或L都可以 ↑:L向H的转移图
+ e4 w h7 e* Q, s+ S1 `; E5 G# F" a
7:D触发器的真值表
& z" H9 y4 A9 `$ e8 A* R" h6 b: F# K
! p8 m! d) S% k1 H. Q. A7 O
现在,我们用跷跷板来说明D触发器的工作原理,跷跷板的初始状态如图8所示,D君坐上跷跷板表示输入为H,从跷跷板上下来表示输入为L,跷跷板的另一边,放一个比D君轻的重物。另外这个跷跷板与一般的跷跷板不同,只有在时钟CK上升沿时,才改变跷起的方向。
7 m! s% E% O6 P6 \3 m
# Q3 K& U$ U m8 w, M# L
7 L1 K0 L* r9 V. d4 Z% }
9 f4 J/ B4 e, y
图8:D触发器的初始状态
9 T) q! Z8 J# e3 _$ a( o
CK=L、D=H、Q=L、Q#=H 8 I/ r6 L6 U. P( q. M% f" J4 K. j
看着图8,你不觉得有些奇怪吗?D君坐在跷跷板上,却没有变化,按理说,由于D君比重物重,D君(Q#)应该降下来,才对。
) ]9 p5 ^7 X5 J5 z! x+ i& T: \% T v" d# {- \1 f4 _# t- W- P( E0 q4 H
为什么跷跷板没有发生变化呢,这是因为CK还保持L状态,当CK变为H(CK上升)时,跷跷板就跷起来了,D君就下降了(图9)。
! q t7 j i- [% G" v4 X1 q
. {2 M, K# o9 h- }% h7 r
0 D, t6 A' V4 k% o3 c3 i
图9:D触发器的CK处于上升状态
8 `" }$ ^, A7 |5 ^* M5 f, ^
D=H、Q=H、Q#=L
8 a# r+ M: K3 r% H0 C6 l* o* \% N/ s0 L. s1 Z
然后,CK就稳定在H状态,这时,不管D君是从跷跷板上下来,还是再坐上去,跷跷板都不动,只要不在CK的上升状态,跷跷板就一直保持以前的状态。 , I6 M7 N0 e" N$ x8 ^. ?1 r: a
这种动作的触发器被称为D触发器,具有在时钟上升瞬间,保持(记忆)输入状态的功能,是一种时钟同步时序电路。 8 ~8 t( \# `0 T" e2 V. _( I
8 y& @ V& P% h" W, I7 A
% X# b/ V: V0 n3 bD触发器是时序电路的基本元件,用途广泛,D触发器的多级组合,可以做成移位寄存器、分频电路等,也可用于CPU内部的寄存器等。
1 O3 T8 `; l7 }# N3 s2 [. g0 s' n9 o
4SRAM是触发器构成的吗? / q. R, |! e4 W, e
: u" ~7 S8 M3 t6 ?. l, C! c
3 x0 {0 u# W9 S4 ]0 m7 D$ X: w4 ?+ u* H! O/ D1 X- p# T/ B, S
) X6 J1 G, p6 |
触发器可以记忆H或L,1位的信息,大量排列触发器,并使之具有可选择性后,就可以构成SRAM。 : z7 P5 k% b: {! V1 t5 U5 e
" d' K; `, q! s6 c6 W; ]
5 q' D& N1 r, X9 v& n, m
由于SRAM的输入输出速度比DRAM和闪存的访问速度高得多,所以,常用作CPU的缓存和寄存器。
$ M) c/ ]0 r7 M( ~0 j' w& e' N/ q' h
0 h8 _4 F7 \- k8 W# e5 h尽管我们这样说,实际上CPU中内置的存储器或寄存器并非使用的是RS触发器这样的逻辑门。
/ D. h9 H: {% E* b' q" U7 D8 B I0 R) X3 n' z/ K
( k' `1 B) g6 z1 f% \3 f7 i" V
8 r8 Y+ T' c# G' T
$ T8 I, v2 E r! r' {- L9 G* I
由于使用逻辑门,会使电路规模变大,所以,一般使用4到6个FET,再经过优化构成存储器的1位(图A)。
9 S& }+ [7 x: _ {) a! g# a! ?! M
+ j: I* _8 B+ D- l, r
图A:SRAM的基本电路 ; s0 M$ o' |4 N# U
: A" U5 p; P2 W7 I: C C
我们分两次,组合电路和时序电路,对逻辑电路的基础进行了讲解,实际上,在设计逻辑电路时,有很多应该注意的事项,其中特别重要的就是关于时钟同步电路的注意事项。 . H) S" w7 Q( {( F, `( p; l
在组合电路中,微小的信号传输迟延,都有可能造成输出毛刺,尽管毛刺是一个极其短暂的信号,但也可以引起逻辑电路的误动作,为了回避这个问题,就要使用时钟同步电路。
7 N) r$ F; j# ?" Y% l, d
2 R* E' b$ w- {$ g4 H0 g& S
P! C' T7 Q1 F" L. ?' u: G7 B" F7 R2 p9 i; c! [
: n. C% j5 {& `. `' i* Y
& X$ Y% c! x9 X
9 l: P, L* f5 @4 ]
图10:时钟同步电路的思路
6 S; ^* ?: E9 J; @9 Y- H
/ l" u9 q" K* ?7 ^图10给出了时钟同步电路的概要,如图所示,其构造是在FF(触发器)之间夹着组合电路,毛刺是组合电路在输出稳定之前,输出的短暂信号。因此,在组合电路输出稳定以后,再改变时钟,用触发器保持这个输出,就可以回避这种误动作了。 7 ]7 ?* l; K; F; U$ ]
9 D& ]* X0 c8 N
|