My daydream - FPGA/ARM platform - General Discussion - Netduino Forums
   
Netduino home hardware projects downloads community

Jump to content


The Netduino forums have been replaced by new forums at community.wildernesslabs.co. This site has been preserved for archival purposes only and the ability to make new accounts or posts has been turned off.
Photo

My daydream - FPGA/ARM platform


  • Please log in to reply
25 replies to this topic

#1 hanzibal

hanzibal

    Advanced Member

  • Members
  • PipPipPip
  • 1287 posts
  • LocationSweden

Posted 20 May 2013 - 09:38 PM

Here's my daydream for a development platform
 

Think of how  programmable logic like FPGA and CPLD devices work and how they let you implement pretty much any hardware in a single device, basically an ASIC. Imagine different hardware modules available from a palette of  ready made drop-in software modules through some easy to use (semi-)graphical IDE. Also imagine using C# (or VB.NET) as the glue between the modules to orchestrate them - instead of VHDL (!!)

 

A development platform like that would virtually let you implement your whole breadboard in a single device!

 

There would be much less need for external parts like shift registers, 74LSxxx (and, or, xor, etc), transistors, IO-expanders, LCD backpacks or even motor drivers and audio devices...well almost anyway, you'd still have to add a LED or a switch here and there  :lol: 

 

Open Source Hardware would get a truly profound meaning. We could be writing and sharing OSH modules in an on-line in-project repository, simply download what you need and drop it into your project. We'd be talking breadboard virtualization and the ability to jump between any old breadboarded project simply by uploading a piece of firmware to the device. To me, this too would be a time machine!

 

Would you like a platform like that or is it just me?   :)



#2 cutlass

cutlass

    Advanced Member

  • Members
  • PipPipPip
  • 78 posts
  • LocationNew England. :)

Posted 20 May 2013 - 11:59 PM

Anyway, here's my daydream of what it could be
 

Think of how  programmable logic like FPGA and CPLD devices work and how they let you implement pretty much any hardware in a single device, basically an ASIC. Imagine different hardware modules available from a palette of  ready made drop-in software modules through some easy to use (semi-)graphical IDE. Also imagine using C# (or VB.NET) as the glue between the modules to orchestrate them - instead of VHDL (!!)

 

A development platform like that would virtually let you implement your whole breadboard in a single device!

 

There would be much less need for external parts like shift registers, 74LSxxx (and, or, xor, etc), transistors, IO-expanders, LCD backpacks or even motor drivers and audio devices...well almost anyway, you'd still have to add a LED or a switch here and there  :lol: 

Would you like a platform like that or is it just me?   :)

 

Are you talking about the Xilinx Zynq?

 

http://www.xilinx.co.../zynq-7000.html

 

Posted Image

Posted Image

Posted Image

 

 

The Xilinx Zynq is a multi-core ARM CPU that has a Xilinx FPGA fabric attached to it.  It's very different from the previous Xilinx embedded CPU in FPGA solutions, and what the other offer.  Those are FPGAs with embedded CPUs. 

For the Xilinx Zynq, it can be used as a stand-alone multi-core ARM processor, and never ever worry about, or do anything about, the FPGA core.  The CPU is "king.  Before, the CPU/software had to go through the hardware tools.

 

Also, Xilinx has the 32-bit Microblaze (a nice CPU) embedded processor option.  It's a "softcore" - it's made up out of the FPGA gates. IIRC, it's possible to have up to eight on an FPGA (depending on the FPGA).  The Microblaze has many compile options, cache, FP, etc.  It costs ~$3K for the software.

 

For free, Xilinx also has the picoblaze 8-bit CPU - 64K max memory, no cache.

 

I've been doing Microblaze designs for ~7 years.  I did one picoblaze many years ago.

 

 

For Xilinx MicroBlaze:

http://www.xilinx.co.../microblaze.htm

 

MicroBlaze Soft Processor Core
MicroBlaze™ is the industry-leader in FPGA-based soft processors, with advanced architecture options like AXI or PLB interface, Memory Management Unit (MMU), instruction and data-side cache, configurable pipeline depth, Floating-Point unit (FPU), and much more. MicroBlaze is a 32-bit RISC Harvard architecture soft processor core that is included free with both Vivado Design Edition and IDS Embedded Edition. Highly flexible architecture, plus a rich instruction set optimized for embedded applications, delivers the exact processing system you need at the lowest system cost possible.

 

High-Performance, Small Footprint, or something In-between?
MicroBlaze contains over 70 user-configurable options, enabling virtually any processor use case from a very small footprint state machine or microcontroller to a high performance compute-intensive micrprocessor-based system running Linux, operating in either 3-stage pipeline mode to optimize size, or 5-stage pipeline mode to optimize speed delivering faster DMIPs performance than any other FPGA-based soft-processing solution.

 

 

For performance, FYI:

(BTW, you can still add Microblaze processors, in addition to the dedicated-silicon ARM CPUs in the Zynq :))

Posted Image



#3 hanzibal

hanzibal

    Advanced Member

  • Members
  • PipPipPip
  • 1287 posts
  • LocationSweden

Posted 21 May 2013 - 02:28 AM

Sort of, I was thinking of something like that but more in a general sense than a specific device or vendor. I recently ordered a Cypress PSoC 4 demo board and a PSoC 1 dev kit to explore that magic tech:
http://www.cypress.c...9&source=header



#4 cutlass

cutlass

    Advanced Member

  • Members
  • PipPipPip
  • 78 posts
  • LocationNew England. :)

Posted 21 May 2013 - 03:02 AM

Yes, I was thinking of something like that but more in a general scence than a specific device or vendor. I recently ordered a Cypress PSoC 4 demo board and a PSoC 1 dev kit to explore that magic tech:
http://www.cypress.c...9&source=header

 

Wow, another PSOC user. :)

About 6 years ago, I used a PSOC 1 for a low cost, high-volume controls application.

 

IMHO, the PSOC1 is very slow and has a small code space. Especially if you have to do any FP.

And, ?ARM? bought Hi-tech (they make nice compilers).  The other PSOC compiler is slower and produced bigger code sizes.  I have the Hi-tech compiler for the PSOC1 on 3 machines (max allowed).  Hi-tech stopped offering licenses after they were bought out.

 

Also, back then, the drivers that Cypress had for things like the I2C did almost no error checking (to save on code space).  So, that meant going in, and modifying their semi-cryptic (because of space and speed reasons) assembler code.

 

Still, if you're looking for a very low-cost embedded solution, the PSOC line is nice. :)

For the project that I did, the board/parts/assembly/etc had to be under $10 (the desired price target was much less).  Back then, I came in between the max and desired target cost range.

 

For what the product had to do, the PSOC1 was nice and worked great.  For the all options that we would have liked, the PSOC1 was too slow and didn't offer enough code space. Still, I was able to cram a lot of optional features for the product in that "small slow" PSOC1. :)



#5 hanzibal

hanzibal

    Advanced Member

  • Members
  • PipPipPip
  • 1287 posts
  • LocationSweden

Posted 21 May 2013 - 07:25 AM

cutlass, you obviously know tons about this stuff and I'd love to discuss it further.

 

I find this tech very exciting and I have to look into the info you supplied.



#6 hanzibal

hanzibal

    Advanced Member

  • Members
  • PipPipPip
  • 1287 posts
  • LocationSweden

Posted 21 May 2013 - 12:17 PM

[color=rgb(40,40,40);font-family:helvetica, arial, sans-serif;]@cutlass: Now that SL released their smartwatch, shall we join in realizing my daydream? [/color] :rolleyes: 

 

I've actually been working on a similar thing on and off for some time now. It has a lot of potential but the road is still long.



#7 cutlass

cutlass

    Advanced Member

  • Members
  • PipPipPip
  • 78 posts
  • LocationNew England. :)

Posted 21 May 2013 - 10:21 PM

I have two of the TI smart watches.  I never did anything with them. :)

 

I've done a lot of FPGA and microprocessor stuff, because that's what I do. :)  I'm mainly a hardware engineer, but I also do software.  I even do Android apps.  But, sorry, I don't drink the evil Apple kool-aid at all.

 

I'm similar to the mechanical engineers that design electrical motors, starters, alternators, etc.  For them, the are primarily mechanical, but they also have to be very proficient in electrical.

 

For the past ~10+ years, I've been doing a lot of "Control" stuff.  That type of stuff leads to FPGAs, DAC, ADCs, processors, "firmware", and often some simple GUI to debug/communicate/set-values.  Sometimes it's max performance at all costs, sometimes very low power, sometimes very low cost, sometimes aerospace, etc.

 

Yea, I could make a lot more money going into pure software, especially doing apps.  But, if I can make a decent living doing what I LOVE to do, why would I change? :)

 

I don't know about Sweden, but in the US, I'd say engineers leave at a rate of ~~30% every ~3-5 years.  Many/most leave because they don't like, or they hate, what they do.  I've been fortunate in the way the industry has moved since I graduated.  When I graduated, doing stuff with SSI (smal scal integration) through-hole chips (like registers, flips flops, etc) was the typical way of doing hardware designs.  Now, it's writing Verilog, VHDL, etc for FPGAs, ASICs.  So, I see doing hardware and software as being similar now. :)



#8 ziggurat29

ziggurat29

    Advanced Member

  • Members
  • PipPipPip
  • 244 posts

Posted 22 May 2013 - 12:00 AM

[color=rgb(40,40,40);font-family:helvetica, arial, sans-serif;]... in realizing my daydream? [/color] :rolleyes:

your 'flexduino' or whatever you want to call it is a brilliant idea and I think you should pursue it.  anecdotally, while I do love working with integrated microcontrollers, my least favorite task in the whole wide world is working up the pin budget for the peripherals.  wheres my karnaugh map for reducing that truth table?!  so ostensibly you obviate that eternal tradeoff calculation.

 

.. doing stuff with SSI (smal scal integration) through-hole chips...

So, I see doing hardware and software as being similar now. :)

an oldie!  I left hardware decades ago because I was initially surprised folks got paid to do software only -- isn't that just what you do to make the hardware run?  software is still different though -- if you screw up software it usually (usually) doesn't catch fire.  And I think that's a pity....



#9 hanzibal

hanzibal

    Advanced Member

  • Members
  • PipPipPip
  • 1287 posts
  • LocationSweden

Posted 22 May 2013 - 01:16 AM

I have a TI watch laying in its box somewhere inside a bigger box. I'm a softie by profession but always loved the interaction with hardware. Trying to make complicated hardware look and feel simple is a really fun challange. A problem I have is that whenever I get an idea (and I constantly do), I pursue it with great frenzy but when I get to the point of actually having etsablished a proof of concept, I sometimes loose interest since I can pretty much imagine the rest. With certain things I don't see all that big a difference between stuff in my imagination and that of the real world. Don't get me wrong now, I'm not hearing voices or anything :-) Work is a game of wrestling with matter, trying to force it into the structures I've imagined, sometimes I win and sometimes matter does. When it comes to this dream project of mine, I don't have a proof of concept yet but given recent info, I'm starting to imagining it :-)

 

I guess I'm saying that I know my self only too well, I'm quite good at getting passed mid way. But then of course, there are others who are very good at finishing and that's probably why they invented teams.



#10 Bi Qin

Bi Qin

    Member

  • Members
  • PipPip
  • 23 posts

Posted 22 May 2013 - 05:51 AM

Indeed,everytime I read the VHDL code,I feels like I'm reading a netlist of a PCB....



#11 neslekkim

neslekkim

    Advanced Member

  • Members
  • PipPipPip
  • 350 posts
  • LocationOslo, Norway

Posted 22 May 2013 - 07:05 AM

Sort of, I was thinking of something like that but more in a general sense than a specific device or vendor. I recently ordered a Cypress PSoC 4 demo board and a PSoC 1 dev kit to explore that magic tech:
http://www.cypress.c...9&source=header

Did you find anyone with decent shipping?, If I order from cypress, it's $35 for an $25 device.. 


--
Asbjørn


#12 hanzibal

hanzibal

    Advanced Member

  • Members
  • PipPipPip
  • 1287 posts
  • LocationSweden

Posted 22 May 2013 - 07:06 AM

Indeed,everytime I read the VHDL code,I feels like I'm reading a netlist of a PCB....

 

Try opening an Eagle schematics file in Notepad. Practically the same thing.

 

Maybe I just made a great discovery: Simply rename from .sch to .vhdl and voilá!

 

:D

 



#13 hanzibal

hanzibal

    Advanced Member

  • Members
  • PipPipPip
  • 1287 posts
  • LocationSweden

Posted 22 May 2013 - 07:08 AM

Did you find anyone with decent shipping?, If I order from cypress, it's $35 for an $25 device.. 

Not really but I ordered some other stuff too and broke the free shipping limit at Mouser.



#14 neslekkim

neslekkim

    Advanced Member

  • Members
  • PipPipPip
  • 350 posts
  • LocationOslo, Norway

Posted 22 May 2013 - 07:24 AM

aha, forgot to check mouser, only tried the cypress web. I can easily fill the limit on mouser yes ;)


--
Asbjørn


#15 hanzibal

hanzibal

    Advanced Member

  • Members
  • PipPipPip
  • 1287 posts
  • LocationSweden

Posted 15 June 2013 - 08:22 PM

Hey neslekkim, did you get a PSoC and have you tried it yet?

#16 neslekkim

neslekkim

    Advanced Member

  • Members
  • PipPipPip
  • 350 posts
  • LocationOslo, Norway

Posted 15 June 2013 - 09:54 PM

No, dropped it so far, got myself the fpga mojo card, and today I got the led shield addon.
To bad that this doesnt seem to be continued http://www.arachnidlabs.com/loki/

--
Asbjørn


#17 hanzibal

hanzibal

    Advanced Member

  • Members
  • PipPipPip
  • 1287 posts
  • LocationSweden

Posted 16 June 2013 - 01:54 AM

Seems like a nice board but it's quite understandable that the guy shelved it given the Cypress's new PSoC 4-board which has a lot more features on-board. You just can't compete with that kind of pricing.

#18 hanzibal

hanzibal

    Advanced Member

  • Members
  • PipPipPip
  • 1287 posts
  • LocationSweden

Posted 24 February 2014 - 12:30 AM

After this I actually started working on something vaguely similar to my "day dream" but then (as I predicted), put it on hold for an undefined amount of time in favor of other more urgent or interesting projects. I got as far as a simplistic simulator of digital electronics with a built-in on-line repository and the idea (dream) was to somehow being able to render the "hardware models" on an actual cpld or fpga board. Recently however, I spent some time playing around with a PSoC 1 eval kit from Cypress that I had laying around unused for a year. Naturally, it turned out the guys at Cypress had already accomplished more or less what I was thinking of maybe doing - and it has been around for quite some time too! Basically, the PSoC designer software (graphical IDE) lets you drag-drop blocks implementing stuff like op amps, filters, PGAs, comparators, timers, PWMs, DACs, ADCs, etc onto a canvas using a GUI. You interconnect data lines of a matrix using muxes and you can have the integrated 24Mhz micro controller interact with your blocks. I found it all totally awsome and ended up having implemented a stereo headphone amplifier with built-in NEC IR decoder (volume, balance and a few other features) with surpricingly good sound quality in a single DIP-8 package - my very first ASIC for crying out loud :-) Attached File  image.jpg   146.22KB   0 downloads So, if you need a specialized chip to help your Netduino in performing some sub task, you can use PSoC to create a device that does the job and then just snap it down your breadboard alongside your Netduino. Such sub tasks could be small but timing critial work or some special analogue processing. You'd then transfer the results to your Netduino and have it readily available for conveniant processing in .NET C# (or VB) - the latter of which PSoC does not offer. PSoC can act as Netduino's little helper!

#19 jrlyman3

jrlyman3

    Advanced Member

  • Members
  • PipPipPip
  • 67 posts
  • LocationNorth St Paul. MN

Posted 24 February 2014 - 02:57 AM

Wow, this does look pretty cool.  I'm a lot like you and I'm tempted to drop what I'm doing and get one of these eval kits ... but I'm trying really hard not to start any more projects until I get some finished and written up ... I guess I'll just save this link and hope to have time later this year :) .



#20 hanzibal

hanzibal

    Advanced Member

  • Members
  • PipPipPip
  • 1287 posts
  • LocationSweden

Posted 24 February 2014 - 06:55 AM

Don't let me tempt and lead you a stray now, keep your eyes on the road and your hands on the wheel there chief! Ha, ha - I got a special folder on my desktop saying "cool stuff" and a similar one in my email plus tons of little things in anti static bags (many of which are still unopened). I'd say I got gizmos, chips and kits to span a few life times of tinkering but I don't mind, most of the stuff was really cheap and dreaming of what to do with them is free :-)




0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users

home    hardware    projects    downloads    community    where to buy    contact Copyright © 2016 Wilderness Labs Inc.  |  Legal   |   CC BY-SA
This webpage is licensed under a Creative Commons Attribution-ShareAlike License.