이것은 매우 복잡한 답을 가진 간단한 질문입니다.
먼저, 일부 배경.
실제 VLSI 설계는 끊임없이 변화하는 균형을 유지하는 매우 기술적 인 분야입니다. 회로가 답을 계산하는 데 걸리는 시간이 유일한 중요한 요소는 아닙니다. 또한 전력 소모 및 물리적 영역과 함께 설계중인 회로가 실제로 아날로그임을 나타내는 여러 가지 요소가 있습니다 (예 : 와이어 저항, 기생 용량). 이들 모두는 실제 회로에서 중요하며 선택한 설계에 영향을 줄 수 있습니다.
둘째, 프로젝트의 전체 수명주기를 고려해야합니다. VLSI 구현에 적합한 가산기는 FPGA 구현에 적합하지 않을 수 있습니다. 디자인이 FPGA에서 테스트되는 단계를 거칠 경우 그림을 얻을 수 있습니다.
셋째, 모든 가산기가 동일하지는 않습니다. 일반적인 CPU에는 다른 작업을 수행하는 많은 가산기가 있습니다. 아마도 여러 정수 ALU, 부동 소수점 가수 가산기, 주소 계산을 수행하는 가산기, 분기 대상을 계산하는 가산기 등이 있습니다. 그것은 현대 곱셈 장치에서 발견되는 캐리 저장 가산기를 세지 않습니다. 각각 고유 한 특성과 제약이 있습니다.
예를 들어, 분기 대상 계산에는 일반적으로 전체 단어에 작은 상수를 추가하는 것이 포함되는데, 이는 두 개의 전체 단어를 함께 추가하는 것과 다른 가산기 설계를 제안합니다. 마찬가지로 부동 소수점 추가에는 사이클보다 적은 추가 후 반올림 단계가 필요하므로 추가주기를 완료하기 위해 나머지주기를 훔칠 수없는 이유는 없습니다.
마지막으로, 아마도 가장 중요한 것은, 빅 플레이어 (예 : 인텔, AMD, 엔비디아)는 논문 및 / 또는 특허를 얻을 수 없다고 생각하지 않는 한 명백한 이유로 낮은 수준의 구현 세부 사항에 대해 상당히 긴밀한 관계를 맺고 있습니다. 그럼에도 불구하고 종종 리버스 엔지니어링없이 실제로 무엇을했는지 확신 할 수 없습니다.
우리가 알고있는 것이 몇 가지 있습니다.
꼭 알아야 할 것은 캐리-룩어 헤드 (carry-lookahead) 방법이 빌딩 블록이며 반드시 그 자체가 아니라는 것입니다. 여기에 비유가있을 수 있습니다.
알고리즘 클래스에 대해 생각한다면 빠른 정렬, 병합 정렬, 삽입 정렬 등과 같은 정렬 알고리즘을 많이 배웠을 것입니다. 실제 환경에서 정렬이 성능 병목 현상이면 적절한 엔지니어는이를 "실제"정렬을 구성 할 수있는 기본 빌딩 블록으로 생각합니다.
예를 들어 GNU C ++ 표준 라이브러리의 정렬 알고리즘은 간격이 충분히 작아지면 삽입 정렬을 사용하여 빠른 정렬을 사용합니다. 그러나 몇 번의 통과 후에 빠른 정렬 분할이 병리학 적 동작에 도달 한 것처럼 보이면 힙 정렬로 돌아갑니다. 그것은 하나의 산업 강도 정렬을 만드는 세 가지 다른 정렬 알고리즘입니다.
가산기 회로도 마찬가지입니다. 예를 들어, 펜티엄 4 정수 단위는 Kogge-Stone과 Brent-Kung이 혼합 된 Han-Carlson 가산기를 사용하는 것으로 알려져 있습니다. (Han-Carlson은 전파 지연과 다이 영역 간의 절충점에서 전력 효율이 높기 때문에 "스위트 스폿"이기 때문에 특히 흥미 롭습니다.) 종종 여러 가지 방법을 혼합하여 사용하는 것이 좋습니다.
"순수한"캐리 미어 헤드 가산기는 수작업으로 설계 할 때 수퍼 스칼라가없는 최신 하이 엔드 CPU와 같이 합성 된 회로 (예 : Verilog "+"연산자를 Cadence 또는 Synopsys에 공급하는 경우)에서 여전히 표준입니다. 비 연속 실행 엔진은 정수 단위에 대해 약간 다른 디자인으로 이동하는 것 같습니다.
투기 가산기는 전파 지연이 극히 낮지 만 일부 시간 동안 만 제대로 작동하며 (시간의 95 %가 일반적 임) 투기 가산기가 정확한 결과를 반환하는지 여부를 아주 작은 논리로 알 수 있습니다. 따라서 아이디어는 투기 적 덧셈과 캐리 룩어 헤드 덧셈의 절반을 한 사이클로 동시에 수행하는 것입니다. 추론 가산기가 정답을 반환하면 지침이 수행됩니다. 그렇지 않으면 파이프 라인을 정지시키고 정확한 추가의 나머지 절반을 수행하십시오.
느린 경로에는 두 번의주기가 걸리므로 설계자는 일반적인 용도로는 속도가 느리더라도 더 많은 공간과 전력 효율적인 방법을 사용할 수 있습니다.