blob: 8ab8076b4f93b0495025c982634693abb582f050 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
|
# LUT RAMs for Virtex 5, Virtex 6, Spartan 6, Series 7.
# The corresponding mapping file is lutrams_xc5v_map.v
# Single-port RAMs.
ram distributed $__XILINX_LUTRAM_SP_ {
cost 8;
widthscale;
option "ABITS" 5 {
abits 5;
widths 8 global;
}
option "ABITS" 6 {
abits 6;
widths 4 global;
}
option "ABITS" 7 {
abits 7;
widths 2 global;
}
option "ABITS" 8 {
abits 8;
widths 1 global;
}
init no_undef;
prune_rom;
port arsw "RW" {
clock posedge;
}
}
# Dual-port RAMs.
ram distributed $__XILINX_LUTRAM_DP_ {
cost 8;
widthscale;
option "ABITS" 5 {
abits 5;
widths 4 global;
}
option "ABITS" 6 {
abits 6;
widths 2 global;
}
option "ABITS" 7 {
abits 7;
widths 1 global;
}
init no_undef;
prune_rom;
port arsw "RW" {
clock posedge;
}
port ar "R" {
}
}
# Quad-port RAMs.
ram distributed $__XILINX_LUTRAM_QP_ {
cost 7;
widthscale;
option "ABITS" 5 {
abits 5;
widths 2 global;
}
option "ABITS" 6 {
abits 6;
widths 1 global;
}
init no_undef;
prune_rom;
port arsw "RW" {
clock posedge;
}
port ar "R0" "R1" "R2" {
}
}
# Simple dual port RAMs.
ram distributed $__XILINX_LUTRAM_SDP_ {
cost 8;
widthscale 7;
option "ABITS" 5 {
abits 5;
widths 6 global;
}
option "ABITS" 6 {
abits 6;
widths 3 global;
}
init no_undef;
prune_rom;
port sw "W" {
clock posedge;
}
port ar "R" {
}
}
|