Welcome, Guest. Please login or register.

Author Topic: FPGA for dummies  (Read 59715 times)

Description:

0 Members and 1 Guest are viewing this topic.

Offline Thorham

  • Hero Member
  • *****
  • Join Date: Oct 2009
  • Posts: 1150
    • Show all replies
Re: FPGA for dummies
« Reply #14 on: December 07, 2011, 05:07:06 PM »
Quote from: psxphill;670657
I didn't say software was a netlist, but VHDL is a programming language. It even mentions it on http://en.wikipedia.org/wiki/Concurrent_computing
 
and here http://www.mlab.ice.uec.ac.jp/mit/text/JyoTsuEnsyu/VHDL_Language_Reference.pdf
 
If VHDL is a programming language then what you write is a program.
 
An FPGA is more efficient than using software on a CPU, but it's essentially doing the same thing.
From what I've learned from my arguing, this is not the case at all.

As you know, when writing a program in a higher level language than assembly language, you compile the program to an assembler program, and this is assembled into a binary containing the machine code instructions.

With VHDL, the program isn't translated into something like machine code at all. There is no program of any kind running on the FPGA, and although the VHDL has to be translated, it's translated into something completely different than what an assembler program would be translated into to.

While it's true that the basic idea is the same, namely programmability, FPGAs and CPUs achieve this is fundamentally entirely different ways. The word 'programmable' doesn't necessarily imply 'program'.
 

Offline Thorham

  • Hero Member
  • *****
  • Join Date: Oct 2009
  • Posts: 1150
    • Show all replies
Re: FPGA for dummies
« Reply #15 on: December 07, 2011, 08:31:24 PM »
Quote from: persia;670689
As I understand it an FPGA is a simulation or mock up of hardware, there is both a hardware and software component
The software part is actually the design software, such as a VHDL system. There's no actual software running on the FPGA at all. There is a 'soft' side on FPGAs, but it's not a program. FPGA programming can't be compared to CPU programming at all.
 

Offline Thorham

  • Hero Member
  • *****
  • Join Date: Oct 2009
  • Posts: 1150
    • Show all replies
Re: FPGA for dummies
« Reply #16 on: December 09, 2011, 06:57:03 PM »
Quote from: ferrellsl;670718
I do want to add that I'm very impressed with billt's patience here.  He's almost written a dissertation on FPGAs here.  Very unimpressed by those who insist on arguing with him.
Indeed. I've certainly learned not to dive in when not knowing enough about the subject. It's something I'm not going to do anymore.
 

Offline Thorham

  • Hero Member
  • *****
  • Join Date: Oct 2009
  • Posts: 1150
    • Show all replies
Re: FPGA for dummies
« Reply #17 on: December 09, 2011, 08:06:21 PM »
Quote from: freqmax;670916
There's some real good experts on FPGA here. Please listen to them..
The amount of persistence of unknowledge is amazing ;)

FPGAs differ from an ordinary CPU and other circuits in so many ways that you will have to rethink most assumptions.
Except for the notion that FPGAs emulate circuits.

The same can even be said for software: A program is a model of an information processing system whose physical implementation is undefined. Don't know how to say it properly about FPGAs, though (layman level).
 

Offline Thorham

  • Hero Member
  • *****
  • Join Date: Oct 2009
  • Posts: 1150
    • Show all replies
Re: FPGA for dummies
« Reply #18 on: December 09, 2011, 11:23:32 PM »
Quote from: amigadave;670925
Maybe someone here can explain in "Layman" terms that everyone can understand, what some of the differences are between FPGA and XMOS chips.

Quote from: billt;670930
I don't have a great understanding of XMOS chips, so I'll defer to an expert there rather than risk talking about a wrong assumption.
You can read about it on the XMOS site, which says XMOS chips combine the functionality of CPUs, FPGAs and some other technologies.
 

Offline Thorham

  • Hero Member
  • *****
  • Join Date: Oct 2009
  • Posts: 1150
    • Show all replies
Re: FPGA for dummies
« Reply #19 on: December 10, 2011, 12:15:46 AM »
If I made a parallel switch emulator, where you have two kinds of switches (normal and inverted), that behave like relays and have four pins, then how difficult would it be to translate such virtual circuitry to FPGA circuitry?

The emulation doesn't emulate electricity and simply uses 0 and 1 as signals, and signals are never amplified in any way.
« Last Edit: December 10, 2011, 12:29:17 AM by Thorham »
 

Offline Thorham

  • Hero Member
  • *****
  • Join Date: Oct 2009
  • Posts: 1150
    • Show all replies
Re: FPGA for dummies
« Reply #20 on: December 10, 2011, 07:13:20 AM »
Quote from: freqmax;670942
My roof lamp emulates light..
That was actually a question...
Quote from: Duce;670944
Very informative thread once a guy sorts out the arguing and dick waving, hehe.
I don't wave dicks, thank you very much, and if you think it's about that, then you're wrong... AND you're missing the point I was trying to make.

It's all too easy to get sidetracked by the details. You want to get a point across, but you look up information thinking it will help explain your point better. Well, NOT! Should have been obvious that that has ended now.
« Last Edit: December 10, 2011, 07:15:50 AM by Thorham »
 

Offline Thorham

  • Hero Member
  • *****
  • Join Date: Oct 2009
  • Posts: 1150
    • Show all replies
Re: FPGA for dummies
« Reply #21 on: December 10, 2011, 03:37:01 PM »
Quote from: freqmax;670983
Not include != Make new thread.
You're absolutely right. A discussion about different forms of emulation, and what is and what is not emulation, definitely belongs in another thread (it's just too easy to get sidetracked sometimes, but no offense intended :)).
 

Offline Thorham

  • Hero Member
  • *****
  • Join Date: Oct 2009
  • Posts: 1150
    • Show all replies
Re: FPGA for dummies
« Reply #22 on: December 10, 2011, 08:40:52 PM »
Anyone up for answering this question? It has nothing to do with any kind of emulation debate, and the only emulation I'm talking about here is a software based switch logic emulator (probably in 680x0 on the Amiga).
Quote from: Thorham;670940
If I made a parallel switch emulator, where you have two kinds of switches (normal and inverted), that behave like relays and have four pins, then how difficult would it be to translate such virtual circuitry to FPGA circuitry?

The emulation doesn't emulate electricity and simply uses 0 and 1 as signals, and signals are never amplified in any way.

Quote from: Nostromo;671011
Anyone else sees the irony that a thread called "FPGA for dummies" ended up like this (jargon fest)?
Yes, and it's my fault. I wanted to make a point about emulation and thought quickly looking up some 'stuff' would help me make my point. I was wrong :(
 

Offline Thorham

  • Hero Member
  • *****
  • Join Date: Oct 2009
  • Posts: 1150
    • Show all replies
Re: FPGA for dummies
« Reply #23 on: December 10, 2011, 09:30:36 PM »
Quote from: freqmax;671015
It won't emulate, simulate, run any code or anything else. All that is plain misunderstanding.
Except for emulation. It actually applies to all programmable chips, and it basically comes down to how far the concept of emulation reaches, and this is debatable. Of course, this really does belong in another thread.
 

Offline Thorham

  • Hero Member
  • *****
  • Join Date: Oct 2009
  • Posts: 1150
    • Show all replies
Re: FPGA for dummies
« Reply #24 on: December 10, 2011, 11:06:08 PM »
Quote from: mongo;671020
The XMOS chip is a CPU. It contains no programmable logic and is nothing at all like a FPGA.
Indeed, even though it says this on their site:
Quote
XMOS embedded processors bring together the capabilities of processors, DSPs, ASICs and FPGAs in one, two and four core devices. Find the right chip for your designs.
Very misleading after you read about what those chips really are, on the same site :hammer:
 

Offline Thorham

  • Hero Member
  • *****
  • Join Date: Oct 2009
  • Posts: 1150
    • Show all replies
Re: FPGA for dummies
« Reply #25 on: December 11, 2011, 03:49:04 AM »
Quote from: psxphill;671031
It doesn't run code, but you can emulate or simulate something with an fpga. Emulation/simulation doesn't require you to use a sequential programming language running on a cpu.
You're not saying it right: An FPGA provides the user with an environment which enables the user to implement electronic circuit designs without having to build a physical implementation for each design. That's why it's an emulation.

Sorry, couldn't help my self :)
« Last Edit: December 11, 2011, 04:24:23 AM by Thorham »
 

Offline Thorham

  • Hero Member
  • *****
  • Join Date: Oct 2009
  • Posts: 1150
    • Show all replies
Re: FPGA for dummies
« Reply #26 on: December 12, 2011, 04:45:19 PM »
When it's about doing Amiga hardware in an FPGA it's simple: Only the chipset's functionality is replicated and not the original chipset blueprints. This means that you have an imitation and not the real thing. Saying that it's the real deal, is like saying that a replica of a car is the same as the original.
« Last Edit: December 12, 2011, 04:48:08 PM by Thorham »
 

Offline Thorham

  • Hero Member
  • *****
  • Join Date: Oct 2009
  • Posts: 1150
    • Show all replies
Re: FPGA for dummies
« Reply #27 on: December 12, 2011, 08:21:12 PM »
Quote from: billt;671184
Yea, like how ECS is a simulation of OCS, because it didn't come from those original blueprints, it came from some later design spec.
OCS, ECS and AGA are simply different revisions of the Amiga custom chipset. FPGA implementations are blatant imitations, nothing more, and it's also doubtful that FPGA implementations show exactly the same behavior as the OCS, ECS and AGA chipsets (same goes for WinUae).
 

Offline Thorham

  • Hero Member
  • *****
  • Join Date: Oct 2009
  • Posts: 1150
    • Show all replies
Re: FPGA for dummies
« Reply #28 on: December 12, 2011, 08:39:41 PM »
Quote from: billt;671201
But AGA, like ECS Natami and Minimig, come from something other than the original chipset blueprints.
That simply means AGA is a new version of the Amiga chipset.
Quote from: billt;671201
I just don't see why a new implementation in an ASIC (custom chip, whatever you call it) that somehow differs from the really original thing is different than doing the same in an FPGA.
Wait a minute, are the Amiga custom chips done in ASICs? Aren't ASICs chips that can be programmed once?
Quote from: billt;671201
But we may never come to agreement on that philosophy.
Indeed. As long as it's clear that it's a philosophy and not necessarily set in stone.
 

Offline Thorham

  • Hero Member
  • *****
  • Join Date: Oct 2009
  • Posts: 1150
    • Show all replies
Re: FPGA for dummies
« Reply #29 from previous page: December 12, 2011, 09:21:26 PM »
Quote from: mikej;671208
Let me ask a question.

We are now scanning dies of some 1980 ASICs. From this, we can do polygon extraction - then transistor extraction and then reduce to gates.

This netlist can be synthesised back into an FPGA, or a modern ASIC.
They would be functionally identical.

Is one "emulating" the other?
Not when implemented using an ASIC (billt just explained ASICs quite clearly). In this case you simply get a hardwired copy. If you made a hardwired implementation of just the behavior of a chip, you'd get a replica, not an emulation.

The reason why I keep hammering on the FPGA=emulation thing, is because of the soft side of FPGAs. All sorts of overhead electronics are needed to actually connect the wires together, and these extra components aren't needed to do a hardwired implementation. It seems to be a simple case of interpretation.
Quote from: billt;671210
An ASIC does not get "programmed". It gets manufactured. And as soon as the last layer of the wafer is manufactured onto it, it gets cut into individual die, put in a package, and that's your final complete chip.
Right, good to have that cleared up, means ASICs can stay out of the whole emulation thing.