热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

简述基于EDA技术的FPGA设计

原文地址物联网、人工智能、大数据等新兴技术的推动,集成电路技术和计算机技术得到蓬勃发展。电子产品设计系统日趋数字化、复杂化和大规模集成化,各种电子系统的

原文地址


物联网、人工智能、大数据等新兴技术的推动,集成电路技术和计算机技术得到蓬勃发展。电子产品设计系统日趋数字化、复杂化和大规模集成化,各种电子系统的设计软件应运而生。在这些专业化软件中,EDA(Electronic Design Automation)具有一定的代表性。EDA技术是一种基于芯片的现代电子系统设计方法。它的优势主要集中在能用HDL语言进行输入、进行PEn(可编程器件)的设计与仿真等系统设计。现场可编程门阵列FPGA作为集成度和复杂程度最高的可编程ASIC。是ASIC的一种新型门类,它建立在创新的发明构思和先进的EDA技术之上。




EDA技术主要包括大规模可编程逻辑器件、硬件描述语言、开发软件工具及实验开发系统4个方面。其中,大规模可编程逻辑器件是利用EDA技术进行电子系统设计的载体硬件.描述语言是利用EDA技术进行电子系统设计的主要表达手段。开发软件工具是利用EDA技术进行电子系统设计的智能化与自动化设计工具。实验开发系统则是提供芯片下载电路及EDA实验、开发的外围资源。




运算器、乘法器、数字滤波器、二维卷积器等具有复杂算法的逻辑单元和信号处理单元的逻辑设计都町选用FPGA实现。以Xilinx的FPGA器件为例,它的结构可以分为3个部分:可编程逻辑块CLB(Configurable Losic Blocks)、可编程I/O模块IOB(Input/OutputBlock)和可编程内部连接PI(Programmable Interconnect)。CLB在器件中排列为阵列,周围环形内部连线,10B分布在四局的管脚上。Xilinx的CLB功能很强。不仅能够实现逻辑函数。还可以配置成R^M等复杂的形式。




现场可编程门阵列FPGA是含有大规模数字电路的通用性器件。这些数字电路之间的互联网络是由用户使用更高级的软件来定义的。FFCA可以进行无限次的重复编程,从一个电路到另一个电路的变化是通过简单的卸载互联文件来实现的,极大地推动了复杂数字电路的设计,缩短了故障检查的时间。




传统的数字逻辑设计使用TTL电平和小规模的数字集成电路来完成逻辑电路图。使用这些标准的逻辑器件已经被证实是最便宜的手段。但是要求做一些布线和复杂的电路集成板(焊接调试)等工作,如果出现错误。改动起来特别麻烦。因此,采用传统电子设计方案人员的很大一部分工作主要集中在设备器件之间物理连接、调试以及故障解决方面。正是因为FPGA的EDA技术使用r更高级的计算机语言。电路的生成基本上是由计算机来完成,将使用户能较快地完成更复杂的数字电路设计,由于没有器件之间的物理连接。因此调试及故障排除更迅速、有效。




FPGA能进行无限次的重复编程。因此能够在相同的器件上进行修改和卸载已经完成好的设计。在一个FPGA芯片上的基本部件数量增加了很多,这使得在FPGA上实现非常复杂的电子电路设计变成比较现实。由于采用FPGA的EDA技术所产生的性价比更高一些,从而使得非常多的单位越来越多的采用这项技术.并且这种增长趋势仍旧在继续。




FPGA中的逻辑块是CLB.逻辑块是指PLD(Programmable bgicDevice)芯片中按结构划分的功能模块,它有相对独立的组合逻辑单元。块问靠互连系统联系。FPGA的逻辑块粒度小,输入变量为4-8,输出变量为1-2,每块芯片中有几十到上千个这样的单元.使用时非常灵活。FPGA内部互连结构是靠可编程互联PI实现逻辑块之间的联接。它的互联是分布式的,它的延时与系统布局有关,不同的布局.互联延时不同。根据FPGA的不同类型,可采用开关矩阵或反熔线丝技术将金属线断的端点连接起来,从而使信号可以交换于任意两逻辑单元之间。




采用FPGA技术集成设计数字电路产品最大的特点就是可以使设计和实现相统一。无须前期风险投资,而且设计实现均在实验室的EDA开发系统上进行,周期很短,大大有利于产品的市场竞争需求,所以FPGA的应用设计。特别适应于电子新产品的小批量开发。科研项目的样机试制以及ASIC产品设计的验证,能够进行现场设计实现、现场仿真及现场修改。




FPGA所具有的无限次可重复编程能力,灵活的体系结构,丰富的触发器及布线资源等一系列的特点使得它可以满足电子产品设计的多种需求。FPGA的应用领域主要集中在替换通用逻辑和复杂逻辑、重复编程使用、板极设计集成、高速计数器、加减法器、累加器和比较器的实现、总线接口逻辑等方面。面对科学技术高速发展,熟练的掌握EDA设计技术,灵活巧妙的使用FPGA至关重要。


原文地址



推荐阅读
  • 配置多VLAN环境下的透明SQUID代理
    本文介绍如何在包含多个VLAN的网络环境中配置SQUID作为透明网关。网络拓扑包括Cisco 3750交换机、PANABIT防火墙和SQUID服务器,所有设备均部署在ESXi虚拟化平台上。 ... [详细]
  • 云计算的优势与应用场景
    本文详细探讨了云计算为企业和个人带来的多种优势,包括成本节约、安全性提升、灵活性增强等。同时介绍了云计算的五大核心特点,并结合实际案例进行分析。 ... [详细]
  • Python处理Word文档的高效技巧
    本文详细介绍了如何使用Python处理Word文档,涵盖从基础操作到高级功能的各种技巧。我们将探讨如何生成文档、定义样式、提取表格数据以及处理超链接和图片等内容。 ... [详细]
  • 如何使用Ping命令来测试网络连接?当网卡安装和有关参数配置完成后,可以使用ping命令来测试一下网络是否连接成功。以winXP为例1、打开XP下DOS窗口具体操作是点击“开始”菜 ... [详细]
  • 智慧城市建设现状及未来趋势
    随着新基建政策的推进及‘十四五’规划的实施,我国正步入以5G、人工智能等先进技术引领的智慧经济新时代。规划强调加速数字化转型,促进数字政府建设,新基建政策亦倡导城市基础设施的全面数字化。本文探讨了智慧城市的发展背景、全球及国内进展、市场规模、架构设计,以及百度、阿里、腾讯、华为等领军企业在该领域的布局策略。 ... [详细]
  • 本文档旨在帮助开发者回顾游戏开发中的人工智能技术,涵盖移动算法、群聚行为、路径规划、脚本AI、有限状态机、模糊逻辑、规则式AI、概率论与贝叶斯技术、神经网络及遗传算法等内容。 ... [详细]
  • Struts与Spring框架的集成指南
    本文详细介绍了如何将Struts和Spring两个流行的Java Web开发框架进行整合,涵盖从环境配置到代码实现的具体步骤。 ... [详细]
  • 本文详细介绍了C语言的起源、发展及其标准化过程,涵盖了从早期的BCPL和B语言到现代C语言的演变,并探讨了其在操作系统和跨平台编程中的重要地位。 ... [详细]
  • 方法:1 配置数据库basediros.path.abspath(os.path.dirname(__file__))  #获取当前文件的绝对路径appFlask(__name__ ... [详细]
  • 在本教程中,我们将深入探讨如何使用 Python 构建游戏的主程序模块。通过逐步实现各个关键组件,最终完成一个功能完善的游戏界面。 ... [详细]
  • 采用IKE方式建立IPsec安全隧道
    一、【组网和实验环境】按如上的接口ip先作配置,再作ipsec的相关配置,配置文本见文章最后本文实验采用的交换机是H3C模拟器,下载地址如 ... [详细]
  • 本文详细介绍了如何在不同操作系统和设备上设置和配置网络连接的IP地址,涵盖静态和动态IP地址的设置方法。同时,提供了关于路由器和机顶盒等设备的IP配置指南。 ... [详细]
  • 本文详细介绍了在不同操作系统中查找和设置网卡的方法,涵盖了Windows系统的具体步骤,并提供了关于网卡位置、无线网络设置及常见问题的解答。 ... [详细]
  • 本文探讨了Java编程中MVC模式的优势与局限,以及如何利用Java开发一款基于鸟瞰视角的赛车游戏。 ... [详细]
  • 每年11月,纽约的华人金融界都会聚集在一起,参加全美华人金融协会(TCFA)的年度盛会。今年,TCFA年会迎来了其第23届,主题聚焦于‘中美为核心的多极世界中的金融市场风险与机遇’,特别强调了金融科技领域的发展。 ... [详细]
author-avatar
风流小姑-娘
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有