当前课程知识点:IC设计与方法 > 3、Verilog语法 > a)Verilog的历史和学习要点 > 讲课视频
大家好
下面我们开始讲硬件描述语言
在我们这门课里面
用的是Verilog硬件描述语言
其实的话呢
硬件描述语言的种类比较多
除了有Verilog
还有VHDL等等
那么从本质上来说
各种语言没有太本质的差别
在Verilog硬件描述语言里面呢
我们这门课主要讲用于电路实现的
Verilog硬件描述语言的一个子集
其实还是它的一部分
我们学习Verilog语言
最终的目的是为了去设计电路
所以的话呢
我们的目标是要能够根据代码能够画出电路
并且能够分析和优化电路
最终能够写出更好的代码来实现更好的电路
那么说到Verilog
我们还是要简单的回顾一下Verilog的历史
Verilog大概是在1983年左右
有一个叫GDA的公司来创立的这种语言
经过若干年以后
它被若干公司收购
并且慢慢变成一个国际的标准
这个标准的话呢
也在不断的更新
从最早期的1987年的时候
就有一个Verilog的1364的一个标准
它在后来的话呢
又出了1995
2005以及相应的新的标准
在每个标准里面
都对Verilog语言去进行了不断的修改
并且增加了新的元素
新的内容
提高了语言的设计电路的效率
所以的话
我们在学习语言的时候
并不要求大家对这个语言能够了解的百分之百
把每一个语言的要素都能够学会
而只需要去关注它的精髓
另外的话
用硬件描述语言去设计电路
我们从设计者的角度来说
我们要关注的是
我们用语言是去描述一个电路的行为
然后依靠EDA工具去把或者说依靠软件
去把具体的电路给它产生出来
所以的话
作为设计人员
我们要关注的是这个语言的它的特点
采用这种方法设计的电路的话
具有一个我们称之为叫工艺无关性
可移植性和易于维护这样的一些特点
那么原因是什么
相对于传统的用电路图的方式
来进行电路设计的话
用语言设计的电路
我们不但能够
在一家集成电路的厂家去进行生产
同时也能够在搬移到新的厂家去
以工业界的例子为例
台湾的TSMC这个厂家
我们通常认为它是品质是最高的
价格也是最高的
国内的话呢
还有smic
上海华虹nec等等一些国内的企业
这些企业的话呢
相对来说生产的品质
或者说质量的控制等等这方面
可能不如TSMC好
在某些技术服务上或者说技术水平上
也会比TSMC要差一些
但是价格要比TSMC便宜的多
有可能只是TSMC同等价格的2/3
对于一个集成电路类产品来说
这就非常重要了
意味着同样一个设计
如果我在台湾的TSMC生产
和在大陆的国内的smic
上海的smic的生产的话
价格可能差了2/3
这对于一个消费产品来说是非常重要的
那么我们作为设计人员所设计的电路
就可以先在台湾去生产
不做任何修改
当产品的量达到一定量以后
需要降低价格的时候
直接拿到国内的smic就可以进行生产了
这就在产业上来说是非常有意义的
这也是体现出
基于硬件描述语言设计电路的优势
我们设计完电路不做任何改动
就可以拿到另外一个地方去用
如果是用原理图的方式来设计电路的话
那就比较麻烦了
当我们把一个原理图
从一个厂家挪到另一个厂家的时候
往往要做很多的改动
才能够实现这样的目的
Verilog应用有很多方面
我们再做集成电路设计的时候
可以在不同的层次去描述一个电路
或者说描述一个系统
我们可以从系统层次
去描述这个电路能够干什么
以及大致准备采用什么方式去干
我们也可以在门一级去进行抽象的去描述
去描述这个电路具体需要哪些门
怎么互联给他实现的
当然我们也可以到晶体管级
用类似模拟电路的行为的方式
去描述这个电路的行为
Verilog语言的话
可以在这几个不同层次
都可以去进行电路的描述
在我们这门课里面
我们学习的是怎么在寄存器传输级
也就是RTL级
或者说类似门级的这样一个层次
去完成一个电路的设计
所以我们这门课或者说这一小节的题目是
用于寄存器传输级设计的Verilog语言
和c语言或者其他语言类似
Verilog语言的语法
也是一个比较复杂的一种结构
那么Verilog语言的关键字
加起来大概有上百种
上百个关键字
就像c语言一样
我想现在即使是最高深的
或者说最厉害的c语言程序师
程序员
也不能说他懂得所有的语法知识
并且能把所有的语法能够熟练起来
对于Verilog也是一样
我虽然用硬件描述语言
或者说我教学已经教了有十几年了
但是我懂得
其实也只是一小部分
作为电路设计而言
我们作为程序员或者作为工程师
只需要掌握这语言中的一小部分就够了
对于我们做电路设计
或者说RTL级设计的话
我们只需要掌握大约20个关键字
就能够完成这个电路的设计
对设计人员而言
你的设计能力
或者说你的水平并不体现在
你掌握了这个语法的多高深的知识
而在于怎么才能够用最简单的语法
最少的关键字
把你的设计思路描述出来
我曾经多次跟我的学生说过
对于一个工程师而言
他的水平体现在他做过多少设计
有多少集成电路的设计经验
而不在于他是不是能够熟练掌握一种
或者多种硬件描述语言
有时候我也会去替一些公司去招聘一些学生
在面试的时候
有时候经常会看到学生的简历上说
我能够熟练使用Verilog语言
熟练使用VHDL语言
等上完这门课
你可能就会体会到
这两句话从找工作的角度来说
没有什么太大的意义
我们作为设计人员
你的核心水平
或者说你的核心价值
体现在你能不能够把一个电路
能够用一种比较好的思路把它描述出来
然后我们可以找一个大学生
研究生大学生
甚至找一个高中生都可以用很少的时间
把他们培训完了以后
就可以把代码给它写出来
所以我们学习语言的时候一定要注意这一点
我们学习语言的目的
是为了用语言去把这个电路表示出来
而不是去把这个语言去给他了解的非常的清楚
-软件下载说明
-a) 集成电路的应用及市场
-a) 集成电路的应用及市场--作业
-b)集成电路的制造过程
-b)集成电路的制造过程--作业
-c)从CPU的发展看IC的进展
-c)从CPU的发展看IC的进展--作业
-d)从行业的发展看IC的进展
--Video
-d)从行业的发展看IC的进展--作业
-e)从ISSCC看IC的发展方向
--讲课视频
-e)从ISSCC看IC的发展方向--作业
-a)数字系统的实现方法 (ASSP/FPGA/ASIC的对比)
--讲课视频
-a)数字系统的实现方法 (ASSP/FPGA/ASIC的对比)
-b)组合逻辑电路
--Video
-2、数字集成电路设计方法--b)组合逻辑电路
-c)时序逻辑电路(1)
-d)时序逻辑电路(2)
-2、数字集成电路设计方法--d)时序逻辑电路(2)
-a)Verilog的历史和学习要点
--讲课视频
-b)端口、信号及数据类型
--讲课视频
-b)端口、信号及数据类型--作业
-c)逻辑电平及数据操作
--讲课视频
-3、Verilog语法--c)逻辑电平及数据操作
-d)Assign 语句
-e)Assign 举例
-f)Always
-f)Always--作业
-g)阻塞与非阻塞赋值
--Video
-3、Verilog语法--g)阻塞与非阻塞赋值
-h)D触发器的描述
--Video
-i)时序电路的设计
--Video
-i)时序电路的设计--作业
-j) 面向测试的Verilog语法(1)
-k) 面向测试的Verilog语法(2)
-k) 面向测试的Verilog语法(2)--作业
-a)电路设计实例1
--Video
-b)电路设计实例2
--讲课视频
-b)电路设计实例2--作业
-c)电路设计实例3
--讲课视频
-Modelsim仿真
-a)综合及相关基本概念
--Video
-a)综合及相关基本概念--作业
-b)综合及优化
--Video
-c)门级仿真
--门级仿真
-d)Quartus综合及分析(1)
--讲课视频
-e)Quartus综合及分析(2)
--讲课视频
-e)Quartus综合及分析(2)--作业
-f)Quartus综合及分析(3)
--Video
-g)Quartus综合及分析(4)
--Video
-g)Quartus综合及分析(4)--作业