Skip to content

Commit 111191a

Browse files
AWSaallurikristopk
authored andcommitted
v1.4.5 updates (#438)
* v1.4.5 updates * Update README.md * release notes & documents updates * Update AWS_Shell_Interface_Specification.md * Update sh_bfm.sv * release notes update
1 parent 6abb305 commit 111191a

19 files changed

+601
-15
lines changed

.gitmodules

+1
Original file line numberDiff line numberDiff line change
@@ -5,3 +5,4 @@
55
[submodule "SDAccel/examples/xilinx_2018.2"]
66
path = SDAccel/examples/xilinx_2018.2
77
url = https://github.com/Xilinx/SDAccel_Examples.git
8+
branch = master

README.md

+2-1
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,7 @@ NOTE: For on-premises development, SDx/Vivado must have the correct license and
6767
| Virtual Ethernet Application | [Example Application](sdk/apps/virtual-ethernet) | [HDK SDE Example](hdk/cl/examples/cl_sde) | The Virtual Ethernet framework facilitates streaming Ethernet frames from a network interface (or any source) into the FPGA for processing and back out to some destination. Possible use cases for this include deep packet inspection, software defined networking, stream encryption or compression, and more. |
6868
| Pipelined Workload Applications | [cl\_dram\_dma\_data\_retention](hdk/docs/data_retention.md)| [HDK](hdk/cl/examples/cl_dram_dma/software/runtime/test_dram_dma_retention.c) [SDAccel](SDAccel/examples/aws/data_retention) | Demonstrates how to preserve data in DRAMs while swapping out accelerators. Applications that use a temporal accelerator pipeline can take advantage of this feature to reduce latency between FPGA image swaps |
6969
| Digital Up-Converter using High Level Synthesis | [cl\_hls\_dds\_hlx](hdk/cl/examples/cl_hls_dds_hlx) | HLx - C-to-RTL | Demonstrates an example application written in C that is synthesized to RTL (Verilog) |
70-
| Security | [AES, RSA, SHA1](https://github.com/Xilinx/SDAccel_Examples/tree/master/security) | SDAccel - C/C++/OpenCL | Developed using software defined acceleration, this example demonstrates methods of using hardware acceleration to speed up security software algorithms |
70+
| Security | [AES, RSA, SHA1](https://github.com/Xilinx/SDAccel_Examples/tree/2018.2/security) | SDAccel - C/C++/OpenCL | Developed using software defined acceleration, this example demonstrates methods of using hardware acceleration to speed up security software algorithms |
7171
| Computer Vision | [Affine, Convolve, Huffman, IDCT](https://github.com/Xilinx/SDAccel_Examples/tree/master/vision) | SDAccel - C/C++/OpenCL | Developed using software defined acceleration, this example demonstrates methods of using hardware acceleration to speed up image detection algorithms |
7272
| Misc Algorithms | [Kmeans, SmithWaterman, MatrixMult](https://github.com/Xilinx/SDAccel_Examples/tree/master/acceleration) | SDAccel - C/C++/OpenCL | Developed using software defined acceleration, this example demonstrates methods of applying hardware acceleration to a variety of sorting and search algorithms |
7373
| Financial | [Blacksholes, Heston](https://github.com/KitAway/FinancialModels_AmazonF1) | SDAccel - C/C++/OpenCL | Developed using software defined acceleration, this example demonstrates methods of using hardware acceleration on Monte Carlo financial models |
@@ -118,6 +118,7 @@ Currently, AWS marketplace includes multiple versions of the FPGA developer AMI,
118118

119119
Developer kit versions prior to v1.3.7 and Developer AMI prior to v1.4 (2017.1) reached end-of-life. See [AWS forum announcement](https://forums.aws.amazon.com/ann.jspa?annID=6068) for additional details.
120120

121+
If developing using SDAccel environment please refer to this [Runtime Compatibility Table](SDAccel/docs/Create_Runtime_AMI.md#runtime-ami-compatability-table)
121122

122123
<a name="fpgahdk"></a>
123124
# Hardware Development Kit (HDK)

RELEASE_NOTES.md

+9
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,15 @@
2626
* 1 DDR controller implemented in the SH (always available)
2727
* 3 DDR controllers implemented in the CL (configurable number of implemented controllers allowed)
2828

29+
## Release 1.4.5 (See [ERRATA](./ERRATA.md) for unsupported features)
30+
31+
* [Documents SDAccel Runtime compatibility](SDAccel/docs/Create_Runtime_AMI.md#runtime-ami-compatability-table)
32+
* [Enables SDK FPGA Mgmt tool access to Non-root users](sdk/README.md#using-fpga-as-non-root-user)
33+
* Fixed issues
34+
* [HLX simulation failure](https://forums.aws.amazon.com/thread.jspa?threadID=293313&tstart=0)
35+
* [Shell BFM read from C host memory](https://forums.aws.amazon.com/thread.jspa?threadID=288959&tstart=0)
36+
* [cl_dram_dma example design DDR read issue](https://forums.aws.amazon.com/thread.jspa?threadID=290277&tstart=50)
37+
2938
## Release 1.4.4 (See [ERRATA](./ERRATA.md) for unsupported features)
3039
* Fixed compile issues in simulation while using 3rd party simulators (synopsys VCS, Cadence IES and Mentor Questasim).
3140

SDAccel/README.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -192,7 +192,7 @@ For help with AFI creation issues, see [create-fpga-image error codes](../hdk/do
192192
# 3. Run the FPGA accelerated application on Amazon FPGA instances
193193

194194
Here are the steps:
195-
* Start an FPGA instance using [FPGA Developer AMI on AWS Marketplace](https://aws.amazon.com/marketplace/pp/B06VVYBLZZ) and check the AMI [compatiability table](../README.md#devAmi). Alternatively, you can [create your own Runtime AMI](docs/Create_Runtime_AMI.md) for running your SDAccel applications on Amazon FPGA instances.
195+
* Start an FPGA instance using [FPGA Developer AMI on AWS Marketplace](https://aws.amazon.com/marketplace/pp/B06VVYBLZZ) and check the AMI [compatiability table](../README.md#devAmi) and [runtime compatilibility table](docs/Create_Runtime_AMI.md#runtime-ami-compatability-table). Alternatively, you can [create your own Runtime AMI](docs/Create_Runtime_AMI.md) for running your SDAccel applications on Amazon FPGA instances.
196196
* *Assuming the developer flow (compilation) was done on a separate instance you will need to:*
197197
* Copy the compiled host executable (exe) to new instance
198198
* Copy the \*.awsxclbin AWS FPGA binary file to the new instance

SDAccel/docs/Create_Runtime_AMI.md

+7
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,12 @@
11
# Create a Runtime AMI Starting with an Amazon Linux AMI or Ubuntu
22

3+
## Runtime AMI Compatability Table
4+
5+
| SDx Version used for AFI Development | Compatible SDAccel Runtime |
6+
|--------------------------------------|-----------------------------|
7+
| 2017.4 | Runtime installed by sourcing "sdaccel_setup.sh" while using HDK Ver 1.4.X when environment variable RELEASE_VER=2017.4 |
8+
| 2018.2 | AWS FPGA Developer AMI 1.5.0 ( XRT is pre-installed) or [Runtime installed with XRT Version 2.1.0](https://www.xilinx.com/html_docs/xilinx2018_2_xdf/sdaccel_doc/ejy1538090924727.html) |
9+
310
## 1. Launch a Runtime Instance & Install Required Packages
411

512
### Using Amazon Linux

hdk/cl/examples/cl_dram_dma/design/cl_dram_dma_axi_mstr.sv

+8-7
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ module cl_dram_dma_axi_mstr (
2929
);
3030

3131
`include "cl_dram_dma_defines.vh"
32-
32+
3333
// -----------------------------------------------------------------------------
3434
// Parameters
3535
// -----------------------------------------------------------------------------
@@ -97,7 +97,7 @@ module cl_dram_dma_axi_mstr (
9797
cfg_wdata_q <= axi_mstr_cfg_bus.wdata[31:0];
9898
end
9999
end
100-
100+
101101
//Readback mux
102102
always @(posedge aclk)
103103
begin
@@ -110,7 +110,7 @@ module cl_dram_dma_axi_mstr (
110110
default: axi_mstr_cfg_bus.rdata[31:0] <= 32'hffffffff;
111111
endcase
112112
end
113-
113+
114114
//Ack for cycle
115115
always_ff @(posedge aclk)
116116
if (!aresetn)
@@ -238,7 +238,7 @@ module cl_dram_dma_axi_mstr (
238238
// ----------------------
239239

240240
assign cmd_rd_data_ns[31:0] =
241-
(axi_mstr_sm_rd_data & cl_axi_mstr_bus.rvalid) ? cl_axi_mstr_bus.rdata[31:0] :
241+
(axi_mstr_sm_rd_data & cl_axi_mstr_bus.rvalid) ? (cl_axi_mstr_bus.rdata[511:0] >> (8 * cmd_addr_lo_q[5:0])) :
242242
cmd_rd_data_q[31:0] ;
243243

244244
always_ff @(posedge aclk)
@@ -338,8 +338,9 @@ module cl_dram_dma_axi_mstr (
338338

339339
// Write Data
340340
assign cl_axi_mstr_bus.wid[15:0] = 16'b0; // Only 1 outstanding command
341-
assign cl_axi_mstr_bus.wdata[511:0] = {480'b0, cmd_wr_data_q[31:0]};
342-
assign cl_axi_mstr_bus.wstrb[63:0] = 64'h0000_0000_0000_000F; // Always 4 bytes
341+
assign cl_axi_mstr_bus.wdata[511:0] = {480'b0, cmd_wr_data_q[31:0]} << (8 * cmd_addr_lo_q[5:0]);
342+
assign cl_axi_mstr_bus.wstrb[63:0] = 64'h0000_0000_0000_000F << cmd_addr_lo_q[5:0]; // Always 4 bytes
343+
343344
assign cl_axi_mstr_bus.wlast = 1'b1; // Always 1 burst
344345
assign cl_axi_mstr_bus.wvalid = axi_mstr_sm_wr_data;
345346

@@ -356,4 +357,4 @@ module cl_dram_dma_axi_mstr (
356357
// Read Data
357358
assign cl_axi_mstr_bus.rready = axi_mstr_sm_rd_data;
358359

359-
endmodule
360+
endmodule

0 commit comments

Comments
 (0)