Skip to content

Commit 2fa6b06

Browse files
AWSaallurideeppat
authored andcommitted
Rc v1 4 10 (#463)
Release V1.4.10 * New functionality: * SDK now sorts the slots in DBDF order. Any scripts or integration maintainers should note that the slot order will be different from previous versions and should make any updates accordingly. * Bug Fixes: * Fixes a bug in the [Automatic Traffic Generator (ATG)](./hdk/cl/examples/cl_dram_dma/design/cl_tst.sv). In SYNC mode, the ATG did not wait for write response transaction before issuing read transactions. * Released [Xilinx runtime(XRT) version 2018.3.3.2](https://github.com/Xilinx/XRT/releases/tag/2018.3.3.2) to fix the following error: `symbol lookup error: /opt/xilinx/xrt/lib/libxrt_aws.so: undefined symbol: uuid_parse!` discussed in this [forum post](https://forums.aws.amazon.com/thread.jspa?messageID=899474&#899474). * This release fixes a bug wherein concurrent AFI load requests on two or more slots resulted in a race condition which sometimes resulted in Error: `(20) pci-device-missing` * This release fixes a issue with coding style of logic which could infer a latch during synthesis in [sde_ps_acc module](./hdk/cl/examples/cl_sde/design/sde_ps_acc.sv) within cl_sde example
1 parent ed564e7 commit 2fa6b06

File tree

136 files changed

+4782
-11985
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

136 files changed

+4782
-11985
lines changed

.gitmodules

+1-1
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
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 = 2018.2
8+
branch = 2018.2_xdf
99
[submodule "SDAccel/examples/xilinx_2018.3"]
1010
path = SDAccel/examples/xilinx_2018.3
1111
url = https://github.com/Xilinx/SDAccel_Examples.git

ERRATA.md

+2-12
Original file line numberDiff line numberDiff line change
@@ -5,23 +5,13 @@
55
[Shell\_04261818_Errata](./hdk/docs/AWS_Shell_ERRATA.md)
66

77
## HDK
8-
* Multiple SDE instances per CL is not supported in this release. Support planned for future release.
8+
* Multiple SDE instances per CL is not supported in this release. Support is planned for a future release.
99
* DRAM Data retention is not supported for CL designs with less than 4 DDRs enabled
1010
* Combinatorial loops in CL designs are not supported.
11-
* [Automatic Traffic Generator (ATG)](./hdk/cl/examples/cl_dram_dma/design/cl_tst.sv) in SYNC mode does not wait for write response transaction before issuing read transactions. The fix for this issue is planned in a future release.
1211

1312
## SDK
1413

1514
## SDAccel (For additional restrictions see [SDAccel ERRATA](./SDAccel/ERRATA.md))
1615
* Virtual Ethernet is not supported when using SDAccel
1716
* DRAM Data retention is not supported for kernels that provision less than 4 DDRs
18-
* Combinatorial loops in CL designs are not supported.
19-
* When using [Xilinx runtime(XRT) version 2018.3.3.1](https://github.com/Xilinx/XRT/releases/tag/2018.3.3.1) or [AWS FPGA Developer AMI Version 1.6.0](https://aws.amazon.com/marketplace/pp/B06VVYBLZZ) your host application could fail with following error:
20-
21-
```
22-
: symbol lookup error: /opt/xilinx/xrt/lib/libxrt_aws.so: undefined symbol: uuid_parse!
23-
24-
```
25-
The SDAccel examples included in the developer kit use a SDAccel configuration file [sdaccel.ini]. To workaround this error please copy the SDAccel configuration file [sdaccel.ini](SDAccel/examples/aws/helloworld_ocl_runtime/sdaccel.ini) to your executable directory and try executing your application again.
26-
AWS is working with Xilinx to release a XRT patch to fix this issue.
27-
17+
* Combinatorial loops in CL designs are not supported.

Jenkinsfile

+26-12
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ boolean test_all_sdaccel_examples_fdf = params.get('test_all_sdaccel_examples_fd
4646
boolean test_helloworld_sdaccel_example_fdf = params.get('test_helloworld_sdaccel_example_fdf')
4747
boolean disable_runtime_tests = params.get('disable_runtime_tests')
4848

49-
def runtime_sw_cl_names = ['cl_dram_dma', 'cl_hello_world']
49+
def runtime_sw_cl_names = ['cl_dram_dma', 'cl_hello_world', 'cl_sde']
5050
def dcp_recipe_cl_names = ['cl_dram_dma', 'cl_hello_world']
5151
def dcp_recipe_scenarios = [
5252
// Default values are tested in FDF: A0-B0-C0-DEFAULT
@@ -68,14 +68,15 @@ def fdf_test_names = [
6868
'cl_dram_dma[A1-B0-C0-DEFAULT]',
6969
'cl_hello_world[A0-B0-C0-DEFAULT]',
7070
'cl_hello_world_vhdl',
71+
'cl_sde[A0-B0-C0-DEFAULT]',
7172
'cl_uram_example[2]',
7273
'cl_uram_example[3]',
7374
'cl_uram_example[4]'
7475
]
7576

7677
boolean debug_dcp_gen = params.get('debug_dcp_gen')
7778
if (debug_dcp_gen) {
78-
fdf_test_names = ['cl_hello_world[A0-B0-C0-DEFAULT]']
79+
fdf_test_names = ['cl_sde[A0-B0-C0-DEFAULT]']
7980
test_markdown_links = false
8081
test_sims = false
8182
test_runtime_software = false
@@ -158,19 +159,19 @@ def sdaccel_example_default_map = [
158159
def simulator_tool_default_map = [
159160
'2017.4' : [
160161
'vivado': 'xilinx/SDx/2017.4_04112018',
161-
'vcs': 'vcs-mx/L-2016.06-1',
162+
'vcs': 'synopsys/vcs-mx/M-2017.03-SP2-11',
162163
'questa': 'questa/10.6b',
163164
'ies': 'incisive/15.20.063'
164165
],
165166
'2018.2' : [
166167
'vivado': 'xilinx/SDx/2018.2_06142018',
167-
'vcs': 'vcs-mx/N-2017.12-SP1-1',
168+
'vcs': 'synopsys/vcs-mx/N-2017.12-SP2',
168169
'questa': 'questa/10.6c_1',
169170
'ies': 'incisive/15.20.063'
170171
],
171172
'2018.3' : [
172173
'vivado': 'xilinx/SDx/2018.3_1207',
173-
'vcs': 'vcs-mx/N-2017.12-SP1-1',
174+
'vcs': 'synopsys/vcs-mx/N-2017.12-SP2',
174175
'questa': 'questa/10.6c_1',
175176
'ies': 'incisive/15.20.063'
176177
]
@@ -196,7 +197,7 @@ def get_task_label(Map args=[ : ]) {
196197
}
197198
if (params.internal_simulations) {
198199
echo "internal simulation agent requested"
199-
task_label = 'f1'
200+
task_label = 'f1_3rd_party_sims'
200201
}
201202

202203
echo "Label Requested: $task_label"
@@ -492,7 +493,7 @@ if (test_fpga_tools) {
492493
if (test_sims) {
493494
all_tests['Run Sims'] = {
494495
stage('Run Sims') {
495-
def cl_names = ['cl_uram_example', 'cl_dram_dma', 'cl_hello_world', 'cl_sde']
496+
def cl_names = ['cl_vhdl_hello_world', 'cl_uram_example', 'cl_dram_dma', 'cl_hello_world', 'cl_sde']
496497
def simulators = ['vivado']
497498
def sim_nodes = [:]
498499
if(params.internal_simulations) {
@@ -505,6 +506,15 @@ if (test_sims) {
505506
String xilinx_version = y
506507
String cl_name = x
507508
String simulator = z
509+
if((cl_name == 'cl_vhdl_hello_world') && (simulator == 'ies')) {
510+
println ("Skipping Simulator: ${simulator} CL: ${cl_name}")
511+
continue;
512+
}
513+
String cl_dir_name = cl_name
514+
if(cl_name == 'cl_vhdl_hello_world') {
515+
cl_dir_name = "cl_hello_world_vhdl"
516+
}
517+
508518
String node_name = "Sim ${cl_name} ${xilinx_version} ${simulator}"
509519
String key = "test_${cl_name}__"
510520
String report_file = "test_sims_${cl_name}_${xilinx_version}.xml"
@@ -525,27 +535,29 @@ if (test_sims) {
525535
sh """
526536
set -e
527537
module purge
528-
module load python/2.7.9
538+
module load python/3.7.2
539+
module load python/2.7.14
540+
module load batch
529541
module load ${vivado_module}
530542
module load ${vcs_module}
531543
module load ${questa_module}
532544
module load ${ies_module}
533545
source $WORKSPACE/hdk_setup.sh
534-
python2.7 -m pytest -v $WORKSPACE/hdk/tests/simulation_tests/test_sims.py -k \"${key}\" --junit-xml $WORKSPACE/${report_file} --simulator ${simulator}
546+
python2.7 -m pytest -v $WORKSPACE/hdk/tests/simulation_tests/test_sims.py -k \"${key}\" --junit-xml $WORKSPACE/${report_file} --simulator ${simulator} --batch 'TRUE'
535547
"""
536548
} else {
537549
sh """
538550
set -e
539551
source $WORKSPACE/shared/tests/bin/setup_test_hdk_env.sh
540-
python2.7 -m pytest -v $WORKSPACE/hdk/tests/simulation_tests/test_sims.py -k \"${key}\" --junit-xml $WORKSPACE/${report_file} --simulator ${simulator}
552+
python2.7 -m pytest -v $WORKSPACE/hdk/tests/simulation_tests/test_sims.py -k \"${key}\" --junit-xml $WORKSPACE/${report_file} --simulator ${simulator} --batch 'FALSE'
541553
"""
542554
}
543555
} catch (exc) {
544556
echo "${node_name} failed"
545557
throw exc
546558
} finally {
547559
run_junit(report_file)
548-
archiveArtifacts artifacts: "hdk/cl/examples/${cl_name}/**/*.sim.log", fingerprint: true
560+
archiveArtifacts artifacts: "hdk/cl/examples/${cl_dir_name}/**/*.sim.log", fingerprint: true
549561
}
550562
}
551563
}
@@ -923,13 +935,15 @@ if (test_helloworld_sdaccel_example_fdf || test_all_sdaccel_examples_fdf) {
923935
sh """
924936
set -e
925937
source $WORKSPACE/shared/tests/bin/setup_test_build_sdaccel_env.sh
926-
python2.7 -m pytest -v $WORKSPACE/SDAccel/tests/test_find_sdaccel_examples.py --junit-xml $WORKSPACE/${report_file}
938+
python2.7 -m pytest -v $WORKSPACE/SDAccel/tests/test_find_sdaccel_examples.py --junit-xml $WORKSPACE/${report_file} --xilinxVersion ${xilinx_version}
927939
"""
928940
} catch (exc) {
929941
echo "Could not find tests. Please check the repository."
930942
throw exc
931943
} finally {
932944
run_junit(report_file)
945+
archiveArtifacts artifacts: "${sdaccel_examples_list}.*", fingerprint: true
946+
933947
}
934948

935949
// Only run the hello world test by default

0 commit comments

Comments
 (0)