HD2AV_F3B

HD2AV_F3B文档内容:循环存储器的编写,每一行的像素输入进行存储,再依据目标像素所在行进行相应的读取。工程中会开辟一定空间的RAM用于存储,但是以一个循环的顺序去读写换时间节点:2014/12/20~2014/12/22一、循环RAM循环RAM即为一个循环读写的存储模块,数据填充满存储区间之后再从头接写入覆盖原有的存储空间。文档HD2AV_F3A中…

大家好,又见面了,我是你们的朋友全栈君。

文档内容:循环存储器的编写,每一行的像素输入进行存储,再依据目标像素所在行进行相应的读取。工程中会开辟一定空间的RAM用于存储,但是以一个循环的顺序去读写换

时间节点:2014/12/20~2014/12/22

 

 

 

 

一、   循环RAM

    循环RAM即为一个循环读写的存储模块,数据填充满存储区间之后再从头接写入覆盖原有的存储空间。

    文档HD2AV_F3A中我们知道会在某一特定时刻进行读取操作,而且需要同时读取4行的数据,而视频的数据又是持续写入的,所以我们至少需要5个RAM来组成一个循环的RAM。这样实现一个RAM写入数据的同时4个RAM读出数据。在C语言中实现存储空间的切换可以通过指针来较为方便的实现,可是FPGA中就有其特殊性,例如一个单口RAM,只含有写使能信号、数据输入输出、地址线与时钟。这个时候就需要根据外接的输入变量来进行相应的特殊操作,输入变量包括HD2AV_F3A中提到的读使能等信号,具体的关于它的实现会在第四章的文档中讲述,本文档只讲述存储策略。

二、视频信号处理的行存储策略

    视频信号一行一行的,一个像素一个像素的传输,设定五个RAM作为LineBuf。第一行存入LineBuf0、第二行存入LineBuf1….第六行覆盖存入LineBuf0。写入的操作每个周期都在进行着,而读取操作则要视外界的读使能信号而定,因为只有产生了目标信号行,有计算需求了,才会进行读的操作,而且是一次性的读出4个LineBuf里面的像素值。相应的示意图如下所示:

 HD2AV_F3B

    AdvanceWrite变量控制着写入数据在不同LineBuf之间切换,AdvanceRead控制着数据什么时候读出,即右侧的红色线条,当AdvanceRead有效的时候,读取4个LineBuf中的数据,当下一次AdvanceRead有效时,读取另外4个LineBuf的数据。

    在上一个文档中的分数倍采样率变换中会产生读使能信号AdvanceWrite以及写使能信号AdvanceRead,具体关于如何通过这两个使能信号实现目的数据计算所需的4个源数据YCbCr_ReadData0/1/2/3会在第四章节中讲述。

 

转载于:https://www.cnblogs.com/sunxuxu/p/4204098.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/157579.html原文链接:https://javaforall.net

(0)
上一篇 2022年7月11日 下午8:36
下一篇 2022年7月11日 下午8:36


相关推荐

  • nginx和apache、lvs区别

    nginx和apache、lvs区别对比项apachenginx简介配置简洁。负载均衡服务器,支持7层负载均衡内存及资源占用多轻量级,同样的web服务占用少稳定性超稳定不稳定,bug多进程同步进程模型异步进程模型(抗并发)处理静态文件性能好(3倍以上)性能差对PHP支持简单需要配合其他后端用rewrite功能性能好(rewrite频繁时用apache)性能差结合机制后端apache集群前端nginx抗并发Nginx轻量级,采…

    2022年6月14日
    30
  • c# savefiledialog_game是什么意思中文

    c# savefiledialog_game是什么意思中文1、这里通过一个例子来讲解saveFileDialog的使用方法,首先创建一个小的winform程序,然后在主界面中放入一个按钮、一个textbox,按钮用来弹出saveFileDialog,然后textbox用来接收saveFileDialog选择之后的文件路径,如下图:2、下图中的代码就是程序的全部代码了,对其中重要的代码进行解释:InitialDirectory方法:设置save…

    2026年4月13日
    6
  • js时间字符串转Date对象

    js时间字符串转Date对象vars 2018 10 0910 23 12 s s replace g vardate newDate s

    2026年3月18日
    2
  • PB中TriggerEvent用法详解

    PB中TriggerEvent用法详解br br TriggerEvent 函数作用 触发指定对象的指定事件 并且立即执行该事件中的脚本 注意该函数和 PostEvent 的区别 PostEvent 不是立即执行 TriggerEvent 是立即执行触发事件的脚本 br 函数语法 objectname TriggerEvent event word long br zobjectname PB 中任何对象或者控件 只要有可以触发的事件就可以 br zevent 要触发的事件 可以是枚举类型或者

    2026年3月17日
    3
  • CURL常用命令_db2常用命令

    CURL常用命令_db2常用命令原文地址:http://www.thegeekstuff.com/2012/04/curl-examples/下载单个文件,默认将输出打印到标准输出中(STDOUT)中curlhttp://www

    2022年8月3日
    8
  • 2026年新国内如何注册 Claude 账号保姆教程(成功率95%)

    2026年新国内如何注册 Claude 账号保姆教程(成功率95%)

    2026年3月14日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号