목차
1. 실험 결과
(1) Verilog 코드
(2) wave form
(3) 진리표
(4) Delay time
2. 결과 분석 및 토의
(1) Verilog 코드
(2) wave form
(3) 진리표
(4) Delay time
2. 결과 분석 및 토의
본문내용
i = P(3)i P(3)i-4 (i = 7)
그림 1에서 보는 것과 같이 CLTA에서는 두 가지 종류의 셀로 구성된다.
즉, 첫 번째 레벨에서 사용되는 회로와 두 번째부터 네 번째 레벨에서 사용되
는 회로의 두 가지로 구성된다. 이들 회로의 배치는 type- A의 회로를 각 비트 위치에 일렬로 배치한 후, 이들 회로 위에 type-B의 회로들을 각각 배치한 형태의 구조로 만들 수 있으므로 리플 캐리 가산기에 비해 2∼3배 정도의 크기로 구현할 수 있다.
그림 1. 캐리 예측 가산기
2) 조건부 가산기 (CSA : Conditional Sum Adder )
빠른 덧셈을 위한 또 하나의 방법은 조건부 덧셈기를 사용하는 것이다. 이
방법의 기본적인 원리는 주어진 오퍼랜드 k 비트의 그룹에 대하여 두 세트
(set)의 출력을 만들어 내는 것이다. 각 세트는 k 비트의 합과 출력 캐리를 만들어 낸다. 하나의 세트는 입력되는 캐리를 0 으로 가정하고 나머지 세트는 입력되는 캐리를 1 로 가정한 것이다. 입력되는 캐리의 값이 결정되면 캐리의 전달에 의한 지연 없이 한 출력 세트를 선택한다. 이러한 방식을 n 비트 오퍼랜드에서 n 비트에 적용하는 것이 아니라 이를 나누어 작은 그룹으로 만든 후 이를 적용하게 된다. 각 그룹은 입력되는 캐리에 관계없이 계산되어 두 세트의 계산한 뒤 정확한 캐리가 계산되면 이 두 세트중 한 세트를 선택하면 된다. 그러므로 이 그룹을 작게 만들수록 속도를 증가시킬 수 있다. 일반적으로 n 비트의 연산은 n / 2 비트의 두 그룹으로 나누고 이것을 다시 n / 4 비트의 네 그룹으로 나눈다. 이러한 과정을 그룹의 트리가 1이 될 때까지 계속 적용하게 된다. 그러므로 최종연산까지 필요한 연산의 단계의 수는 R = log 2n이 되며 첫 번째 단계에서는 1 비트 단위로 두 번째 단계에서는 2 비트를 하나의 그룹으로 다루게 된다.
리플 캐리 가산기(RCA : Ripple carry adder )의 수행시간은 O( n)이고, 캐리 예측가산기 (CLA : Carry look ahead adder )는 O( log n)이 된다. CLA는 carry 연산을 개선함으로써, 덧셈 회로의 속도를 향상시킨 것이다. 따라서 carry의 계산 속도 개선이 전체 덧셈회로의 속도 개선과 직결된다. 디지털 회로에서 중요한 위치를 차지하고 있는 덧셈 회로의 속도 개선을 위해 여러 carry 계산 방법들이 제안되었다.
그림 1에서 보는 것과 같이 CLTA에서는 두 가지 종류의 셀로 구성된다.
즉, 첫 번째 레벨에서 사용되는 회로와 두 번째부터 네 번째 레벨에서 사용되
는 회로의 두 가지로 구성된다. 이들 회로의 배치는 type- A의 회로를 각 비트 위치에 일렬로 배치한 후, 이들 회로 위에 type-B의 회로들을 각각 배치한 형태의 구조로 만들 수 있으므로 리플 캐리 가산기에 비해 2∼3배 정도의 크기로 구현할 수 있다.
그림 1. 캐리 예측 가산기
2) 조건부 가산기 (CSA : Conditional Sum Adder )
빠른 덧셈을 위한 또 하나의 방법은 조건부 덧셈기를 사용하는 것이다. 이
방법의 기본적인 원리는 주어진 오퍼랜드 k 비트의 그룹에 대하여 두 세트
(set)의 출력을 만들어 내는 것이다. 각 세트는 k 비트의 합과 출력 캐리를 만들어 낸다. 하나의 세트는 입력되는 캐리를 0 으로 가정하고 나머지 세트는 입력되는 캐리를 1 로 가정한 것이다. 입력되는 캐리의 값이 결정되면 캐리의 전달에 의한 지연 없이 한 출력 세트를 선택한다. 이러한 방식을 n 비트 오퍼랜드에서 n 비트에 적용하는 것이 아니라 이를 나누어 작은 그룹으로 만든 후 이를 적용하게 된다. 각 그룹은 입력되는 캐리에 관계없이 계산되어 두 세트의 계산한 뒤 정확한 캐리가 계산되면 이 두 세트중 한 세트를 선택하면 된다. 그러므로 이 그룹을 작게 만들수록 속도를 증가시킬 수 있다. 일반적으로 n 비트의 연산은 n / 2 비트의 두 그룹으로 나누고 이것을 다시 n / 4 비트의 네 그룹으로 나눈다. 이러한 과정을 그룹의 트리가 1이 될 때까지 계속 적용하게 된다. 그러므로 최종연산까지 필요한 연산의 단계의 수는 R = log 2n이 되며 첫 번째 단계에서는 1 비트 단위로 두 번째 단계에서는 2 비트를 하나의 그룹으로 다루게 된다.
리플 캐리 가산기(RCA : Ripple carry adder )의 수행시간은 O( n)이고, 캐리 예측가산기 (CLA : Carry look ahead adder )는 O( log n)이 된다. CLA는 carry 연산을 개선함으로써, 덧셈 회로의 속도를 향상시킨 것이다. 따라서 carry의 계산 속도 개선이 전체 덧셈회로의 속도 개선과 직결된다. 디지털 회로에서 중요한 위치를 차지하고 있는 덧셈 회로의 속도 개선을 위해 여러 carry 계산 방법들이 제안되었다.