sky12笔记

ROM (read only memory)的初始值用系统函数 r e a d m e m b / readmemb/ readmemb/readmemh把文件读进来

parameter READ_PATH = "../rtl/lut.mif";
initial begin$readmemb(READ_PATH ,mem);
end

always组合逻辑常见错误
1.敏感列表变量不全,会导致RTL sim和Gate sim结果不一致,也就是仿真和综合结果不一致,仿真时c的变化不触发out1,但是在综合电路里触发。因此要做lint check,语法规则检查。

always@(a or b)beginout1 = a+b-c;
end

2.if-else 或 case条件没有列全,导致综合出latch。综合出latch请看

3.One-Hot 译码器:

wire [3:0] sel;//designer must make sure just one-bit is 1'b1 at any time
wire [3:0] d;
reg        out ;
always @(*)begin
casex(sel)4'b1xxx: out = d[0]; //synopsys full_case parallel_case 4'bx1xx: out = d[0]; //告诉综合工具这是one-hot编码,case是全的且四个分支平行运算4'bxx1x: out = d[0]; //如果不写,case不全,还有4'b0000这种情况4'bxxx1: out = d[0];
endcase
end

另一种写法:

always @(*)begin
case(1'b1)            //synopsys full_case parallel_case 一定要加上综合directivesel[0] : out = d[0];//如果sel[0],[1],[2],[3]都为0,都不匹配,out为维持状态,相当于条件不全,会综合出latchsel[1] : out = d[1];//语法上从上往下匹配,综合出有优先级的mux,因此要加parallel_case告诉工具优先级一样sel[2] : out = d[2];//综合log文件里可以看到full parallel user字样,否则log里会出现latchsel[3] : out = d[3];
endcase
end

4.在always block 开始赋default值,这样即使if-else /case不全,也不会综合成latch。不全时直接使用default值。
5.组合逻辑回圈(combination logic loop)可能导致rtl sim 挂死,仿真时间不往前推进。

wire [7:0] a,b,c;
reg  [7:0] mux_sel;
wire       sel;assign a = c + mux_sel;
always @ (*) beginif(sel)mux_sel = a;elsemux_sel = b;
end

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/479.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Java 文件上传,下载,复制,删除,Zip文件解压缩,文件内容修改,JSON 文件中字段值的修改,递归删除文件夹及其子文件等

Java 文件上传,下载,复制,删除,Zip文件解压缩,文件内容修改,JSON 文件中字段值的修改,递归删除文件夹及其子文件等 ControllerFileUtil Controller 文件批量上传批量删除文件文件下载 import …

sklearn【AUC-ROC】原理,以及绘制ROC曲线!

一、AUC-ROC 介绍 在分类任务中,特别是当数据集中的类别分布不平衡时,评估模型的性能变得尤为重要。AUC-ROC(Area Under the Receiver Operating Characteristic Curve,受试者工作特征曲线下的面积)是一种有效的评估指…

Vue3:组合式API的基本使用

一、前言 本文主要讲述在Vue3中组合式API的基本使用。 二、组合式API的写法 1、数据 组合式API中,数据在setup函数里面声明数据要在return中返回才能在模板中渲染使用如果数据类型不是响应式数据,当数据改变时,已经展示在页面上的数据不会…

S32 Design Studio PE工具配置Power_Manager

工具配置 基本就是默认配置就行,就是在这6个状态里面跳转,重点就是前面2个状态.这个是芯片的电源管理,跟产品的电源管理是两回事。 生成代码 在Generated_Code/pwrMan1.c 里面,对应刚才配置的信息,一共有6个状态。 …

ChatGPT在论文写作中的应用:提升表达与逻辑的双重助力

随着人工智能技术的快速发展,其在科研领域的应用也愈发广泛。AI不仅提升了科研创新的效率,还为科研人员带来了前所未有的便利。本文将从ChatGPT深度科研应用、数据分析及机器学习、AI绘图以及高效论文撰写等方面,综述AI如何助力科研创新与效率…

土壤水分检测仪中应用的数字电容传感芯片

土壤水分检测仪,它是基于频域反射(Frequency Domain Reflectometry,FDR)原理,能够准确对传感器周围的土壤水分情况进行监测,可对10cm、20cm、30cm、40cm、50cm的较多5个监测层面进行测量。广泛应用于农田蒸散、作物耗水…

【话题】程序员如何搞副业,简单探讨下

大家好,我是全栈小5,欢迎阅读小5的系列文章,这是《话题》系列文章 目录 背景前提条件打造私域广结朋友平台 技能转化为价值1. 副业途径2. 如何开展3. 未来趋势与建议4. 挑战与策略5. 规划与发展 文章推荐 背景 程序员不仅拥有将抽象概念转化…

文献速递:深度学习胶质瘤诊断---使用深度学习在 MRI 图像中进行低级别胶质瘤的脑肿瘤分割和分级

Title 题目 Brain tumor segmentation and grading of lower-grade glioma using deeplearning in MRI images 使用深度学习在 MRI 图像中进行低级别胶质瘤的脑肿瘤分割和分级 01文献速递介绍 胶质瘤是最常见的脑肿瘤,根据肿瘤的恶性程度和生长速率具有不同的分级…

婴儿用的洗衣机买哪种好?四款超实用高质量婴儿洗衣机推荐!

近几年科技高速发展,我们的生活也因此变得更加便捷、健康高效。尤其是在家庭生活中,各种新兴家电的出现让我们的生活变得更加健康卫生。婴儿洗衣机也为现代家庭提供了极大的便捷。由于婴儿刚出生免疫力比较弱,所以建议婴儿的衣物尽量和大人的…

操作系统命令(贪吃蛇项目)

🏝1.获得句柄 GetStdHandle是⼀个Windows API函数。它用于从⼀个特定的标准设备(标准输入、标准输出或标 准错误)中取得⼀个句柄(用来标识不同设备的数值),使用这个句柄可以操作设备。 ⛳️函数原型&…

多线程(60)SynchronousQueue和它的用途

SynchronousQueue是一个没有存储空间的阻塞队列,它是java.util.concurrent包中的一部分。每一个put操作必须等待一个take操作,反之亦然。SynchronousQueue内部并不维护任何元素的存储,可以认为它是一种线程之间一对一传递消息的机制。 核心特…

ArrayList的并集、交集、差集

并集&#xff1a; //并集操作&#xff1a;将另一个容器中的元素添加到当前容器中List<String> a new ArrayList<>(); a.add("a"); a.add("b"); a.add("c");List<String> b new ArrayList<>(); b.add("a");…

MySQL出现Waiting for table metadata lock的原因方法

MySQL在进行alter table等DDL操作时,有时会出现Waiting for table metadata lock的等待场景。而且,一旦alter table TableA的操作停滞在Waiting for table metadata lock的状态,后续对TableA的任何操作(包括读)都无法进行,因为他们也会在Opening tables的阶段进入到Waiti…

力扣:219. 存在重复元素 II

力扣&#xff1a;219. 存在重复元素 II 给你一个整数数组 nums 和一个整数 k &#xff0c;判断数组中是否存在两个 不同的索引 i 和 j &#xff0c;满足 nums[i] nums[j] 且 abs(i - j) < k 。如果存在&#xff0c;返回 true &#xff1b;否则&#xff0c;返回 false 。 …

SIP-7035 隧道广播功率放大器 校园网络广播功放sip定压功放

SIP-7035 隧道广播功率放大器 校园网络广播功放sip定压功放 产品介绍18123651365微信 SIP-7035是我司的一款合并式定压功放&#xff0c;支持标准SIP协议&#xff0c;具有10/100M以太网接口&#xff0c;后面板上有2组AUX音源输入和6.35mm接口的麦克风输入&#xff0c;可以输入…

Grass注册不了、按钮灰色的解决方案

近期相信grass挂机项目不少人有所有接触。还有不了解这个项目的可以看看博客&#xff1a; http://t.csdnimg.cn/bI4UO 但是不少人注册时遇到无法注册的问题&#xff0c;或者是注册按钮显示灰色&#xff0c;放上鼠标时显示禁止。这也是博主在尝试时遇到的问题。 经过探索&…

二维数组之前缀和下篇

在此之前&#xff0c;可以先去看看二维数组之二维前缀和首篇和二维数组之前缀和中篇。 最大子数组和 给你一个整数数组 nums &#xff0c;请你找出一个具有最大和的连续子数组&#xff08;子数组最少包含一个元素&#xff09;&#xff0c;返回其最大和。 示例 1&#xff1a; …

RabbitMQ和Minio实现头像存储

使用 RabbitMQ 处理用户头像上传任务&#xff0c;同时将用户头像存储在 Minio 中是一个常见的应用场景。该示例将展示如何在 Spring Boot 项目中使用 RabbitMQ 和 Minio 实现此功能。示例包括两个部分&#xff1a;一是将头像上传任务推送到 RabbitMQ 队列中&#xff1b;二是从队…

GPT人工智能在线网页版大全

平民不参与内测&#xff0c;还能使用 ChatGPT 吗&#xff1f; 自去年 ChatGPT 爆红以来&#xff0c;关于它的消息铺天盖地。如果你真的想使用它&#xff0c;途径有很多。除了官方网站外国内还有许多 ChatGPT 的镜像网站&#xff0c;其中不乏免费的 3.5 版本。虽然有些网站需要…

2024年04月18日优雅草便民tools开源-git以及dcloud同步-长期更新

优雅草小工具-数据来自优雅草api赋能 优雅草小工具-数据来自优雅草api赋能-优雅草便民工具是一款由成都市一颗优雅草科技有限公司打造的便民查询公益工具&#xff0c;2024年1月17日正式发布v1.0.0版本&#xff0c;本工具为了方便大众免费使用&#xff0c;本生活小工具会陆续加入…