0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

什么是缓冲区?有什么作用

工程师邓生 来源:百度百科、雪V歌、亓旎豆 作者:百度百科、雪V歌、 2022-02-02 09:57 次阅读

缓冲区其实就是一个存储区域,它是由专门的硬件寄存器所组成的。

缓冲区根据其对应的输入设备和输出设备,分为输入缓冲区和输出缓冲区。

使用硬件作为缓冲区的成本较高,容量也较小,一般仅用在对速度非常高的场合(存储器管理寄存器,有对页表访问的频率较高,因此使用速度很快的联想寄存器来存放页表项的副本)。

一般情况下更多的是使用内存作为缓冲区,缓冲区就是一块内存区。

缓冲区的作用

减少对CPU的中断频率,放宽对CPU中断相应的时间限制;

解决数据粒度不匹配的问题;

提高CPU和IO设备之间的并行性;

缓和CPU和IO设备之间速度不匹配矛盾。

缓冲区的作用就是为了解决速度不匹配的问题,高速的cpu与内存,内存与硬盘,cpu与io等速度不匹配的问题。

还有在一些厂商资料中还被写为CacheBuffer。缓冲区的基本作用是平衡内部与外部的DTR。

本文综合整理自百度百科、雪V歌、亓旎豆晗琴

审核编辑:刘清

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 缓冲区
    +关注

    关注

    0

    文章

    31

    浏览量

    9031
  • 寄存器
    +关注

    关注

    30

    文章

    5028

    浏览量

    117718
  • 缓冲
    +关注

    关注

    0

    文章

    46

    浏览量

    17717
收藏 人收藏

    评论

    相关推荐

    使用UART FIFO缓冲区时,缓冲区中的数据有时会损坏的原因?

    = XMC_USIC_CH_PARITY_ MODE_NONE 两个 UART 通道都使用 FIFO 缓冲区,没有任何中断。 缓冲区每 1 毫秒 TLE9243QK_BASE_BOARD 检查一次标志是否可供读取
    发表于 03-06 06:59

    没有办法通过FX3固件检查缓冲区是卡住了还是已满?

    我正在尝试通过多通道 DMA 缓冲区直播 1080p60 视频,但是我们遇到了一个问题,即在向 FX3 写入一定数量的缓冲区之后,我们看到当前线程 WATERMARK 和 READY 标志保持不变
    发表于 02-23 08:01

    西门子博诊断缓冲区的使用方法

    可从在线和诊断视图中“诊断”文件夹的“诊断缓冲区”组中读出 CPU 的诊断缓冲区
    的头像 发表于 12-11 10:24 1214次阅读
    西门子博诊断<b class='flag-5'>缓冲区</b>的使用方法

    使用malloc建立缓冲区时出现错误怎么解决?

    ,我不知道现在这个已知系统的中断频率,所以我做了一个偷懒的想法,先把输入数据3秒的数据放在自建的缓冲区,再将这个数据处理后再输出,延时大概3s数据的时间,现在但是使用malloc建立缓冲区时出现错误,请问,怎么拯救?
    发表于 11-30 07:39

    C++环形缓冲区设计与实现

    一、环形缓冲区基础理论解析(Basic Theory of Circular Buffer) 1.1 环形缓冲区的定义与作用(Definition and Function of Circular
    的头像 发表于 11-09 11:21 479次阅读
    C++环形<b class='flag-5'>缓冲区</b>设计与实现

    SPI串行时钟和缓冲区数据关系是什么?

    仅当存在待发送数据时串行时钟波特发生器才产生对应数据位模式的时钟脉冲吗?如果缓冲区没数据,串行时钟就一直空闲吗?
    发表于 10-17 08:20

    SPI在通信的过程中怎么实现环形缓冲区读取?

    SPI在通信的过程中怎么实现环形缓冲区读取
    发表于 10-11 08:11

    STM32进阶之串口环形缓冲区实现

    STM32进阶之串口环形缓冲区实现
    的头像 发表于 09-19 09:20 1637次阅读
    STM32进阶之串口环形<b class='flag-5'>缓冲区</b>实现

    关于NUC980的网口的发送描述符的缓冲区地址要求4字节对齐的问题

    NUC980的网口的发送描述符的缓冲区地址要求 4字节对齐的问题,因为我用的协议栈里面要求IP数据段4字节对齐,加上以太网14字节,如果发送缓冲区要求4字节对齐,带来的问题我必须要完成一次拷贝,不能
    发表于 09-04 06:44

    NUC980的网口的发送描述符的缓冲区地址要求4字节对齐的问题求解

    NUC980的网口的发送描述符的缓冲区地址要求 4字节对齐的问题,因为我用的协议栈里面要求IP数据段4字节对齐,加上以太网14字节,如果发送缓冲区要求4字节对齐,带来的问题我必须要完成一次拷贝,不能把数据缓冲区直接发送 另外一个
    发表于 06-27 07:34

    NUC980的网口的发送描述符的缓冲区地址要求4字节对齐的问题求解

    NUC980的网口的发送描述符的缓冲区地址要求 4字节对齐的问题,因为我用的协议栈里面要求IP数据段4字节对齐,加上以太网14字节,如果发送缓冲区要求4字节对齐,带来的问题我必须要完成一次拷贝,不能
    发表于 06-13 07:01

    88w9098如何配置/修改套接字缓冲区大小?

    我想知道如何在驱动程序中配置套接字缓冲区大小?我正在使用 88w9098 芯片。 我正在做一些实验。我已经在内核中更改了套接字缓冲区大小,因此我可能还需要更改 Wi-Fi 驱动程序端的缓冲区大小。有人能告诉我如何配置/修改套接字
    发表于 05-31 11:00

    是否有关于I2S驱动程序缓冲区处理和状态回调的描述?

    不更改发送的缓冲区,这对于大多数实际应用程序来说是不安全的。 一个 i2s_transfer_callback_t 的回调,它提供了一个类型为 status_t 的参数
    发表于 05-18 08:43

    有没有办法检查/设置css缓冲区

    你好。有没有办法检查/设置 css 缓冲区?似乎当我添加太多 css 特性时,事情会变得不稳定。
    发表于 05-10 09:03

    如何使用Dma从Bctu Fifo1到缓冲区的数据传输?

    我必须使用 dma 将数据(定期)从 bctu fifo1 传输到缓冲区。Watermark 值设置为 5,这意味着当 fifo1 6 个条目时,它应该触发 dma 进行数据传输。Adc 结果
    发表于 05-06 07:08