@@ -500,22 +500,26 @@ def __init__(self, m, name, clk, rst, datawidth=32, addrwidth=32,
500500 self .wuser .assign (user_mode )
501501
502502 # user-side signals before skidbuffer
503- wdata = m .TmpRegLike (self .wdata , prefix = '_' .join (['' , name , 'wdata' , 'sb' ]))
504- wstrb = m .TmpRegLike (self .wstrb , prefix = '_' .join (['' , name , 'wstrb' , 'sb' ]))
505- wlast = m .TmpRegLike (self .wlast , prefix = '_' .join (['' , name , 'wlast' , 'sb' ]))
506- wvalid = m .TmpRegLike (self .wvalid , prefix = '_' .join (['' , name , 'wvalid' , 'sb' ]))
503+ wdata = m .TmpRegLike (self .wdata , initval = 0 ,
504+ prefix = '_' .join (['' , name , 'wdata' , 'sb' ]))
505+ wstrb = m .TmpRegLike (self .wstrb , initval = 0 ,
506+ prefix = '_' .join (['' , name , 'wstrb' , 'sb' ]))
507+ wlast = m .TmpRegLike (self .wlast , initval = 0 ,
508+ prefix = '_' .join (['' , name , 'wlast' , 'sb' ]))
509+ wvalid = m .TmpRegLike (self .wvalid , initval = 0 ,
510+ prefix = '_' .join (['' , name , 'wvalid' , 'sb' ]))
507511 wready = m .TmpWireLike (self .wready , prefix = '_' .join (['' , name , 'wready' , 'sb' ]))
508512
509513 # skidbuffer
510514 sb = SkidBuffer (m , clk , rst ,
511- wvalid , self .wready , * [wdata , wstrb , wlast ],
515+ wvalid , self .wready , * [wlast , wstrb , wdata ],
512516 prefix = '_' .join (['' , 'sb' , name , 'writedata' ]))
513517 wready .assign (sb .ready )
514518
515519 # AXI-side signals after skidbuffer
516- self .wdata .assign (sb [0 ])
520+ self .wdata .assign (sb [2 ])
517521 self .wstrb .assign (sb [1 ])
518- self .wlast .assign (sb [2 ])
522+ self .wlast .assign (sb [0 ])
519523 self .wvalid .assign (sb .valid )
520524
521525 # save AXI-side references
@@ -751,10 +755,10 @@ def __init__(self, m, name, clk, rst, datawidth=32, addrwidth=32,
751755
752756 # skidbuffer
753757 sb = SkidBuffer (m , clk , rst ,
754- self .rvalid , rready , * [self .rdata , self .rlast ],
758+ self .rvalid , rready , * [self .rlast , self .rdata ],
755759 prefix = '_' .join (['' , 'sb' , name , 'readdata' ]))
756- rdata .assign (sb [0 ])
757- rlast .assign (sb [1 ])
760+ rdata .assign (sb [1 ])
761+ rlast .assign (sb [0 ])
758762 rvalid .assign (sb .valid )
759763
760764 # AXI-side signals after skidbuffer
@@ -897,20 +901,23 @@ def __init__(self, m, name, clk, rst, datawidth=32, addrwidth=32,
897901 self .seq = Seq (m , name + '_wdata' , clk , rst )
898902
899903 # user-side signals before skidbuffer
900- wdata = m .TmpRegLike (self .wdata , prefix = '_' .join (['' , name , 'wdata' , 'sb' ]))
901- wstrb = m .TmpRegLike (self .wstrb , prefix = '_' .join (['' , name , 'wstrb' , 'sb' ]))
902- wvalid = m .TmpRegLike (self .wvalid , prefix = '_' .join (['' , name , 'wvalid' , 'sb' ]))
904+ wdata = m .TmpRegLike (self .wdata , initval = 0 ,
905+ prefix = '_' .join (['' , name , 'wdata' , 'sb' ]))
906+ wstrb = m .TmpRegLike (self .wstrb , initval = 0 ,
907+ prefix = '_' .join (['' , name , 'wstrb' , 'sb' ]))
908+ wvalid = m .TmpRegLike (self .wvalid , initval = 0 ,
909+ prefix = '_' .join (['' , name , 'wvalid' , 'sb' ]))
903910 wready = m .TmpWireLike (self .wready , prefix = '_' .join (['' , name , 'wready' , 'sb' ]))
904911
905912 # skidbuffer
906913 sb = SkidBuffer (m , clk , rst ,
907- wvalid , self .wready , * [wdata , wstrb ],
914+ wvalid , self .wready , * [wstrb , wdata ],
908915 prefix = '_' .join (['' , 'sb' , name , 'writedata' ]))
909916 wready .assign (sb .ready )
910917
911918 # AXI-side signals after skidbuffer
912- self .wdata .assign (sb [0 ])
913- self .wstrb .assign (sb [1 ])
919+ self .wdata .assign (sb [1 ])
920+ self .wstrb .assign (sb [0 ])
914921 self .wvalid .assign (sb .valid )
915922
916923 # save AXI-side references
0 commit comments