1 // Copyright (C) 2005 Peio Azkarate, peio@opencores.org
2 // Copyright (C) 2006 Jeff Carr, jcarr@opencores.org
5 module pcidec_new (clk_i, nrst_i, ad_i, cbe_i, idsel_i, bar0_i, memEN_i,
6 pciadrLD_i, adrcfg_o, adrmem_o, adr_o, cmd_o);
29 //+-------------------------------------------------------------------------+
30 //| Load PCI Signals |
31 //+-------------------------------------------------------------------------+
33 always @( negedge nrst_i or posedge clk_i )
37 adr <= 23'b1111_1111_1111_1111_1111_111;
42 if ( pciadrLD_i == 1 )
51 ( memEN_i == 1'b1 ) &&
52 ( adr [31:25] == bar0_i ) &&
53 ( adr [1:0] == 2'b00 ) &&
54 ( cmd [3:1] == 3'b011 )
58 ( idsel_s == 1'b1 ) &&
59 ( adr [1:0] == 2'b00 ) &&
60 ( cmd [3:1] == 3'b101 )
63 assign a1 = ~ ( cbe_i [3] && cbe_i [2] );
64 assign adr_o = {adr [24:2], a1};