为了正常的体验网站,请在浏览器设置里面开启Javascript功能!
首页 > 嵌入式软处理器在硅IP开发中的验证加速方法.doc

嵌入式软处理器在硅IP开发中的验证加速方法.doc

2017-09-26 5页 doc 16KB 9阅读

用户头像

is_633423

暂无简介

举报
嵌入式软处理器在硅IP开发中的验证加速方法.doc嵌入式软处理器在硅IP开发中的验证加速方法.doc 嵌入式软处理器在硅IP开发中的验证加速方法 摘要 本文提出了一种利用嵌入式软处理器进行硅IP调试和验证的方法。将嵌入式软处理器与待验证的IP进行绑定和整合,为待验证的硅IP提供了便捷的调试和评估环境,大大加速了集成电路设计的开发进程。 关键词 嵌入式 硅IP开发 方法 在现代的集成电路设计过程中,常常使用用砖头,盖房子类似的方法来进行大规模项目的设计。硅IP模块就是盖房子用的砖头。砖头质量的好坏,直接决定了整个集成电路设计的成败。对于集成电路而言,在大多数情况下,任何...
嵌入式软处理器在硅IP开发中的验证加速方法.doc
嵌入式软处理器在硅IP开发中的验证加速方法.doc 嵌入式软处理器在硅IP开发中的验证加速方法 摘要 本文提出了一种利用嵌入式软处理器进行硅IP调试和验证的方法。将嵌入式软处理器与待验证的IP进行绑定和整合,为待验证的硅IP提供了便捷的调试和评估环境,大大加速了集成电路设计的开发进程。 关键词 嵌入式 硅IP开发 方法 在现代的集成电路设计过程中,常常使用用砖头,盖房子类似的方法来进行大规模项目的设计。硅IP模块就是盖房子用的砖头。砖头质量的好坏,直接决定了整个集成电路设计的成败。对于集成电路而言,在大多数情况下,任何小缺陷都会造成整个集成电路的失败,因此在商业过程中,往往采用经过市场验证过的硅IP,或者经过反复验证该IP的可用性。验证IP的质量和性能,逐渐成为设计工作中价值最大,最耗费人力和才智的工作。随着计算机软件技术的进步,出现了许多计算机软件工具用于提高设计的自动型,以避免人为错误。然而,由于摩尔定律的作用,集成电路上晶体管的成本在不断下降,越是大型的设计可能反而性价比越高,迫使商业公司和其他机构不断往电路上加入更多更复杂的设计,来保持市场竞争力。在摩尔定律作用下,芯片成本线性降低,规模线性增长,但复杂度却呈现指数上涨趋势,导致原有的软件设计工具越来越难以满足需要。具体现在以下方面:一是芯片的设计规模不断翻番,但计算机的硬件性能却不能同步增长。二是即使使用最先进的计算机硬件,但操作系统的能力又再次限制了系统的性能。主流的计算机操作系统,从16位,到32位,到64位,三次跨越耗费了近30年时间,但芯片设计规模,仍然保持18个月就翻番。当前主流的操作系统,其程序使用空间如无线GSM手机信号,运行在80Mhz,修正后只能运行在75Mhz了,尽管内部处理过程逻辑正确、外部信号输入仍然不变,但FPGA仿真系统却无法提供更高性能而正确工作了。因此,要在FPGA里调试IP,并不是容易的事情,为FPGA原型系统提供准确的数据通路,变得非常重要。我们会发现,若将嵌入式软处理器与待验证的IP相融合,将为IP的验证带来极大的便利。主要原因为:(1)软处理器本身与待验证IP可以共享时钟和其他FPGA资源,其运行速度很容易与待验证IP匹配;(2)软件处理器的及其外围资源,比如IO接口、总线、存储器资源,都是动态可配置的成熟IP资源,其运行规模和实时性可配置而达到待验证IP的验证;(3)软件处理器的外部接口资源,容易与PC系统连接,建立起PC资源与待验证IP之间的数据 桥接通道;(4)软处理器和PC资源相配合,能产生超越冯。诺曼体系结构的计算系统(在传统的冯。诺曼结构里,程序被固化在固定的存储空间,处理器按照固定的路径执行和跳转;而软处理器与PC资源相结合,则能随时用PC来更新软处理器运行的程序代码和功能),成为特殊的计算,非常有利于IP设计的反复迭代优化过程。 下面我们以Xilinx公司的软处理器MicroBlaze为例,谈谈对一个待验证的视频解码(或者编码或者图像增强)IP的验证过程,其主要思路是: 待验证IP作为MicroBlazer软处理器的外设运行,其输入和输出由软处理器系统来调度和存储,由于软处理器系统在同一个FPGA中运行,因此能使用高带宽和实时性的外部直连内存池为待验证IP提供足够的实时性和带宽需求;同时由于软处理器本身可编程,就可以对待验证的IP输入输出需求进行模拟和匹配;软处理器系统也提供了与PC通讯的能力,因此PC上能方便地产生测试向量并解读软处理器系统发回的验证结果。当验证开始时,FPGA复位启动了软处理器,软处理器启动后将PC端生成的测试向量通过PC接口下载到FPGA控制的内存池当中;当测试向量下载完成,软处理器的程序再启动待验证IP,并根据待验证IP的需求不断将内存池中的测试向量发送给待验证IP,然后取得处理结果,仍然存放在内存池中;当测试向量完成处理,软处理器就暂停待验证IP,然后向PC发送验证结果;验证结果在PC上就会很容易被检查了。1、MicroBlaze能够以200Mhz的性能运行,其总线接口OPB/PLB基本能同步运行,8条FSL接口各自运行速度在600Mbps。而一般的待验证IP运行速度在50~80Mhz。因此首先就是要将待验证IP转化为Microblazer能够控制的IP: (1)将待验证视频IP接口中的全局时钟,Reset信号上加入控制电路,使得Microblazer通过寄存器操作能对待验证IP进行全局复位和时钟速度切换。 (2)将待验证视频IP的输入输出数据格式,转化为MicroBlazer总线系统接口,由于PLB总线速率较低,一般采用OPB总线,为了达到更大吞吐量,需要配置OPB总线的DMA模块,在需要更大实时吞吐量的场合,则采用FSL接口,与Microblazer实现指令级的同步。这样,在软处理器看来,待验证视频IP可以成为软处理器子系统的两个外设设备。 2、利用MicroBlazer资源进行IO资源转换。由于软处理器系统与待验证IP系统在同一个FPGA内运行,我们要保证软处理系统能消除待验证系统的输入输出瓶颈。 (1)配置MicroBlazer的存储器接口为DDR2,64bit,533Mhz,4G容量,Xilinx软件能自动生成内存控制器。利用MicroBlazer的32位寻址能力,它能实现4GBye容量的总数据吞吐量作为缓存。就高清视频解码或者压缩来说接近20秒,其性能是8.5GB/s,已经能充分满足验证需求。 (2)配置MicroBlazer系统与PC通讯的资源,这里我们采用USB接口,能实现热插拔,我们采用成熟方便的Cypress68013接口芯片与系统挂接,其极限数据持续传输率在20MB/s左右。因此,比起通常的PC的IO能力用于验证,软处理器系统能轻易提高400倍的性能。 3、生成软处理器与待验证IP的硬件系统。 Xilinx在转化用户逻辑到FPGA配置过程中,有一个表生成的过程,其软处理器和周边资源以宏单元方式在表阶段,与其他IP表相结合,这样保证了其软处理和相关资源不会被盗用到其他FPGA平台或者用于ASIC设计。因此,我们可以在Xilinx的设计工具EDK里面,按照Wizard生成包含软处理器、总线、内存控制器等子系统,再将修正过接口的USB通讯接口和待验证IP作为设备连接在子系统上。只要相关接口符合规范,EDK软件就自动完成了表合并,生成FPGA的硬件配置文件。 4、软处理器的软件编程。 (1)软件处理器的软件主要完成3个模块:与PC的通讯模块,实现了内存池与PC的数据交换;待测IP的启动和终止;伺服待验证IP的数据输入输出。前两个模块相对稳定是通用模块,伺服待验证IP的数据输入输出则与待验证IP的特性有关。在待验证IP通过硬件桥接到软处理器总线的情况下,软件通用性和移植性就很好保证;若采用简单连接,则用软件来为待测模块提供输入输出特性,灵活性强,但系统运行性能低一些,移植性和通用性也弱一些。Xilinx的EDK工具能使得用户直接采用C语言和C++进行编程,并自动根据硬件配置设置好软件环境。因此调整软件是非常方便的。 (2)软件处理器的软件最好控制软件长度和复杂度,当软处理器软件代码长度能够在FPGA内部放下的时候,能取得最高的性能;其次,就必须映射到外部存储器完成,内存带宽影响到处理器的运行能力;最差就是采用外部的非易失性存储器来存储代码,运行速度最慢。因此建议主要模块在软处理器中完成,但负责调度的工作可以不在软件处理器内完成,而由PC软件远程调度。这样能实现更大的灵活性,并节省代码长度。 经验表明,FPGA原型验证方法比PC软件模拟进行IP验证, 能提高系统运行速度1000倍以上;而如果采用FPGA进行原型验证,但输入输出结果直接依赖PC,不但效率大大降低,而且对IP的验证覆盖效果也因为待验证IP的IO性能瓶颈大大降低;嵌入式处理器系统的出现,结合了PC的灵活资源与FPGA的性能优势,大大改善了IP设计效果,尤其适合高性能高带宽要求的IP验证。
/
本文档为【嵌入式软处理器在硅IP开发中的验证加速方法.doc】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索