Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

> I love the generic PIO though, I really hope other manufacturers pick up on that.

Unfortunately the Pi Foundation is seeking patents on the PIO architecture. I don't think they've been granted yet though.



Isn't that already covered by FPGAs? I mean, it is just a way of configuring ports. And FPGAs are much broader (also configuring computation).


No, FPGAs work substantially different.

You can think of an FPGA as a bunch of "programmable transistors". You've got a whole bunch of basic logic building blocks, and you program the wires between them to build a logic circuit. This means it is great for building relatively simple but high-speed logic (grab sample from sensor, do some additions and multiplications, store result in external DRAM chip, repeat at 5GHz). However, they are really inflexible: getting them to do different operations depending on some condition is extremely costly.

The PIO, on the other hand, is essentially a really basic CPU core. It reads and executes a stream of instructions, and it can do (very simple) math and conditional logic. This means it is great for building some kind of state machine, which dynamically adjusts it behaviour based on some kind of external condition. The unique selling point of the PIO is that the instruction set is completely designed around super-fast IO, so reading or writing two dozen pins can be done in one or even zero(!) instructions. And because every instruction executes in exactly one cycle, you've got really good control over the exact timing. This makes it ideal for implementing hardware-level protocols in software.


In that case, it sounds like they reinvented the coprocessor. I don't see any fundamental difference between that and what they did.


The same features of pio can be implemented via FPGA, but it's a lot more complicated to do so, and probably you won't find FPGAs as cheap as on the pi


One example (PIO implemented in Verilog for use in FPGAs):

https://github.com/lawrie/fpga_pio


This core is probably less than 1000 lines of RTL (the verification suite probably being far more.)


Source? I've not seen a patent for that, plus I suspect its not actually patentable


https://forums.raspberrypi.com/viewtopic.php?p=1837408&sid=6...

I haven't seen a more recent update, unsure if they abandoned the patent bid or if it's just taking a while to go through the system.


seeking patents to then open source it?

Right?... Right?!?


That's really disappointing :/




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: