最近一直在搞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。

Spyglass CDC工具使用(二)的更多相关文章

  1. WCF学习之旅—TcpTrace工具(二十六)

    止文(WCF学习之旅—TcpTrace工具(二十五))介绍了关于TcpTrance的一种使用方式,接下来介绍第二种使用方式. 三.通过ListenUri实现基于tcpTracer的消息路由 对于路由的 ...

  2. HTML-DEV-ToolLink(常用的在线字符串编解码、代码压缩、美化、JSON格式化、正则表达式、时间转换工具、二维码生成与解码等工具,支持在线搜索和Chrome插件。)

    HTML-DEV-ToolLink:https://github.com/easonjim/HTML-DEV-ToolLink 常用的在线字符串编解码.代码压缩.美化.JSON格式化.正则表达式.时间 ...

  3. Mac开发必备工具(二)—— iTerm 2

    iTerm 2 简介 iTerm 2 is a terminal emulator for Mac OS X that does amazing things. iTerm 2 有很多能够提升效率的实 ...

  4. Ansible批量自动化管理工具(二)

    Ansible批量自动化管理工具(二) 链接:https://pan.baidu.com/s/1A3Iq3gGkGS27L_Gt37_I0g 提取码:ncy2 复制这段内容后打开百度网盘手机App,操 ...

  5. WCF学习之旅—TcpTrace工具(二十五)

    前面的几篇文章,我们学习了怎么开发WCF应用程序与服务,也学习了如何进行WCF的配置.对于Web Service与WCF服务应用,服务端与客户端的通信是通过收发SOAP Message进行,我们如何有 ...

  6. git版本控制工具(二)----本地版本库的常用操作

    ​[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/ ...

  7. [转] Android自动测试之monkeyrunner工具(二)

    monkeyrunner工具  前言: 最近开始研究Android自动化测试方法,对其中的一些工具.方法和框架做了一些简单的整理,其中包括android测试框架.CTS.Monkey.Monkeyru ...

  8. CDC工具使用

    最近一直在搞CDC (clock domain crossing) 方面的事情,现在就CDC的一些知识点进行总结. 做CDC检查使用的是0in工具. 本来要 写一些关于 CDC的 知识点,临时有事,要 ...

  9. 自动化工具之二:win32gui

    自动化工具win32gui 一.下载安装win32gui 二.Win32gui的使用 1.查找窗体句柄 我们知道的所有空间其实就是窗体,所有的窗口都有一个独立的句柄,要操作任意一个窗体,你都需要找到这 ...

  10. CocoStuff—基于Deeplab训练数据的标定工具【二、用已提供的标注数据跑通项目】

    一.说明 本文为系列博客第二篇,主要讲述笔者在使用该团队提供已经标注好的COCO数据集进行训练的过程. 由于在windows中编译Caffe和Deeplab特别的麻烦,笔者并没有去探索,后续可能会去尝 ...

随机推荐

  1. 查询dockerhub中某镜像所有版本

    curl https://registry.hub.docker.com/v1/repositories/${imagename}/tags | tr -d '[[]" ]' | tr '} ...

  2. WEB漏洞扫描工具之OWASP ZAP

    添加扫描策略 使用新建的扫描策略

  3. zabbix housekeeper 太大 清理

    217G  housekeeper.ibd rename table housekeeper to housekeeper_bak_20220801;Query OK, 0 rows affected ...

  4. php基础教程(三)

    PHP语法概述 A. 基本语法 即使初次接触PHP的用户也会发现自己对PHP的语法风格并不陌生. 例如:<?php echo "Hello!": ?> 显示结果为&qu ...

  5. 钉钉机器人webhook的使用

    1.群启动webhook机器人:右上角设置--智能助手---添加机器人---其他机器人 2.获取webhook地址 3.调用方式不一样,则访问方式就不一样 ---------------------- ...

  6. 打包Assetbundle

    using UnityEngine;using System.Collections;using UnityEditor;/// <summary>/// 脚本位置:Editor文件夹下/ ...

  7. Safari浏览器如何收藏网页?

    Safari浏览器是MacOS所自带的一款功能强劲的浏览器,许多MacOS的用户在使用过Safari浏览器后就不会去下载其他浏览器了.对于很多Mac新手用户来说,如何使用Safari浏览器来收藏喜欢的 ...

  8. 24 Django模块的导入--常用总结

    常用模块导入 1 forms # forms组件的使用 from django import forms 2 ValidationError # modelform报错时使用 from django. ...

  9. 查看linux机器上的cpu个数

    1. 查看 cpu 的物理核数cat /proc/cpuinfo| grep "physical id"| sort| uniq| wc -l 查看每个物理CPU中core的个数( ...

  10. js 正则表达式与 python正则表达式

    修饰符 1.js i g m i 忽视大小写g 执行全局匹配(查找所有匹配,而非找到第一个匹配后停止)m 执行多行匹配gi 全局匹配+忽略大小写 2.python re.Ire.IGNORECASE让 ...