计算机EDA设计06_03_006PPT课件_第1页
计算机EDA设计06_03_006PPT课件_第2页
计算机EDA设计06_03_006PPT课件_第3页
计算机EDA设计06_03_006PPT课件_第4页
计算机EDA设计06_03_006PPT课件_第5页
已阅读5页,还剩50页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

.,1,计算机EDA设计教程,北航计算机学院艾明晶,.,2,6.1SOPC技术6.2SOPCBuilder简介6.3SOPCBuilder设计流程6.4SOPCBuilder用户界面,共1学时,第6章SOPCBuilder开发工具,.,3,6.1SOPC技术,一、SOPC技术二、基于FPGA嵌入IP硬核的SOPC系统三、基于FPGA嵌入IP软核的SOPC系统四、基于HardCopy技术的SOPC系统,内容概要,.,4,6.1SOPC技术,一、SOPC技术1.什么是SOC?定义:广义地说,SOC(SystemOnaChip,片上系统)是指在单片上集成系统级多元化的大规模功能模块,从而构成一个能够处理各种信息的集成系统。这个集成系统通常由一个主控单元和一些功能模块组成,主控单元通常是一个处理器,如ARMRISC、MIPSRISC、PowerPC、Nios、DSP等;功能模块可能有传感器、模拟信号处理电路、A/D、D/A、数字信号处理电路等,用来完成信号的接收、预处理、转换及信号执行等任务。,.,5,6.1SOPC技术,狭义地讲,SOC是一种结合了许多功能模块和微处理器核心的单芯片电路系统。它将原本需要多片芯片在一块电路板上完成的系统功能集成在一片芯片上,大大减小了系统体积和成本。SOC是以嵌入式系统结构为基础,集软、硬件于一体的系统级芯片。它是现代化电子系统设计开发的最佳选择。,SOC的实现途径:(1)对于经过验证而有批量的系统芯片,做成专用集成电路ASIC大量生产;(2)对于小批量应用或处于开发阶段的SOC,采用SOPC来实现SOC的功能。,.,6,6.1SOPC技术,2.什么是SOPC?定义:SOPC(SystemOnaProgrammableChip,可编程片上系统)技术是指面向单片系统级专用集成电路设计的计算机技术。它是利用可编程逻辑技术把整个系统放到一块硅片上。SOPC是片上系统(SOC,SystemOnaChip),即由单个芯片完成整个系统的主要逻辑功能;同时它又是可编程系统,可裁减,可扩充,可升级。SOPC结合了SOC和PLD、FPGA各自的优点,具备以下基本特征:至少包含一个嵌入式处理器内核;具有小容量片内高速RAM资源;丰富的IP核资源可供选择;足够的片上可编程逻辑资源;处理器调试接口和FPGA编程接口;可包含部分可编程模拟电路;单芯片,低功耗,微封装。,.,7,6.1SOPC技术,SOPC:SYSTEMONAPROGAMMABLECHIP,.,8,6.1SOPC技术,大规模FPGA,Nios嵌入式系统IP软核,FlashROM,固体硬盘,SRAM,内存,SDRAM,内存,嵌入式Bios,嵌入式ROM,嵌入式RAM,嵌入式FIFO,SDRAM控制模块,硬件DSP模块,RS232,CAN控制器,DMA,VGA控制器,RS232接口电路,PS2键盘接口,PS2鼠标接口,Ethernet接口,内部时钟,PIC接口,浮点算术协处理器,VGA接口,PS/2键盘/鼠标接口,D/A接口,A/D接口,LCD接口,LED接口,USB控制器,UARTFIFO,并行接口,图象或语音采样接口,立体声输出接口,通用I/O口,应用系统,SOPC,.,9,6.1SOPC技术,2003年7月Forbes福布斯报道:FPGA芯片叫板微处理器-如果没有微处理器,电脑会怎样?答案令人惊讶-FPGA的处理速度比常规电脑更快,而且快出很多倍!尽管FPGA芯片的主频要低于奔腾处理器,但是由于FPGA芯片可并行处理多项任务,因此处理速度要比奔腾处理器或数字信号处理器快得多!FPGA芯片武装超级电脑设计工程师开始采用FPGA芯片来武装超级电脑,取代了原先大量的英特尔奔腾处理器。经过编程,FPGA芯片可并行处理多项任务,从而使所有电路都能随时发挥作用。,.,10,6.1SOPC技术,FPGA芯片叫板微处理器美国赢通系统公司(WincomSystems)推出一款令人惊叹的服务器。这款专为网站运行而设计的服务器尺寸仅有DVD播放机大小,工作能力却相当于,甚至超过50台戴尔、IBM或SUN公司售价5000美元的服务器。赢通公司的这款服务器并未采用目前电脑中不可或缺的微处理器。传统的个人电脑及服务器通常采用英特尔的奔腾处理器或SUN计算机系统公司的SPARC芯片作为中央处理单元。而赢通的这一产品却没有采用微处理器,而是由FPGA芯片驱动。FPGA芯片的运行速度比奔腾处理器慢,但可并行处理多项任务,而微处理器一次仅能处理一项任务。因此,赢通公司的服务器只需配置几个价格仅为2000多美元的FPGA芯片,便可击败SUN计算机系统公司的服务器或采用英特尔处理器的电脑,“我们的服务器处理速度要比普通服务器快50到300倍”。FPGA芯片在一定程度上正在蚕食微处理器的市场。FPGA芯片也开始用于消费类的电子设备中,包括手机和数码相机。飞利浦、诺基亚、Palm及索尼均在其消费类的电子产品中采用了FPGA芯片。,.,11,6.1SOPC技术,FPGA芯片叫板微处理器(续1)XILINX的首席执行官W.Roelandts亲眼目睹了FPGA如何改变电脑构架。50多年前,匈牙利数学家纽曼(JohnvonNeumann)提出了电脑的设计构想-通过中央处理器从存储器中存取数据,并逐一处理各项任务。现在,通过采用可编程芯片FPGA取代微处理器,电脑可并行处理多项任务。W.Roelandts说,“由纽曼提出的电脑架构已经走到尽头”,“可编程芯片将掀起下一轮应用高潮。”尽管FPGA芯片的时钟频率要低于奔腾处理器,但是由于FPGA芯片可并行处理各种不同的运算,所以可完成许多复杂的任务。例如网页显示,全球天气建模及基因组合核对等,而且处理速度比奔腾处理器或数字信号处理器快得多。在通用计算方面,FPGA仍然不敌Intel的处理器。对于那些只需要进行重复单任务操作的机器而言,使用FPGA芯片显然是大材小用。,.,12,6.1SOPC技术,FPGA芯片叫板微处理器(续2)位于内华达州的TimeLogic公司也间接受益于FPGA。戴尔和SUN公司生产的某些标准服务器采用了ALTERA公司的FPGA芯片。TimeLogic公司对这些标准服务器加以改进之后,生产了一种用于基因研究的高速处理设备。“我们的设备比原来的产品至少快1000倍”,TimeLogic公司总监ChristopherHoover说。该公司的这一设备售价25万美元。马里兰州的AnnapolisMicroSystems公司在其电脑芯片电路板中也集成了XILINX的FPGA芯片,以提高产品性能。又如加州的BlueArc公司用ALTERA的FPGA开发出一种存储器产品,其速度比NetworkAppliance和EMC公司的竞争产品更快。华盛顿州Bellevue市的MidStreamTechnologies公司采用XILINX的FPGA,为有限电视运营商开发视频流服务器。这款服务器高仅3.5英尺,采用了2片FPGA芯片,可同时提供425路视频流信号,比基于通用微处理器的服务器速度更快。如果您正在福布斯的网站上阅读这篇文章,那么你已经接触到了FPGA。因为F正是采用赢通公司的FPGA服务器进行网页显示的。,.,13,6.1SOPC技术,FPGA芯片武装的超级电脑,超级电脑是科技世界中的极品:售价奇高,速度飞快,集成了数以千计的微处理器。但这种超级电脑也浪费了非常多的芯片资源,每个处理器只能进行单任务操作,大部分功能难以充分发挥。现在有了另一种更为简洁的设计:设计工程师开始采用FPGA芯片来武装超级电脑,取代了原先大量的英特尔奔腾处理器。经过编程,FPGA芯片可并行处理多项任务,从而使所有电路都能随时发挥作用。FPGA芯片还可以反复编程,而且几乎可瞬时完成。在某一时刻它可以为美国国防部预报全球天气状况,下一时刻又可根据高盛公司(GoldmanSachs)做的主要利率对冲情况来评估债券市场的风险。下一代超级电脑将基于可编程逻辑器件,这种机器的功能将比目前最大的超级电脑还要强大许多。其中的秘诀在于,设计者可以把自己的想法编成程序代码,然后让FPGA芯片去实现。,.,14,6.1SOPC技术,FPGA芯片武装的超级电脑(续),犹他州的StarBridgeSystems公司声称已经解决了这一问题。该公司使用FPGA和自己的Viva编程语言开发出了“超级电脑(hypercomputer):“运行速度无与伦比”。对该超级电脑进行测试的美国国家航空航天局(NASA)科学家表示,这一产品的性能令人过目难忘。美国加州大学伯克利分校(UniversityofCalifornia,Berkeley)和杨百翰大学(BrighamYoungUniversity)的研究员也正在设计基于FPGA的电脑,这些电脑可在运行中实现动态重配置。这对定位危险目标等军事应用和面容识别一类的计算密集型安全应用十分有用。,.,15,6.1SOPC技术,SOPC技术是美国Altrea公司于2000年最早提出的,并同时推出了相应的开发软件QuartusII。SOPC是基于FPGA解决方案的SOC,与ASIC的SOC解决方案相比,SOPC系统及其开发技术具有更多的特色,构成SOPC的方案也有如下多种途径。,.,16,6.1SOPC技术,二、基于FPGA嵌入IP硬核的SOPC系统,即在FPGA中预先植入嵌入式系统处理器硬核。目前最常用的嵌入式系统大多采用含有ARM的32位处理器IP核的器件。尽管由这些器件构成的嵌入式系统有很强的功能,但通常必须为此处理器配置许多接口器件才能构成一个完整的应用系统。这样会增加系统的体积、功耗,而降低系统的可靠性。但如果将ARM或其他IP核,以硬核方式植入FPGA中,利用FPGA中的可编程逻辑资源和IP软核,直接利用FPGA中的逻辑宏单元来构成嵌入式系统处理器的接口模块,就能很好地解决这些问题。如Altera公司的Excalibur系列FPGA中植入了ARM922T处理器;Xilinx公司的VirtexII系列中植入了IBMPowerPC405处理器,使得FPGA灵活的硬件设计和硬件实现与处理器强大的软件功能有机结合,高效地实现SOPC系统。,.,17,6.1SOPC技术,三、基于FPGA嵌入IP软核的SOPC系统,但将处理器IP硬核直接植入FPGA的解决方案存在如下几种不足:,此类硬核多来自第三方公司,FPGA厂商通常无法直接控制其知识产权费用,从而导致FPGA器件价格相对较高。硬核是预先植入的,设计者无法根据实际需要改变处理器的结构,如总线规模、接口方式、乃至指令形式,更不可能将FPGA逻辑资源构成的硬件模块以指令的形式形成内置嵌入式系统的硬件加速模块,以适应更多的电路功能要求。无法根据实际设计需求在同一FPGA中使用多个处理器核。无法裁减处理器硬件资源以降低FPGA成本。只能在特定的FPGA中使用硬核嵌入式系统,如只能使用Excalibur系列FPGA中的ARM核,Virtex-IIPro系列中的PowerPC核。,.,18,6.1SOPC技术,嵌入式系统处理器软核就能有效地克服解决上述不利因素。最具有代表性的嵌入式系统处理器软核分别是Altera的Nios和NiosII核,及Xilinx的MicroBlaze核。Altera的Nios核是用户可以随意配置和构建的32位/16位总线(用户可选的)指令集和数据通道的嵌入式系统微处理器IP核,采用Avalon总线结构通信接口,带有增强的内存、调试和软件功能;含有FirstSiliconSolutions开发的基于JTAG的片内设备(OCI)内核。Nios核含有许多可配置的接口模块核:高速缓存、RS232通信口、SDRAM控制器、标准以太网协议接口、DMA、定时器、协处理器等。Nios核在同一FPGA中被植入的数量没有限制;Nios核可植入的AlteraFPGA的系列几乎没有限制。通过Matlab和DSPBuilder,或直接使用HDL设计,用户可为Nios核设计各种加速器,并以指令的形式加入Nios的指令系统,成为Nios系统的一个接口设备。,.,19,6.1SOPC技术,HardCopy技术:利用原有的FPGA开发工具,将成功实现于FPGA器件上的SOPC系统通过特定的技术直接向ASIC转化。由Altera推出。系统级的大规模ASIC开发,开发周期长(一年),一次性成功率低,有最少投片量要求,设计软件工具繁多且昂贵(数十万美元),开发流程复杂。而HardCopy技术通过强化SOPC工具的设计能力,在保持FPGA开发优势的前提下,引入ASIC的开发流程,从而对ASIC市场形成直接竞争。开发软件费用仅2000美元,开发周期不超过20周,掩膜层只有两层,一次性投片的成功率几乎为100%。而且用ASIC实现的系统性能比在FPGA上验证的模型提高近50%,功耗降低40%。HardCopy技术是一种全新的SOC级ASIC设计解决方案,即将专用的硅片设计和FPGA至HardCopy自动迁移过程相结合在一起的技术。本质上HardCopy器件是FPGA的精确复制,剔除了FPGA的可编程性、专用配置和采用金属互连使用的走线。使器件的硅片面积更小、成本更低,而且改善了时序特性。,四、基于HardCopy技术的SOPC系统,.,20,6.1SOPC技术,表6-13种SOC方案的比较,.,21,6.2SOPCBuilder简介,一、SOPCBuilder简介二、SOPCBuilder的功能特点三、SOPCBuilder的优点,内容概要,.,22,6.2SOPCBuilder简介,一、SOPCBuilder简介SOPCBuilder是Altera公司推出的一种可以加快在PLD内实现嵌入式处理器相关设计的工具。设计者可确定所需的处理器模块和参数,并据此创建一个处理器的完整存储器映射。设计者还可以选择所需的IP外围电路,如存储器控制器、I/O控制器和定时器等模块。所有版本的AlteraQuartusII软件都包含SOPCBuilder。采用SOPCBuilder,能够在一个工具内定义一个从硬件到软件的完整系统,花费的时间仅仅是传统SOC设计的几分之一。SOPCBuilder提供了一个强大的平台,用于组建一个模块级和组件级定义的系统。SOPCBuilde的组件库包含简单的固定逻辑的功能块和复杂的、参数化的、可以动态生成的子系统等组件,库中已有的组件包括:(1)处理器:包括片内处理器和片外处理器接口。(2)IP及外设:包括通用的微控制器外设,通信外设,多种接口(储存器接口、桥接口、ASSP、ASIC),数字信号处理(DSP)IP和硬件加速外设。,.,23,6.2SOPCBuilder简介,SOPCBuilderDevelopmentTool,1.SystemCustomization定制系统,IP,Software,Testbench,UserLogic,2.ComponentIntegration组件集成,3.SoftwareGeneration软件生成,4.SystemVerification系统验证,SOPCBuilder用于帮助用户迅速集成一个基于IP模块库的完整的硬件子系统。,.,24,6.2SOPCBuilder简介,二、SOPCBuilder的功能特点1、具有直观的图形用户界面(GUI)利用图形用户界面,用户可快速、方便地定义和连接复杂的系统。,可用组件列表,当前选中的组件列表,.,25,6.2SOPCBuilder简介,2、自动生成和集成软件和硬件,组件集成:SOPCBuilder会生成每个硬件部件(Component)以及连接部件的片内总线结构、仲裁和中断逻辑;产生系统可仿真的RTL描述,把硬件系统综合到单个网表中系统验证:产生为特定硬件配置设计的测试平台,使用户可以在自定义的处理器上立即仿真软件的执行。软件生成:能够生成C和汇编头文件,这些头文件定义了存储器映射、中断优先级和每个外设寄存器空间的数据结构。如果硬件改变了,SOPCBuilder会自动更新这些头文件。SOPCBuilder会为系统中的现有的每个外设生成定制的C和汇编函数库。,.,26,6.2SOPCBuilder简介,3、开放性,SOPCBuilder开放了硬件和软件接口,允许第三方像Altera一样有效地管理SOPC部件,用户可以根据需要将自己设计的部件添加到SOPCBuilder的列表中。,.,27,6.2SOPCBuilder简介,三、SOPCBuilder的优点SOPCBuilder系统设计在利用PLD的逻辑资源、存储器、DSP模块、专用I/O上具备以下优势:,在逻辑容量、存储器和DSP模块以及专用I/O标准上具有灵活性;上市周期快;没有非重复性工程(NRE)费用;不需要制作昂贵的设计工具;风险低,用户可以以实际的运行频率在硅片上验证自己的设计。,.,28,6.3SOPCBuilder设计流程,一、配置阶段二、生成阶段,内容概要,.,29,6.3SOPCBuilder设计流程,SOPCBuilder的设计流程包括两个阶段:配置和生成,它是利用ClassPTF和SystemPTF两个文件来配置和生成系统的。,一、配置阶段SOPCBuilderGUI引导用户完成两部分的配置:部件配置和系统配置。部件配置需要汇总参数,ClassPTF文件标准包括了为这一要求定义GUI的格式,SOPCBuilder读取该格式,产生相应部件向导(ComponentWizard),收集所需的用户数据。然后SOPCBuilder把收集的参数值存放在SystemPTF文件中。系统配置是指把用户提供的有关处理器的配置、外设连接等数据写入SystemPTF中。,.,30,6.3SOPCBuilder设计流程,ClassPTFFiles,SOPC配置,.,31,6.3SOPCBuilder设计流程,ClassPTFFiles,SOPC配置,.,32,6.3SOPCBuilder设计流程,SystemPTFFiles,ClassPTFFiles,SOPC配置,.,33,6.3SOPCBuilder设计流程,SystemPTFFiles,ClassPTFFiles,SOPC配置,.,34,6.3SOPCBuilder设计流程,二、生成阶段SOPCBuilder查阅每个ClassPTF文件,允许相关部件生成程序,它们会正确地输出特定系统配置的硬件和软件文件。简单的部件生成程序可能每次都会输出相同的文件,更多的可配置部件则会根据用户输入生成完全不同的结构。在生成阶段的最后一步,SOPCBuilder创建适合于系统部件的总线结构,把所有部件连接在一起。,.,35,6.3SOPCBuilder设计流程,ClassPTFFiles,SystemPTFFiles,SOPC配置,SOPC生成,.,36,6.3SOPCBuilder设计流程,SOPC配置,SystemPTFFiles,SOPC生成,ClassPTFFiles,.,37,6.3SOPCBuilder设计流程,SystemPTFFiles,输出文件,HDLFiles,Soft-wareFiles,仿真文件,用户定义文件,SOPC配置,SOPC生成,ClassPTFFiles,图6-1系统生成流程,.,38,6.4SOPCBuilder用户界面,一、系统元件页二、系统设置页三、系统生成页四、生成系统五、SOPCBuilder菜单命令,内容概要,.,39,6.4SOPCBuilder用户界面,在QuartusII中打开一个项目,执行:“ToolsSOPCBuilder”命令,则启动了SOPCBuilder。SOPCBuilder用户界面包括系统元件(SystemContents)页、系统设置(NiosIIMore“cpu”Settings)页和系统生成(SystemGeneration)页。系统元件页:定义所需的系统,即在模块池中选择元件,添加到模块表中。模块池列出了根据总线类型和逻辑类别分类的所有可用的库元件。每个元件名前面有一个带颜色的圆点,不同的颜色有不同的含义。模块表列出了用户添加到自己所设计系统中的模块,如桥、总线接口、CPU、存储器接口、外围设备等。,.,40,模块池,模块池选择器,绿圆点:用户可以添加到用户系统中的元件是完全许可的;黄圆点:元件在系统设计中的应用受到限制,或者是使用时间有限,或者是功能有所减少;白圆点:元件目前还未安装到用户的系统上,用户可以从网上下载这些元件。,6.4SOPCBuilder用户界面,一、系统元件页,.,41,6.4SOPCBuilder用户界面,模块池,模块池选择器,消息栏,系统时钟,目标器件,模块表可以描述:连接的主、从性;系统地址映射;系统中断请求分配;控制共享从元件的优先权。,.,42,6.4SOPCBuilder用户界面,SystemContents中模块表,.,43,6.4SOPCBuilder用户界面,如何添加元件到模块表?,在模块池中点击要添加的元件名,然后点击Add,会出现以下两种情况中的一种:(1)对于可用的、已安装上的并有设置向导的元件,会出现一个对话框,让用户设置各种选项,再点击Finish,就可将元件添加到模块表中。若元件没有选项对话框,它会被自动加到模块表中。(2)对于可用的、但没有安装的元件,也会出现一个对话框,通过该对话框可连接到网上下载元件或从厂商处获取元件。,.,44,6.4SOPCBuilder用户界面,系统元件页附加设置,系统元件页还包括以下一些附加选项:(1)器件系列(DeviceFamily):由用户从器件列表中选择用户的目标器件。这项设置非常重要,因为SOPCBuilder是利用所选器件系列的结构优势来产生系统的逻辑的。注意:若已在Board栏中指定了具体的开发板,则此选项为灰色,不可选;QuartusII软件不使用这个器件设置,用户还必须在QuartusII软件中指定器件!(2)系统时钟频率(SystemClockFrequency):外围设备利用系统时钟来产生时钟分频或波特率。SOPCBuilder的built-intestbench发生器还利用这项设置来产生用户所要求的频率。注意:所设置的频率必须与用户所要用到的电路板的频率相匹配!QuartusII的时序分析器不使用这个选项设置的时钟频率,用户还必须在QuartusII中进行设置!,.,45,6.4SOPCBuilder用户界面,二、系统设置页,当用户向所设计系统中添加元件时,如一个Nios嵌入式处理器,则在SOPCBuilder中会出现一个系统设置(NiosIIMore“cpu”Settings)页,该页可以让用户设置一些附加参数或与系统中其他元件的相连关系。对于用到系统设置页的元件,SOPCBuilder会对用户添加到用户系统中的这个元件的每种情况都生成一个单独的系统设置页。处理器元件可能会有相关的软件组件,并且会在此页中显示出来。从实用程序库(UtilityLibraries)到实时操作系统都有软件组件的例子。Altare在开发工具包中提供了多种软件组件,如由Nios开发工具包提供的Plugs库(轻量级TCP/IP库)。,.,46,6.4SOPCBuilder用户界面,系统设置页,.,47,6.4SOPCBuilder用户界面,三、系统生成页,系统生成页包含一些选项,用户通过设置它们来控制生成过程,如器件支持和仿真控制。在系统生成过程中,此页会报告各种消息。,用来生成用户系统,系统生成过程消息栏,SOPCBuilder消息栏,.,48,6.4SOPCBuilder用户界面,1.SDK(SoftwareDevelopmentKid,软件开发工具包),若选择SDK选项,SOPCBuilder会在每次生成系统时给用户

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论