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

검색결과 88건 처리시간 0.025초

고속 십진 나눗셈을 위한 혼합 알고리즘 (Mixed Algorithm for Fast Decimal Division)

  • 권순열;최종화;김용대;한선경;유영갑
    • 전자공학회논문지CI
    • /
    • 제41권5호
    • /
    • pp.17-23
    • /
    • 2004
  • 본 논문은 십진 나눗셈에서 연산 속도를 향상시키기 위해 혼합 나눗셈 알고리즘을 제안한다. 이진수 체계에서는 비복원 알고리즘이 복원 알고리즘에 비해 항상 작은 횟수를 갖지만 십진 연산에서는 몫의 값에 따라 연산 횟수가 달라진다. 십진수는 한 자리로 나타낼 수 있는 수의 범위가 0~9 이므로 현재 부분 나머지의 절대 값과 이전 부분 나머지의 절대 값을 비교하여 이전 부분 나머지의 절대 값이 현재 부분 나머지의 절대 값 보다 크면 비복원 알고리즘을 선택하고 작으면 복원 알고리즘을 선택함으로써 연산 횟수를 줄일 수 있다. 몫이 64 자리일 경우 제안한 흔합 알고리즘은 복원 알고리즘에 비해 80.9%의 연산 횟수를 줄였고 비복원 알고리즘에 비해 64.5%의 연산 횟수를 줄였다.

내장형 프로세서를 위한 IEEE-754 고성능 부동소수점 나눗셈기의 설계 (IEEE-754 Floating-Point Divider for Embedded Processors)

  • 정재원;홍인표;정우경;이용석
    • 대한전자공학회논문지SD
    • /
    • 제39권7호
    • /
    • pp.66-73
    • /
    • 2002
  • 최근 컴퓨터 그래픽이나 고급 DSP 등 부동소수점 연산의 활용 분야가 늘어나면서 나눗셈 연산의 필요성이 증대되었으나, 기존의 나눗셈 연산기는 큰 하드웨어 면적을 차지할 뿐만 아니라 전체 부동소수점 연산의 병목현상을 초래하는 중요한 요인이 되고 있다. 본 논문에서는 급수 전개 알고리즘을 이용한 내장형 프로세서에 적합하도록 소면적의 부동소수점 나눗셈기를 설계하였다. 나눗셈기는 SIMD-DSP 유닛의 두 개의 곱셈누적기를 공유하여 연산함으로써, 부동소수점 단정도 형식의 나눗셈 연산을 고속으로 수행함과 동시에 나눗셈 연산을 위한 추가 면적을 최소화하였다. 본 논문에서는 급수 전개 알고리즘 나눗셈 연산기를 설계함에 있어 고려되어야할 오차의 분석을 통해 정확한 라운딩을 위한 몫을 얻어낼 수 있는 구조를 선택하였으며, IEEE-754 표준에서 정의하고 있는 모든 라운딩 모드를 지원하도록 하였다.

맥락화를 통한 분수의 곱셈과 나눗셈 지도 (Teaching Multiplication & Division of Fractions through Contextualization)

  • 김명운;장경윤
    • 대한수학교육학회지:학교수학
    • /
    • 제11권4호
    • /
    • pp.685-706
    • /
    • 2009
  • 이 연구는 분수의 곱셈 나눗셈에 관련한 교수-학습을 의미 있게 도울 수 있는 맥락화가 왜 필요하며, 어떻게 가능한지, 또한 효과적인 맥락화의 활용 방안은 무엇인지를 탐구하는 것을 목적으로 한다. 이를 위해 자연수에 대하여 분수의 곱셈 나눗셈 상황의 차이는 무엇인지를 살펴보고, 그 차이에 따라 분수의 곱셈에서는 승수인 연산자의 역할을 이해할 수 이는 맥락을 설정하여, 단위의 변화에 대한 인식을 하도록 하였다. 분수의 나눗셈에서 포함제는 그 몫이 이산량인 경우이면 남은 양이 생길 수 있고, 연속량인 경우에는 분수로 그 몫을 표현해야 하는 맥락으로 구분지었다. 그리고 등분제의 맥락은 자연수의 등분제의 맥락과 연결시켜 새롭게 제시하여, 자연수의 나눗셈에서 분수의 나눗셈으로 형식화되는 3단계의 효과적인 학습 방법을 제안하였다. 이로써 교사와 학생들의 분수의 곱셈과 나눗셈의 교수-학습 과정에 있어서 유의미한 알고리즘의 습득에 도움을 줄 수 있을 것으로 기대한다.

  • PDF

확장성에 유리한 병렬 알고리즘 방식에 기반한 $GF(2^m)$나눗셈기의 VLSI 설계 (VLSI Design of an Improved Structure of a $GF(2^m)$ Divider)

  • 문상국
    • 한국정보통신학회논문지
    • /
    • 제9권3호
    • /
    • pp.633-637
    • /
    • 2005
  • 본 연구에서 제안한 유한체 나눗셈기는 기존에 존재하는 알고리즘을 개선하여 병렬 처리가 가능하도록 개선하였고, 이를 위하여 n bit look-up table 참조 방식을 도입하여 division당 2m/n cycle의 연산 처리량을 가질 때, n의 증가에 따른 회로 면적의 증가, 동작 주파수의 감소가 적어지게 된다. 이에 따라, 높은 연산 처리량과 적은 회로 면적이라는 두 가지 목표를 모두 달성할 수 있는 나눗셈기의 구현이 가능해졌다. 이를 바탕으로, Reed-Solomon Code와 ECC (Elliptic Curve Cryptography) 암호화 알고리즘 등, 통신의 오류 정정 부호 분야와 암호화 분야에서 자주 응용되는 Galois Field에서의 나눗셈 연산을 수행하는 $GF(2^m)$ 나눗셈기를 VHDL을 이용하여 설계하고 FPGA에 구현하여 기능을 검증하였다. 제안된 나눗셈기는 m=4, n=2의 경우에 대해 설계, 검증을 수행하였다. 회로의 구현은 Altera의 10만 게이트 급 FPGA EP20K30ETC144-1 Chip을 이용하여 77Mhz의 최대 동작 주파수상에서의 동작을 검증하였다.

중학교 수학 교사들의 분수나눗셈에 대한 이해 (Middle School Mathematics Teachers' Understanding of Division by Fractions)

  • 김영옥
    • 대한수학교육학회지:수학교육학연구
    • /
    • 제17권2호
    • /
    • pp.147-162
    • /
    • 2007
  • 본 논문은 교수를 위한 중학교 수학교사들의 수학적 지식을 조사한 저자의 학위논문의 일부분으로써, 19명의 한국 및 중국 중학교 수학교사들의 분수 나눗셈(division by fractions)에 대한 개념적 실생활 모델을 조사, 분석하였다. 분수 나눗셈에 대한 이론적 배경을 제공함과 동시에, 실제 현장 교사들이 가지고 있는 분수 나눗셈에 대한 개념적 이해를 조사, 분석함으로써 분수 나눗셈을 효과적으로 가르치기 위한 교사 지식의 구체적 예들을 제공하고 있다. 본 연구에서는, 연구에 참가한 교사들 대부분이 분수 나눗셈을 "역수 곱하기(invert and multiply)"와 같은 전통적 알고리즘에 기초하여 이해하고 있었으며, 분수 나눗셈의 의미를 실생활 모델로 나타내는 교수과제를 성공적으로 수행한 교사는 단 두 명에 뿐이었다. 이러한 현상은 그 교사들 대부분이 가지고 있는 범자연수 나눗셈 모델이 분할 모델 (partitive model)로 제한되어 있기 때문이었다. 하지만, 또 다른 흥미로운 연구 결과는, 교사가 분할모델 만을 가지고 있더라도, 그 모델의 개념적 구조(conceptual structure)를 깊이 이해하고 있을 때는, 그 기본적 개념 구조를 변형하여 분수 나눗셈의 실생활 모델을 응용해 내는 사고의 융통성을 보였다. 본 논문에서는 이러한 교사들의 성공적 사례뿐만 아니라, 주어진 교수 과제를 수행하는데 실패한 교사들의 인터뷰결과들도 분석, 해석하여 제공하였다.

  • PDF

소수 나눗셈에서 몫과 나머지에 관한 소고 (A Study on the Quotient and Remainder in Division of Decimal)

  • 정상태
    • 한국수학교육학회지시리즈C:초등수학교육
    • /
    • 제19권3호
    • /
    • pp.193-210
    • /
    • 2016
  • 연구자는 중상위권 이상의 학생들에게서, 문장제로 주어진 $10{\div}2.4$의 문제에서 몫을 4, 나머지를 4로 기록한 사례를 목격할 수 있었다. 이러한 흥미로운 반응으로부터 연구자는 소수 나눗셈에서 몫과 나머지를 학생들이 어떻게 인식하는지 자세히 살펴보고, 분석한 문제점에 따른 지도방안을 구안하였다. 연구결과 많은 학생들이 소수 나눗셈에서 나머지의 소수점 처리에서 오류를 범하는 것을 확인할 수 있었으며, 그것이 세로 나눗셈 알고리즘의 몫과 나머지 처리에서 발생하는 어려움 때문임을 알 수 있었다. 개선 방안으로, 가분수와 대분수의 특징을 살려 분수형태로 표현된 나눗셈의 결과에서 몫과 나머지를 인식하는 방식의 교수방법을 제안하였다. 이는 세로 나눗셈 방식이 갖는 것과의 비교를 통해, 각각의 방식이 갖는 장단점을 이용함과 동시에 소수 나눗셈의 몫과 나머지를 구하는 새로운 관점을 제시한다는 데 의의가 있다.

개선된 역수 알고리즘을 사용한 정수 나눗셈기 (The Integer Number Divider Using Improved Reciprocal Algorithm)

  • 송홍복;박창수;조경연
    • 한국정보통신학회논문지
    • /
    • 제12권7호
    • /
    • pp.1218-1226
    • /
    • 2008
  • 반도체 집적 기술의 발달과 컴퓨터에서 멀티미디어 기능의 사용이 많아지면서 보다 많은 기능들이 하드웨어로 구현되기를 원하는 요구가 증가되고 있다. 그래서 현재 사용되는 대부분의 32 비트 마이크로프로세서는 정수 곱셈기를 하드웨어로 구현하고 있다. 그러나 나눗셈기는 기존의 알고리즘인 SRT 알고리즘의 방식이 하드웨어 구현상의 복잡도와 느린 동작 속도로 인해 특정 마이크로프로세서에 한해서만 하드웨어로 구현되고 있다. 본 논문에서는 'w bit $\times$ w bit = 2w bit' 곱셈기를 사용하여 $\frac{N}{D}$ 정수 나눗셈을 수행하는 알고리즘을 제안한다. 즉, 제수 D 의 역수를 구하고 이를 피제수 N 에 곱해서 정수 나눗셈을 수행한다. 본 논문에서는 제수 D 가 '$D=0.d{\times}2^L$, 0.5<0.d<1.0'일 때, '$0.d{\times}1.g=1+e$, $e<2^{-w}$'가 되는 '$\frac{1}{D}$'의 근사 값 '$1.g{\times}2^{-L}$'을 가칭 상역수라고 정의하고, 상역수를 구하는 알고리즘을 제안하고, 이렇게 구한 상역수 '$1.g{\times}2^{-L}$'을 피제수 N에 곱하여 $\frac{N}{D}$ 정수 나눗셈을 수행한다. 제안한 알고리즘은 정확한 역수를 계산하기 때문에 추가적인 보정이 요구되지 않는다. 본 논문에서 제안하는 알고리즘은 곱셈기만을 사용하므로 마이크로프로세서를 구현할 때 나눗셈을 위한 추가적인 하드웨어가 필요 없다. 그리고 기존 알고리즘인 SRT 방식에 비해 빠른 동작속도를 가지며, 워드 단위로 연산을 수행하기 때문에 기존의 나눗셈 알고리즘보다 컴파일러 작성에도 적합하다. 따라서, 본 논문의 연구 결과는 마이크로프로세서 및 하드웨어 크기에 제한적인 SOC(System on Chip) 구현 등에 폭넓게 사용될 수 있다.

십진블록을 활용한 소수의 나눗셈 지도에서 초등학교 5학년 학생들의 개념적 이해 과정 분석 (An Analysis on the Process of Conceptual Understanding of Fifth Grade Elementary School Students about the Division of Decimal with Base-Ten Blocks)

  • 방정숙;김수정
    • 대한수학교육학회지:수학교육학연구
    • /
    • 제17권3호
    • /
    • pp.233-251
    • /
    • 2007
  • 본 연구는 주로 알고리즘 위주로 학습되는 소수의 나눗셈 지도에 반하여 십진블록을 활용하여 초등학교 5학년 학생들이 소수의 나눗셈을 보다 의미 있게 학습할 수 있는지를 면밀하게 탐색하였다. 연구결과 학생들은 다양한 소수의 나눗셈 문제를 십진블록으로 모델링하여 계산하는 과정을 통해 연산의 의미를 개념적으로 이해할 수 있었고, 알고리즘의 각 단계를 십진블록의 조작활동과 연결하여 설명함으로써 계산 원리를 터득할 수 있었다. 또한 소수의 나눗셈 계산 결과를 연산의 의미와 연결하여 개념적으로 설명할 수 있었다. 이를 통하여 본 연구는 구체적인 수업 사례를 바탕으로 소수 나눗셈 지도 방안에 대한 시사점을 제공한다.

  • PDF

곱셈기를 사용한 배정도 정수 나눗셈기 (Double Precision Integer Divider Using Multiplier)

  • 송홍복;조경연
    • 한국정보통신학회논문지
    • /
    • 제14권3호
    • /
    • pp.637-647
    • /
    • 2010
  • 본 논문에서는 'w bit $\times$ w bit = 2w bit' 곱셈기를 사용하여 2w 비트 정수 N과 w 비트 정수 D의 $\frac{N}{D}$용 나눗셈을 수행하는 알고리즘을 제안한다. 본 연구에서 제안하는 알고리즘은 제수 D가 '$D=0.d{\times}2^L$, 0.5 < 0.d < 1.0'일 때, '$0.d{\times}1.g=1+e$, e < $2^{-w}$'가 되는 '$\frac{1}{D}$'의 근사 값 '$1.g{\times}2^{-L}$'을 가칭 상역수로 정의하고, 피제수 N을 'w-3' 비트 보다 작은 워드로 분할하고, 각 분할된 워드에 상역수를 곱해서 부분 몫을 계산하고, 부분 몫을 합산하여 배정도 정수 나눗셈의 몫을 구한다. 제안한 알고리즘은 정확한 몫을 산출하기 때문에 추가적인 보정이 요구되지 않는다. 본 논문에서 제안하는 알고리즘은 곱셈기만을 사용하므로 마이크로프로세서를 구현할 때 나눗셈을 위한 추가적인 하드웨어가 요구되지 않는다. 그리고 기존 알고리즘인 SRT 방식에 비해 동작속도가 빠르다. 따라서 본 논문의 연구 결과는 마이크로프로세서 및 하드웨어 크기에 제한적인 SOC(System on Chip) 구현 등에 폭넓게 사용될 수 있다.

고속 FPGA 구현에 적합한 효율적인 정수 나눗셈 알고리즘 (An Efficient Integer Division Algorithm for High Speed FPGA)

  • 홍승모;김종훈
    • 대한전자공학회논문지TC
    • /
    • 제44권2호
    • /
    • pp.62-68
    • /
    • 2007
  • 본 논문에서는 메모리와 곱셈기가 내장된 고속 FPGA(Field Programmable Gate Array)에서 효율적으로 구현할 수 있는 정수 나눗셈 알고리즘을 제안하였다. 제안된 알고리즘은 메모리를 이용한 Look-up Table(LUT)과 곱셈기를 사용하여 반복 계산(Iteration)구조로 FPGA의 자원을 최소화할 수 있으며 반복연산 횟수가 일반적으로 알려진 뺄셈 또는 뺄셈-곱셈에 의한 나눗셈 알고리즘에 비해 매우 적어 Latency를 최소화 할 수 있다. Xilinx사의 Virtex-4 FPGA에 VHDL coding을 통해 Pipeline구조로 구현한 결과 17bit의 정수 나눗셈을 300MSPS( Mega Sample per Second)의 속도로 수행하였다. 또한 일반적으로 사용되고 있는 뺄셈 또는 뺄셈-곱셈 구조에 비해 FPGA의 소요자원인 Slices의 경우 1/6이하, 곱셈기-누산기 수는 1/4이하로 줄일 수 있었으며, 입출력 간의 지연 Latency를 1/3이하로 줄일 수 있어 다른 알고리즘에 비해 매우 효율적인 구조임을 확인하였다.