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

Subversion Repositories open8_urisc

[/] [open8_urisc/] [trunk/] [VHDL/] [Open8_pkg.vhd] - Blame information for rev 141

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

Line No. Rev Author Line
1 7 jshamlet
-- Copyright (c)2006, Jeremy Seth Henry
2
-- All rights reserved.
3
--
4
-- Redistribution and use in source and binary forms, with or without
5
-- modification, are permitted provided that the following conditions are met:
6
--     * Redistributions of source code must retain the above copyright
7
--       notice, this list of conditions and the following disclaimer.
8
--     * Redistributions in binary form must reproduce the above copyright
9
--       notice, this list of conditions and the following disclaimer in the
10
--       documentation and/or other materials provided with the distribution,
11
--       where applicable (as part of a user interface, debugging port, etc.)
12
--
13
-- THIS SOFTWARE IS PROVIDED BY JEREMY SETH HENRY ``AS IS'' AND ANY
14
-- EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
15
-- WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
16
-- DISCLAIMED. IN NO EVENT SHALL JEREMY SETH HENRY BE LIABLE FOR ANY
17
-- DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
18
-- (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
19
-- LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
20
-- ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
21
-- (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
22
-- SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
23
 
24
-- VHDL Units :  Open8_pkg
25
-- Description:  Contains constant definitions for the Open8 processor
26
-- Revision History
27
-- Author          Date     Change
28
------------------ -------- ---------------------------------------------------
29
-- Seth Henry      07/22/06 Design Start
30
 
31
library ieee;
32
use ieee.std_logic_1164.all;
33
 
34
package Open8_pkg is
35
 
36
  -- These subtypes can be used with external peripherals to simplify
37
  --  connection to the core. 
38
  subtype ADDRESS_TYPE is std_logic_vector(15 downto 0);
39
  subtype DATA_TYPE    is std_logic_vector(7 downto 0);
40
  -- Note: INTERRUPT_BUNDLE must be exactly the same width as DATA_TYPE
41
  subtype INTERRUPT_BUNDLE is DATA_TYPE;
42
 
43
  -- Component declaration
44
  component Open8_CPU is
45
  generic(
46
    Stack_Start_Addr         : ADDRESS_TYPE;
47
    Allow_Stack_Address_Move : std_logic := '0';
48
    ISR_Start_Addr           : ADDRESS_TYPE;
49
    Program_Start_Addr       : ADDRESS_TYPE;
50
    Default_Interrupt_Mask   : DATA_TYPE;
51
    Enable_CPU_Halt          : std_logic := '0';
52
    Enable_Auto_Increment    : std_logic := '0' );
53
  port(
54
    Clock                    : in  std_logic;
55
    Reset_n                  : in  std_logic;
56
    CPU_Halt                 : in  std_logic;
57
    Interrupts               : in  INTERRUPT_BUNDLE;
58
    Address                  : out ADDRESS_TYPE;
59
    Rd_Data                  : in  DATA_TYPE;
60
    Rd_Enable                : out std_logic;
61
    Wr_Data                  : out DATA_TYPE;
62
    Wr_Enable                : out std_logic );
63
  end component;
64
 
65
end Open8_pkg;
66
 
67
package body Open8_pkg is
68 10 khays
end package body;

powered by: WebSVN 2.1.0

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