11 장레지스터
레지스터 (egister) 개요 데이터를저장할수있는기억소자 여러개의플립플롭으로구성. 메모리는단순데이터를저장하는소자이지만, 레지스터는저장뿐아니라저장된데이터를처리할수있는기능도있다. 카운터도클록펄스가입력되면미리정해진순서에따라상태가변하는레지스터이다. 카운터와레지스터의차이점 데이터를저장또는이동하는목적으로만사용 상태의순차적인특성을갖지않는다. 한국기술교육대학교전기전자통신공학부 2
레지스터의형태 데이터를저장하고, 읽어내는방법에따른분류 IO (erial I erial Out) - 직렬입력, 직렬출력 IPO (erial I Parallel Out ) 직렬입력, 병렬출력 PIO (Parallel I erial Out) - 병렬입력, 직렬출력 PIPO (Parallel I Parallel Out) 병렬입력, 병렬출력 < 병렬입력 - 병렬출력레지스터 > < 병렬입력 - 직렬출력레지스터 > < 직렬입력 - 병렬출력레지스터 > < 직렬입력 - 직렬출력레지스터 > 한국기술교육대학교전기전자통신공학부 3
IO 레지스터 4 비트직렬입력 - 직렬출력 (IO) 레지스터 한번에한비트씩연속적으로데이터를받아들이고, 클록펄스가입력될때마다레지스터의내용이오른쪽으로한비트씩자리이동 다음클록펄스에의해직렬입력된데이터가레지스터에저장된후다시직렬로출력 CP t 1 t 2 t 3 t 4 t 5 t=t 1 1 t=t 2 t=t 3 t=t 4 1 1 1 1 1 1 데이터비트의시프트 타이밍도 한국기술교육대학교전기전자통신공학부 4
IO 레지스터 74191 8 비트 shift register, IO 8 개의 - 주종형플립플롭을직렬로연결하여구성한 IO 레지스터 직렬입력단자 : A, B 직렬출력단자 :, 직렬데이터를 A 로만받아들이려면입력단자 B 를논리 1 로한다. 한국기술교육대학교전기전자통신공학부 5 A B CLK H H
hift 레지스터 shift( 자리이동 ) 레지스터 레지스터의데이터를오른쪽또는왼쪽이동 shift right shift left rotate right rotate left 레지스터간의데이터전송 직렬전송 : 한번에한비트씩수신측레지스터로자리이동으로전송. 직렬방식레지스터전송 ( 블록도와타이밍도 ) 한국기술교육대학교전기전자통신공학부 6
병렬전송 병렬전송은한클록펄스동안에 - 비트의레지스터 A 의데이터가레지스터 B 로병렬로모두전송되는방식 병렬방식레지스터전송 ( 블록도와타이밍도 ) 직렬전송방식과병렬전송방식의비교 병렬방식은모든비트의데이터를한번에전송시키며, 직렬방식에서는레지스터에직렬입력과직렬출력을연결하여한번에한비트씩전송 직렬방식은데이터를전송할때전송속도가느리다. 병렬방식은하나의클록펄스시간동안에전송되므로전송속도가빠르다. 직렬방식에서자리이동제어입력은워드시간동안논리 1 이되어야하며, 매비트시간마다입력되는클록펄스에의해한번에한비트씩자리이동레지스터를전송 직렬방식은자리이동레지스터의데이터를순차적으로전송할때하나의회로를반복해서사용할수있으므로하드웨어의규모가간단해지나병렬방식은레지스터의비트수만큼데이터전송경로를가지므로직렬방식에비하여복잡하다. 한국기술교육대학교전기전자통신공학부 7
4- 비트직렬입력 - 병렬출력레지스터 IPO 레지스터 플립플롭의 D 입력을통해직렬로입력되고, 출력은레지스터에저장된데이터가각 F/F 의출력 A, B, C, D 를통하여병렬로동시에출력되는레지스터 직렬입력 D CP A D CP B D CP CP D C 직렬 D 출력 CLK OE FFA FFB FFC FFD O A O B O C O D 74164-8bit IPO shift register A, B 는직렬입력데이터, 출력은 8 비트로각 F/F 출력핀 ( A ~ H ) 비동기클리어입력 CL A B C D E F G H A B CLK CL 한국기술교육대학교전기전자통신공학부 8
PIO 레지스터 레지스터동작 H / LD = : 입력데이터 ( I D, I C, I B, I A ) 이각플립플롭의입력에각각연결되므로클록펄스의하강에지에서입력데이터의각비트가동시에샘플되어대응하는플립플롭의출력 에저장 H / LD =1 : 클록펄스의하강에지마다레지스터내용이오른쪽으로시프트 2x1 MUX = : A 를 Y 에전달 =1 : B 를 Y 에전달 4 비트 PIO 레지스터에병렬데이터 I A I B I C I D =11 일때, 파형을그려보아라. 단, 플립플롭에서의전파지연은없는것으로가정 한국기술교육대학교전기전자통신공학부 9
PIO 레지스터 74165 arallel load 8bit shift register 8 비트병렬입력직렬출력레지스터 CP1, CP2 : 2개의 PGT 클럭 PL= : 비동기병렬입력로드직렬입력 (Ds) : shift 동작에서의입력병렬입력 : A ~ H 직렬입력 Ds E 병렬입력 A B C D E F G H 8 비트병렬입력 - 직렬출력자리이동레지스터 H H 직렬출력 직렬출력 : H, H H/LD PL CLK INH CLK CP1 CP2 PL CP1 CP2 A B C D E F G H X X A B C D E F G H 1 D A B C D E F G 1 1 A B C D E F G H 1 D A B C D E F G 1 1 A B C D E F G H 병렬입력 right shift hold right shift hold 한국기술교육대학교전기전자통신공학부 1
PIPO 레지스터 병렬로드레지스터 병렬로드 : 레지스터를구성하는모든플립플롭이하나의클록펄스에의해서동시에입력값을로드레지스터특성표 PIPO 형태 clear load clk A B C D 비동기클리어 x x clear 동기형로드 1 A B C D hold 1 1 I A I B I C I D load D F/F 사용 F/F 사용 한국기술교육대학교전기전자통신공학부 11
병렬로드레지스터를사용한순차논리회로 순차논리회로 : 메모리요소와조합논리회로로구성 다음상태값 예제 ) 상태표와같이실행되도록 D 레지스터를이용한순차논리회로설계 D 플립플롭특성방정식은 (t+1) =D D 플립플롭 A 와 B 의상태방정식과출력 F A(t+1) = (3,4,6,7) B(t+1) = (,2,3,7) F = (3,5) 간소화된상태방정식과출력 F A(t+1) = Bx + Ax' B(t+1) = Bx + A' x' F= (A Å B) x 회로도 CP 외부입력 A B 레지스터 조합논리회로 출력 현재상태다음상태출력 A B 1 1 1 1 X= X=1 X= X=1 A B A B F F 1 1 1 1 1 1 1 1 1 1 레지스터 F x 한국기술교육대학교전기전자통신공학부 12
Uiversal 레지스터 양방향 shift 레지스터 - 오른쪽또는왼쪽으로자리이동 uiversal shift register 74194 4비트양방향범용시프트레지스터모드선택신호에의하여레지스터동작결정 CL CLK 1 레지스터동작 X X X 1 1 1 1 1 1 1 1 reset hold right shift Left shift 병렬입력 load 한국기술교육대학교전기전자통신공학부 13
Uiversal 레지스터 74178 : 4 비트 arallel access shift register PIPO, IO, PIO, IPO 가가능한 4 비트레지스터 동작 1 병렬입력 : HIFT=, LOAD=1, 클록하강에지에서병렬입력 DCBA load 2 직렬입력 : HIFT=1, LOAD=х, MB 에 I 입력. 4 개의클록후 4 비트가채워진다. 3 직렬출력 : 저장된직렬데이터는클록하강에지에서 MB 부터 D 에서출력 4 병렬출력 : D, C, B, A 에서동시에항상출력 입력 다음상태 HIFT LOAD CLK D C B A 1 1 x D D I C C D B B C A A B hold 기능 병렬입력 load 오른쪽시프트 한국기술교육대학교전기전자통신공학부 14
74 계열레지스터 54/74195(4-bit arallel i shift register) 74377 Octal D-tye Fil-flos with Eable 8 개의 D F/F 으로구성 74373/L373/HC373/HCT373 8 비트 3상출력을가진 D 래치로구성 74374/L374/HC374/HCT374 8 비트 3 상출력을가진에지트리거 D F/F 으로구성 한국기술교육대학교전기전자통신공학부 15
1. 재순환자리이동레지스터 ecirculatig hift egister 시프트레지스터응용 자리이동되어지워지는데이터를보존하기위해레지스터의재순환기능은출력에서입력으로궤환 한국기술교육대학교전기전자통신공학부 16
2. 디지털금고 v 비밀번호가 3, 1, 9, 인경우를가정 v 키패드상의키 3, 1, 9, 은각플립플롭의클록입력에연결 v 기타키들은 NO 게이트의입력에연결 v 비밀번호를순서적으로누르면각데이터가오른쪽으로시프트. v 마지막키 을누르면 A =1이되어서금고문이열림. 1 D C C D B B D A A D D D FF-D FF-C FF-B FF-A CL CL CL CL 1 2 3 4 5 6 7 8 9 한국기술교육대학교전기전자통신공학부 17
3. 시간지연회로 v 비트직렬입력 - 직렬출력레지스터를사용하면입력에가해진펄스보다 (-1)T (T 는클록의주기 ) 만큼지연되어출력에서펄스가나온다. v 예를들어, 4 비트레지스터를사용한경우, 클록주파수가 1MHz 이면 T=1ms (=1/1 6 ), 따라서 3 ms 지연되어펄스가나온다. v 시간지연 (time delay) 을더욱증가하려면레지스터를필요한개수만큼직렬연결하고, 클록펄스를공통으로사용. T 입력 CP I 4 비트시프트레지스터 O 출력 CP I O 3T 한국기술교육대학교전기전자통신공학부 18
4. 난수발생회로 (adom Number Geerator, NG) v 임의의랜덤 (radom) 한수열을발생하는회로 v P = 후, P = 1 하면, D C B A = 1 1 1 1 v 펄스가입력됨에따라아래와같은상태도를따름. P D C B A P P P P D D D D C C D B B D A A CP (15) (7) (3) (1) (8) (4) (2) (9) 1111 111 11 1 1 1 1 11 111 111 11 11 111 11 11 (14) (13) (1) (5) (11) (6) (12) 초기상태는 이외의어떤상태도가능 한국기술교육대학교전기전자통신공학부 19