LPC2106 and FPGA

Started by leon_heller April 5, 2004
Some time ago I mentioned that I was thinking of producing a PCB with
an LPC2106 and FPGA on it. I was intending to use a Xilinx Spartan-3,
but they are very difficult to get hold of, so I've decided to use
the much easier to find Altera Cyclone EP1C3T100. I've ordered a few
and will get them tomorrow.

The Cyclone chip shall be configured via the LPC2106, which will have
a flash device for the configuration data interfaced to it. Most of
the LPC2106 I/Os will be connected to the FPGA, with the other FPGA
pins connected to headers for a daughter board. A socket for a DIL
clock module will be provided with the clock output connected to a
PLL input on the FPGA. The PCB will have four layers.

If anyone is interested in this project and would like to discuss it,
please get in touch.

Leon



An Engineer's Guide to the LPC2100 Series

I would be interested by the algorithm or the source code for initializing
the FPGA, because I'm working too on project in which we have a LPC2106 and
a Cyclone chip.
Do think it's possible to do it with SPI port ?

Benjamin PRADAYROL -----Message d'origine-----
De : leon_heller [mailto:]
Envoy: lundi 5 avril 2004 15:37
:
Objet : [lpc2000] LPC2106 and FPGA

Some time ago I mentioned that I was thinking of producing a PCB with an
LPC2106 and FPGA on it. I was intending to use a Xilinx Spartan-3, but they
are very difficult to get hold of, so I've decided to use the much easier to
find Altera Cyclone EP1C3T100. I've ordered a few and will get them
tomorrow.

The Cyclone chip shall be configured via the LPC2106, which will have a
flash device for the configuration data interfaced to it. Most of the
LPC2106 I/Os will be connected to the FPGA, with the other FPGA pins
connected to headers for a daughter board. A socket for a DIL clock module
will be provided with the clock output connected to a PLL input on the FPGA.
The PCB will have four layers.

If anyone is interested in this project and would like to discuss it, please
get in touch.

Leon
------------------------ Yahoo! Groups Sponsor ---------------------~--> Buy
Ink Cartridges or Refill Kits for your HP, Epson, Canon or Lexmark Printer
at MyInks.com. Free s/h on orders $50 or more to the US & Canada.
http://www.c1tracking.com/l.asp?cidU11
http://us.click.yahoo.com/mOAaAA/3exGAA/qnsNAA/dN_tlB/TM
---------------------------------~- Yahoo! Groups Links




----- Original Message -----
From: "Benjamin PRADAYROL" <>
To: <>
Sent: Tuesday, April 06, 2004 7:36 AM
Subject: RE: [lpc2000] LPC2106 and FPGA I would be interested by the algorithm or the source code for initializing
the FPGA, because I'm working too on project in which we have a LPC2106 and
a Cyclone chip.
Do think it's possible to do it with SPI port ?

It might be but I was intending to bit-bang the configuration. I did this a
few years ago to configure an earlier Altera device with an ADI DSP. As I
recall, I had some problems getting the code to work properly but it wasn't
really all that difficult. I don't have that code any more, unfortunately.
My previous employer should still have it, and I might be able to get it
from one of my friends there. They've now dispensed with the FPGA, it was
primarily to get over a bug in their earlier ASIC.

Leon



One drawback to this is the size of sprom the ( and the size of the
FPGA ) FPGA needs for configuration. If its a larger FPGA and you are
going to emulate the load and include it in your firmware in the cpu,
it may take a big bite out of your code space even if compressed. I'd
lay pads for an sprom as an option too. Loading a Xilinx is well
documented in their appnotes. -Lee --- In , "Benjamin PRADAYROL"
<benjamin.pradayrol@f...> wrote:
> I would be interested by the algorithm or the source code for
initializing
> the FPGA, because I'm working too on project in which we have a
LPC2106 and
> a Cyclone chip.
> Do think it's possible to do it with SPI port ?
>
> Benjamin PRADAYROL > -----Message d'origine-----
> De : leon_heller [mailto:leon_heller@h...]
> Envoy: lundi 5 avril 2004 15:37
> :
> Objet : [lpc2000] LPC2106 and FPGA
>
> Some time ago I mentioned that I was thinking of producing a PCB
with an
> LPC2106 and FPGA on it. I was intending to use a Xilinx Spartan-3,
but they
> are very difficult to get hold of, so I've decided to use the much
easier to
> find Altera Cyclone EP1C3T100. I've ordered a few and will get them
> tomorrow.
>
> The Cyclone chip shall be configured via the LPC2106, which will
have a
> flash device for the configuration data interfaced to it. Most of
the
> LPC2106 I/Os will be connected to the FPGA, with the other FPGA pins
> connected to headers for a daughter board. A socket for a DIL clock
module
> will be provided with the clock output connected to a PLL input on
the FPGA.
> The PCB will have four layers.
>
> If anyone is interested in this project and would like to discuss
it, please
> get in touch.
>
> Leon >
> ------------------------ Yahoo! Groups Sponsor ---------------------
~--> Buy
> Ink Cartridges or Refill Kits for your HP, Epson, Canon or Lexmark
Printer
> at MyInks.com. Free s/h on orders $50 or more to the US & Canada.
> http://www.c1tracking.com/l.asp?cidU11
> http://us.click.yahoo.com/mOAaAA/3exGAA/qnsNAA/dN_tlB/TM
> --------------------------------
-~->
>
>
> Yahoo! Groups Links





--- In , "Lee Studley" <indigo_red@q...> wrote:
> One drawback to this is the size of sprom the ( and the size of the
> FPGA ) FPGA needs for configuration. If its a larger FPGA and you
are
> going to emulate the load and include it in your firmware in the
cpu,
> it may take a big bite out of your code space even if compressed.
I'd
> lay pads for an sprom as an option too. Loading a Xilinx is well
> documented in their appnotes. -Lee

I intend to use a serial flash memory for the configuration code.

Leon


"leon_heller" <> writes:

> Some time ago I mentioned that I was thinking of producing a PCB with
> an LPC2106 and FPGA on it.
...
> the much easier to find Altera Cyclone EP1C3T100. I've ordered a few

Do you have a feel for the power consumption of the FPGA? I'm wondering
whether an FPGA would be feasible on an LPC2106 where low power (long
battery life) was a primary consideration. --
Frank



--- In , Frank Sergeant <frank@p...> wrote:
> "leon_heller" <leon_heller@h...> writes:
>
> > Some time ago I mentioned that I was thinking of producing a PCB
with
> > an LPC2106 and FPGA on it.
> ...
> > the much easier to find Altera Cyclone EP1C3T100. I've ordered a
few
>
> Do you have a feel for the power consumption of the FPGA? I'm
wondering
> whether an FPGA would be feasible on an LPC2106 where low power
(long
> battery life) was a primary consideration.

How long is a piece of string? 8-) It depends on the clock rate and
how much current is taken by the I/Os. If you have a rough idea of
the requirements the consumption could be estimated.

Leon


Frank
 
I work for a scientific research organization that places instruments on the ocean floor for long periods.  Our instruments live and die by power consumption.
 
Most of the SRAM based FPGAs have quiescent current consumption(i.e. no clocks) that will dwarf the current required by the LPC2106.   In order to achieve the density and speed required for the telecommunications market the MOSFETs used in these FPGAs are typically very leaky. 
 
Their gate threshold and bias voltages are very close resulting in a MOSFET that doesn't really turn fully on or off.  The quiescent current required by many devices can be on the order of 20 to 100 milliamps doing absolutely nothing.  Also, this quiescent current is exponentially dependent on temperature. 
 
Another thing to watch out for in the inrush/initialization current required by most of the
SRAM based FPGAs which can be on the order of amps.  Things change everyday in the
FPGA business so these comments may not apply directly to your specific part.  In other words, read that darn data sheet (carefully)!
 
For example, the Xilinx XC3S1000 typically requires 65 milliamps of quiescent current for the internal supply, VCCINT.  Another 25 milliamps is required for the VCCAUX supply.
 
All is not lost, there are a few CPLD and FPGA like devices that feature low static power dissipation, here are a few recommendations:
 
1.  The Xilinx Cool Runner and Cool Runner II CPLDs (up to 512 macrocells)
2.  The Actel ProASIC and ProASIC+ FPGAs
3.  The Cypress Delta 39K family of CPLDs (up to 3072 macrocells)
4.  QuickLogic Eclipse II FPGAs
5.  Xilinx Spartan-XL (not Spartan 2, 3 or E) FPGAs
 
I have direct design experience with #1, 2 and 3 above but 4 and 5 may work for
you as well.  I don't think the Quicklogic parts are re-programmable and cheap
HDL synthesis support for #5 is lacking.
 
I hope this helps...
Wayne

Frank Sergeant <f...@pygmy.utoh.org> wrote:
"leon_heller" <l...@hotmail.com> writes:

> Some time ago I mentioned that I was thinking of producing a PCB with
> an LPC2106 and FPGA on it.
...
> the much easier to find Altera Cyclone EP1C3T100. I've ordered a few

Do you have a feel for the power consumption of the FPGA?  I'm wondering
whether an FPGA would be feasible on an LPC2106 where low power (long
battery life) was a primary consideration.--
Frank



[re FPGA power consumption]

Thank you very much, Leon and Wayne, for the comments and suggestions.

I was thinking (vaguely) of building a one-size-fits-most board that
consisted primarily of an LPC2106 and a programmable logic chip of some
sort. I'm just at the thinking stage, but I have some good leads thanks
to Wayne.

Another thought (sparked by a comment by Stephen Pelc, in
comp.arch.embedded) is the possibility of putting multiple LPC chips on
a single board, with the others as slave I/O processors, or whatever, to
the main chip, stuffing the extra CPUs only when they were useful for
the particular project, but using a "standard board". I'm now leaning
toward thinking it would be better not to do that but to do a custom
board for each project, primarily to save on board complexity and cost
when the extras were not needed. (Then, the "standard board" could be a
set of several variants in the CAD software.)

Along that line, perhaps running some of the LPC chips from very slow
external clocks could get their power consumption very low -- perhaps
for a keyboard scanner or other purpose where I might want some logic to
stay awake all the time but working very slowly would be adequate.
(De-tuning an ARM to the speed of a PIC or Atmel chip (?) and thus
getting PIC-sized power consumption, but keeping a single instruction
set.)

--
Frank