【ASIC设计】FPGA小知识拾遗(不断更新...)_lattice mico8 频率-程序员宅基地

技术标签: # ASIC设计课程  

ASIC - 专用集成电路


FPGA开发流程

  • 1、设计定义
    • 要做什么?实现什么功能?
  • 2、设计输入
    • Verilog/VHDL硬件描述语言、成熟的IP核、画原理图的方式进行逻辑设计
  • 3、分析和综合
    • 语法检查、逻辑检查
    • 生成网表文件
  • 4、功能仿真(行为级仿真)(前仿真)
    • 能否实现功能?
    • 理想仿真,逻辑之间零延迟
    • modelsim-altera
  • 5、布局布线
    • 设计代码对应到FPGA,并完成连线
  • 6、时序仿真(门级仿真)
    • 考虑延迟,验证布局布线之后电路是否满足时序要求
    • modelsim-altera
    • 不满足时序要求解决办法:
      • ①、调整设计输入,减少组合逻辑电路,如插入寄存器以形成流水线的方式
      • ②、进行时序约束,如某段路必须多久走完,这样布局布线就会满足时序要求
  • 7、IO分配以及配置文件生成
  • 8、配置FPGA(烧写FPGA)
  • 9、在线调试
    • 嵌入式逻辑分析仪
    • 信号探针
    • 内存查看

常见FPGA厂商及旗下软件

Xilinx

  • ISE、 vivado

Altera【Intel FPGA】

  • Quartus II、 Quartus Prime

Lattice

  • Diamond、 Mico System

典型的 FPGA 通常包含三类基本资源

  • 1、可编程逻辑功能块:是实现用户功能的基本单元,多个逻辑功能块通常规则地排成一个阵列结构,分布于整个芯片;
  • 2、可编程输入/输出(I/O)块:完成芯片内部逻辑与外部管脚之间的接口,围绕在逻辑单元阵列四周;
  • 3、可编程内部互连资源:包括各种长度的连线线段和一些可编程连接开关,它们将各个可编程逻辑块或输入/输出块连接起来,构成特定功能的电路。用户可以通过编程决定每个单元的功能以及它们的互连关系,从而实现所需的逻辑功能。

不同厂家的逻辑单元叫法

  • ALTER的逻辑单元一般叫 LE
  • XILINX的逻辑单元一般叫 CLB

Altera【Intel FPGA】常见系列器件

  • Stratix (V,IV)
  • Arria (10,V GZ,V,II GZ,II GX)
  • Cyclone (10 LP,V,IV E,IV GX)
  • MAX (10,V,II)

Altera【Intel FPGA】在用系列器件型号记录

  • Cyclone IV E FPGA 芯片 EP4CE10F17C8
  • Cclone V FPGA 芯片 5CSEBA2U19I7

Cyclone IV E FPGA【Intel FPGA】 一般需要三组供电

  • ①、内核供电
    • 内核供电电压根据器件是否为低电压版本区分, 低电压版本,内核供电为 1.0V,非低电压版本供电为 1.2V
  • ②、PLL 模拟电路供电
    • PLL 模拟部分供电为固定的 2.5V
  • ③、IO 单元供电
    • IO 供电电压值从 1.2V~3.3V, 共有 6 种可选值

在这里插入图片描述

Altera【Intel FPGA】的Quartus发展变化追溯

  • 随着器件系列多样化,从 Quartus II 10.0 以后的版本器件支持包需要单独下载并可根据需要选择性安装
  • 在时序仿真软件方面,在 9.1 之前均自带仿真组件,在之后均需下载额外的诸如 Modelsim 或者 Modelsim-Altera 等仿真软件
  • Quartus II 12.0 及之前的软件需要额外下载 Nios II 组件,之后的 Quartus II 软件开始自带 Nios II 组件。
  • Quartus II 9.1 之前的版本均自带 SOPC 组件,而 Quartus 10.0 自带了 SOPC 和 Qsys 两个组件,但从 10.1 开始,Quartus II 只包含 Qsys 组件。
  • 自从 15.1 开始 Quartus II 正式更名为 Quartus Prime。 该版本是 Altera 被 Intel 收购后发布的第一个版本也被官方称为有史以来最大的更新,相比之前加入了 Intel 为 FPGA 专门设计的OpenCL SDK、 SoC Embedded Design Suite 以及 DSP Builder 等组件。
  • 到了 16.1 版本,软件连安装目录也从自动命名的 altera 变为 intelFPGA,令人唏嘘不已,感叹发展之快

Quartus 常见源文件

  • HDL 文件(Verilog HDL File)
  • 原理图文件(BDF 文件)
  • TCL文件
  • ROM 初始化(mif)文件
  • Signaltap II 文件

Quartus 常见生成文件

  • .sof 格式文件
  • .jic 格式文件
    • sof 文件转化为 jic文件,以固化到 EPCS 存储器中
  • .bdf文件
    • 原理图文件
  • .v/.vhd
    • 硬件描述语言文件
  • .qar 格式文件
    • Archive Project选项,将当前工程的所有文件打包为一个 qar 格式的文件,方便保存和传输。

常见仿真

  • 寄存器传输级仿真(RTLSimulation)
    • 寄存器传输级仿真也被称为功能仿真或前仿真,主要针对没有经过布局布线的 RTL 描述代码。 该仿真结果为理想仿真结果,不含任何布局布线的延迟信息。 一般代码编写完成后都要先进行寄存器传输级仿真,以确定设计的功能逻辑没有问题。
  • 门级仿真 Gate Level Simulation。
    • 门级仿真是针对 Quartus 编译完成后含布局布线延迟的文件进行仿真,其仿真结果已经与实际在对应器件上的运行结果非常的接近了,具有较大实际参考意义。

网表视图

  • RTL 视图
    • 查看 RTL 视图, 可以对设计所实现的逻辑功能以类似电路原理图的形式进行核对确认。
  • 网表视图
    • 查看网表,可以知道设计最终通过门级实现的情况。
  • 状态机图
    • 查看状态机图可以核对状态跳转图是否与自己的设计一致。

随笔小知识

  • 执行时序分析的前提是工程完成了分析和综合(Analysis & Synthesis)、适配(Fitter)
  • 芯片面积大,不利于降低成本和功耗
  • always块中:if/else有优先级、case无优先级。注:casex有优先级
  • 流水线pipeline把最长路径截断;流水线有几级,就有几个组合电路
  • verilog中的x是给仿真用的
  • 在always块中用的变量,一般定义为reg
  • 组合和时序最主要的区别:有无D触发器
  • 部分行为级代码不可综合,比如延时#100,要想可综合需要改成RTL级,加入D触发器来达到延时的目的
  • 三段式:输入组合电路、中间时序电路、输出组合电路。【分析的关键:找出D触发器,分出组合/时序】
  • primitive:原语,比如or/xor/and等门电路
  • 设计的时候,组合电路给真值表;时序电路给状态转换图。
  • Mealy输出取决于当前状态和输入;Mealy机不跟时钟走,反应快
  • Moore占资源多
  • 竞争冒险的本质:同一信号经过不同路径,最后汇聚产生。
  • 约束:延迟、扇出、引脚绑定、时钟频率
  • 组合反馈环路的延时未知,一般在电路中不允许出现
  • D触发器(DFF)和Latch(锁存器)区别,DFF是边沿型的,Latch是电平型的
  • FPGA擅长乘除移位,不擅长矩阵求逆、三角函数。三角函数求解一般用查找法。
  • $同样无法综合,仿真时候用的
  • 时序电路,看见8个状态,想到3个D触发器, 2 n 2^n 2n的关系。
  • 如果always后面的敏感信号列表用的是边沿型信号(比如clk信号的上升沿),且信号使用非阻塞赋值“<=”,那没有else会综合生成DFF;如果always后面的敏感信号列表用的是电平型信号,且信号使用阻塞赋值“=”,那没有else会综合生成latch;第二种一般是应该避免的,因为这种写法一般是希望生成组合电路,把else加上就好。
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/recclay/article/details/109775646

智能推荐

普通屏幕已过时?裸眼3D屏幕显示效果更胜一筹!

与普通屏幕中播放的视频相对,裸眼3D屏幕需要先将裸眼3D视频分成两部分,分别呈现在左右两个视窗上,因此后者需要更高的分辨率,以及更精细的图像处理能力,以此使裸眼3D屏幕的画面展示效果更加细腻,进而加深每个物体和场景的深度感和空间感,让每个驻足于此的观众惊叹于裸眼3D屏幕的震撼视觉效果。另外,裸眼3D屏幕的色彩表现,也比大多的普通屏幕更加丰富和鲜艳,能够展现出电影级别的画面质量,总而言之,裸眼3D屏幕比之普通屏幕的显示效果,有着巨大的优势,这也是使裸眼3D成为重要显示技术的重要原因!

如何安全可控的进行跨区域数据交换,提高数据价值?

飞驰云联是中国领先的数据安全传输解决方案提供商,长期专注于安全可控、性能卓越的数据传输技术和解决方案,公司产品和方案覆盖了跨网跨区域的数据安全交换、供应链数据安全传输、数据传输过程的防泄漏、FTP的增强和国产化替代、文件传输自动化和传输集成等各种数据传输场景。飞驰云联主要服务于集成电路半导体、先进制造、高科技、金融、政府机构等行业的中大型客户,现有客户超过500家,其中500强和上市企业150余家,覆盖终端用户超过40万,每年通过飞驰云联平台进行数据传输和保护的文件量达到4.4亿个。

大语言模型与词向量表示

大语言模型的词向量表示由于其在预训练阶段学习到的通用语言特征,可以在多种NLP任务中作为强大的工具,提高任务的性能和准确性。大语言模型与词向量表示之间的关系是NLP领域的一个活跃研究方向,随着模型规模的增加和训练技术的改进,这些模型在理解和生成自然语言方面的能力不断提高。

基于django和vue的xdh官网设计_xdh实例-程序员宅基地

文章浏览阅读927次。前言本项目是使用三段分离的设计前台使用materialize框架搭建的前台页面,后端使用的django写的接口后台使用Amazon UI 模板搭建的界面,管理各个部分的内容项目环境python3.7.2django2.2.9vue axiosjQuerymaterializemysql摘 要本设计采用前后端分离的设计模式,前端通过vue的axios发送ajax请求来..._xdh实例

树莓派python播放音频文件_树莓派开启声音及视频播放-程序员宅基地

文章浏览阅读2.7k次。什么?刚刚买回来点亮的树莓派是个哑巴?放音乐没声音,不是缺少输出设备,那就是默认设置不对啦。如何设置,并且可以让树莓派播放 1080p 的视频,看这里呀~连接输出设备首先,检查你树莓派的输出设备是否正确连接,不管是使用带有音响的显示器 HDMI 接口,还是 3.5mm 耳机或扬声器设备,确保他们正确连接并且供电正常。设定输出设备打开树莓派设置:sudo raspi-config进入 Advance..._树莓派播放不了音乐

阿里云上安装编译vnpy1.7版本_vnpy 编译-程序员宅基地

文章浏览阅读2.3k次。经过几个月的爬坑,终于解决了在阿里云上架设vnpy的问题。开心啊。官方教程并未详细写清楚(官方UBUNTU环境配置链接)应该怎么样在阿里云上面编译安装vnpy。总是卡在编译完成安装编译环节,而且内存会突然奇高直接挂掉服务器。原因居然是因为,talib的c语言库没有安装。以下是我跳坑经历,仅供参考。什么anaconda,pip,mongdb,qtpy什么的鬼,就看官方文档吧。我这里仅仅说明我安装_vnpy 编译

随便推点

Xcode 15构建问题

将ENABLE_USER_SCRIPT_SANDBOXING设为“no”即可!

OpenVINO应用案例:部署YOLO模型到边缘计算摄像头_openvino yolo-程序员宅基地

文章浏览阅读2.8k次,点赞3次,收藏23次。一、实现路径通过OpenVINO部署YOLO模型到边缘计算摄像头,其实现路径为:训练(YOLO)->转换(OpenVINO)->部署运行(OpenNCC)。二、具体步骤1、训练YOLO模型1.1 安装环境依赖有关安装详情请参阅 https://github.com/AlexeyAB/darknet#requirements-for-windows-linux-and-macos 。1.2 编译训练工具git clone https://github.com/AlexeyAB/da_openvino yolo

数据污染对大型语言模型的潜在影响

总之,数据污染在LLMs中构成一个潜在的重要问题,可能影响它们在各种任务中的性能。它可能导致结果偏倚并削弱LLMs的真实有效性。通过识别和减轻数据污染,我们可以确保LLMs运行良好并产生准确的结果。现在是技术社区优先考虑数据完整性在LLMs的开发和利用中的时候了。通过这样做,我们可以确保LLMs产生无偏见且可靠的结果,这对于新技术和人工智能的发展至关重要。

/u5f20 之类的转中文_address":"cn|\u5e7f\u4e1c|\u4f5b\u5c71|none|chinan-程序员宅基地

文章浏览阅读7.3k次。<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <m..._address":"cn|\u5e7f\u4e1c|\u4f5b\u5c71|none|chinanet|0|0","content":{"addres

数字图像处理期末复习题_已知roberts算子的作用模板为-程序员宅基地

文章浏览阅读1.3w次,点赞28次,收藏367次。第一章 引言一.填空题1.数字图像是用一个数字阵列来表示的图像。数字阵列中的每个数字,表示数字图像的一个最小单位,称为 。2.数字图像处理可以理解为两个方面的操作:一是从图像到图像的处理,如图像增强等; 二是 ,如图像测量等。3.数字图像处理可以理解为两个方面的操作:一是 ,如图像增强等; 二是从图像到非图像的一种表示,如图像测量等。4.图像可以分为物理图像和虚拟图像两种。其中,采用数学的方法,将由概念形成的物体进行表示的图像是 。5.数字图像处理包含很多方面的研究内容。其中, 的目的是根据二维_已知roberts算子的作用模板为