/* Hidden because it was decided not to publish this update procedure. ====== How to Adapt a Board File Based Project for ZedBoard Rev E with 1 GB RAM ====== ===== Introduction ===== Some articles of the revision E ZedBoard development boards have 1 GB total DDR3 memory; all of the previous revisions have 512 MB DDR3 memory. The memory part change makes Rev. E boards incompatible with the already built projects for the ZedBoard such as demos and reference projects due to the configuration targeting a different memory part. This guide will describe how to change the DDR3 memory part configuration and re-build existing projects. ---- ===== Identifying Affected Boards ===== Only some articles of Rev. E ZedBoards are affected. These boards are loaded with a 4 Gb (32 Meg x 16 x 8) instead of 2 Gb (16 Meg x 16 x 8) DDR3 chips. The 4 Gb parts on some Rev. E boards correspond to a Micron part number of MT41x256M16, whereas 2 Gb parts on previous revisions of the ZedBoard have a Micron part number of MT41x128M16. To readily determine which part is loaded on a ZedBoard, find the FBGA code printed on the DDR memory (located to the left of IC16, the Zynq 7020 chip) and search it on Micron's FBGA Decoder tool, https://www.micron.com/support/tools-and-utilities/fbga. If the memory is revealed to match the 4 Gb part number of MT41x256M16, follow the rest of this document to update the memory part in existing ZedBoard materials. ZedBoards with the 2 Gb part do not require any updates to existing projects. {{ :reference:programmable-logic:zedboard:zedboardddr3_fbga_code.png?600 | Example location of FBGA code on DDR3 memory}} ---- ===== Inventory ===== * ZedBoard Rev. E with 1 GB DDR3 memory (MT41K**256**M16TW-107), * USB Programming cable, USB UART cable, and a 12 V Power Supply, as required by the ZedBoard * Any hardware component required by the project you want to update (e.g. Pmods, FMC module, etc.), * Vivado + SDK/Vitis (Use the version that the original project was built in). * See [[reference/programmable-logic/guides/installation|Installing Vivado, Vitis, and Digilent Board Files]] for instructions on how to install these tools. * An older tutorial that installs Xilinx SDK is available [[vivado/installing-vivado/start|here]]. ---- ===== Update Procedure ===== Open the project to be updated in the correct version of Vivado. Open the existing Block Design. {{ :reference:programmable-logic:zedboard:ZedboardDDR3_openBlockDesign.png?600 | Open the existing Block Design}} ---- Locate the Zynq IP in the Block Diagram. {{ :reference:programmable-logic:zedboard:ZedboardDDR3_ZynqIP_BlockDiagram.png?600 | Find the Zynq IP}} ---- Re-customize the Zynq7 Processing System IP by double clicking on the Zynq IP. Navigate to the DDR Configuration from the Page Navigator. {{ :reference:programmable-logic:zedboard:ZedboardDDR3_recustomizeIP.png?600 | Re-customize the Zynq IP}} ---- Change the memory part to MT41K256M16 RE-125. Click **OK**. {{ :reference:programmable-logic:zedboard:ZedboardDDR3_changeDDR.png?600 | Change the DDR3 memory part}} ---- Validate the new design by clicking the **Validate Design** button ({{:learn:programmable-logic:tutorials:2020.1:validate-block-design:validate-button.png|}}) in the Diagram pane's toolbar (or press the F6 key). After the design has been successfully validated, click **OK**. Save the block design. {{ :reference:programmable-logic:zedboard:ZedboardDDR3_ValidateDesign.png?600 | Validate the design}} ---- Generate the Bitstream by clicking the **Generate Bitstream** button in the //Program and Debug// section of the //Flow Navigator// pane on the left side of the window. {{ :reference:programmable-logic:zedboard:ZedboardDDR3_GenerateBitstream.png?600 | Re-generate the bitstream}} ---- After the bitstream has generated, export the hardware design by clicking **Export → Export Hardware** in the //File// menu. {{ :learn:programmable-logic:tutorials:2020.1:export-fixed-hardware:export-hardware.png?600 | Export the Hardware design}} ---- --> Vivado 2019.2 or later # If you are using Vivado 2019.2 or later Use the //Fixed// platform and click **Next**. {{ :reference:programmable-logic:zedboard:ZedboardDDR3_FixedPlatform.png?600 | Select the Fixed Platform type}} ---- Select //Include Bitstream// and click **Next**. {{ :reference:programmable-logic:zedboard:ZedboardDDR3_includeBitstream.png?600 | Include the Bitstream the exported Hardware Platform}} ---- Save the hardware platform (the Xilinx Shell Architecture, or XSA file) to a known folder. For some Digilent projects, the hw_handoff folder is used, though this specific folder is not required. {{ :reference:programmable-logic:zedboard:ZedboardDDR3_hw_handoff.png?600 | Put your .xsa in an easily findable location}} ---- Open the already existing project in Vitis and Right Click on the platform project (the green one without a //_system// appended at the end of the name) and select //Update Hardware Specification//. {{ :reference:programmable-logic:zedboard:ZedboardDDR3_Vitis_hwSpecification.png?600 | Update the Hardware Specification}} ---- Provide the location of the .xsa file created earlier and click **OK**. {{ :reference:programmable-logic:zedboard:ZedboardDDR3_Vitis_hwPath.png?600 | Find and select the updated hardware platform}} ---- <-- --> Vivado 2019.1 or earlier # columns {{ :reference:programmable-logic:zedboard:ZedboardDDR3_NAME.png?600 | TEXT}} ---- columns {{ :reference:programmable-logic:zedboard:ZedboardDDR3_NAME.png?600 | TEXT}} ---- columns {{ :reference:programmable-logic:zedboard:ZedboardDDR3_NAME.png?600 | TEXT}} <-- columns {{ :reference:programmable-logic:zedboard:ZedboardDDR3_NAME.png?600 | TEXT}} ---- columns {{ :reference:programmable-logic:zedboard:ZedboardDDR3_NAME.png?600 | TEXT}} ---- columns {{ :reference:programmable-logic:zedboard:ZedboardDDR3_NAME.png?600 | TEXT}} ---- columns {{ :reference:programmable-logic:zedboard:ZedboardDDR3_NAME.png?600 | TEXT}} ---- columns {{ :reference:programmable-logic:zedboard:ZedboardDDR3_NAME.png?600 | TEXT}} ---- */