自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 YUV444转YUV422算法实现

input wire [23:0] data_in, // 输入数据 (Y[23:16], U[15:8], V[7:0])// 状态 (0: 等待第一个像素, 1: 等待第二个像素)output reg [15:0] data_out, // 输出数据 (YUV422, 16-bit)// 像素位置标志 (0: 奇数像素, 1: 偶数像素)// 下一周期输出第二个16-bit: {Y1, V_avg}

2025-06-30 11:48:08 889

原创 ISP YUV模型介绍

YUV 模型是数字媒体的基石,通过。

2025-06-29 15:21:48 549

原创 异步复位信号释放与亚稳态的详细解释

当输入信号在时钟边沿的时序窗口内变化时,寄存器的输出可能进入一个介于高电平和低电平之间的不确定状态(亚稳态),并需要额外时间才能稳定到确定值。复位信号可能分布到多个寄存器,但因布线延迟不同,某些寄存器的复位释放可能早于时钟边沿,而另一些则稍晚。如果复位信号的释放时刻(从低到高的跳变)恰好接近时钟边沿,则寄存器可能无法正确捕捉到复位信号的跳变。的跳变发生在时钟边沿的亚稳态窗口内,寄存器无法确定输入是“高”还是“低”,导致输出振荡或延迟稳定。异步复位的释放是一个异步事件(与时钟无关),但释放后的逻辑需要。

2025-05-18 15:41:22 204

原创 verilog中initial块使用的说明

data(data) // data 是 wire,由 DUT 驱动。块仅用于仿真,综合工具(如 Vivado、Quartus)会忽略其中的代码。// 通过 reg 间接驱动 wire。// 输出信号声明为 wire。// 必须声明为 reg。表示电路中的物理连线,值由驱动源实时决定,自身不存储状态。,不可综合,硬件初始化依赖复位逻辑。若需在硬件中初始化寄存器,应通过。// 初始化时钟和复位。

2025-04-14 12:12:41 874

原创 芯片测试-LogicBIST详解

(如开路、短路、时序故障等),减少对外部测试设备(ATE, Automatic Test Equipment)的依赖,同时提高测试覆盖率和效率。:将签名与预存的“黄金签名”(Golden Signature)对比,判断电路是否故障。,结合具体场景选择最优实现方案(如混合使用LogicBIST和传统ATE测试)。对被测电路的输出进行压缩和比较(如使用MISR,多输入签名寄存器)。生成伪随机或确定性测试向量(如使用LFSR,线性反馈移位寄存器)。需要测试的逻辑电路(如组合逻辑、时序逻辑)。

2025-04-11 16:41:22 854

原创 静态时序分析(STA)中“Margin”详解

通过分析电路中的所有时序路径,验证设计在特定时钟频率下是否满足建立时间(Setup Time)和保持时间(Hold Time)的要求,数据从起点(Launch Flip-Flop)出发,经过组合逻辑延迟和布线延迟,到达终点(Capture Flip-Flop)的时间。= 时钟周期(10ns) - Setup Time(0.3ns) - 时钟不确定性(0.1ns + 0.5ns) == 发射时钟延迟(0) + 组合逻辑延迟(6ns) + 布线延迟(1ns) =为确保满足时序约束,数据必须到达的最晚时间。

2025-04-02 10:43:17 1641

原创 verilog/systemverilog中宏定义作用域规则

├── def.v // 定义宏 `define DATA_WIDTH 32。// module1.v 和 module2.v 均可使用 `DATA_WIDTH。├── module1.v // 使用 `DATA_WIDTH。├── module2.v // 使用 `DATA_WIDTH。└── subdir/module3.v // 使用 `DATA_WIDTH。`include "def.v" // 显式包含宏定义。

2025-03-28 17:56:07 1490

原创 Analog 差分differential与单端single-ended信号的区别

差分 vs. 单端:差分抗干扰强,单端成本低。一路差分:单声道差分输入(如左声道)。两路差分:立体声差分输入(左右声道均支持差分)。在AMIC中:若支持两路差分,则左右声道均可设为差分模式;若仅一路差分,通常只有单声道支持,另一声道可能受限。实际应用中,需结合具体硬件规格(如ADC通道数、引脚定义)判断声道配置的灵活性。

2025-03-17 10:34:26 573

原创 UVM环境中get_full_name() 方法解析

/ 使用 get_full_name() 打印完整路径。类提供的一个方法,用于获取组件在层次结构中的完整路径名称。当存在多个相同类型组件时,通过完整路径名区分不同实例的行为。:返回当前组件在UVM层次结构中的完整路径名称,格式为。:频繁调用可能对仿真性能有轻微影响,建议仅在需要时使用。是UVM的主要执行阶段,通常用于实现测试逻辑。:主要用于标识日志来源,支持调试和动态配置。:在日志信息中标识消息来源,便于追踪问题。的方法,用于获取组件的完整层次路径。:提升测试平台的可维护性和调试效率。

2025-03-13 12:04:41 886

原创 SystemVerilog中类的继承规则说明

在 SystemVerilog 中,类的继承规则遵循面向对象编程的基本原则,同时需要注意 UVM(通用验证方法学)中。// 显式调用父类配置。// 直接覆盖父类配置。管理执行顺序,可确保父类配置生效,同时允许子类灵活覆盖特定值。若父类配置为关键前置条件,需在文档中明确说明。成员仅父类内部可见,子类无法直接访问。父类配置先执行,子类后续赋值会。,UVM 框架会自动调用父类的。,子类配置完全生效。

2025-03-03 16:16:57 717

原创 关于数字IC开发localsim阶段日志文件的说明

数字IC开发 localsim

2025-02-28 12:08:03 512

原创 关于数字电路中高扇出信号对时序影响以及优化分析

数字电路学习

2025-02-27 10:19:22 770

原创 verilog中参数赋值的相关问题

/ 编译时无法确定 shift 的值。:禁止在需要常量表达式的上下文中使用动态变量(如参数赋值、位宽定义、generate条件等)。if (shift == 3) begin // 编译时 shift 值未知。parameter SHIFT = 3 // 编译时确定的常量。// 直接使用 shift 进行移位。)中,移位位数可以是动态变量,综合工具会生成对应的。// 改为使用常量参数控制 generate 块。// 动态计算 shift 值。,因为它的值是在运行时动态计算的,而常量(如。

2025-02-13 19:23:58 1646

原创 关于verilog中有符号数操作声明等问题

有符号数运算

2025-02-10 17:42:12 724 1

空空如也

空空如也

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

TA关注的人

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