새로 오신 분들은 길라잡이를 꼭 읽어주세요.

문서의 정리·작성번역을 도와주시면 마인크래프트 위키에 큰 힘이 됩니다.

메모리 회로

Minecraft Wiki
이동: 둘러보기, 검색

이 문서의 일부는 예전 버전의 레드스톤 회로에서 가져왔습니다.

래치와 플립플롭[편집 | 원본 편집]

래치플립플롭은 효과적인 1비트 메모리이다. 래치와 플립플롭은 데이터를 저장하고 나중에 그것을 전송한다. 이러한 구성 요소를 사용하는 기능은 입력을 변경하지 않더라도 이후의 실행에서 다른 출력을 주고 만들 수 있다, 그래서 그것들을 사용하는 회로를 "순차 논리"라고 한다. 래치와 플립플롭으로 카운터, 장기적인 클락과 혼합 논리 게이트로 만들 수 없는 복잡한 메모리 시스템을 만들 수 있다.

입력과 출력이 루프로 연결되어 있는 두 개의 NOR 게이트로 만들어진 모든 레드스톤 래치나 플립플롭의 중심에 있는 일반적인 기능은 RS NOR 래치이다(아래를 보라). NOR 래치의 기본적인 대칭은 최소한 추가적인 논리가 더 복잡한 장치의 형태로 연결된 상태가 임의적인 결정으로 '설정된' 상태를 나타내는 결정을 한다. 플립플롭이 추가적인 논리를 래치 주변에 감싸서 다른 방법으로 작동 하는 반면에, 래치들은 보통 '설정' 입력과 '리셋' 입력, 저장된 값을 컨트롤하는 두 개의 입력을 가진다.

RS NOR 래치[편집 | 원본 편집]

RS NOR 래치 디자인.
RS NOR 래치 E 디자인.
A 디자인 RS NOR 래치. 래치가 꺼진 상태이다.
H 디자인, 옆에서 본 모습 (출처)

S로부터 받은 입력 Q가 영원히 켜지는 장치이다. Q는 R로부터 신호를 다시 받이서 꺼질 수 있다.

이것은 아마 마인크래프트에서 만들 수 있는 가장 작은 메모리 장치일 것이다. Q 는 Q의 반대를 의미한다, 예를 들어, Q 가 켜졌을 때, Q 는 꺼져있고, 이는 역으로도 성립된다. 이것은 특정한 상황에 플레이어는 NOT 게이트를 Q 출력 다음에 설치하는 대신에 단순히 출력 Q 를 없앰으로써 제거할 수 있음을 의미한다.

아주 기본적인 예시는 리셋 버튼을 누를 때까지 발판이 눌렸을 때 경고를 내보내는 알람 시스템으로 사용될 수 있다.


진리표에서, S=1, R=1 은 숨겨져 있다고 한다, 이것이 Q와 Q간의 반대 관계를 깨기 때문이다. 또한, 몇몇 B와 D같은 다지인들은 입력이 출력으로부터 떨어져 있지 않다, 이것은 이러한 상황에 Q와 Q 가 둘 다 1로 나오게 된다. S와 R 둘다 0이 되자마자, 출력은 다시 올바르게 수정될 것이다. 그러나, S와 R이 정확하게 동시에 켜지면, 결과 상태는 Q나 Q의 방향에 따라 달라진다. 실제로는, 이런 입력 상태는 정의되지 않있기 때문에 반드시 피하여야만 한다.

RS NOR 래치 동영상 튜토리얼

S R Q Q
1 1 정의되지 않음 정의되지 않음
1 0 1 0
0 1 0 1
0 0 상태를 유지 상태를 유지
디자인 A B C D E F G H
크기 3x3x1 2x3x2 3x3x3 4x2x2 7x3x3 4x2x1 3x2x2 1x3x3
토치 개수 2 2 2 2 3 2 2 2
레드스톤 개수 4 4 8 6 18 4 3 3
떨어져있는 입력 아니오 아니오 아니오
떨어져있는 출력 아니오 아니오 아니오
입력 방향 반대 반대 둘 다 반대 반대

RS NAND 래치[편집 | 원본 편집]

RS NAND 래치 디자인.

NOR 게이트와 NAND 게이트는 보편적인 논리 회로에 반해, RS NAND 래치 디자인은 RS NOR 래치에 입력과 출력에 인버터가 적용되있는 것이다. RS NAND 는 논리적으로 RS NOR와 R과 S 입력이 같은 출력을 낸다는 점에서 동등하다.

SR 가 둘 다 꺼저있을 때, Q 와 Q 는 켜져있다. S 가 켜져있고, R 이 꺼져있을 때, Q 는 켜져 있다. R 이 켜져있고, S 가 꺼져있을 때, Q 는 켜져있다. SR 이 둘 다 켜져있을 때, Q 와 Q에는 아무런 변화가 없다. 이것은 SR 이 둘 다 켜진 것과 같다.

S R Q Q
1 1 상태를 유지 상태를 유지
1 0 0 1
0 1 1 0
0 0 정의되지 않음 정의되지 않음
디자인 A B
크기 6x3x3 6x3x2
토치 개수 6 6
레드스톤 개수 10 8
입력 방향 반대

D 플립플롭[편집 | 원본 편집]

D 플립플롭 디자인.
C 디자인 D 플립플롭을 옆에서 본 모습. (출처)
D 디자인 (출처)
E 디자인은 A 디자인의 더 단순한 버전이다.

D 플립플롭, 또는 "데이터" 플립플롭은 출력 D를 특정한 조건으로 설정한다. 기본적인 레벨-트리거링 D 플립플롭 (A 디자인), 게이트화된 D 래치로 알려져있다, 클락이 꺼졌을 때 D를 출력한다, 그리고 클락이 켜져있는 동안 D의 변동사항을 무시한다. B 디자인은 가장자리 트리거를 포함한다, 그리고 클락이 꺼진 상태에서 켜진 상태로 변할 때 출력을 D로 설정한다

이러한 디자인에서, 출력은 떨어저있지 않다, 이것은 비동기적인 R과 S 입력을 가능하게 한다(클락을 오버라이드 하고 특정한 출력 상태를 강제한다). Q를 인버터에 연결에서 Q로 만드는 대신에 떨어진 입력을 얻는다.

C 디자인은 인버트되지 않은 클락을 사용하는 경우를 제외한A 디자인의 한 블록 더 넓은 버전이다. 이것은 클락이 켜져있는동안 출력을 D로 설정한다 (토치를 끈다). 이 디자인은 더 적은 공간을 주기 위해 서로 다른 블록끼리 평행으로 되풀이될 수 있다, 병렬 데이터 라인의 최소 간격이 같다 ("케이블"을 쓰지 않을때).클락 신호는 분배될 수 있다. 클락 신호는 와이어가 데이터 라인을 아래에 수직으로 실행되는 모든신호에 분배될 수있다, 원하는 경우 단일 가장자리 트리거를 공유하는 여러 플립플롭을 허용한다. 츨력 Q는 가장 쉽게 접근할 수 있는 출력은 가장 쉽게 반대 방향으로, 입력 소스의 방향으로 액세스할 수 있다. Q 는 떨어진 래치의 세트로 인버트되거나 리피트될 수 있다 (A 디자인의 것 처럼 떨어지지 않은 Q는 Q 와이어는 R과 S 입력의 두배의 역할을 할 수 있다).

E 디자인은 높이는 같은 반면에, A 디자인보다 더 작다 . 이미지의 오른쪽에 있는 디자인은 위로 1개 블록의 여유공간이 필요한 반면에, 높은 입력으로서의 가장자리 트리거를 사용할 수 있다. 이 추가적인 윗 공간의 필요성은 간단히 세로 NOT 게이트를 옮김으로써 피해갈 수 있다. 또한 간단히 NOT 게이트를 데이터 뱅크에 제공하는 옵션이 있다, 그러므로 각각 플립플롭이 게이트를 필요로 하는 것을 막는다.

디자인 A B C D E
크기 7x3x2 7x7x2 1x5x6 2x4x5 3x2x7
토치 개수 4 8 5 8 5
레드스톤 개수 11 18 6 5 13
트리거 레벨 가장자리 레벨 레벨 가장자리
떨어져있는 출력 아니오 아니오 아니오 아니오 아니오
떨어져있는 입력 C만

JK 플립플롭[편집 | 원본 편집]

JK 플립플롭 디자인.

잠겨있지 않은 JK 플립플롭은 RS NOR 래치와 많이 비슷하게 작동한다. 입력 J가 켜져있고 입력 K가 꺼져있을 때, 출력 Q는 켜진다. 그것은 오직 K만 켜져있고 Q가 꺼져있을 때나 둘 다가 켜져있을 때만 그 상태를 유지한다. 두 입력이 켜져있으면 입력들은 교착 상태에 들어간다. 이것은 출력이 입력들 중 하나가 꺼지기 전까지는 변동을 유지함을 의미한다. (이것은 토치를 꺼뜨릴 정도로 빠르지는 않다).

참고: 오른쪽에 그려진 JK 플립플롭중 몇몇은 반전된 Q 출력을 포함하지 않는다. 만약 반전된 Q가 필요한다면 그저 Q에 인버터를 추가하라.

디자인 A B C
크기 11x9x2 9x8x2 5x7x4
토치 개수 12 12 11
레드스톤 개수 34 35 22
접근 가능한 Q 아니오 아니오
트리거 가장자리 가장자리 레벨

T 플립플롭[편집 | 원본 편집]

T 플립플롭 디자인.
수직 T 플립플롭 디자인.

T 플립플롭은 "토글"로도 알려져있다. 언제든지 T가 0에서 1로 변경되면, 출력은 그 상태를 토글한다.

마인크래프트에서 T 플립플롭의 유용한 사용 방법은 아래의 예시처럼 사용될 수 있다. 플레이어가 출력 토글 버튼을 누르면 (문 계폐), 버튼이 튀어나와도 전의 상태로 돌아가지 않는다. (C 디자인과 D 디자인은 포함된 가장자리 트리거를 가지고 있지 않고 입력이 1분의 1번 지나가기 전까지 여러번 토글할 것이다.)

이것은 또한 "피리어드 더블러"의 기능으로서 모든 이진 카운터와 클락들의 핵심이다, 두 개의 입력 펄스를 한 개의 출력 펄스로 전환한다.

A 디자인은 큰 공간을 차지한다, 그러나 만들기 쉽다. 이것(그리고 B, A의 약간 경량화된 버전) 은 근본적으로 J와 K를 제거해서 가장자리 트리거에 연결해 안정된 상태를 유지하고 작업당 하나의 입력만 혀용하는 JK 플립플롭이다 (도표의 오른쪽).

C 디자인은 더 작은 공간을 차지하고 반전 출력에 쉽게 접근하지만, 가장자리 트리거가 부족하다. 입력이 높은 상태를 유지하면, 이것은 토치를 태워버릴 정도로 켜고 끄기를 계속 반복할 것이다. 예를 들면, 만약 위에서 언급된 버튼이 입력으로 직접 연결되어 있으면, 그 장치는 버튼이 꺼질 때까지 여러번 토글할 수 있다.

입력을 각각의 펄스 생성기에 연결함으로서 가장자리 트리거를 추가(B' 디자인이 가장 잘 작동하는것처럼 보임) 하는것은 이 문제를 예방할 수 있다, 이것의 다른 의미로서는 짧은 (2-3 틱)펄스의 파워를 전송할 것이다.

D 디자인과 E 디자인은 다른 것보다 높다, 그러나 옆으로 하나의 블록 넓이밖에 되지 않는다, 그래서 공간이 제한되어 있을 때 좋다. D 디자인은 C 디자인처럼 레벨 트리거가 된다, 하나의 입력 펄스를 여러개의 플립플롭에 분배할 때 공간을 절약할 수 있다. E는 가장자리 트리거가 추가된 한 블록 넓이이다, 이진 카운터나 느린 클락을 위한 피리어드-더블러의 생성을 위한 여러 개의 직렬 연결을 쉽게 한다. 이러한 디자인은 수직으로 게이트된 D 래치(C 디자인)와 입력으로 다시 돌아오는 반전된 출력에 기초를 두고 있다.

참고: 오른쪽의 몇몇 그려진 T 플립플롭은 반전된 Q출력을 포함하고 있지 않다. 만약 반전된 Q가 필요하다면 Q에다가 인버터를 달면 된다.

T 플립플롭 동영상 튜토리얼

디자인 A B C D E
크기 7x9x2 7x8x2 5x6x3 1x7x6 1x12x7
토치 개수 10 10 8 7 12
레드스톤 개수 28 29 22 9 15
접근 가능한 Q? 아니오 아니오 아니오 아니오
트리거 가장자리 가장자리 레벨 레벨 가장자리

레일 T 플립플롭[편집 | 원본 편집]

레일 T 플립플롭은 레드스톤만 사용하는 대신에 레일과 레드스톤을 사용하는 것이다. 이것은 레드스톤만큼 빠르게 작동하진 않지만 일반 플립플롭보다 더 적은 공간을 차지하고 입력과 출력에 접근하기가 쉽다.

http://i54.tinypic.com/nvtq49.png 레일 T 플립플롭의 예시