逻辑设计概念及Vivado基础

目录

逻辑设计概念及Vivado基础

数字量与数字电路

模拟信号与数字信号

数字电路系统的优点

数字电路及其设计技术的发展

硬件编程语言(HDL)概述

[硬件描述语言(Hardware Description Language,HDL)](#硬件描述语言(Hardware Description Language,HDL))

ABEL语言程序段示例

VHDL语言程序段示例

[Verilog HDL语言程序段范例](#Verilog HDL语言程序段范例)

[Verilog HDL与其他HDL的差异](#Verilog HDL与其他HDL的差异)

[Verilog HDL发展史](#Verilog HDL发展史)

[Verilog HDL与PLD设计](#Verilog HDL与PLD设计)

[Verilog HDL基本要素](#Verilog HDL基本要素)

逻辑电路与系统设计流程

可编程逻辑器件基础

可编程逻辑器件概述

[PLD vs. ASIC](#PLD vs. ASIC)

[PLD vs. MCU/CPU/DSP](#PLD vs. MCU/CPU/DSP)

PLD的发展史

PLD的发展步伐

[CPLD vs. FPGA](#CPLD vs. FPGA)

传统CPLD与FPGA技术对比

典型CPLD内部架构

典型FPGA内部架构

FPGA芯片选型

PLD设计方法的演变

Vivado开发环境及流程演示

Vivado综合开发环境功能介绍


逻辑设计概念及Vivado基础

数字量与数字电路

模拟信号与数字信号

  • 连续变化的变量为模拟量,离散取值的变量为数字量
  • 自然界绝大多数物理量都是模拟量,如温度、湿度、语音等
  • 数字量可以被用来近似表示出模拟量
  • 数字系统用高低电平构成二进制数系统处理信号

数字电路系统的优点

保真度高(结果再现性强)

  • 易存储、易传输、高精度
  • 抗噪声、受环境影响小

易于设计,EDA支持强

  • 灵活性和功能性
  • 可编程性

处理速度快

经济性

数字电路及其设计技术的发展

数字系统的发展

  • 门电路和触发器
  • 集成电路
  • 可编程逻辑器件和超大规模专用集成电路

数字系统设计技术的发展

  • 公式法/卡诺图化简
  • 计算机辅助设计

硬件描述语言(HDL)

软件综合与仿真

硬件编程语言(HDL)概述

硬件描述语言(Hardware Description Language,HDL)

ABEL语言程序段示例

VHDL语言程序段示例

Verilog HDL语言程序段范例

Verilog HDL与其他HDL的差异

与ABEL等早期语言相比

  • 上述语言多应用逻辑等式来描述逻辑功能,侧重于结构描述方法
  • Verilog HDL适合算法级、寄存器传输级(RTL)、门级、版图级等各类设计描述应用

与VHDL等同期语言相比

  • 两者都具备良好的行为描述能力
  • 一般认为,Verilog HDL在描述硬件单元的结构时更简单易读,相比较而言,VHDL的描述长度通常是Verilog HDL的两倍

Verilog HDL发展史

Verilog HDL 语言最初于1983年由Gateway Design Automation (GDA) 公司 为其模拟器产品开发的硬件建模语言

Cadence 在1989年收购GDA后,Verilog HDL语言于1990年正式对外发布

Open Verilog International ( OVI )成立,以促进Verilog语言规范的发展

1993年,OVI推出了2.0版本

Verilog语言于1995年成为IEEE标准,称为IEEE Std1364-1995,2001年 又更新了一版标准

Verilog HDL与PLD设计

PLD设计是Verilog HDL的一大应用

PLD设计仅支持Verilog HDL的一个子集

Verilog HDL基本要素

注意点:

  • 大小写敏感
  • 所有关键字须小写
  • 空格用于增加可读性
  • 分号是语句终结符
  • 单行注释://
  • 多行注释:/* */
  • 时间规范用于仿真

逻辑电路与系统设计流程

可编程逻辑器件基础

可编程逻辑器件概述

PLD:Programable Logic Device 可编程逻辑器件

  • 可编程:执行功能"可且必须"由用户定制
  • 逻辑:属于逻辑电路,不同于模拟电路
  • 器件:以单独芯片形式封装和形成产品

PLD可实现通用逻辑功能设计的原理

  • "与或非门+寄存器"的基本逻辑单元组合
  • PLD可提供丰富的基本逻辑单元和连线资源

PLD vs. ASIC

PLD vs. MCU/CPU/DSP

PLD(CPLD/FPGA)开发模式的特点

  • 以硬件藐视语言(HDL)或电路图作为主要开发手段
  • 程序中不同的逻辑功能被设计成不同的硬件模块并存
  • 高速、设计灵活性好
  • 从功能角度可完全取代CPU式开发模式

CPU(MCU/CPU/DSP)开发模式的特点

  • 以C语言等为主的高级语言作为主要开发手段
  • 微程序模式,程序被分解后依次在同一硬件系统中执行
  • 成本低、功耗小

PLD的发展史

PLD雏形:PROM/EPROM

第一代PLD(二十世纪70年代)

PLA / PAL

第二代PLD(二十世纪80年代)

GAL

第三代PLD(二十世纪90年代起)

CPLD

FPGA

其它衍生PLD产品:结构化ASIC、ASSP等

PLD的发展步伐

从一次烧写发展到可反复烧写

不断增加可编程逻辑资源的集成度

单元逻辑资源的成本和价格不断降低

由传统可编程逻辑资源集成扩展更多IP

HDL的不断成熟(标准化)和进化

设计和仿真EDA技术越来越成熟

建立向ASIC转化的方案

CPLD vs. FPGA

CPLD:Complex Programmable Logic Device

FPGA:Field Programmable Gate Array

传统CPLD与FPGA技术对比

  • 结构对比
  • 资源容量对比
  • 性能对比
  • 程序易失性对比
  • 下载模式对比

典型CPLD内部架构

典型FPGA内部架构

发展中的新CPLD/FPGA概念

新CPLD/FPGA产品

  • 新CPLD产品基于LE和非单一总线构架
  • 新FPGA产品具有掉电非易失特性

目前区分CPLD/FPGA的主要标准

  • CPLD主要是逻辑资源较少、配置方式单一、具备掉电非易失特性的PLD产品, 通常内部仅含传统可编程逻辑资源及少量存储器
  • FPGA在集成大量可编程逻辑资源的基础上通常包含大量PLL、RAM、多功 能I/O等资源

Xilinx公司主流7系列FPGA产品

FPGA芯片选型

选型考虑因素

  • 管脚数量(IO)
  • 逻辑资源
  • 片内存储器
  • DSP资源
  • 功耗
  • 封装

PLD设计方法的演变

Vivado开发环境及流程演示

Vivado综合开发环境功能介绍

Vivado 是Xilinx公司基于其FPGA产品进行开发设计的综合开发环境,集成文本编辑器 、逻辑函数库、编译/布线/仿真工具、下载器等功能;

相比较原来的 ISE综合开发环境,主要特点在于:

-- 支持Xilinx公司新一代(7系列、28nm以下工艺器件)可编程逻辑器件;

-- 整合高层次综合(HLS)、高级语言编译等功能;

-- 支持IP库自定义封装;

-- 增量式工程变更管理,编译速度提升。

一、启动Vivado,新建工程

二、利用向导,新建项目,语言选择为Verilog,亲戚间选择与平台相关的,新建Verilog HDL文件

三、填写模块名称和端口,文件窗口区编写代码

四、Vivado程序编译,查看RTL级电路

五、分配引脚,运行代码

六、连接电脑下载演示

七、ROM烧写,掉电不丢失

相关推荐
发光的沙子4 小时前
FPGA----vitis测试linux程序
fpga开发
初夏正浓8 小时前
一文读懂“JESD204B”之链路建立与xilinx IP仿真
fpga开发·xilinx·jesd204b
s09071361 天前
【Zynq 进阶一】深度解析 PetaLinux 存储布局:NAND Flash 分区与 DDR 内存分配全攻略
linux·fpga开发·设备树·zynq·nand flash启动·flash分区
Kong_19941 天前
芯片开发学习笔记·二十——时序报告分析
fpga开发·芯片开发
凌盛羽1 天前
使用python绘图分析电池充电曲线
开发语言·python·stm32·单片机·fpga开发·51单片机
尤老师FPGA1 天前
LVDS系列44:Xilinx Ultrascale系 ADC LVDS接口参考方法(六)
fpga开发
化屾为海1 天前
FPGA之PLL展频
fpga开发
GateWorld1 天前
FPGA内部模块详解之七 FPGA的“灵魂”加载——配置模块(Configuration)深度解析
fpga开发·fpga config
星华云2 天前
[FPGA]Spartan6 Uart可变波特率读写JY901P惯导模块
fpga开发·verilog·jy901p·spartan6·惯导