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

Subversion Repositories modular_oscilloscope

[/] [modular_oscilloscope/] [trunk/] [hdl/] [epp/] [eppwbn_16bit.vhd] - Blame information for rev 19

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

Line No. Rev Author Line
1 19 budinero
----------------------------------------------------------------------------------------------------
2
--| Modular Oscilloscope
3
--| UNSL - Argentine
4
--|
5
--| File: eppwbn_16 bit.vhd
6
--| Version: 0.01
7
--| Tested in: Actel APA300
8
--|-------------------------------------------------------------------------------------------------
9
--| Description:
10
--|   EPP - Wishbone bridge. 
11
--|   The top module for 16 bit wisbone data bus.
12
--|-------------------------------------------------------------------------------------------------
13
--| File history:
14
--|   0.01  | dic-2008 | First release
15
----------------------------------------------------------------------------------------------------
16
--| Copyright ® 2009, Facundo Aguilera.
17
--|
18
--| This VHDL design file is an open design; you can redistribute it and/or
19
--| modify it and/or implement it after contacting the author.
20
 
21
--| Wishbone Rev. B.3 compatible
22
----------------------------------------------------------------------------------------------------
23
 
24
 
25
 
26
-- Bloque completo 16 bit
27
 
28
library IEEE;
29
use IEEE.STD_LOGIC_1164.all;
30
use work.eppwbn_pgk.all;
31
 
32
entity eppwbn_16bit is
33
port(
34
        -- Externo
35
  nStrobe:      in std_logic;                       --  HostClk/nWrite 
36
        Data:         inout std_logic_vector (7 downto 0);--   AD8..1 (Data1..Data8)
37
        nAck:         out std_logic;                      --  PtrClk/PeriphClk/Intr
38
        busy:         out std_logic;                      --  PtrBusy/PeriphAck/nWait
39
        PError:       out std_logic;                      --  AckData/nAckReverse
40
        Sel:          out std_logic;                      --  XFlag (Select)
41
        nAutoFd:      in std_logic;                       --  HostBusy/HostAck/nDStrb
42
        PeriphLogicH: out std_logic;                      --  (Periph Logic High)
43
  nInit:        in std_logic;                       --  nReverseRequest
44
        nFault:       out std_logic;                      --  nDataAvail/nPeriphRequest
45
        nSelectIn:    in std_logic;                       --  1284 Active/nAStrb
46
 
47
 
48
        --  Interno
49
        RST_I: in std_logic;
50
        CLK_I: in std_logic;
51
        DAT_I: in std_logic_vector (15 downto 0);
52
        DAT_O: out std_logic_vector (15 downto 0);
53
        ADR_O: out std_logic_vector (7 downto 0);
54
        CYC_O: out std_logic;
55
        STB_O: out std_logic;
56
        ACK_I: in std_logic ;
57
        WE_O: out std_logic
58
        );
59
end eppwbn_16bit;
60
 
61
 
62
 
63
architecture structural of eppwbn_16bit is
64
  -- Señales
65
        signal s_DAT_I: std_logic_vector (7 downto 0);
66
  signal s_DAT_O: std_logic_vector (7 downto 0);
67
  signal s_ADR_O: std_logic_vector (7 downto 0);
68
  signal s_CYC_O: std_logic;
69
  signal s_STB_O: std_logic;
70
  signal s_ACK_I: std_logic;
71
  signal s_WE_O:  std_logic;
72
begin
73
 
74
 
75
  U_EPPWBN8: eppwbn
76
  port map(
77
    -- To EPP interface
78
    nStrobe => nStrobe,
79
    Data => Data,
80
    nAck => nAck,
81
    busy => busy,
82
    PError => PError,
83
    Sel => Sel,
84
    nAutoFd => nAutoFd,
85
    PeriphLogicH => PeriphLogicH,
86
    nInit => nInit,
87
    nFault => nFault,
88
    nSelectIn => nSelectIn,
89
 
90
    -- Common signals
91
    RST_I => RST_I,
92
    CLK_I => CLK_I,
93
 
94
    -- Master EPP to slave width exteneder
95
    DAT_I => s_DAT_I,
96
    DAT_O => s_DAT_O,
97
    ADR_O => s_ADR_O,
98
    CYC_O => s_CYC_O,
99
    STB_O => s_STB_O,
100
    ACK_I => s_ACK_I,
101
    WE_O =>  s_WE_O
102
  );
103
 
104
  U_EPPWBN_8TO16: eppwbn_width_extension
105
  generic map(
106
    TIME_OUT_VALUE => 255,
107
    TIME_OUT_WIDTH => 8
108
  )
109
  port map(
110
    -- Master EPP to slave width exteneder
111
    DAT_I_sl => s_DAT_O,
112
    DAT_O_sl => s_DAT_I,
113
    ADR_I_sl => s_ADR_O,
114
    CYC_I_sl => s_CYC_O,
115
    STB_I_sl => s_STB_O,
116
    ACK_O_sl => s_ACK_I,
117
    WE_I_sl  => s_WE_O,
118
 
119
    -- Master width exteneder to TOP
120
    DAT_I_ma => DAT_I,
121
    DAT_O_ma => DAT_O,
122
    ADR_O_ma => ADR_O,
123
    CYC_O_ma => CYC_O,
124
    STB_O_ma => STB_O,
125
    ACK_I_ma => ACK_I,
126
    WE_O_ma  => WE_O,
127
 
128
    -- Common signals
129
    RST_I => RST_I,
130
    CLK_I => CLK_I
131
  );
132
 
133
 
134
end architecture;

powered by: WebSVN 2.1.0

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