>Bit banging is a term of art that describes a method of digital data transmission as using general-purpose input/output (GPIO) instead of computer hardware that is intended specifically for data communication. [1]
I guess it depends on whether you count the PIO as "general purpose IO" or specific chip for data communication. The ability to run custom programs on them sort of pushes it away from general purpose IO and towards something like a network card that has its own firmware and compute. I think in this case it is fair to say it is debatable.
Bit banging is software emulation of a communication protocol or digital waveform (PWM, etc). Using the 'bit-bang' label applies when software was written to implement the waveform. If its using a cpu, or co-processor, is irrelevant IMO because in either case instruction are still being executed to generate the waveform.
A network card with its own firmware and compute generally uses a network processor[1], right? A widget that is optimized at the silicon level to put fairly specific pegs into fairly a specific holes?
The RP PIO is not a network processor, and doesn't have that kind of optimization. It is a blank slate that is devoid of intended purpose. It can be used to accomplish lots of different and very arbitrary things.
I guess it depends on whether you count the PIO as "general purpose IO" or specific chip for data communication. The ability to run custom programs on them sort of pushes it away from general purpose IO and towards something like a network card that has its own firmware and compute. I think in this case it is fair to say it is debatable.
[1] https://en.wikipedia.org/wiki/Bit_banging