0

I want to program an FPGA on a board that has a socket (zif etc or whatever is applicable) for said FPGA, from which it can be removed and reattached without soldering. I want to know where I can get a board suitable for programming an FPGA in this way?

Once the FPGAs have been programmed they will be attached to another different PCB via solder.

I wish to essentially program the FPGA in a similar way that it is possible to program an EPROM.

I wish to use VHDL if at all possible.

1
  • What is your FPGA? Name? Brand? Any info about it will be helpful. There are flash programmable FPGA, SRAM based FPGAs and in the old days where were FPGAs that needed a special programmer. Without that information, it is not going to be easy to tell you what to do. Commented Jun 30, 2012 at 18:06

2 Answers 2

6

FPGAs are not programmed like an EPROM - their internals are completely volatile. In system use, they are 'configured' from some other non-volatile memory. For example, many can interface directly to a standard serial flash device to load that configuration.

This non-volatile memory is the device which you need to "program" in some fashion. For example:

  • before soldering, using some external agency
  • using JTAG (if it has such an interface).
  • Or, you can load a configuration into the FPGA over JTAG which then allows you to program the flash using the FPGA!
Sign up to request clarification or add additional context in comments.

4 Comments

Actually there were some older FPGAs that needed a special programmer. But I don't think this is the case here.
@FarhadA - I wouldn't call those FPGAs in that case. FPGAs are pretty universally SRAM based and use an external non-volatile memory.
True, but many people DID call them FPGA because theoretically you could program them while you were in the 'Field'.It is your decision to make it limitted to SRAM based ones, then it is your choice, but the actual definition of FPGA is:"A field-programmable gate array (FPGA) is an integrated circuit designed to be configured by a customer or a designer after manufacturing—hence "field-programmable"." From WikiPedia
@FarhadA: That Wikipedia page doesn't match my recall of the history: as I recall it "FPGA" was a term coined by Xilinx for their SRAM-based devices. But my memory is volatile, so I could be misremembering :)
1

It sounds as if you've misunderstood a thing or two. An STM32F103 is a microcontroller, that is, a processor with built-in memory, I/O and similar, and is typically programmed in C or C++.

VHDL (a Hardware Description Language) is used to program FPGAs (amongst others). There is a fundamental difference in the two types of chips. A processor is a "static" chip, which executes a program instruction by instruction, whereas in an FPGA the chip hardware itself is programmable - you (by using for instance VHDL) describe the actual connectivity and functionality of the chip, and essentially create numerous small, customized and application-specific processors.

You should probably first of all learn a bit more about the differences between the two types of chips - then have a look at for instance some of Digilents FPGA boards.

Also, programming a chip in one board, unsoldering it, and soldering it to another is not a good idea. Both microcontrollers and FPGAs today should be soldered to their final board, and then programmed (for instance over JTAG) - I'm sorry to say that what you are proposing doesn't really make much sense - and if you look at the pin count and packages of today's chips you might see why.

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.