Skip to content

Commit e24513b

Browse files
Update various documentation
Update the help text in the u-boot and Linux applications to clarify the configuration clock frequency behavior in 6S speed grade devices. Update the documentation pages to clarify the configuration clock frequency behavior in 6S speed grade devices. Add a description about the msgdma configuration that allows us to avoid the AXI 4KB boundary crossing. Refactor the documentation link descriptions on the index page. Signed-off-by: Rod Frazer <[email protected]>
1 parent d985444 commit e24513b

File tree

6 files changed

+23
-20
lines changed

6 files changed

+23
-20
lines changed

common_sw/linux_apps/linux_help_text.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@
3737

3838
//------------------------------------------------------------------------------
3939
#define linux_z_menu_HELP_TEXT z_menu_HELP_TEXT \
40-
, "\n\n\
40+
"\n\n\
4141
The demo uses UIO drivers to map the HPS peripheral addresses that\n\
4242
it accesses."
4343

common_sw/u-boot_standalone_apps/help_text.h

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -185,13 +185,14 @@ SOFTWARE DEMO OVERVIEW\n\
185185
the GPIN port. By using the system counter in the processor, the\n\
186186
demo can calculate the frequency of the SDM configuration clock\n\
187187
provided to the FPGA core logic.\n\
188-
\n\
189-
The SDM configuration clock should be 250MHz because our Quartus\n\
190-
project defines the SDM OSC_CLK frequency so that the SDM can\n\
191-
provide a precise frequency based on the external oscillator\n\
188+
","\n\
189+
The SDM configuration clock should be 250MHz on 4S and 5S speed\n\
190+
grade devices and 200MHz on 6S speed grade devices because our\n\
191+
Quartus project defines the SDM OSC_CLK frequency so that the SDM\n\
192+
can provide a precise frequency based on the external oscillator\n\
192193
frequency. When the Quartus project does not define an SDM OSC_CLK\n\
193194
frequency, then the SDM uses an internal oscillator that will\n\
194-
produce a clock rate of 190MHz to 230MHz into the FPGA core logic."
195+
produce a clock rate of 160MHz to 230MHz into the FPGA core logic."
195196

196197
//------------------------------------------------------------------------------
197198
#define y_menu_HELP_TEXT \

documentation/01_index.md

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -111,29 +111,29 @@ Enter menu selection:
111111

112112
## Hardware demo documentation
113113

114-
* [**Top-Level PD System**](02_top_pd_sys.md) - the top-level Platform Designer system that is used for the phase 1 bitstream image that configures the device at power-on or after device wipe
114+
* [**Top-Level PD System**](02_top_pd_sys.md) - top-level Platform Designer system documentation, describes the top-level system that is used for the phase 1 bitstream image that configures the device at power-on or after device wipe
115115

116-
* [**menu-g on hw_hps_gp**](03_menu_g_hw_hps_gp.md) - hps_gp demo, describes the hardware project design and software demos that run with it
116+
* [**menu-g on hw_hps_gp**](03_menu_g_hw_hps_gp.md) - hps_gp interface demo documentation, describes the hardware project design and software demos that interact with the hps_gp interface which provides a 32-bit GPI/GPO interface between the HPS and FPGA logic
117117

118-
* [**menu-i, menu-l on hw_f2h_irq**](04_menu_il_hw_f2h_irq.md) - f2h_irq demos, describes the hardware project design and software demos that run with it
118+
* [**menu-i, menu-l on hw_f2h_irq**](04_menu_il_hw_f2h_irq.md) - f2h_irq interface demo documentation, describes the hardware project design and software demos that interact with the f2h_irq interface which provides a 64-bit interrupt interface from the FPGA into the HPS
119119

120-
* [**menu-z on hw_config_clk**](05_menu_z_hw_config_clk.md) - configuration clock demo, describes the hardware project design and software demos that run with it
120+
* [**menu-z on hw_config_clk**](05_menu_z_hw_config_clk.md) - configuration clock demo documentation, describes the hardware project design and software demos that measure the configuration clock frequency
121121

122-
* [**menu-y on hw_h2f_user_clk**](06_menu_y_hw_h2f_user_clk.md) - H2F user clocks demo, describes the hardware project design and software demos that run with it
122+
* [**menu-y on hw_h2f_user_clk**](06_menu_y_hw_h2f_user_clk.md) - H2F user clocks demo documentation, describes the hardware project design and software demos that measure the H2F user clock frequencies
123123

124-
* [**menu-x, menu-w on hw_lwh2f_bridge**](07_menu_xw_hw_lwh2f_bridge.md) - LWH2F bridge demos, describes the hardware project design and software demos that run with it
124+
* [**menu-x, menu-w on hw_lwh2f_bridge**](07_menu_xw_hw_lwh2f_bridge.md) - LWH2F bridge demo documentation, describes the hardware project design and software demos that interact through the memory mapped LWH2F bridge into the FPGA logic design
125125

126-
* [**menu-t, menu-r on hw_h2f_bridge**](08_menu_tr_hw_h2f_bridge.md) - H2F bridge demos, describes the hardware project design and software demos that run with it
126+
* [**menu-t, menu-r on hw_h2f_bridge**](08_menu_tr_hw_h2f_bridge.md) - H2F bridge demo documentation, describes the hardware project design and software demos that interact through the memory mapped H2F bridge into the FPGA logic design
127127

128-
* [**menu-p on hw_f2sdram_bridge**](09_menu_p_hw_f2sdram_bridge.md) - F2SDRAM bridge demo, describes the hardware project design and software demos that run with it
128+
* [**menu-p on hw_f2sdram_bridge**](09_menu_p_hw_f2sdram_bridge.md) - F2SDRAM bridge demo documentation, describes the hardware project design and software demos that interact through the memory mapped F2SDRAM bridge allowing FPGA logic to interact with HPS EMIF memory
129129

130-
* [**menu-b on hw_f2h_bridge**](10_menu_b_hw_f2h_bridge.md) - F2H bridge demo, describes the hardware project design and software demos that run with it
130+
* [**menu-b on hw_f2h_bridge**](10_menu_b_hw_f2h_bridge.md) - F2H bridge demo documentation, describes the hardware project design and software demos that interacts through the memory mapped F2H bridge allowing FPGA logic to interact coherently with HPS EMIF memory
131131

132-
* [**menu-k on hw_uart**](11_menu_k_hw_uart.md) - HPS UART demo, describes the hardware project design and software demos that run with it
132+
* [**menu-k on hw_uart**](11_menu_k_hw_uart.md) - HPS UART demo documentation, describes the hardware project design and software demos that interact through the HPS UART peripheral into FPGA logic
133133

134-
* [**menu-f on hw_spi_bridge**](12_menu_f_hw_spi_bridge.md) - HPS SPI demo, describes the hardware project design and software demos that run with it
134+
* [**menu-f on hw_spi_bridge**](12_menu_f_hw_spi_bridge.md) - HPS SPI demo documentation, describes the hardware project design and software demos that interact through the HPS SPI perihperal into FPGA logic
135135

136-
* [**menu-e on hw_i2c_bridge**](13_menu_e_hw_i2c_bridge.md) - HPS I2C demo, describes the hardware project design and software demos that run with it
136+
* [**menu-e on hw_i2c_bridge**](13_menu_e_hw_i2c_bridge.md) - HPS I2C demo documentation, describes the hardware project design and software demos that interact through the HPS I2C peripheral into FPGA logic
137137

138138
## Software-only demo documentation
139139

@@ -143,4 +143,4 @@ Enter menu selection:
143143

144144
* [Maintenance Menus](16_maintenance_menus.md) - general overview of maintenance menu operations
145145

146-
* [**menu-j on hw_hps_jamb**](14_menu_j_hw_hps_jamb.md) - JTAG Avalon Master Bridge maintenance image, describes the hardware project design and the development and debugging techniques that can be used with it
146+
* [**menu-j on hw_hps_jamb**](14_menu_j_hw_hps_jamb.md) - JTAG Avalon Master Bridge maintenance image documentation, describes the hardware project design and the development and debugging techniques that can be used with it

documentation/05_menu_z_hw_config_clk.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ Linux software applications referenced from this document:
1515

1616
## Overview
1717

18-
The menu-z demo demonstrates the functionality of the configuration clock that is supplied into the FPGA core logic from the SDM. The configuration clock is derived from the internal oscillator within the SDM unless the user specifies the expected frequency for an external clock provided into the SDM OSC_CLK input pin. When the user specifies an SDM OSC_CLK frequency, the configuration clock provided into the FPGA fabric on 4S and 5S speed grade devices will be 250MHz, otherwise the frequency will be ~190MHz-230MHz based on the imprecise frequency of the internal oscillator. The configuration clock frequency for the 4S and 5S speed grade devices is expected to be 250MHz when an SDM OSC_CLK frequency is specified. The configuration clock frequency for the 6S speed grade device is expected to be 200MHz when an SDM OSC_CLK frequency is specified.
18+
The menu-z demo demonstrates the functionality of the configuration clock that is supplied into the FPGA core logic from the SDM. The configuration clock is derived from the internal oscillator within the SDM unless the user specifies the expected frequency for an external clock provided into the SDM OSC_CLK input pin. When the user specifies an SDM OSC_CLK frequency, the configuration clock provided into the FPGA fabric on 4S and 5S speed grade devices will be 250MHz, otherwise the frequency will be ~160MHz-230MHz based on the imprecise frequency of the internal oscillator. The configuration clock frequency for the 4S and 5S speed grade devices is expected to be 250MHz when an SDM OSC_CLK frequency is specified. The configuration clock frequency for the 6S speed grade device is expected to be 200MHz when an SDM OSC_CLK frequency is specified.
1919

2020
## Hardware system
2121

documentation/09_menu_p_hw_f2sdram_bridge.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,7 @@ Two additional components are visible in the f2sdram_bridge subsystem, a limiter
3535
| :---: |
3636
| ![hw_f2sdram_bridge_subsys.png](./images/captures/hw_f2sdram_bridge_subsys.png) |
3737

38+
**NOTE:** the msgdma core has been configured in this demo to support a maximum transfer length of 4KB. This was specifically chosen to optimize around the AXI requirement that bursts must not cross a 4KB boundary. This allows our software demo to choose base addresses aligned to 4KB boundaries and burst as much data as desired knowing that the msgdma core will break up any bursts larger than 4KB into multiple maximum 4KB burst transactions. Also, since the f2sdram bridge and the msgdma are configured for 256-bit data width, we do not have to worry about exceeding the AXI4 burst limit of 256 words per transaction. A full 4KB burst at 256-bit width will only require 128-word bursts per transaction. If software wanted to begin a DMA transfer using this msgdma core configuration that begins at an unaligned base address, then it would need to compensate for this in the descriptor configuration to ensure that no burst transactions cross a 4KB boundary.
3839

3940
## Software demo - u-boot standalone - menu-p
4041

documentation/10_menu_b_hw_f2h_bridge.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,7 @@ Two additional components are visible in the f2h_bridge subsystem, a limiter_rem
3737
| :---: |
3838
| ![hw_f2h_bridge_subsys.png](./images/captures/hw_f2h_bridge_subsys.png) |
3939

40+
**NOTE:** the msgdma core has been configured in this demo to support a maximum transfer length of 4KB. This was specifically chosen to optimize around the AXI requirement that bursts must not cross a 4KB boundary. This allows our software demo to choose base addresses aligned to 4KB boundaries and burst as much data as desired knowing that the msgdma core will break up any bursts larger than 4KB into multiple maximum 4KB burst transactions. Also, since the f2h bridge and the msgdma are configured for 256-bit data width, we do not have to worry about exceeding the AXI4 burst limit of 256 words per transaction. A full 4KB burst at 256-bit width will only require 128-word bursts per transaction. If software wanted to begin a DMA transfer using this msgdma core configuration that begins at an unaligned base address, then it would need to compensate for this in the descriptor configuration to ensure that no burst transactions cross a 4KB boundary.
4041

4142
## Software demo - u-boot standalone - menu-b
4243

0 commit comments

Comments
 (0)