用硬件思维去理解verilog

2018-08-31 16:49 次阅读
· 基本硬件设计模式 · 读者如果学习了verilog,并且有了一定的实践经验的话应该强烈的感受到,verilog和软件(诸如C/C++)有着本质且明显的差别,是一条不可跨越的鸿沟。所以初学者把C和verilog拿来作比较是完全没用的,甚至会把初学者绕晕,影响学习效率的提高。 虽然verilog比硬件更抽象,但是最终实现的结果就是一堆硬件电路。所以评价一个verilog代码的好坏不是看代码量多少,而是看最终实现的功能和性能(有速度和面积2方面)。假设面积为S,性能为V,定义品质数Q=S/V,Q越小,设计的电路越成功。 评价一个设计者代码水平较高,只是这个设计由硬件向verilog表现形式转换更流畅,合理。一个设计最终实现的性能,很大程度上取决于设计的硬件方案是否高效合理。这是两回事。 也因上述2点,verilog设计不刻意追求代码简洁,合理的设计方法是首先理解要设计的电路,也就是把需求转化为数字电路,对此电路的结构和连接十分清晰,然后再用verilog表达出这段电路。也就是说,verilog只是简化了电路设计的工作量,本质上就是设计数字电路,永远绕不开电路这点!这也决定了不能凭空去想代码,因为只有存在的电路才是可实现的,而存在的代码未必可以变成存在的电路。 大家也应该知道,在没有verilog这种高级语言之前都是用原理图设计,必须先构思好整个电路框架,才能去实现。有了verilog以后这种思路并没有被抛弃,依然需要大家去思考电路结构,只有深入理解了电路本身,才能够有高效的设计。 · 实例说明 · 世界上没有工作2次就自动停下的触发器,所以下面的电路综合是无法实现的。 repeat(2)@(posedge clk) d <=x; 虽然上述语法很正确,没有毛病,但是是不现实的,现在的技术或者提供的语言还没有抽象到符合语法的都能直接综合成电路,他比较生硬,没有大家想的那么灵活。 至此可以得出一个基本结论,面向硬件的设计模式,就是要从电路特征和行为来编写代码。 例如上面的电路,要实现触发器只工作2次就停止怎么办呢?这个电路是存在的,只是不存在工作2次就自动停下的触发器,所以控制触发器运行2次后关闭使能就可以了。按照这个思路,原理图如下: 上图触发器输入数据x,输出数据d,触发器和计数器使能端由比较器控制,计数到2的时候,计数器和触发器都不使能,这样触发器就只工作了2次。也可以认为是一个简单的状态机,计数器就是状态控制。具体代码请读者思考,首先用上图思路,再用三段式状态机思路,建议二者都写出来,好好比较综合后的RTL图,并且仿真确保结果正确。 看此文之前请千万很熟悉verilog语法,能区分可综合,不可综合语句。
原文标题:面向硬件的设计思维——基本设计模式 文章出处:【微信号:HaveFunFPGA,微信公众号:玩儿转FPGA】欢迎添加关注!文章转载请注明出处。
收藏 人收藏
分享:

评论

相关推荐

无法签出securezip许可证功能消息

大家好, 我正在尝试模拟其中包含ddr的spartan6设计。 该设计利用secureip库中的加密内存控制器块。 在这种特定情况下,“sec...
发表于 11-15 11:20 9次 阅读
无法签出securezip许可证功能消息

明德扬至简设计法原理与应用1.1FPGA简介

第一章 FPGA简介1 什么是FPGAFPGA的官方解释是 : Field-Programmable Gate Array,即现场可编程门阵列,它是在P...
发表于 11-12 15:11 99次 阅读
明德扬至简设计法原理与应用1.1FPGA简介

请问AD1852能否输出直流?若要输出直流,在硬件和软件上如何设计?

请教个问题 AD1852能否输出直流?若要输出直流,在硬件和软件上如何设计? 谢谢!...
发表于 11-12 15:08 16次 阅读
请问AD1852能否输出直流?若要输出直流,在硬件和软件上如何设计?

Verilog 99题:画出CMOS三态缓冲器的电路原理图

图5,CMOS传输门,双向传输,当C=0,~C=Vdd,两个MOS管都截止,输入和输出之间呈现高阻态....
的头像 电子发烧友网工程师 发表于 11-12 14:34 88次 阅读
Verilog 99题:画出CMOS三态缓冲器的电路原理图

Verilog和VHDL之间如何互转

当然阶段四纯属个人的对未来的推测,但是,近年来,FPGA也高速发展,明显有当年汇编语言开发到C高....
的头像 电子发烧友网工程师 发表于 11-12 14:23 94次 阅读
Verilog和VHDL之间如何互转

2017年全球智能电表出货量达1.7亿台

2017年全球智能电表的年出货量首次超过1亿台,总计出货量达到1.7亿台。由于电表制造商每年为硬件和....
发表于 11-11 10:10 161次 阅读
2017年全球智能电表出货量达1.7亿台

深入分析模拟电路与数字电路的基本知识

作为一位硬件工程师,必须面对的就是两个基本电路:模拟电路和数字电路。下面我们就来了解一下这两个电路的....
的头像 电子工程技术 发表于 11-11 09:40 256次 阅读
深入分析模拟电路与数字电路的基本知识

Verilog hdl硬件描述语言初学入门实验

非门 流水灯 9999计数器
发表于 11-09 20:41 61次 阅读
Verilog hdl硬件描述语言初学入门实验

PCB规范体系之安全距离及相关安全要求

数字电路的频率高,模拟电路的敏感度强,对信号线来说,高频的信号线尽可能远离敏感的模拟电路器件,对地线....
的头像 PCBworld 发表于 11-09 15:16 276次 阅读
PCB规范体系之安全距离及相关安全要求

第3部分:Fritzing社区的演变

在许多小型硬件项目中作为文档工具的Fritzing的普遍存在部分是由于公司添加到布局工具中的水印。
的头像 英特尔 Altera视频 发表于 11-09 06:04 93次 观看
第3部分:Fritzing社区的演变

AVX-512技术的软硬件优化

随着AVX-512等新技术的推出,优化矢量化变得越来越重要。 软件必须高效地进行线程化和高效矢量化....
的头像 英特尔 Altera视频 发表于 11-08 06:07 78次 观看
AVX-512技术的软硬件优化

数字电路设计仿真测试的电子教材免费下载

《数字电路设计·仿真·测试》是2010年8月1日华中科技大学出版社出版的图书。本书基础实验项目均含有....
发表于 11-06 18:56 56次 阅读
数字电路设计仿真测试的电子教材免费下载

可以使用SPI组件进行Verilog编程吗

你好, 可以使用SPI组件进行Verilog编程。 以上来自于百度翻译      以下为原文  &nbs...
发表于 11-06 17:22 54次 阅读
可以使用SPI组件进行Verilog编程吗

verilog在psoc中延迟

大家好 使用Verilog语言,可以在PSoC中创建类似CysDelay-()、CysDelayUs()的毫秒级或微秒级延迟。……任何人请帮助...
发表于 11-06 14:17 25次 阅读
verilog在psoc中延迟

有没有选项可以通过使用verilog而不给出时钟作为输入信号来在psoc中产生500 ms的延迟

在没有给出时钟作为输入信号的情况下,使用Verilog可以在PSoC中产生500毫秒延迟吗? 以上来自于百度翻译   &n...
发表于 11-06 14:07 37次 阅读
有没有选项可以通过使用verilog而不给出时钟作为输入信号来在psoc中产生500 ms的延迟

明德扬FPGA连载课程第一阶段第三章VERILOG(2)

3.2 数字3.2.1数字表示方式      在Verilog中的数字表示方式,最常用的格式是:’,如,4’b1011。  ...
发表于 11-06 09:21 105次 阅读
明德扬FPGA连载课程第一阶段第三章VERILOG(2)

Verilog代码不工作

你好, 我想把时钟脉冲输入到一个输出引脚中,在计数除掉那个时钟之后,我用这个代码附加我的代码,但是这不工作。 模块组件01...
发表于 11-05 14:32 43次 阅读
Verilog代码不工作

准备学习单片机,该做哪些准备呢?

这估计是争论最大的一个问题了,有些人坚持学单片机软件一定要用汇编,也有人坚持选择高级语言。C51刚推....
的头像 玩转单片机 发表于 11-05 11:00 388次 阅读
准备学习单片机,该做哪些准备呢?

回流的基本概念,芯片互连引起的回流问题

如图3.1所示, PCB板上每条导线和其回路构成一个电流环路,根据电磁辐射原理,当突变的电流流过电路....
的头像 玩转单片机 发表于 11-05 10:51 389次 阅读
回流的基本概念,芯片互连引起的回流问题

常见电子类硬件笔试题整理大全(含答案)快来学习吧

硬件电子工程师常见笔面试题目,包含数电模电知识,单片机及信号处理,内含名企面试真题。
发表于 11-05 08:00 54次 阅读
常见电子类硬件笔试题整理大全(含答案)快来学习吧

如何利用英特尔物联网开发人员套件解决复杂问题

深入探讨英特尔®物联网开发人员套件的各种组件的使用,包括硬件,软件工具,库和云。
的头像 英特尔 Altera视频 发表于 11-05 06:26 250次 观看
如何利用英特尔物联网开发人员套件解决复杂问题

硬件工程师应该会使用哪些最基本的关于硬件方面的软件?

作为一个学习硬件的小白,硬件工程师应该会使用哪些最基本的关于硬件方面的软件? ...
发表于 11-02 11:50 170次 阅读
硬件工程师应该会使用哪些最基本的关于硬件方面的软件?

英特尔Advisor的矢量化工作流程

本入门视频介绍了英特尔®Advisor的矢量化工作流程。
的头像 英特尔 Altera视频 发表于 11-01 06:27 156次 观看
英特尔Advisor的矢量化工作流程

如何在Windows上设置英特尔硬件加速执行管理器

了解如何在Windows上设置英特尔®硬件加速执行管理器(英特尔®HAXM),以帮助您的Androi....
的头像 英特尔 Altera视频 发表于 11-01 06:23 176次 观看
如何在Windows上设置英特尔硬件加速执行管理器

第3部分:开源硬件的衍生产品示例

Alicia提供了一些基于开源硬件和相关社区的衍生产品示例。
的头像 英特尔 Altera视频 发表于 11-01 06:13 169次 观看
第3部分:开源硬件的衍生产品示例

第2部分:什么是开源硬件

在下一部分中,Alicia总结了开源硬件(OSH)的定义。
的头像 英特尔 Altera视频 发表于 11-01 06:11 199次 观看
第2部分:什么是开源硬件

第1部分:开源硬件协会的历史发展

在我们的第一次会议期间,我们与开源硬件协会(OSHWA)执行董事Alicia Gibb谈论开源硬件运....
的头像 英特尔 Altera视频 发表于 11-01 06:10 164次 观看
第1部分:开源硬件协会的历史发展

数字图像是怎么通过模拟转为数字的?

还记得数字电路上对应的实验都是VHDL的实验吗?数字电路告诉我们各种数字逻辑:非或与异。这些逻辑让我....
的头像 FPGA2嵌入式 发表于 10-31 15:18 307次 阅读
数字图像是怎么通过模拟转为数字的?

面包板的结构和使用方法详细介绍

面包板是实验室中用于搭接电路的重要工具,熟练掌握面包板的使用方法是提高实验效率,减少实验故障出现几率....
发表于 10-31 08:00 86次 阅读
面包板的结构和使用方法详细介绍

英特尔至强融合™协处理器硬件和软件架构介绍(4-1)

第1部分,共4部分 - 英特尔®至强融合™协处理器硬件和软件架构介绍
的头像 英特尔 Altera视频 发表于 10-30 06:10 377次 观看
英特尔至强融合™协处理器硬件和软件架构介绍(4-1)

FPGA Verilog的扫频程序详细资料免费下载

本文档的主要内容详细介绍的是FPGA Verilog的扫频程序详细资料免费下载,可以跟随信号发生器的....
发表于 10-26 08:00 40次 阅读
FPGA Verilog的扫频程序详细资料免费下载

如何学习FPGA学习FPGA的详细经验有哪些阶段

学习FPGA我主要经历了这么几个阶段: ①、Verilog语言的学习,熟悉Verilog语言的各种....
发表于 10-25 18:01 69次 阅读
如何学习FPGA学习FPGA的详细经验有哪些阶段

电子技术基础知识教程之模拟电路和数字电路的知识详细概述

本文档的主要内容详细介绍的是电子技术基础知识教程之模拟电路和数字电路的知识详细概述主要内容包括了:半....
发表于 10-25 08:00 155次 阅读
电子技术基础知识教程之模拟电路和数字电路的知识详细概述

新思科技宣布将Truphone嵌入式SIM软件整合到DesignWaretRoot硬件安全模块中

2018年10月24日,新思科技宣布,将Truphone嵌入式SIM(eUICC)软件整合到Desi....
的头像 半导体动态 发表于 10-24 15:55 1117次 阅读
新思科技宣布将Truphone嵌入式SIM软件整合到DesignWaretRoot硬件安全模块中

观华大九天的发展历程,便能看到中国EDA的发展之路

其次,华大九天提供数字电路优化工具平台。不像在模拟与混合信号领域有全流程工具,华大九天的数字电路工具....
的头像 DIGITIMES 发表于 10-24 15:08 1051次 阅读
观华大九天的发展历程,便能看到中国EDA的发展之路

盘点2014年上半年最吸引眼球的DIY硬件

2014年上半年已成历史。总的来说,上半年的DIY还是用波澜不惊来形容,没有开天辟地的冲击,只有小修....
的头像 39度创意研究所 发表于 10-23 14:54 267次 阅读
盘点2014年上半年最吸引眼球的DIY硬件

PCB布线与布局的规则详细资料概述免费下载

PCB布线与布局隔离准则:强弱电流隔离、大小电压隔离,高低频率隔离、输入输出隔离、数字模拟隔离、输入....
发表于 10-18 15:11 99次 阅读
PCB布线与布局的规则详细资料概述免费下载

PCB中数字地和模拟地有什么区别?有什么处理方法?基本原则是怎样的

二者本质是一直的,就是数字地和模拟地都是地。要明白为什么要分开,先听一个故事;我们公司的商务楼,2楼....
发表于 10-18 08:00 97次 阅读
PCB中数字地和模拟地有什么区别?有什么处理方法?基本原则是怎样的

FPGA的设计流程是怎么样的?FPGA设计流程指南详细资料免费下载

本文档的主要内容详细介绍的是FPGA的设计流程是怎么样的?FPGA设计流程指南详细资料免费下载内容包....
发表于 10-17 17:50 57次 阅读
FPGA的设计流程是怎么样的?FPGA设计流程指南详细资料免费下载

揭露亚马逊狂发11款硬件背后的野心

中秋节前,当中国老百姓沉浸在假期来临的兴奋中时,亚马逊在美国开了一场几乎被国内科技圈忽视的发布会
的头像 传感器技术 发表于 10-17 17:22 1136次 阅读
揭露亚马逊狂发11款硬件背后的野心

怎样学好数字电子技术?数字电子技术的数制和码制详细资料介绍

模拟信号:时间和数值上连续的信号。 数字信号:时间和数值上是离散的信号。 处理模拟信号的电路称为....
发表于 10-17 08:00 63次 阅读
怎样学好数字电子技术?数字电子技术的数制和码制详细资料介绍

数字电路基础之组合逻辑电路的详细资料概述

本文档的主要内容详细介绍的是数字电路基础之组合逻辑电路的详细资料概述包括了:1.组合逻辑电路的特点2....
发表于 10-17 08:00 63次 阅读
数字电路基础之组合逻辑电路的详细资料概述

数字电路基础教程之时序逻辑电路的详细资料概述

本文档的主要内容详细介绍的是数字电路基础教程之时序逻辑电路的详细资料概述。内容包括了:1.时序逻辑电....
发表于 10-17 08:00 64次 阅读
数字电路基础教程之时序逻辑电路的详细资料概述

数字电路基础教程之脉冲波形的产生和整形的详细资料概述

本文档的主要内容详细介绍的是数字电路基础教程之脉冲波形的产生和整形。主要介绍的内容是:1.555定时....
发表于 10-17 08:00 48次 阅读
数字电路基础教程之脉冲波形的产生和整形的详细资料概述

数字电路的基础知识之DA转换器和AD转换器的详细资料免费下载

数字信号 模拟信号——数-模转换:DAC 模拟信号 数字信号——模-数转换:ADCD/A转换可以将....
发表于 10-17 08:00 58次 阅读
数字电路的基础知识之DA转换器和AD转换器的详细资料免费下载

数字电路数字逻辑试卷模拟题和答案的详细资料免费下载

本文档的主要内容详细介绍的是数字电路数字逻辑试卷模拟题和答案的详细资料免费下载。
发表于 10-17 08:00 45次 阅读
数字电路数字逻辑试卷模拟题和答案的详细资料免费下载

数字电路试卷及答案快来复习吧!

本文档的主要内容详细介绍的是数字电路试卷及答案快来复习吧!
发表于 10-17 08:00 45次 阅读
数字电路试卷及答案快来复习吧!

Verilog数字系统设计教程(第二版)电子教材免费下载

本书讲述了自20世纪90年代开始在美国和其他先进的工业化国家逐步推广的利用硬件描述语言(Verilo....
发表于 10-16 15:43 35次 阅读
Verilog数字系统设计教程(第二版)电子教材免费下载

如何设计常用模块的Verilog HDL?

本文档的主要内容详细介绍的是常用模块的Verilog HDL设计详细资料免费下载。
发表于 10-16 11:12 38次 阅读
如何设计常用模块的Verilog HDL?

谷歌发布多款硬件设备,竟然不如软件好用?

谷歌凌晨举办了秋季新品发布会议,一口气公布了多款硬件设备,其中就包括Pixel 3系列手机等等。
的头像 科技美学 发表于 10-16 10:40 565次 阅读
谷歌发布多款硬件设备,竟然不如软件好用?

什么是模拟电路 什么是数字电路

  模拟信号和数字信号的特点不同,处理这两种信号的方法和电路也不同。一般地, 电子电路可分为模拟电路....
的头像 HOT-ic 发表于 10-16 10:25 408次 阅读
什么是模拟电路 什么是数字电路

高速走丝电火花线切割机电气原理与维修电子教材免费下载

本书从维修的角度,介绍了普通高速走丝线切割机床电气系统的基本原理、常见电路、检修要点以及检修实例,并....
发表于 10-15 08:00 84次 阅读
高速走丝电火花线切割机电气原理与维修电子教材免费下载

如何设计一个计时器?篮球竞赛30秒计时器的毕业设计资料免费下载

本课程设计是脉冲数字电路的简单应用,设计了篮球竞赛30秒计时器。此计时器功能齐全,可以直接清零、启动....
发表于 10-12 08:00 63次 阅读
如何设计一个计时器?篮球竞赛30秒计时器的毕业设计资料免费下载

FPGA中的testbench介绍

跟大家解释一点,所有testbench本质上都是串行执行,因为在CPU环境下,没有可靠并行执行的能力....
的头像 FPGA极客空间 发表于 10-10 16:14 429次 阅读
FPGA中的testbench介绍

为什么眼图测量已经成为今天高速串行数据测试的最重要的项目?

PTopsigma即为眼图波形顶部的噪声标准偏差或均方根值,PBasesigma为眼图波形底部的噪声....
的头像 电子发烧友网 发表于 10-09 09:30 581次 阅读
为什么眼图测量已经成为今天高速串行数据测试的最重要的项目?

硬件会议系统与软件会议系统的区别是什么

近几年,视频在互联网总流量的占比达到80%以上,其中视频会议的使用呈现高增长态势,视频会议和智能化都....
的头像 讯维官方公众号 发表于 10-05 09:21 483次 阅读
硬件会议系统与软件会议系统的区别是什么

数字电子技术实验教程(第二版)电子教材免费下载

全书的内容分上、下两篇。上篇是数字电子技术实验部分,在内容的选择上侧重基础实验,以培养学生的基本实验....
发表于 09-27 16:29 114次 阅读
数字电子技术实验教程(第二版)电子教材免费下载

FPGA控制多轴电机使用verilog编写圆弧,直线插补功能资料免费下载

本文档的主要内容详细介绍的是FPGA控制多轴电机,实现圆弧,直线插补功能,利用verilog语言编写....
发表于 09-26 08:00 76次 阅读
FPGA控制多轴电机使用verilog编写圆弧,直线插补功能资料免费下载

Verilog和VHDL的状态机设计技术的详细资料免费下载

设计同步有限状态机(FSM)是数字逻辑工程师的共同任务。本文将讨论SimopySesign CPLI....
发表于 09-25 08:00 98次 阅读
Verilog和VHDL的状态机设计技术的详细资料免费下载

如何使用Verilog HDL设计2位16进制的计数器详细程序分析

实验目的:学习计数器的设计、仿真和硬件测试方法。 实验内容及步骤:
发表于 09-21 16:15 94次 阅读
如何使用Verilog HDL设计2位16进制的计数器详细程序分析