Creating a project using the Base System Builder

What am I learning here? In this post we’ll look at using the Base System Builder in EDK version 13.1. Specifically you’ll learn: How to create an EDK project with the Base System Builder How to add a software application to an EDK project How to implement and test your design Requirements You will need the following : One ML505/ML506/ML507 or XUPV5 board (or actually any board supported by Xilinx). [Read More]

Loading Designs from Compact Flash

Overview Your FPGA designs can be copied onto a compact flash card and loaded automatically when your ML50x/XUPV5 board is turned ON. The configuration DIP switch (SW3), located in the top left hand corner of the board, determines which design the FPGA is loaded with when the board is turned ON. Before understanding how to use these switches, we must first take a look at how the flash disk contents are structured. [Read More]

Convert Bit Files to System ACE Files

Instructions To run your designs from the flash disk, you need to first convert your bit files to System ACE files (.ace). One simple system for doing this is to copy all your bit files to one folder and use a batch file in that folder to perform the conversions from the command line. To start, you should create a folder and copy your bit file(s) there (eg. “C:SysACE”). [Read More]

Aurora to Ethernet Bridge

Tutorial Overview In the last tutorial we implemented the embedded Tri-mode Ethernet MAC and tested it by looping back Ethernet packets and monitoring them with Wireshark. In this tutorial, we will again implement the EMAC but this time we will link it to an Aurora core, to implement an Aurora to Ethernet Bridge. With the bridge, we can link two PCs as shown in the diagram below. To connect the EMAC and Aurora cores we have to use two FIFOs to cross clock domains. [Read More]

Tri-mode Ethernet MAC

Tutorial Overview The Virtex-5 Embedded Tri-mode Ethernet MAC is useful for designs requiring Ethernet connectivity. Fortunately, Xilinx has made it easy for us to start developing with the Ethernet MACs by providing several online examples and application notes. One of the examples can be obtained when you use CORE Generator to generate the Ethernet MAC wrapper. The generated example is a simple design that mirrors incoming Ethernet packets, swapping the source and destination MAC addresses. [Read More]

Create a Peripheral using the Peripheral Wizard

Tutorial Overview In this tutorial we will create a simple project that uses our own IP peripheral (instead of using the XPS General Purpose IO peripheral provided by Xilinx) to read from the DIP switches and write to the LEDs. The software application will display the DIP switch values on the LED outputs and also send the DIP switch values to the UART. Any custom logic (IP) that you design must connect to the PLB to communicate with the Microblaze processor. [Read More]

Create a Project Using the Base System Builder

Tutorial Overview In this example, we will develop a simple FPGA project using the Base System Builder that includes three peripherals: the RS232 UART and two GPIOs. One GPIO will be used for the DIP switches and the other for the LEDs. We will then use a C program to read data from the switches and write it to the LEDs. The result is that the LEDs will display the DIP switch settings. [Read More]

Integrating a Blackbox into a Peripheral

Tutorial Overview Sometimes we have an .ngc file from CORE Generator (or some other source) that we would like to bring into EDK as a peripheral. This project is a simple example of integrating a blackbox design into a peripheral generated by the Peripheral Wizard. We will first create a blackbox multiplier using the Xilinx CORE Generator and then we will use the generated .ngc file in our peripheral. [Read More]

Integrating a VHDL Design into a Peripheral

Tutorial Overview This tutorial is similar to the previous one titled: Integrating a Blackbox into a Peripheral however in this case, instead of integrating an .ngc file into a peripheral, we integrate one or more VHDL files. Sometimes we have a VHDL design that we developed in ISE, or some other program, and we would like to bring it into the EDK as a peripheral. In this tutorial, we will create the same multiplier peripheral as was created in the previous tutorial. [Read More]

Manually Add a Peripheral to a Project

Tutorial Overview In the previous example, we created a project using the BSB and all of the work related to the hardware design was done by the BSB. In this example, we will create the same simple project, but this time we will add the GPIO for the LEDs manually. This way we will learn the process of adding extra peripherals to our design and we will also better understand the hardware design features of XPS. [Read More]