自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(8)
  • 收藏
  • 关注

原创 《硬件架构的艺术》学习笔记(4)---时钟分频设计

时钟分频设计主要分享两部分:1)整数分频、2)小数分频。1. 整数分频整数分频又分为:1.1)偶数分频、1.2)奇数分频 {50%占空比}1.1偶数分频以4分频电路为例。以计数器的方式来实现。当cnt = 0 和 cnt = 2 的(在cnt = 1 和 cnt = 3 )时候将输出取反。需要两个always块便可以描述。**verilog实现技巧:下述代码当中,采用<counter[0] == 1>**的方式作为条件于省略掉的代码相比较可以减少硬件资源。module div_

2021-05-06 11:36:50 839 1

原创 《硬件架构的艺术》学习笔记(3.2)---同步FIFO设计

同步FIFO设计对于跨时钟域的数据传输,同步FIFO并不是好选择,异步FIFO才是最好的选择,这是由于同步FIFO的读写时钟相同。那么为什么还要介绍同步FIFO呢???通过学习《硬件架构的艺术》之后,对同步FIFO的“空”“满”标志的生成有了更加深刻的认识,在这里和大家分享、交流一下。同步FIFO的架构我们不必被这一个框一个框的吓唬到,没有什么玄虚的,都可以用verilog硬件语言将其分别描述。主要分为三部分:1)FIFO存储器、2)读/写指针生成、3)状态模块(即空/满信号生成 ---- 重点讨论

2021-05-05 18:48:03 278 3

原创 《硬件架构的艺术》学习笔记(3.1)---跨时钟域设计

多时钟设计在进行一个含有多个时钟的设计时,在仿真和综合过程中遵循一定的准则将会带来巨大的好处。信号命名法系统时钟:sys_clk; (system )发送时钟:tx_clk; (transmit )接受时钟:rx_clk; (receive )源信号:src_sig; (sorce )目标信号:dest_sig; (destination)跨时钟域对于跨时钟域的信号传输问题,从信号的性质方面考虑分为两方面:1)控

2021-05-05 16:17:40 314 4

原创 《硬件架构的艺术》学习笔记(2.3)---复位信号设计

同步复位进行设计带同步复位的可加载触发器硬件实现。使用同步复位会出现一个问题:综合工具无法分辨复位信号和其他数据信号。 综合工具可能综合出下图所示的电路结构。**在门级仿真的时候可能出现的问题:**当rst_n信号为低时,mux的输入都为低。然而倘若加载信号load为未知态时,那么mux的输出将为未知态。实际电路没有此问题。同步复位的优点同步复位一般能确保电路100%同步的。同步复位会综合为更小的触发器,特别在该复位信号被触发器的输入逻辑门控时。同步复位确保复位只发生在有效时钟沿。时钟可

2021-05-03 21:33:12 255 2

原创 《硬件架构的艺术》学习笔记(2.2)---高效门控时钟

组合逻辑搭建的时钟产生器会引入毛刺,使功能出现问题。在同步设计中,数据输入端的毛刺不会引起任何问题,因为数据是在时钟边沿处捕获的。然而毛刺或尖峰脉冲出现在时钟输入端(或者寄存器的异步输入端)就会产生明显的影响。内部产生的时钟时钟信号要求全部从PLL产生。内部产生的时钟信号会出现毛刺。窄毛刺信号会违背寄存器的最小脉冲宽度要求**(寄存器对时钟信号也有要求)。**在毛刺到达时钟输入端时,如果寄存器的数据发生变化,会违背建立和保持时间。可以通过在组合逻辑后加入一级触发器加以过滤毛刺。tco:时钟边沿到数据

2021-05-03 17:25:36 280 1

原创 《硬件架构的艺术》学习笔记(2.1)---同步设计技术

同步设计技术在同步设计中,由单个主时钟和单个主置位/复位信号驱动设计中所有的时序器件。设计中易于忽略的组合延迟在进行RTL代码编写的过程中,往往只注重逻辑的verilog实现而忽略了其映射到实际的硬件实现。为了写出结构良好的和可综合的RTL代码,我们也应该注意到代码当中会潜在的涉及组合逻辑延迟。1. 避免使用行波计数器用触发器的输出驱动其他触发器的时钟输入端时,由于第一个触发器时钟到Q的延迟而使第二个触发器的时钟输入产生偏移。当连接2个以上的触发器时,会使延迟累加。(实际上对于简单的四分频电路,我

2021-05-03 12:48:14 290 1

原创 《硬件架构的艺术》学习笔记(1)---亚稳态的世界

亚稳态理论亚稳态是由于违背了触发器的建立和保持时间而产生的。如果信号在时钟上升沿前后的这段时间窗口内发生变化,那么输出将来是未知的或者称为“亚稳态”。这种有害状态的传播就叫做亚稳态。图1形象的描述触发器的运转行为。假设球处在一个稳定的状态(0或者1),给球一个足够(满足建立和保持时间的要求)的推力(状态转换),使这个球在规定的时间内越过山顶到达另一个稳定状态。倘若推力不够(不满足建立和保持时间的要求)则会发生以下两种现象:1)球到达山顶后停留一段时间后再到达另一个稳定状态;2)球还没到达山顶便返回原来

2021-05-03 08:52:47 157 2

原创 数字电路设计笔记 - 异步FIFO(读写侧数据位宽不同)

近期参与的项目涉及到异步时钟域下多bit位数据传输的问题,解决的最好的办法便是异步FIFO。在网上查了相关的异步FIFO的资料,对于读写侧数据位宽相同情况下的异步FIFO有所了解。若要是读写侧数据位宽不同就再合适不过了,经过自己的一些改变,完成了该实现。理论知识网上介绍的很是你详细明了,咱们索性单刀直入,直捣黄龙。 一、总体实现架构图 总体实现架构图并没有变化,依旧包括存储模块、读指针及满生成模块、写指针及空生成模块及其两级数据同步模块。...

2020-06-30 22:09:24 7302 6

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除