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

Subversion Repositories bluespec_md6

[/] [bluespec_md6/] [trunk/] [common/] [MD6Parameters.bsv] - Blame information for rev 7

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 6 kfleming
//----------------------------------------------------------------------//
2
// The MIT License
3
//
4
// Copyright (c) 2008 Kermin Fleming, kfleming@mit.edu
5
//
6
// Permission is hereby granted, free of charge, to any person
7
// obtaining a copy of this software and associated documentation
8
// files (the "Software"), to deal in the Software without
9
// restriction, including without limitation the rights to use,
10
// copy, modify, merge, publish, distribute, sublicense, and/or sell
11
// copies of the Software, and to permit persons to whom the
12
// Software is furnished to do so, subject to the following conditions:
13
//
14
// The above copyright notice and this permission notice shall be
15
// included in all copies or substantial portions of the Software.
16
//
17
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
18
// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
19
// OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
20
// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
21
// HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
22
// WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
23
// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
24
// OTHER DEALINGS IN THE SOFTWARE.
25
//----------------------------------------------------------------------//
26 2 kfleming
// The following are magic, externally defined parameters in MD6
27
// Other important parameters are derived from them.
28
// These parameters are used at a global level
29
 
30
 
31
`ifdef BIT64
32
typedef 16   MD6_c;
33
typedef 512  MD6_d; // Bits in final hashvalue
34
typedef 64   MD6_b;
35
typedef 178  MD6_r;
36
 
37
typedef 89   MD6_n; // This can definitely be derived from other constants at
38
                    // the top level
39
typedef 15   MD6_q;
40
typedef 8    MD6_k;
41
typedef 1    MD6_v;
42
typedef 1    MD6_u;
43
 
44
typedef 64   MD6_WordWidth;
45
`endif
46
 
47
// All that appears to change for
48
// different word widths is the WordWidth.
49
// Other fields seem to get dropped.
50
`ifdef BIT32
51
typedef 32   MD6_c;
52
typedef 128  MD6_b;
53
typedef 178  MD6_r;
54
 
55
typedef 178  MD6_n; // This can definitely be derived from other constants at
56
                    // the top level
57
typedef 30   MD6_q;
58
typedef 16   MD6_k;
59
 
60
typedef 2    MD6_v;
61
typedef 2    MD6_u;
62
 
63
typedef 32   MD6_WordWidth;
64
`endif
65
 
66
`ifdef BIT16
67
typedef 64   MD6_c;
68
typedef 256  MD6_b;
69
typedef 178  MD6_r;
70
 
71
typedef 178  MD6_n; // This can definitely be derived from other constants at
72
                    // the top level
73
typedef 30   MD6_q;
74
typedef 16   MD6_k;
75
typedef 2    MD6_v;
76
typedef 2    MD6_u;
77
 
78
typedef 16   MD6_WordWidth;
79
`endif
80
 
81
`ifdef BIT8
82
typedef 32   MD6_c;
83
typedef 128  MD6_b;
84
typedef 178  MD6_r;
85
 
86
typedef 178  MD6_n; // This can definitely be derived from other constants at
87
                    // the top level
88
typedef 30   MD6_q;
89
typedef 16   MD6_k;
90
typedef 2    MD6_v;
91
typedef 2    MD6_u;
92
 
93
typedef 32   MD6_WordWidth;
94
`endif

powered by: WebSVN 2.1.0

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