在进行模块设计时,我们经常需要统计报文的数量,以供软件(or 主机)读取,有些统计仅仅用于debug,有些统计是协议要求,有些统计是为了便于功能实现。 当需要统计的数量较多时,为了降低功耗和减少面积,我们通常采用RAM去实现。
如下案例中,统计有效数据包的个数。 假设数据中存在pkt_id,pkt_id为0~63,则ram的深度为64。pkt_id用于作为读写地址。RAM读延时为3个时钟周期。 有数据来临时,pkt_vld作为读使能,读出当前包计数rdata,三个周期后,rdata加1回写到ram。 如下图所示:需要有三个注意事项 NOTE1:需要有读写保护,因为可能出现连续4个周期内,pkt_vld为1,且pkt_id相同,此时会出现同一个周期对相同的地址进行读写,因此需要RAM需要添加读写保护模块,保证数据能够正确写入,且读出的都是最新值,否则就会出现统计错误。 NOTE2:图中既有软件读、又存在硬件读,且硬件读优先级更高,软件读优先级低,因此为了保证软件读能够在有效周期内得到响应,因此需要在主数据流上插入空拍,避免出现软件读长时间无法响应而产生超时。
编辑:黄飞
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。
举报投诉
原文标题:IC设计:ram的应用 - 统计计数
文章出处:【微信号:IP与SoC设计,微信公众号:IP与SoC设计】欢迎添加关注!文章转载请注明出处。
相关推荐
ram冲突是几乎每颗芯片都需要关注的问题,部分场景下,ram访问冲突不容易验证到,容易造成芯片bug。ram访问冲突的类型通常有访问接口冲突和访问地址冲突。
发表于 11-13 10:44
•1577次阅读
本帖最后由 tovax 于 2014-8-14 15:19 编辑
链接文件中,放入RAM区的三个段代码如下
发表于 08-14 15:08
TI的工程师以及各位朋友:
我最近在调试Multicore Navigator,我在初始化时设置使用内部的link ram0 , 调试过程中我想观察link ram0 中
发表于 06-21 01:10
关于IC中 LVDS接口的传输速率最大最小值,是由什么决定的,IC的制程吗
发表于 06-22 21:46
当前dram技术发展趋势 关于Ram on Net的三个设想 Ram on Net对系统软件的需求探讨 005年主流DRAM性能预测 带宽 RDRAM 600MHz , 9.6 GB/s DDR-II 400MHz , 6.4
发表于 11-03 22:39
•25次下载
说起屏幕自动刷新RAM,就要先要说说屏幕RAM这个名词,可能很多人都会将屏幕RAM等同于屏幕自动刷新RAM,但两者是不能划等号的,因为屏幕RAM
发表于 10-17 10:36
•4次下载
从芯片器件的角度讲,FPGA本身构成了半定制电路中的典型集成电路,其中含有数字管理模块、内嵌式单元、输出单元以及输入单元等。关于FPGA芯片有必要全面着眼于综合性的芯片优化设计,通过改进当前的芯片
发表于 07-20 14:26
•2178次阅读
关于Block RAM的寄存器输出,我们在《通过RTL改善时序的技巧之Block RAM的输出》中介绍过。如果我们在时序报告中关键路径上看到这样一条信息: 在第一级的C2Q delay
发表于 03-26 15:50
•1774次阅读
关于ROM和RAM的常见问题分析。
发表于 11-19 15:51
•2771次阅读
在STVDCOSMIC在RAM中运行代码stm8 ram中运行程序(电源技术期刊主编)-在STVDCOSMIC在RAM
发表于 09-17 17:12
•12次下载
。 很多小伙伴就有这样的疑问:现在固态硬盘都以 T 为单位了,手机电脑内存都是8G、甚至32G了,为什么单片机RAM连1M都不到? 今天就来讲讲关于RAM以及单片机内存少的几点内容。 (备注:本文
发表于 11-19 11:30
•3269次阅读
关于dsp的adc程序在RAM和ROM中运行的问题不知各位有没有这种经历,调试dsp28035的时候,明明调试过程中没有问题,但是当程序固化到ROM
发表于 12-20 19:16
•17次下载
电子发烧友网站提供《TANDY WP 2 RAM IC卡开源分享.zip》资料免费下载
发表于 07-15 14:31
•0次下载
单片机中的RAM vs ROM
发表于 09-28 17:57
•1120次阅读
在IC设计中,我们有时会使用深度很大,位宽很小的ram。例如深度为1024,位宽为4bit的ram。
发表于 03-04 15:08
•2072次阅读
评论