![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数字IC笔记
文章平均质量分 60
WeiXin:FPGA自习室
每天点点滴滴记录所思所见
展开
-
芯片设计:预取FIFO的Verilog硬件实现
预取FIFO实现原理在原有的FIFO的基础上增加使能控制器和输出寄存器单元也就是FWFT Adapt逻辑 。其中使能控制器完成普通FIFO和FWFT FIFO 的rd和empty的转换。输出寄存器则是直接连接FIFO/RAM输出的数据作为最终FWFT FIFO的读数据rdata。FIFO控制器在没有收到有效的读信号时,通过输入寄存器将读地址指向当前待读取的数据的地址(标准FIFO读地址始终指向下一个要读取数据的地址)。也就是说当RAM内有数据时,输出FIFO控制器将ram的读地址预先加1,将数据准备好。原创 2021-08-21 11:04:24 · 2522 阅读 · 0 评论 -
FPGA自习室 交流群发布
FPGA自习室欢迎大家关注,专注于FPGA数字图像,数字音频处理,不断的分享数字IC设计经验,旨在与大家一同学习与进步,一步一个脚印,共同成长。微信公众号:FPGA自习室FPGA自习室 号主:FPGA自习室交流群...原创 2021-08-21 10:50:32 · 627 阅读 · 0 评论 -
芯片设计-如何处理RAM读写冲突?
如何处理RAM读写冲突?原创 2021-07-28 15:11:41 · 1703 阅读 · 0 评论 -
基于Verilog的TCAM硬件实现
**基于Verilog的TCAM硬件实现**一、 背景路由器是网络设备的关键组成部分,它需要接收数据包,然后决定将数据包发送到何处,以便进行IP转发或IP路由。今天的路由器需要在大量数据中进行非常快的查找,以实现快速的数据包路由。其他需要高速搜索的应用程序包括翻译后备缓冲区(TLB)和cpu、数据库引擎和神经网络中的完全关联缓存控制器。虽然设计人员可以从许多选项中选择执行这些搜索,但最有效的方法涉及使用内容寻址存储器(CAMs)。CAMs将搜索数据与存...原创 2021-07-21 19:39:50 · 2462 阅读 · 0 评论 -
Verilog基础(上)
本文主要讲述日常在RTL Coding 时高频出现的几个关键词,熟练掌握不仅可以使得代码简洁,而且效率也可以大大提升。本文介绍的关键词有:parameter、localparam、define、ifdef elseendif generate、for、function和`include。一、parameter作用 : 常用于模块间参数传递,参数化设计。范围 : 本module内有效的定义,且定义未声明位宽时系统一般默认32bit。dram#(.RAM_WIDTH (RAM_WIDTH ),原创 2021-07-06 23:17:09 · 373 阅读 · 0 评论 -
IPv4和IPv6的数据报结构头部详解
IP数据报 1. IP数据报究竟是个什么鬼 IP是TCP‘/IP协议族中的核心协议。所有UDP、TCP、ICMP和IGMP数据都是通过IP数据报传输。IP提供了一种尽力而为、无连接的数据报交付服务。 1.尽力而为的含义是IP数据报在传送到目的地的时候,有可能会丢弃一部分流量(这一点由IPv4与IPv6中的DS字段和ECN两者决定...转载 2021-06-17 17:01:56 · 2738 阅读 · 0 评论 -
MAC知识点006:IEEE802.3 Pause帧解析
MAC知识点006:IEEE802.3 Pause帧解析 1、pause帧出处? 在IEEE802.3协议中规定中,pause帧是一种控制帧,用于控制对端设备暂停发送数据一段时间。802.3-2015_SECTION2 附录31B描述的Pause帧是均可以在1GB/s、10GB/s、40GB/s、100GB/s速率下实现,并不区分速率。 具体描述在802.3-2015_SECTION2 附录...转载 2021-06-17 09:57:15 · 3356 阅读 · 0 评论 -
CDC(四)CDC典型错误案例
CDC典型错误案例一、主要概念**同步逻辑和异步逻辑:**时钟域为由单个时钟或具有固定相位关系的时钟驱动的设计部分。也就是说,在一个模块中一个时钟和他的翻转或者分频时钟认为是相同的时钟域,其所驱动的逻辑是同步逻辑。在一个模块中不具有相同相位和时间关系的时钟被视为不同的时钟域,其所驱动的逻辑是异步逻辑。亚稳态:如果数据传输中不满足触发器的建立时间和保持时间,或者复位过程中复位信号的释放相对于有效时钟沿的恢复时间(recovery time)不满足,就可能产生亚稳态。亚稳态就是无法避免的,亚稳态主要发生在原创 2021-04-03 17:11:06 · 2149 阅读 · 0 评论 -
CDC(三)总线半握手跨时钟域处理
总线半握手跨时钟域处理简要概述:在上一篇讲了单bit脉冲同步器跨时钟处理,本文讲述控制信号基于脉冲同步机制的总线单向握手跨时钟域处理。由于是单向握手,所以比全握手同步效率高一些。总线半握手同步器应用场景:适用有脉冲控制信号的总线跨时钟域处理,不适用电平控制信号。慢到快,快到慢均可,大多数应用于快到慢的场景,尤其是频率比较大时,同步时间不仅要满足单bit脉冲同步器的同步时间,还要保证脉冲同步后采集是更新前总线数据。总线半握手同步器原理框图:总线半握手同步器跨时钟域原理图如下所示,内部使用了脉冲同步原创 2021-04-03 17:03:53 · 1124 阅读 · 1 评论 -
CDC(二)单bit(脉冲)跨时钟域处理
单bit(脉冲)跨时钟域处理简要概述:在上一篇讲了总线全握手跨时钟处理,本文讲述单bit脉冲跨时钟域的处理为总线单向握手跨时钟域处理做准备。脉冲同步器其实就是带边沿检测的单bit同步器,基本原理就是把脉冲信号进行展宽。脉冲同步器应用场景:适用单bit脉冲信号跨时钟域,不适用电平信号。慢到快,快到慢均可,源脉冲间隔至少要为2个目的时钟周期,否则会被漏采。当然,在慢到快时钟比率大于2倍以上时,可以实时采样。脉冲同步器原理框图:脉冲同步器跨时钟域原理图如下所示,使用了1个单bit同步器模块,因为脉冲原创 2021-04-03 17:00:28 · 1724 阅读 · 2 评论 -
CDC(一)总线全握手跨时钟域处理
总线全握手跨时钟域处理简要概述:在芯片设计过程中,一个系统通常是同步电路和异步电路并存,这里经常会遇到CDC也就是跨时钟域处理的问题,常见的处理方法,可能大家也已经比较熟悉了,主要有单bit跨时钟处理、多bit跨时钟处理两大类,本文以一个总线全握手跨时钟域处理为例解析,单bit和多bit跨时钟处理。这里需要注意是多bit含义比较广泛和总线不是一个概念,如果多个bit之间互相没有任何关系,其实,也就是位宽大于1的单bit跨时钟处理问题,如果多个bit之间有关系,作为一个整体,那么我们就叫做总线。因此,大家原创 2021-04-03 16:53:54 · 2105 阅读 · 2 评论 -
RAM的 Parity 与 ECC
RAM的 Parity 与 ECC一、概念介绍1.1 Parity的概念Parity,即奇偶校验位,指在数据存储和传输中,字节中额外增加一个比特位,用来检验错误。它常常是从两个或更多的原始数据中产生一个冗余数据。一个字节数据的校验位等于8bit数据异或即:p=x0x1x2x3x4x5x6^x7。此时,实际的数据传输序列为9bit:数据+奇偶校验位。Parity 这个概念可能最初接触到可能是在使用串口调试助手时,它有个可选的奇偶校验,就是为了指示数据传输过程中,发送方和接受方数据序列1的个数是否一致。原创 2020-10-29 22:30:50 · 2927 阅读 · 0 评论