第三讲SOPC设计流程和软硬件协同设计方法docx.docx
《第三讲SOPC设计流程和软硬件协同设计方法docx.docx》由会员分享,可在线阅读,更多相关《第三讲SOPC设计流程和软硬件协同设计方法docx.docx(8页珍藏版)》请在冰豆网上搜索。
第三讲SOPC设计流程和软硬件协同设计方法docx
•Z基于AitesFPGA的SOPC
设计流程及设计工具
§1.1.EDA枚术的发襄越势
3.可编程器件设计环境
(支持硬核ARM922T
\支持软核NiosII
Altera—►MAX+PLUSIL»QuartusII
Xilinx
*FoundationISEPlatformStudio
{硬核PowerPC405
软核MicroBlaze
LatticeISPdn一SystemProgrammability)IspLever
可编程器件设计环境是开发SoPC的关键,只有通过软件的综合、分析、剪裁才能重构所需要的集成系统。
另外目前的开发环境都已集成了在线仿真和在线测试的模式,而使得利用软件编程手段就能完成对SoPC的设计。
因此,合理的选择一个功能强大、界面完整、输入方便的可编程、可重构的SoPC设计环境是走向成功的第一步。
Quartus[I软件设计平台
SOPC设计工具
l.QuartusII
QuartusH是近年来由Altera公司的推出的一套用于FPGA的集成开发环境。
完成系统的输入、综合、布局、仿
真、编程等。
2・SOPCBuilder
SOPCBuild巳:
为设计者提供了一个强大的可以快速开发
设计及验证的SOPC系统设计平台,用以搭建基于总线的系统。
它包含了一系列的模块,例如NiosII处理器、存储器、总线、DSP等IP核,为了将微处理器核、外围设备、存储器和其它IP核相连接起来,SOPCBuilde能够自动生成片上Avalon总线和总线了仲裁器等所需的逻辑。
SOPC设计工具
NIOSIDE(NIOSIntegratedDevelopEnvironment),是Altera公司提供的专|、i开发SOPC软件
的集成开发环境,它提供了一系列的管理工具,能完成对软
件项目的管理,并能够完成对源代码进行编辑、编译、连接、调试、下载等功能。
同时,NIOSIDE还集成了许多软件组
件,比如RTOS、LWIP、FS等软件组件,并提供了图形化的参数编辑方式。
基于这个平台可以方便地进行应用SOPC
应用软件的设计
SOPC设计流程
SOPC由于硬件和软件都必须自己设计和定制,它与传统的嵌入式系统设计流程不同;在传统的嵌入式系统开发中,其主控芯片一般是专用的集成电路,其结构是固定的,比如ARM系列的4510、44B0X、2410等等,这种控制器的外设已经设计好,而且地址都已经
固定,设计人员只要关心PCB设计和软件开发。
对于
SOPC的开发,设计人员必须同时关注片内硬件逻辑的
设计和应用软件的设计。
SOPCBuilder
QuartusII
设计规则、软硬件划分
自定义外设、指令
定义Nios系统模块
OS移植
生成Nios系统模块
SOPC系统实现
NIOSIDE
锁定引脚、硬件编译、仿真
硬件开发
生成
软件开发
开发自定义IP驱
动程序、定义HAL
Svstem>h
软硬件
协同验
编写应用程序
编译\连接\调试
软件下载到
SOPC板
❖2JPCow及其在SOPC中的地位
4・知识产权核(IPIntellectualProperty)
ip是知识产权的简称。
ip核的定义:
经过预先设计.预先验
功能的电路模块或子系统,可重用(Reuse)于SoC、SoPC或复杂的ASIC设计中。
所谓IP资源复用(IPReuse)是指在集成电路设计过
程中,通过继承、共享或购买所需的知识产权内核,然
片设计过程,降低开发风险。
IPReuse已逐渐成为现代集
成电路设计的重要手段,在日新月异的各种应用需求面
前,超大规模集成电路设计时代正步入一个IP整合的时
代。
基于FPGA的IP资源复用(IPReuse)
IPReuse不仅仅是应用于ASIC的设计,它对基于FPGA的系统设计而言更具有举足轻重的地位。
目前FPGA在采用IPReuse方面已走在市场的前面,其原因有以下几点:
够FPGA具有极高的灵活性和面市周期短的特点,这使
多项设计的综合迭代过程仅在数小时之内得以完成。
由于FPGA密度达到了百万门甚至千万门,越来越多的设计师倾向于使用IP核来保持和提高产品的产量。
®FPGA的设计成本低廉,可作为切实可行的生产工具以及最佳原型设计,从而大大降低了设计门槛。
IPCore存在形式
ip分为软ip、固ip和硬ip。
3软IP是指描述功能块的行为的HDL程序包,它并不涉及用什么电路和电路元件实现这些行为。
深度,以网表的形式提交客户使用。
甥硬ip提供设计的最终阶段产品:
掩膜。
e本系统设计的Avalon总线接口的IP和独立接口的IP均为软IP核,他们均以HDL的形式存在。
IPCove的表现形式
OHDL语言(VHDL或VerilogHDL)够原理图(可移植性差)
<>网表
<>符合某种EDA工具的特定格式
IPCow的分类-—SOPC的要素VsASIC
e微处理器IPCore
s8/16/32/64位,如MicroBlaze、Nois、8051
处理器外设IPCore
55SDRAM控制器、LCD控制器、总线控制器等
eDSP算法IPCore
:
■:
FIR滤波器、DES加密、音视频编码和解码等
e通信控制器IPCore
£■:
MAC、Gbit收发器、CAM、协议转换等
其它类型IPCore
IPCo“设计:
编码风格
编码风格(CodingStyle)是基于HDL的IPCore源码编写的指导性文档,关系到IPCore的可读性、易于集成性及其质量
够编码风格一般包含几个方面的约定:
文件头和版本说明、联机注释、命名规则、可综合编码
(UCF)等
令http:
//www.opencotes.org
裁http:
//www.IPcore.com.cn
•:
SOPC设计中的软硬件
协同设计
软硬件协同设计定义与主要概念
3软硬件协同设计定义
E-:
Themeetingofsystem-levelobjectivesbyexploit!
ngthetrade-offsbetweenhardwareandsoftwareinasystemthroughtheirconcurrentdesign
3主要概念
55Concurrent(并发):
hardwareandsoftwaredevelopedatthesametimeonparallelpathssaintegrated(交互):
interactionbetweenhardwareandsoftwaredevelopmentstoproducedesignsthatmeetperformaneecriteriaandfunctionalspecifications
软硬件协同设计定义与主要概念
Seqiwnriji]proEramcod*(es,3C."VHDL)
蜡如朋+桎序实S氐^lei^ti^ASlC.orPLD换M
件硬件"
给定功能的硬件和软件选择只是多种设计指标的折衷:
如性能,功耗,大小,价格,灵活性;至丁•软件和硬件实现没有太大的羞别.
传统的嵌入式系统设计过程
®传统软硬件设计过程的基本特征:
B系统在一开始就被划分为软件和硬件两大部分
B软件和硬件独立进行开发设计
huHardwarefirst”approachoftenadopted®隐含的一些问题:
a软硬件之间的相互性能影响很难评估B系统集成相对滞后.
hPoorqualitydesigns(设计质量差)
hCostlymodifications(设计修改难)
软硬件协同设计过程
系统定义(需求分析)
软硬件划分
B结构规划-处理器类型,软硬件之间的接口类型,等.
B划分目的-满足系统速度,延迟,体积,成本等方面的要求.
£-3戈|」分策略-highlevelpartitioningbyhandzautomatedpartitioningusingvarioustechniques,etc.
软硬件设计(同时进行)
典型的软硬件协同设计过程
AnotherHW/SWpartition
软硬件协同设计的优势
0在设计初始阶段就可进行软硬件交互设计和调整
esProvidescontinualverificationthroughoutthedesigncycle(贯穿整个设计周期)
黔SeparateHW/SWdevelopmentpathscanleadtocostlymodificationsandscheduleslippages
诊关键技术(如可编程逻辑综合技术、器件接口和功能模型描述)的进步使得软硬件交互设计变得简单起来
Thankyou!