PL EN


Preferencje help
Widoczny [Schowaj] Abstrakt
Liczba wyników
Tytuł artykułu

Zastosowanie języka Impulse C do implementacji sprzętowej algorytmów kryptograficznych w FPGA na przykładzie algorytmu DES

Treść / Zawartość
Identyfikatory
Warianty tytułu
EN
A case study on implementation of the DES algorithm on the FPGA platform using the Impulse-C language
Języki publikacji
PL
Abstrakty
PL
Artykuł opisuje implementację algorytmu DES z wykorzystaniem języka Impulse C. Język Impulse C należy do rodziny języków określanych wspólnym mianem języków HLL (High Level Language), których zadaniem jest, w stosunku do języków VHDL i Verilog, rozwinięcie możliwości opisu sprzętu na poziomie systemu. W założeniu, opis taki ma być syntezowalny i możliwy do implementacji w układach FPGA. W artykule skrótowo przedstawione zostały najważniejsze cechy charakterystyczne języka Impulse C oraz narzędzi programistycznych związanych z tym językiem. Przedstawiono również kilka sposobów optymalizacji projektów wykonywanych w języku Impulse C.
EN
In this paper we describe an FPGA implementation of the DES algorithm using Impulse C language. Impulse C is the one of the representatives of a growing group of hardware description languages known as High Level Languages (HLLs). The Impulse C extends standard ANSI C by introducing an extensive set of pragmas, new data types and library functions [3]. The Impulse C compiler translates programs that are written in 'C' into RTL-level system description. Section 1 describes some of the most important properties of the Impulse C language that are used in discussion conducted on later sections. Section 2 presents briefly the DES algorithm. In the next section a basic implementation of the DES algorithm is given. The block diagram of the designed circuit is shown in Fig. 1. The design was implemented using Xilinx Virtex 5 LX 220 FPGA. The basic version originates from the software version of the algorithm. Thus it is not optimized for hardware implementation. In the last section some improvements of the basic design available in the Impulse C are described. Those include a migration of arrays from a block RAM to FPGA internal registers and replication combinatorial logic. The result for the basic version of the algorithm and its optimized versions are presented in Table 1. Fig. 2 depicts the final algorithm implementation. The optimized version allows for a 8,25 times speedup over the basic version.
Wydawca
Rocznik
Strony
626--628
Opis fizyczny
Bibliogr. 8 poz., rys., tab.
Twórcy
autor
autor
autor
Bibliografia
  • [1] Gielata Artur, Russek Paweł, Wiatr Kazimierz: Implementacja standardu szyfrowania AES w układzie FPGA dla potrzeb sprzętowej akceleracji obliczeń, Pomiary, Automatyka, Kontrola, 2007 vol. 53, nr 5, s. 48-50.
  • [2] Janiszewski Marcin, Russek Paweł, Wiatr Kazimierz: Realizacja w układach FPGA mnożenia Montgomery dla akceleracji operacji kryptograficznych, Pomiary, Automatyka, Kontrola, 2008, vol. 54, nr 8 s.550-552. - Bibliogr. s. 552.
  • [3] Impulse C User Guide
  • [4] Pellerin David, Thibault Scott: Practical FPGA programming in C. Prentice Hall, 2005.
  • [5] Paar Christof, Pelzl Jan: Understanding Cryptography. Springer, 2010.
  • [6] http://www.xilinx.com/support/documentation/data_sheets/ds100.pdf
  • [7] http://www.drccomputer.com/pdfs/DRC_Accelium_Coprocessors.pdf
  • [8] http://www.cyfronet.pl/en/?a=zao/ReconfigurableComputing
Typ dokumentu
Bibliografia
Identyfikator YADDA
bwmeta1.element.baztech-article-BSW4-0122-0021
JavaScript jest wyłączony w Twojej przeglądarce internetowej. Włącz go, a następnie odśwież stronę, aby móc w pełni z niej korzystać.