공학 올립니다 디지털 회로설계 - 고속 동작 덧셈기 설계 다운받기
공학 올립니다 디지털 회로설계 - 고속 동작 덧셈기 설계 다운받기
공학 올립니다 디지털 회로설계 - 고속 동작 덧셈기 설계
[공학]디지털 회로설계 - 고속 동작 덧셈기 설계
1. 제목 : 고속 동작 덧셈기 설계
2. 목적
VHDL을 이용한 고속 동작 덧셈기의 설계를 통해 덧셈 과정에 있어서 carry의 역할을 이해하고 carry 처리 방법에 따른 여러 가지 덧셈기 구조들을 익히며, VHDL의 코딩 방법을 익히고 시뮬레이션 툴의 사용법을 익힌다.
3. 목표 및 기준 설정
- 설계 목표 : 빠른 carry 처리를 통해 고속 연산을 가능하게 하는 Carry Lookahead Adder와 Carry Select Adder를 설계한다. 이때 덧셈기는 16-bit의 입력과 출력을 가지도록 한다.
- 기준 설정 : 이론과 목적에 맞는 올바른 설계가 이루어지도록 하고, delay 및 기타 요인에 의해 오차가 발생하지 않도록 한다.
4. 합성 및 분석
1) 덧셈기 분석
① CLA (Carry Lookahead Adder)
CLA의 block diagram
CLA(Carry Lookahead Adder)는 Ripple Carry Adder에서 carry propagation에 의해 delay가 발생하는 문제점을 보완하기 위해 설계되었다.
CLA는 각 bit의 덧셈 연산을 수행하는 Full adder와 덧셈 과정에서 발생하는 carry만을 미리 계산하는 Carry-lookahead logic block으로 구성되어 있다. 4개의 FA가 4-bit크기의 입력 A(A3A2A1A0)와 B(B3B2B1B0)의 각 자리 bit들을 더해 각각의 sum 값을 출력하고, carry lookahead logic에는 최종 carry-out인 를 출력하기 위한 값들이 입력된다. 이 값들은 각각 generation function과 propagation function으로 불리며, 각 bit의 곱과 합을 나타낸다.
최종 Carry 는 아래와 같이 나타낼 수 있다.
이때 (generation function) 항과 (propagation) 항을 각각 ,로 놓으면 식은 아래와 같이 정리된다.
여기서 는 와 가 모두 1일 경우에만 1이 되는데, 이 경우 의 값에 상관없이 가 1이 된다. 따라서 가 다음 stage의 carry 생성을 보장하기 때문에 를 generation function이라고 한다. 는 와 중 하나라도 1의 값을 가지면 1이 된다. 이 때 이면 carry가 다음 stage로 전달될 수 있다. 이렇게 는 carry를 전파해주는 역할을 하기 때문에 를 propagation function이라고 한다.
위의 식을 에 대해 동일한 방법으로 확장하면 다음과 같은 식을 얻는다.
이를 계속 적용하면 최종 carry-out 를 초기 carry-in인 에 관한 식으로 정리할 수 있다.
이 식은 가 지연되지 않고 먼저 계산될 수 있는 two-level의 AND-OR 회로로 표현될 수 있음을 보여준다. 이러한 연산을 통해 carry를 미리 예측(lookahead)함으로써 carry의 전달에 의한 delay를 효율적으로 줄일 수 있다.
② CSA (Carry Select Adder)
8-bit CSA(Carry Select Adder)의 block diagram
8-bit CSA는 stage 1의 4-bit adder 한 개와 stage 2의 4-bit adder 2개, 총 3개의 4-bit Adder로 구성되어 있다. Stage 1의 adder에서 두 4-bit 입력 와 의 덧셈을 수행하여 더해진 출력값 와 carry-out 를 출력한다. 이 때 는 stage 2의 mux의 select signal로 인가된다. Stage 2에 있는 두 개의 adder는 똑같이 두 4-bit 입력 와 를 갖지만, 각각 carry-in을 0과 1로 입력받고 덧셈을 수행한다. 두 adder에서 출력된 sum 과 는 mux로 입력되며, mux의 select signal이 0이면 carry-in=0일 때의 sum을, select signal이 1이면 carry-in=1일 때의 sum을 출력하여 연산을 끝낸다.
Stage 2의 두 adder에서 발생한 2개의 carry-out은 OR gate와 NAND gate로 구성된 compound gate에 와 함께 입력되어, 가 0이면 0의 carry-in을 갖는 adder의 carry out을, 가 1이면 1의 carry-in을 갖는 adder의 carry-out을 최종 carry out 로 출력한다. Carry select logic은 mux로도 구현이 가능하지만 compound gate로 구현하는 것이 면적을 더 적게 차지하고 delay가 작기 때문에 경제적이다.
2)설계
4-bit CLA를 설계한 후, 이를 블록화 시켜 16-bit CLA를 설계하였다. 이를 토대로 CSA를 설계하였다.
① CLA(4-bit)
library ieee;
use ieee.std_logic_1164.all;
entity cla_4bit is
port( da,db : in std_logic_vector (3 downto 0);
dc_0 : in std_logic;
ds : out std_logic_vector (3 downto 0);
dc_4 : out std_logic
);
end cla_4bit;
architecture ay of cla_4bit is
signal Ci : std_logic_vector (4 downto 0);
signal Pi,Gi : std_logic_vector (3 downto 0);
begin
Ci(0)`=dc_0;
Gi `= da(3 downto 0) and db(3 downto 0) after 1ns;
Pi `= da(3 downto 0) xor db(3 downto 0) after 1ns;
Ci(1)`=
자료출처 : http://www.ALLReport.co.kr/search/Detail.asp?pk=11077528&sid=sanghyun7776&key=
[문서정보]
문서분량 : 15 Page
파일종류 : HWP 파일
자료제목 : 공학 올립니다 디지털 회로설계 - 고속 동작 덧셈기 설계
파일이름 : [공학]디지털 회로설계 - 고속 동작 덧셈기 설계.hwp
키워드 : 공학,디지털,회로설계,고속,동작,덧셈기,설계,올립니다
자료No(pk) : 11077528
공학 올립니다 디지털 회로설계 - 고속 동작 덧셈기 설계
[공학]디지털 회로설계 - 고속 동작 덧셈기 설계
1. 제목 : 고속 동작 덧셈기 설계
2. 목적
VHDL을 이용한 고속 동작 덧셈기의 설계를 통해 덧셈 과정에 있어서 carry의 역할을 이해하고 carry 처리 방법에 따른 여러 가지 덧셈기 구조들을 익히며, VHDL의 코딩 방법을 익히고 시뮬레이션 툴의 사용법을 익힌다.
3. 목표 및 기준 설정
- 설계 목표 : 빠른 carry 처리를 통해 고속 연산을 가능하게 하는 Carry Lookahead Adder와 Carry Select Adder를 설계한다. 이때 덧셈기는 16-bit의 입력과 출력을 가지도록 한다.
- 기준 설정 : 이론과 목적에 맞는 올바른 설계가 이루어지도록 하고, delay 및 기타 요인에 의해 오차가 발생하지 않도록 한다.
4. 합성 및 분석
1) 덧셈기 분석
① CLA (Carry Lookahead Adder)
CLA의 block diagram
CLA(Carry Lookahead Adder)는 Ripple Carry Adder에서 carry propagation에 의해 delay가 발생하는 문제점을 보완하기 위해 설계되었다.
CLA는 각 bit의 덧셈 연산을 수행하는 Full adder와 덧셈 과정에서 발생하는 carry만을 미리 계산하는 Carry-lookahead logic block으로 구성되어 있다. 4개의 FA가 4-bit크기의 입력 A(A3A2A1A0)와 B(B3B2B1B0)의 각 자리 bit들을 더해 각각의 sum 값을 출력하고, carry lookahead logic에는 최종 carry-out인 를 출력하기 위한 값들이 입력된다. 이 값들은 각각 generation function과 propagation function으로 불리며, 각 bit의 곱과 합을 나타낸다.
최종 Carry 는 아래와 같이 나타낼 수 있다.
이때 (generation function) 항과 (propagation) 항을 각각 ,로 놓으면 식은 아래와 같이 정리된다.
여기서 는 와 가 모두 1일 경우에만 1이 되는데, 이 경우 의 값에 상관없이 가 1이 된다. 따라서 가 다음 stage의 carry 생성을 보장하기 때문에 를 generation function이라고 한다. 는 와 중 하나라도 1의 값을 가지면 1이 된다. 이 때 이면 carry가 다음 stage로 전달될 수 있다. 이렇게 는 carry를 전파해주는 역할을 하기 때문에 를 propagation function이라고 한다.
위의 식을 에 대해 동일한 방법으로 확장하면 다음과 같은 식을 얻는다.
이를 계속 적용하면 최종 carry-out 를 초기 carry-in인 에 관한 식으로 정리할 수 있다.
이 식은 가 지연되지 않고 먼저 계산될 수 있는 two-level의 AND-OR 회로로 표현될 수 있음을 보여준다. 이러한 연산을 통해 carry를 미리 예측(lookahead)함으로써 carry의 전달에 의한 delay를 효율적으로 줄일 수 있다.
② CSA (Carry Select Adder)
8-bit CSA(Carry Select Adder)의 block diagram
8-bit CSA는 stage 1의 4-bit adder 한 개와 stage 2의 4-bit adder 2개, 총 3개의 4-bit Adder로 구성되어 있다. Stage 1의 adder에서 두 4-bit 입력 와 의 덧셈을 수행하여 더해진 출력값 와 carry-out 를 출력한다. 이 때 는 stage 2의 mux의 select signal로 인가된다. Stage 2에 있는 두 개의 adder는 똑같이 두 4-bit 입력 와 를 갖지만, 각각 carry-in을 0과 1로 입력받고 덧셈을 수행한다. 두 adder에서 출력된 sum 과 는 mux로 입력되며, mux의 select signal이 0이면 carry-in=0일 때의 sum을, select signal이 1이면 carry-in=1일 때의 sum을 출력하여 연산을 끝낸다.
Stage 2의 두 adder에서 발생한 2개의 carry-out은 OR gate와 NAND gate로 구성된 compound gate에 와 함께 입력되어, 가 0이면 0의 carry-in을 갖는 adder의 carry out을, 가 1이면 1의 carry-in을 갖는 adder의 carry-out을 최종 carry out 로 출력한다. Carry select logic은 mux로도 구현이 가능하지만 compound gate로 구현하는 것이 면적을 더 적게 차지하고 delay가 작기 때문에 경제적이다.
2)설계
4-bit CLA를 설계한 후, 이를 블록화 시켜 16-bit CLA를 설계하였다. 이를 토대로 CSA를 설계하였다.
① CLA(4-bit)
library ieee;
use ieee.std_logic_1164.all;
entity cla_4bit is
port( da,db : in std_logic_vector (3 downto 0);
dc_0 : in std_logic;
ds : out std_logic_vector (3 downto 0);
dc_4 : out std_logic
);
end cla_4bit;
architecture ay of cla_4bit is
signal Ci : std_logic_vector (4 downto 0);
signal Pi,Gi : std_logic_vector (3 downto 0);
begin
Ci(0)`=dc_0;
Gi `= da(3 downto 0) and db(3 downto 0) after 1ns;
Pi `= da(3 downto 0) xor db(3 downto 0) after 1ns;
Ci(1)`=
자료출처 : http://www.ALLReport.co.kr/search/Detail.asp?pk=11077528&sid=sanghyun7776&key=
[문서정보]
문서분량 : 15 Page
파일종류 : HWP 파일
자료제목 : 공학 올립니다 디지털 회로설계 - 고속 동작 덧셈기 설계
파일이름 : [공학]디지털 회로설계 - 고속 동작 덧셈기 설계.hwp
키워드 : 공학,디지털,회로설계,고속,동작,덧셈기,설계,올립니다
자료No(pk) : 11077528
댓글
댓글 쓰기