맨위로가기

예측 자리올림수 장치

"오늘의AI위키"는 AI 기술로 일관성 있고 체계적인 최신 지식을 제공하는 혁신 플랫폼입니다.
"오늘의AI위키"의 AI를 통해 더욱 풍부하고 폭넓은 지식 경험을 누리세요.

1. 개요

예측 자리올림수 장치는 가산기의 성능을 향상시키기 위해 사용되는 기술로, 특히 4비트, 16비트, 64비트 가산기에서 활용된다. 이 기술은 자리올림수 생성 및 전달 신호를 계산하여 각 비트의 자리올림수를 예측하며, 4비트 자리올림수 예측 가산기(CLA)를 결합하여 16비트 가산기를 구성하고, 이러한 16비트 가산기 여러 개를 조합하여 64비트 가산기를 만들 수 있다. 64비트 가산기와 같이 비트 수가 큰 경우, 자리올림수 예측을 2단계로 수행하여 성능을 더욱 향상시킬 수 있다.

더 읽어볼만한 페이지

  • 디지털 전자공학 - 트랜지스터-트랜지스터 논리
    트랜지스터-트랜지스터 논리(TTL)는 1961년 제임스 L. 부이에 의해 발명된 바이폴라 접합 트랜지스터 기반의 디지털 회로 기술로, 텍사스 인스트루먼츠의 7400 시리즈를 통해 널리 사용되었으며, 저렴한 비용으로 디지털 기술 발전에 기여했다.
  • 디지털 전자공학 - 플립플롭
    플립플롭은 1비트 이상의 정보를 저장하는 디지털 논리 회로로, 에클스-조던 트리거 회로에서 기원하여 SR, D, T, JK 등 다양한 유형으로 구현되며, 컴퓨터 기억 장치의 기본 구성 요소로 사용되지만 타이밍 요소에 민감하게 설계해야 한다.
  • 컴퓨터 산술 - IEEE 754
    IEEE 754는 부동소수점 숫자를 표현하고 처리하기 위한 국제 표준으로, 다양한 형식과 연산, 반올림 규칙, 예외 처리 등을 정의한다.
  • 컴퓨터 산술 - 1의 보수
    1의 보수는 이진수에서 양수는 일반적인 이진수로, 음수는 양수의 각 비트를 반전시켜 표현하며, 덧셈 시 자리올림수가 발생하면 결과값에 더해야 하고, 0을 중복 표현하는 단점으로 현대에는 2의 보수가 주로 사용된다.
예측 자리올림수 장치

2. 4비트 자리올림수 예측 가산기

캐리 예측(CLA)을 사용하는 4비트 덧셈기


각 비트의 입력 신호로부터 자리올림수 생성(generate)과 자리올림수 전달(propagate) 신호를 계산한다. 생성 신호와 전달 신호를 이용하여 각 비트의 자리올림수를 계산하는 논리식을 설명한다.

2. 1. 동작 원리



각 비트의 입력 신호로부터 자리올림수 생성(generate)과 자리올림수 전달(propagate) 신호를 계산한다. 생성 신호와 전달 신호를 이용하여 각 비트의 자리올림수를 계산하는 논리식을 설명한다.

3. 16비트 자리올림수 예측 가산기

4개의 4비트 CLA를 결합하여 16비트 가산기를 만들 수 있지만, LCU 형태의 추가적인 논리가 필요하다.[1] LCU는 4개의 CLA 각각으로부터 그룹 전파(P_G)와 그룹 생성(G_G)을 받는다.[1] 각 CLA 가산기에 대해 다음 식이 성립한다:[1]

:P_G = P_0 \cdot P_1 \cdot P_2 \cdot P_3

:G_G = G_3 + G_2 \cdot P_3 + G_1 \cdot P_2 \cdot P_3 + G_0 \cdot P_1 \cdot P_2 \cdot P_3

그런 다음 LCU는 각 CLA에 대한 자리올림수 입력을 생성한다.

P_i가 i번째 CLA에서 P_G이고, G_iG_G라고 가정하면, 출력 자리올림수 비트는 다음과 같다.

:C_{4} = G_0 + P_0 \cdot C_0

:C_{8} = G_4 + P_{4} \cdot C_{4}

:C_{12} = G_8 + P_{8} \cdot C_{8}

:C_{16} = G_{12} + P_{12} \cdot C_{12}

C_{4}C_{8}에, C_{8}C_{12}에, C_{12}C_{16}에 대입하면 확장된 방정식은 다음과 같다.

:C_{4} = G_0 + P_0 \cdot C_0

:C_{8} = G_4 + G_0 \cdot P_4 + C_0 \cdot P_0 \cdot P_4

:C_{12} = G_8 + G_4 \cdot P_8 + G_0 \cdot P_4 \cdot P_8 + C_0 \cdot P_0 \cdot P_4 \cdot P_8

:C_{16} = G_{12} + G_8 \cdot P_{12} + G_4 \cdot P_8 \cdot P_{12} + G_0 \cdot P_4 \cdot P_8 \cdot P_{12} + C_0 \cdot P_0 \cdot P_4 \cdot P_8 \cdot P_{12}

C_{4}는 두 번째 CLA에 대한 자리올림수 입력에 해당하고, C_{8}는 세 번째 CLA에 해당하며, C_{12}는 네 번째 CLA에 해당하고, C_{16}는 오버플로 자리올림수 비트에 해당한다.

또한 LCU는 자체 전파 및 생성을 계산할 수 있다.

:P_{LCU} = P_0 \cdot P_4 \cdot P_8 \cdot P_{12}

:G_{LCU} = G_{12} + G_8 \cdot P_{12} + G_4 \cdot P_8 \cdot P_{12} + G_0 \cdot P_4 \cdot P_8 \cdot P_{12}

:C_{16} = G_{LCU} + C_0 \cdot P_{LCU}

16비트 가산기 LCU

3. 1. 자리올림수 예측 장치 (LCU)

4개의 4비트 CLA를 결합하여 16비트 가산기를 만들 수 있지만, 추가적인 논리가 필요하다. 이 추가 논리가 자리올림수 예측 장치(Lookahead Carry Unit, LCU)이다.[1] LCU는 각 4개의 CLA로부터 그룹 전파(P_G)와 그룹 생성(G_G) 신호를 받아 각 CLA에 대한 자리올림수 입력을 생성한다.[1]

4비트 CLA 가산기에서 P_iPG이고 G_iGG라고 가정하면, 출력 자리올림 비트는 다음과 같이 표현된다.

:C_{4} = G_0 + P_0 \cdot C_0

:C_{8} = G_1 + P_1 \cdot C_{4}

:C_{12} = G_2 + P_2 \cdot C_{8}

:C_{16} = G_3 + P_3 \cdot C_{12}

위 식에서 C_{4}는 두 번째 CLA의 입력 자리올림수에, C_{8}는 세 번째 CLA에, C_{12}는 네 번째 CLA에 대응되며, C_{16}는 범람하는 자리올림 비트이다.

C_{4}C_{8}에, C_{8}C_{12}에, C_{12}C_{16}에 대입하여 확장하면 다음과 같다.

:C_{4} = G_0 + P_0 \cdot C_0

:C_{8} = G_1 + G_0 \cdot P_1 + C_0 \cdot P_0 \cdot P_1

:C_{12} = G_2 + G_1 \cdot P_2 + G_0 \cdot P_1 \cdot P_2 + C_0 \cdot P_0 \cdot P_1 \cdot P_2

:C_{16} = G_3 + G_2 \cdot P_3 + G_1 \cdot P_2 \cdot P_3 + G_0 \cdot P_1 \cdot P_2 \cdot P_3 + C_0 \cdot P_0 \cdot P_1 \cdot P_2 \cdot P_3

LCU는 자체적인 전파(P_{LCU}) 및 생성(G_{LCU})을 계산할 수 있다.

:P_{LCU} = P_0 \cdot P_1 \cdot P_2 \cdot P_3

:G_{LCU} = G_3 + G_2 \cdot P_3 + G_1 \cdot P_3 \cdot P_2 + G_0 \cdot P_3 \cdot P_2 \cdot P_1

4. 64비트 자리올림수 예측 가산기

4개의 자리올림수 예측 가산기(CLA)와 한 개의 예측 자리올림수 장치(LCU)를 조합하여 16비트 가산기를 만들고, 이러한 장치 4개를 다시 조합하여 64비트 가산기를 구성한다.

이때, 각 LCU에서 전파(P_{LCU})와 생성(G_{LCU}) 신호를 받아들이는 추가적인 (두 번째 레벨) LCU가 필요하다. 두 번째 레벨 LCU에서 생성된 4개의 자리올림수 출력은 첫 번째 레벨 LCU에 공급된다.

두 번째 레벨 LCU를 가진 64비트 가산기

4. 1. 2단계 자리올림수 예측

64비트 가산기와 같이 비트 수가 매우 큰 경우, 자리올림수 예측을 2단계로 수행하여 성능을 더욱 향상시킬 수 있다. 4개의 자리올림수 예측 가산기(CLA)와 한 개의 예측 자리올림수 장치(LCU)를 조합하여 16비트 가산기를 만들고, 이러한 장치 4개를 다시 조합하여 64비트 가산기를 구성한다.

이때, 각 LCU에서 전파(P_{LCU})와 생성(G_{LCU}) 신호를 받아들이는 추가적인 (두 번째 레벨) LCU가 필요하다. 두 번째 레벨 LCU에서 생성된 4개의 자리올림수 출력은 첫 번째 레벨 LCU에 공급된다.

5. 응용 분야

6. 참고 도서


  • 랜디 캐이츠 (1994년), 동시 동작하는 논리 설계. 밴저민/구밍 출판사, 249-256.


본 사이트는 AI가 위키백과와 뉴스 기사,정부 간행물,학술 논문등을 바탕으로 정보를 가공하여 제공하는 백과사전형 서비스입니다.
모든 문서는 AI에 의해 자동 생성되며, CC BY-SA 4.0 라이선스에 따라 이용할 수 있습니다.
하지만, 위키백과나 뉴스 기사 자체에 오류, 부정확한 정보, 또는 가짜 뉴스가 포함될 수 있으며, AI는 이러한 내용을 완벽하게 걸러내지 못할 수 있습니다.
따라서 제공되는 정보에 일부 오류나 편향이 있을 수 있으므로, 중요한 정보는 반드시 다른 출처를 통해 교차 검증하시기 바랍니다.

문의하기 : help@durumis.com