HDL-数字电路建模的要点】的更多相关文章

Verilog HDL常用建模方式——<Verilog与数字ASIC设计基础>读书笔记(四) Verilog HDL的基本功能之一是描述可综合的硬件逻辑电路.所谓综合(Synthesis)是指将Verilog HDL程序.原理图等设计输入翻译成由与门(and).或门(or).非门(not)等基本逻辑单元组成的门级连接,并根据设计目标和要求对门级逻辑连接进行优化,得到优化的门级网表文件. Verilog HDL主要有三种建模方式: 4.1结构级建模 结构级建模包括门级建模和分层建模两种情况.门级…
https://mp.weixin.qq.com/s/tEDMWf1gk0e7u4hIWKM9bQ   ​​   一. 拓扑   数字电路的拓扑抽象出来之后比较简单,就是线(Wire)和开关(Switch),门(Gate)也由开关组成. 线多了之后,看上去像网,所以Verilog里面的wire的Data Type为net.如果线是网,那么一个个开关及开关组成的门.门组成的寄存器,则可以看出是抽象的节点(Node).   只有两点: 1.线串接各个节点: 2.节点上带有input/output/i…
预备知识: 一.UML的特性与发展现状 UML是一种Language(语言) UML是一种Modeling(建模)Language UML是Unified(统一)Modeling Language 1.已进入全面应用阶段的事实标准 2.应用领域正在逐渐扩展,包括嵌入式系统建模.业务建模.流程建模等多个领域 3.成为“产生式编程”的重要支持技术:MDA. 可执行UML等 二.建模的目的与原则 1.帮助我们按照实际情况或按我们需要的样式对系统进行可视化:提供一种详细说明系统的结构或行为的方法:给出一…
https://mp.weixin.qq.com/s/uWU6i30_q7wJT3yVJ8yqnQ   jchdl:Jianchang Constructed Hardware Description Library,使用Java语言开发的硬件描述库.(Java是商标不让用,那就用名字 :-)   一. 设计目标   1.设计目标   打通IC开发和Java生态,以Java生态的赋能IC开发.   2. 当前路径   当前的路径是基于Java语言,建立硬件建模库(library).使用jchdl…
声明:本文为黑金动力社区(http://www.heijin.org)原创教程,如需转载请注明出处,谢谢! 黑金动力社区2013年原创教程连载计划: http://www.cnblogs.com/alinx/p/3362790.html <FPGA那些事儿--TimeQuest 静态时序分析>REV5.0 PDF下载地址: http://www.heijin.org/forum.php?mod=viewthread&tid=22811&extra=page%3D1 第五章:网表…
声明:本文为黑金动力社区(http://www.heijin.org)原创教程,如需转载请注明出处,谢谢! 黑金动力社区2013年原创教程连载计划: http://www.cnblogs.com/alinx/p/3362790.html <FPGA那些事儿--TimeQuest 静态时序分析>REV2.0 PDF下载地址: http://www.heijin.org/forum.php?mod=viewthread&tid=22393&extra=page%3D1 第二章:模型…
Verilog hdl不是“编程”是“建模” Verilog hdl语言是一种富有“形状”的语言. 如果着手以“建模”去理解Verilog hdl语言,以“形状”去完成Verilog hdl语言的设计.在感觉上Verilog hdl + FPGA是“可所触及”,是一种“实实在在”的感觉,不相等于“编程”时的那种“抽象感”. “低级建模”最基本最简单之意,建模习惯or风格.…
3.5 示例:Boost变换器中包含的半导体传导损耗 作为最后一个示例,让我们考虑对图3.22所示的Boost变换器中的半导体传导损耗进行建模.功率损耗的另一个主要来源是半导体器件的正向电压降引起的传导损耗.金属氧化物场效应晶体管(MOSFET)或双极结型晶体管(BJT)的导通压降可以以合理建模为导通电阻\(R_{on}\).如果是二极管,绝缘栅双极型晶体管(IGBT)或晶闸管,则电压源加上导通电阻会得到精度非常高的模型:如果在单个工作点对变换器建模,则可以省略导通电阻. Fig 3.22 Bo…
1.了解VGA协议 VGA协议有5个输入信号,列同步信号(HSYNC Signal),行同步信号(VSYNC Signal),红-绿-蓝,颜色信号(RGB Signal). 一帧屏幕的显示是由行从上至下扫描,列从左至右填充.     以800x600x60Hz为例: 对于列填充信号:a是拉低的128个列像素,b是拉高的88个列像素,c是拉高的800个列像素,d是拉高的40个列像素. 对于行扫描信号:o是拉低的4个行像素,p是拉高的23个行像素,q是拉高的600个行像素,r是拉高的1个行像素.  …
1.PS2接口与协议时序图 对于PS2的接口来说,需要额外关注的是PIN5与PIN1,一个是时钟,一个是数据.PS2协议对数据的移位是“CLOCK下降沿”有效,其CLOCK的频率通常在10KHz左右.每当CLOCK的下降沿到来时,发送一位数据. 协议时序图 传输数据定义表 第N位 属性 0 开始位 1~8 数据位 9 校验位 10 结束位 要想获得键盘的数据,我们只需要关注(1~8)数据位,其余的位可以忽略,但程序中要给出相应的处理. 2.电平检测模块 下面对PS2解码过程建模,本模型有两个输入…
实验一:永远的流水灯 扫描频率配置为100Hz,即是说扫描周期为10ms.这里需要注意的是扫描周期的概念.流水灯嘛,顾名思义,扫描周期指的是流水灯扫一轮所需要的时间.听到说周期,就应该想到在建模的时候需要写计数器模块,这个计数器模块应该是神一般的独立存在,独立运行.每隔10ms复位一次,复位后又重新开始计数. 实验二:闪耀灯和流水灯 闪耀灯涉及到闪耀频率,流水灯涉及到扫描频率的概率.这里先区分一下闪耀频率和扫描频率的概念.闪耀频率对应闪耀周期,闪耀周期是针对于单个LED灯而言的,即是指LED灯亮…
https://mp.weixin.qq.com/s/Y75I9e3s4fDPZuv-CyiNDA   介绍软件编程思维与硬件建模思维的不同与相似之处.   ​​   1. 软件编程思维   编程,意指编写程序: 程序,即过程的顺序:   软件程序具有天然的串行特性: a. 汇编级别需要等前一条指令执行完成,才能执行下一条指令: b. 语言级别需要等前一条语句执行完成,才能执行下一条语句: c. 语言级别需要等前一个函数调用完成,才能执行下一条语句:   原因在于软件程序最终都会被编译为一条条汇…
1.同步动态扫描 多个数码管的显示采用的是同步动态扫描方法,同步动态扫描指的是:行信号和列信号同步扫描,是一种并行操作. 2.数码管驱动电路实现思路      如果要求数码管显示我们想要的数字,首先需要写一个数据接收模块,这个模块接收数据之后需要做什么样的处理呢?这时候我们会想到两个数码管,其中一个显示十位数字,另一个显示各位数字,即把这个数据的十位传给其中一个数码管,各位数字传给另一个数码管来显示.这样我们就会明确了:数据接收模块需要将接收的数据进行拆分,分别输出其十位数据与个位上的数据 程序…
实验三:按键消抖 首先将按键消抖功能分成了两个模块,电平检查模块和10ms延迟模块.电平检测模块用来检测按键信号的变化(是否被按下),10ms延迟模块用来稳定电平检查模块的输入,进而稳定按键信号,防止其抖动而产生的信号跳变而影响输出. 设计思路:     1.当电平检测模块检查到按键被按下(输入由高电平变为低电平),则拉高H2L_Sig电平,然后拉低. 2.10ms延迟模块,检测到H2L_Sig高电平,则对其进行10ms过滤,拉高输出. 3.当按键被释放,电平检测模块会拉高L2H_Sig电平,然…
这篇博文是写给要入门Verilog HDL及其初学者的,也算是我对Verilog  HDL学习的一个总结,主要是Verilog HDL的程序结构及其描述,如果有错,欢迎评论指出. 一.Verilog HDL的程序结构 首先我们不开始讲Verilog HDL的语法,我们从Verilog HDL的程序结构出发.相信大家都看过芯片吧,它有个名字,有个外壳,外壳向外伸出有引脚(BGA封装的那种请不要乱搅和...),然后芯片它可以实现一定的功能. Ok,知道这些之后,我们就来看看Verilog HDL的描…
文章写到这里,我一直在犹豫是继续写针对中小型框架的设计还是写些框架设计上的进阶方面的内容?对于中小型系统来说,只要将前面的内容进行一下细化,写上二三十章具体开发上的细节,来说明这个通用框架怎么开发的就已完全足够了,因为对于中小型系统来说,并不是很复杂,简单的了解三层架构就已经够用了,而使用太多的设计反而有点罗嗦,因为基本上没有什么人会为中小型系统花费太多的设计工作.而对于设计大型平台的框架设计,又深深感到自己的积累还远远不够,写出来怕会误导大家.但不换个思维来讲述也很难说清框架的设计思想,别人拿…
http://cos.name/2013/03/lda-math-text-modeling/ 4. 文本建模 我们日常生活中总是产生大量的文本,如果每一个文本存储为一篇文档,那每篇文档从人的观察来说就是有序的词的序列 d=(w1,w2,⋯,wn). 包含M 篇文档的语料库 统计文本建模的目的就是追问这些观察到语料库中的的词序列是如何生成的.统计学被人们描述为猜测上帝的游戏,人类产生的所有的语料文本我们都可以看成是一个伟大的上帝在天堂中抛掷骰子生成的,我们观察到的只是上帝玩这个游戏的结果 ——…
作者:秋时 杨昶   时间:2014-02-15  转载须说明出处 3.3.2   基础档案建模 1.在基础档案项目,右击,选择新建包, 2.录入包的名称,录入名称.完成后点确定 3.3.2.1 计量单位 1.右击新增的包,选择新增图表. 2.录入图表的名称,录入计量单位,录入后,点确定 3.双击刚才建立的图表,进入编辑界面 4.选择下方工具栏第1个实体,再点在画布上,并录入实体的名称,录入完成后,点确定 5.查看刚才建立的实体. 6.双击实体,进入实体设计界面.并设置需要的字段.计量单位需要一…
使用 UML 进行业务建模:理解业务用例与系统用例的相似和不同之处   作者:Arthur V. English 出处:IBM   本文内容包括: 背景 业务用例模型与系统用例模型有什么相似之处? 业务用例模型与系统用例模型之间究竟有怎样的差别呢? 我应该为业务建模使用哪些 UML 图? 业务用例模型和系统用例模型之间的关系是什么? 总结 注释 现在对本文进行讨论! 参考资料 本文来自于 Rational Edge:学习有关业务用例与系统用例相似和不同之处的知识,包括应该使用什么样的 UML 图…
中国澳门sinox很多平台CAD制图.PCB电路板.IC我知道了.HDL硬件描述语言叙述.电路仿真和设计软件,元素分析表,可打开眼世界. 最近的研究sinox执行windows版protel,powerpcb,autucad,认为非常麻烦.转念一想,sinox以下事实上也有非常多辅助设计软件可用,但是大家并不知道. 于是花了不少时间逐个研究,最终发现sinox以下有非常多功能强大的2d,3d CAD制图软件,pcb电路板. IC集成电路设计软件.以及电子信号仿真模拟软件. 如此也能做到.为何要去…
Verilog基本上熟悉了,继续整理一下Verilog的学习笔记吧.前面记载了Verilog的结构,写Verilog的结构有了,但是该怎么写呢?在写之前就得了解一下Verilog的一些基本要素了,也就是Verilog是怎么一点一点写出来的. 一.标识符与注释 前面已经说到,模块名的定义要符合标识符的定义,那么什么是标识符呢?它的语法是什么呢? ①标识符是赋给对象的唯一名称,通过标识符可以提及相应的对象,Verilog语法将对转义标识符中的字符逐个处理. ②标识符可以是字母.数字.下划线和美元符$…
ROS机器人程序设计(原书第2版)补充资料 (柒) 第七章 3D建模与仿真 urdf Gazebo V-Rep Webots Morse 书中,大部分出现hydro的地方,直接替换为indigo或jade或kinetic,即可在对应版本中使用. 提供ROS接口的3D软件比较多,本章以最典型的Gazebo介绍为主,从Player/Stage/Gazebo发展而来,现在独立的机器人仿真开发环境,目前2016年最新版本Gazebo7.1配合ROS(kinetic)使用. 补充内容:http://blo…
流水车间调度算法分析的简单+Leapms实践--混合整数规划的启发式建模 清华大学出版社出版的白丹宇教授著作<流水车间与开放车间调度算法渐近分析>采用渐近分析方法分析多个NP-难类启发调度算法的收敛性,学术性很强. 本帖用数学规划模型方法对比精确模型和启发模型之间的差异,从实践角度感觉启发算法的魅力.本帖的要点如下: 1.有人说数学规划模型是精确方法.其实广义地讲,数学规划模型也可以是启发算法,只要你对问题进行启发建模就行. 2.启发建模会牺牲求解精确性,但是对NP-难问题来说,由于对大规模问…
预编译指令: verilog HDL预编译指令是以" ' "字符开头,而且不需要以";"结尾. 作用:指示在编译verilog hdl源代码前,需要执行哪些操作. 'timescale的使用方法: verilog hdl的时序分析是以时间先后为顺序的,时延用'timescale定义的时间单位来表示. 一般一个代码文件就用一个'timescale预编译指令,一般放在文件的开头. 格式:'timescale 时间单位/时间精度 时间单位由数字+单位组成,其中数字只能是1…
本文从本人的163博客搬迁至此. 引用了http://blog.sina.com.cn/s/blog_9424755f0101rhrh.html Verilog HDL中常采用数组方式来对存储器进行建模,其使用方式如下: reg [ msb: 1sb] memory1 [ upper1: lower1],memory2 [upper2: lower2],. . . : 例如:reg [0:3 ] MyMem [0:63]//MyMem为64个4位寄存器的数组.reg Bog [1:5]//Bog…
将陆续上传本人写的新书<自己动手写处理器>(尚未出版),今天是第六篇.我尽量每周四篇 2.3 Verilog HDL简单介绍 本书实现的OpenMIPS处理器是使用Verilog HDL编写的,所以本章接下来的几节将介绍Verilog HDL的一些基本知识.包含语法.结构等.由于本书并非一本讲授Verilog HDL的专门书籍,所以此处介绍的内容并非Verilog HDL的所有,仅仅是一些基础知识.以及在OpenMIPS处理器实现过程中会使用到的知识. 读者假设对Verilog HDL有进一步…
第7章 Windows游戏输入消息处理 1. 键盘消息处理 之前提到的窗口过程函数有两参数与消息输出有关——wParam和llParam LRESULT CALLBACK WindowProc( _In_ HWND hwnd, _In_ UINT uMsg, _In_ WPARAM wParam, _In_ LPARAM lParam ); 当键盘消息触发时,wParam的值为按下按键的虚拟键码,lParam则存储按键的相关状态的信息,因此,如果要对键盘输入的消息进行处理,就可以用一个switc…
来源  <verilog HDL那些事--建模篇> 1.并行建模的思想. 2.每个模块最好只有一个功能.(便于修改和扩展,特别在大的项目中) 典型的 HDL 教科书中,才不会要读者了解“模块的性质”.没有性质的模块,常常会使得初学着在设计上和理解容易陷入“混乱”.反之,如果“模块含有性质”的话,在设计和理解方面,思路会而外的清晰.笔者尝试使用“低级建模”去完成程式设计,感觉都是得心应手,而且设计越发的清晰.虽然“低级建模”的建模量确实很多,但是可以把它看成是一种修行练功. verilog HD…
1. 规范很重要      工作过的朋友肯定知道,公司里是很强调规范的,特别是对于大的设计(无论软件还是硬件),不按照规范走几乎是不可实现的.逻辑设计也是这样:如果不按规范做的话,过一个月后调试时发现有错,回头再看自己写的代码,估计很多信号功能都忘了,更不要说检错了:如果一个项目做了一半一个人走了,接班的估计得从头开始设计:如果需要在原来的版本基础上增加新功能,很可能也得从头来过,很难做到设计的可重用性.在逻辑方面,我觉得比较重要的规范有这些: (1) 设计必须文档化      要将设计思路,详…
数学建模大赛-NO.1   论文精析 近期,在网上各种的收罗,张开了各式各样的捕抓.哈哈… .终于,在一个不经意之间发现了一个巨大无比的宝藏式的网站,此网站网址为:http://cjsxjm.gzsiri.com/#/Home.偶尔性的神经质地想起梁启超先生的<新罗马·侠感>的传世经典名言:“纷纷成败无凭准,自古道皇天不负有心人,伫看起陆龙蛇演出风云阵.”顿时感觉自己666地. 那我就不再在这里啰里啰嗦的,噼里啪啦的说个题外无关的蛇精病的话语了.下面的就简单的截个图,加些简要的文字说明发现的这…