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

Subversion Repositories mlite

[/] [mlite/] [trunk/] [vhdl/] [plasma_3e.vhd] - Diff between revs 287 and 346

Go to most recent revision | Show entire file | Details | Blame | View Log

Rev 287 Rev 346
Line 80... Line 80...
architecture logic of plasma_3e is
architecture logic of plasma_3e is
 
 
   component plasma
   component plasma
      generic(memory_type : string := "XILINX_16X"; --"DUAL_PORT_" "ALTERA_LPM";
      generic(memory_type : string := "XILINX_16X"; --"DUAL_PORT_" "ALTERA_LPM";
              log_file    : string := "UNUSED";
              log_file    : string := "UNUSED";
              ethernet    : std_logic := '0');
              ethernet    : std_logic := '0';
 
              use_cache   : std_logic := '0');
      port(clk          : in std_logic;
      port(clk          : in std_logic;
           reset        : in std_logic;
           reset        : in std_logic;
           uart_write   : out std_logic;
           uart_write   : out std_logic;
           uart_read    : in std_logic;
           uart_read    : in std_logic;
 
 
           address      : out std_logic_vector(31 downto 2);
           address      : out std_logic_vector(31 downto 2);
           byte_we      : out std_logic_vector(3 downto 0);
           byte_we      : out std_logic_vector(3 downto 0);
           data_write   : out std_logic_vector(31 downto 0);
           data_write   : out std_logic_vector(31 downto 0);
           data_read    : in std_logic_vector(31 downto 0);
           data_read    : in std_logic_vector(31 downto 0);
           mem_pause_in : in std_logic;
           mem_pause_in : in std_logic;
 
           no_ddr_start : out std_logic;
 
           no_ddr_stop  : out std_logic;
 
 
           gpio0_out    : out std_logic_vector(31 downto 0);
           gpio0_out    : out std_logic_vector(31 downto 0);
           gpioA_in     : in std_logic_vector(31 downto 0));
           gpioA_in     : in std_logic_vector(31 downto 0));
   end component; --plasma
   end component; --plasma
 
 
Line 106... Line 109...
           address  : in std_logic_vector(25 downto 2);
           address  : in std_logic_vector(25 downto 2);
           byte_we  : in std_logic_vector(3 downto 0);
           byte_we  : in std_logic_vector(3 downto 0);
           data_w   : in std_logic_vector(31 downto 0);
           data_w   : in std_logic_vector(31 downto 0);
           data_r   : out std_logic_vector(31 downto 0);
           data_r   : out std_logic_vector(31 downto 0);
           active   : in std_logic;
           active   : in std_logic;
 
           no_start : in std_logic;
 
           no_stop  : in std_logic;
           pause    : out std_logic;
           pause    : out std_logic;
 
 
           SD_CK_P  : out std_logic;     --clock_positive
           SD_CK_P  : out std_logic;     --clock_positive
           SD_CK_N  : out std_logic;     --clock_negative
           SD_CK_N  : out std_logic;     --clock_negative
           SD_CKE   : out std_logic;     --clock_enable
           SD_CKE   : out std_logic;     --clock_enable
Line 135... Line 140...
   signal data_r_ddr   : std_logic_vector(31 downto 0);
   signal data_r_ddr   : std_logic_vector(31 downto 0);
   signal byte_we      : std_logic_vector(3 downto 0);
   signal byte_we      : std_logic_vector(3 downto 0);
   signal write_enable : std_logic;
   signal write_enable : std_logic;
   signal pause_ddr    : std_logic;
   signal pause_ddr    : std_logic;
   signal pause        : std_logic;
   signal pause        : std_logic;
 
   signal no_ddr_start : std_logic;
 
   signal no_ddr_stop  : std_logic;
   signal ddr_active   : std_logic;
   signal ddr_active   : std_logic;
   signal flash_active : std_logic;
   signal flash_active : std_logic;
   signal flash_cnt    : std_logic_vector(1 downto 0);
   signal flash_cnt    : std_logic_vector(1 downto 0);
   signal flash_we     : std_logic;
   signal flash_we     : std_logic;
   signal reset        : std_logic;
   signal reset        : std_logic;
Line 177... Line 184...
   write_enable <= '1' when byte_we /= "0000" else '0';
   write_enable <= '1' when byte_we /= "0000" else '0';
 
 
   u1_plama: plasma
   u1_plama: plasma
      generic map (memory_type => "XILINX_16X",
      generic map (memory_type => "XILINX_16X",
                   log_file    => "UNUSED",
                   log_file    => "UNUSED",
                   ethernet    => '1')
                   ethernet    => '1',
 
                   use_cache   => '1')
      --generic map (memory_type => "DUAL_PORT_",
      --generic map (memory_type => "DUAL_PORT_",
      --             log_file    => "output2.txt",
      --             log_file    => "output2.txt",
      --             ethernet    => '1')
      --             ethernet    => '1')
      PORT MAP (
      PORT MAP (
         clk          => clk_reg,
         clk          => clk_reg,
Line 192... Line 200...
         address      => address,
         address      => address,
         byte_we      => byte_we,
         byte_we      => byte_we,
         data_write   => data_write,
         data_write   => data_write,
         data_read    => data_read,
         data_read    => data_read,
         mem_pause_in => pause,
         mem_pause_in => pause,
 
         no_ddr_start => no_ddr_start,
 
         no_ddr_stop  => no_ddr_stop,
 
 
         gpio0_out    => gpio0_out,
         gpio0_out    => gpio0_out,
         gpioA_in     => gpio0_in);
         gpioA_in     => gpio0_in);
 
 
   u2_ddr: ddr_ctrl
   u2_ddr: ddr_ctrl
Line 207... Line 217...
         address  => address(25 downto 2),
         address  => address(25 downto 2),
         byte_we  => byte_we,
         byte_we  => byte_we,
         data_w   => data_write,
         data_w   => data_write,
         data_r   => data_r_ddr,
         data_r   => data_r_ddr,
         active   => ddr_active,
         active   => ddr_active,
 
         no_start => no_ddr_start,
 
         no_stop  => no_ddr_stop,
         pause    => pause_ddr,
         pause    => pause_ddr,
 
 
         SD_CK_P  => SD_CK_P,    --clock_positive
         SD_CK_P  => SD_CK_P,    --clock_positive
         SD_CK_N  => SD_CK_N,    --clock_negative
         SD_CK_N  => SD_CK_N,    --clock_negative
         SD_CKE   => SD_CKE,     --clock_enable
         SD_CKE   => SD_CKE,     --clock_enable
Line 259... Line 271...
 
 
   SF_CE0  <= not flash_active;
   SF_CE0  <= not flash_active;
   SF_OE   <= write_enable or not flash_active;
   SF_OE   <= write_enable or not flash_active;
   SF_WE   <= flash_we;
   SF_WE   <= flash_we;
   SF_BYTE <= '1';  --16-bit access
   SF_BYTE <= '1';  --16-bit access
   SF_A    <= address(25 downto 2) & '0';
   SF_A    <= address(25 downto 2) & '0' when flash_active = '1' else
 
              "0000000000000000000000000";
   SF_D    <= data_write(15 downto 1) when
   SF_D    <= data_write(15 downto 1) when
              flash_active = '1' and write_enable = '1'
              flash_active = '1' and write_enable = '1'
              else "ZZZZZZZZZZZZZZZ";
              else "ZZZZZZZZZZZZZZZ";
   SPI_MISO <= data_write(0) when
   SPI_MISO <= data_write(0) when
              flash_active = '1' and write_enable = '1'
              flash_active = '1' and write_enable = '1'

powered by: WebSVN 2.1.0

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