이신플러스의 달콤쌉싸름한 낙원

반응형

저번 게시물로 배운 플립플롭,레지스터,카운터,프로세서등의

연습문제를 풀이해보도록 해보겠습니다.

 

7장은 배운 내용이 많은 만큼 빠릿빠릿하게 따라가야할 듯합니다.

 

7-1.

d래치,플립플롭,네거티브 플립플롭의 타이밍 다이어그램을 보는 문제입니다.

 

먼저 d래치의 경우에는 클록이 1인 경우에 d값이 q값에 그대로 복사됩니다. 레벨 센시티브라고도 이야기합니다.

 

포지티브 플립플롭의 경우에는 클록이 위로 튀는 순간(엣지)의 d의 값을 쭉 복사합니다.

 

네거티브 플립플롭의 경우에는 클록이 아래로 튀는 순간(엣지)의 d의 값을 그대로 복사합니다.

 

 

다음문제

7-2.

d래치를 가지고 sr레치를 만들어보겠습니다.

 

s,r을 or 하여 load에 연결하고

s는 그대로 data에 연결합니다.

 

즉 r은 리셋이기 때문에 1일때 리셋동작을 합니다.

r=0 , s=1 일때 load값은 1을 받게 되고 q값이 1을 가지게됩니다.

 

r=1, s=0 일때 load값은 1을 받게됩니다. q값이 0을 가지게됩니다.

 

r=0, s=0 일때 load값은 0을 가지게되고 예전의 값을 계속 유지하게됩니다.

r=1, s=1 일때 load값은 1을 받게되고 q값이 1을 가지게됩니다.

 

set 도미넌트한 상태가 됩니다.

불안전한 상태는 만들지 않습니다.

 

7-3.nand게이트 만을 가지고 latch를 만들어보자.

 

r,s게이트의 nor게이트만을 사용한 그림을 기억하십니까?

r=1일때 리셋이 되고

s=1일때 셋이 됩니다.

 

둘다 1,1일때 불안정한 상태가 됩니다.

 

우리는 nand게이트를 사용했을때

 

bar s 와 bar r이 각각 nand게이트로 묶이는 회로를 상상할수 있습니다.

 

truth table은 둘다 0일때 불안전한 상태가 됩니다.

 

7-4. sr래치를 nand게이트만으로 만들어라 입니다.

 

bar s 와 bar s를 쓸수가 없습니다. nand게이트를 사용해야하기때문에

 

우리는 클락을 넣어서 s와 r이 서로 각각 nand게이트로 묶인 회로설계를 만듭니다.

 

원래 nor 게이트의 진리표와 같은 특성을 가지게됩니다.

 

7-5.비동기 카운터를 사용해서 간단하게 만들수 있습니다.(하지만 비동기 카운터는 되도록 사용하지 않는게 좋습니다)

given a 100mhz clock signal, derive 50-mhz, 25-mhz clock signals

 

t플립플롭에 100클락을 넣는다면 파형이 2배로 늘어나게됩니다.

q를 관찰하게되면 주파수가 반으로 떨어진다는 뜻입니다.

즉, 100mhz를 넣었지만 q에서는 50mhz -> 그다음 q에서는 25mhz가 나오게됩니다.

 

(단 이 회로는 비동기이기떄문에 회로가 커질수록 지연시간이 늘어납니다)

 

7-6. sr플립플롭을 d플립플롭을 사용하여 설계하여라

 

sr플립플롭의 진리표를 기억해봅시다 0 0 일떄 유지// 0 1 일때 0// 1 0 일떄 1// 1 1 일떄 0입니다.

 

d플립플롭에 s,r 입력을 묶어줍니다.

 

s,r이 00일떄 q값이 d로 전달되게 되며 q가 유지됩니다.

 

s,r이 01일때 d값이 0이고 q가 0이됩니다.

 

s,r이 10일때 d값이 1이 됩니다.

 

s,r이 11일떄 d값이 0이 됩니다.

 

7-7. create a set-dominant sr latch

s=r=1 causes q=1

 

둘다 11일 경우 (sr이 모두 11일경우에도 s가 우세하게 설계합니다.)

r이 힘을 못쓰게 만들어보리기 위해 s의 not게이트와 r을 and게이트로 묶어버리면됩니다.

 

7-8.jk플립플롭을 이용해 t플립플롭을 설계하라

 

jk가 모두 00일때 이전값 유지

01일떄        0

10일때        1

11일떄        반전

 

 

jk가 00일떄 토글에는 0값이 들어갑니다 즉 q값은 유지

jk가 01일때 q값이 k와 묶인 and값으로 통과하게 됩니다. t=q가 됩니다.

즉 q가 0일떄 유지 q=1일떄 반전이 됩니다. 즉 두가지 경우가 생길수 있습니다.

0일때 항상 0이 나오게 되고

q가 1일때 반전되어 0이 된 값이 또한 유지되므로

결국 2클록 안에 q값은 0이 되어버립니다.

 

jk가 10일떄 bar q값이 t로 전달됩니다.

q가 0일떄 bar q는 1이므로 q가 0일떄 q의 값은 반전되어 1이됩니다.

q가 1일대 t에는 0이 들어가게 되고 유지 되게됩니다.

즉 q는 계속 1이 유지됩니다.

 

jk가 11일때 t값에는 무조건 1이 전달되므로 q값은 계속 반전되게 됩니다.

반응형

공유하기

facebook twitter kakaoTalk kakaostory naver band
loading