mirror of
https://github.com/bmartini/zynq-axis.git
synced 2024-09-05 19:19:27 +08:00
Indicates burst size in bytes of each transfer
This signal encoding is determined using the axi data width parameter as per Section 4.3 of the AXI Protocol Specification (v1.0).
This commit is contained in:
parent
852e507af2
commit
9ee0ce64ee
@ -100,6 +100,20 @@ module axis #(
|
||||
);
|
||||
|
||||
|
||||
/**
|
||||
* Local parameters
|
||||
*/
|
||||
|
||||
localparam BURST_SIZE =
|
||||
( 1 == (AXI_DATA_WIDTH/8)) ? 3'h0 :
|
||||
( 2 == (AXI_DATA_WIDTH/8)) ? 3'h1 :
|
||||
( 4 == (AXI_DATA_WIDTH/8)) ? 3'h2 :
|
||||
( 8 == (AXI_DATA_WIDTH/8)) ? 3'h3 :
|
||||
(16 == (AXI_DATA_WIDTH/8)) ? 3'h4 :
|
||||
(32 == (AXI_DATA_WIDTH/8)) ? 3'h5 :
|
||||
(64 == (AXI_DATA_WIDTH/8)) ? 3'h6 : 3'h7;
|
||||
|
||||
|
||||
/**
|
||||
* Implementation
|
||||
*/
|
||||
@ -110,7 +124,7 @@ module axis #(
|
||||
assign axi_awprot = 3'h0; // DATA_SECURE_NORMAL
|
||||
assign axi_awburst = 2'h1; // INCREMENTING
|
||||
assign axi_awqos = 4'h0; // NOT_QOS_PARTICIPANT
|
||||
assign axi_awsize = 3'h3; // EIGHT_BYTES
|
||||
assign axi_awsize = BURST_SIZE;
|
||||
assign axi_wstrb = {(AXI_DATA_WIDTH/8){1'b1}};
|
||||
|
||||
// read path static values
|
||||
@ -119,7 +133,7 @@ module axis #(
|
||||
assign axi_arprot = 3'h0; // DATA_SECURE_NORMAL
|
||||
assign axi_arburst = 2'h1; // INCREMENTING
|
||||
assign axi_arqos = 4'h0; // NOT_QOS_PARTICIPANT
|
||||
assign axi_arsize = 3'h3; // EIGHT_BYTES
|
||||
assign axi_arsize = BURST_SIZE;
|
||||
|
||||
|
||||
// assume that all writes are successful and therefore do not need to
|
||||
|
Loading…
x
Reference in New Issue
Block a user