OpenCores
URL https://opencores.org/ocsvn/des/des/trunk

Subversion Repositories des

[/] [des/] [trunk/] [doc/] [README.txt] - Blame information for rev 6

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 6 rudi
/////////////////////////////////////////////////////////////////////
2
////                                                             ////
3
////  DES CORE                                                   ////
4
////                                                             ////
5
////  Author: Rudolf Usselmann                                   ////
6
////          rudi@asics.ws                                      ////
7
////                                                             ////
8
/////////////////////////////////////////////////////////////////////
9
////                                                             ////
10
//// Copyright (C) 2001 Rudolf Usselmann                         ////
11
////                    rudi@asics.ws                            ////
12
////                                                             ////
13
//// This source file may be used and distributed without        ////
14
//// restriction provided that this copyright statement is not   ////
15
//// removed from the file and that any derivative work contains ////
16
//// the original copyright notice and the associated disclaimer.////
17
////                                                             ////
18
////     THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY     ////
19
//// EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED   ////
20
//// TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS   ////
21
//// FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL THE AUTHOR      ////
22
//// OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,         ////
23
//// INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES    ////
24
//// (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE   ////
25
//// GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR        ////
26
//// BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF  ////
27
//// LIABILITY, WHETHER IN  CONTRACT, STRICT LIABILITY, OR TORT  ////
28
//// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT  ////
29
//// OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE         ////
30
//// POSSIBILITY OF SUCH DAMAGE.                                 ////
31
////                                                             ////
32
/////////////////////////////////////////////////////////////////////
33
 
34
 
35
DES Core
36
========
37
Attached is a DES core implementation in verilog. It takes a standard
38
56 bit key and 64 bits of data as input and generates a 64 bit
39
encrypted/decrypted result. Two implementations are provided:
40
 
41
1) Area Optimized (CBC Mode)
42
   This is a sequential implementation and needs 16 cycles to complete
43
   a full encryption/decryption cycle.
44
 
45
 
46
2) Performance Optimized (EBC Mode)
47
   This is a pipelined implementation that has a 16 cycle pipeline
48
   (plus 1 input and 1 output register). It can perform a complete
49
   encryption/decryption every cycle.
50
 
51
 
52
Performance
53
===========
54
1) Area Optimized (CBC Mode)
55
   0.18u UMC ASIC process: >155Mhz 3K Gates
56
   Altera APEX 20KE-1: 1106 lcells >27MHz
57
   Altera FLEX 10K50E-1: 1283 lcells >43MHz
58
 
59
2) Performance Optimized (EBC Mode)
60
   0.18u UMC ASIC process: >290Mhz 28K Gates
61
   Altera APEX 20KE-1: 6688 lcells >53MHz
62
   Altera FLEX 10K130E-1: 6485 lcells >76 Mhz
63
 
64
 
65
Status
66
======
67
05-Oct-2001     Added decrypt input (Thanks to Mark Cynar for
68
                providing the code)
69
                Reorganized directory structure
70
                Added Makefile
71
                Cleaned up test benches
72
03-Feb-2001     Initial Release
73
 
74
 
75
Directory Structure
76
===================
77
[core_root]
78
 |
79
 +-doc                        Documentation
80
 |
81
 +-bench--+                   Test Bench
82
 |        +- verilog          Verilog Sources
83
 |        +-vhdl              VHDL Sources
84
 |
85
 +-rtl----+                   Core RTL Sources
86
 |        +-verilog           Verilog Sources
87
 |        +-vhdl              VHDL Sources
88
 |
89
 +-sim----+
90
 |        +-rtl_sim---+       Functional verification Directory
91
 |        |           +-bin   Makefiles/Run Scripts
92
 |        |           +-run   Working Directory
93
 |        |
94
 |        +-gate_sim--+       Functional & Timing Gate Level
95
 |                    |       Verification Directory
96
 |                    +-bin   Makefiles/Run Scripts
97
 |                    +-run   Working Directory
98
 |
99
 +-lint--+                    Lint Directory Tree
100
 |       +-bin                Makefiles/Run Scripts
101
 |       +-run                Working Directory
102
 |       +-log                Linter log & result files
103
 |
104
 +-syn---+                    Synthesis Directory Tree
105
 |       +-bin                Synthesis Scripts
106
 |       +-run                Working Directory
107
 |       +-log                Synthesis log files
108
 |       +-out                Synthesis Output
109
 
110
 
111
About the Author
112
================
113
To find out more about me (Rudolf Usselmann), please visit:
114
http://www.asics.ws

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.