산업 제조
산업용 사물 인터넷 | 산업자재 | 장비 유지 보수 및 수리 | 산업 프로그래밍 |
home  MfgRobots >> 산업 제조 >  >> Manufacturing Technology >> 산업기술

시프트 레지스터:직렬 입력, 병렬 출력(SIPO) 변환

직렬 입력, 병렬 출력 시프트 레지스터는 데이터를 내부 저장 요소로 이동하고 직렬 출력, 데이터 출력, 핀에서 데이터를 출력한다는 점에서 직렬 입력, 직렬 출력 시프트 레지스터와 유사합니다.

모든 내부 단계를 출력으로 사용할 수 있다는 점에서 다릅니다. 따라서 직렬 입력, 병렬 출력 시프트 레지스터는 데이터를 직렬 형식에서 병렬 형식으로 변환합니다.

직렬 입력, 병렬 출력 시프트 레지스터 사용 예

아래의 데이터 입력에서 단일 와이어를 통해 4개의 데이터 비트가 4개의 클록 펄스만큼 시프트되면 데이터는 4개의 출력 QA에서 동시에 사용할 수 있게 됩니다. QD로 네 번째 클록 펄스 이후.

직렬 입력, 병렬 출력 시프트 레지스터의 실제 적용은 단일 와이어의 직렬 형식에서 여러 와이어의 병렬 형식으로 데이터를 변환하는 것입니다.

4개의 출력(QA QB QC QD ).

직렬 입력, 병렬 출력 시프트 레지스터에 대한 위의 세부 정보는 매우 간단합니다. 각 단계 출력에 탭이 추가된 직렬 입력, 직렬 출력 시프트 레지스터처럼 보입니다.

SI에서 직렬 데이터 이동 (직렬 입력). 스테이지 수와 동일한 클록 수 후에 첫 번째 데이터 비트가 SO(QD ) 위의 그림에서.

일반적으로 SO 핀이 없습니다. 마지막 단계(QD 위)는 SO 역할을 하며 존재하는 경우 다음 패키지로 캐스케이드됩니다.

직렬 입력, 병렬 출력 대 직렬 입력, 직렬 출력 시프트 레지스터

직렬 입력, 병렬 출력 시프트 레지스터가 직렬 입력, 직렬 출력 시프트 레지스터와 매우 유사한 경우 제조업체는 왜 두 가지 유형을 모두 제공하려고 합니까?

직렬 입력, 병렬 출력 시프트 레지스터를 제공하지 않는 이유는 무엇입니까?

대답은 8비트 이하인 한 실제로 직렬 입력, 병렬 출력 시프트 레지스터만 제공한다는 것입니다.

직렬 입력, 직렬 출력 시프트 레지스터는 18~64비트의 8비트 길이보다 큽니다.

많은 출력 핀이 필요한 64비트 직렬 입력, 병렬 출력 시프트 레지스터를 제공하는 것은 실용적이지 않습니다. 위의 시프트 레지스터는 아래 파형을 참조하십시오.

CLR'에 의해 데이터 이전에 시프트 레지스터가 지워졌습니다. , 시프트 레지스터 내의 모든 D형 플립플롭을 지우는 활성 로우 신호.

직렬 데이터 1011 참고 SI에서 제시된 패턴 입력. 이 데이터는 시계 CLK와 동기화됩니다. .

이것은 병렬 입력, 직렬 출력 시프트 레지스터(여기에는 표시되지 않음)와 같은 다른 시프트 레지스터에서 시프트 인되는 경우입니다.

t1의 첫 번째 시계에 , 데이터 1 SI에서 D에서 이동합니다. Q로 첫 번째 시프트 레지스터 단계의 t2 이후 이 첫 번째 데이터 비트는 QB에 있습니다. .

t3 이후 QC에 있습니다. . t4 이후 QD에 있습니다. . 4개의 클록 펄스가 첫 번째 데이터 비트를 마지막 단계까지 이동했습니다. QD .

두 번째 데이터 비트 0 QC에 있습니다. 4시 이후. 세 번째 데이터 비트 1 QB에 있습니다. . 네 번째 데이터 비트 또 다른 1 QA에 있습니다. .

따라서 직렬 데이터 입력 패턴 1011 (QD에 포함됨 QC QB QA ). 이제 4개의 출력에서 ​​사용할 수 있습니다.

시계 t4 직후부터 4개의 출력에서 ​​사용할 수 있습니다. t5 직전까지 .

이 병렬 데이터는 이 두 번 사이에 사용하거나 저장해야 합니다. 그렇지 않으면 QD 이동으로 인해 손실됩니다. 다음 시계의 단계 t5 t8까지 위와 같이

직렬 입력, 병렬 출력 장치

Texas Instruments에서 제공하는 집적 회로로 제공되는 직렬 입력, 병렬 출력 시프트 레지스터를 자세히 살펴보겠습니다.

전체 장치 데이터 시트를 보려면 링크를 따르십시오.

<울>
  • SN74ALS164A 직렬 입력/병렬 출력 8비트 시프트 레지스터
  • SN74AHC594 직렬 입력/병렬 출력 8비트 시프트 레지스터(출력 레지스터 포함)
  • SN74AHC595 직렬 입력/병렬 출력 8비트 시프트 레지스터(출력 레지스터 포함)
  • 출력 레지스터가 있는 CD4094 직렬 입력/병렬 출력 8비트 시프트 레지스터
  • 74ALS164A는 두 개의 직렬 입력 A를 제외하고 이전 다이어그램과 거의 동일합니다. 및 B .

    다른 입력을 활성화하려면 사용하지 않는 입력을 하이로 가져와야 합니다. 위의 모든 단계를 보여주지는 않습니다.

    그러나 모든 출력은 핀 번호와 함께 아래 ANSI 기호에 표시됩니다.

    CLK 위의 ANSI 기호의 제어 섹션에 대한 입력에는 두 개의 내부 기능 C1이 있습니다. , 접두어가 1인 모든 항목 제어 .

    이것은 1D에서 데이터의 클럭인 것입니다. . 두 번째 기능인 슬래시(/) 뒤의 화살표는 시프트 레지스터 내에서 데이터의 오른쪽(아래) 이동입니다.

    8개의 출력은 제어 섹션 아래의 8개 레지스터 오른쪽에서 사용할 수 있습니다. 첫 번째 단계는 A&B를 수용하기 위해 다른 단계보다 넓습니다. 입력.

    위의 내부 로직 다이어그램은 74AHC594용 TI(Texas Instruments) 데이터 시트에서 수정되었습니다. 맨 위 행의 유형 "D" FF는 직렬 입력, 병렬 출력 시프트 레지스터로 구성됩니다.

    이 섹션은 앞에서 설명한 장치처럼 작동합니다. 출력(QA ' QB ' QH로 ' ) 장치의 시프트 레지스터 절반은 아래쪽 절반에 있는 유형 "D" FF를 병렬로 공급합니다. QH ' (핀 9)는 선택적 캐스케이드 장치 패키지로 이동됩니다.

    RCLK에서 단일 양의 클록 에지는 D에서 데이터를 전송합니다. 질문으로 낮은 FF의. 모든 8비트는 출력 레지스터와 병렬로 전송됩니다. (저장 요소 모음).

    출력 레지스터의 목적은 새로운 데이터가 상위 시프트 레지스터 섹션으로 이동하는 동안 일정한 데이터 출력을 유지하는 것입니다.

    이는 출력이 릴레이, 밸브, 모터, 솔레노이드, 경적 또는 부저를 구동하는 경우에 필요합니다. 이 기능은 변속 중 깜박임이 문제가 되지 않는 한 LED 구동 시 필요하지 않을 수 있습니다.

    74AHC594에는 시프트 레지스터(SRCLK ) 및 출력 레지스터( RCLK ). 또한 시프터는 SRCLR에 의해 지워질 수 있습니다. 및 RCLR에 의한 출력 레지스터 .

    특히 릴레이, 모터 등을 구동하는 경우 전원을 켤 때 출력을 알려진 상태로 두는 것이 좋습니다. 아래 파형은 데이터의 이동 및 래칭을 보여줍니다.

    위의 파형은 4비트 데이터를 74AHC594의 처음 4단계로 이동한 다음 출력 레지스터로 병렬 전송하는 것을 보여줍니다.

    실제로 74AHC594는 8비트 시프트 레지스터이며 8비트 데이터를 이동하는 데 8클록이 소요되며 이는 정상 작동 모드입니다.

    그러나 우리가 보여주는 4비트는 공간을 절약하고 작업을 적절하게 설명합니다.

    t0 이전에 시프트 레지스터를 반 클럭 지웁니다. SRCLR'=0 . SRCLR' 변속하기 전에 다시 높게 해제해야 합니다.

    t0 직전 출력 레지스터는 RCLR'=0에 의해 지워집니다. . 역시 출시되었습니다( RCLR'=1 ).

    직렬 데이터 1011 시계 t0 사이의 SI 핀에 표시됩니다. t4 . 시계 t1만큼 이동합니다. t2 t3 t4 내부 교대 단계에 나타남 QA ' QB ' QC ' QD ' .

    이 데이터는 t4 사이의 단계에 있습니다. t5 . t5 이후 원하는 데이터(1011 )는 이러한 내부 시프터 단계에서 사용할 수 없습니다.

    t4 사이 t5 긍정적인 진행 RCLK를 적용합니다. 데이터 전송 1011 출력을 등록하려면 QA QB QC QD .

    이 데이터는 추가 데이터로 여기에 고정됩니다(0 s) 후속 SRCLK 동안 교대 s(t5 t8까지 ). 다른 RCLK까지 데이터가 변경되지 않습니다. 적용됩니다.

    74AHC595는 RCLR'을 제외하고는 '594'와 동일합니다. OE'로 대체됨 8개의 출력 레지스터 비트 각각의 출력에서 ​​3상태 버퍼를 활성화합니다.

    출력 레지스터를 지울 수는 없지만 OE'=1에 의해 출력이 끊어질 수 있습니다. .

    이렇게 하면 외부 풀업 또는 풀다운 저항이 시스템 전원을 켜는 동안 릴레이, 솔레노이드 또는 밸브 드라이버를 알려진 상태로 강제 설정할 수 있습니다.

    시스템의 전원이 켜지고 마이크로프로세서가 데이터를 '595로 이동하고 래치하면 출력 활성화가 선언될 수 있습니다(OE'=0 ) 유효한 데이터로 릴레이, 솔레노이드 및 밸브를 구동하지만 그 이전에는 그렇지 않습니다.

    위는 이러한 장치에 대해 제안된 ANSI 기호입니다. C3 데이터를 직렬 입력(외부 SER ) 3으로 표시된 대로 2,3D 접두어 .

    C3/ 뒤의 화살표 시프트 레지스터의 오른쪽(아래) 이동을 나타내며, 컨트롤 섹션 아래의 '595 기호' 왼쪽으로 8단계입니다.

    2 2,3D 접두어 및 2D R2로 이 단계를 재설정할 수 있음을 나타냅니다. (외부 SRCLR' ).

    1 1,4D 접두어 '594 R1 (외부 RCLR' )은 시프트 레지스터 섹션의 오른쪽에 있는 출력 레지스터를 재설정할 수 있습니다.

    '595 , EN 외부 OE'에서 출력 레지스터를 재설정할 수 없습니다. 그러나 EN tristate(역삼각형) 출력 버퍼를 활성화합니다.

    '594의 직각 삼각형 및 '595 내부 버퍼링을 나타냅니다. '594'595 출력 레지스터는 4로 표시된 대로 C4에 의해 클럭됩니다. 1,4D의 및 4D 각각.

    CD4094B는 3~15VDC입니다. 이전 74AHC594 장치를 대체할 수 있는 래칭 시프트 레지스터.

    시계 , C 1, SERIAL IN에서 데이터 이동 1에서 암시하는 바와 같이 1D 접두사 .

    C1의 /(오른쪽 화살표)로 표시된 오른쪽 시프트 레지스터(기호 본문의 왼쪽 절반)의 시계이기도 합니다. /(화살표) 시계 입력.

    스트로브 , C2 기호 본문 오른쪽에 있는 8비트 출력 레지스터의 클록입니다. 2 2DC2 출력 레지스터의 클록입니다.

    출력 래치의 역 삼각형은 출력이 삼중 상태임을 나타내며 EN3에 의해 활성화됩니다. .

    3 역삼각형과 3 앞에 EN3의 활성화(EN )는 3상태 출력을 제어하는 ​​것으로 이해됩니다. QS QS ' 시프트 레지스터 단계의 래치되지 않은 출력입니다.

    QS SERIAL IN으로 캐스케이드될 수 있음 후속 기기의

    실용적 응용

    직렬 입력, 병렬 출력 시프트 레지스터의 실제 적용은 마이크로프로세서에서 원격 패널 표시기로 데이터를 출력하는 것입니다.

    또는 직렬 형식 데이터를 허용하는 다른 원격 출력 장치입니다.

    원격 디스플레이가 추가된 병렬 입력, 직렬 출력 섹션에서 "원격 키패드가 있는 알람" 그림이 여기에서 반복됩니다.

    따라서 예를 들어 메인 알람 박스에 연결된 알람 루프의 상태를 표시할 수 있습니다.

    알람이 열린 창을 감지하면 원격 디스플레이에 직렬 데이터를 보내 알려줄 수 있습니다.

    키패드와 디스플레이는 모두 메인 알람 박스와 별개로 동일한 원격 인클로저에 포함될 가능성이 높습니다. 그러나 이 섹션에서는 디스플레이 패널만 살펴보겠습니다.

    디스플레이가 알람과 동일한 보드에 있는 경우 전원 및 접지를 위한 2개의 와이어와 함께 8개의 LED에 8개의 와이어를 연결할 수 있습니다.

    이 8개의 와이어는 장기적으로 원격 패널에 훨씬 덜 바람직합니다. 시프트 레지스터를 사용하면 5개의 와이어(클럭, 직렬 데이터, 스트로브, 전원 및 접지)만 실행하면 됩니다.

    패널이 메인 보드에서 불과 몇 인치 떨어져 있는 경우에도 연결 케이블의 와이어 수를 줄이는 것이 안정성을 향상시키는 것이 바람직할 수 있습니다.

    또한 우리는 때때로 마이크로프로세서에서 사용 가능한 대부분의 핀을 사용하고 출력 수를 확장하기 위해 직렬 기술을 사용해야 합니다.

    디지털-아날로그 변환기와 같은 일부 집적 회로 출력 장치에는 마이크로프로세서에서 데이터를 수신하기 위한 직렬 입력, 병렬 출력 시프트 레지스터가 포함되어 있습니다.

    여기에 설명된 기술은 해당 부분에 적용할 수 있습니다.

    우리는 출력 레지스터가 있는 74AHC594 직렬 입력, 병렬 출력 시프트 레지스터를 선택했습니다. 하지만 추가 핀이 필요합니다. RCLK , 시프트된 데이터를 출력 핀에 병렬로 로드합니다.

    이 추가 핀은 데이터가 이동하는 동안 출력이 변경되는 것을 방지합니다. 이것은 LED의 경우 그다지 문제가 되지 않습니다. 그러나 릴레이, 밸브, 모터 등을 구동하면 문제가 됩니다.

    마이크로프로세서 내에서 실행되는 코드는 출력할 데이터의 8비트로 시작합니다. 1비트는 "직렬 데이터 출력" 핀에서 출력되어 SER을 구동합니다. 리모컨 74AHC594.

    다음으로 마이크로프로세서는 "Shift clock"에서 low에서 high로의 전환을 생성하여 SRCLK를 구동합니다. '595 시프트 레지스터.

    이 양의 클록은 SER에서 데이터 비트를 이동합니다. 첫 번째 시프트 레지스터 단계의 "D"에서 "Q"로.

    이것은 QA에 영향을 미치지 않습니다. 이 때 LED는 시프트 레지스터와 출력 핀 사이의 내부 8비트 출력 레지스터(QA QH ).

    마지막으로 "Shift clock"은 마이크로프로세서에 의해 다시 낮게 당겨집니다. 이것으로 1비트의 '595'로의 이동이 완료됩니다.

    위의 절차를 7번 더 반복하여 마이크로프로세서에서 74AHC594 직렬 입력, 병렬 출력 시프트 레지스터로의 8비트 데이터 시프팅을 완료합니다.

    내부 '595 시프트 레지스터 내의 8비트 데이터를 출력으로 전송하려면 마이크로프로세서가 RCLK에서 로우에서 하이로의 전환을 생성해야 합니다. , 출력 레지스터 클럭.

    이것은 LED에 새로운 데이터를 적용합니다. RCLK 다음 8비트 데이터 전송을 예상하여 다시 로우로 당겨야 합니다.

    '595의 출력에 있는 데이터는 위의 두 단락의 프로세스가 새로운 8비트 데이터에 대해 반복될 때까지 유지됩니다.

    특히, 새로운 데이터는 LED에 영향을 미치지 않고 '595 내부 시프트 레지스터로 이동될 수 있습니다. LED는 RCLK 적용 시에만 새 데이터로 업데이트됩니다. 상승 에지.

    8개 이상의 LED를 구동해야 하는 경우 어떻게 해야 합니까? 다른 74AHC594 SER을 캐스케이드하기만 하면 됩니다. QH에 고정 ' 기존 시프터의.

    SRCLK 병렬 및 RCLK 다리. 마이크로프로세서는 RCLK를 생성하기 전에 16클럭으로 16비트 데이터를 전송해야 합니다. 두 장치에 모두 공급합니다.

    우리가 보여주는 개별 LED 표시기는 7-세그먼트 LED가 될 수 있습니다. 그러나 여러 7-세그먼트 숫자를 구동할 수 있는 LSI(Large Scale Integration) 장치가 있습니다.

    이 장치는 직렬 형식의 마이크로프로세서에서 데이터를 수신하여 LED를 다중화하여 핀보다 더 많은 LED 세그먼트를 구동합니다.

    관련 워크시트:

    <울>
  • 교대 근무자 워크시트

  • 산업기술

    1. 위상 이동
    2. 8진수 및 16진수를 10진수로 변환
    3. 10진수에서 변환
    4. 시프트 레지스터 소개
    5. C# 유형 변환
    6. 팬데믹이 3D 인쇄로의 전환을 가속화하고 있습니다
    7. C# - 유형 변환
    8. 판금용 화학막 변환 코팅
    9. 스타에서 델타로 및 델타에서 스타로의 변환. Y-Δ 변환
    10. 패시베이션 및 변환 코팅이란 무엇입니까 | CNCLATHING 표면 마무리 서비스