summaryrefslogtreecommitdiffstats
path: root/usrp2/gpmc/gpmc.v
diff options
context:
space:
mode:
authorMatt Ettus <matt@ettus.com>2010-02-17 15:00:41 -0800
committerMatt Ettus <matt@ettus.com>2010-02-17 15:00:41 -0800
commit1912ff60acd490a24204a7596e373e9aef9276cd (patch)
treebfafc8c569e7b3425746f94608fb83358e43529b /usrp2/gpmc/gpmc.v
parentd4649caee02a1c76802dc4f8d7d76bb31b14ce09 (diff)
downloaduhd-1912ff60acd490a24204a7596e373e9aef9276cd.tar.gz
uhd-1912ff60acd490a24204a7596e373e9aef9276cd.tar.bz2
uhd-1912ff60acd490a24204a7596e373e9aef9276cd.zip
speed up the presentation of registered wb data to the gpmc
Diffstat (limited to 'usrp2/gpmc/gpmc.v')
-rw-r--r--usrp2/gpmc/gpmc.v7
1 files changed, 5 insertions, 2 deletions
diff --git a/usrp2/gpmc/gpmc.v b/usrp2/gpmc/gpmc.v
index 1963af6e6..56f879abc 100644
--- a/usrp2/gpmc/gpmc.v
+++ b/usrp2/gpmc/gpmc.v
@@ -12,7 +12,7 @@ module gpmc
wire EM_output_enable = (~EM_NOE & (~EM_NCS4 | ~EM_NCS6));
wire [15:0] EM_D_ram;
- reg [15:0] EM_D_wb;
+ wire [15:0] EM_D_wb;
assign EM_D = ~EM_output_enable ? 16'bz : ~EM_NCS4 ? EM_D_ram : EM_D_wb;
@@ -44,10 +44,13 @@ module gpmc
wb_sel_o <= ~EM_NBE;
end
+ reg [15:0] EM_D_wb_reg;
always @(posedge wb_clk)
if(wb_ack_i)
- EM_D_wb <= wb_dat_miso;
+ EM_D_wb_reg <= wb_dat_miso;
+ assign EM_D_wb = wb_ack_i ? wb_dat_miso : EM_D_wb_reg;
+
// stb, oe_del, we_del
assign wb_cyc_o = wb_stb_o;