999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于FPGA的C/S模式網絡硬盤設計與實現

2014-12-10 05:37:34郭燕妮
電子技術應用 2014年12期
關鍵詞:用戶系統設計

郭燕妮,何 杰,張 剛

(太原理工大學 信息工程學院,山西 太原 030024)

0 引言

隨著網絡技術的不斷進步以及網絡應用程序的增加,人們對簡單快捷易管理易攜帶存儲方式的需求愈加強烈,而網絡硬盤可以不需要攜帶任何存儲設備,只要通過網絡就能隨時隨地對目標文件進行訪問。

目前,已有眾多企業推出了各類的網絡硬盤比如百度網盤、微軟Skydrive、華為網盤等,注冊用戶可以通過賬號密碼隨時隨地訪問自己的已經上傳的內容,對文件進行管理,實現了無存儲設備的遠程訪問,并且不會損壞文件。但是,目前已有的網絡硬盤均是基于B/S模式的,雖然支持文件的一次性上傳下載及在線瀏覽等功能,但與操作本地文件之間有本質區別,用戶不能在線對文件進行編輯保存。此外,該模式的網絡硬盤還存在安全性能差,對服務器性能要求高、與服務器交互性差及存儲數據傳輸速度慢等問題。

本文通過FPGA編程設計實現了一種基于C/S模式的網絡硬盤,與現有B/S模式網絡硬盤不同,它是通過客戶端與服務器進行直接相連的,沒有中間環節,因此具有響應速度快、交互性強、網絡通信量低、易于處理大量數據等特點,而且,通過網絡用戶可以對文件進行在線操作。

1 系統簡介及平臺搭建

1.1 系統整體架構

圖1 系統整體架構圖

本文設計實現了一種基于FPGA的C/S模式網絡硬盤,其系統整體框架如圖1所示,主要包括用戶層、內核層和硬件層。其中,用戶層主要完成的是客戶端與服務器通信;硬件層負責對存儲硬盤的操作,可以通過ATA硬盤控制器對上層命令進行解析,對硬盤進行數據讀取和存入;內核層是用戶層與硬件層之間的連接樞紐,該層可以通過文件系統以及驅動程序對用戶層發送的請求進行處理并對硬件層硬盤進行調用訪問。

1.2 系統硬件平臺搭建

系統是在XUPV5_LX110T開發板上外接ATA硬盤以及網線實現的,結構組成如圖2所示。平臺是以Xilinx公司的XUPV5_LX110T FPGA開發板為基礎搭建的,通過對開發板內嵌的各個模塊進行選擇,然后連接DDR2_SRAM、Hard_Ethernet_MAC、RS232_Uart_1 等 基 本外部設備,最后添加硬盤控制器IP核,完成系統整體平臺的搭建。其中,核心處理器選擇的是Microblaze軟核處理器。

圖2 硬件平臺

2 系統設計

2.1 硬件層設計

由于選用的XUPV5_LX110T FPGA開發板可以提供圖2中的大部分模塊,因此,系統的硬件層主要是對ATA硬盤控制器IP核[1]的設計。本文通過對ATA/ATAPI-6協議進行分析,用VHDL語言設計實現對硬盤數據進行扇區讀寫操作,其具體模塊結構圖3所示。

圖3 硬盤控制器模塊圖

硬盤控制器按照功能模塊共劃分為BRAM接收和發送模塊、指令解析模塊、硬盤訪問控制模塊、CRC校驗模塊以及差錯處理模塊。其中,指令解析模塊負責對上層發送的請求進行監控解析,并觸發硬盤訪問控制模塊從而對硬盤操作;硬盤訪問控制模塊在接收到觸發命令后,對基本控制時序進行設置,包括硬盤硬件復位、硬盤模式設置、扇區讀寫等;CRC校驗模塊對讀寫的數據進行校驗;差錯處理模塊是對錯誤指令或指令執行異常的情況進行處理。以上所有模塊均是用VHDL語言實現的,并通過仿真調試及測試。

系統中內核層與硬盤之間是以PLB總線掛載的方式互連的,掛載后,可以通過硬盤驅動程序[2],以寄存器的方式訪問硬盤數據,因此在以上功能模塊設計以后,要對硬盤控制器按照自定義IP核的方法進行IP核封裝來作為外接設備。

2.2 內核層設計

本系統采用FAT32文件系統[3]對用戶數據進行管理。為適應上層用戶層的調用,本文對FAT32文件系統進行了改進:首先對文件系統信息建立全局變量struct fs_fat32 fatfs,并用 struct node_fat32初始化文件節點;然后重寫對文件及目錄的操作函數以適應上層NFS的調用;最后編寫FAT32文件系統的Makefile文件進行測試。測試證明可以對文件以及目錄進行正確讀寫、修改、刪除等基本操作。

2.3 用戶層設計

用戶層設計是系統的核心部分,主要是對NFS服務器端的設計。NFS是一種分布式文件系統協議,通過網絡,用戶可以像訪問本地文件一樣訪問遠端系統上的文件。因此結合RPC(Remote Procedure Call,遠程過程調用)和 XDR(External Data Representation,外部數據表示),就可以實現跨網絡、跨操作系統、跨文件系統的訪問。其中,RPC是可實現遠程客戶端對服務器端函數的調用。而XDR保證了數據格式的一致性。

NFS服務器端[4]設計主要是實現一次完整的NFS文件訪問,通過客戶端與服務器端RPC的Portmap、Mountd、NFSD 3個模塊間的交互完成,其交互的具體過程如圖4所示。在交互過程中,每當服務器端NFSD模塊接收到客戶端請求時,就會對接收到的數據進行XDR解碼處理,并根據解碼得到的過程號調用NFSD程序中的過程進行操作,NFSD過程會通過調用底層文件系統對請求進行處理,并將處理結果進行XDR編碼后發送回客戶端,其具體操作流程如圖5所示。

圖4 NFS時序圖

圖5 NFSD過程處理流程

考慮到NFS整體與內核聯系緊密,可移植性低,因此本文在保持NFS功能的基礎上對其進行了簡化設計及改進,首先將 Portmap(RPCbind)、Mountd、NFSD 寫成應用程序,采用Linux中混合多端口的異步Socket[5]編程方法。分別基于 TCP和 UDP傳輸協議對 NFSD、Mountd、Portmap進行套接字創建,然后設置全局變量svc_fdset、fd_set對Socket進行管理,并利用select函數選擇有請求的套接字,最后用recv函數和send函數進行數據接收和發送。其中,本文對NFSD、Mountd、Portmap這三個進程用結構體svc_program進行定義,并用結構體中pg_next將各個進程加入鏈表,其中,鏈表頭為NFSD程序。在接收到請求后,服務器端從鏈表頭對鏈表進行順序查找,找到需要的服務,對其按照圖5所示的流程進行處理。

3 系統驗證

本系統經過系統移植[6]將軟硬件進行整合來完成系統的整體設計。先下載petalinux-v0.40-final內核源碼到虛擬機“/root/桌面”目錄下移植Petalinux操作系統,然后將硬件平臺信息及硬件工程添加到操作系統中,最后將NFS服務程序以應用程序的形式添加到操作系統內核,同時將硬盤控制器封裝為IP核添加到內核中。添加完成后對內核進行編譯并燒寫到開發板中,運行整個系統。

系統運行后,打開客戶端,在客戶端輸入掛載命令:sudo mount-t nfs-o nolock 192.168.xx.xx://tmp/nfs,其中,192.168.xx.xx為開發板IP地址,本文中為192.168.0.10,“/tmp/nfs”為客戶端掛載目錄。測試結果如圖6所示,圖中在客戶端“/tmp/nfs”中顯示的文件,實際為服務器端硬盤中的文件,在客戶端nfs目錄下即可打開這些文件,在線對文件進行讀寫、修改保存等操作,而且拖動文件即可實現文件下載上傳,速度可達1.3 MB/s。實驗表明,設計的基于FPGA的C/S模式網絡硬盤具有以下優勢:(1)交互性強,支持用戶在線操作文件;(2)實用性廣,可進行硬盤陣列擴展,擴大內存;(3)兼容性強,C/S模式網絡硬盤具有與本地硬盤相同的兼容性,不限制存儲文件的格式、大小及存儲時間;(4)安全性高,采取賬號密碼映射IP的方式,存儲文件僅登錄用戶可見。

圖6 客戶端訪問圖

4 結論

本文設計了一種基于FPGA的C/S模式網絡硬盤,在XUPV5_LX110T開發板搭建了系統并驗證通過。結果表明該種網絡硬盤具備很好的可行性,可以實現遠程訪問,而且傳輸速度快,支持在線編輯,具有廣泛的應用前景及參考價值。

[1]彭維.基于PLB總線的用戶IP核接口技術研究[D].合肥:合肥工業大學,2011.

[2]宋寶華.Linux設備驅動開發詳解(第二版)[M].北京:人民郵電出版社,2010.

[3]楊明極,陳方縣,吳學君.嵌入式系統中 SD卡的 FAT32文件系統的設計[J].電聲技術,2010,34(4):36-39.

[4]劉榮勝.一種基于異步回調機制的NFS服務端設計與實現[J].蘇州市職業大學學報,2013(1):41-43.

[5]STEVENS W R.Linux network programming——Socket[Z].2011.

[6]薛慧敏,武傳華,路后兵.MicroBlaze處理器的 PetaLinux操作系統移植[J].單片機與嵌入式系統應用,2011,11(4):67-69.

猜你喜歡
用戶系統設計
Smartflower POP 一體式光伏系統
工業設計(2022年8期)2022-09-09 07:43:20
WJ-700無人機系統
ZC系列無人機遙感系統
北京測繪(2020年12期)2020-12-29 01:33:58
瞞天過海——仿生設計萌到家
藝術啟蒙(2018年7期)2018-08-23 09:14:18
連通與提升系統的最后一塊拼圖 Audiolab 傲立 M-DAC mini
設計秀
海峽姐妹(2017年7期)2017-07-31 19:08:17
有種設計叫而專
Coco薇(2017年5期)2017-06-05 08:53:16
關注用戶
商用汽車(2016年11期)2016-12-19 01:20:16
關注用戶
商用汽車(2016年6期)2016-06-29 09:18:54
關注用戶
商用汽車(2016年4期)2016-05-09 01:23:12
主站蜘蛛池模板: 国产精品开放后亚洲| 手机成人午夜在线视频| 亚洲天堂2014| 一级爆乳无码av| 中日韩一区二区三区中文免费视频| 极品国产一区二区三区| 无码'专区第一页| 亚洲品质国产精品无码| 国产日韩欧美视频| 国产激情无码一区二区免费 | 美女亚洲一区| 亚洲欧美激情另类| 亚洲天堂视频网| 91精品国产一区自在线拍| 香蕉精品在线| 日韩美毛片| 在线a视频免费观看| 中文字幕在线免费看| 国产白浆在线| 一本色道久久88| 9999在线视频| 99精品国产高清一区二区| 久久久久亚洲精品无码网站| 日韩一区精品视频一区二区| 国产真实二区一区在线亚洲| 亚洲人人视频| 99精品免费在线| 男女精品视频| 国产不卡一级毛片视频| 红杏AV在线无码| 青草午夜精品视频在线观看| 一本大道香蕉中文日本不卡高清二区| 亚洲性网站| a级毛片网| 国产色婷婷| 国产一在线| 日韩中文无码av超清| 九色在线视频导航91| 久久超级碰| 午夜精品久久久久久久99热下载| 免费观看男人免费桶女人视频| 精品国产中文一级毛片在线看 | 亚洲精品成人福利在线电影| 亚洲中文字幕无码爆乳| 欧美专区日韩专区| 亚洲v日韩v欧美在线观看| 久久香蕉国产线| 成人免费一级片| 免费一级毛片在线观看| 日本高清免费一本在线观看 | 欧美亚洲欧美区| 在线日韩一区二区| 国内精品一区二区在线观看| 中文国产成人精品久久一| 最新亚洲av女人的天堂| 国产精品亚洲欧美日韩久久| 五月婷婷亚洲综合| 国产精品国产主播在线观看| 婷婷色在线视频| 美女高潮全身流白浆福利区| 国产高颜值露脸在线观看| 欧美在线黄| 亚洲日本精品一区二区| 亚洲一道AV无码午夜福利| 99久久性生片| 色婷婷久久| 日本亚洲欧美在线| 国产在线精品美女观看| 亚洲精品少妇熟女| 久久香蕉国产线看观看亚洲片| 国产91在线|中文| 国产91丝袜在线播放动漫 | 久久综合色天堂av| 欧美人在线一区二区三区| 全免费a级毛片免费看不卡| 少妇精品网站| 无码人中文字幕| 秋霞一区二区三区| 亚洲伊人久久精品影院| 狠狠色香婷婷久久亚洲精品| 国产亚洲精久久久久久无码AV| 欧美第一页在线|