KR20080050226A - 모듈러 곱셈 장치 및 설계 방법 - Google Patents
모듈러 곱셈 장치 및 설계 방법 Download PDFInfo
- Publication number
- KR20080050226A KR20080050226A KR1020070061565A KR20070061565A KR20080050226A KR 20080050226 A KR20080050226 A KR 20080050226A KR 1020070061565 A KR1020070061565 A KR 1020070061565A KR 20070061565 A KR20070061565 A KR 20070061565A KR 20080050226 A KR20080050226 A KR 20080050226A
- Authority
- KR
- South Korea
- Prior art keywords
- carry
- value
- register
- module
- word
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Ceased
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/38—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
- G06F7/48—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
- G06F7/50—Adding; Subtracting
- G06F7/505—Adding; Subtracting in bit-parallel fashion, i.e. having a different digit-handling circuit for each denomination
- G06F7/506—Adding; Subtracting in bit-parallel fashion, i.e. having a different digit-handling circuit for each denomination with simultaneous carry generation for, or propagation over, two or more stages
- G06F7/507—Adding; Subtracting in bit-parallel fashion, i.e. having a different digit-handling circuit for each denomination with simultaneous carry generation for, or propagation over, two or more stages using selection between two conditionally calculated carry or sum values
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/60—Methods or arrangements for performing computations using a digital non-denominational number representation, i.e. number representation without radix; Computing devices using combinations of denominational and non-denominational quantity representations, e.g. using difunction pulse trains, STEELE computers, phase computers
- G06F7/72—Methods or arrangements for performing computations using a digital non-denominational number representation, i.e. number representation without radix; Computing devices using combinations of denominational and non-denominational quantity representations, e.g. using difunction pulse trains, STEELE computers, phase computers using residue arithmetic
- G06F7/722—Modular multiplication
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/60—Methods or arrangements for performing computations using a digital non-denominational number representation, i.e. number representation without radix; Computing devices using combinations of denominational and non-denominational quantity representations, e.g. using difunction pulse trains, STEELE computers, phase computers
- G06F7/72—Methods or arrangements for performing computations using a digital non-denominational number representation, i.e. number representation without radix; Computing devices using combinations of denominational and non-denominational quantity representations, e.g. using difunction pulse trains, STEELE computers, phase computers using residue arithmetic
- G06F7/728—Methods or arrangements for performing computations using a digital non-denominational number representation, i.e. number representation without radix; Computing devices using combinations of denominational and non-denominational quantity representations, e.g. using difunction pulse trains, STEELE computers, phase computers using residue arithmetic using Montgomery reduction
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Pure & Applied Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Mathematical Optimization (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Complex Calculations (AREA)
Abstract
Description
Claims (6)
- 초기 입력값을 선택하고, 캐리 및 섬 값을 선택하는 다수의 멀티플렉서;상기 선택된 캐리 값 저장하는 캐리 레지스터;상기 선택된 섬 값을 저장하는 섬 레지스터; 및현재 순서의 한 워드의 비트와 다른 워드를 곱셈한 값, 상기 캐리 레지스터 및 섬 레지스터로부터 출력된 값을 제1 캐리 저장 가산하고, 상기 제1 캐리 저장 가산에 따른 결과와, 현재 순서의 비트와 워드 단위의 모듈러스를 승산한 결과를 제2 캐리 저장 가산하는 적어도 하나 이상의 캐리 저장 가산(CSA) 모듈을 포함하는 것을 특징으로 하는 모듈러 곱셈 장치.
- 제1항에 있어서,상기 제1 캐리 저장 가산의 최하위 값으로 결정되는 몽고메리 보정인자를 저장하는 M 레지스터; 및상기 제2 캐리 저장 가산 시 최하위 값으로 버려지는 값으로 결정되는 시프트 데이터를 저장하는 시프트 데이터 레지스터를 더 포함하는 것을 특징으로 하는 모듈러 곱셈 장치.
- 제1항에 있어서, 상기 적어도 하나 이상의 캐리 저장 가산(CSA) 모듈은,상기 현재 순서의 한 워드의 비트와 상기 다른 워드를 곱셈하는 제1 모듈;상기 제1 모듈의 출력값, 상기 캐리 레지스터의 출력값 및 상기 섬 레지스터의 출력 값을 캐리 저장 가산하여 캐리값 및 섬 값을 출력하고, 상기 캐리 저장 가산에 따라 최하위 값으로 결정되는 현재 순서의 몽고메리 보정인자를 출력하는 상기 제1 캐리 저장 가산기;현재 순서의 상기 몽고메리 보정인자 및 상기 워드 단위의 모듈러스를 곱하는 제2 모듈; 및상기 제2 모듈의 출력값 및 상기 제1 캐리 저장 가산기로부터 출력되는 캐리 값 및 섬 값을 캐리 저장 가산하고, 최하위 값으로 버려지는 값으로 결정되는 시프트 데이터를 출력하는 상기 제2 캐리어 저장 가산기를 포함하는 것을 특징으로 하는 모듈러 곱셈 장치.
- 제3항에 있어서,상기 제2 캐리어 저장 가산기는 다음 순서의 연산을 수행하기 위한 다음 CSA 모듈로 상기 캐리 저장 가산에 따른 결과를 출력함을 특징으로 하는 모듈러 곱셈 장치.
- 제3항에 있어서,상기 몽고메리 보정인자는 상기 제1 캐리 저장 가산기로부터 출력되는 섬 값의 최하위 비트 값으로서 다음 워드 연산에 사용되기 위해 j값이 0인 경우에 저장됨을 특징으로 하는 모듈러 곱셈 장치.
- 임의의 워드 크기를 결정 및 수정하여 모듈러 곱셈기 내의 레지스터들의 크기를 결정하는 과정;상기 모듈러 곱셈기 내에 구비될 캐리 저장 가산(CSA) 모듈의 개수를 결정 및 수정하는 과정;상기 결정된 레지스터들의 크기 및 상기 결정된 CSA 모듈의 개수에 따른 상기 모듈러 곱셈기의 면적, 전력 및 성능을 추정하는 과정;상기 추정된 면적, 전력 및 성능 결과에 따라 상기 모듈러 곱셈기의 전체 하드웨어 리소스 제한 및 성능 요구를 만족하는지를 판단하는 과정; 및상기 리소스 제한 및 성능 요구를 만족하는 경우 모듈러 곱셈기 구조로 결정하는 과정을 포함하여 모듈러 곱셈 장치 설계 시스템에서 모듈러 곱셈 장치를 설계하는 것을 특징으로 하는 모듈러 곱셈 장치 설계 방법.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020060120732 | 2006-12-01 | ||
KR20060120732 | 2006-12-01 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20080050226A true KR20080050226A (ko) | 2008-06-05 |
Family
ID=39805721
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020070061565A Ceased KR20080050226A (ko) | 2006-12-01 | 2007-06-22 | 모듈러 곱셈 장치 및 설계 방법 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20080050226A (ko) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20130128695A (ko) * | 2012-05-17 | 2013-11-27 | 삼성전자주식회사 | 모듈러 계산 유닛 및 그것을 포함하는 보안 시스템 |
CN112233742A (zh) * | 2020-09-30 | 2021-01-15 | 吾征智能技术(北京)有限公司 | 一种基于聚类的病历文档分类系统、设备、存储介质 |
KR102204081B1 (ko) * | 2020-07-24 | 2021-01-15 | 한양대학교 에리카산학협력단 | 효율적인 양자 모듈러 곱셈기 및 양자 모듈러 곱셈 방법 |
WO2022019443A1 (ko) * | 2020-07-24 | 2022-01-27 | 한양대학교 에리카산학협력단 | 효율적인 양자 모듈러 곱셈기 및 양자 모듈러 곱셈 방법 |
US11829731B2 (en) | 2021-11-22 | 2023-11-28 | Industrial Technology Research Institute | Modular multiplication circuit and corresponding modular multiplication method |
-
2007
- 2007-06-22 KR KR1020070061565A patent/KR20080050226A/ko not_active Ceased
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20130128695A (ko) * | 2012-05-17 | 2013-11-27 | 삼성전자주식회사 | 모듈러 계산 유닛 및 그것을 포함하는 보안 시스템 |
US9098381B2 (en) | 2012-05-17 | 2015-08-04 | Samsung Electronics Co., Ltd. | Modular arithmatic unit and secure system including the same |
KR102204081B1 (ko) * | 2020-07-24 | 2021-01-15 | 한양대학교 에리카산학협력단 | 효율적인 양자 모듈러 곱셈기 및 양자 모듈러 곱셈 방법 |
WO2022019443A1 (ko) * | 2020-07-24 | 2022-01-27 | 한양대학교 에리카산학협력단 | 효율적인 양자 모듈러 곱셈기 및 양자 모듈러 곱셈 방법 |
CN112233742A (zh) * | 2020-09-30 | 2021-01-15 | 吾征智能技术(北京)有限公司 | 一种基于聚类的病历文档分类系统、设备、存储介质 |
CN112233742B (zh) * | 2020-09-30 | 2024-02-23 | 吾征智能技术(北京)有限公司 | 一种基于聚类的病历文档分类系统、设备、存储介质 |
US11829731B2 (en) | 2021-11-22 | 2023-11-28 | Industrial Technology Research Institute | Modular multiplication circuit and corresponding modular multiplication method |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5266354B2 (ja) | ガロア拡大体・積算/積算加算・積和演算装置 | |
Ercegovac et al. | Very-high radix division with prescaling and selection by rounding | |
EP1471420A2 (en) | Montgomery modular multiplier and method thereof using carry save addition | |
CN115344237B (zh) | 结合Karatsuba和蒙哥马利模乘的数据处理方法 | |
KR100591761B1 (ko) | 몽고메리 모듈러 곱셈기 및 캐리 저장 가산을 이용한몽고메리 모듈러 곱셈 방법 | |
KR20110105555A (ko) | 효율적인 하드웨어 구성을 갖는 몽고메리 승산기 | |
CN100435090C (zh) | 可扩展高基蒙哥马利模乘算法及其电路结构 | |
Dai et al. | Area-time efficient architecture of FFT-based montgomery multiplication | |
KR20080050226A (ko) | 모듈러 곱셈 장치 및 설계 방법 | |
Shieh et al. | A new algorithm for high-speed modular multiplication design | |
US7046800B1 (en) | Scalable methods and apparatus for Montgomery multiplication | |
JP3551113B2 (ja) | 除算器 | |
US7240204B1 (en) | Scalable and unified multiplication methods and apparatus | |
KR101128505B1 (ko) | 모듈러 곱셈 연산 방법 및 장치 | |
Matutino et al. | An efficient scalable RNS architecture for large dynamic ranges | |
WO2003096180A2 (en) | Fast multiplication circuits | |
RU2666303C1 (ru) | Способ и устройство для вычисления хэш-функции | |
KR100481586B1 (ko) | 모듈러 곱셈 장치 | |
US20020161810A1 (en) | Method and apparatus for multiplication and/or modular reduction processing | |
KR100480997B1 (ko) | GF(p)와 GF(2^m)의 유한체 곱셈 연산 장치 | |
Tawalbeh | Radix-4 asic design of a scalable montgomery modular multiplier using encoding techniques | |
Huai et al. | Efficient architecture for long integer modular multiplication over Solinas prime | |
US6725360B1 (en) | Selectively processing different size data in multiplier and ALU paths in parallel | |
KR100939356B1 (ko) | 모듈러 곱셈 장치 및 그 방법 | |
KR100946256B1 (ko) | 다정도 캐리 세이브 가산기를 이용한 듀얼필드상의확장성있는 몽고매리 곱셈기 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
PA0109 | Patent application |
Patent event code: PA01091R01D Comment text: Patent Application Patent event date: 20070622 |
|
PA0201 | Request for examination | ||
PG1501 | Laying open of application | ||
E902 | Notification of reason for refusal | ||
PE0902 | Notice of grounds for rejection |
Comment text: Notification of reason for refusal Patent event date: 20081126 Patent event code: PE09021S01D |
|
E601 | Decision to refuse application | ||
PE0601 | Decision on rejection of patent |
Patent event date: 20090615 Comment text: Decision to Refuse Application Patent event code: PE06012S01D Patent event date: 20081126 Comment text: Notification of reason for refusal Patent event code: PE06011S01I |