Vivado is software for designing hardware on an FPGA. AMD bought out Xilinx, one of the big FPGA manufacturers, a few years back. FPGAs are basically programmable digital circuits: you configure a series of internal logic gates to represent the function of a circuit with memory, data busses, registers, gates, etc. In this fashion, an FPGA could be programmed to function like a CPU, a radio, a video encoder, or nearly any other piece of digital hardware. Very useful for hobbyists and prototyping.
The thing with FPGA software is that there are no open source alternatives. FPGAs have so many complicated blobs and signing keys and proprietary IP blocks that your only choice is to use the manufacturer’s offering.
It is insane to me that something as conceptually basic as FPGAs can even be made proprietary at all, much less that being the universal state of them.
The world of FPGA is full of proprietary hardware and software blocks sadly. I haven’t dabbled since being a student but I remember finding it extremely jarring how on one hand you basically could write whatever hardware blocks you wanted (the freedom is comparable to learning programming all over again but in a fundamentally different way), but also you had super optimized “IP blocks” of software you can pull in like a paid library that you had to license. These blocks make the damn chip much more powerful for those of us not willing to write a fucking CPU, what the fuck do you mean DLC for the chip on my lab table?
Vivado was a bit of a pain but not too bad as far as proprietary software goes. There’s more steps involved than just burning a .hex to a regular microcontroller, the debugging is different, I get it, another program makes sense.
Personally I don’t write much code these days but I find myself yearning for like MS Visual Studio 2008. If I ever want to go back to programming on the side I will probably have to figure out my IDE situation from scratch. VS Community seems nice but there’s a lot of unnecessary features and of course Microslop’s grubby fingers all over it
for those of us not willing to write a fucking CPU
There’s insane maniacs who’ve written fucking CPUs in CSS, Minecraft, and Conway’s game of life, among many other environments not intended for writing fucking CPUs.
Can’t some insane maniac simply write a fucking CPU for FPGAs and release it as open source?
Plenty of insane maniacs have released lots of more useless stuff as open source, why not this?
(Using insane maniac as a compliment here; the world would be a much more boring and unenjoyable place without insane maniacs willing to waste their time making it a better or at least more interesting place.)
My fucking CPU comment was not that serious. The projects we were doing were just that. I have a notebook full of diagrams that I understand less and less every year.
It was just a bit shitty that the CPU part wasn’t included with the chip itself. IIRC the nicer ones had hardware CPUs/CPU cores anyway.
I meant it more as “hey I need to do this simple task, better write a processor real quick” which is not convenient. I’m almost certain there are dozens of FOSS RISC cores that could be burned to all of Xilinx’s FPGAs. It’s theoretically hardware agnostic but these are super popular parts.
I was a student and this was the first time I really felt like programmery things were paywalled. I think the licenses were per-deployment but free for education.
I think people who learned about programming in a previous generation may be more comfortable with things being very proprietary, and arguably the newest batches of people learning it in the slop era too. But until that point everything I touched had a free (as in beer) or free-ish equivalent. I remember the professor being very excited about the Chinese less closed down stuff, saying it didn’t matter that it was slower for a lot of applications.
True, but that is not the only thing they are useful for; e.g. many high end measurement instruments ship with FPGAs so they can get improvements after release for functionality where implementing it in software would be too slow.
Very true. I believe FPGAs are also popular for aerospace applications, since it’s cheaper to design and patch programmable hardware than to design and physically install ASICs.
Vivado is software for designing hardware on an FPGA. AMD bought out Xilinx, one of the big FPGA manufacturers, a few years back. FPGAs are basically programmable digital circuits: you configure a series of internal logic gates to represent the function of a circuit with memory, data busses, registers, gates, etc. In this fashion, an FPGA could be programmed to function like a CPU, a radio, a video encoder, or nearly any other piece of digital hardware. Very useful for hobbyists and prototyping.
The thing with FPGA software is that there are no open source alternatives. FPGAs have so many complicated blobs and signing keys and proprietary IP blocks that your only choice is to use the manufacturer’s offering.
It is insane to me that something as conceptually basic as FPGAs can even be made proprietary at all, much less that being the universal state of them.
The world of FPGA is full of proprietary hardware and software blocks sadly. I haven’t dabbled since being a student but I remember finding it extremely jarring how on one hand you basically could write whatever hardware blocks you wanted (the freedom is comparable to learning programming all over again but in a fundamentally different way), but also you had super optimized “IP blocks” of software you can pull in like a paid library that you had to license. These blocks make the damn chip much more powerful for those of us not willing to write a fucking CPU, what the fuck do you mean DLC for the chip on my lab table?
Vivado was a bit of a pain but not too bad as far as proprietary software goes. There’s more steps involved than just burning a .hex to a regular microcontroller, the debugging is different, I get it, another program makes sense.
Personally I don’t write much code these days but I find myself yearning for like MS Visual Studio 2008. If I ever want to go back to programming on the side I will probably have to figure out my IDE situation from scratch. VS Community seems nice but there’s a lot of unnecessary features and of course Microslop’s grubby fingers all over it
There’s insane maniacs who’ve written fucking CPUs in CSS, Minecraft, and Conway’s game of life, among many other environments not intended for writing fucking CPUs.
Can’t some insane maniac simply write a fucking CPU for FPGAs and release it as open source?
Plenty of insane maniacs have released lots of more useless stuff as open source, why not this?
(Using insane maniac as a compliment here; the world would be a much more boring and unenjoyable place without insane maniacs willing to waste their time making it a better or at least more interesting place.)
My fucking CPU comment was not that serious. The projects we were doing were just that. I have a notebook full of diagrams that I understand less and less every year.
It was just a bit shitty that the CPU part wasn’t included with the chip itself. IIRC the nicer ones had hardware CPUs/CPU cores anyway.
I meant it more as “hey I need to do this simple task, better write a processor real quick” which is not convenient. I’m almost certain there are dozens of FOSS RISC cores that could be burned to all of Xilinx’s FPGAs. It’s theoretically hardware agnostic but these are super popular parts.
How is that different from purchasing any other software library?
I was a student and this was the first time I really felt like programmery things were paywalled. I think the licenses were per-deployment but free for education.
I think people who learned about programming in a previous generation may be more comfortable with things being very proprietary, and arguably the newest batches of people learning it in the slop era too. But until that point everything I touched had a free (as in beer) or free-ish equivalent. I remember the professor being very excited about the Chinese less closed down stuff, saying it didn’t matter that it was slower for a lot of applications.
Singularly fucking stupid IP gated moronicity. So much profit available before custom chips. Why?
True, but that is not the only thing they are useful for; e.g. many high end measurement instruments ship with FPGAs so they can get improvements after release for functionality where implementing it in software would be too slow.
Very true. I believe FPGAs are also popular for aerospace applications, since it’s cheaper to design and patch programmable hardware than to design and physically install ASICs.
Lattice device support some open toolchains, or relatively open compared to the big two. Or something like that, never got to work with them yet.
Thanks, that’s basically what I gathered from the article but I didn’t do any further research.