디지털 회로설계 - 고속 동작 곱셈기 설계
본 자료는 3페이지 의 미리보기를 제공합니다. 이미지를 클릭하여 주세요.
닫기
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
해당 자료는 3페이지 까지만 미리보기를 제공합니다.
3페이지 이후부터 다운로드 후 확인할 수 있습니다.

목차

1. 제목 : 고속 동작 곱셈기 설계

2. 목적

3. 목표 및 기준 설정

4. 합성 및 분석

5. 시험 및 평가

6. 논의 사항

7. 참고문헌

본문내용

4(9 downto 0) & "000000";
cla1 : CLA port map (partial_p1, partial_p2, num_zero, c_o1, ppt5);
cla2 : CLA port map (ppt5 , partial_p3, num_zero, c_o2, ppt6);
cla3 : CLA port map (ppt6 , partial_p4, num_zero, c_o3, output);
end mul_main;
5. 시험 및 평가
결과를 보기 위해 구성한 테스트 벤치 코드는 다음과 같다.
LIBRARY ieee;
USE ieee.std_logic_1164.ALL;
USE ieee.std_logic_unsigned.all;
USE ieee.numeric_std.ALL;
ENTITY tb_mul IS
END tb_mul;
ARCHITECTURE behavior OF tb_mul IS
COMPONENT multiplier
PORT(
A : IN std_logic_vector(7 downto 0);
B : IN std_logic_vector(7 downto 0);
output : OUT std_logic_vector(15 downto 0)
);
END COMPONENT;
--Inputs
signal A : std_logic_vector(7 downto 0) := (others => '0');
signal B : std_logic_vector(7 downto 0) := (others => '0');
--Outputs
signal output : std_logic_vector(15 downto 0);
BEGIN
uut: multiplier PORT MAP (
A => A,
B => B,
output => output
);
-- Stimulus process
process
begin
A <= "00000001";
B <= "00000101";
wait for 50ns;
A <= "10011010";
B <= "10100111";
wait for 50ns;
A <= "00110101";
B <= "10101001";
wait for 50ns;
A <= "00000000";
B <= "00000000";
wait;
end process;
END;
시뮬레이션 결과는 다음과 같다.
Delay를 구현하지 못하여 연산이 바로 수행되었다.
두 입력이 모두 양수일 때나, 하나는 양수이고 음수일 때에는 제대로 동작함을 알 수 있었다. (1*5=5, 53*(-87)=-4611) 그러나 두 수가 모두 음수일 경우 결과가 부정확하게 출력되었다.
6.논의 사항
(1) Booth 알고리즘과 일반 Shift-and-add 알고리즘의 차이점을 논하시오.
Shift-and-add 알고리즘은 말 그대로 연산 중 각 자리수의 partial products를 구하고 이를 right shift하여 모두 더해줌으로써 결과값을 구해내는 단순한 계산법이다. 이 때 partial products의 개수가 많기 때문에 연산에 소요되는 delay가 길어지며, 이 때 양수와 음수 혹은 음수 끼리의 곱을 제대로 계산할 수 없다는 단점이 있다.
이에 비해 Booth 알고리즘은 multiplier의 연속된 형태에 따라 partial product를 구하는 방식으로, multiplicand X와 multiplier Y는 의 관계를 가진다. 이 방법을 이용함으로써 총 partial products의 개수를 shift-and-add 방식에 비해 반으로 줄일 수 있기 때문에 연산 속도가 빨라지며, 2‘s complement number system을 적용시켜 양·음수 연산이 자유로워지기 때문에 유용하게 쓰인다.
(2) Booth 알고리즘으로 인한 연산시간의 단축 원인에 대해 설명하시오.
Booth 알고리즘을 사용하면 multiplier Y를 3-bit씩 묶어서 연산하기 때문에 partial products의 총 개수가 Shift-and-add 방식의 절반으로 줄어들게 된다. 따라서 더욱 빠른 계산을 시행할 수 있다.
7. 참고문헌
2009 서강대학교 전자공학과 디지털 회로 설계 황선영 교수님 강의 자료
McGraw-Hill, Fundamentals of Digital logice with VHDL design, Brown&Vranesic, 2/e
아진, 실습으로 배우는 VHDL, 이강/장경선, 증보판
http://asicfpga.com/site_upgrade/asicfpga/pds/dsp_pds_files/mul.ppt
  • 가격2,300
  • 페이지수9페이지
  • 등록일2013.08.08
  • 저작시기2013.8
  • 파일형식한글(hwp)
  • 자료번호#870047
본 자료는 최근 2주간 다운받은 회원이 없습니다.
청소해
다운로드 장바구니