Home    Bloggers    Messages    Webinars    Resources   
Tw  |  Fb  |  In  |  Rss
Warren Miller

What's Next: The Future of FPGAs/MCUs – What Are Today's Challenges?

Warren Miller
Page 1 / 2 Next >
Page 1 / 3   >   >>
JezmoSSL
JezmoSSL
7/21/2012 4:10:10 PM
User Rank
Blogger
Re: Tool integration and dis-integration
I think what really needs to be addressed is the fact that having looked at the zinq for a project we decided that you would have to be very brave to say lets port all our code to the hardcore and run 'some random rtos' and use it in our next project simply because the tool chain isnt robust enough, and Altera are doing exactly the same thing with their latest products, it feels a 'lot' safer going the stand alone processor/ FPGA route until the technology is proven.Given that xilinx tools are not what you might call stable and are routinely a pain in the arse to use we probably wont be going there for a while yet.

50%
50%
Max Maxfield
Max Maxfield
7/20/2012 3:52:58 PM
User Rank
Blogger
Re: Tool integration and dis-integration
@rfindley: Thanks for rooting this info out and posting it here -- it really helps having this sort of information to hand

50%
50%
Karl
Karl
7/20/2012 10:10:09 AM
User Rank
Guru
Re: AXI Busses
@Warren:  Using the FPGA to process input "on the fly" takes advantage of the parallelism helps reduce congestion and decrease response time at the system level.

Conceptually it seems that a soft core would be useful with a custom DSP dataflow.  The current emphasis is on streaming raw data to memory then sending it back out to GPUs.  Your example is much better in general, but image processing uses data that is already in memory nd is quite different, so there will be more discussion.

Meanwhile I will be waiting to see if things evolve to the point where my idea for a paramaterized programmable control block is worthwhile.  Maybe PicoBlaze is already established and good enough.  Then there's Jacek's micro.

50%
50%
rfindley
rfindley
7/20/2012 9:55:42 AM
User Rank
Blogger
Re: Tool integration and dis-integration
The AMBA / AXI4 specifications are at the following link (click the "Specifications" tab):

http://www.arm.com/products/system-ip/amba/amba-open-specifications.php

The Xilinx-specific info is here:

http://www.xilinx.com/ipcenter/axi4.htm

The Xilinx AXI Reference Guide is probably the best place to start, since it gives a high-level overview of the AXI4 bus.

50%
50%
Karl
Karl
7/20/2012 9:41:50 AM
User Rank
Guru
Re: Tool integration and dis-integration
@rfindley, Yes, that diagram answers a lot of questions and helps understand the system.  Before it was not clear if only the green and orange areas existed.

The blue/gray area includes the things that I had referred to as a library, but they are hard which is much better.  Not only is there a hard ARM core, but a pretty rich basic MCU available.

The hard memory controllers and DMA are plusses.

Now, where can I find documentation for the AXI buss?

Thanks again!

50%
50%
Max Maxfield
Max Maxfield
7/20/2012 9:11:09 AM
User Rank
Blogger
Re: AXI Busses
@Warren: This all makes sense -- I'm not as aware of the system level stuff as I should be -- I think there's a tool that allows you to define register maps and stuff (in your H/W accelerators) to make things easier also -- I need to research this a bit more...

50%
50%
Warren Miller
Warren Miller
7/19/2012 10:20:59 PM
User Rank
Blogger
Re: AXI Busses
Max-

I believe this is correct. The trick will be to use the peripheral bus to communicate to 'intelligent' peripherals instead of the traditional peripherals in the standard MCU library. For example, you could use the AXI bus to initialize a peripheral with a sequence of commands that could be executed within the FPGA fabric. Soemthing like- start the AtoD conversion, normalize the result, check for out of range result, if out of range interrupt the MCU, if in range use DMA to store result to memory, after 1K successful captures are stored in memory run a simple DSP routine to filer out low frequencies, store filtered results back to memory via DMA and interrupt the processor. See how this approach is very different from having the MCU do all the work?

50%
50%
rfindley
rfindley
7/19/2012 5:11:35 PM
User Rank
Blogger
Re: Tool integration and dis-integration
I think the following graphic demonstrates it best:

http://www.rtcmagazine.com/files/images/2125/rtc1104ts_xilin1_large.jpg

The orange-colored section is the FPGA fabric.  The rest is a standalone ARM with a fairly standard set of hard peripherals that have direct access to external pins via an MCU-controlled I/O Mux.

The only difference from a solo MCU is that the FPGA fabric has access (if you so desire) to a number of MCU subsystems that it would never have access to if the FPGA were separate.

50%
50%
rfindley
rfindley
7/19/2012 11:58:23 AM
User Rank
Blogger
Re: Tool integration and dis-integration
@Karl, you are correct. I glanced at a product brief... it doesn't support extending the instruction set.  Accelerators are accomplished via direct access to on-chip memory of the processor, shared access to the external DDR memory, or direct processor-to-logic access via the AXI bus.

Re: reconfiguration....  At the aforementioned meet-up, I asked them a lot of questions about partial configuration.  It has the same partial-configuration features as the rest of the 7-series fabric, including all the associated challenges.

50%
50%
Karl
Karl
7/19/2012 11:22:12 AM
User Rank
Guru
Re: Tool integration and dis-integration
@rfindley:  I don't know if ARM architecture has a code point for a custom, but can imagine that an assembly level code could treat it as a psuedo MMIO.  Maybe it is an accelerator.

Do you think that using the processor to setup the fabric may be a step toward re-configurable computing? Or partial reconfig of the fabric?

50%
50%
Page 1 / 3   >   >>
More Blogs from Warren Miller
When traversing serial links with optics or backplanes, high-speed signals are degraded by impairments in the link, such as insertion loss, reflections, crosstalk, and optical dispersion.
Warren has finally started to write some HDL code to implement his chess-playing FPGA, but he's not a professional coder, so he needs our help and advice.
What might we see in new Ultra Low Density (ULD) CPLD families three-to-five years down the road? Are there new technologies or programmable structures that will find their way into ULD devices?
Following our evaluations, the resources required by a chess-playing FPGA implementation would seem reasonable, even for a small or midsized device.
A number of challenges are faced by the users and manufacturers of ultra-low-density devices (ULDs).
flash poll
follow us on twitter
follow Xilinx on twitter
like us on facebook
like Xilinx on facebook
All Programmable Planet     About Us     Contact Us     Help     Register     Twitter     Facebook     RSS