Spyglass CDC工具使用(二)
2024-09-08 18:51:14
最近一直在搞CDC (clock domain crossing) 方面的事情,现在就CDC的一些知识点进行总结。
做CDC检查使用的是Spyglass工具。以下内容转载自:Spyglass检查之CDC(2) | 码农家园 (codenong.com)
文章目录
- Clock_info01
- Reset_info1
- Setup_clock01
本文主要介绍cdc_setup过程中的rules——clock_info1,reset_info1, setup_clock01,它们报告设计中的时钟树,复位树。
Clock_info01
报告设计中的时钟信号。spyglass可以识别出以下类型clock
描述 | 时钟类型 |
---|---|
普通输入时钟 | Primary Clocks |
黑盒(blackbox)或工艺库单元输出的时钟 | Black box clocks |
寄存器或工艺库单元输出的时钟 | Derived Clocks |
悬空的线或门控锁存器(门控未打开)输出的时钟 | Undrived Clocks |
除去以上情况,锁存器,三态器件或者组合逻辑输出的时钟 | Gated Clocks |
module top (d,q,clk1,sr):
input [3: 0]d;
input clk1, sr;
output [3: 0]q;
reg [3: 0]q:
reg clk3;
wire clk2, clk4, w1;
BB(clk1, clk2, w1);
always @(posedge clk1)
q[0]=d[0];
always @(negedge clk2
q[1]=d[1];
always @(posedge clk3)
q[2]=d[2];
always @(posedge clk1)
if(sr==1)
clk3=0:
else
clk3=-clk3;
always @(posedge clk4)
q[3]=d[3];
endmodule
clk1 是 Primary clock,clk2 是Black box clock,clk3 是Derived Clock,clk4 是Undrived Clocks
Reset_info1
报告设计中的同步复位,异步复位和清除信号
描述 | 复位类型 |
---|---|
普通复位 | Primary Presets/Clears |
黑盒(blackbox)或工艺库单元产生的复位 | Black box Presets/Clears |
寄存器产生的复位 | Derived Presets/Clears |
悬空的线产生的复位 | Undrived Presets/Clears |
锁存器,三态器件产生的复位 | Gated Presets/Clears |
Setup_clock01
报告时钟源,时钟使能信号以及clock cone(不知道翻译成啥)。
设计中多个输入时钟通过选择器后只输出一个时钟,输出的时钟称为clock cone。
最新文章
- 忘记mysq rootl密码
- Method Swizzling
- iOS开发,URL编码和解码
- HTML超标记语言
- DAY7L2【C001】
- java 13-3 int类型的包装包Integer
- tar.xz文件如何解压 (已验证)
- 通过新浪ip地址库获得用户的省份、城市等信息
- [教程] Windows Server 2008 R2架设SMTP服务器发送邮件教程
- URAL 2067 Friends and Berries (推理,数学)
- UI:登录窗的自定义键盘
- 用vim处理字符的大小写转换
- logstash 防止实际处理时间跟事件产生时间略有偏差
- G - Reduced ID Numbers(第二季水)
- c++ - How to use wstring and wcout to output Chinese words in Xcode? - Stack Overflow
- Android最新支持包Design简介
- JS学习笔记Day10
- Jenkins+Jmeter持续集成笔记(四:定时任务和邮件通知)
- Javascript高级编程学习笔记(45)——DOM 操作表格及DOM动态集合
- 利用 ELK 搭建 Docker 容器化应用日志中心