1 |
11 |
root |
<!--# set var="title" value="DES Core" -->
|
2 |
|
|
<!--# include virtual="/ssi/ssi_start.shtml" -->
|
3 |
|
|
<b><font face="Helvetica, Arial"><font color="#BF0000"><font size=+2>Project
|
4 |
|
|
Name: DES Core</font></font></font></b>
|
5 |
|
|
<p>(See change Log at bottom of page for changes/updates)
|
6 |
|
|
<h3><u><font size=+1>Description:</font></u> </h3>
|
7 |
|
|
<p>Simple DES core. </p>
|
8 |
|
|
<p> </p>
|
9 |
|
|
<h3><u><font size=+1>Motivation</font></u> </h3>
|
10 |
|
|
<ul>
|
11 |
|
|
<li> A simple DES core</li>
|
12 |
|
|
<li> Fast and Small Version</li>
|
13 |
|
|
<li> Open Source</li>
|
14 |
|
|
</ul>
|
15 |
|
|
<p> </p>
|
16 |
|
|
<h3><u><font size=+1>Compatibility</font></u> </h3>
|
17 |
|
|
<p>I believe that the core complies to NIST-800-17. However, there has
|
18 |
|
|
been no formal third party verification.
|
19 |
|
|
<p>The official NIST specification can be downloaded here: <a href="http://csrc.nist.gov/nistpubs/800-17.pdf">800-17.pdf</a>
|
20 |
|
|
<p>
|
21 |
|
|
<h3><u><font size=+1>Performance</font></u> </h3>
|
22 |
|
|
<p> Two implementations are provided:
|
23 |
|
|
<h4>1) Area Optimized </h4>
|
24 |
|
|
<p> This is a sequential implementation and needs 16 cycles to complete
|
25 |
|
|
a full encryption/decryption cycle. </p>
|
26 |
|
|
<ul>
|
27 |
|
|
<li>0.18u UMC ASIC process: >155Mhz 3K Gates</li>
|
28 |
|
|
<li>Altera APEX 20KE-1: 1106 lcells >27MHz</li>
|
29 |
|
|
<li>Altera FLEX 10K50E-1: 1283 lcells >43MHz</li>
|
30 |
|
|
</ul>
|
31 |
|
|
<h4>2) Performance Optimized </h4>
|
32 |
|
|
<p>This is a pipelined implementation that has a 16 cycle pipeline (plus 1 input
|
33 |
|
|
and 1 output register). It can perform a complete encryption/decryption
|
34 |
|
|
every cycle. </p>
|
35 |
|
|
<ul>
|
36 |
|
|
<li> 0.18u UMC ASIC process: >290Mhz 28K Gates</li>
|
37 |
|
|
<li>Altera APEX 20KE-1: 6688 lcells >53MHz</li>
|
38 |
|
|
<li>Altera FLEX 10K130E-1: 6485 lcells >76 Mhz</li>
|
39 |
|
|
</ul>
|
40 |
|
|
<h3><u><font size=+1>Implementing the Core</font></u> </h3>
|
41 |
|
|
<p>Nothing special about implementing the core.
|
42 |
|
|
<p>
|
43 |
|
|
<h3><u><font size=+1>Status</font></u> </h3>
|
44 |
|
|
<p>Second Release: Added Encrypt/Decrypt input (Thanks to Mark Cynar for providing
|
45 |
|
|
the code); Changed Directory Structure; Improved tetst benches.
|
46 |
|
|
<h4> </h4>
|
47 |
|
|
<h4><u><font size="+1">Download</font></u></h4>
|
48 |
|
|
<p>To get a tared and gziped snapshot from CVS click <a href="http://www.opencores.org/cgi-bin/cvsget.cgi?module=des">here</a>,
|
49 |
|
|
or go to the <a href="http://www.opencores.org/cvs.shtml">CVS info page</a>.
|
50 |
|
|
<p>
|
51 |
|
|
<h3><u><font size=+1>To-Do</font></u> </h3>
|
52 |
|
|
<li>
|
53 |
|
|
Add a Tripple-DES version</li>
|
54 |
|
|
|
55 |
|
|
<p>
|
56 |
|
|
<h4><u><font size=+1>Author / Maintainer</font></u> </h4>
|
57 |
|
|
<p>I have been doing ASIC design, verification and synthesis for over 15
|
58 |
|
|
years. I hope you find this cores useful. Please send me a note if you
|
59 |
|
|
intend to use it !
|
60 |
|
|
<p>Rudolf Usselmann<br>
|
61 |
|
|
<a href="mailto:rudi@asics.ws_NOSPAM">rudi@asics.ws_NOSPAM<br>
|
62 |
|
|
</a><a href="http://www.asics.ws">www.asics.ws</a>
|
63 |
|
|
<p>Feel free to send me comments, suggestions and bug reports.
|
64 |
|
|
<p>
|
65 |
|
|
<h4><u><font size=+1>Change Log</font></u> </h4>
|
66 |
|
|
<p>10/6/2001 RU - Updated Directory Structure, added encrypt/decrypt, improved
|
67 |
|
|
test bench
|
68 |
|
|
<p>9/14/2000 RU - Initial release <!--# include virtual="/ssi/ssi_end.shtml" -->
|