电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

第11章.环境下的fpga设计

24页
  • 卖家[上传人]:F****n
  • 文档编号:107560620
  • 上传时间:2019-10-20
  • 文档格式:PPT
  • 文档大小:785KB
  • / 24 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 1、2019/10/20,清华大学出版社,Page 1,第11章 环境下的FPGA设计,11.1 FPGA设计初步,FPGA是现场可编程门阵列(Field Programmable Gate Array)的简称,它具有体系结构和逻辑单元灵活、集成度高级适用范围宽的特点,兼容了PLD和通用门阵列的特点,同一片FPGA通过不同的编程数据可以产生不同的电路功能,因此可以实现大规模的集成电路设计。在进行FPGA项目设计之前,首先要了解FPGA设计的相关基础知识,包括基本概念、设计流程等。 11.1.1 FPGA的基本概念 11.1.2 FPGA设计流程 11.1.3 VHDL语言简介,2019/10/20,清华大学出版社,Page 2,11.1.1 FPGA的基本概念,FPGA是现场可编程门阵列(Field Programmable Gate Array)的简称,通常包含三类可编程资源:可编程逻辑功能块、可编程I/O块和可编程内部互连。 可编程逻辑功能块:它是实现用户功能的基本单元,它们通常排列成一个阵列,散布于整个芯片; 可编程I/O块:用于完成芯片上逻辑与外部封装脚的接口,常围绕着阵列排列于芯

      2、片四周; 可编程内部互连:它包括各种长度的连线线段和一些可编程连接开关,它们将各个可编程逻辑块或I/O块连接起来,构成特定功能的电路。,2019/10/20,清华大学出版社,Page 3,FPGA内部多采用查找表的结构。 查找表简称为LUT (Look-Up-Table),LUT本质上就是一个RAM。目前FPGA中多使用4输入的LUT,所以每一个LUT都可以看成一个具有4位地址线的161的RAM。 基于查找表(LUT)的FPGA的结构 采用这种查找表结构的FPGA有Altera的ACEX和APEX系列及Xilinx的Spartan和Virtex系列等。 查找表结构的FPGA逻辑实现原理,2019/10/20,清华大学出版社,Page 4,11.1.2 FPGA设计流程,1创建FPGA项目 2设置FPGA项目的属性 创建好FPGA项目之后,还需要对相关属性,如错误报告、比较器、综合和仿真等进行设置,以帮助项目的设计和优化。 3VHDL编译环境 在已创建的FPGA项目中,执行菜单命令【文件】【创建】【VHDL文件】,在项目文件夹中将自动生成一个VHDLl.Vhd文件VHDLl.Vhd文件。

      3、同时,此文件在主窗口中被打开,处于文本编辑器状态。,2019/10/20,清华大学出版社,Page 5,11.1.3 VHDL语言简介,目前最主要的硬件描述语言是VHDL和Verilog HDL。 VHDL是超高速集成电路硬件描述语言(Very High Speed Integrated Circuit Hardware Description Language)的简称,它发展得较早,语法严格; Verilog HDL是在C语言的基础上发展起来的一种硬件描述语言,语法较自由。 一个完整的VHDL程序包括实体(entity)、结构体(architecture)、配置(configuration)、包 ( package)、库(library)5个部分。其中,前4个部分是可分别编译的源设计单元。VHDL程序结构可以用图11-10表示。,2019/10/20,清华大学出版社,Page 6,2019/10/20,清华大学出版社,Page 7,图11-11 VHDL程序结构,1.实体说明 实体说明是一个器件的外观视图,即从外部看到的器件外貌,包括端口等。实体说明也可以定义参数,并把参数从外部传入

      4、模块内部。任何一个基本设计单元的实体说明都具有如下结构: ENTITY实体名IS GENERIC(类属表); PORT(端口表); 实体说明部分; BEGIN 实体语句部分; END ENTITY实体名; 中的内容是可选的,即可以没有这部分内容。,2019/10/20,清华大学出版社,Page 8,2端口说明 端口说明是对设计实体与外部接口的描述,也可以说是对外部引脚信号的名称、数据类型和输入输出方向的描述。端口为设计实体和其外部环境通信的动态信息提供通道,其功能对应于电路图符号的一个引脚。实体说明中的每一个I/O信号被称为一个端口,一个端口就是一个数据对象。每个端口必须有一个名字、一个通信模式和一个数据类型。是实体的重要组成部分。端口说明的一般格式为: Port(端口名:模式 数据类型名; 端口名:模式 数据类型名);,2019/10/20,清华大学出版社,Page 9,3结构体 结构体是次级设计单元,具体指明了该设计实体的结构或行为,定义了该设计实体的功能,规定了该设计实体的数据流程,指定了该实体中内部元器件的连接关系,把一个设计的输入和输出之间的关系建立起来。由于结构体是对实体功

      5、能的具体描述,因此一定要跟在实体的后面。 一个结构体的一般书写格式为: ARCHITECTURE 结构体名 OR 实体名 IS 定义语句 BEGIN 并行处理语句 进程语句 -器件的功能实现部分 END结构体名;,2019/10/20,清华大学出版社,Page 10,4.描述风格 描述风格也就是建模方法。 用VHDL语言描述结构体有4种方法。 (1)行为描述法:采用进程语句,顺序描述被称为设计实体的行为。 (2)数据流描述法:采用进程语句,顺序描述数据流在控制流作用下被加工、处理、存储的全过程。 (3)结构描述法:采用并行处理语句描述设计实体内的结构组织和元器件互连关系。 (4)混合描述法:采用多个进程(process)、多个模块(blocks)、多个子程序(subprograms)的子结构方式,是将前三种基本的描述方法组合起来。,2019/10/20,清华大学出版社,Page 11,11.2 对VHDL和原理图的混合设计与仿真,Protel 不仅支持原理图的输入方法和VHDL输入方法,还支持VHDL和原理图混合输入方法,该方法在适合用VHDL的地方用VHDL,适合用原理图的地方用原理

      6、图,既增强了电路的可移植性,又减轻了设计者的设计压力,提高了设计效率。,2019/10/20,清华大学出版社,Page 12,图11-12 采用VHDL和原理图相结合的输入方法设计流程,11.2.1 创建混合FPGA项目,2019/10/20,清华大学出版社,Page 13,【实例11-1】1位二进制全加器设计 本例中,要求采用VHDL和原理图的混合设计方法,设计一个一位的二进制全加器。全加器的VHDL和原理图的混合设计原理图如图11-13所示。,图11-13 1位二进制全加法器,2019/10/20,清华大学出版社,Page 14,一位二进制半加器真值表如表11-2所示。其中a、b是输入端,So是和、Co进位端。,表11-2 二进制半加器真值表,11.3 FPGA属性设置,在Protel 的FPGA项目设计过程中,一般都要通过端口属性、元件符号属性、项目属性、文件属性和导线属性等对话框的【参数】面板中对FPGA项目进行相应的参数设置。一般有两种属性:一般属性和高级属性。 11.3.1一般属性 11.3.2高级属性,2019/10/20,清华大学出版社,Page 15,11.3.1一般

      7、属性,几乎所有的FPGA项目设计中都要对项目进行一般属性的设置。一般属性主要用来设置目标器件以及FPGA项目中的引脚锁定的相关信息。 1【引脚锁定】属性 【引脚锁定】属性用于锁定目标器件中用于信号传递和数据交换的引脚。【引脚锁定】属性主要放置在项目顶层文件中的端口上,通过添加或者修改参数来设置引脚的属性。【引脚锁定】属性的参数语法如下: NAME: PINNUM TYPE: STRING VALUE:,2019/10/20,清华大学出版社,Page 16,2【目标器件】属性 任何FPGA项目的设计都是先软件仿真,然后再对器件进行选型和连接。【目标器件】属性主要用于向布局和布线工具传送信息,以方便后面软件设计向硬件的转化。【目标器件】属性设定的参数语法如下: NAME: PART NAME TYPE: STRING VALUE:,2019/10/20,清华大学出版社,Page 17,11.3.2高级属性,高级属性主要用于优化EDIF文件,同时也可为器件或端口加入更多的用于设计的信息。Protle 中的高级属性包括【关键路径】属性、【约束缓冲】属性,【FPGA_GSR】属性、【时钟缓冲】属

      8、性。 1【关键路径】属性 参数语法: NAME: CRITICAL TYPE: BOOLEAN VALUE: TRUE 【关键路径】属性中的关键路径主要是指目标器件中关键信号的路径。,2019/10/20,清华大学出版社,Page 18,2【约束缓冲】属性 参数语法: NAME: INHIBITBUF TYPE: BOOLEAN VALUE:TRUE 约束缓冲属性主要用于在【Insert I/O-Buffers】选项打开时,禁止向端口插入I/O缓冲。,2019/10/20,清华大学出版社,Page 19,3.【FPGA_GSR】属性 参数语法: NAME: FPGA_GSR TYPE: BOOLEAN VALUE: TRUE 如果将FPGA项目的各各部分分开进行编译,或者当前编译后的EDIF文件将与其他项目连接,那么顶层的文件中必须有STARTUP符号,而其他层的RESET端则必须添加一个【FPGA_GSR】属性。一旦为端口加入了【FPGA_GSR】属性,那么这个端口将不与任何触发器的置1和置0端连接。,2019/10/20,清华大学出版社,Page 20,4【时钟缓冲】属性 参数语法

      9、: NAME: CLOCK_BUFFER TYPE: BOOLEAN VALUE: TRUE 【时钟缓冲】属性主要用于在【Insert I/O Buffers】选项打开时,为输入缓冲加入时钟缓冲。如果没有加入输入缓冲,则只需要在系统时钟之前放置一个时钟缓冲符号即可。,2019/10/20,清华大学出版社,Page 21,11.4 Protel 和Altera FPGA接口,Protel 支持几乎所有的Altera的元件集成库,如表11-4所示。,2019/10/20,清华大学出版社,Page 22,表11-4 Protel 支持的Altera库,11.5 实例讲解,2019/10/20,清华大学出版社,Page 23,【实例11-1】 VHDL与原理图的混合设计 本实例中,要求利用VHDL和原理图的混合输入方法,设计一个2位的十进制计数器。计数器的VHDL和原理图的混合设计原理图如图11-38所示。,图11-38 连接好的顶层原理图的设计,2019/10/20,清华大学出版社,Page 24,本章简要介绍了FPGA的概念及其设计流程,并简单对VHDL语言作了介绍。更为详细的CPLD/FPGA及VHDL方面的知识,读者可以参考相关的书籍。本章通过实例介绍在Protel 中进行FPGA设计的基本步骤和方法,重点讲解了VHDL和原理图的混合设计与仿真方法,读者可以在此基础上仔细研究并多做练习。,11.6 本章小结,

      《第11章.环境下的fpga设计》由会员F****n分享,可在线阅读,更多相关《第11章.环境下的fpga设计》请在金锄头文库上搜索。

      点击阅读更多内容
    最新标签
    信息化课堂中的合作学习结业作业七年级语文 发车时刻表 长途客运 入党志愿书填写模板精品 庆祝建党101周年多体裁诗歌朗诵素材汇编10篇唯一微庆祝 智能家居系统本科论文 心得感悟 雁楠中学 20230513224122 2022 公安主题党日 部编版四年级第三单元综合性学习课件 机关事务中心2022年全面依法治区工作总结及来年工作安排 入党积极分子自我推荐 世界水日ppt 关于构建更高水平的全民健身公共服务体系的意见 空气单元分析 哈里德课件 2022年乡村振兴驻村工作计划 空气教材分析 五年级下册科学教材分析 退役军人事务局季度工作总结 集装箱房合同 2021年财务报表 2022年继续教育公需课 2022年公需课 2022年日历每月一张 名词性从句在写作中的应用 局域网技术与局域网组建 施工网格 薪资体系 运维实施方案 硫酸安全技术 柔韧训练 既有居住建筑节能改造技术规程 建筑工地疫情防控 大型工程技术风险 磷酸二氢钾 2022年小学三年级语文下册教学总结例文 少儿美术-小花 2022年环保倡议书模板六篇 2022年监理辞职报告精选 2022年畅想未来记叙文精品 企业信息化建设与管理课程实验指导书范本 草房子读后感-第1篇 小数乘整数教学PPT课件人教版五年级数学上册 2022年教师个人工作计划范本-工作计划 国学小名士经典诵读电视大赛观后感诵读经典传承美德 医疗质量管理制度 2 2022年小学体育教师学期工作总结
     
    收藏店铺
    关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
    手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
    ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.