Spyglass CDC工具使用(二)
最近一直在搞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工具使用(二)的更多相关文章
- WCF学习之旅—TcpTrace工具(二十六)
止文(WCF学习之旅—TcpTrace工具(二十五))介绍了关于TcpTrance的一种使用方式,接下来介绍第二种使用方式. 三.通过ListenUri实现基于tcpTracer的消息路由 对于路由的 ...
- HTML-DEV-ToolLink(常用的在线字符串编解码、代码压缩、美化、JSON格式化、正则表达式、时间转换工具、二维码生成与解码等工具,支持在线搜索和Chrome插件。)
HTML-DEV-ToolLink:https://github.com/easonjim/HTML-DEV-ToolLink 常用的在线字符串编解码.代码压缩.美化.JSON格式化.正则表达式.时间 ...
- Mac开发必备工具(二)—— iTerm 2
iTerm 2 简介 iTerm 2 is a terminal emulator for Mac OS X that does amazing things. iTerm 2 有很多能够提升效率的实 ...
- Ansible批量自动化管理工具(二)
Ansible批量自动化管理工具(二) 链接:https://pan.baidu.com/s/1A3Iq3gGkGS27L_Gt37_I0g 提取码:ncy2 复制这段内容后打开百度网盘手机App,操 ...
- WCF学习之旅—TcpTrace工具(二十五)
前面的几篇文章,我们学习了怎么开发WCF应用程序与服务,也学习了如何进行WCF的配置.对于Web Service与WCF服务应用,服务端与客户端的通信是通过收发SOAP Message进行,我们如何有 ...
- git版本控制工具(二)----本地版本库的常用操作
[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/ ...
- [转] Android自动测试之monkeyrunner工具(二)
monkeyrunner工具 前言: 最近开始研究Android自动化测试方法,对其中的一些工具.方法和框架做了一些简单的整理,其中包括android测试框架.CTS.Monkey.Monkeyru ...
- CDC工具使用
最近一直在搞CDC (clock domain crossing) 方面的事情,现在就CDC的一些知识点进行总结. 做CDC检查使用的是0in工具. 本来要 写一些关于 CDC的 知识点,临时有事,要 ...
- 自动化工具之二:win32gui
自动化工具win32gui 一.下载安装win32gui 二.Win32gui的使用 1.查找窗体句柄 我们知道的所有空间其实就是窗体,所有的窗口都有一个独立的句柄,要操作任意一个窗体,你都需要找到这 ...
- CocoStuff—基于Deeplab训练数据的标定工具【二、用已提供的标注数据跑通项目】
一.说明 本文为系列博客第二篇,主要讲述笔者在使用该团队提供已经标注好的COCO数据集进行训练的过程. 由于在windows中编译Caffe和Deeplab特别的麻烦,笔者并没有去探索,后续可能会去尝 ...
随机推荐
- abap screen页签开发注意事项
问题描述:我比较懒,开发程序的时候所有的页签都是直接公用主程序的按钮功能,这就导致,当我按了按钮之后,SY-UCOMM里保存的是我自建按钮的code, 如果不进行页签跳转,或者按其他按钮的话,直接按下 ...
- Java实现输出三角形
本来是想实现空心的,想了太久没写出来就算了 代码 package com.qaq.strruct;public class TestDemo01 { //打印三角形 //思路:空格的距离和星星的数量成 ...
- Finance财务软件(如何运行该软件)
下载软件 首先,去gitHub下载该项目的release,尽量下载最新版本:https://github.com/edwardorchis/finance/releases.国内也可以在码云下载htt ...
- 解决uniapp 使用自带 switch 双向绑定视图不更新的问题
使用 this.$set( a, b, c) a:需要更新视图属性对象 b:具体的属性值(就是你要更新视图的属性值) c:传递的参数 this.$set(this.gwjSelet,this.gwj ...
- 分布式事务 seata
seata-server-1.3.0 配置: file.conf: registry.conf: application.yml配置: 配置中心配置文件: 数据库: 使用:
- 在cesium中导出图片
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
- 端口被占用 for mac
启用项目提示端口被占用 解决方案: lsof -i : 3010 杀死占用的进程 kill -9 4804 重新启动
- curl从入门到精通教程
直接看英文版 https://catonmat.net/cookbooks/curl
- ie8 不支持 trim方法
那就自己写一个trim() String.prototype.trim = function() { return this.replace(/(^\s*)|(\s* ...
- quartus报错 Error (10054): Verilog HDL File I/O error at sdram_ctrl_tb.v(6): can't open Verilog Design File "Sdram_params.h"
解决方法:包含完整路径. 比如我一开始是:`include "Sdram_params.h" 错误(改为:`include "F:\FPGA\exce\uart2sdra ...