赞
踩
主要涉及的学习内容主要有:
(1)Verilog的基本语法
(2)简单的可综合Verilog模块与逻辑电路的对应关系
(3)简单的Verilog测试模块和它的意义
第二部分主要是:
(1)如何编写复杂的多层次的可综合风格的Verilog HDL模块
(2)如何用可综合的Verilog模块构成一个可靠的复杂的IP软核和固核模块
(3)如何借助于Verilog语言,并利用已有的虚拟行为模块对所设计的系统模块(由可综合的自主和商业IP模块组成)进行全面的可靠的测试和验证(包括软/硬件协同测试的基本概念)
1.2.1 什么是Verilog HDL
Verilog HDL是硬件描述语言的一种,用于数字电子系统设计。该语言允许设计者进行各种级别的逻辑设计,进行数字逻辑系统的仿真验证、时序分析、逻辑综合。它是目前应用最广泛的一种逻辑描述语言。
1.2.2 Verilog HDL和VHDL语言的比较
Verilog HDL和VHDL作为描述硬件电路的设计语言,其共同的特点在于:能形式化地抽象表示电路的行为和结构;支持逻辑设计中层次与范围的描述;可借用高级语言的精巧结构来简化电路行为的描述;既有电路仿真与验证机制以保证设计的正确性。支持电路描述由高层到低层的综合转换;硬件描述与实现工艺无关(有关工艺参数可通过语言提供的属性包括进去);便于文档管理;易于理解和设计重用
IP核:通俗的说就是知识产权IP的意思。
软核:把功能经过验证的、可综合的、实现后电路结构总门数在5000门以上的Verilog HDL模型称为软核(Soft Core)。而把软核构成的器件称为虚拟器件。在新电路的研制过程中,软核和虚拟器件可以很容易的借助EDA工具与其他外部逻辑结合为一体。
软核在EDA设计领域中指的是综合之前的寄存器传输级(RLT)模型;具体在FPGA设计中指的是对电路的硬件语言描述,包括逻辑描述、网表、和帮助文档等。软核只经过功能仿真,需要经过综合以及布局布线才能使用。其优点是灵活性高,可移植性强,允许用户自配置;缺点是对模块的预测性较低,在后续设计中存在发生错误的可能性,有一定的设计风险。软核是IP核应用最广泛的形式。通俗的理解就是Verilog HDL的源代码等。
固核:把在某一种现场可编程门阵列(FPGA)器件上实现的,经验证是正确的、总门数在5000门以上电路结构编码文件称为固核(firm core)
固核在EDA设计领域指的是带有平面规划信息的网表;具体在FPGA设计中可以看做带有布局规划的软核,通常以RTL代码和对应具体工艺网表的混合形式提供。将RTL描述结合具体标准单元库进行综合优化设计,形成门级网表,再通过布局布线工具即可使用。和软核相比,固核的设计灵活性稍差,但在可靠性上有较大提高。目前,固核也是IP核的主流形式之一。软核和固核都是用户可以进行更改的。
硬核:把在某一种专用集成电路工艺的(ASIC)器件上实现的、经验证是正确的、总门数在5000门以上的电路结构版图掩膜称为“硬核”(hard core)
硬核在EDA设计领域指经过验证的设计版图;具体在FPGA设计中指布局和工艺固定、经过前端和后端验证的设计,设计人员不能对其修改。不能修改的原因有两个:首先是系统设计对各个模块的时序要求很严格,不允许打乱已有的物理版图;其次是保护知识产权的要求,不允许设计人员对其有任何改动。IP硬核的不许 修改特点使其复用有一定的困难,因此只能用于某些特定应用,使用范围较窄。
1.4.1 自顶向下设计的基本概念
自顶向下的设计(即Top_Down设计)是从系统级开始,把系统划分为基本单元,然后在把每个基本单元划分为下一层次的基本单元,一直这样做下去,知道可以直接用EDA软件中的元件库基本元件实现为止。
1.4.2 具体模块的设计编译和仿真过程
模块设计主要有两大主要功能部分组成:
(1)设计开发 即从编写设计文件->综合到布局布线->电路生成这样一系列步骤
(2)设计验证 也就是进行各种仿真的一系列步骤,如果在仿真过程中发现问题就返回设计输入进行修改
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。