Re:Liberouter Combo Cards – FPGA boards focused on network d...
by RandomOpinion on Wednesday December 07, 2016 @03:01PM
(#13125692)
The early computers (for the most part) were von Neumann architecture machines just like modern computers, with an instruction pointer, registers, branching, and so forth that most people associate with conventional software development.
FPGAs are a undifferentiated sea of configurable logic gates with configurable connections between them[0]; it's not quite wiring together bare transistors but it's not that far removed either. None of the elements of a von Neumann architecture are there; if a engineer wants any of those things in their design, they would have to assemble it themselves from the available gates[1]. So, no, building a design for a FPGA has little to do with programming in the sense that most people mean it.
[0] With various special function blocks interspersed at regular intervals depending on the manufacturer and model of the FPGA
[1] or buy a pre-made soft-IP core
Re:Liberouter Combo Cards – FPGA boards focused on network d...
by Koshkin on Wednesday December 07, 2016 @04:32PM
(#13126415)
> little to do with programming in the sense that most people mean it
No disagreement here, but see, e.g., http://fpgacenter.com/fpga/fpga_prg.php.
Actually, not quite, not with FPGA. Sure, you can use an HDL to synthesize a custom microchip, in which case you indeed would be "building hardware", but you can also target an FPGA specifically, in which case you would essentially be programming a kind of a computer in a way similar to how it was done on those (early) switchboard-based computers that were configured by manually making wired connections between a fixed set of logical and arithmetical devices. You could say that one would be "building hardware" in such case as well, but since the system could be easily reconfigured at any time so that it could perform a different function, to me it looks more like programming... (I guess, the right way to look at this is as something where the distinction between hardware and software gets blurred to the point that any serious argument about the meaning of words becomes, well, meaningless.)