Verilog学习笔记(完整版)

Verilog

1.概述

  • IC概述
    • 摩尔定理
      • 晶体管数量24个月翻一倍,芯片性能18月翻一倍
    • IC分类
      • MSI
      • LSI
      • VLSI
      • ULSI
    • 层级描述
      • function:系统级、行为级,RTL
      • logic
      • circuit
      • layout
    • 自上而下
  • IC设计方法发展
    • CAD:
      • 传统电路验证工具,不能分析公差和验证功能
      • 低速
      • 1960-1970:layout DRC
        • 电路仿真
          • HW:16-bit 电脑
          • SW:交互式原理图/布局编辑和设计规则检查
          • 解决了数学电路方程问题
          • SPEICE:第一个电路仿真程序
            • 第一个版本:SPICE2G
            • 1981:SPICE2G6
            • 现在:SPICE3、HSPICE、Spectre、PSPICE、fast SPICE
    • CAE:
      • 布局布局和布线 + 逻辑仿真 + LVS(布局与原理图)
      • HW:32b工作站
      • SW:完整的前后端工具链,包括逻辑原理图输入、逻辑仿真、电路仿真、自动布局和
      • 物理检查
        • DRC + ERC (Electrical Rule Check) + LPE (Layout Parameter Extraction) + LVS
    • EDA:
      • Top_down Design;
        • 硬件描述语言(HDL),例如VHDL、Verilog HDL
        • 综合工具:高级/逻辑
        • 技术独立:实现HDL源代码,使用不同的库获得不同的电路格式(ASIC、FPGA)
      • Behavioral Description ;
      • High-Level Synthesis;
        • 输入:行为级描述
        • 输出:结构场中的结构RTL宏块
      • RTL Description;
        • 自动将硬件描述语言 (HDL) 模型转换为满足一组设计标准(面积、速度、功耗、可测试性)的门级网表。
        • RTL 综合 = 翻译 + 优化 + 映射
          • 翻译:RTL描述->门级描述
          • 优化:面积、速度、功率
      • Logic Synthesis
    • VDSM EDA
      • 子系统/宏块(IP - Intellectual Property)采用自上而下的设计方法设计
      • 具有IP(知识产权)的SoC实施 — 自下而上
    • Deep sumicron technology
      • 亚微米(SM)- < 1微米
      • 深亚微米(DSM)- < 1/2 微米
      • 极深亚微米 (VDSM) - < 1/4 微米
      • 挑战:
        互连延迟:上升
        电源、时钟、系统可靠性
        设备建模
        设计能力
        信号完整性
    • SoC:
      • 在适当的技术水平下将系统集成到单个芯片中
      • 超深亚微米技术
        • 包括一个或多个微处理器存储器和至少 100,000 个门的随机逻辑
        • CPU、DSP、数字电路、模拟电路、内存等
    • IP(知识产权)
      • 可用性和复用性
      • 为了满足TTM(Time To Market)的要求,基于平台的设计方法是利用可用块(IP)来集成SoC
      • 软核心:可合成的HDL代码
      • firm核心:网表
      • 硬核:GDSII。
      • 验证核心
        行为水平HDL模型
        无法合成的代码
        仅用于功能验证

2. Verilog 框架

  • 复习
    • 电子系统可由哪些抽象级别描述?
      • 门级
      • 行为级
      • 数据流级
      • 开关级
    • 描述EDA设计流程(数字集成电路设计流程)
      1. 明确设计要求
      2. 进行行为描述
      3. Rtl 级描述
      4. 功能验证和调试
      5. 逻辑综合
      6. 门级网表
      7. 逻辑验证和测试
      8. 版图规划和自动布局布线
      9. 物理版图
      10. 版图是实现
    • 集成电路产业分工如何划分的
      设计、代工、封装、测试
    • Verilog HDL特点/优点?
      是一种通用硬件描述语言,类似 c 易学易用
      允许同一个电路模型内进行不同抽象层级的描述
      大多数综合工具都支持
      所有制造厂商都提供用于综合之后的逻辑仿真元件库
      编程接口,可以通过 c 代码访问 verilog 内部的数据结构
    • IP核的两个重要的特征及含义
      可用性和复用性
      为了满足上市时间的要求,基于平台的设计方法是利用可用块(ip)集成 soc
    • IP核种类以及对应种类IP核的特征
      • 软核:可以综合的 HDL 代码
      • Firm核:网表
      • 硬核:GDS 2
      • 验证核心:
        • 行为水平的 HDL 模型
        • 无法综合的代码
        • 仅用于功能验证
    • SoC具有的特征
      • 包括一个或多个微处理器、存储器和至少 100000 个门的随机逻辑
      • Cpu、DSP、数字电路、模拟电路、内存等
    • 如何看待反向设计方法?
      • 反向设计是从已有的硬件或功能描述出发逆向推导 verilog 代码的过程
      • 能够帮助理解复杂系统
      • 能够帮助学习
      • 调试和验证
      • 逆向工程
      • 设计重用
    • RTL如何理解
      • RTL=翻译+优化+映射,是指自动将硬件描述语言转化为一组设计标准的门级网表
  • 芯片系统(参见1.2)
  • 设计方法
    • 芯片设计
      • 向前vs向后
      • 从下到上vs自底而上
    • 反向设计
      • 布局复制、DRC、ERC;采用相同的技术:侵权(tort)
      • 布局分析,电路提取,逻辑提取,逻辑仿真,电路仿真,布局重设计,布局严整(DRC,ERC,LVS)
      • ![[Pasted image 20240819191108.png]]
  • Verilog HDL框架
    • HDL硬件描述语言
    • 设计电子系统的输入,是设计流程的开始
    • 用于最终的物理实现
    • VHDL:超高速集成电路
    • Verilog HDL
      • 基于c语言发展
      • 与c语言对比:
        • c语言按函数编写,verilog按模块编写
        • c语言有一个main函数,verilog中所有模块都是等效的,verilog也有一个top模块
        • c语言顺序执行,verilog代码并行执行
      • 特征:
        • 几乎所有级别的精确或复合描述
        • 设计、验证的语法相同
        • 独立于技术的更高层次描述
        • 运算符:如算术、逻辑、位运算等。
        • 高级编程语句,如if-else,case,loop等。
        • 包括完整的内置组合逻辑元素,如和,或,异或等。
      • 电子系统设计层级
        • 系统层级:C,C++,system C
        • 行为级:函数、算数
        • 数据流(RT级):寄存器、包括可合成行为和数据流描述的逻辑
        • 门级:基本门(逻辑级)
        • 开关级:晶体管作为开关
        • 物理级:布局
      • 系统分层设计
        • 系统建模
          • 顶部模块:连接各功能模块
            • SoC平台
          • 功能模块:功能相对独立
            • CPU、timer、DMA
        • 验证和结果评估
          • 验证:仿真、形式检验、物理验证、信号完整性等
          • 综合:面积、速率、功率
          • 评估:时序分析、计算能力等
      • 模块
        • verilog HDL由模块组成
        • 一个模块代表一个具有固定功能的对象,如:逻辑门、计数器、存储器或系统等
        • 模块以关键字“module”开始,“endmodule”结束
          	   module module_name(Port_list);
          
          			   Port Declaration;
          
          			   Data Type Declaration;
          									
          			   Circuit Function Description;
          
          	   endmodule
          
      • 验证
        • 功能
        • 时间
          • 建立时间还是保持时间
        • 软件验证的限制
          • 所有情况都尝试了?
          • 所有路径都仿真了?每一个选择吗?
        • 验证环境包括
          • 设计验证(DUV)
          • 验证向量(刺激)
          • 监控或检查
          • </
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值