Programmable logic workshop interest?

Would there be any interesting in running a short-course / workshops in either:

A - Uses, basics, not so basics for Cypress PSOC (programmable system on a chip).

Background
PSOC is a microcontroller core (number of different types available, PSOC4 is ARM CM0, PSOC5 is ARM CM3), surrounded with some typical hard peripherals and reconfigurable analog and digital fabric.  When used as a solution to the right problem, they can significantly reduce the amount of external components, reduce board space and reduce cost.  They're not for everything, but they're a good device to have in the armoury to solve problems. Similar cost and form factor to normal microcontrollers.

Target Audience
Would expect participants to be comfortable working with some other microcontroller and coding in C. Preferably comfortable with the configuration of peripherals without library support (i.e. working off the datasheet.) Probably 3 - 10 people.

Hardware
For the intro it's hard to go past the PSOC4 pioneer kit at $25USD + a few passives.  Will need a laptop each.  Dev environment is free.

B - Intro to FPGAs and VHDL for synthesis

Background
FPGAs are a programmable fabric of digital logic blocks and interconnects that can be used for a variety of digital designs. Primarily, used either for prototyping digital designs prior to having ASICs fab'ed, or in our case, used where a processor can't meet a application specific digital requirement (e.g. pipeline processing speed, application specific serial interface, emulating an out of production part, etc.) Generally FPGA designs are synthesised from a subset of VHDL or Verilog Hardware Description Languages.  Personally I know VHDL, as that's what was taught when I was an undergrad and used ever since, and it still tends to be what's taught in Oz uni's.  However both languages are widely used, and the concepts are more important than the language.

Target Audience
Would expect participants to have some knowledge of digital and programing concepts. Also a reasonable amount of determination, whilst Arduino is at one end of the spectrum in terms of reward/effort ratio with so much able to be done by just using someone else's library and half a dozen lines of code, FPGA's are at the opposite end of that, there will be a reasonable amount of work.  However you can solve problems there's no other way of solving. Probably 3 - 6 people.

Hardware
There's a few choices here, with Xilinx and Altera being the major players. The Altera DE0 Nano board is quite nice and has an education program we may be able to tap into if the Australian rep is feeling nice.  However, I'm a big fan of the Lattice XO2 boards.  The Lattice XO2 parts are nice for the sort of projects I've worked on.  They have internal flash, come in QFP packages that can be easily hand soldered, single 3.3V supply, readily available, reasonably priced and the tool chain is free for commercial use. An XO2 board is about $30USD.

If you’re interested let me know on this thread or by PM. Either topic will take me a few weeks to pull together, probably a couple more for the FPGA.

2 Likes

Both Sound interesting, probably a bit beyond my skill level at the moment.
Done a little bit with Arduino, and also higher level programming languages.

At the moment fiddling around with a 555 chip and passive components trying to get my head around basic electronics again.

I am interested in both. I do have an Altera DE0 Nano board which is waiting to be unwrapped… It is a bit more expensive than the other options though.

There is a nice short writeup here:
http://www.edn.com/electronics-products/electronic-product-reviews/fpga-boards-under--100--hands-on-reviews-collection/4437781/FPGA-boards-under--100--Altera-Terasic-DE0-Nano

@eyal which would be more useful to you of the two workshop ideas?

The problem with the DE0 Nano boards, other than their bit higher cost, is they’re largely setup for learning about Altera’s softcore processor. Things like the DRAM are a PITA unless you actually plan on using it, as it straight up chews 30 odd pins and determines the rail voltage of any connected IO banks. I’m a fan of using breakout style boards that give you the max IO available.

@batau have you done any playing around with the ATmega underneath the Arduino façade? Just understanding how the peripherals are setup and used would be enough for the PSOC workshop idea.

@Harvs not yet

I am happy to start with something simpler, and the (little) cost of hardware for the class is acceptable.

While I am originally interested in FPGA, I did not look into PSOC much and would enjoy playing with it too.

We should do both :-)

Yeah we probably should do both. In time… It’ll take a bit of effort to pull together a few sessions of coherent material, more so for the FPGA stuff.

Anyway, see if anyone else is interested, otherwise there’s no point in doing it “formally”.

Yes, I am interested in the PSOC4. I have ordered a kit.
The FPGA is less interesting to me, not because of the technology, but because I cannot see an application where I would use it, and for that reason I would not put the work into learning about it that would justify it.

Which kit did you get? The Pioneer kit?

Are you more interested in the analog, digital or both?

The pioneer kit
http://au.element14.com/cypress-semiconductor/cy8ckit-042/dev-kit-psoc4-pioneer-arduino/dp/2311054
I plan to use it like an arduino, but with configurable analog inputs.
I also like the low current running with microamp sleep mode.
I would like the workshop to eventuate, but I am not that concerned if it doesn’t.
Jack.
-----Original Message-----

I like the idea of learning a bit more “structured” FPGA dev, rather than the “teach yourself” dabbling I’ve been doing.

FWIW you can get bare-bones Altera MAX-II CPLD boards plus a USB programmer for about $20 delivered via eBay. Or about $30 for a Cyclone-II FPGA plus programmer. These seem to be about the cheapest things you can get as far as I can see.

A bit more expensive but this looks interesting http://www.seeedstudio.com/depot/Papilio-DUO2MB-p-2329.html?cPath=6_10

I have gen 1 and 2 Papilio boards and have been happy with them.

Let’s have a crack at the PSOC, it’s probably more applicable to a wider variety of projects.

However due to low interest, how about we just do this informally. I’ll put a few things together, but we can concentrate on specific area’s depending on what people want.

First workshop will be an intro to PSOC, what makes it different to a typical uC, and some no-s#@t examples of what you can actually do with it. Then the practical side, we can go through a “blinky” style app in a few different ways (i.e. software, software with arm systick timer, timer blocks, etc.)

@eyal and @Peeknpoke
Would next Wed 18 Mar, 1830 be ok?

I am good for next Wed.

How about you nominate a board so that we can order (and receive) it for this session? I think element14 are rather quick to deliver.

Sure, the pioneer kit is still the best available for starting with PSOC.
http://au.element14.com/cypress-semiconductor/cy8ckit-042/dev-kit-psoc4-pioneer-arduino/dp/2311054

For those unaware, element14 give free delivery for orders over $45 (I think.) So you may want to combine it with something else.

I am ordering. Anyone want to join the order to save on shipping?

Also, I could order a suitable FPGA part, which one did you (@Harvs) have in mind? Or will the DE0 do?

I wouldn’t be inclined to buy anything more than the DE0, it’s a pretty nice board that would be fine for anything that we do.

OK. Jack.
-----Original Message-----

+1 if you’ve got the space.

Cheers,
Steve