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

Subversion Repositories mips_enhanced

[/] [mips_enhanced/] [trunk/] [grlib-gpl-1.0.19-b3188/] [lib/] [techmap/] [stratixiii/] [alt/] [adqsout.vhd] - Blame information for rev 2

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 2 dimamali
library ieee;
2
use ieee.std_logic_1164.all;
3
library grlib;
4
use grlib.stdlib.all;
5
library techmap;
6
use techmap.gencomp.all;
7
library stratixiii;
8
use stratixiii.all;
9
 
10
entity adqsout is
11
  port(
12
    clk       : in  std_logic; -- clk90
13
    dqs       : in  std_logic;
14
    dqs_oe    : in  std_logic;
15
    dqs_oct   : in  std_logic; -- gnd = disable
16
    dqs_pad   : out std_logic; -- DQS pad
17
    dqsn_pad  : out std_logic  -- DQSN pad
18
  );
19
end;
20
architecture rtl of adqsout is
21
 
22
component stratixiii_ddio_out
23
  generic(
24
    power_up                           :  string := "low";
25
    async_mode                         :  string := "none";
26
    sync_mode                          :  string := "none";
27
    half_rate_mode                     :  string := "false";
28
    use_new_clocking_model             :  string := "false";
29
    lpm_type                           :  string := "stratixiii_ddio_out"
30
  );
31
  port (
32
    datainlo                : in std_logic := '0';
33
    datainhi                : in std_logic := '0';
34
    clk                     : in std_logic := '0';
35
    clkhi                   : in std_logic := '0';
36
    clklo                   : in std_logic := '0';
37
    muxsel                  : in std_logic := '0';
38
    ena                     : in std_logic := '1';
39
    areset                  : in std_logic := '0';
40
    sreset                  : in std_logic := '0';
41
    dataout                 : out std_logic--;         
42
    --dfflo                   : out std_logic;         
43
    --dffhi                   : out std_logic;         
44
    --devclrn                 : in std_logic := '1';   
45
    --devpor                  : in std_logic := '1'   
46
  );
47
end component;
48
 
49
component stratixiii_ddio_oe is
50
  generic(
51
    power_up              :  string := "low";
52
    async_mode            :  string := "none";
53
    sync_mode             :  string := "none";
54
    lpm_type              :  string := "stratixiii_ddio_oe"
55
  );
56
  port (
57
    oe                      : IN std_logic := '1';
58
    clk                     : IN std_logic := '0';
59
    ena                     : IN std_logic := '1';
60
    areset                  : IN std_logic := '0';
61
    sreset                  : IN std_logic := '0';
62
    dataout                 : OUT std_logic--;         
63
    --dfflo                   : OUT std_logic;         
64
    --dffhi                   : OUT std_logic;         
65
    --devclrn                 : IN std_logic := '1';               
66
    --devpor                  : IN std_logic := '1'
67
  );
68
end component;
69
 
70
component stratixiii_pseudo_diff_out is
71
  generic (
72
    lpm_type        :  string := "stratixiii_pseudo_diff_out"
73
  );
74
  port (
75
    i                       : in std_logic := '0';
76
    o                       : out std_logic;
77
    obar                    : out std_logic
78
  );
79
end component;
80
 
81
component  stratixiii_io_obuf
82
  generic(
83
    bus_hold    :       string := "false";
84
    open_drain_output   :       string := "false";
85
    shift_series_termination_control    :       string := "false";
86
    lpm_type    :       string := "stratixiii_io_obuf"
87
  );
88
  port(
89
    dynamicterminationcontrol   :       in std_logic := '0';
90
    i   :       in std_logic := '0';
91
    o   :       out std_logic;
92
    obar        :       out std_logic;
93
    oe  :       in std_logic := '1'--;
94
    --parallelterminationcontrol        :       in std_logic_vector(13 downto 0) := (others => '0');
95
    --seriesterminationcontrol  :       in std_logic_vector(13 downto 0) := (others => '0')
96
  );
97
end component;
98
 
99
signal vcc      : std_logic;
100
signal gnd      : std_logic_vector(13 downto 0);
101
signal dqs_reg, dqs_buf, dqsn_buf : std_logic;
102
signal dqs_oe_reg, dqs_oe_reg_n, dqs_oct_reg : std_logic;
103
signal dqsn_oe_reg, dqsn_oe_reg_n, dqsn_oct_reg : std_logic;
104
begin
105
  vcc <= '1'; gnd <= (others => '0');
106
 
107
-- DQS output register --------------------------------------------------------------
108
 
109
  dqs_reg0 : stratixiii_ddio_out
110
    generic map(
111
      power_up               => "high",
112
      async_mode             => "none",
113
      sync_mode              => "none",
114
      half_rate_mode         => "false",
115
      use_new_clocking_model => "false",
116
      lpm_type               => "stratixiii_ddio_out"
117
    )
118
    port map(
119
      datainlo => gnd(0),
120
      datainhi => dqs,
121
      clk      => clk,
122
      clkhi    => clk,
123
      clklo    => clk,
124
      muxsel   => clk,
125
      ena      => vcc,
126
      areset   => gnd(0),
127
      sreset   => gnd(0),
128
      dataout  => dqs_reg--,   
129
      --dfflo    => open,   
130
      --dffhi    => open,    
131
      --devclrn  => vcc,   
132
      --devpor   => vcc  
133
    );
134
 
135
  pseudo_diff0 : stratixiii_pseudo_diff_out
136
    port map(
137
      i     => dqs_reg,
138
      o     => dqs_buf,
139
      obar  => dqsn_buf
140
    );
141
 
142
-- Outout enable and oct for DQS, DQSN ----------------------------------------------
143
 
144
  dqs_oe_reg0 : stratixiii_ddio_oe
145
    generic map(
146
      power_up    => "low",
147
      async_mode  => "none",
148
      sync_mode   => "none",
149
      lpm_type    => "stratixiii_ddio_oe"
150
    )
151
    port map(
152
      oe        => dqs_oe,
153
      clk       => clk,
154
      ena       => vcc,
155
      areset    => gnd(0),
156
      sreset    => gnd(0),
157
      dataout   => dqs_oe_reg--,
158
      --dfflo   => open,
159
      --dffhi   => open,
160
      --devclrn => vcc,
161
      --devpor  => vcc
162
    );
163
  dqs_oe_reg_n <= not dqs_oe_reg;
164
 
165
  dqs_oct_reg0 : stratixiii_ddio_oe
166
    generic map(
167
      power_up    => "low",
168
      async_mode  => "none",
169
      sync_mode   => "none",
170
      lpm_type    => "stratixiii_ddio_oe"
171
    )
172
    port map(
173
      oe        => dqs_oct,
174
      clk       => clk,
175
      ena       => vcc,
176
      areset    => gnd(0),
177
      sreset    => gnd(0),
178
      dataout   => dqs_oct_reg--,
179
      --dfflo   => open,
180
      --dffhi   => open,
181
      --devclrn => vcc,
182
      --devpor  => vcc
183
    );
184
 
185
  dqsn_oe_reg0 : stratixiii_ddio_oe
186
    generic map(
187
      power_up    => "low",
188
      async_mode  => "none",
189
      sync_mode   => "none",
190
      lpm_type    => "stratixiii_ddio_oe"
191
    )
192
    port map(
193
      oe        => dqs_oe,
194
      clk       => clk,
195
      ena       => vcc,
196
      areset    => gnd(0),
197
      sreset    => gnd(0),
198
      dataout   => dqsn_oe_reg--,
199
      --dfflo   => open,
200
      --dffhi   => open,
201
      --devclrn => vcc,
202
      --devpor  => vcc
203
    );
204
  dqsn_oe_reg_n <= not dqsn_oe_reg;
205
 
206
  dqsn_oct_reg0 : stratixiii_ddio_oe
207
    generic map(
208
      power_up    => "low",
209
      async_mode  => "none",
210
      sync_mode   => "none",
211
      lpm_type    => "stratixiii_ddio_oe"
212
    )
213
    port map(
214
      oe        => dqs_oct,
215
      clk       => clk,
216
      ena       => vcc,
217
      areset    => gnd(0),
218
      sreset    => gnd(0),
219
      dataout   => dqsn_oct_reg--,
220
      --dfflo   => open,
221
      --dffhi   => open,
222
      --devclrn => vcc,
223
      --devpor  => vcc
224
    );
225
 
226
-- Out buffer (DQS, DQSN) -----------------------------------------------------------
227
 
228
  dqs_buf0 : stratixiii_io_obuf
229
    generic map(
230
      open_drain_output                => "false",
231
      shift_series_termination_control => "false",
232
      bus_hold                         => "false",
233
      lpm_type                         => "stratixiii_io_obuf"
234
    )
235
    port map(
236
      i                          => dqs_buf,
237
      oe                         => dqs_oe_reg_n,
238
      dynamicterminationcontrol  => gnd(0),--dqs_oct_reg,                                 
239
      --seriesterminationcontrol   => gnd, 
240
      --parallelterminationcontrol => gnd, 
241
      o                          => dqs_pad,
242
      obar                       => open
243
    );
244
 
245
  dqsn_buf0 : stratixiii_io_obuf
246
    generic map(
247
      open_drain_output                => "false",
248
      shift_series_termination_control => "false",
249
      bus_hold                         => "false",
250
      lpm_type                         => "stratixiii_io_obuf"
251
    )
252
    port map(
253
      i                          => dqsn_buf,
254
      oe                         => dqsn_oe_reg_n,
255
      dynamicterminationcontrol  => gnd(0),--dqsn_oct_reg,                                 
256
      --seriesterminationcontrol   => gnd, 
257
      --parallelterminationcontrol => gnd, 
258
      o                          => dqsn_pad,
259
      obar                       => open
260
    );
261
end;

powered by: WebSVN 2.1.0

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