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
- Top_down Design;
- 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模型
无法合成的代码
仅用于功能验证
- CAD:
2. Verilog 框架
- 复习
- 电子系统可由哪些抽象级别描述?
- 门级
- 行为级
- 数据流级
- 开关级
- 描述EDA设计流程(数字集成电路设计流程)
- 明确设计要求
- 进行行为描述
- Rtl 级描述
- 功能验证和调试
- 逻辑综合
- 门级网表
- 逻辑验证和测试
- 版图规划和自动布局布线
- 物理版图
- 版图是实现
- 集成电路产业分工如何划分的
设计、代工、封装、测试 - 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)
- 验证向量(刺激)
- 监控或检查 </