欢迎来到天天文库
浏览记录
ID:14833709
大小:133.00 KB
页数:6页
时间:2018-07-30
《基于sopc技术构建fpga上的bs系统》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、基于SOPC技术构建FPGA上的B/S系统郑安兵(桂林工学院)转载请注明出处摘要:本文论述了使用FPGA器件,利用SOPC嵌入式开发技术,复用多种软CPUIP核,使用片内总线代替机群内的计算机网络,移植现有的软件开发方法,在片上构建包含WEB服务器、业务逻辑应用服务器、数据库服务器的B/S系统的可行性及实现方法,并给出一个具体实现方案。引言B/S系统一直是基于大中小型服务器、台式机等通用计算机而设计的。为具体单个的B/S系统从芯片开始量身订做一整套计算机软硬件系统,使其安全、可靠、高效地运行,长期以来被认为是一件不现实的事情。近年来,FPGA器件
2、和SOPC嵌入式开发技术的迅速发展为多处理器片上系统的实现提供了灵活的解决方案。利用可配置处理器软核复用的多处理器片上系统,借以实现B/S系统软硬件一体化,已经成为一个值得研究的课题。本文探讨使用FPGA器件,利用SOPC技术,复用多种软CPUIP核,移植现有的编程模式,在片上构建一个多处理器B/S系统的可行性及实现方法。这种系统不仅效率、处理事务的吞吐率与现有的以通用机为主的B/S系统相当,且其安全性、可靠性更好,成本更为低廉。一、可行性当前的典型B/S系统一般分为三层:数据访问层、业务逻辑层、表示层,另外,其后台一般都需要DBMS为其提供数据
3、库服务。系统所需的机器主要有:数据库服务器、业务逻辑应用服务器、Web服务器,三种服务器软件可以部署在一台机器上,也可部署在多台机器上,各机器之间用计算机网络互连,目前流行的部署方式属于后者。在B/S系统中,一个用户从浏览器输入URL到一桩事务处理完毕基本上要经历如下几个过程:1、Web服务器解释页面脚本2、在遇到业务逻辑运算时调用业务逻辑层API3、业务逻辑应用程序进行业务逻辑运算4、业务逻辑应用程序在遇到数据库操作时向DBMS传递SQL语句5、DBMS操作数据库,并返回结果给应用逻辑应用程序6、应用逻辑应用程序运行完毕时返回结果给Web服务器
4、7、Web服务器生成结果HTML页面返回给客户端其中2-6的过程可能会在一个页面里处理多次,3-5的过程可能会在一次业务逻辑运算时处理多次。因此,通常情况下,负荷最重的是DBMS,其次是业务逻辑应用子系统,最后才是Web服务子系统。其中,DBMS还要受限于磁盘读写速度瓶颈。当多个用户请求页面时,不同架构的B/S系统执行时间是不同的。为了简便测算系统的执行时间,先假设每次页面请求时,Web服务器、应用服务器、数据库服务器线性执行。设单个页面在Web服务器上运行的时间为TW,在应用服务器上运行的时间为TA,在数据库服务器上运行的时间为TD,通信开销为
5、TC。则,串行执行一个页面处理所需的时间为:(1)流水执行时,负荷最重的DBMS显然是瓶颈,当n个页面处理流水执行时,流水线的执行时间为:(2)由(2)式可以看出,当n非常大,且页面处理过程线性流水执行时,TW、TA、TC可以忽略不计,系统的吞吐率只与TD有关,即,数据库服务器吞吐率实际上决定了整个B/S系统的吞吐率。数据库服务器上CPU的运行时间与磁盘读写时间相比,相差约为六个数量级,即使采用了磁盘阵列、缓存管理、数据预处理等先进技术加快磁盘访问速度,也至少相差三到四个数量级,因此,可以这样认为,在B/S系统中,CPU的运算速度并不是最重要的因
6、素。现在在FPGA上可运行的软CPU核中,Altera的NiosII可以达到200DMIPS,Xilinx的MicroBlaze可以达到166DMIPS,OpenCores的OpenRisc1200性能介于ARM7到ARM9之间,在主频300MHz时,性能可以达到300DMIPS,虽然与主流通用机CPU相比,它们的速度有很大差距,但在B/S系统中,这种差别已经为页面处理过程的磁盘读写瓶颈所淡化。NiosII软核的耗费约600到3000个逻辑单元,MicroBlaze与NiosII的耗费相当,OpenRisc1200耗费约为4000个逻辑单元,而一
7、片Altera的高端StratixIIFPGA器件EP2S180有179400个逻辑单元,一片Xilinx的高端Virtex-4型LX系列FPGA器件最大有89088个Slice。在其上复用多个CPU软核(至少三个以上)构成多处理器硬件系统已经不再是非常困难的事情。OpenCores已经在OpenRisc1200上移植了Linux内核版本2.6.15(当前最新版本为2.6.24),并提供GCC4.0的交叉编译工具链;Altera为其NiosII提供了uCosII开发插件,同时,Microtronix也为其提供了uClinux内核移植及其开发插件;
8、MicroBlaze上也移植了uClinux.;由于这些工作的完成,片上多核B/S的软件系统构建的复杂度大大降低。因此,利用可配置处理器
此文档下载收益归作者所有