25.12.2014 Views

Evaluating Virtex-II Pro Development System, it's features and ...

Evaluating Virtex-II Pro Development System, it's features and ...

Evaluating Virtex-II Pro Development System, it's features and ...

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Vasko Mitanov<br />

Faculty of Electrical Engineering <strong>and</strong> Information Technologies,<br />

University Ss. Cyril <strong>and</strong> Methodius, Macedonia<br />

Email: vasko.mitanov@gmail.com


<strong>Pro</strong>vides an advanced hardware platform that<br />

consists of a high performance <strong>Virtex</strong>-<strong>II</strong> <strong>Pro</strong><br />

Platform FPGA<br />

Surrounded by a comprehensive collection of<br />

peripheral components that can be used to<br />

create a complex system <strong>and</strong> to<br />

demonstrate the capability of the <strong>Virtex</strong>-<strong>II</strong><br />

<strong>Pro</strong> Platform FPGA.


The core of development board is Xilinx <strong>Virtex</strong>-<strong>II</strong><br />

<strong>Pro</strong> XC2VP30<br />

<strong>Virtex</strong>®-<strong>II</strong> <strong>Pro</strong> FPGA with PowerPC® 405 cores<br />

Up to 2 GB of Double Data Rate (DDR) SDRAM<br />

<strong>System</strong> ACE controller <strong>and</strong> Type <strong>II</strong><br />

CompactFlash connector for FPGA configuration<br />

<strong>and</strong> data storage<br />

Embedded Platform Cable USB configuration port<br />

High-speed SelectMAP FPGA configuration from<br />

Platform Flash In-<strong>System</strong><br />

<strong>Pro</strong>grammable Configuration PROM<br />

Support for “Golden” <strong>and</strong> “User” FPGA<br />

configuration bitstreams


On-board 10/100 Ethernet PHY device<br />

Silicon Serial Number for unique board identification<br />

RS-232 DB9 serial port<br />

Two PS-2 serial ports<br />

Four LEDs connected to <strong>Virtex</strong>-<strong>II</strong> <strong>Pro</strong> I/O pins<br />

Four switches connected to <strong>Virtex</strong>-<strong>II</strong> <strong>Pro</strong> I/O pins<br />

Five push buttons connected to <strong>Virtex</strong>-<strong>II</strong> <strong>Pro</strong> I/O pins<br />

Six expansion connectors joined to 80 <strong>Virtex</strong>-<strong>II</strong> <strong>Pro</strong><br />

I/O pins with over-voltage protection<br />

High-speed expansion connector joined to 40 <strong>Virtex</strong>-<br />

<strong>II</strong> <strong>Pro</strong> I/O pins that can be used differentially or single<br />

ended


AC-97 audio CODEC with audio amplifier <strong>and</strong><br />

speaker/headphone output <strong>and</strong> line level output<br />

Microphone <strong>and</strong> line level audio input<br />

On-board XSGA output, up to 1200 x 1600 at 70 Hz<br />

refresh<br />

Three Serial ATA ports, two Host ports <strong>and</strong> one<br />

Target port<br />

Off-board expansion MGT link, with user-supplied<br />

clock<br />

100 MHz system clock, 75 MHz SATA clock<br />

<strong>Pro</strong>vision for user-supplied clock<br />

On-board power supplies<br />

Power-on reset circuitry<br />

PowerPC 405 reset circuitry


5V Regulated Power Supply Interface. The board includes<br />

power supply subsystem for generating additional 3.3V,<br />

2.5V <strong>and</strong> 1.5V for various block of the FPGA (core,<br />

peripheral, I/O)<br />

The board includes 8 Multi-Gigabit Transceivers. Three<br />

pairs of MGT are terminated by SATA connectors located<br />

on the board <strong>and</strong> one pair is terminated by optional SMA<br />

connector. There is independent 75MHz clock for SATA<br />

communication via MGT transceivers. Two SATA ports are<br />

configured as Host ports, one port is configured as Target<br />

port.<br />

Another very important feature of the board is<br />

incorporated JEDEC 184 pin DDR (Double Data Rate)<br />

SDRAM port which supports up to 2 GB memory modules.


Fast Ethernet 10/100 IEEE compliant interface is implemented on<br />

the board. Only the PHY is implemented <strong>and</strong> the MAC layer is left<br />

to the developer to implement this layer <strong>and</strong> upper layers in<br />

FPGA. The Ethernet interface is implemented as st<strong>and</strong>ard RJ-45<br />

connector on the board.<br />

<br />

<br />

One Serial RS232 Port <strong>and</strong> two PS/2 ports are provided on the<br />

board. The RS-232 port is implemented as DB-9 connector on<br />

the board. The board provides electronic circuits to provide<br />

necessary voltage levels for RS-232 st<strong>and</strong>ard.<br />

The board provides XSGA interface via DAC with 180 MHz clock.<br />

This DAC can provide VESA compatible output of 1280x1024<br />

pixels at refresh rate of 75 Hz or maximal 1600x1200 pixels at<br />

70 Hz refresh rate. Also 15 pin D-SUB connector is supplied on<br />

the board for connecting to monitor.


AC97 Audio codec with full-duplex stereo ADC <strong>and</strong> DAC<br />

are implemented on the board. This CODEC provides<br />

analog mixing <strong>and</strong> combining capabilities of microphone<br />

input, line-in input <strong>and</strong> PCM data. Output is stereo power<br />

amplified. There are st<strong>and</strong>ard audio input/output<br />

connectors located on the board.<br />

For various display <strong>and</strong> information purposes, the board<br />

includes four LED diodes which can be controlled by FPGA,<br />

four DIP Switches <strong>and</strong> five push buttons. All of these LEDs,<br />

switches <strong>and</strong> push buttons are controlled/monitored by<br />

FPGA directly. Specific pins on which this buttons <strong>and</strong> LEDs<br />

are connected can be found in UCFs (User Constraint<br />

Files), provided with additional CDs in the package along<br />

with this board.


The board is programmed via USB 2.0 interface. This<br />

interface configures <strong>and</strong> programs FPGA via<br />

Boundary-Scan.<br />

The board includes <strong>System</strong> Advanced Configuration<br />

Environment controller. This controller provides FPGA<br />

with configuration from various sources. This<br />

controller support: Compact Flash Port, JTAG Port,<br />

Microprocessor port <strong>and</strong> Test JTAG Port.<br />

Each board includes unique silicon serial number<br />

(SSN) which can be read by FPGA <strong>and</strong> can be used in<br />

designs where unique identification of the board is<br />

required.


<strong>Virtex</strong>-<strong>II</strong> <strong>Pro</strong> <strong>Development</strong> <strong>System</strong> does not<br />

come with any development or design tools<br />

for HDL, synthesis, design implementation or<br />

configuration of FPGA XC2VP30.


EDA tools from Xilinx that support this<br />

development system:<br />

- ISE Design Suite<br />

- Embedded Developers Kit (EDK) <strong>and</strong><br />

- ChipScope <strong>Pro</strong>.


ISE Design Suite from Xilinx is complete design environment for<br />

developing FPGA in all phases:<br />

<br />

<br />

<br />

<br />

<br />

Design entry. <strong>Pro</strong>cess of describing design of the system in one<br />

of the following ways: by HDL, VHDL, Verilog, <strong>System</strong>-C or<br />

schematic.<br />

Synthesis. <strong>Pro</strong>cess of generating netlist files from designs of<br />

previous phase.<br />

Implementation. Converting logical design into device dependant<br />

format.<br />

Verification. <strong>Pro</strong>cess of verifying functionality of design.<br />

Verification can be made by simulator or with ChipScope <strong>Pro</strong> by<br />

in-circuit verification process after device programming.<br />

Device Configuration. The process of download configuration<br />

files to development board.


Important notes regarding ISE:<br />

Last supported version of ISE supported by<br />

<strong>Virtex</strong>-<strong>II</strong> <strong>Pro</strong> <strong>Development</strong> <strong>System</strong> is ISE v10.1<br />

Newer versions of ISE(11.x+) are not<br />

supported.<br />

Older versions of ISE (7.0 - 9.2) don’t fully<br />

support <strong>Virtex</strong>-<strong>II</strong> <strong>Pro</strong> board.<br />

ISE WebPACK edition (the only free edition<br />

of ISE) is not supported by <strong>Virtex</strong>-<strong>II</strong> <strong>Pro</strong><br />

<strong>Development</strong> <strong>System</strong>.


EDK is integrated development environment for<br />

designing embedded processing systems.<br />

Supported embedded processor cores:<br />

- PowerPC® 405 hard processor cores<br />

- MicroBlaze soft processor cores


ChipScope <strong>Pro</strong> is tool for analyzing internal<br />

FPGA signals including embedded processor<br />

busses.<br />

Signals are captured at or near operating<br />

speed.<br />

Extensive support for embedded hard<br />

processor cores PowerPC 405® <strong>and</strong><br />

MicroBlaze.


Tools <strong>and</strong> configuration files needed for setting up complete development<br />

environment:<br />

<br />

Xilinx ISE 10.1 (At least Foundation/Logic Edition). Can be bought from<br />

Xilinx website: http://www.xilinx.com/tools/designtools.htm<br />

Xilinx EDK. Can be bought separately or in bundle with Xilinx ISE 10.1<br />

Embedded or with <strong>System</strong> Edition.<br />

<br />

<br />

IP Cores for peripherals on <strong>Virtex</strong>-<strong>II</strong> <strong>Pro</strong> <strong>Development</strong> <strong>System</strong>. This IP<br />

Cores can be found on CD that comes with board (the files are located in<br />

directory \V2P_CD\lib on the CD). Note that these files cannot be found<br />

on the Internet.<br />

User Constraint Files (UCF) for this board. These files are describing pinout<br />

<strong>and</strong> I/O drive characteristics for peripherals on <strong>Virtex</strong>-<strong>II</strong> <strong>Pro</strong><br />

<strong>Development</strong> Board (AC97/Ethernet/XSGA/DDR/Serial/PS2 etc…). Latest<br />

version of these files can be downloaded from:<br />

http://www.xilinx.com/univ/XUPV2P/UCF_Files/UCF_FILES.zip


Install ISE <strong>and</strong> EDK.<br />

After installation of ISE <strong>and</strong> EDK, the installer automatically<br />

installs Windows drivers that support communication<br />

with <strong>Virtex</strong>-<strong>II</strong> <strong>Pro</strong> <strong>Development</strong> Board via USB.<br />

After installation of USB Windows drivers, development<br />

board can be connected to PC by supplied USB cable <strong>and</strong><br />

then can be powered ON.<br />

After Windows detects development board <strong>and</strong> configures<br />

appropriate drivers, the board needs to be configured with<br />

utility iMPACT located in:<br />

XILINX_INSTALL_DIR\10.1\ISE\bin\nt\impact.exe<br />

Unpack <strong>and</strong> copy IP Cores for peripherals (directory<br />

xup_v2pro_dev_brd) for example on c:\<br />

xup_v2pro_dev_brd. DO NOT USE directories with names<br />

containing spaces.<br />

Unpack <strong>and</strong> copy User Constraint Files into same location


Optionally, if we want to use sample reference<br />

designs supplied with CD that comes with <strong>Virtex</strong>-<br />

<strong>II</strong> <strong>Pro</strong> board, we need to download <strong>and</strong> install:<br />

◦ PLB IP Core for DDR memory version 1.11a<br />

(plb_ddr_v1_11_a<br />

plb_ddr_v1_11_a) from Xilinx support forums because<br />

PLB IP Core for DDR supplied with ISE v10.1 is version<br />

2.00.1b <strong>and</strong> is not backward compatible with version<br />

1.11a.<br />

For new designs IP core mpmc (Multi-Port Memory<br />

Controller) should be used. Plb_ddr_v2_00 has obsolete<br />

PLB v3.4 support. Xilinx migrated newest IP Cores to PLB<br />

v4.6. (mpmc supports PLB v4.6)


Updated version of xup_v2pro_dev_brd that<br />

supports Xilinx ISE 10.1 <strong>and</strong> EDK can be<br />

found on Univeristy of Kansas website:<br />

https://wiki.ittc.ku.edu/ittc/images/6/64/Xu<br />

p_xbd.zip<br />

This version additionally adds support for Multi<br />

Port Memory Controller (mpmc IP).


◦ <strong>Pro</strong>blem with supplied reference designs using soft<br />

IP Core xilnet v1.00a (xilnet_v1_00_a) for TCP/IP<br />

stack because this IP Core is no longer supported<br />

<strong>and</strong> distributed by Xilinx. Recommended<br />

replacement for xilnet v1.00a by Xilinx is lwip IP<br />

Core v1.00/v2.00/v3.00. Because lwip IP Core is<br />

larger than xilnet (it requires OS supporting<br />

functions), lwip can be used in RAW mode which<br />

doesn’t require OS support. Lwip IP core is not API<br />

compatible with Xilnet.


Purpose of this sample project:<br />

To demonstrate some of the capabilities of<br />

<strong>Virtex</strong>-<strong>II</strong> <strong>Pro</strong> <strong>Development</strong> <strong>System</strong> <strong>and</strong> to get<br />

acquainted with development environment.


Following <strong>features</strong> were chosen to be evaluated:<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

Creation, Synthesis, Verification <strong>and</strong> Deployment of sample project in Xilinx EDK;<br />

Embedded hardware processor cores Power PC® 405 located in XC2VP30 FPGA;<br />

IP core wrapper for embedded hardware processor core (PPC405);<br />

IP core for Serial Communication (RS-232);<br />

IP core that controls/drives Dual Rank 512MB DDR memory;<br />

Connecting DDR IP core with Embedded <strong>Pro</strong>cessor IP Core via PLB bus;<br />

Mounting external 512MB DDR Memory module on JEDEC 184 pin port to evaluate<br />

board conformity (mechanical <strong>and</strong> electrical) to JEDEC DDR-SDR st<strong>and</strong>ard<br />

specifications;<br />

Developing example application in application programming language C that runs<br />

on one of the Power PC 405 processor cores <strong>and</strong> uses all of above mentioned<br />

<strong>features</strong> (IP cores, Embedded <strong>Pro</strong>cessor, RS232 <strong>and</strong> DDR Interfaces) by testing<br />

DDR 512MB memory <strong>and</strong> sends results to PC via RS-232 interface.


Results:<br />

Software application running on one PowerPC core successfully<br />

used all of the supplied 512MB external RAM memory <strong>and</strong><br />

results were successfully sent to host PC.<br />

When the DDR memory module was removed* from the 184 pin<br />

port, the software application running on PC successfully<br />

detected absence of memory module.<br />

Note that EDK project should be saved in directory that doesn’t<br />

contain spaces (full path to the file). Because gcc compiler <strong>and</strong> ld<br />

linker will fail.<br />

*Memory Module was removed from the board while power was switched<br />

off


Xilinx-<strong>II</strong> <strong>Pro</strong> development system has a lot of<br />

peripherals integrated on the board which<br />

can be used by supplied IP Cores<br />

By proper installation <strong>and</strong> setup of software<br />

<strong>and</strong> hardware environment, Xilinx-<strong>II</strong> <strong>Pro</strong><br />

development system becomes very powerful<br />

FPGA research platform for commercial<br />

purposes as well for engineering curricula


Thank You!

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!