element14 Community
element14 Community
    Register Log In
  • Site
  • Search
  • Log In Register
  • Community Hub
    Community Hub
    • What's New on element14
    • Feedback and Support
    • Benefits of Membership
    • Personal Blogs
    • Members Area
    • Achievement Levels
  • Learn
    Learn
    • Ask an Expert
    • eBooks
    • element14 presents
    • Learning Center
    • Tech Spotlight
    • STEM Academy
    • Webinars, Training and Events
    • Learning Groups
  • Technologies
    Technologies
    • 3D Printing
    • FPGA
    • Industrial Automation
    • Internet of Things
    • Power & Energy
    • Sensors
    • Technology Groups
  • Challenges & Projects
    Challenges & Projects
    • Design Challenges
    • element14 presents Projects
    • Project14
    • Arduino Projects
    • Raspberry Pi Projects
    • Project Groups
  • Products
    Products
    • Arduino
    • Avnet & Tria Boards Community
    • Dev Tools
    • Manufacturers
    • Multicomp Pro
    • Product Groups
    • Raspberry Pi
    • RoadTests & Reviews
  • About Us
  • Store
    Store
    • Visit Your Store
    • Choose another store...
      • Europe
      •  Austria (German)
      •  Belgium (Dutch, French)
      •  Bulgaria (Bulgarian)
      •  Czech Republic (Czech)
      •  Denmark (Danish)
      •  Estonia (Estonian)
      •  Finland (Finnish)
      •  France (French)
      •  Germany (German)
      •  Hungary (Hungarian)
      •  Ireland
      •  Israel
      •  Italy (Italian)
      •  Latvia (Latvian)
      •  
      •  Lithuania (Lithuanian)
      •  Netherlands (Dutch)
      •  Norway (Norwegian)
      •  Poland (Polish)
      •  Portugal (Portuguese)
      •  Romania (Romanian)
      •  Russia (Russian)
      •  Slovakia (Slovak)
      •  Slovenia (Slovenian)
      •  Spain (Spanish)
      •  Sweden (Swedish)
      •  Switzerland(German, French)
      •  Turkey (Turkish)
      •  United Kingdom
      • Asia Pacific
      •  Australia
      •  China
      •  Hong Kong
      •  India
      • Japan
      •  Korea (Korean)
      •  Malaysia
      •  New Zealand
      •  Philippines
      •  Singapore
      •  Taiwan
      •  Thailand (Thai)
      • Vietnam
      • Americas
      •  Brazil (Portuguese)
      •  Canada
      •  Mexico (Spanish)
      •  United States
      Can't find the country/region you're looking for? Visit our export site or find a local distributor.
  • Translate
  • Profile
  • Settings
Avnet Boards Forums
  • Products
  • Dev Tools
  • Avnet & Tria Boards Community
  • Avnet Boards Forums
  • More
  • Cancel
Avnet Boards Forums
Avnet Boards General Newbie. Please Help
  • Forum
  • Documents
  • Members
  • Mentions
  • Sub-Groups
  • Tags
  • More
  • Cancel
  • New
Join Avnet Boards Forums to participate - click to join for free!
Actions
  • Share
  • More
  • Cancel
Forum Thread Details
  • State Not Answered
  • Replies 6 replies
  • Subscribers 353 subscribers
  • Views 530 views
  • Users 0 members are here
Related

Newbie. Please Help

Former Member
Former Member over 11 years ago

Hello guys, I am a new person on this forum and would like to ask a few questions.

First off, I am currently in my 6th semester in an Electrical Engineering course and I have studied programming using VHDL. However that course had a lot of theory and not a lot of practical implementation, even though we did study a lot of programming.

So I was wondering what are the differences between a board such as a Nexys4 and the Zedboard?

What are the practical applications of the two, as in what sort of projects can be built using these devices.

We used to program in a software by Mentor Graphics, the HDL Designer Series. These would then be implemented on a Spartan IIe board. The programs included things like implementing multiplexers, priority encoders, up/down counters.

Can such programs be implemented on the Zedboard too?
I think they can be implemented on the Nexys 4 but what about zedboard?

  • Sign in to reply
  • Cancel
  • Former Member
    0 Former Member over 11 years ago

    The Nexys 4 board is based on the Xilinx Artix XC7A100T device. The Zedboard is based on the Xilinx XC7Z020 device. Both have the same 'Artix' based FPGA fabric with similar performance and non-processor based features. The Artix XC7A100T has a little more FPGA fabric ~101K logic cells vs the XC7Z020 ~ 85K logic cells with similar amounts of RAM and DSP resources. Both boards are supported by the Vivado tool suite. If you only plan to implement HDL designs in the FPGA fabric the Nexys 4 board is a less expensive option.

     

    The ZedBoard Zynq device adds dual ARM 9 processor cores, so if you plan to experiment with any software or processor based design this makes more sense. You can of course implement an HDL only based design for the ZedBoard with a very basic ARM project that only uses the ARM to load the Programmable Logic bitstream.

     

    -Gary

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
  • Former Member
    0 Former Member over 11 years ago

    Both boards are capable of implementing HDL designed logic functions.  The primary difference is that the Zynq part (in Zedboards) has a microprocessor (Dual core ARM Cortex-A9) implemented permanently as hardware.  The advantage of the hard part is speed and size vs. implementing a microprocessor core in the FPGA part.  The CPU can run as an embedded controller with SPI, USB, serial, SDcard, Ethernet without ever having to write a line of HDL code as well.

    In the Artix you would have to implement the CPU and the peripherals manually and the CPU performance would be lower.  The Xilinx microblaze 32 bit CPU will run at about 100-150 MHz depending on feautures and how much other stuff you put into the FPGA. 

    The learning curve for the Zynq is substantial, especially if you plan to run an embedded Linux on it.  Free tools are available from Xilinx for both parts.  There's two separate design environments you can use to do the HDL programming: Vivado (the newer one) and ISE (the older one).  Both tools have substantial learning curves as well so plan on taking quite a bit of time to learn how to use these parts. 

    The new FPGA's are very capable and there is a lot of different subsystems to learn about.  It is a multi pass process where you will learn deeper and deeper as time goes on.  It really takes a few years to become a proficient FPGA designer to understand everything from the HDL to how to layout and power the part. 

    Digilent has some nice Spartan-6 boards and even some older S3 boards that may be a bit easier to learn on.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
  • Former Member
    0 Former Member over 11 years ago

    Thank you for the replies, Gary and jbattles. Kindly answer a few more questions.

    What kind of real world projects are there that can be implemented on FPGA that can't be done on an ARM board (like the TIVA C series launchpad)?
    I understand that in fpga, you could basically design your own cpu but I want to know how that could could be useful?
    Basically, what is the motivation behind spending so much time on learning fpga?

    Also to get started with the Nexys4 i need to know VHDL (I know a little bit of it) but what more do i need to learn to use the Zedboard?

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
  • Former Member
    0 Former Member over 11 years ago in reply to Former Member

    The main power of an FPGA comes from it's flexibility.  You can completely control and create any kind of interfaces you need within the electrical signal limits of the I/O pins.  The FPGA can also process data in the hardware instead of having the software do it all which allows for precise timing control.  Most uCs (microcontrollers) have limits on the speed and number of interface buses.  They usually also limit which peripheral can be mapped to which I/O pins.  The FPGA really shines when it comes to high speed non-standard interfaces.  I find FPGA's usually necessary for interfacing to ADC chips when the speed goes above 100 Ksps or if the ADC has a weird interface.  So FPGA's are great for DAQ systems.  They also let you do things like time the data with a GPS PPS signal.  The other place they work well is if you want more than 2-3 of a particular interface.  You can usually implement as many interfaces as you have pins for.  Need 50 serial ports, an FPGA with 100 i/o pins can likely do it.  FPGA's also give you much better control of signal timing, especially if you are running a general purpose OS like Linux or Android.  In the FPGA, you can control pin timing to a system clock speed.  On a uC system you're lucky if you can get it down to 100 us using s/w to control a GPIO (known as bit banging) 

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
  • Former Member
    0 Former Member over 11 years ago

    To gain full use of a zedboard you'll need to learn a few things, but some of those these depend on how you are going to use it and what parts of the design you'll be responsible for.  The big question is whether or not you are going to put an OS on it or or just run a single binary application for the project.
    --
    Case I: single binary application
    You have two tool flow paths you can use 1) Vivado and XSDK or  2) ISE and XSDK.
    Vivado or ISE are used to configure the microprocess system and the FPGA core.  ISE is really a couple of tools: PlanAhead and XPS.  In Xilinx there's also the lower level command-line tools that are actually the backend's to the GUI tools. 
    XSDK is an Eclipse based C programming IDE to write the application.
    --
    Case II: embedded OS to run application
    Again you also have two common OS options here.  One is FreeRTOS and the other is Linux.  FreeRTOS is a free real-time OS than has support for thing like LWIP (TCP/IP library) used if you want your app. to communicate over Ethernet using normal POSIX type library calls.  FreeRTOS apps can be developed in the XSDK environment.
    --
    Linux requires additional skills, but can make building applications much easier as the apps. can be written as you would any Linux application. The skills you would need to talk to your own custom FPGA hardware are:
    - Embedded Linux
    - U-boot  OS bootloader
    - Linux Device Tree
    - Linux Device Drivers
    - Linux Kernel configuration and building
    - use space memory mapped I/O
    - Basic linux commands as you will be doing a lot of work in a terminal window so make you you know things like: cat, vi, ls, > | (redirect operators), cd, etc.
    --------------
    For any of these paths you will also need proficiency in:
    - VHDL or Verilog for custom logic
    - C programming, in particular pointers, data structures, interrupts, and low level bit maninpulation operations,
    - Interfaces: SPI, serial, IIC, etc.
    - Basic electronics: logic devices CMOS, TTL signal levels, voltage, current, power
    - Basic debugging skills for both hardware and software

    Also make sure you go through the tutorials on this site.  They'll give you some great insight into the tool flow.  I would also go to Xilinx's youtube channel and go through a lot of those as well. 

    They'll also be a ton of reading.  Become familiar with Xilinx's documentation system.  There are literally dozens of documents related to the Zynq part and the s/w tools and many of them are several hundred pages long.  It will take some effort to learn how to find what you are looking for and to try and keep it all striaght.   It's hard for one person to be proficient in how to build a board with the part, how to design and test the FPGA code, how to write the software, and how to deal with an embedded OS on it.  Usually it's a team effort. If you enjoy learning, it's quite an adventure.

    Hope that helps,

    John

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
  • Former Member
    0 Former Member over 11 years ago

    If you plan to use the ZedBoard I recommend you to follow my blog "Zynq Design from Scratch". It will take you through the whole process of  setting up hardware and software.
    http://www.zynqfromscratch.com

    Sven

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
element14 Community

element14 is the first online community specifically for engineers. Connect with your peers and get expert answers to your questions.

  • Members
  • Learn
  • Technologies
  • Challenges & Projects
  • Products
  • Store
  • About Us
  • Feedback & Support
  • FAQs
  • Terms of Use
  • Privacy Policy
  • Legal and Copyright Notices
  • Sitemap
  • Cookies

An Avnet Company © 2026 Premier Farnell Limited. All Rights Reserved.

Premier Farnell Ltd, registered in England and Wales (no 00876412), registered office: Farnell House, Forge Lane, Leeds LS12 2NE.

ICP 备案号 10220084.

Follow element14

  • X
  • Facebook
  • linkedin
  • YouTube