Skip to content

Commit d22cabe

Browse files
Fixed doc links to point to new SHLS documentation (#58)
1 parent bf7d016 commit d22cabe

File tree

3 files changed

+27
-27
lines changed

3 files changed

+27
-27
lines changed

Training4/readme.md

Lines changed: 25 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -78,16 +78,16 @@ Later parts of the training involve running steps on the Icicle kit board. The f
7878
- Either a FlashPro6 external programmer or a micro-USB cable for the embedded FlashPro6
7979
- Ethernet cable for network connection to the board for SSH access
8080

81-
This training will cover the following sections in the [SmartHLS user guide](https://microchiptech.github.io/fpga-hls-docs/): [SoC
82-
Features](https://microchiptech.github.io/fpga-hls-docs/userguide.html#soc-features),
81+
This training will cover the following sections in the [SmartHLS user guide](https://onlinedocs.microchip.com/oxy/GUID-AFCB5DCC-964F-4BE7-AA46-C756FA87ED7B-en-US-11/GUID-995D69CF-ACC7-4CB0-9635-4434A765470E.html): [SoC
82+
Features](https://onlinedocs.microchip.com/oxy/GUID-AFCB5DCC-964F-4BE7-AA46-C756FA87ED7B-en-US-11/GUID-7324A022-0DE8-45E9-9FF0-E06D6CC7AD40.html),
8383
[AXI4 Initiator
84-
Interface](https://microchiptech.github.io/fpga-hls-docs/userguide.html#axi4-initiator-interface),
84+
Interface](https://onlinedocs.microchip.com/oxy/GUID-AFCB5DCC-964F-4BE7-AA46-C756FA87ED7B-en-US-11/GUID-93A05651-C06B-4805-94D3-0443DC0FED4E.html),
8585
[AXI4Target
86-
Interface](https://microchiptech.github.io/fpga-hls-docs/userguide.html#axi4-target-interface),
86+
Interface](https://onlinedocs.microchip.com/oxy/GUID-AFCB5DCC-964F-4BE7-AA46-C756FA87ED7B-en-US-11/GUID-16F30D96-8744-48F6-BD42-AC01ED5460ED.html),
8787
[Driver Functions for AXI4
88-
Target](https://microchiptech.github.io/fpga-hls-docs/userguide.html#driver-functions-for-axi4-target),
88+
Target](https://onlinedocs.microchip.com/oxy/GUID-AFCB5DCC-964F-4BE7-AA46-C756FA87ED7B-en-US-11/GUID-7BBF0DBC-AA2A-4593-9B3F-65EDD8520ACE.html),
8989
and [User-defined
90-
SmartDesigns](https://microchiptech.github.io/fpga-hls-docs/userguide.html#user-defined-smartdesigns).
90+
SmartDesigns](https://onlinedocs.microchip.com/oxy/GUID-AFCB5DCC-964F-4BE7-AA46-C756FA87ED7B-en-US-11/GUID-8CD9C2D1-7FF3-4C70-8CB7-364597AFDAD7.html).
9191

9292

9393
![](.//media/image3.png) We will use this cursor symbol throughout this tutorial to indicate sections where you need to perform actions to follow along.
@@ -299,7 +299,7 @@ flow on the C++ (compile/run/debug). Then we apply HLS constraints using
299299
SmartHLS C++ pragmas. These include HLS constraints covered in previous
300300
trainings such as the target clock period, loop optimizations, and
301301
memory configuration. For more details see our [optimization
302-
guide](https://microchiptech.github.io/fpga-hls-docs/optimizationguide.html).
302+
guide](https://onlinedocs.microchip.com/oxy/GUID-AFCB5DCC-964F-4BE7-AA46-C756FA87ED7B-en-US-11/GUID-8B9C18AF-E1F4-400A-A369-2668F3632CF5.html).
303303

304304
There are new SmartHLS **interface** pragmas used to specify the data
305305
transfer method for each top-level function argument. These pragmas
@@ -308,7 +308,7 @@ of the SoC. Figure 6‑10 below contains a summary of the SmartHLS pragmas
308308
used in the vector-add example. More details on the interfaces will be
309309
covered in the [SoC Data Transfer Methods](#soc-data-transfer-methods) section. For a complete pragma reference, see our
310310
[pragma
311-
guide](https://microchiptech.github.io/fpga-hls-docs/pragmas.html).
311+
guide](https://onlinedocs.microchip.com/oxy/GUID-AFCB5DCC-964F-4BE7-AA46-C756FA87ED7B-en-US-11/GUID-B3D89018-0850-487C-A242-A433094D720F.html).
312312

313313
In Figure 6‑9, after specifying the argument interfaces, we can compile
314314
the software into a hardware IP core using SmartHLS, and review reports
@@ -432,7 +432,7 @@ accelerator will store the data in local memory blocks. The
432432
`num_elements` field specifies the length of the array that will be
433433
transferred for each argument. For more information on the required
434434
pragmas and tradeoffs, please see our [pragma
435-
manual](https://microchiptech.github.io/fpga-hls-docs/pragmas.html#memory-interface-for-pointer-argument).
435+
manual](https://onlinedocs.microchip.com/oxy/GUID-AFCB5DCC-964F-4BE7-AA46-C756FA87ED7B-en-US-11/GUID-37FB7C46-32B5-4CAF-8CA2-3B7F37B7E7B9.html).
436436

437437
In this example, we separated the core C++ algorithm into the
438438
`vector_add_sw` function. We can then call this function from multiple
@@ -529,7 +529,7 @@ by both the software testbench and hardware functions. I/O memories
529529
become memory interfaces of the top-level module for the generated
530530
hardware. For more information on interfaces, please refer to [Top-Level
531531
RTL
532-
Interface](https://microchiptech.github.io/fpga-hls-docs/userguide.html#rtl-interface).
532+
Interface](https://onlinedocs.microchip.com/oxy/GUID-AFCB5DCC-964F-4BE7-AA46-C756FA87ED7B-en-US-11/GUID-E9EA34CC-B155-4F12-AFFC-B972E037469F.html).
533533

534534
The “I/O Memories” table is shown in Figure 6‑15 and has an entry for
535535
each top-level function argument, which each have a data width of
@@ -755,7 +755,7 @@ file implements the driver functions. The driver functions are generated
755755
for arguments and module control if they are configured to use AXI4
756756
target interface. Figure 6‑22 summarizes the different categories of
757757
driver functions. Please visit [Driver Functions for AXI4
758-
Target](https://microchiptech.github.io/fpga-hls-docs/userguide.html#driver-functions-for-axi4-target)
758+
Target](https://onlinedocs.microchip.com/oxy/GUID-AFCB5DCC-964F-4BE7-AA46-C756FA87ED7B-en-US-11/GUID-7BBF0DBC-AA2A-4593-9B3F-65EDD8520ACE.html)
759759
section of our user guide for a more detailed explanation.
760760

761761
<table>
@@ -1112,7 +1112,7 @@ data transfers between the DDR and the accelerator. Any additional
11121112
accelerators would be connected to the same AXI interconnect. For more
11131113
information on the architecture of the Reference SoC, please see our
11141114
[user
1115-
guide](https://microchiptech.github.io/fpga-hls-docs/hwarchitecture.html#smarthls-reference-soc).
1115+
guide](https://onlinedocs.microchip.com/oxy/GUID-AFCB5DCC-964F-4BE7-AA46-C756FA87ED7B-en-US-11/GUID-0B124EE7-BB34-4CF3-A591-9658F121B533.html).
11161116

11171117
We can simplify the SmartDesign visualization by clicking
11181118
![](.//media/image38.png)Hide Nets, ![](.//media/image39.png)Compress
@@ -1145,7 +1145,7 @@ to accelerator’s on-chip memory buffer, or the data can be accessed
11451145
directly in DDR by the accelerator. Any access to DDR, whether data is
11461146
copied or accessed directly, goes through the MSS data cache to maintain
11471147
cache coherency. See the [SoC Data Transfer
1148-
Methods](https://microchiptech.github.io/fpga-hls-docs/userguide.html#soc-data-transfer-methods)
1148+
Methods](https://onlinedocs.microchip.com/oxy/GUID-AFCB5DCC-964F-4BE7-AA46-C756FA87ED7B-en-US-11/GUID-212067DF-C1B6-4C22-ADDD-3C306CE990E5.html)
11491149
user guide section for further reference.
11501150

11511151
#### CPU Copy: AXI Target
@@ -1267,7 +1267,7 @@ the data for argument "`a`" with the AXI initiator interface as shown in
12671267
Figure 6‑37. If the `ptr_addr_interface` is not specified, for example
12681268
for argument b, SmartHLS will use the default interface type defined on
12691269
line 123 (`axi_target`). See the [AXI4 Initiator
1270-
Interface](https://microchiptech.github.io/fpga-hls-docs/userguide.html#axi4-initiator-interface)
1270+
Interface](https://onlinedocs.microchip.com/oxy/GUID-AFCB5DCC-964F-4BE7-AA46-C756FA87ED7B-en-US-11/GUID-93A05651-C06B-4805-94D3-0443DC0FED4E.html)
12711271
section of the user guide.
12721272

12731273
If users specify the `ptr_addr_interface` or any other interface type as
@@ -1357,7 +1357,7 @@ Figure 6‑42.
13571357
DMA Copy mode and Accelerator Direct Access require the memory to be
13581358
allocated using the `hls_malloc` function from the [SmartHLS Memory
13591359
Allocation
1360-
Library](https://microchiptech.github.io/fpga-hls-docs/userguide.html#memory-allocation-library)
1360+
Library](https://onlinedocs.microchip.com/oxy/GUID-AFCB5DCC-964F-4BE7-AA46-C756FA87ED7B-en-US-11/GUID-8246D542-5D26-420C-9418-6D798FDFC215.html)
13611361
to keep data in physically contiguous memory for the DMA engine. Using
13621362
`hls_malloc` prevents splitting data across different virtual memory
13631363
pages in physical memory. The accelerators and DMA engine do not perform
@@ -1388,7 +1388,7 @@ SoC reference project is generated.
13881388

13891389
![](.//media/image3.png) To prepare your Icicle kit for use with
13901390
SmartHLS, follow the [Icicle Setup
1391-
Instructions](https://microchiptech.github.io/fpga-hls-docs/icicle_setup.html)
1391+
Instructions](https://onlinedocs.microchip.com/oxy/GUID-AFCB5DCC-964F-4BE7-AA46-C756FA87ED7B-en-US-11/GUID-1F9BA312-87A9-43F0-A66E-B83D805E3F02.html)
13921392
and note down the IP of the board.
13931393

13941394
![](.//media/image3.png)Create a new file named `Makefile.user` by right
@@ -1412,7 +1412,7 @@ SmartHLS reads in `Makefile.user` where users can define and modify
14121412
options such as compiler and linker flags. For example, users can modify
14131413
`USER_CXX_FLAG` to append additional C++ compilation flags for their
14141414
project. Visit the [Makefile
1415-
Variable](https://microchiptech.github.io/fpga-hls-docs/userguide.html#makefile-variables)
1415+
Variable](https://onlinedocs.microchip.com/oxy/GUID-AFCB5DCC-964F-4BE7-AA46-C756FA87ED7B-en-US-11/GUID-398C5B20-F31F-4C97-AA81-DDDC0BE0F469.html)
14161416
section of our user guide for a full list of predefined user flags and
14171417
their uses.
14181418

@@ -1622,7 +1622,7 @@ set_parameter SOC_CPU_MEM_SIZE 0x60000000
16221622
<p align="center">Figure 8‑3 Default Parameter Values for Integrating SmartHLS</p>
16231623

16241624
Users can change the default parameters by [creating a
1625-
*custom\_config.tcl*](https://microchiptech.github.io/fpga-hls-docs/constraintsmanual.html?highlight=custom%20tcl#set-custom-config-file-1)
1625+
*custom\_config.tcl*](https://onlinedocs.microchip.com/oxy/GUID-AFCB5DCC-964F-4BE7-AA46-C756FA87ED7B-en-US-11/GUID-3636C6BE-3977-4267-A5DF-A514D1A46BE3.html)
16261626
file inside their HLS project. For example, if we wanted to change the
16271627
`SOC_FABRIC_BASE_ADDRESS` to start at `0x70100000`, we would include the
16281628
following in our *custom\_config.tcl* file:
@@ -1723,7 +1723,7 @@ As in the [Vector Add On-Board section](#running-vector-add-reference-soc-genera
17231723
a Linux image needs to be flashed to the eMMC memory in
17241724
the Icicle board. If users have already flashed the Linux image as
17251725
described in the [Icicle Setup
1726-
Guide](https://microchiptech.github.io/fpga-hls-docs/icicle_setup.html),
1726+
Guide](https://onlinedocs.microchip.com/oxy/GUID-AFCB5DCC-964F-4BE7-AA46-C756FA87ED7B-en-US-11/GUID-1F9BA312-87A9-43F0-A66E-B83D805E3F02.html),
17271727
this section may be skipped, and users may move on to [this section](#extract-the-icicle-kit-reference-design-files). A
17281728
similar procedure can be followed for the user’s own Linux image when
17291729
integrating SmartHLS design into their own existing system.
@@ -1736,7 +1736,7 @@ from [PolarFire SoC Yocto BSP
17361736
.
17371737

17381738
![](.//media/image3.png)Follow the instructions on [Icicle Setup
1739-
Guide](https://microchiptech.github.io/fpga-hls-docs/icicle_setup.html)
1739+
Guide](https://onlinedocs.microchip.com/oxy/GUID-AFCB5DCC-964F-4BE7-AA46-C756FA87ED7B-en-US-11/GUID-1F9BA312-87A9-43F0-A66E-B83D805E3F02.html)
17401740
for setting the Icicle kit. As explained in the guide, when flashing the
17411741
Icicle board (Step 5 in the Icicle Setup Guide), use
17421742
`core-image-minimal-dev-icicle-kit-es.wic.gz` that you have downloaded in
@@ -2028,7 +2028,7 @@ the newly added Linux image.
20282028

20292029
![](.//media/image3.png) After the board has successfully booted, you
20302030
can connect using a serial terminal. Connect in the same
2031-
[manner](https://microchiptech.github.io/fpga-hls-docs/icicle_setup.html#step-7-accessing-linux-on-board-and-determining-the-ip-address)
2031+
[manner](https://onlinedocs.microchip.com/oxy/GUID-AFCB5DCC-964F-4BE7-AA46-C756FA87ED7B-en-US-11/GUID-88244281-BA99-4B1D-9E38-43EE07745978.html)
20322032
as the serial terminal used during the writing of the Linux image,
20332033
except this time using channel 1 (`/dev/ttyUSB1`on Linux,
20342034
and `Interface 1` on Windows), you should see a login screen:
@@ -2204,7 +2204,7 @@ SoC, we already have [programmed our Custom SoC bitstream to the FPGA](#programm
22042204
`Makefile.user` defines various options related to compiling and running
22052205
the compiled program. Figure 8‑26 is a snippet of `Makefile.user`
22062206
containing the runtime settings. Visit the [Makefile
2207-
Variable](https://microchiptech.github.io/fpga-hls-docs/userguide.html#makefile-variables)
2207+
Variable](https://onlinedocs.microchip.com/oxy/GUID-AFCB5DCC-964F-4BE7-AA46-C756FA87ED7B-en-US-11/GUID-398C5B20-F31F-4C97-AA81-DDDC0BE0F469.html)
22082208
section of our user guide for a full list of predefined user flags and
22092209
their uses. Important: Ensure that `SRCS` is set to
22102210
`main_variables/main.simple.cpp`.
@@ -2397,7 +2397,7 @@ Running with hardware module, the CPU utilization is about 11%:
23972397
<p align="center">Figure 8‑33 CPU Usage when Running with Accelerators</p></p>
23982398

23992399
SmartHLS has a TCL parameter called
2400-
[SOC\_POLL\_DELAY](https://microchiptech.github.io/fpga-hls-docs/userguide.html?highlight=soc_poll_delay#user-defined-smartdesigns)
2400+
[SOC\_POLL\_DELAY](https://onlinedocs.microchip.com/oxy/GUID-AFCB5DCC-964F-4BE7-AA46-C756FA87ED7B-en-US-11/GUID-8CD9C2D1-7FF3-4C70-8CB7-364597AFDAD7.html)
24012401
with a value specified in microseconds. This parameter is used for
24022402
controlling how often the hardware driver polls the module to check for
24032403
completion. Sometimes for long running tasks, the MSS only needs to
@@ -2449,7 +2449,7 @@ different call in main.non-blocking.cpp as shown in Figure 8‑34.
24492449
```
24502450
<p align="center">Figure 8‑34 Main Execution Loop of main.non-blocking.cpp</p>
24512451
2452-
[HAS\_ACCELERATOR](https://microchiptech.github.io/fpga-hls-docs/userguide.html?highlight=has_accelerator#has-accelerator-macro)
2452+
[HAS\_ACCELERATOR](https://onlinedocs.microchip.com/oxy/GUID-AFCB5DCC-964F-4BE7-AA46-C756FA87ED7B-en-US-11/GUID-6818975C-389F-427C-B913-65A667001A99.html#GUID-6818975C-389F-427C-B913-65A667001A99__SECTION_YMS_QTJ_NYB)
24532453
is a SmartHLS defined macro that indicates whether the program is
24542454
compiled with accelerators or not. The `*_write_input_and_start()`
24552455
functions send the data to the hardware accelerator and start the
@@ -2546,7 +2546,7 @@ function is a classic example of the producer-consumer pattern. The in
25462546
data is received from the AXI target interface and passed to each stage
25472547
of the computation, namely `invert` and `threshold_to_zero`. We use a
25482548
thread
2549-
([hls::thread](https://microchiptech.github.io/fpga-hls-docs/optimizationguide.html#inferring-streaming-hardware-via-producer-consumer-pattern-with-threads))
2549+
([hls::thread](https://onlinedocs.microchip.com/oxy/GUID-AFCB5DCC-964F-4BE7-AA46-C756FA87ED7B-en-US-11/GUID-D3311A34-24FB-4A0D-8A49-A0A56F71410F.html))
25502550
for each stage as each stage can be run independently as long as there
25512551
are data available. The two stages are connected via a fifo between
25522552
them.

risc-v-demo/Readme-compile.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -347,7 +347,7 @@ Finally, the `common` directory has some common bitmaps and helper code.
347347

348348
## References:
349349

350-
[SmartHLS User Guide](https://microchiptech.github.io/fpga-hls-docs/)
350+
[SmartHLS User Guide](https://onlinedocs.microchip.com/oxy/GUID-AFCB5DCC-964F-4BE7-AA46-C756FA87ED7B-en-US-11/GUID-995D69CF-ACC7-4CB0-9635-4434A765470E.html)
351351

352352
[PolarFire_SoC_FPGA_H264_Video_Streaming_Over_Ethernet_Application_Note_AN4529.pdf](https://ww1.microchip.com/downloads/aemDocuments/documents/FPGA/ApplicationNotes/ApplicationNotes/PolarFire_SoC_FPGA_H264_Video_Streaming_Over_Ethernet_Application_Note_AN4529.pdf)
353353

risc-v-demo/Readme.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -295,7 +295,7 @@ now updated.
295295

296296
**NOTE:**
297297
As an additional reference about terminals and the image flashing process,
298-
you can check the [IcicleKit Setup Instructions](https://microchiptech.github.io/fpga-hls-docs/icicle_setup.html).
298+
you can check the [IcicleKit Setup Instructions](https://onlinedocs.microchip.com/oxy/GUID-AFCB5DCC-964F-4BE7-AA46-C756FA87ED7B-en-US-11/GUID-1F9BA312-87A9-43F0-A66E-B83D805E3F02.html).
299299
It includes instructions and additional screen captures for the PolarFire Icicle
300300
kit but the the process is similar in the PolarFire SoC Video Kit, except they
301301
use different image files.

0 commit comments

Comments
 (0)