网站公告列表     本站开通全国范围代收货款业务,详情请点击  [dycxin  2008年5月14日]        
加入收藏
设为首页
联系站长
您现在的位置: EDA加油站 >> 综合电子 >> EDA巩固 >> Verilog HDL >> 正文
  [推荐]Verilog 技术实践教程(1)           ★★★ 【字体:
Verilog 技术实践教程(1)
Verilog 技术实践教程(1)
作者:未知    文章来源:网络    点击数:    更新时间:2007-10-11    
前言:
    昨天跑了市里的几家书店书城,都没有看到有Verilog的书卖,因此自己根据网上的资料写一个,供自己查阅,也供大家学习时参考。

    Verilog是一种硬件描述语言(HDL),可以说Verilog比VHDL在编程时更容易上手和编写,尤其是当你具有C语言基础时,掌握Verilog语言更加容易。

    Verilog用于从算法级、门级到开关级的多种抽象设计层次的数字系统建模。被建模的数字系统对象的复杂性可以介于简单的门到完整的数字系统之间。熟悉系统能够按层次描述,并可以在相同的描述中显式地进行时序建模。
    Verilog可以描述:设计的行为特征、设计的数据流特征、设计的结构组成以及包含响应监控和设计验证方面的延时和波形产生机制。另外,Verilog提供编程语言接口,利用该接口可以在模拟、验证 期间从设计外部访问设计,包括模拟的具体控制和运行。
    Verilog的历史可以追溯到1983年由G.D.A公司为其模拟器产品开发的硬件建模语言,于1990年被***到公众领域,1995年,Verilog语言成为IEEE标准,称为IEEE Std1364-1995。

一、从第1个例子开始入门
    Verilog程序的组成基本单位是模块,相当于DELPHI中的过程,或者C语言中无返回参数的函数。

    模块的基本语法是:
    module 模块名(端口列表)
        端口参数类型申明;
        模块内部参数类型申明;
      状态;
      初始化状态;
      其他申明;
    endmodule
   
     下面我们举个半加器的例子。
    module HalfAdder(A,B,Sum,Carry);
      input A,B;
      output Sum,Carry;

      assign #2 Sum = A^B;
      assign #5 Carry = A&B;
   endmodule
   在你做实验的时候,要记得Verilog语言是区分大小写的,因此,关键字都必须小写。在本例子中,

module、endmodule表示模块开始和模块结束。input用来申明A和B两个端口都是输入端,output用来申明

Sum和Carry端口都是输出端。
   assign表示申明一个连线,#2和#5表示该连线的延迟是2ns和5ns。
   Sum = A^B;表示Sum等于A异或B。
   Carry=A&B;表示Carry等于A与上B。这样就是半加器的逻辑。
 
   在MAX+PLUS中输入好这些东西后,将文件名设置成HalfAdder.V,将该文件设置成当前工程文件(

current project),然后编译,仿真,就可以得到结果了。

文章录入:dycxin    责任编辑:dycxin 
  • 上一篇文章:

  • 下一篇文章:
  • 发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
    最新热点 最新推荐 相关文章
    基于VHDL的异步串行通信电路
    ALTERA的假货识别方法
    Verilog技术实践教程(2)
    10分钟学会PLD设计1-设计输
    浅谈VHDL/Verilog的可综合性
    选择 VHDL 还是 verilog HDL
      网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)
    EDA加油站|我要EDA网|山东电子网--东营市荣燕商贸有限公司版权所有! 站长:阿荣
    联系电话:0546-7870320,13371507828 电邮:51edacn@163.com
    山东东营西城济南路百祥电脑商城B302室 邮编:257000 鲁ICP备07018763号  鲁ICP备07000091号 鲁ICP备05003434号
    公司帐号:1615011209000037682 户名:东营市荣燕商贸有限公司 开户行:工行西城支行石油大学分理处