• 제목/요약/키워드: FPGA 합성

검색결과 262건 처리시간 0.023초

IoT 보안을 위한 SHA-256 해시 프로세서의 면적 효율적인 설계 (An Area-efficient Design of SHA-256 Hash Processor for IoT Security)

  • 이상현;신경욱
    • 한국정보통신학회논문지
    • /
    • 제22권1호
    • /
    • pp.109-116
    • /
    • 2018
  • 전자서명, 인증 코드, 키 생성 알고리듬 등의 보안 프로토콜에 사용되는 SHA-256 해시 함수를 면적 효율적으로 설계하였다. 설계된 SHA-256 해시 프로세서는 입력 메시지에 대한 패딩 및 파싱 기능을 수행하는 패더 블록을 포함하여 프리프로세싱을 위한 소프트웨어 없이 동작하도록 구현하였다. 라운드 연산을 16-비트 데이터 패스로 구현하여 64 라운드 연산이 128 클록 주기에 처리되도록 하였으며, 이를 통해 저면적 구현과 함께 성능 대비 하드웨어 복잡도 (area per throughput; APT)를 최적화 하였다. 설계된 SHA-256 해시 프로세서는 Virtex5 FPGA로 구현하여 정상 동작함을 확인하였으며, 최대 116 MHz 클록 주파수로 동작하여 337 Mbps의 성능을 갖는 것으로 평가되었다. ASIC 구현을 위해 $0.18-{\mu}m$ CMOS 셀 라이브러리로 합성한 결과, 13,251 GE로 구현되었으며, 최대 동작주파수는 200 MHz로 예측되었다.

GF(2m) 상의 NIST 타원곡선을 지원하는 ECC 프로세서 (ECC Processor Supporting NIST Elliptic Curves over GF(2m))

  • 이상현;신경욱
    • 한국정보통신학회:학술대회논문집
    • /
    • 한국정보통신학회 2018년도 추계학술대회
    • /
    • pp.190-192
    • /
    • 2018
  • NIST 표준으로 정의된 이진체 상의 5가지 pseudo-random 타원곡선과 5가지 Koblitz 타원곡선을 지원하는 타원곡선 암호 (Elliptic Curve Cryptography; ECC) 프로세서를 설계하였다. Lopez-Dahab 투영 좌표계를 적용하여 모듈러 곱셈과 XOR 연산으로 스칼라 곱셈 (scalar multiplication)이 연산되도록 하였으며, 32-비트${\times}$32-비트의 워드 기반 몽고메리 곱셈기를 이용한 고정 크기의 하드웨어로 다양한 키 길이의 ECC가 구현될 수 있도록 설계하였다. 설계된 ECC 프로세서는 FPGA 구현을 통해 하드웨어 동작을 검증하였으며, 0.18-um CMOS 셀 라이브러리로 합성한 결과 100 MHz의 동작 주파수에서 10,674 GEs와 9 킬로비트의 RAM으로 구현되었고, 최대 154 MHz의 동작 주파수를 갖는다.

  • PDF

On-the-fly 키 스케줄러를 갖는 AED-128/192/256 Rijndael 암호 프로세서 (AES-128/192/256 Rijndael Cryptoprocessor with On-the-fly Key Scheduler)

  • 안하기;신경욱
    • 대한전자공학회논문지SD
    • /
    • 제39권11호
    • /
    • pp.33-43
    • /
    • 2002
  • 차세대 블록 암호 표준인 AES (Advanced Encryption Standard Rijndael(라인달) 암호 프로세서를 설계하였다. 라운드 변환블록 내부에 서브 파이프라인 단계를 삽입하여 현재 라운드의 후반부 연산과 다음 라운드의 전반부 연산이 동시에 처리되도록 하였으며, 이를 통하여 ${\cdot}$ 복호 처리율이 향상되도록 하였다. 라운드 처리부의 주요 블록들이 암호화와 복호화 과정에서 하드웨어 자원을 공유할 수 있도록 설계함으로써, 면적과 전력소모가 최소화되도록 하였다. 128-b/192-b/256-b의 마스터 키 길이에 대해 라운드 변환의 전반부 4 클록 주기에 on-the-fly 방식으로 라운드 키를 생성할 수 있는 효율적인 키 스케줄링 회로를 고안하였다. Verilog HDL로 모델링된 암호 프로세서는 Xilinx FPGA로 구현하여 정상 동작함을 확인하였다. 0.35-${\mu}m$ CMOS 셀 라이브러리로 합성한 결과, 약 25,000 개의 게이트로 구현되었으며, 2.5-V 전원전압에서 220-MHz 클록으로 동작하여 약 520-Mbits/sec의 성능을 갖는 것으로 예측되었다.

데이터 전송을 위한 전용 명령어 및 I/O 포트를 탑재한 8051 마이크로콘트롤러의 설계 (Design of an 8051 Microcontroller With Application-Specific Instructions and I/O Ports for Data Transmission)

  • 김지혜;이성수
    • 전기전자학회논문지
    • /
    • 제19권4호
    • /
    • pp.625-631
    • /
    • 2015
  • 본 논문에서는 데이터 전송을 위한 전용 명령어 및 I/O 포트를 탑재한 8051 마이크로콘트롤러를 설계하였다. 설계된 8051마이크로콘트롤러는 외부 디바이스를 제어하고 데이터를 주고받기 위해 2개의 UART 포트와 1개의 SMBus 포트를 탑재하였으며, 이들 포트를 운용하기 위한 전용 명령어를 개발하여 명령어 집합에 추가하였다. 이에 따라 여러 디바이스를 동시에 제어하고 데이터를 전송할 수 있으며, 응용 프로그램의 코드 크기도 줄일 수 있다. 특히, 다수의 디바이스와 데이터를 주고받는 동안에도 마이크로콘트롤러가 멈추지 않고 다른 프로그램을 수행할 수 있어서 동작 효율을 크게 향상할 수 있다. 0.18 um 공정에서 합성한 결과, 전용 명령어 추가로 인한 하드웨어 크기 증가는 무시할만하며, 모든 명령어 및 I/O 포트가 정상적으로 동작하는 것을 FPGA 보드에서 확인하였다.

2단계 수렴 블록 부동점 스케일링 기법을 이용한 8192점 파이프라인 FFT/IFFT 프로세서 (A 8192-point pipelined FFT/IFFT processor using two-step convergent block floating-point scaling technique)

  • 이승기;양대성;신경욱
    • 한국통신학회논문지
    • /
    • 제27권10C호
    • /
    • pp.963-972
    • /
    • 2002
  • DMT 기반의 VDSL 모뎀, OFDM 방식의 DVB 모뎀 등 다중 반송파 변조 시스템에서 핵심 블록으로 사용되는 8192점 FFT/IFFT 프로세서를 설계하였다. 새로운 2단계 수렴 블록 부동점 (two-step convergent block floating-point; TS_CBFP) 스케일링 방법을 제안하여 설계에 적용하였으며, 이를 통해 FFT/IFFT 출력의 신호 대 양자화 잡음 비 (signal-to-quantization-noise ratio; SQNR)가 크게 향상되도록 하였다. 제안된 TS_CBFP 스케일링 방법은 별도의 버퍼 메모리를 사용하지 않아 기존의 방법에 비해 메모리를 약 80% 정도 감소시키며, 따라서 칩 면적과 전력소모를 크게 줄일 수 있다. 입력 10-비트, 내부 데이터와 회전인자 14-비트, 그리고 출력 16-비트로 설계된 8192점 FFT/IFFT 코어는 약 60-㏈의 SQNR 성능을 갖는다. 0.25-$\mu\textrm{m}$ CMOS 셀 라이브러리로 합성한 결과. 약 76,300 게이트와 390K 비트의 RAM, 그리고 39K 비트의 ROM으로 구현되었다. 시뮬레이션 결과, 50-MHzⓐ2.5-V로 안전하게 동작할 것으로 평가되었으며, 8192점 FFT/IFFT 연산에 약 164-$\mu\textrm{s}$가 소요될 것으로 예상된다. 설계된 코어는 Xilinx FPGA에 구현하여 정상 동작함을 확인하였다.

MPEG-4 AVC를 위한 고속 다해상도 움직임 추정기의 하드웨어 구현 (Hardware Implementation of Past Multi-resolution Motion Estimator for MPEG-4 AVC)

  • 임영훈;정용진
    • 한국통신학회논문지
    • /
    • 제29권11C호
    • /
    • pp.1541-1550
    • /
    • 2004
  • 본 논문에서는 다해상도 움직임 추정 알고리즘을 이용하여 모션 리터를 검색하는 고속 다해상도 움직임 추정기에 대한 하드웨어 구조를 제안한다. 동영상 압축기술인 MPEG-4 AVC 전체 구성 중에서 핵심 부분인 움직임 추정 모듈을 하드웨어로 설계하기 위하여 기본적인 구조를 구성하고 높은 화질로 실시간 부호화를 할 수 있도록 고속 움직임 검색을 위해 특수하게 설계된 램 구주 메모리 공유, 4화소x4화소 Motion Vector 추출 등과 같은 기술들을 사용하여 전체 움직임 검색기를 구현하였다. 구현된 전체 모듈은 Altera(사)의 Excalibur 디바이스를 이용한 FPGA 구성을 통해 검증하고 최종적으로 Samsung STD130 0.18um CMOS Cell Library를 이용하며 합성 및 검증을 하였다. 이렇게 검증된 구조의 성능은 ASIC으로 구현할 경우 최대 동작 주파수가 약 140MHz이며 QCIF(176화소x144화소) 사이즈 기준으로 초당 약 1100프레임, 4CIF(704화소x576화구 사이즈 기준으로 초당 약 70프레임의 움직임을 검색할 수 있다 본 성능은 하드웨어 기반의 MPEG-4 AVC 실시간 부호화기를 설계하기에 적합한 구조임을 보여준다.

32-비트 몽고메리 모듈러 곱셈기 기반의 2,048 비트 RSA 공개키 암호 프로세서 (2,048 bits RSA public-key cryptography processor based on 32-bit Montgomery modular multiplier)

  • 조욱래;신경욱
    • 한국정보통신학회논문지
    • /
    • 제21권8호
    • /
    • pp.1471-1479
    • /
    • 2017
  • 2,048 비트의 키 길이를 지원하는 RSA 공개키 암호 프로세서를 설계하였다. RSA 암호의 핵심 연산인 모듈러 곱셈기를 워드 기반의 몽고메리 곱셈 알고리듬을 이용하여 설계하였으며, 모듈러 지수승 연산은 Left-to-Right(LR) 이진 멱승 알고리듬을 이용하여 구현하였다. 모듈러 곱셈에 8,448 클록 사이클이 소요되며, RSA 암호화와 복호화에 각각 185,724 클록 사이클과 25,561,076 클록 사이클이 소요된다. 설계된 RSA 암호 프로세서를 Virtex 5 FPGA로 구현하여 하드웨어 동작을 검증하였다. $0.18{\mu}m$ CMOS 표준셀을 사용하여 100 MHz의 동작 주파수로 합성한 결과, RSA 암호 프로세서는 12,540 GE로 구현되었고, 12 kbit의 메모리가 사용되었다. 동작 가능한 최대 주파수는 165 MHz로 평가되었으며, RSA 암호화, 복호화 연산에 각각 1.12 ms, 154.91 ms가 소요되는 것으로 예측되었다.

선행 제로 예측기를 이용한 고속 연산 십진 부동소수점 가산기 설계 (Design of Decimal Floating-Point Adder for High Speed Operation with Leading Zero Anticipator)

  • 윤형기;문대철
    • 한국정보통신학회논문지
    • /
    • 제19권2호
    • /
    • pp.407-413
    • /
    • 2015
  • 본 논문에서 제안된 십진 부동소수점 가산기(decimal floating-point adder, DFPA)는 선행 제로 예측기(leading zero anticipator, LZA)를 이용해 임계 경로 단축을 통해 지연시간을 줄임으로서 연산 처리 속도를 향상시키는 파이프라인 구조로 설계하였다. 제안된 십진 부동소수점 가산기의 성능 평가 및 검증 환경은 시뮬레이션에 Flowrian 툴을 사용하였으며, 합성에는 QuartusII 툴 상에서 Cyclone III FPGA를 대상으로 지정하였다. 제안된 방식은 동일한 입력 데이터를 이용하여 기존에 제안된 설계 방식들과 시뮬레이션을 통해 비교 검증한 결과, L.K.Wang이 제안한 방식 및 기존 제안된 방식들보다 각각 11.2%, 5.9%의 성능이 향상되었다. 또한 연산 처리 속도 향상 및 임계 경로 상의 지연 소자의 수가 감소됨을 확인하였다.

UWB 초고속 무선통신 시스템을 위한 FFT 프로세서 설계에 관한 연구 (A Study on the Design of FFT Processor for UWB Ultrafast Wireless Communication Systems)

  • 이상일;천영일
    • 한국정보통신학회논문지
    • /
    • 제12권12호
    • /
    • pp.2140-2145
    • /
    • 2008
  • UWB 초고속 무선통신 시스템을 위한 MB-OFDM용 128-포인트 FFT 프로세서를 설계하였다. 128-포인트 FFT 프로세서는 Radix-2 FFT 알고리듬과 R2SDF 파이프라인 구조에 기초하고 있으며, VHDL을 이용하여 구현되었다. 그 결과는 Modelsim을 이용하여 검증되었으며, Xilinx Vertex-II FPGA를 이용하여 합성된 결과 18.7MHz의 동작주파수를 얻을 수 있었다. 제안된 128-포인트 FFT 프로세서는 병렬처리 되는 FFT 프로세서의 한 블록으로 이용될 수 있으며, 이를 이용하여 고속의 병렬처리 FFT 모듈이 구현될 수 있게 된다. 따라서 본 논문은 4개의 128-포인트 FFT 프로세서를 병렬로 연결하여 4배의 동작주파수를 얻을 수 있었으며, 결과적으로 MB-OFDM에서 요구되는 동작주파수 이상의 성능을 얻게 되었다.

GF(2m) 상의 NIST 타원곡선을 지원하는 ECC 프로세서의 경량 하드웨어 구현 (A Lightweight Hardware Implementation of ECC Processor Supporting NIST Elliptic Curves over GF(2m))

  • 이상현;신경욱
    • 전기전자학회논문지
    • /
    • 제23권1호
    • /
    • pp.58-67
    • /
    • 2019
  • NIST 표준으로 정의된 $GF(2^m)$ 상의 슈도 랜덤 곡선과 Koblitz 곡선을 지원하는 타원곡선 암호(ECC) 프로세서 설계에 대해 기술한다. 고정된 크기의 데이터 패스를 사용하여 5가지 키 길이를 지원함과 아울러 경량 하드웨어 구현을 위해 워드 기반 몽고메리 곱셈기를 기반으로 유한체 연산회로를 설계하였다. 또한, Lopez-Dahab 좌표계를 사용함으로써 유한체 나눗셈을 제거하였다. 설계된 ECC 프로세서를 FPGA 검증 플랫폼에 구현하고, ECDH(Elliptic Curve Diffie-Hellman) 키 교환 프로토콜 동작을 통해 하드웨어 동작을 검증하였다. 180-nm CMOS 표준 셀 라이브러리로 합성한 결과 10,674 등가 게이트와 9 kbit의 dual-port RAM으로 구현되었으며, 최대 동작 주파수는 154 MHz로 평가되었다. 223-비트 슈도 랜덤 타원곡선 상의 스칼라 곱셈 연산에 1,112,221 클록 사이클이 소요되며, 32.3 kbps의 처리량을 갖는다.