• 제목/요약/키워드: 곱셈 알고리즘

검색결과 329건 처리시간 0.029초

암호 프로세서용 고속 64$\times$64 곱셈기 (A Fast 64$\times$64-bit Multiplier for Crypto-Processor)

  • 서정욱;이상흥
    • 한국정보보호학회:학술대회논문집
    • /
    • 한국정보보호학회 1998년도 종합학술발표회논문집
    • /
    • pp.471-481
    • /
    • 1998
  • 피승수를 승수로 곱하는 곱셈연산은 승수에 대한 많은 부분곱을 더하기 때문에 본질적으로 느린 연산이다. 특히, 큰 수를 사용하는 암호 프로세서에서는 매우 빠른 곱셈기가 요구된다. 현재까지 느린 연산의 개선책으로 radix 4, radix 8, 또는 radix 16의 변형 부스 알고리즘을 사용하여 부분곱의 수를 줄이려는 연구와 더불어 Wallace tree나 병렬 카운터를 사용하여 부분곱의 합을 빠르게 연산하는 방법이 연구되어 왔다. 본 논문에서는 암호 프로세서용 64$\times$64 비트 곱셈기를 구현하는데 있어서, 고속의 곱셈을 위하여 고속의 병렬 카운터를 제안하였으며, radix 4의 변형 부스 알고리즘을 이용하여 부분합을 만들고 부분합의 덧셈은 제안한 카운터를 사용하였다. 64$\times$64 비트 곱셈기를 구현함에 있어서 본 논문에서 제안된 카운터를 이용하는 것이 속도 면에서 Wallace scheme또는 Dadda scheme을 적용하여 구현하는 것 보다 31% 정도, Mehta의 카운터를 적용하여 구현하는 것 보다 21% 정도 개선되었다.

  • PDF

효율적인 몽고메리 모듈러 곱셈기의 설계 (A Design of Efficient Modular Multiplication based on Montgomery Algorithm)

  • 박혜영;유기영
    • 한국정보처리학회:학술대회논문집
    • /
    • 한국정보처리학회 2004년도 춘계학술발표대회
    • /
    • pp.1003-1006
    • /
    • 2004
  • 본 논문에서는 몽고메리 모듈러 곱셈(Montgomery Modular Multiplication) 알고리즘을 이용하여 효율적인 모듈러 곱셈기를 제안한다. 본 논문에서 제안한 곱셈기는 프로그램 가능한 셀룰라 오토마타(Programmable Cellular Automata, PCA)를 기반의 구조로 설계되어 하드웨어 복잡도를 줄이고, 곱셈시 몽고메리 알고리즘을 이용하여 일반적인 나눗셈 없이 모듈러 연산을 수행하여 시간 복잡도를 최소화 한다. 제안된 곱셈기는 시간적, 공간적인 면에서 간단하고 효과적으로 구성되어 지수연산을 위한 하드웨어의 하부구조나 오류 수정 코드(Error Correcting Code)의 연산에서 효율적으로 이용될 수 있을 것이다.

  • PDF

RNS상에서 시간 및 공간 복잡도 향상을 위한 병렬 모듈러 곱셈 알고리즘 (Parallel Modular Multiplication Algorithm to Improve Time and Space Complexity in Residue Number System)

  • 박희주;김현성
    • 한국정보과학회논문지:시스템및이론
    • /
    • 제30권9호
    • /
    • pp.454-460
    • /
    • 2003
  • 본 논문에서는 RNS 시스템 상에서 시간 및 공간 복잡도 향상을 위한 병렬 모듈러 곱셈 알고리즘을 제안한다. 모듈러 감소를 위해서 새로운 테이블 참조 방식을 사용한다. 테이블 참조시 RNS 시스템이 비 가중치 시스템이므로 대수 비교를 비교하기 위해서 MRS 시스템을 이용한다. 제안한 곱셈 알고리즘은 RNS 컴퓨터 상에서 상대적으로 계간하기 쉬운 MRS 시스템을 사용함으로써 대수 비교를 효율적으로 수행할 수 있다. 기존의 RNS 시스템 상에서 테이블 감소를 이용한 모듈러 곱셈 알고리즘과 비교시 전체 테이블의 크기를 1/2로 줄일 수 있고, 산술 연산도 2ㅣ 개의 프로세서를 사용하여 0(ι) 만에 수행할 수 있다.

32 비트 곱셈기를 사용한 뉴톤-랍손 배정도실수 역수 계산기 (Newton-Raphson's Double Precision Reciprocal Using 32 bit multiplier)

  • 조경연
    • 한국산업정보학회논문지
    • /
    • 제18권6호
    • /
    • pp.31-37
    • /
    • 2013
  • 최근 그래픽 프로세서, 멀티미디어 프로세서, 음성처리 프로세서 등에서 부동소수점이 주로 사용된다. C, Java 등 고급언어에서는 단정도실수와 배정도실수를 사용하고 있다. 본 논문에서는 32 비트 곱셈기를 사용하여 배정도실수의 역수를 계산하는 알고리즘을 제안한다. 배정도 실수 가수를 상위 부분과 하위 부분으로 나누고, 상위 부분의 역수를 뉴턴-랍손 알고리즘으로 계산한다. 그리고 이를 초기값으로 하여 배정도실수의 역수를 계산한다. 제안한 알고리즘은 입력값에 따라서 곱셈 횟수가 다르므로, 평균 곱셈 횟수를 계산하는 방식을 유도하고, 여러 크기의 근사 역수 테이블에서 평균 곱셈 횟수를 계산한다.

32 비트 곱셈기를 사용한 골드스미트 배정도실수 역수 계산기 (Goldschmidt's Double Precision Floating Point Reciprocal Computation using 32 bit multiplier)

  • 조경연
    • 한국산학기술학회논문지
    • /
    • 제15권5호
    • /
    • pp.3093-3099
    • /
    • 2014
  • 최근 그래픽 프로세서, 멀티미디어 프로세서, 음성처리 프로세서 등에서 부동소수점이 주로 사용된다. 한편 C, Java 등 고급언어에서는 단정도실수와 배정도실수를 사용하고 있다. 본 논문에서는 32비트 곱셈기를 사용하여 배정도실수의 역수를 계산하는 알고리즘을 제안한다. 배정도실수 가수를 상위 부분과 하위 부분으로 나누고, 상위 부분의 역수를 골드스미스 알고리즘으로 계산하고, 이를 초기값으로 하여 배정도실수의 역수를 계산하는 알고리즘을 제안한다. 제안한 알고리즘은 입력값에 따라서 곱셈 횟수가 다르므로, 평균 곱셈 횟수를 계산하는 방식을 유도하고, 여러 크기의 근사 역수 테이블에서 평균곱셈 횟수를 계산한다.

확률분포 생성을 통한 근사 행렬 곱셈 간소화 방법 (Probability distribution-based approximation matrix multiplication simplification algorithm)

  • 권오영;서경택
    • 한국정보통신학회논문지
    • /
    • 제26권11호
    • /
    • pp.1623-1629
    • /
    • 2022
  • 행렬 곱셈은 과학 및 공학 분야에서 널리 사용되는 기본 연산이다. 딥러닝의 학습 알고리즘에도 행렬 곱셈이 많이 사용된다. 따라서 행렬 곱셈을 효과적으로 수행하기 위한 다양한 알고리즘들 개발하고 있다. 이중 행렬 곱셈의 연산량을 줄이는 방법으로 근사 행렬 곱셈 방법이 있다. 근사 행렬 곱셈은 행렬의 열과 행을 선택하기 위한 적절한 확률 분포를 결정하고, 이 분포에 따라 행렬의 열과 행을 선택하여 근사 행렬 곱셈을 수행한다. 기존의 방법들을 행렬 곱셈에 참여하는 두 개의 행렬 A, B를 모두 고려하여 확률 분포를 생성한다. 본 논문은 행렬 A만을 대상으로 근사 행렬 곱셈에 사용될 행렬의 열과 행을 선택하는 확률 분포를 생성하는 방법을 제안하였다. 기존의 방법들과 제안된 방법들을 사용하여 1000×1000, 2000×2000, 3000×3000, 4000×4000, 5000×5000 행렬에 대하여 근사 행렬 곱셈을 수행하였다. 기존의 방법보다 제안한 방법을 적용한 근사 행렬 곱셈이 평균 0.02%에서 2.34%까지 원래 행렬 곱셈 결과에 더 근접하는 결과를 보였다.

정규 기저를 이용한 $GF((2^n)^m)$에서의 효율적인 역원 알고리즘 (A fast inversion algorithm in $GF((2^n)^m)$ using normal basis)

  • 장구영;김호원;강주성
    • 한국정보보호학회:학술대회논문집
    • /
    • 한국정보보호학회 2003년도 동계학술대회
    • /
    • pp.174-178
    • /
    • 2003
  • 본 논문은 기존의 정규 기저를 이용한 역원 알고리즘인 IT 알고리즘과 TYT 알고리즘을 개선한 GF(q$^{m}$ )*(q = 2$^n$)에서의 효율적인 역원 알고리즘을 제안한다. 제안된 알고리즘은 작은 n에 대해 GF(q)*의 원소에 대한 역원을 선행 계산으로 저장하고, m-1을 몇 개의 인수와 나머지로 분해함으로써 역원 알고리즘에 필요한 곱셈의 수를 줄일 수 있는 방법이다. 즉, 작은 양의 데이터에 대한 메모리 저장 공간을 이용하여, GF(q$^{m}$ )*에서의 역원을 계산하는 데 필요한 곱셈의 수를 줄일 수 있음을 보여준다.

  • PDF

Efficient Semi-systolic AB2 Multiplier over Finite Fields

  • Kim, Keewon
    • 한국컴퓨터정보학회논문지
    • /
    • 제25권1호
    • /
    • pp.37-43
    • /
    • 2020
  • 본 논문에서는 유한체상의 SPB(shifted polynomial basis)를 사용한 효율적인 AB2 곱셈 알고리즘을 제안한다. SPB의 특징을 이용하여, AB2 곱셈을 위한 수식을 두 부분으로 분할하였다. 분할된 두 수식은 동시에 실행가능하며, 이를 병렬로 처리하는 알고리즘을 도출하였다. 그리고 제안한 알고리즘을 기반으로 효율적인 세미-시스톨릭(semi-systolic) AB2 곱셈기를 제안한다. 제안한 곱셈기는 기존의 곱셈기에 비해 낮은 공간-시간 복잡도(area-time complexity)를 가진다. 기존의 구조들과 비교하면, 제안한 AB2 곱셈기는 공간-시간 복잡도면에서 Wei, Wang-Guo, Kim-Lee, 및 Choi-Lee의 곱셈기들의 약 94%, 87%, 86%, 및 83% 가량이 감소되었다. 따라서 제안한 곱셈기는 VLSI(very large scale integration) 구현에 적합하며 다양한 응용의 기초적인 구성 요소로 쉽게 적용할 수 있다.

초 타원 곡선 암호시스템에서 동시 역원 알고리즘을 가진 안전한 스칼라 곱셈 (Secure Scalar Multiplication with Simultaneous Inversion Algorithm in Hyperelliptic Curve Cryptosystem)

  • 박택진
    • 한국정보전자통신기술학회논문지
    • /
    • 제4권4호
    • /
    • pp.318-326
    • /
    • 2011
  • 유비쿼터스 환경에서 계산의 복잡성,메모리,전력소비등의 제약성으로 인하여 공개키 암호시스템을 적용하기는 매우 어렵다. 초타원 곡선 암호시스템은 RSA나 ECC보다 짧은 비트 길이를 가지고 동일한 안전성을 제공한다. 초타원 곡선 암호시스템에서 스칼라 곱셈은 핵심적인 연산이다. T.Lange는 다수의 좌표를 사용하여 초타원 곡선 암호시스템에서 역원 연산이 없는 스칼라 곱셈 알고리즘을 개발 하였다.그러나 다수의 좌표를 사용하는 것은 SCA에 노출되고 더 많은 메모리가 요구 된다. 본 논문에서는 초 타원곡선 암호시스템에서 동시원알고리즘을 가진 안전한 스칼라 곱셈 알고리즘을 개발하였다. 안전성 과 성능을 위하여 동시역원 알고리즘을 적용하였다 개발한 알고리즘은 SPA와 DPA 에 안전하다.

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

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