aboutsummaryrefslogtreecommitdiffstats
path: root/usrp2/opencores
diff options
context:
space:
mode:
authorJosh Blum <josh@joshknows.com>2010-12-17 19:02:14 -0800
committerJosh Blum <josh@joshknows.com>2010-12-17 19:02:14 -0800
commit110070fe371e521c0f20cbbb1b1da66312cb4d74 (patch)
tree73d68784058b23846dd001c53b2598f066ada31e /usrp2/opencores
parenta96f39ef767ffcecac4a1cb7d20584fb7bd1e11a (diff)
downloaduhd-110070fe371e521c0f20cbbb1b1da66312cb4d74.tar.gz
uhd-110070fe371e521c0f20cbbb1b1da66312cb4d74.tar.bz2
uhd-110070fe371e521c0f20cbbb1b1da66312cb4d74.zip
usrp-n210: almost working w/ packet router + zpu
added stack start signal to zpu removed wb perifs in n210 out of 0-16k added reset controller for main app rewire cpu addr line after booted use 0-16k
Diffstat (limited to 'usrp2/opencores')
-rw-r--r--usrp2/opencores/zpu/core/zpu_config.vhd5
-rw-r--r--usrp2/opencores/zpu/core/zpu_core.vhd3
-rw-r--r--usrp2/opencores/zpu/core/zpupkg.vhd1
-rw-r--r--usrp2/opencores/zpu/wishbone/zpu_system.vhd3
-rw-r--r--usrp2/opencores/zpu/zpu_top_pkg.vhd2
-rw-r--r--usrp2/opencores/zpu/zpu_wb_top.vhd2
6 files changed, 8 insertions, 8 deletions
diff --git a/usrp2/opencores/zpu/core/zpu_config.vhd b/usrp2/opencores/zpu/core/zpu_config.vhd
index f7743d602..b7e894232 100644
--- a/usrp2/opencores/zpu/core/zpu_config.vhd
+++ b/usrp2/opencores/zpu/core/zpu_config.vhd
@@ -12,9 +12,4 @@ package zpu_config is
constant ZPU_Frequency : std_logic_vector(7 downto 0) := x"40";
-- This is the msb address bit. bytes=2^(maxAddrBitIncIO+1)
constant maxAddrBitIncIO : integer := 15;
-
- -- start byte address of stack.
- -- point to top of RAM - 2*words
- constant spStart : std_logic_vector(maxAddrBitIncIO downto 0) := x"3ff8";
-
end zpu_config;
diff --git a/usrp2/opencores/zpu/core/zpu_core.vhd b/usrp2/opencores/zpu/core/zpu_core.vhd
index 2450f14d3..24586b2f6 100644
--- a/usrp2/opencores/zpu/core/zpu_core.vhd
+++ b/usrp2/opencores/zpu/core/zpu_core.vhd
@@ -26,6 +26,7 @@ entity zpu_core is
mem_write : out std_logic_vector(wordSize-1 downto 0);
out_mem_addr : out std_logic_vector(maxAddrBitIncIO downto 0);
mem_writeMask: out std_logic_vector(wordBytes-1 downto 0);
+ stack_start : in std_logic_vector(maxAddrBitIncIO downto 0);
interrupt : in std_logic;
break : out std_logic;
zpu_status : out std_logic_vector(63 downto 0));
@@ -202,7 +203,7 @@ begin
if areset = '1' then
state <= State_Idle;
break <= '0';
- sp <= spStart(maxAddrBitIncIO downto minAddrBit);
+ sp <= stack_start(maxAddrBitIncIO downto minAddrBit);
pc <= (others => '0');
idim_flag <= '0';
diff --git a/usrp2/opencores/zpu/core/zpupkg.vhd b/usrp2/opencores/zpu/core/zpupkg.vhd
index 1a01563b8..eee967a09 100644
--- a/usrp2/opencores/zpu/core/zpupkg.vhd
+++ b/usrp2/opencores/zpu/core/zpupkg.vhd
@@ -73,6 +73,7 @@ package zpupkg is
mem_write : out std_logic_vector(wordSize-1 downto 0);
out_mem_addr : out std_logic_vector(maxAddrBitIncIO downto 0);
mem_writeMask: out std_logic_vector(wordBytes-1 downto 0);
+ stack_start : in std_logic_vector(maxAddrBitIncIO downto 0);
interrupt : in std_logic;
break : out std_logic;
zpu_status : out std_logic_vector(63 downto 0));
diff --git a/usrp2/opencores/zpu/wishbone/zpu_system.vhd b/usrp2/opencores/zpu/wishbone/zpu_system.vhd
index 294651fe2..8af678b6a 100644
--- a/usrp2/opencores/zpu/wishbone/zpu_system.vhd
+++ b/usrp2/opencores/zpu/wishbone/zpu_system.vhd
@@ -51,7 +51,7 @@ entity zpu_system is
-- ZPU Control signals
enable : in std_logic;
interrupt : in std_logic;
-
+ stack_start : in std_logic_vector(maxAddrBitIncIO downto 0);
zpu_status : out std_logic_vector(63 downto 0);
-- wishbone interfaces
@@ -84,6 +84,7 @@ begin
mem_write => mem_write,
out_mem_addr => out_mem_addr,
mem_writeMask => mem_writeMask,
+ stack_start => stack_start,
interrupt => interrupt,
zpu_status => zpu_status,
break => open);
diff --git a/usrp2/opencores/zpu/zpu_top_pkg.vhd b/usrp2/opencores/zpu/zpu_top_pkg.vhd
index 23ff48c39..a158ab9c0 100644
--- a/usrp2/opencores/zpu/zpu_top_pkg.vhd
+++ b/usrp2/opencores/zpu/zpu_top_pkg.vhd
@@ -35,7 +35,7 @@ package zpu_top_pkg is
-- ZPU Control signals
enable : in std_logic;
interrupt : in std_logic;
-
+ stack_start : in std_logic_vector(maxAddrBitIncIO downto 0);
zpu_status : out std_logic_vector(63 downto 0);
-- wishbone interfaces
diff --git a/usrp2/opencores/zpu/zpu_wb_top.vhd b/usrp2/opencores/zpu/zpu_wb_top.vhd
index 48e5ee31d..9735c4b54 100644
--- a/usrp2/opencores/zpu/zpu_wb_top.vhd
+++ b/usrp2/opencores/zpu/zpu_wb_top.vhd
@@ -36,6 +36,7 @@ entity zpu_wb_top is
-- misc zpu signals
interrupt: in std_logic;
+ stack_start: in std_logic_vector(adr_w-1 downto 0);
zpu_status: out std_logic_vector(63 downto 0)
);
@@ -66,6 +67,7 @@ zpu_system0: zpu_system port map(
areset => rst,
enable => enb,
interrupt => interrupt,
+ stack_start => stack_start,
zpu_status => zpu_status,
zpu_wb_i => zpu_wb_i,
zpu_wb_o => zpu_wb_o