I/O设备速度不匹配的矛盾,提高CPU和I/O设备的并行性,在现代操作系统中,几乎所有的I/O设备在与处理机交换数据时都用了缓冲区,并提供获得和释放缓冲区的手段。总结来说,缓冲区技术用到了缓冲区,而缓冲区的引入是为了缓和CPU和I/O设备的不匹配,减少对CPU的中断频率,提高CPU和I/O设备的并行性。在数据到达与离去速度不匹配的地方,就应该使用缓冲技术。缓冲技术好比是一个水库,如果上游来的水太多,下游来不及排走,水库就起到“缓冲”作用,先让水在水库中停一些时候,等下游能继续排水,再把水送往下游。在工业上通常指工业相机进行数据传输时为了迅速采集图像而采用的技术,也叫图像缓冲技术。
为什么使用图像缓冲技术?
工业相机采集光信号,由模拟信号转换为数字信号的速度往往是很快的,但是由于相机数据传输接口速度的限制,实际从相机处理器传输到PC的速度会大打折扣,所有图像都从一个通道进行传输。
由于相机数据接口的不同,带宽不一样,就导致相机和PC的吞吐速度相差较大。
例如,千兆以太网传输速率为1Gbps,与相机的吞吐量相差较大,以千兆以太网作为传输接口,速度只能达到338fps左右。
而选用USB3.0作为数据传输接口,其传输速率为5Gbps,比该相机的数据产生大小要大,所以以USB3.0作为传输接口,速度可以到436.9fps左右。
那么千兆以太网传输就达不到芯片的理想速度吗?
显然不是的,使用带图像缓冲的千兆以太网相机,就可以达到理想速度:带有图像缓冲的工业相机,内部配置了一个缓存,用来快速装载大量的图片,这样就可以抓取多张图片,但是在这种模式下,并不意味着相机可以一直保持这个速度进行连续拍摄,当图像缓冲区填满之后,相机将以较慢的速度运行,回到千兆以太网的传输速率进行图像传输。
图像缓冲技术的工业应用
①对于较为常见的工业相机,运用图像缓冲技术,在配置缓存的情况下,可以瞬时记录高速过程,即使用价格较低的相机实现性能较高相机所拍摄的效果。
②对于高速相机,在相机自带内存的情况下,记录图像的过程也可以称为图像缓冲的过程,由于不涉及通过接口进行实时传输,由RAM接收图像数据,即可将高速捕获的图片暂时放置在内存里,这也是图像缓冲技术的一个较为成功的表现。