• 제목/요약/키워드: 부동 소수점 곱셈기

검색결과 25건 처리시간 0.032초

FPGA를 위한 32비트 부동소수점 곱셈기 설계 (Design of 32-bit Floating Point Multiplier for FPGA)

  • ;김대익
    • 한국전자통신학회논문지
    • /
    • 제19권2호
    • /
    • pp.409-416
    • /
    • 2024
  • 빠른 고속 데이터 신호 처리 및 논리 연산을 위한 부동 소수점 연산 요구 사항이 확대됨에 따라 부동 소수점 연산 장치의 속도는 시스템 작동에 영향을 미치는 핵심 요소이다. 본 논문에서는 다양한 부동소수점 곱셈기 방식의 성능 특성을 연구하고, 캐리와 합의 형태로 부분 곱을 압축한 다음, 최종 결과를 얻기 위해 캐리 미리 보기 가산기를 사용한다. Intel Quartus II CAD 툴을 이용하여 Verilog HDL로 부동소수점 곱셈기를 기술하고 성능 평가를 하였다. 설계된 부동소수점 곱셈기는 면적, 속도 및 전력 소비에 대해 분석 및 비교하였다. 월러스 트리를 사용한 수정 부스 인코딩 방식의 FMAX는 33.96Mhz로 부스 인코딩보다 2.04배, 수정 부스 인코딩보다 1.62배, 월러스 트리를 사용한 부스 인코딩보다 1.04배 빠르다. 또한, 수정 부스 인코딩에 비해 월러스 트리를 이용한 수정 부스 인코딩 방식의 면적은 24.88% 감소하고, 전력소모도 2.5% 감소하였다.

고성능 부동 소수점 연산기에 대한 연구 (A Study on High Performances Floating Point Unit)

  • 박우찬;한탁돈
    • 한국정보처리학회논문지
    • /
    • 제4권11호
    • /
    • pp.2861-2873
    • /
    • 1997
  • 부동 소수점 연산기는 고성능 컴퓨터에서 필수적이며, 최근 대부분의 고성능의 컴퓨터에서는 고성능의 부동 소수점 연산기가 내장되고 있는 추세이다. 부동 소수점 연산이 고속화 되면서 부동 소수점 연산기에서 한개의 단계를 차지하는 반올림 단계가 전체 부동 소수점 연산에 큰 영향을 미친다. 반올림 단계에서는 별도의 고속 가산기를 필요로하여 많은 처리 시간과 칩 면적을 차지하기 때문이다. 본 연구는 고성능 부동 소수점 연산기의 근 간을 이루는 부동 소수점 덧셈/뺄셈기, 곱셈기, 나눗셈기의 처리 알고리즘을 살펴보고, 이를 분석하여 새로운 반올림 처리 알고리즘을 갖는 연산기를 제안하였다. 제안된 부동 소수점 연산기들은 반올림 처리를 위한 별도의 시간을 요하지 않고, 반올림단계를 위한 가산기나 증가기를 필요로 하지 않는다. 따라서, 제안하는 부동 소수점 연산기들은 성능면이나 차지 면적 면에서 모두 효율적이다.

  • PDF

모바일 3차원 그래픽 텍스처 매핑에 효율적인 새로운 유동형 고정 소수점 수 포맷 (A new efficient format of dynamic fixed-point number for texture mapping in mobile 3D graphics)

  • 김남석;한정현
    • 한국정보과학회:학술대회논문집
    • /
    • 한국정보과학회 2006년도 가을 학술발표논문집 Vol.33 No.2 (A)
    • /
    • pp.135-138
    • /
    • 2006
  • 본 논문에서는 텍스처 매핑을 처리하기 위한 텍스처 유닛 하드웨어 설계에 효율적인 새로운 유동형 소수점 포맷을 제안한다. 기존 고정 소수점 포맷은 하드웨어가 간단한 반면 고품질 텍스처 처리를 수행할 경우 오버플로우/언더플로우가 발생하며 부동 소수점 포맷은 이를 해결할 수 있으나 하드웨어가 복잡하다. 제안한 방식은 오버플로우/언더플로우를 해결하면서 부동소수점보다 하드웨어 크기를 줄여서 본 포맷을 적용한 가산기는 부동소수점보다 26% 작으며 곱셈기는 고정/부동 소수점보다 절반 이상으로 작다. 따라서 제안한 포맷은 100Mhz 이상의 빠른 동작이 가능하며 모바일 3차원 그래픽 가속기의 텍스처 유닛 설계에 효과적이다.

  • PDF

3D 그래픽 Geometry Engine을 위한 부동소수점 연산기의 설계 (Design of a Floating Point Unit for 3D Graphics Geometry Engine)

  • 김명환;오민석;이광엽;김원종;조한진
    • 대한전자공학회논문지SD
    • /
    • 제42권10호
    • /
    • pp.55-64
    • /
    • 2005
  • 본 논문에서는 실시간 3D 가속을 효과적으로 하기 위해 기하학 처리 과정에 적합한 부동 소수점 연산기를 설계하였다. 설계한 부동 소수점 연산기는 IEEE-754 단정도 형식을 지원하도록 하여 기하학 처리에 적합하게 하였고 설계한 부동 소수점 연산기는 Xilinx-Vertex2에서 부동소수점 덧셈/곱셈기는 100 MHz, 부동소수점 NR 역수 계산기는 120 MHz, 부동 소수점 멱승기는 200 MHz, 부동 소수점 역 제곱근 연산기는 120 MHz의 동작 주파수를 각각 확인 하였다. 또한 설계된 부동소수점 연산기를 이용해 실제 기하학 프로세서를 구현하여 실제 3B 데이터 처리를 확인하였다.

오차 교정 K차 골드스미트 부동소수점 나눗셈 (Error Corrected K'th order Goldschmidt's Floating Point Number Division)

  • 조경연
    • 한국정보통신학회논문지
    • /
    • 제19권10호
    • /
    • pp.2341-2349
    • /
    • 2015
  • 부동소수점 나눗셈에서 많이 사용하는 골드스미트 부동소수점 나눗셈 알고리즘은 한 회 반복에 두 번의 곱셈을 수행한다. 본 논문에서는 한 회 반복에 K 번 곱셈을 수행하는 가칭 오차 교정 K차 골드스미트 부동소수점 나눗셈 알고리즘을 제안한다. 본 논문에서 제안한 알고리즘은 입력 값에 따라서 곱셈 횟수가 다르므로, 평균 곱셈 횟수를 계산하는 방식을 유도하고, 여러 크기의 근사 역수 테이블에서 단정도실수 및 배정도실수의 나눗셈 계산에 필요한 평균 곱셈 횟수를 계산한다. 또한 한 번의 곱셈과 판정으로 나눗셈 결과를 보정하는 알고리즘을 제안한다. 본 논문에서 제안한 알고리즘은 오차가 일정한 값보다 작아질 때까지만 반복 연산을 수행하므로 나눗셈 계산기의 성능을 높일 수 있다. 또한 최적의 근사 테이블을 구성할 수 있다.

모바일 그래픽스 응용을 위한 부동소수점 승산기의 설계 (Design of Floating-Point Multiplier for Mobile Graphics Application)

  • 최병윤
    • 한국정보통신학회논문지
    • /
    • 제12권3호
    • /
    • pp.547-554
    • /
    • 2008
  • 본 논문에서는 2단 파이프라인 구조의 부동 소수점 승산기 회로를 설계하였다. 부동 소수점 승산기는 3차원 그래픽 API인 OpenGL과 Direct3D를 위한 단일 정밀도 곱셈 연산을 지원하며, 포화 연산, 면적 효율적인 점착(sticky) 비트 발생기 및 플래그 프리픽스 가산기를 결합하여, 면적 효율적이며 적은 파이프라인 지연 구조를 갖는다. 설계된 회로는 $0.13{\mu}m$ CMOS 표준 셀을 사용하여 합성 한 결과 약 4-ns의 지연시 간을 갖고 있으며, 약 7,500개로 구성된다. 설계된 부동 소수점 승산기의 최대 연산 성능은 약 250 MFLOPS이므로, 3차원 모바일 그래픽 분야에 효율적으로 적용 가능하다.

곱셈기를 이용한 정확한 부동소수점 제곱근 계산기 (An exact floating point square root calculator using multiplier)

  • 조경연
    • 한국정보통신학회논문지
    • /
    • 제13권8호
    • /
    • pp.1593-1600
    • /
    • 2009
  • 부동소수점 제곱근 연산은 곱셈을 반복하여 근사값을 계산하는 뉴턴-랍손 알고리즘 및 골드스미트 알고리즘과 뺄셈을 반복하여 정확한 간을 계산하는 SRT 알고리즘이 있다. 본 논문에서는 곱셈기를 사용하여 정확한 값을 계산하는 제곱근 알고리즘을 제안한다. 본 논문에서는 뉴턴-랍손 알고리즘을 이용하여 근사 역제곱근을 구하고, 이의 오차를 줄이면서 제곱근을 구하는 알고리즘과 계산된 제곱근을 보정하는 알고리즘을 제안한다. 제안한 알고리즘은 단정도 실수에서는 전수 조사를 통해서, 배정도 실수에서는 10억 개의 무작위 수를 계산하여 모두 정확한 값을 얻었다. 본 논문에서 제안한 알고리즘은 곱셈기만을 사용하므로 별도의 하드웨어가 필요하지 않다. 따라서 실장제어용기기, 휴대용기기 등 정확한 제곱근 연산을 요구하는 분야에서 사용될 수 있다.

가변 시간 골드스미트 부동소수점 나눗셈기 (A Variable Latency Goldschmidt's Floating Point Number Divider)

  • 김성기;송홍복;조경연
    • 한국정보통신학회논문지
    • /
    • 제9권2호
    • /
    • pp.380-389
    • /
    • 2005
  • 부동소수점 나눗셈에서 많이 사용하는 골드스미트 나눗셈 알고리즘은 일정한 횟수의 곱셈을 반복한다. 본 논문에서는 오차가 정해진 값보다 작아질 때까지 곱셈을 반복하여 나눗셈을 수행하는 가변 시간 골드스미트 부동소수점 나눗셈 알고리즘을 제안한다. 부동소수점 나눗셈 ‘$\frac{N}{F}$'는 'T=$\frac{1}{F}+e_t$'를 분모와 분자에 곱하면 ’$\frac{TN}{TF}=\frac{N_0}{F_0}$'가 된다. ’$R_i=(2-e_r-F_i),\;N_{i+1}=N_i{\ast}R_i,\;F_{i+1}=F_i{\ast}R_i$, i$\in${0,1,...n-1}'를 반복한다. 중간 곱셈 결과는 소수점이하 p 비트 미만을 절삭하며, 절삭 오차는 ‘$e_r=2^{-p}$', 보다 작다. p는 단정도실수에서 29, 배정도실수에서 59이다. ’$F_i=1+e_i$'이라고 하면 ‘$F_{i+1}=1-e_{i+1},\;e_{i+1},\;e_{i+1}'이 된다. '$[F_i-1]<2^{\frac{-p+3}{2}}$'이면, ’$e_{i+1}<16e_r$'이 부동소수점으로 표현 가능한 최소값보다 작아지며, ‘$N_{i+1}\risingdotseq\frac{N}{F}$이다. 본 논문에서 제안한 알고리즘은 입력 값에 따라서 곱셈 횟수가 다르므로, 평균 곱셈 횟수를 계산하는 방식을 도출하고, 여러 크기의 근사 역수 테이블($T=\frac{1}{F}+e_t$)에서 단정도실수 및 배정도실수의 나눗셈 계산에 필요한 평균 곱셈 횟수를 계산한다. 이들 평균 곱셈 횟수를 종래 알고리즘과 비교하여 본 논문에서 제안한 알고리즘의 우수성을 증명한다. 본 논문에서 제안한 알고리즘은 오차가 일정한 값보다 작아질 때까지만 반복 연산을 수행하므로 나눗셈기의 성능을 높일 수 있다. 또한 최적의 근사 역수 테이블을 구성할 수 있다. 본 논문의 연구 결과는 디지털 신호처리, 컴퓨터 그라픽스,, 멀티미디어, 과학 기술 연산 등 부동소수점 계산기가 사용되는 분야에서 폭 넓게 사용될 수 있다.

개선된 뉴톤-랍손 역수 및 역제곱근 알고리즘 (An Improved Newton-Raphson's Reciprocal and Inverse Square Root Algorithm)

  • 조경연
    • 한국정보통신학회논문지
    • /
    • 제11권1호
    • /
    • pp.46-55
    • /
    • 2007
  • 다음은 부동소수점 역수 및 역제곱근 계산에 많이 사용하는 뉴톤-랍손 알고리즘은 일정한 횟수의 곱셈을 반복하여 계산한다. 본 논문에서는 뉴톤-랍손 알고리즘의 반복 과정의 오차를 예측하여 오차가 정해진 값보다 작아지는 시점까지 반복 연산하는 개선된 뉴톤-랍손 알고리즘을 제안한다. 본 논문에서 제안한 알고리즘은 입력 값에 따라서 곱셈 횟수가 다르므로, 평균 곱셈 횟수를 계산하는 방식을 유도하고, 여러 크기의 근사 테이블에서 단정도실수 및 배정도실수의 역수 및 역제곱근 계산에 필요한 평균 곱셈 횟수를 산출한다. 이들 평균 곱셈 횟수를 종래 알고리즘과 비교하여 본 논문에서 제안한 알고리즘의 우수성을 증명한다. 본 논문에서 제안한 알고리즘은 오차가 일정한 값보다 작아질 때까지만 반복 연산을 수행하므로 역수 및 역제곱근 계산기의 성능을 높일 수 있고 최적의 근사 테이블을 구성할 수 있다. 본 논문의 연구 결과는 디지털 신호처리, 컴퓨터 그라픽스, 멀티미디어, 과학 기술 연산 등 부동소수점 계산기가 사용되는 분야에서 폭 넓게 사용될 수 있다.

2-Stage Pipeline 구조를 이용한 역제곱근 연산기의 설계 (Design of Inverse Square Root Unit Using 2-Stage Pipeline Architecture)

  • 김정훈;김기철
    • 한국정보과학회:학술대회논문집
    • /
    • 한국정보과학회 2007년도 가을 학술발표논문집 Vol.34 No.2 (B)
    • /
    • pp.198-201
    • /
    • 2007
  • 본 논문에서는 변형된 Newton-Raphson 알고리즘과 LUT(Look Up Table)를 사용하는 역제곱근 연산기를 제안한다. Newton-Raphson 부동소수점 역수 알고리즘은 일정한 횟수의 곱셈을 반복하여 역수 제곱근을 계산하는 방식이다. 변형된 Newton-Raphson 알고리즘은 하드웨어 구현에 적합하도록 변환되었으며, LUT는 오차를 줄이기 위해 개선되었다. 제안된 연산기는 LUT의 크기를 최소화하고, 순환적인 구조가 아닌 2-stage pipeline 구조를 가진다. 또한 IEEE-754 부동소수점 표준을 기초로 하는 24-bit 데이터 형식을 사용해 면적과 속도 향상에 유리하여 휴대용 기기의 멀티미디어 분야의 응용에 적합하다. 본 역제곱근 연산기는 소수점 이하 8-bit의 정확도를 가지며 VHDL을 이용하여 설계되었다. 그 크기는 $0.18{\mu}m$ CMOS 공정에서 약 4,000 gate의 크기를 보였으며 150MHz에서 동작이 가능하다.

  • PDF