pcie2.0 kintex 7 fpga pcie实现要多少资源

在Virtex -7和Kintex-7 FPGA中实现高性能DDR3的数据传输速率-嵌入式系统-电子产品世界
|||||||||||
& 在Virtex -7和Kintex-7 FPGA中实现高性能DDR3的数据传输速率
在Virtex -7和Kintex-7 FPGA中实现高性能DDR3的数据传输速率
基于FPGA的系统经常需要外部存储器接口缓冲区中的数据,超过了FPGA的内部存储器的容量。
White Paper: Virtex-7 and Kintex-7 Families
WP383 (v1.0) March 1, 2011
Achieving High Performance
DDR3 Data Rates
in Virtex-7 and Kintex-7 FPGAs
By: Adrian Cosoroaba
FPGA-based systems frequently require an external
memory interface to buffer data that exceeds the
capacity of the FPGA's internal memory. This
memory interface can often dictate overall system
标签:,,,
分享给小伙伴们:
在Virtex -7和Kintex-7 FPGA中实现高性能DDR3的数据传输速率
相关资源,,,
该用户资料分享
相关新闻,,,
相关电路,,,
微信公众号二
微信公众号一HDMI 2.0 Implementation on Kintex-7 FPGA GTX Transceivers - PDF
Start display at page:
Download "HDMI 2.0 Implementation on Kintex-7 FPGA GTX Transceivers"
Transcription
1 XAPP1287 (v1.2) July 18, 2016 Application Note: Kintex-7 Family HDMI 2.0 Implementation on Kintex-7 FPGA GTX Transceivers Author: Gilbert Magnaye, Yunhai Qiao, Mujib Haider, Marco Groeneveld Summary This application note covers the design considerations of a High-Definition Multimedia Interface (HDMI ) 2.0 implementation on the Kintex -7 FPGA GTX transceiver using the performance features of the following Xilinx LogiCORE IP cores: HDMI 1.4/2.0 with HDCP 1.4/2.2 Transmitter Subsystem HDMI 1.4/2.0 with HDCP 1.4/2.2 Receiver Subsystem Video PHY Controller The design features the transmit-only and the pass-through operation modes for the HDMI solution. In the transmit-only mode, the design displays a colorbar pattern from the LogiCORE IP Test Pattern Generator (TPG) core. In the pass-through mode, an external HDMI source is used to send video data over the HDMI design. The reference design demonstrates the use of the High-bandwidth Digital Content Protection System (HDCP) Revision 1.4/2.2 capability of the HDMI solution. HDCP is used to securely send audiovisual data from an HDCP protected transmitter to HDCP protected downstream receivers. Typically, HDCP 2.2 is used to encrypt content at Ultra High Definition (UHD) while HDCP 1.4 is used as a legacy encryption scheme for lower resolutions. The reference design targets the Xilinx Kintex -7 FPGA KC705 evaluation kit, which uses the Kintex-7 XC7K325T-2FFG900 FPGA and the inrevium TB-FMCH-HDMI4K FMC card. Download the Reference design files for this application note from the Xilinx website. Reference Design The reference design was created and built using the Vivado Design Suite, System Edition The design also includes software built using the Xilinx Software Development Kit (SDK) The software runs on the MicroBlaze processor subsystem and implements control and status functions. Complete project files for the Vivado Design Suite and the SDK are provided with this application note to allow the examination and rebuilding of the design, or to use them as a template for starting a new design. XAPP1287 (v1.2) July 18,2 Hardware Requirements Introduction The reference design is built around the HDMI 1.4/2.0 Transmitter Subsystem (HDMI_TX_SS), HDMI 1.4/2.0 Receiver Subsystem (HDMI_RX_SS), and Video PHY (VPHY) Controller cores and leverages existing Xilinx IP cores to form the complete system. HDCP 1.4 and HDCP 2.2 support is enabled in the HDMI Subsystems to allow content protection. The input and output of the system are HDMI video streams through an HDMI 2.0 daughter card that connects to the FMC HPC connector of the Xilinx development board. X-Ref Target - Figure 1 KC705 Evaluation Kit Kintex-7 FPGA HDMI 2.0 FMC Card HDMI In HDMI Out Video PHY Controller HDMI RX Subsystem HDMI TX Subsystem Test Pattern & Audio Generator Figure 1: KC705 HDMI Reference Design Block Diagram The VPHY Controller core is configured for the HDMI application that allows transmission and reception of HDMI video/audio to and from the HDMI 2.0 daughter card. XAPP1287 (v1.2) July 18,3 X-Ref Target - Figure 2 KC705 Evaluation Kit Kintex-7 FPGA TB-FMCH-HDMI4K Video PHY Controller txoutclk axis_audio HDMI TX Cable Driver (DP159) tx_tmds_clk_p/n tx_tmds_data(2:0) TX tx_video_clk tx_tmds_clk HDMI TX Subsystem axis_video OSC reference clock in tx-only mode Clock Gen (Si5324) reference clock in pass-through mode tx_gtrefclk clock p/n rx_tmds_clk_p/n axis_tx_tmds_data_ch(2:0) rxoutclk Test Pattern Generator Audio Generator HDMI RX rx_gtrefclk clock p/n rx_tmds_data(2:0) RX rx_video_clk rx_tmds_clk HDMI RX Subsystem axis_video KC705 Local Oscillator (125 MHz) nidru gtrefclk clock p/n axis_rx_tmds_data_ch(2:0) axis_audio Figure 2: KC705 HDMI Reference Design Clock & Datapath Diagram In pass-through mode, the VPHY Controller core recovers the high-speed serial video stream, converts it to parallel data streams, and forwards it to the HDMI_RX_SS core. The HDMI_RX_SS core extracts the video and audio streams from the HDMI stream and converts it to separate AXI video and audio streams. The AXI video goes through the TPG core and the AXI audio goes through a customized audio generation block. The two AXI streams eventually reach the HDMI_TX_SS core, which converts the AXI video and audio streams back to an HDMI stream before being transmitted by the VPHY Controller core as a high-speed serial data stream. The Transition Minimized Differential Signaling (TMDS) clock from the HDMI In interface is forwarded to the HDMI TX transceiver using SI5324 clock generator in the HDMI 2.0 FMC card. In transmit only mode, the colorbar pattern is generated by the TPG core as an AXI video stream and the low frequency audio is generated by the customized audio processing block as an AXI audio stream. The two streams are forwarded to the HDMI_TX_SS for HDMI stream conversion and then to the VPHY for transmission. High-level control of the system is provided by a simplified MicroBlaze embedded processor subsystem containing I/O peripherals, processor support IP, clock generator block, processor system reset block supply clock and reset signals for the system respectively. Figure 3 and Table 1 displays a block diagram of the MicroBlaze processor subsystem and its address map. XAPP1287 (v1.2) July 18,4 X-Ref Target - Figure 3 microblaze_ss MicroBlaze Debug Module Processor System Reset Module MicroBlaze Processor LMB LMB LMB bram controller LMB bram controller LMB bram controller LMB bram controller Block RAM Block RAM FPGA IO FPGA IO Clock Wizard AXI INTC AXI UART (lite) AXI IIC AXI interconnect (AXI lite) audio_ss tpg_ss Audio Pattern Gen Clock Wizard HDMI ACR AXI GPIO Test Pattern Generator HDMI Transmitter Subsystem HDMI Receiver Subsystem Video PHY Controller Figure 3: HDMI Reference Design Block Diagram Table 1 shows the MicroBlaze subsystem address map. Table 1: MicroBlaze Subsystem Address Map Peripheral Instance Base Address High Address lmb_bram_if_cntlr ilmb_bram_if_cntlr_0 0x x0007FFFF lmb_bram_if_cntlr dlmb_bram_if_cntlr_0 0x x0007FFFF lmb_bram_if_cntlr ilmb_bram_if_cntlr_1 0x x0009FFFF lmb_bram_if_cntlr dlmb_bram_if_cntlr_1 0x x0009FFFF axi_intc axi_intc_0 0x x4120FFFF axi_uartlite axi_uartlite_0 0x x4060FFFF axi_iic fmch_axi_iic_0 0x x4080FFFF aud_pat_gen aud_pat_gen_0 0x44A x44A6FFFF clk_wiz clk_wiz_0 0x44A x44A5FFFF hdmi_acr_ctrl hdmi_acr_ctrl_0 0x44A x44A7FFFF axi_gpio axi_gpio_0 0x44A x44A9FFFF v_tpg v_tpg_0 0x44A x44A0FFFF v_hdmi_rx_ss v_hdmi_rx_ss_0 0x44B x44B3FFFF v_hdmi_tx_ss v_hdmi_tx_ss_0 0x44C x44C3FFFF vid_phy_controller vid_phy_controller_0 0x44A x44A1FFFF XAPP1287 (v1.2) July 18,5 Reference Design Specifications In addition to the VPHY Controller, HDMI Transmitter Subsystem and HDMI Receiver Subsystem core, the reference design includes the following cores: MicroBlaze MicroBlaze Debug Module AXI Interconnect Local Memory Bus LMB Block RAM Controller Block Memory Generator Clocking Wizard Processor System Reset AXI UARTLite AXI Interrupt Controller AXI IIC AXI GPIO Video Test Pattern Generator Concat AXI4-Stream Register Slice Utility Buffer Utility Vector Logic AUD_PAT_GEN (Custom IP) HDMI_ACR_CTRL (Custom IP) ODDR (Custom IP) HDMI_HB (Custom IP) Hardware System Specifications This section describes the high-level features of the reference design including the usage of main IP blocks. Video PHY(VPHY) Controller The VPHY Controller core enables plug-and-play connectivity with HDMI TX and RX (Video MAC) subsystem IPs through a standardized interface. An AXI4-Lite register interface enables dynamic access to the transceiver and VPHY Controller core peripherals such as the clock detector and non-integer data recovery unit (NI-DRU). XAPP1287 (v1.2) July 18,6 The VPHY Controller core performs the following tasks: Enables the physical transmission and reception of high-speed serial data. Generates the clocks (link clock and video clock) required by the HDMI_TX_SS and HDMI_RX_SS cores. The respective clocks are generated as specified in the Clocking section of the HDMI 1.4/2.0 Transmitter Subsystem LogiCORE IP Product Guide (PG235) [Ref 3] and the HDMI 1.4/2.0 Receiver Subsystem LogiCORE IP Product Guide (PG236) [Ref 4]. Generates the differential HDMI TX interface clock. Re-transmits the differential HDMI RX TMDS interface clock for clock forwarding in pass-through mode. Provides status sideband signals to the HDMI_TX_SS (vid_phy_status_sb_tx interface) and the HDMI_RX_SS (vid_phy_status_sb_rx interface) to enable the internal state machines. There are two components in the sideband signals: vid_phy_status_sb_rx_tdata[0] - link clock lock indicator vid_phy_status_sb_rx_tdata[1] - video clock lock indicator Detects the actual frequency of the TX and RX TMDS clocks through the clock detector peripheral. Uses NI-DRU to recover low HDMI line rates with the TMDS clock below the minimum reference clock that the receive phase-locked loop (PLL) can support. For more information about the VPHY Controller core, see the Video PHY Controller LogiCORE IP Product Guide (PG230)[Ref 5]. 7 Series GTX VPHY Implementation Specifications The GTX transceiver in Xilinx 7 Series FPGAs has two types of PLLs, the QPLL and the CPLL. The QPLL is shared by all the four transceivers in the Quad. Each transceiver has its own CPLL. The VPHY IP allows you to choose whether the QPLL or the CPLL is used by the transmitter. The receiver should use the other PLL that is not used by the TX. The GTX transceivers can use either the Quad PLL (QPLL) or the Channel PLL (CPLL) as the clock source for the RX and the TX. The RX and the TX can use the same PLL or different PLLs. If both RX and TX use the same PLL, CPLL or QPLL, then they are bonded and must always run at exactly the same line rate. Both the QPLL and CPLL have certain limitations. The QPLL has holes. Holes are certain line rates that QPLL cannot support due to the limited frequency range of its voltage controlled oscillator (VCO). However, the QPLL can support lower TMDS clock frequencies than the CPLL. The CPLL's VCO must run in the range of 1.6 GHz to 3.3 GHz. The VCO frequency is dependent upon the TMDS clock frequency. The CPLL can apply a limited set of multipliers to the TMDS clock frequency. The GT driver measures the TMDS clock frequency and attempts to find a valid multiplier. This will result in a VCO frequency that is within the allowed range. As the largest multiplier that can be applied by the CPLL is 20, the minimum TMDS clock frequency that can be supported by the CPLL is 80 MHz. Video formats that have a TMDS clock frequency of less XAPP1287 (v1.2) July 18,7 than 80 MHz are not supported by the CPLL. When the GT driver detects that the TMDS clock frequency is less than 80 MHz, it enables the NI-DRU to receive these low bit rates that are less than 0.8 Gb/s. The NI-DRU runs at 2.0 Gb/s, which enables it to recover line rates that cannot be supported by the CPLL. For TMDS clock frequencies greater than 80 MHz, a multiplier of 10X or 20X is applied to keep the VCO frequency in a proper range as shown in Table 2. Table 2: 7 Series GTX CPLL Usage TMDS Clock Frequency (MHz) CPLL Refclk Divider CPLL Multiplier VCO Frequency Notes &80 N/A N/A N/A TX: Oversampling RX: NI-DRU is used 80 to to 3.3 GHz CDR is used 165 to to 3.3 GHz CDR is used IMPORTANT: The HDMI RX Subsystem can receive the most valid video format using the CPLL, the NI-DRU or the native CDR, up to a maximum line rate of 6 Gb/s. The CPLL can support all video formats. It has no holes. However, the CPLL does require the use of the NI-DRU to cover any format that has a TMDS clock below 80 MHz. Table 3 shows the standard formats with or without the DRU requirements that are supported by the CPLL. Table 3: CPLL Support of RGB and YCbCr 4:4:4 Video Formats Resolution Bits Per Pixel i60 DRU DRU DRU DRU 576i50 DRU DRU DRU DRU 1080i50 DRU 1080i60 DRU 480p60 DRU DRU DRU DRU 576p50 DRU DRU DRU DRU 720p50 DRU 720p60 DRU 1080p p p p p p p p p60 1 (1) 1 (1) 1 (1) vgap60 DRU DRU DRU DRU XAPP1287 (v1.2) July 18,8 Table 3: CPLL Support of RGB and YCbCr 4:4:4 Video Formats (Cont d) Resolution Bits Per Pixel svgap60 DRU DRU DRU xgap60 DRU sxgap60 wxgap60 DRU wxga+p60 uxgap60 2 (2) wuxgap60 wsxgap60 Notes: 1. This format is not supported because it exceeds the maximum line rate of HDMI This format is supported for transmit, but is not currently supported by the receiver. When the QPLL is used as the clock source for either the RX or TX, there are combinations of resolutions, color depth, and color space that cannot be supported as QPLL cannot generate the necessary clock frequencies to support those video formats. HDMI uses the lower band of QPLL. The VCO of the QPLL must run in the frequency range of 5.93 GHz to 8.0 GHz. The QPLL can apply multipliers of 20, 40, or 80 to the TMDS clock. Table 4 displays the TMDS clock frequency interaction with the QPLL and the frequency ranges that can be supported. Table 4: 7 Series GTX QPLL Usage TMDS Clock Frequency (MHz) QPLL Multiplier Notes & N/A TX: Oversampling RX: NI-DRU is used to Supported 100 to TMDS clock range cannot be supported to Supported 200 to TMDS clock range cannot be supported to Supported Note that the QPLL has two operating bands. For HDMI, the QPLL is always used in lower band since the upper band is not available in all the speed grades. Table 5 shows the standard RGB and YCbCr 4:4:4 video formats that are supported by QPLL and the formats that are not supported by QPLL. Formats shown with a check mark are supported by the QPLL. Formats shown in pink are not supported because they fall into QPLL holes. Formats that require the DRU to receive them are so noted in the table. XAPP1287 (v1.2) July 18,9 Table 5: QPLL Support of RGB and YCbCr 4:4:4 Video Formats Resolution Bits Per Pixel i60 DRU DRU DRU DRU 576i50 DRU DRU DRU DRU 1080i i60 480p60 DRU DRU DRU DRU 576p50 DRU DRU DRU DRU 720p50 720p p p p p p p p p p60 1 (1) 1 (1) 1 (1) vgap60 DRU DRU DRU DRU svgap60 DRU DRU DRU DRU xgap60 DRU sxgap60 wxgap60 DRU wxga+p60 uxgap60 2 (2) wuxgap60 wsxgap60 Notes: 1. This format is not supported because it exceeds the maximum line rate of HDMI This format is supported for transmit, but is not currently supported by the receiver. XAPP1287 (v1.2) July 18,10 HDMI Transmitter Subsystem The HDMI_TX_SS includes the following AXI interfaces: Video The video interface is an AXI4-Stream slave bus. It carries single, dual, or quad pixels per clock and it supports 8, 10, 12, and 16-bits per component. It uses the video protocol as defined in the Video IP: AXI Feature Adoption section of the AXI Reference Guide (UG761) [Ref 7]. Audio The audio interface is a 32-bit AXI4-Stream slave bus. The subsystem transports multiple channels (up to 8 channels) of uncompressed audio data. CPU The CPU interface is an AXI4-Lite bus interface, which allows a processor, such as MicroBlaze, to control the subsystem by accessing its registers. This AXI4-Lite slave interface supports single beat read and write data transfers (no burst transfers). VPHY Controller core status sideband The VPHY Controller core status sideband interface is a 2-bit AXI4-Stream slave bus that carries the link clock lock (bit 0) and video clock lock (bit 1) status bits. Three HDMI streams The HDMI stream interface is a 40-bit AXI4-Stream master bus that is connected to the VPHY Controller core transmission. The HDMI_TX_SS internals are fixed and cannot be modified or altered. There are two user configurable parameters that affect its internals. These parameters are the number of pixels per clock on the AXI4-Stream output and the maximum bits per component. In the reference design, these parameters are set to 2 and 12, respectively. The HDMI_TX_SS converts the video stream and audio stream into an HDMI stream, based on the selected video format set by the processor core through the CPU interface. The subsystem then transmits the HDMI stream to the VPHY Controller core, which converts the data into electronic signals that are sent to an HDMI sink through an HDMI cable. The HDMI_TX_SS can enable HDCP 1.4, HDCP2.2, or both protocols as part of the subsystem. The reference design instantiates both HDCP protocols and allows you to select the active protocol. When HDCP is enabled the transmitter is able to encrypt video, audio, and auxiliary packets. For more information, see the HDMI 1.4/2.0 Transmitter Subsystem LogiCORE IP Product Guide (PG235) [Ref 3]. XAPP1287 (v1.2) July 18,11 IMPORTANT: HDMI 1.4/2.0 Transmitter Subsystem is configurable to support native video interface. This configuration is not covered by this application note. Refer to HDMI 1.4/2/0 Transmitter Subsystem LogiCORE IP Product Guide (PG235) [Ref 3] for more details. HDMI Receiver Subsystem The HDMI_RX_SS has these AXI interfaces: Video The video interface is an AXI4-Stream master bus. It carries single, dual, or quad pixels per clock and it supports 8, 10, 12, and 16-bits per component. It uses the video protocol as defined in the Video IP: AXI Feature Adoption section of the AXI Reference Guide (UG761) [Ref 7]. Audio The audio interface is a 32-bit AXI4-Stream master bus. The subsystem transports multiple channels (up to 8 channels) of uncompressed audio data. CPU The CPU interface is an AXI4-Lite bus interface, which allows a processor, such as MicroBlaze, to control the subsystem by accessing its registers. This AXI4-Lite slave interface supports single beat read and write data transfers (no burst transfers). VPHY Controller core status sideband The VPHY Controller core status sideband interface is a 2-bit AXI4-Stream slave bus that carries the link clock lock (bit 0) and video clock lock (bit 1) status bits. IMPORTANT: HDMI 1.4/2.0 Receiver Subsystem is configurable to support native video interface. This configuration is not covered by this application note. Refer to HDMI 1.4/2.0 Receiver Subsystem LogiCORE IP Product Guide (PG236) [Ref 4] for more details. Three HDMI streams The HDMI stream interface is a 40-bit AXI4-Stream slave bus that carries the recovered data from the VPHY Controller core. The HDMI_RX_SS internals are fixed and cannot be modified or altered. There are three user configurable parameters that affect its internals. These parameters are the number of pixels per clock on the AXI4-Stream output, max bits per component, and the EDID RAM size. In the reference design, these parameters are set to 2, 12, and 256 respectively. The HDMI_RX_SS extracts the video stream and audio stream from an HDMI stream from the VPHY Controller core. The HDMI_RX_SS can enable HDCP 1.4, HDCP2.2, or both protocols as part of the subsystem. The reference design instantiates both HDCP protocols and allows you to select the active XAPP1287 (v1.2) July 18,12 protocol. When HDCP is enabled the receiver is able to decrypt video, audio, and auxiliary packets. For more information, see the HDMI 1.4/2.0 Receiver Subsystem LogiCORE IP Product Guide (PG236) [Ref 4]. Utility Buffer The Utility Buffer core is configured as an MGT differential input buffer (IBUFDSGTE) and is used to bring in the MGT reference clock outside the VPHY Quad (i.e. GTNORTHREFCLK0 or GTSOUTHREFCLK1). Video Test Pattern Generator The TPG core generates test patterns for video system bring up, evaluation, and debugging. The core has two main modes of operation for the reference design. These modes are pass-through and test pattern generation. In pass-through mode, the input AXI4-Stream video is passed without modification to the AXI4-Stream output interface. In generation mode, the TPG core is configured to generate a color bar pattern for demonstration purposes only. IMPORTANT: The TPG core provides a wide variety of test patterns for debugging and assessing video system color, quality, edge, and motion performance. The TPG core can be inserted in an AXI4-Stream video interface that allows user-selectable pass-through of system video signals or insertion of test patterns. IMPORTANT: 3D video stream can only be supported in pass-through mode as Test Pattern Generator is not supporting 3D video generation. The reference design uses these TPG core features: RGB, YUV 4:4:4, YUV 4:2:2, YUV 4:2:0. Supports 8, 10, 12, and 16-bits per color component input and output. Supports spatial resolutions from 64 x 64 up to 4096 x For more information, see the Video Test Pattern Generator LogiCORE Product Guide (PG103) [Ref 6]. Custom IPs for Audio The reference design includes two custom IPs for audio demonstration. These IPs are aud_pat_gen and hdmi_acr_ctrl. They are not official Xilinx cores. They are provided only to demonstrate the audio capabilities of the HDMI_TX_SS and HDMI_RX_SS. Xilinx does not support these cores. You as a user are expected to implement or supply your own audio processing solution. XAPP1287 (v1.2) July 18,13 Software Application The HDMI reference design uses the built-in drivers of the VPHY, HDMI_TX_SS, and HDMI_RX_SS cores in the SDK. The SDK gives an out-of-the-box solution by providing an abstraction of the internal workings and management of the included sub-cores. The VPHY, HDMI_TX_SS, and HDMI_RX_SS drivers are bare-metal drivers that can work with multiple IP or subsystem instances, as defined in the application layer. The VPHY Controller core driver manages the dynamic reconfiguration of the multi-gigabit transceiver and digital clock manager modules to allow seamless transmission and reception of HDMI video to and from the FPGA physical interface. The HDMI_TX_SS and HDMI_RX_SS subsystem drivers dynamically manage the data and control flow through the processing elements, based on the input and output stream configuration set at runtime. Internally, the drivers rely on included sub-core or layer 1 drivers to configure the IP hardware block. Layer 2 or subsystem drivers provide an abstracted view of the feature set of each sub-core. The subsystem drivers are not active drivers and rely on the application software to use the provided APIs to configure them. The application software monitors the system for external inputs, communicates changes to the input/output stream properties to the subsystem (via provided APIs), and triggers the subsystem auto-reconfiguration routine. The application software manages the HDMI TX and RX applications independently except when they are in bonded mode. In bonded mode, the HDMI_TX_SS and HDMI_RX_SS share the same GT PLL. The main program flow is shown in Figure 4. At execution, the software application initializes several IPs to activate them. The IP and subsystem initialization executes configuration initialization, interrupt handler connect, and API callback functions for HDMI_TX_SS, HDMI_RX_SS, VPHY Controller, and HDCP core IPs. Next, the color bar transmission is initiated. This process is capped by the configuration of the clock generator that triggers the TX video format change flow. XAPP1287 (v1.2) July 18,14 X-Ref Target - Figure 4 START C A IP and Subsystem Initialization RX Video Format Change Flow B RX Cable Disconnected? Enable Colorbar Transmission (TX Only Flow) RX Locked? Y N N Switch to Colorbar Mode? Y Y B RX Cable Connected? Y C Copy RX Properties to TX (Pass-Through Mode) N N Force Pass- Through? Y C TX Video Format Change Flow N A Figure 4: Main Program Flow The RX video format change is triggered as soon as a full HDMI RX cable is detected on the HDMI RX interface. Once the RX is locked to the incoming video format, the application copies the HDMI RX video properties to HDMI TX, and then proceeds to pass-through mode with the TX video format change flow. In pass-through mode, you can force the application to TX only or color bar mode by unplugging the HDMI RX cable or by selecting color bar (Press C) in the UART menu. The pass-through mode can also be forced at any time by plugging in the HDMI RX cable or by pressing P in the application. HDMI TX/RX Subsystem and VPHY drivers provide a mechanism for the application to register a user-defined function that is called within an interrupt context. In the next few sections, while the various flows are illustrated, the respective callback functions are briefly discussed. For details on how to register these callback functions with provided handlers in your application code, please see the following Product Guides which also contain detail flows on how to integrate those driver APIs into your customized application: LogiCORE IP Video PHY Controller v2.0 Product Guide (PG230)[Ref 5] XAPP1287 (v1.2) July 18,15 LogiCORE IP HDMI 1.4/2.0 Transmitter Subsystem Product Guide (PG235)[Ref 3] LogiCORE IP HDMI 1.4/2.0 Receiver Subsystem Product Guide (PG236)[Ref 4] TX Video Format Change Flow The TX video format change flow is triggered by a change in the TX TMDS clock frequency using an interrupt from the clock detector module in the VPHY Controller core. The VPHY Controller core driver debounces the frequency event before starting the GT TX reconfiguration based on the new video format to be transmitted. The GT reconfiguration completion is indicated by the assertion of the 0 bit of the vid_phy_status_sb_tx_tdata. The VPHY Controller core driver then configures the internal TX digital clock manager (DCM), which is used to generate the video clock and TX TMDS clock. The DCM reconfiguration completion is indicated by the assertion of the 1 bit of the vid_phy_status_sb_tx_tdata. The HDMI_TX_SS reconfiguration is executed after the completion of the VPHY Controller core reconfiguration and is handled by the subsystem driver. The TxStreamUpCallback in the application is executed when the subsystem driver is finished executing the reconfiguration process. There are several API callback hooks that the VPHY Controller core and HDMI_TX_SS drivers execute throughout the HDMI TX operation. If necessary, these callbacks are available for inserting or adding more function calls on top of what is in the software application. The VPHY Controller core driver TX callbacks are: VPHY Controller core HDMI TX Init callback This callback is named XVPHY_HDMI_HANDLER_TXINIT in the VPHY Controller core driver and is hooked to the VphyHdmiTxInitCallback function in the software application. It is executed or called every time a change in the HDMI TX TMDS clock frequency occurs. In the software application, the XV_HdmiTxSs_RefClockChangeInit HDMI_TX_SS API is called within the hook, which resets and clears the HDMI_TX_SS settings. VPHY Controller core HDMI TX Ready callback This callback is named XVPHY_HDMI_HANDLER_TXREADY in the VPHY Controller core driver and is hooked to the VphyHdmiTxReadyCallback function in the software application. It is executed or called every time the VPHY Controller core driver completes the initialization routine necessary for the TX video format change. The hook currently contains an empty function. HDMI_TX_SS Driver Callbacks The HDMI_TX_SS driver callbacks are: HDMI_TX_SS TX Connect callback This callback is named XV_HDMITXSS_HANDLER_CONNECT in the HDMI_TX_SS driver and is hooked to the TxConnectCallback function in the software application. It is executed or called XAPP1287 (v1.2) July 18,16 every time an HDMI TX cable connection or disconnection occurs. The TxConnectCallback software hook detects if the HDMI sink connected is HDMI 2.0 capable through the XV_HdmiTxSs_DetectHdmi20 API. The software hook also enables or disables the differential input clock buffer depending on if cable connection or disconnection occurs, respectively. HDMI_TX_SS Vsync callback This callback is named XV_HDMITXSS_HANDLER_VS in the HDMI_TX_SS driver and is hooked to the TxVsCallback function in the software application. It is executed or called every time a vertical sync is detected in the HDMI stream. The TxVsCallback software hook initiates the NULL auxiliary info frame transmission when in TX mode only. HDMI_TX_SS Stream Up callback This callback is named XV_HDMITXSS_HANDLER_STREAM_UP in the HDMI_TX_SS driver and is hooked to the TxStreamUpCallback function in the software application. It is executed or called when the HDMI_TX_SS detects an assertion on video ready (TX DCM lock) signal. The TxStreamUpCallback software hook performs the video stream initialization in the HDMI_TX_SS, such as setting the oversample rate and the video property. It also enables the TX TMDS clock and programs the TX line rate in the re-timer chip on the FMC card. HDMI_TX_SS Stream Down callback This callback is named XV_HDMITXSS_HANDLER_STREAM_DOWN in the HDMI_TX_SS driver and is unused in the software application. HDMI_TX_SS HDCP Authenticated callback This callback is named XV_HDMITXSS_HANDLER_HDCP_AUTHENTICATE in the HDMI_TX_SS driver and is called when either the HDCP 1.4 or HDCP 2.2 transmitter has transitioned into the authenticated state. The software application uses this callback to enable encryption and print a message to the terminal indicating when authentication has successfully completed. RX Video Format Change Flow The RX video format change flow is triggered by a change in the RX TMDS clock frequency using an interrupt from the clock detector module of the VPHY Controller core. The VPHY Controller core driver debounces the frequency event before starting the GT RX reconfiguration based on the new video format to be transmitted. The GT reconfiguration completion is indicated by the assertion of the 0 bit of the vid_phy_status_sb_rx_tdata. The HDMI_RX_SS reconfiguration detects the assertion of the 0 bit of the vid_phy_status_sb_rx_tdata and begins its initialization for the new video format. Part of its initialization is calling the XV_HDMIRX_STATE_STREAM_INIT callback, which configures the RX DCM inside the VPHY Controller core. The VPHY Controller core driver then configures the internal RX DCM, which is used to generate the video clock and the RX TMDS clock. The DCM reconfiguration completion is indicated by the assertion of the 1 bit of the vid_phy_status_sb_rx_tdata. The HDMI_RX_SS then detects this event and calls RxStreamUpCallback to complete the reconfiguration process. XAPP1287 (v1.2) July 18,17 There are several API callback hooks that the VPHY Controller core and HDMI_RX_SS drivers execute throughout the HDMI RX operation. If necessary, these callbacks are available for inserting or adding more function calls on top of what is in the software application. VPHY Controller Core Driver RX Callbacks The VPHY Controller core driver RX callbacks are: VPHY Controller core HDMI RX Init Callback This callback is named XVPHY_HDMI_HANDLER_RXINIT in the VPHY Controller core driver and is hooked to the VphyHdmiRxInitCallback function in the software application. It is executed or called every time a change in the HDMI RX TMDS clock frequency occurs. In the software application, the XV_HdmiTxSs_RefClockChangeInit HDMI_RX_SS API is called within the hook, which gets the new TMDS clock ratio. VPHY Controller core HDMI RX Ready Callback This callback is named XVPHY_HDMI_HANDLER_RXREADY in the VPHY Controller core driver and is hooked to the VphyHdmiRxReadyCallback function in the software application. It is executed or called every time the VPHY Controller core driver completes the initialization routine necessary for the RX video format change. The hook updates the clock and line rate parameters in the HDMI_RX_SS. HDMI_RX_SS Driver Callbacks The HDMI_RX_SS driver callbacks are: HDMI_RX_SS RX Connect Callback This callback is named XV_HDMIRXSS_HANDLER_CONNECT in the HDMI_RX_SS driver and is hooked to the RxConnectCallback function in the software application. It is executed or called every time an HDMI RX cable connection or disconnection occurs. The RxConnectCallback software hook enables or disables the differential input clock buffer depending on if cable connection or disconnection occurs, respectively. HDMI_RX_SS Auxiliary Callback This callback is named XV_HDMIRXSS_HANDLER_AUX in the HDMI_RX_SS driver and is hooked to the RxAuxCallback function in the software application. It is executed or called every time an auxiliary packet is detected in the HDMI RX stream. The RxAuxCallback software hook initiates the auxiliary info frame retransmission when in pass-through mode. HDMI_RX_SS Audio Callback This callback is named XV_HDMIRXSS_HANDLER_AUD in the HDMI_RX_SS driver and is hooked to the RxAudCallback function in the software application. It is executed or called every time an audio packet is detected in the HDMI RX stream. The RxAudCallback software hook initiates the audio packet retransmission when in pass-through mode. XAPP1287 (v1.2) July 18,18 HDMI_RX_SS Link Status Callback This callback is named XV_HDMIRXSS_HANDLER_LNKSTA in the HDMI_RX_SS driver and is hooked to the RxLnkStaCallback function in the software application. It is executed or called every time a change is detected in the HDMI RX stream. The RxLnkStaCallback software hook issues an RX PLL (in the VPHY Controller core) reset pulse when the RX link error status has reached 255 counts. HDMI_RX_SS DDC Callback This callback is named XV_HDMITXSS_HANDLER_DDC in the HDMI_RX_SS driver and is unused in the software application. HDMI_RX_SS Stream Down Callback This callback is named XV_HDMIRXSS_HANDLER_STREAM_DOWN in the HDMI_RX_SS driver and is used in the software application to clear the IsPassThrough flag to start TX only mode. HDMI_RX_SS Stream Init Callback This callback is named XV_HDMIRXSS_HANDLER_STREAM_INIT in the HDMI_RX_SS driver and is used in the software application to initiate RX DCM reconfiguration in the VPHY Controller core based on the incoming HDMI RX stream. HDMI_RX_SS Stream Up Callback This callback is named XV_HDMIRXSS_HANDLER_STREAM_UP in the HDMI_RX_SS driver and is hooked to the RxStreamUpCallback function in the software application. It is executed or called when the HDMI_RX_SS detects an assertion on the video ready (RX DCM Lock) signal. The RxStreamUpCallback software hook copies the HDMI RX stream parameter into HDMI_TX_SS to prepare for pass-through mode. HDMI_RX_SS HDCP Authenticated callback This callback is named XV_HDMIRXSS_HANDLER_HDCP_AUTHENTICATE in the HDMI_RX_SS driver and is called when either the HDCP 1.4 or HDCP 2.2 receiver has transitioned into the authenticated state. The software application uses this callback to print a message to the terminal indicating when authentication has successfully completed. Transmitting User-defined Info Frames User-defined info frames can be sent with the HDMI_TX_SS software API. The info frame data structure with a 4-byte header and 32-byte data (payload) must be constructed prior to sending the info frame API function call. You may also need to calculate their own CRC and place the CRC at the right location so that the HDMI Sink is able to decode the Info frame. Once the info frame data structure is ready, you can call the API function to send it out: void XV_HdmiTxSs_SendGenericAuxInfoframe(XV_HdmiTxSs *InstancePtr, void *AuxPtr); The info frame are normally sent when a vertical sync interrupt event occurs. For details, please refer to HDMI 1.4/2.0 Transmitter Subsystem LogiCORE IP Product Guide (PG235) [Ref 3]. XAPP1287 (v1.2) July 18,19 HDCP Authentication The HDCP protocol establishes secure sessions between transmitters and receivers through an authentication and key exchange process. The HDMI subsystem drivers are responsible for the implementation of the HDCP authentication protocol and provides external user API's for selecting the protection scheme and initiating authentication. This section describes how the reference design system software initializes and uses the HDMI subsystem driver for HDCP. HDCP Transmitter Authentication The authentication flow for the HDCP transmitter is shown in Figure 5. When the reference design application begins HDCP is first initialized and production keys are loaded. After initialization the poll process is started causing the HDCP state machines to execute. The transmitter waits for an HPD interrupt event (HPD Event) signaling that a receiver is present. The user input event (Protect Event) is required to set the protection scheme of the transmitter to either HDCP 1.4 or HDCP 2.2. Only after the HPD event and Protection events have occurred, the system is ready to initiate authentication. The transmitter waits for the authentication request user input (Authenticate Event) before it attempts to authenticate with a receiver. If authentication is successful the system automatically enables encryption (Encrypt Event). You also have control over enabling and disabling encryption through the Encrypt Event. In general, events are asynchronous and can potentially happen in any order, in which case the system has built-in mechanisms to recover from faults. X-Ref Target - Figure 5 Start Application A B Initialize Protect Event Reset/Enable Encrypt Event Wait Start Poll Authenticate Event Wait FALSE TRUE FALSE TRUE FAILURE Encrypted Un-Encrypted FALSE HPD Event Wait Authenticate TRUE Success A B Figure 5: HDCP Transmitter Authentication Flow HDCP Receiver Authentication The authentication flow for the HDCP receiver is shown in Figure 6. After the receiver has initialized and the polling process has started to execute the receiver state machine, the system waits for a cable detect interrupt event (Cable Event) signaling that a transmitter is present. Similar to the transmitter you are required to set the protection scheme (Protect Event) to either HDCP 1.4 or HDCP 2.2. Only after cable detection and protection events have occurred can the receiver begin to service authentication requests from the transmitter. The HDCP transmitter is allowed to initiate new authentication requests at anytime. XAPP1287 (v1.2) July 18,
20 X-Ref Target - Figure 6 Start Application A Initialize Protect Event Reset/Enable Start Poll Authenticate FALSE Cable Event Wait TRUE A Figure 6: HDCP Receiver Authentication Flow HDCP Key Storage and Retrieval The HDCP 1.4 and HDCP 2.2 keys are stored onboard the HDMI 2.0 FMC card EEPROM using the standalone key utility application. You are required to run the key utility application only once and henceforth the encrypted keys will remain persistently in EEPROM for use by the system application. X-Ref Target - Figure 7 EEPROM (HDMI FMC) IIC MICRO BLAZE Figure 7: HDCP Key Storage in EEPROM The HDCP reference design is shipped without any HDCP keys. You are required to acquire HDCP keys through the Digital Content Protection LLC (DCP) and update the key utility application source file with the production key. Authentication is expected to fail without loading the HDCP production keys. See Programming the HDCP Keys on how to program the HDCP keys. XAPP1287 (v1.2) July 18,21 Once the HDCP reference design application is started, it will prompt you to enter a secret password during the boot-up process where a cryptographic hash function is applied to produce the AES cipher key used for decryption. Figure 8 shows the sequence of events after you enter the secret password. In case you do not know the password, or it is entered incorrectly the reference design still supports the HDMI functionality, but HDCP features are disabled. X-Ref Target - Figure 8 START HDCP 1.4 ENTER PASSWORD READ HDCP 2.2 CERTIFICATE READ HDCP 1.4 TX KEYS READ HDCP 1.4 RX KEYS READ HDCP 2.2 LC128 DECRYPT AES256 DECRYPT AES256 DECRYPT AES256 DECRYPT AES256 SET HDCP 2.2 DRIVER CERTIFICATE & LC128 STORE KEYS IN TX KEY MANAGER STORE KEYS IN RX KEY MANAGER SET HDCP 2.2 DRIVER LC128 HDCP 1.4 END Figure 8: HDCP Key Description After the HDCP keys have been retrieved from EEPROM, they are assigned to the HDMI subsystem drivers for the following key types: XV_HDMITXSS_KEY_HDCP22_LC128 - HDCP 2.2 transmitter global constant XV_HDMIRXSS_KEY_HDCP22_LC128 - HDCP 2.2 receiver global constant XV_HDMIRXSS_KEY_HDCP22_PRIVATE - HDCP 2.2 receiver certificate and private key XV_HDMITXSS_KEY_HDCP14 - HDCP 1.4 transmitter key XV_HDMIRXSS_KEY_HDCP14 - HDCP 1.4 receiver key XAPP1287 (v1.2) July 18,22 Requirements Reference Design Tool Flow and Verification The Reference design files for this application note can be downloaded from the Xilinx website. The checklist in Table 6 shows the tool flow and verification procedures used for the reference design. Table 6: Reference Design Checklist Parameter Description General Developer Name Target Devices Source code provided? Source code format (if provided) Design uses code or IP from existing reference design, application note, 3rd party or Vivado software? If yes, Gilbert Magnaye, Yunhai Qiao Kintex-7 FPGA No N/A Cores generated from Vivado IP Integrator Tool Functional simulation performed Timing simulation performed? Test bench provided for functional and timing simulation? Test bench format Simulator software and version SPICE/IBIS simulations Simulation Implementation N/A N/A N/A N/A N/A N/A Synthesis software tools/versions used Vivado Synthesis Implementation software tool(s) and version Vivado Static timing analysis performed? Yes Hardware Verification Hardware verified? Yes Platform used for verification Xilinx Kintex-7 FPGA KC705 Evaluation Kit Requirements Hardware The following are the hardware requirements for this reference system: Xilinx Kintex-7 FPGA KC705 Evaluation Kit inrevium HDMI 2.0 Daughter Card (TB-FMCH-HDMI4K) XAPP1287 (v1.2) July 18,23 Requirements Two HDMI Cables HDMI 2.0 Video Source (i.e. DVD Player) HDMI 2.0 Sink (i.e. Ultra HD TV sets) Software The following are the software requirements for this reference system: Vivado Design Suite Software Development Kit (SDK) Software Terminals (for example, Tera Term, HyperTerminal or PuTTY) Reference Design Files Figure 9 shows the reference design directory structure. IMPORTANT: The reference design should be unzipped close to root. X-Ref Target - Figure 9 Figure 9: Reference Design Directory Structure all.tcl: This is the main Tcl file to be executed in Vivado Tcl command prompt. design: Contains the kc705 specific design files such as IPI TCL, top level wrapper and XDC hdmi_example_kc705.tcl: Tcl for constructing the HDMI IPI design. hdmi_example_kc705.xdc: HDMI Reference Design top level constraint file. project:this is a container folder for Vivado project and generated files. XAPP1287 (v1.2) July 18,24 Steps ready_to_download: This folder contains the bitfile and the ELF of the system. hdmi_example_kc705_wrapper.bit:this is a reference design precompiled bitfile. repos: This folder contains the HW and SW repositories \hw_repos: This folder is a HW repository for custom IPs \sw_repos:this folder is a SW repository (empty) sdk: This folder contains the SW application files. Licensing Ensure that the licenses for the VPHY Controller, HDMI 1.4/2.0 Transmitter Subsystem, HDMI 1.4/2.0 Receiver Subsystem, and TPG cores are installed. Note: Xilinx issues HDCP IP licenses only to active Digital content protection (DCP) license adopters. Reference Design Steps This section describes the HDMI reference design setup, execution, and results. Board Setup The example design is targeted at the Kintex-7 KC705 development board. The example design supports the inrevium TB-FMCH-HDMI4K FMC card. The board setup is shown in Figure 10. XAPP1287 (v1.2) July 18,
25 Steps X-Ref Target - Figure 10 HDMI TX HDMI RX RX VIDEO CLK FMC HDMI 2.0 RX LINK CLK USER LEDS USB UART POWER JTAG TX LINK CLK TX VIDEO CLK Figure 10: XAPP1287 HDMI Reference Design Setup HW Setup 1. Connect a USB cable from the host PC to the USB JTAG port. Ensure the appropriate device drivers are installed. 2. Connect a second USB cable from the host PC to the USB UART port. Ensure that USB UART drivers described in the section Hardware Requirements have been installed. 3. Connect TB-FMCH-HDMI4K board to the HPC-FMC of KC Connect the HDMI TX port to an HDMI 1.4/2.0 sink or monitor (i.e. Ultra HD TV set). 5. Connect the HDMI RX port to an HDMI 1.4/2.0 source (i.e. DVD Player). 6. Connect the KC705 board to a power supply slot J Switch on the KC705 board. 8. Start a terminal program (e.g. HyperTerminal) on the host PC with these settings: Baud Rate: XAPP1287 (v1.2) July 18,26 Steps Data Bits: 8 Parity: None Stop Bits: 1 Flow Control: None Table displays the onboard LEDs used in the reference design. Table 7: Onboard LEDs LED 0 HDMI TX Subsystem lock 1 Not used 2 Not used 3 Not used 4 Not used 5 Not used 6 TX clock heartbeat 7 RX clock heartbeat Programming the HDCP Keys This section describes how you can program the HDCP keys into the HDMI 2.0 FMC card EEPROM using the key utility application. The keys only need to be programmed into the FMC EEPROM once. 1. Launch the Xilinx System Debugger by selecting Start & All Programs & Xilinx Design Tools & Vivado & Vivado Tcl Shell. 2. In the Xilinx command shell window, change to the ready_to_download directory: cd &unzip_dir&/&hdcp_key_design&/ready_to_download 3. Launch Xilinx System Debugger (XSDB) Vivado% xsdb 4. Establish connections to debug targets xsdb% connect 5. Download the bitstream for programming the HDCP keys to the FPGA: xsdb% fpga -file hdcp_key.bit 6. Exit the XSDB command prompt: xsdb% exit 7. Open the file hdcp_key.c in the app_hdcp_key/src folder Description 8. The arrays Hdcp22Lc128, Hdcp22Key, Hdcp14Key1, and Hdcp14Key2 hold the HDCP keys and are empty. Fill these arrays with the acquired HDCP keys. The arrays are defined in big endian byte order. XAPP1287 (v1.2) July 18,27 Steps 9. Save the file and compile the design. 10. Run the design. 11. The terminal will display the following output: HDCP Key EEPROM v1.0 This tool encrypts and stores the HDCP 2.2 certificate and HDCP 1.4 keys into the EEPROM on the HDMI FMC board Enter Password -& 12. The HDCP keys are encrypted using this password. The same password is used in the reference design to decrypt the HDCP keys. 13. The application is terminated after completing the programming of HDCP keys. Running the Reference Design Use the following steps to execute the system using the files in the ready_for_download directory 1. Launch the Xilinx System Debugger by selecting Start & All Programs & Xilinx Design Tools & Vivado & Vivado Tcl Shell. 2. In the Xilinx command shell window, change to the ready_for_download directory: Vivado% cd &unzip_dir&/kc705_hdmiss_.../ready_for_download 3. Invoke Xilinx System Debugger (xsdb) Vivado% xsdb 4. Establish connections to debug targets xsdb% connect 5. Download the bitstream to the FPGA: xsdb% fpga -file hdmi_example_kc705_wrapper.bit 6. Exit the XSDB command prompt: xsdb% exit IMPORTANT: The software application starts immediately after the completion of the FPGA configuration. The executable file (.elf) is embedded in the configuration file (download.bit). Results This section describes the reference design results. TX Only Mode The TX only mode starts immediately after the bitstream download when no valid HDMI source is plugged in to the HDMI RX port. HyperTerminal Screen of the TX Only mode displays the following output. At the start-up, the software will ask you for the password that was used previously to load the HDCP keys by the key utility application. If the wrong password is XAPP1287 (v1.2) July 18,28 Steps supplied then HDCP functionality will be disabled. The colorbar pattern displayed on the HDMI sink is shown in Figure HDMI SS + VPhy Example v (c)
by Xilinx, Inc Build Feb :16: Before the HDCP functionality can be enabled, the application will load the encrypted HDCP keys from the HDMI FMC EEPROM. The HDCP keys are protected with a unique password. Please enter your password. Enter Password -&... Password is valid. Loading HDCP keys from EEPROM... done Enabling HDCP functionality TX cable is connected Starting colorbar MAIN MENU i - Info =& Shows information about the HDMI RX stream, HDMI TX stream, GT transceivers and PLL settings. c - Colorbar =& Displays the colorbar on the source output. r - Resolution =& Change the video resolution of the colorbar. f - Frame rate =& Change the frame rate of the colorbar. d - Color depth =& Change the color depth of the colorbar. s - Color space =& Change the color space of the colorbar. p - Pass-through =& Passes the sink input to source output. l - GT PLL layout =& Select GT transceiver PLL layout. z - GT log =& Shows the GT transceiver log information. e - Edid =& Display and set edid. a - Audio =& Audio options. v - Video =& Video pattern options. h - HDCP =& Goto HDCP menu. Starting colorbar TX stream is up Colorbar : Color Format: RGB Color Depth: 8 Pixels Per Clock: 2 XAPP1287 (v1.2) July 18,
29 Steps X-Ref Target - Figure 11 Mode: Progressive Frame Rate: 60Hz Resolution: Pixel Clock: Figure 11: TX Only Mode x1080p60(default) Colorbar Pattern Note: In Figure 11, the HDMI 2.0 sink was not set to scale up a smaller resolution. Hence, the colorbar did not occupy the whole 4K display Pass-through Mode The Pass-through mode starts immediately after the bitstream download when there is valid HDMI source plugged in the HDMI RX port. HyperTerminal Screen of the TX Only mode displays the following output: --- HDMI SS + VPhy Example v (c)
by Xilinx, Inc Build Feb :16: Before the HDCP functionality can be enabled, the application will load the encrypted HDCP keys from the HDMI FMC EEPROM. The HDCP keys are protected with a unique password. Please enter your password. Enter Password -&... Password is valid. Loading HDCP keys from EEPROM... done Enabling HDCP functionality RX cable is connected XAPP1287 (v1.2) July 18,
XAPP1275 (v1.0) January 27, 2016 Application Note: Kintex UltraScale Family HDMI 2.0 Implementation on Kintex UltraScale FPGA GTH Transceivers Authors: Gilbert Magnaye and Marco Groeneveld Summary This
Building an Embedded Processor System on a Xilinx Zync FPGA (Profiling): A Tutorial Embedded Processor Hardware Design January 29 th 2015. VIVADO TUTORIAL 1 Table of Contents Requirements... 3 Part 1:
Vivado Hello World Tutorial Embedded Processor Hardware Design September 9, 2013 VIVADO TUTORIAL 1 Table of Contents Requirements... 3 Part 1: Building a Zynq- 7000 Processor Hardware... 3 Introduction...
MicroBlaze Spartan-3A Kit Reference Design Christophe Charpentier 7/20/2007 Software Tools Requirements EDK 9.1.02 ISE 9.1.03 Hardware Requirements Xilinx Spartan-3A Starter Kit board Rev. C or Rev. D
AXI Performance Monitor v5.0 LogiCORE IP Product Guide Vivado Design Suite Table of Contents IP Facts Chapter 1: Overview Advanced Mode...................................................................
LogiCORE IP AXI Performance Monitor v2.00.a Product Guide Table of Contents IP Facts Chapter 1: Overview Target Technology................................................................. 9 Applications......................................................................
MicroBlaze Debug Module (MDM) v3.2 LogiCORE IP Product Guide Vivado Design Suite Table of Contents IP Facts Chapter 1: Overview Feature Summary..................................................................
Application Note: Virtex-5 Family XAPP1020 (v1.0) June 01, 2009 Post-Configuration Access to SPI Flash Memory with Virtex-5 FPGAs Author: Daniel Cherry Summary Virtex -5 FPGAs support direct configuration
Software User Guide UG-461 One Technology Way P.O. Box 9106 Norwood, MA , U.S.A. Tel: 781.329.4700 Fax: 781.461.3113
ezlinx icoupler Isolated Interface Development Environment
SL-8800 HDCP 2.2 and HDCP 1.x Protocol Analyzer for HDMI Simplay-UG-02003-A July 2015 Contents 1. Overview... 4 1.1. SL-8800 HDCP Protocol Analyzer Test Equipment... 4 1.2. HDCP 2.2/HDCP 1.x Protocol Analyzer
Von der Hardware zur Software in FPGAs mit Embedded Prozessoren Alexander Hahn Senior Field Application Engineer Lattice Semiconductor AGENDA Overview Mico32 Embedded Processor Development Tool Chain HW/SW
Serial Communications 1 Serial Communication Introduction Serial communication buses Asynchronous and synchronous communication UART block diagram UART clock requirements Programming the UARTs Operation
User Guide 980 HDMI Protocol Analyzer Gen 3 System Rev: C6 Page 1 February 7, 2013 Table of Contents 1 About the 980 HDMI Protocol Analyzer 5 1.1 What makes the 980 HDMI Protocol Analyzer Unique? 5 1.2
Hello, and welcome to this presentation of the STM32 Universal Synchronous/Asynchronous Receiver/Transmitter Interface. It covers the main features of this USART interface, which is widely used for serial
Develop a Dallas 1-Wire Master Using the Z8F1680 Series of MCUs AN2 Abstract This describes how to interface the Dallas 1-Wire bus with Zilog s Z8F1680 Series of MCUs as master devices. The Z8F0880,
(DSF) Soft Core Prozessor NIOS II Stand Mai 2007 Jens Onno Krah Cologne University of Applied Sciences www.fh-koeln.de jens_onno.krah@fh-koeln.de NIOS II 1 1 What is Nios II? Altera s Second Generation
Getting Started with the Xilinx Zynq- 7000 All Programmable SoC Mini-ITX Development Kit Table of Contents ABOUT THIS GUIDE... 3 ADDITIONAL DOCUMENTATION... 3 ADDITIONAL SUPPORT RESOURCES... 3 INTRODUCTION...
DVI Interface The outline: The reasons for digital interface of a monitor the transfer from VGA to DVI. DVI v. analog interface. The principles of LCD control through DVI interface. The link between DVI
SKP16C62P Tutorial 1 Software Development Process using HEW Renesas Technology America Inc. 1 Overview The following tutorial is a brief introduction on how to develop and debug programs using HEW (Highperformance
RS-485 Protocol Manual Revision: 1.0 January 11, 2000 RS-485 Protocol Guidelines and Description Page i Table of Contents 1.0 COMMUNICATIONS BUS OVERVIEW... 1 2.0 DESIGN GUIDELINES... 1 2.1 Hardware Design
RN-WIFLYCR-UM-.01 RN-ISP-UM In-System Programmer 2012 Roving Networks. All rights reserved. Version 1.1 1/19/2012 USER MANUAL
1 OVERVIEW You use Roving Networks In-System-Programmer
PS-2 Mouse: The Protocol: For out mini project we designed a serial port transmitter receiver, which uses the Baud rate protocol. The PS-2 port is similar to the serial port (performs the function of transmitting
Distributed by:
1-800-831-4242 The content and copyrights of the attached material are the property of its owner. SSA-485 Smart Serial Adapter Serial Converter / Stand-alone host controller
DLP-HS-FPGA LEAD-FREE USB - FPGA MODULE (PRELIMINARY) APPLICATIONS: - Rapid Prototyping - Educational Tool - Industrial / Process Control - Data Acquisition / Processing - Embedded Processor FEATURES:
Quick Start Guide MRB-KW01 Development Platform Radio Utility Application Demo MODULAR REFERENCE BOARD Quick Start Guide Get to Know the MRB-KW01x Module UART Selector ANT 1 RFIO (TX/RX) USB 2.0 Serial
MECH 423 Mechatronic Product Design Spring 2016 Lab #2: MSP430 Microprocessor Programming Objectives This lab consists in a set of exercises designed to teach you the basics of microprocessor programming
DE4 NetFPGA Packet Generator Design User Guide Revision History Date Comment Author 01/30/2012 Initial draft Harikrishnan Contents 1. Introduction... 4 2. System Requirements... 4 3. Installing DE4 NetFPGA
General Purpose IO for Integrators -1- TABLE OF CONTENTS Table of Contents Technical Data 3 Standard Operation 4 Inputs 4 Outputs 4 Analog Output Calibration 4 Bandrate 4 Master Timer Clock Function for
TASCAM US-122L / US-144 Release Notes Version 1.03 February 20, 2007 Owner s Manual Addendum... 2 Multi-Client Operation... 2 Version 1.03 Release Notes... 2 Maintenance Items in 1.03... 2... 2 Version
Developing an Application on Core8051s IP-Based Embedded Processor System Using Firmware Catalog Drivers User s Guide
Developing an Application on Core8051s IP-Based Embedded Processor System Using Firmware
XAPP1219 (v1.1) November 5, 2015 Application Note: Zynq-7000 AP SoC System Performance Analysis of an All Programmable SoC Author: Forrest Pickett Summary This application note educates users on the evaluation,
Application Note: Zynq-7000 All Programmable Soc XAPP1185 (v2.0) May 6, 2014 Zynq-7000 Platform Software Development Using the ARM DS-5 Toolchain Authors: Simon George and Prushothaman Palanichamy Summary
PRO DSX Video over LAN 4K Video over LAN One Device - Many Solution. Matrix Switch. Video Wall. Extend. Control PRO DSX-TX PRO DSX-RX The Octava PRO DSX is a simple to use, powerful video distribution
XAPP1016 (v1.0) September 13, 2007 Application Note: Embedded Processing Getting Started with the Nucleus PLUS RTOS and EDGE Tools on the MicroBlaze Processor Author: Mounir Maaref Abstract This application
NIOS CPU Based Embedded Computer System on Programmable Chip COE718: Hardware Software Co-Design of Embedded Systems 1 Lab Objectives BONUS LAB: PART-I This lab has been constructed to introduce the development
KRAMER ELECTRONICS LTD. USER GUIDE K-Router Plus Online User Guide Version 2.0.28 P/N:
Rev 2 Contents 1 Introduction 1 2 Downloading and Installing K-Router Plus 2 3 Defining K-Router Plus
January 15, 2004 Product Specification 11 Stonewall Court Woodcliff Lake, NJ 07677 USA Phone: +1-201-391-8300 Fax: +1-201-391-8694 E-mail: info@ URL: www. Features AllianceCORE
ScreenBeam Wireless Display Kit Model #: SBWD100KIT User Manual Ver 1.0 Solutions for the Digital Life Table of Contents Introduction 1 Package Contents 1 Features 2 System Requirements 2 Getting to Know
Table of contents: 1 FEATURES... 2 2 GENERAL DESCRIPTIONS AND SYSTEM CONTENTS... 2 3 SYSTEM REQUIREMENTS... 2 4 GETTING STARTED... 3 4.1 INSTALLATION OF NI-SERIAL CABLE ASSEMBLY DRIVER... 3 4.2 INSTALLATION
Single channel data transceiver module WIZ2-434 Available models: WIZ2-434-RS: data input by RS232 (±12V) logic, 9-15V supply WIZ2-434-RSB: same as above, but in a plastic shell. The WIZ2-434-x modules
System Solutions for HD Video (MHL/DP 1.2a), PD 2.0, USB 3.0 over USB Type-C November 2016 Lattice Semiconductor 111 5 th Ave., Suite 700 Portland, Oregon 97204 USA Telephone: (503) 268-8000
1 Tutorial on Partial Reconfiguration of Image Processing Blocks using Vivado and SDK Nishmitha Naveenchandra Kajekar nishmi@unm.edu Department of Electrical and Computer Engineering University of New
Data Sheet Magswipe.pdf 8 Pages Last Revised 05/03/05 Micro RWD EM4001 Mag swipe Decimal Output Version This version of the Micro RWD product behaves in the same manner as the standard Micro RWD EM4001
Chapter 5 Serial Port Operation (I. Scott MacKenzie) 1 Introduction 8051 includes an on-chip serial port that can operate in four modes over a wide range of frequencies. Essential function of serial port
SmartFusion2 SoC FPGA: Development Kit Demo User s Guide
SmartFusion2 SoC FPGA: Development Kit Demo User's Guide Table of Contents SmartFusion2 SoC FPGA Development Kit Demo... 5 Purpose... 5 Introduction...
AXIS Camera Station Installation Guide
AXIS Camera Station Installation Guide Page 3 AXIS Camera Station Installation Guide Minimum recommended requirements Install AXIS Camera Station on a stand-alone
ni.com Multimedia Test Raviteja Chivukula Technical Marketing Engineer NI India Multimedia Test End of Line Testing & Prototype testing for Multimedia devices Test for performance Audio & Video Testing
Lab Experiment 1: The LPC 2148 Education Board 1 Introduction The aim of this course ECE 425L is to help you understand and utilize the functionalities of ARM7TDMI LPC2148 microcontroller. To do that,
í ChipScope Pro Software and Cores User Guide [] [] This document applies to the following software versions: ISE Design Suite 14.3 and 14.4 Notice of Disclaimer The information disclosed to you hereunder
PCIe AHCI-IP Demo Instruction Rev1.0 10-Jul-15 This document describes the instruction to show PCIeSSD demo by using SATA AHCI-IP, SATA-IP, and PCIeIP connecting with SATA-III/II SSD on Xilinx evaluation
HARDWARE MANUAL BrightSign HD120, HD220, HD1020 BrightSign, LLC. 16795 Lark Ave., Suite 200 Los Gatos, CA 2-9263 www.brightsign.biz TABLE OF CONTENTS OVERVIEW... 1 Block Diagram... 2 Ports...
UART-to-SPI Interface - Design Example Application Note AC327 Table of Contents Overview................................................. 1 Design Description............................................
Software ISO 7816 I/O Line Implementation Features ISO 7816-3 compliant (direct convention) Byte reception and transmission with parity check Retransmission on error detection Automatic reception at the
DEVICES AND COMMUNICATION BUSES FOR DEVICES NETWORK Lesson-5: SPI, SCI, SI and SDIO Port/devices for Serial Data Communication 1 Microcontroller internal devices for SPI or SCI or SI Synchronous Peripheral
ZC702 Built-In Self Test Flash Application May 2012 XTP180 Revision History Date Version Description 05/25/12 1.0 Initial version for 14.1. Copyright 2012 Xilinx, Inc. All Rights Reserved. XILINX, the
Dec 2014 ALSE Video Reference Designs built using AVDB HDMI Bypass This demonstration turns AVDB into a TV player that sends video and audio to an HDMI TV or monitor. The video (& audio) comes from an
Thunder Link is a family of small form factor modules for formatting and converting generic digital video streams to standard compliant formats. Different interface standards are supported from the transmitter
A+ Guide to Managing and Maintaining Your PC, 7e Chapter 1 Introducing Hardware Objectives Learn that a computer requires both hardware and software to work Learn about the many different hardware components
AN 588: 10-Gbps Ethernet Hardware Demonstration Reference Designs December 2009 AN-588-1.1 The reference designs demonstrate wire-speed operation of the Altera 10-Gbps Ethernet (10GbE) reference design
Measurement and Analysis Introduction of ISO7816 (Smart Card) ISO 7816 is an international standard related to electronic identification cards with contacts, especially smart cards, managed jointly by
Transmitter Interface Program Operational Manual Version 3.0.4 1 Overview The transmitter interface software allows you to adjust configuration settings of your Max solid state transmitters. The following
OPERATION MANUAL MV-410RGB Layout Editor Version 2.1- higher
Table of Contents 1. Setup... 1 1-1. Overview... 1 1-2. System Requirements... 1 1-3. Operation Flow... 1 1-4. Installing MV-410RGB Layout
Best Practises for LabVIEW FPGA Design Flow 1 Agenda Overall Application Design Flow Host, Real-Time and FPGA LabVIEW FPGA Architecture Development FPGA Design Flow Common FPGA Architectures Testing and
Using Oscilloscopes in Serial Bus Decoding and Analysis 1 / 9 Preface The communication quality of low cost, high speed transmission and high reliability is always demanded in the industrial control applications.
USB-to-I2C Hardware User s Manual / Information provided in this document is solely for use with the USB-to-I2C product from SB Solutions, Inc. SB Solutions, Inc. reserves the right
Single channel data transceiver module WIZ2-434 Available models: WIZ2-434-RS: data input by RS232 (±12V) logic, 9-15V supply WIZ2-434-RSB: same as above, but in a plastic shell. The WIZ1-434-x modules
ChipScope Pro Tutorial Using an IBERT Core with ChipScope Pro Analyzer Xilinx is disclosing this user guide, manual, release note, and/or specification (the Documentation ) to you solely for use in the
White Paper Video display interfaces Within the last few years, a number of new and competing video display interfaces have emerged. While each claims to have unique benefits, there is some overlap. This
C328-7640 User Manual Release Note: 1. Jan 28, 2004 official released v1.0 2. Feb 24, 2004 official released v1.1 Fix the definition of verify code Fix the bug of unable jump to power save mode Fix the
Technical Brief
from Missing Link Electronics: Zynq SSE for Network-Attached Storage for the Avnet Mini-ITX For the evaluation of Zynq SSE MLE supports two separate hardware platforms: The Avnet
Communications Wired Communications Protocols Wired Communications Goal: Allow discrete devices (processors, controllers, sensors, etc ) to communicate with each other Data transfer or synchronization
Preliminary DATA SHEET Preliminary TIP-VBY1HS Data Sheet V-by-One HS Standard IP for Xilinx FPGA Rev.1.00 Tokyo Electron Device Ltd. Rev1.00 1 Revision History The following table shows the revision history
IX System IP network-compatible intercom IX Support Tool Setting Manual Software version 2.0.0.0 or later Before configuring and using the system, read Setting Manual and Operation Manual (PDF) carefully.
Arduino Leonardo ETH Page 1 of 10 Arduino Leonardo ETH Overview The Leonardo ETH is a microcontroller board based on the ATmega32U4 (datasheet (http://download.arduino.org/products/leonardoeth/atmel-7766-8-bit-avr-atmega16u4-32u4_datasheet.pdf))
Chrontel Brief Data

我要回帖

更多关于 fpga pcie ssd 的文章

 

随机推荐