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

UltraDMA控制器的FPGA實現

2015-02-28 17:38:44趙志勇呂玉祥趙曉龍馬維青
電子器件 2015年6期

趙志勇 ,呂玉祥*,趙曉龍,馬維青*

(1.太原理工大學物理與光電工程學院,太原 030024;2.山西省電力公司陽泉供電分公司,山西陽泉0 45000)

目前,在圖像、視頻和音頻處理以及信息家電的實際應用中都需要存儲大量的數據,針對以往ATA接口控制器工作時需要CPU的控制訪問不符合低成本、高速度的數據傳輸要求。本研究將通常由主機實現的ATA控制流程提取出來,選取其中的UltraDMA方式,實現一種脫離主機的硬盤訪問系統,這樣可以有效節省處理器和內存資源,提高數據存儲速度[1]。

目前市場上的ATA IP核都是面向IC設計的,不利于在FPGA上集成,因此本研究基于Virtex-II FPGA實現的可獨立工作的UltraDMA控制器IP核,對國內邏輯IP核的發展起到了推動作用[2]。

1 系統硬件實現

1.1 總體架構

本文所設計的數據傳輸控制器包括了以下3個模塊,分別是UltraDMA讀寫控制模塊、發送緩沖模塊以及接收緩沖模塊。UltraDMA讀寫控制模塊實現對硬盤寄存器的訪問和用戶數據的傳輸,是整個讀寫控制器中最重要的部分。接收/發送緩沖模塊采用雙端口RAM技術分別用來緩存用戶發送的數據和接收的數據??傮w架構如圖1所示。

圖1 總體架構

1.2 UltraDMA簡介

ATA技術是一個關于IDE(Integrated Device Electronics)的技術規范族。在ATA協議中,主機和ATA硬盤互聯的物理、電氣特性,信號傳輸以及相關命令的規范都有著明確的定義。ATA的傳輸模式主要包括以下3種:PIO模式、MDMA模式和Ultra?DMA模式。PIO模式是一種通過CPU執行I/O端口指令來進行數據的讀寫的數據交換模式,傳輸速率只能達到16.7 Mbyte/s,對處理器資源的占用量極大,目前應用已經較少;MDMA模式在傳輸速率上和PIO模式同樣達到了16.7 Mbyte/s,但是已經可以有效地減少對處理器資源的占用;UltraDMA模式傳輸速率可以達到133 Mbyte/s,已經能夠明顯超越PIO模式和MDMA模式,成為了目前主流的硬盤傳輸方式[3]。

UltraDMA在決定開始數據傳輸之前會對硬盤寄存器進行訪問,通過寄存器的狀態對硬盤的當前狀態進行一次判斷,從而決定是否開始傳輸數據。主機對硬盤的讀寫操作是通過向硬盤中的寄存器發送讀寫等命令來實現的[4]。與UltraDMA相關的寄存器如表1所示。

表1 寄存器組

1.3 接口連接設計

ATA接口一共有40個引腳,其中DDI(15:0)為雙向數據引腳;CBLID、DASP、ddmardy_dstrobe、dmarq、intrq和iordy控制硬盤數據進入主機,CS(1∶0)、DA(2∶0)、CSEL、dmack-out、hdmardy_hstrobe、reset和stop控制數據進入硬盤,共16個控制線。圖2所示為RTL頂層封裝圖,圖2顯示了ATA協議中所需要的主要引腳位置,該封裝為VHDL代碼經ISE綜合而成[5]。

圖2 接口定義

1.4 UltraDMA控制器讀寫實現

UltraDMA的執行過程可以分為3個階段:連接初始化、數據傳輸和連接終止。UltraDMA數據輸入(主機讀)的初始化過程:首先硬盤向主機發出DMA的請求,主機會在Tui的時間內將DMACK置1,stop置0,HDMARDY置1,硬盤主機準備接受數據,等待第1個DSTROBE的跳變,第1組數據通過數據總線(dd(15∶0))傳輸給主機,初始化結束。

當所有數據傳輸結束時,進入連接終止階段。主機和硬盤均可終止連接,硬盤端啟動終止連接程序:首先硬盤端使DMA請求信號無效;主機端檢測到DMARQ無效后,在Tli時間內置高STOP信號、復位HDMARDY信號;硬盤在收到STOP跳變后的Tli時間內置高DSTROBE信號,表明此后沒有數據等待傳輸;此后主機端產生DMACK-跳變沿,同時將CRC校驗傳入數據總線,硬盤收到校驗結果與自己的校驗值進行比較,以此判斷傳輸是否錯誤[6]。

用VHDL實現UltraDMA控制器時,主要采用狀態機來控制整個讀/寫流程,定義的狀態轉移圖如圖3所示,在每個狀態執行固定操作,這樣思路清晰易于實現。

圖3 UltraDMA狀態轉移圖

(1)st_idle 空閑狀態;

(2)st_readst1 讀狀態寄存器;查看是否硬盤空閑來決定是否繼續訪問硬盤;

(3)st_selectdev 設備選擇狀態;寫設備/磁頭寄存器對將要訪問的設備進行選擇;

(4)st_readst2 讀狀態寄存器;讀取硬盤狀態,空閑進入下一狀態,否則保持;

(5)st_setfeature 設置接口特性;01000寫入扇區寄存器高5位,設置接口為UltraDMA模式,010寫入低3位,選擇模式2;

(6)st_readst3 讀狀態寄存器;

(7)st_weparameter 寫命令參數;扇區數寄存器存儲本次需要傳輸數據所占扇區數;

(8)st_wec 寫命令;C8H為讀操作,CAH為寫操作;

(9)st_initiate UltraDMA初始化;

(10)st_transdata 數據傳輸狀態;

(11)st_crc 終止連接和發送CRC校驗值;

(12)st_readst4 讀狀態寄存器;

(13)St_err狀態 錯誤狀態。當有錯誤發生時進入此狀態。

2 系統驗證

本文選擇的編譯環境為ISE10.1,編程語言選擇使用VHDL,通過編譯、綜合和布局布線,最后下載到開發板上進行了驗證。圖4~圖7為在UltraDMA控制器讀寫硬盤時用Chipscope軟件抓取的數據情況。

本文首先進行了UltraDMA讀(data_in)硬盤的驗證。硬盤讀取數據的過程可以總結為如下過程:數據讀初始化、數據讀取、數據讀取終止。UltraD?MA硬盤讀取的初始化過程如圖4所示,硬盤發出請求,通過DMACK,stop和hdmardy的響應,主機做好接收數據的準備。隨著第一組16位數據的傳輸,DSTROBE引腳發生一次跳變,結束數據傳輸初始化過程。圖5顯示了數據傳輸終止過程的時序圖,引導區標記數據為AA55,CRC校驗值為F445。在DMACK發生跳變時,該校驗值傳給硬盤,由此判斷數據傳輸是否正確[7]。

圖4 UltraDMA data_in初始化

圖5 UltraDMA data_in終止

圖6 UltraDMA data_out初始化

圖7 UltraDMA data_out終止

本文同樣驗證了UltraDMA寫(data_out)硬盤的功能。設定向硬盤寫入0 000 h-00 FFh共256個512 byte(一個扇區)數據,此數據預先存入發送緩沖區。圖6為data_out初始化階段,硬盤與控制器“握手”完成后,由控制器產生第1個HSTROBE跳變,同時把第一個數據(0 000 h)傳入數據總線,此后數據按順序傳輸[8]。圖7為傳輸結束階段,硬盤首先使ddmardy(低電平有效)和dmarq無效,主控制器端則產生stop信號,并在最后一個HSTROBE跳變沿傳輸最后兩字節數據(00 FFh)。用戶數據傳輸完后在DMACK跳變沿將CRC校驗值(8 985 h)傳給硬盤。

整個驗證過程在無CPU環境下進行,控制器的讀/寫由各自使能信號控制完成,因此該控制器可以作為一個獨立的模塊應用于系統中[9]。

3 總結

本文采用FPGA實現符合ATA標準的UltraD?MA讀寫控制器,在無CPU的情況下,能夠獨立完成對硬盤的讀寫操作。經測試,本控制器與希捷、邁拓、三星等公司的多種型號硬盤連接均能正常工作。若對控制器稍加改動,如配合相應文件系統,如FAT32或者EXT,將可用于嵌入式設備中,實現海量數據存儲,使系統具有更好的實用性。

[1]于明喆,李暉,申婷.Nios系統基礎上的UltraDMA數據傳輸模式[J].單片機與嵌入式系統應用,2006(2):32-35.

[2]孫偉,郭寶龍,武曉玥.等.DSP視頻存儲關鍵技術研究及實現[J].電視技術,2009,33(6):30-32.

[3]Information Tichnology-AT Attachment with Packet Interface-7(ATA/ATAPI-7)(S):2003.

[4]胡偉,慕德俊,劉航,等.嵌入式ATA主機控制器IP核設計[J].計算機測量與控制,2009,17(1):192-194.

[5]于祥鳳,劉學斌,胡炳樑,等.UDMA突發數據傳輸中CRC的應用[J].電子器件,2008,31(5):10-31.

[6]Bo Li,Yu Peng,Liu Da tong.A High Speed DMA Transaction Method for PCI Express Devices[J].Journal Of Electronic Science And Technology Of China,2009,7(4):380-384.

[7]于磊,孟令軍,張園,等.基于FPGA的PCI-Express接口卡設計[J].計算機測量與控制,2014,22(1):152-154.

[8]楊立成,劉丹峰,史繼輝.基于DMA的大批量數據快速傳輸模塊設計[J].電子科技,2012,25(12):49-51.

[9]何瓊,陳鐵,程鑫.DMA在高速實時數據采集系統中的應用[J].儀表技術與傳感器,2012(3):49-52.

趙志勇(1988-),男,漢族,山西省呂梁市人,碩士研究生,研究方向為電子設備的研發,zhaozhiyong217@163.com;

呂玉祥(1964-),男,漢族,山西省太原市人,太原理工大學教授,主要研究領域為光電子技術及電力電子設備的研究,lyx823@126.com。

主站蜘蛛池模板: 日本黄色不卡视频| 亚洲二三区| 国产高清在线观看| 一区二区三区国产精品视频| 欧美日韩福利| 国产欧美又粗又猛又爽老| 中文字幕永久视频| 四虎永久免费地址在线网站 | 亚洲最大福利网站| 波多野结衣在线se| 亚洲国产精品一区二区高清无码久久| 欧美成人午夜影院| 国产不卡网| 中文字幕 91| 99久久精品国产麻豆婷婷| 欧美日本一区二区三区免费| 国产拍在线| 97se亚洲综合| 久久99精品国产麻豆宅宅| 久久天天躁狠狠躁夜夜躁| 精品久久久久成人码免费动漫| 日韩无码视频专区| 国产一区二区三区在线精品专区| 五月婷婷亚洲综合| 国产精品手机在线播放| 狠狠干综合| 国产电话自拍伊人| 久久久久国产精品免费免费不卡| 国产精品视频a| 国产性爱网站| 亚洲日韩欧美在线观看| 国产精品lululu在线观看| 精品一区二区三区波多野结衣| 中文字幕欧美日韩| 欧美区国产区| 蜜臀AV在线播放| 欧美色视频网站| 欧美精品在线看| 欧美一级在线看| 国产女人水多毛片18| 中文一级毛片| 亚洲男人的天堂在线| 亚洲综合色婷婷中文字幕| 久久久久久久久亚洲精品| 久久人与动人物A级毛片| 日本a级免费| 在线五月婷婷| 国产精品久久久久久久久kt| 亚洲欧州色色免费AV| 亚洲专区一区二区在线观看| 国产香蕉在线视频| 欧洲日本亚洲中文字幕| 就去色综合| 国产熟女一级毛片| 亚洲综合中文字幕国产精品欧美| 黄色网站不卡无码| 91小视频版在线观看www| 亚洲国产精品久久久久秋霞影院| 亚洲中文无码h在线观看 | 日本免费福利视频| 999国内精品视频免费| 国产精品lululu在线观看| 40岁成熟女人牲交片免费| 亚洲精品国产首次亮相| 国产欧美精品午夜在线播放| 日本AⅤ精品一区二区三区日| 欧美成人怡春院在线激情| 国产激爽大片在线播放| 久久毛片基地| 国产亚洲精久久久久久无码AV| 全部免费特黄特色大片视频| 91年精品国产福利线观看久久| 国产成人一区在线播放| 69精品在线观看| 91精品情国产情侣高潮对白蜜| 中文字幕在线永久在线视频2020| 亚洲欧美成人综合| 国产亚洲高清在线精品99| 波多野结衣一区二区三视频| 国产激爽大片高清在线观看| 理论片一区| 福利在线不卡|