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/] [adqout.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
library altera;
10
use altera.all;
11
 
12
entity adqout is
13
  port(
14
    clk       : in  std_logic; -- clk0
15
    clk_oct   : in  std_logic; -- clk90
16
    dq_h      : in  std_logic;
17
    dq_l      : in  std_logic;
18
    dq_oe     : in  std_logic;
19
    dq_oct    : in  std_logic; -- gnd = disable
20
    dq_pad    : out std_logic  -- DQ pad
21
  );
22
end;
23
architecture rtl of adqout is
24
 
25
component stratixiii_ddio_out
26
  generic(
27
    power_up                           :  string := "low";
28
    async_mode                         :  string := "none";
29
    sync_mode                          :  string := "none";
30
    half_rate_mode                     :  string := "false";
31
    use_new_clocking_model             :  string := "false";
32
    lpm_type                           :  string := "stratixiii_ddio_out"
33
  );
34
  port (
35
    datainlo                : in std_logic := '0';
36
    datainhi                : in std_logic := '0';
37
    clk                     : in std_logic := '0';
38
    clkhi                   : in std_logic := '0';
39
    clklo                   : in std_logic := '0';
40
    muxsel                  : in std_logic := '0';
41
    ena                     : in std_logic := '1';
42
    areset                  : in std_logic := '0';
43
    sreset                  : in std_logic := '0';
44
    dataout                 : out std_logic--;         
45
    --dfflo                   : out std_logic;         
46
    --dffhi                   : out std_logic;         
47
    --devclrn                 : in std_logic := '1';   
48
    --devpor                  : in std_logic := '1'   
49
  );
50
end component;
51
 
52
component stratixiii_ddio_oe is
53
  generic(
54
    power_up              :  string := "low";
55
    async_mode            :  string := "none";
56
    sync_mode             :  string := "none";
57
    lpm_type              :  string := "stratixiii_ddio_oe"
58
  );
59
  port (
60
    oe                      : IN std_logic := '1';
61
    clk                     : IN std_logic := '0';
62
    ena                     : IN std_logic := '1';
63
    areset                  : IN std_logic := '0';
64
    sreset                  : IN std_logic := '0';
65
    dataout                 : OUT std_logic--;         
66
    --dfflo                   : OUT std_logic;         
67
    --dffhi                   : OUT std_logic;         
68
    --devclrn                 : IN std_logic := '1';               
69
    --devpor                  : IN std_logic := '1'
70
  );
71
end component;
72
 
73
component  stratixiii_io_obuf
74
  generic(
75
    bus_hold    :       string := "false";
76
    open_drain_output   :       string := "false";
77
    shift_series_termination_control    :       string := "false";
78
    lpm_type    :       string := "stratixiii_io_obuf"
79
  );
80
  port(
81
    dynamicterminationcontrol   :       in std_logic := '0';
82
    i   :       in std_logic := '0';
83
    o   :       out std_logic;
84
    obar        :       out std_logic;
85
    oe  :       in std_logic := '1'--;
86
    --parallelterminationcontrol        :       in std_logic_vector(13 downto 0) := (others => '0');
87
    --seriesterminationcontrol  :       in std_logic_vector(13 downto 0) := (others => '0')
88
  );
89
end component;
90
 
91
component DFF is
92
  port(
93
    d, clk, clrn, prn :  in  std_logic;
94
    q                 :  out std_logic);
95
end component;
96
 
97
signal vcc      : std_logic;
98
signal gnd      : std_logic_vector(13 downto 0);
99
signal dq_reg   : std_logic;
100
signal dq_oe_reg, dq_oe_reg_n, dq_oct_reg : std_logic;
101
 
102
attribute syn_keep : boolean;
103
attribute syn_preserve : boolean;
104
attribute syn_keep of dq_oe_reg : signal is true;
105
attribute syn_preserve of dq_oe_reg : signal is true;
106
attribute syn_keep of dq_oe_reg_n : signal is true;
107
attribute syn_preserve of dq_oe_reg_n : signal is true;
108
 
109
begin
110
  vcc <= '1'; gnd <= (others => '0');
111
 
112
-- DQ output register --------------------------------------------------------------
113
 
114
  dq_reg0 : stratixiii_ddio_out
115
    generic map(
116
      power_up               => "high",
117
      async_mode             => "none",
118
      sync_mode              => "none",
119
      half_rate_mode         => "false",
120
      use_new_clocking_model => "true",
121
      lpm_type               => "stratixiii_ddio_out"
122
    )
123
    port map(
124
      datainlo => dq_l,
125
      datainhi => dq_h,
126
      clk      => clk,
127
      clkhi    => clk,
128
      clklo    => clk,
129
      muxsel   => clk,
130
      ena      => vcc,
131
      areset   => gnd(0),
132
      sreset   => gnd(0),
133
      dataout  => dq_reg--,   
134
      --dfflo    => open,   
135
      --dffhi    => open,    
136
      --devclrn  => vcc,   
137
      --devpor   => vcc  
138
    );
139
 
140
-- Outout enable and oct for DQ -----------------------------------------------------
141
 
142
--  dq_oe_reg0 : stratixiii_ddio_oe
143
--    generic map(
144
--      power_up    => "low",    
145
--      async_mode  => "none",    
146
--      sync_mode   => "none",
147
--      lpm_type    => "stratixiii_ddio_oe"
148
--    )
149
--    port map(
150
--      oe        => dq_oe,
151
--      clk       => clk,
152
--      ena       => vcc,
153
--      areset    => gnd(0),
154
--      sreset    => gnd(0),
155
--      dataout   => dq_oe_reg--,
156
--      --dfflo   => open,
157
--      --dffhi   => open,
158
--      --devclrn => vcc,
159
--      --devpor  => vcc
160
--    );
161
 
162
--  dq_oe_reg0 : dff
163
--    port map(
164
--      d         => dq_oe,
165
--      clk       => clk,
166
--      clrn      => vcc,
167
--      prn       => vcc,
168
--      q         => dq_oe_reg
169
--    );
170
 
171
  dq_oe_reg0 : process(clk)
172
  begin if rising_edge(clk) then dq_oe_reg <= dq_oe; end if; end process;
173
 
174
  dq_oe_reg_n <= not dq_oe_reg;
175
 
176
  dq_oct_reg0 : stratixiii_ddio_oe
177
    generic map(
178
      power_up    => "low",
179
      async_mode  => "none",
180
      sync_mode   => "none",
181
      lpm_type    => "stratixiii_ddio_oe"
182
    )
183
    port map(
184
      oe        => dq_oct,
185
      clk       => clk_oct,
186
      ena       => vcc,
187
      areset    => gnd(0),
188
      sreset    => gnd(0),
189
      dataout   => dq_oct_reg--,
190
      --dfflo   => open,
191
      --dffhi   => open,
192
      --devclrn => vcc,
193
      --devpor  => vcc
194
    );
195
 
196
-- Out buffer (DQ) ------------------------------------------------------------------
197
 
198
  dq_buf0 : stratixiii_io_obuf
199
    generic map(
200
      open_drain_output                => "false",
201
      shift_series_termination_control => "false",
202
      bus_hold                         => "false",
203
      lpm_type                         => "stratixiii_io_obuf"
204
    )
205
    port map(
206
      i                          => dq_reg,
207
      oe                         => dq_oe_reg_n,
208
      dynamicterminationcontrol  => gnd(0),--dq_oct_reg,                                 
209
      --seriesterminationcontrol   => gnd, 
210
      --parallelterminationcontrol => gnd, 
211
      o                          => dq_pad,
212
      obar                       => open
213
    );
214
end;

powered by: WebSVN 2.1.0

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