新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 數(shù)字拷貝機(jī)的FPGA設(shè)計(jì)

數(shù)字拷貝機(jī)的FPGA設(shè)計(jì)

作者:劉佳 仇潤鶴 時(shí)間:2008-07-08 來源:電子技術(shù)應(yīng)用 收藏

  1.2.2 數(shù)據(jù)拷貝期的數(shù)據(jù)傳輸模塊

本文引用地址:http://butianyuan.cn/article/85404.htm

  在這個(gè)模塊中,主要由構(gòu)成的一個(gè)控制器控制IDE/ATA設(shè)備與拷貝機(jī)內(nèi)存之間的數(shù)據(jù)交換。選用的為SpartanTM-3E 系列器件,它是開創(chuàng)性的低成本Spartan系列的第7類器件,也是采用先進(jìn)的90nm工藝技術(shù)生產(chǎn)的第三類Xilinx器件系列。 Spartan-3E 有高達(dá)160萬的系統(tǒng)門、376個(gè)I/O、1.8MB的塊RAM,并且具有業(yè)界單位邏輯成本最低的通用平臺FPGA架構(gòu)。FPGA所實(shí)現(xiàn)C 控制器的內(nèi)部邏輯結(jié)構(gòu)如圖3所示。

  DMA控制器提供地址碼以指明I/O設(shè)備變換數(shù)據(jù)的存儲器起始地址;提供讀/寫脈沖,以規(guī)定數(shù)據(jù)在存儲器與I/O設(shè)備之間的傳輸方向;修改內(nèi)存地址指針并計(jì)算傳送的字節(jié)數(shù),以判斷何時(shí)傳送結(jié)束。具體信號時(shí)序如下:

(1)I/O設(shè)備向DMAC發(fā)出請求信號DRQ;
(2)DMAC向發(fā)出總線請求信號HRQ;
(3)向DMAC發(fā)出總線響應(yīng)信號HLDA,此時(shí),DMAC獲得總線控制權(quán);
(4)DMAC向I/O設(shè)備發(fā)出DMA響應(yīng)信號DACK,表示DMAC已控制了總線,允許I/O設(shè)備與存儲器交換數(shù)據(jù);
(5)DMAC按地址寄存器的內(nèi)容發(fā)出16位地址信號作為存儲地址的選擇,同時(shí)地址寄存器的內(nèi)容加1(或減1,由編程定);
(6)DMAC發(fā)出IORC信號到I/O設(shè)備,將I/O設(shè)備數(shù)據(jù)讀入總線,同時(shí)發(fā)出MEMW信號,將數(shù)據(jù)總線的數(shù)據(jù)寫入由地址總線選中的內(nèi)存單元;
(7)字節(jié)計(jì)數(shù)器減1;
(8)重復(fù)(5)、(6)、(7)步驟,直至字節(jié)計(jì)數(shù)器為0,數(shù)據(jù)塊的DMA方式傳送工作完成。這時(shí),DMAC的HRQ降為低電平(HRO=0),總線控制權(quán)交給。

   數(shù)據(jù)拷貝期的DMA數(shù)據(jù)傳輸模塊原理如圖4所示。

   2 系統(tǒng)軟件流程

  非數(shù)據(jù)拷貝期系統(tǒng)主程序流程如圖5所示。數(shù)據(jù)拷貝期FPGA內(nèi)部DMA控制器的程序流程如圖6所示??截悪C(jī)數(shù)據(jù)輸入輸出IDE端口的程序流程如圖7所示。

  檢查CDROM是否就緒程序:
void TestUnitReady(void)
{
unsigned char TempCyc;
unsigned char TempS;
for(TempCyc=0;TempCyc<12;TempCyc++)
PacketTemp[TempCyc]=0x00;
do
{
SendPacket(1);//若CD-ROM不在就緒狀態(tài)則跳過DRQ檢測
TempS=CDStatusREG& 0x89;//通過CDStatusREG & 0x89判斷ERR、DRQ、BSY中是否有1?
}
while(TempS);
 //PacketCommand失敗時(shí)認(rèn)為CD-ROM未就緒,再次發(fā)送Test Unit Ready
Command
}

  系統(tǒng)經(jīng)過了ISE開發(fā)環(huán)境的設(shè)計(jì)、仿真、定時(shí)分析,其目的是測試設(shè)計(jì)的邏輯功能和延時(shí)特性,仿真包括功能仿真和時(shí)序仿真,ISE6.1中能夠提供和完成這些功能。仿真結(jié)果符合實(shí)際需要。

(1)系統(tǒng)能實(shí)現(xiàn)拷貝、測試、對比校對。
(2)在拷貝之前的菜單可以選擇燒錄速率(CD to CD、DVD to DVD)等。
(3)系統(tǒng)可進(jìn)行人性化設(shè)定,包括語言設(shè)定、CD寫模式設(shè)定、拷貝模式設(shè)定、蜂鳴器及空閑狀態(tài)屏幕保護(hù)設(shè)定等。
(4)常用工具設(shè)定,包括光盤信息、預(yù)掃描、系統(tǒng)信息、設(shè)備信息和更新固件等。

  本系統(tǒng)符合當(dāng)前技術(shù)的主流,有著廣闊的技術(shù)前景。

  參考文獻(xiàn)

1 何 寧,熊劍平,蔣昌龍等.基于FPGA的實(shí)時(shí)持續(xù)數(shù)據(jù)記錄系統(tǒng)設(shè)計(jì)[J].微電子學(xué)與計(jì)算機(jī),2003;(1)
2 黃志偉,王 彥,陳 瓊等.FPGA系統(tǒng)設(shè)計(jì)與實(shí)踐[M].北京:電子工業(yè)出版社,2005
3 EDA先鋒工作室.FPGA/設(shè)計(jì)工具——Xilinx ISE使用詳解[M].北京:人民郵電出版社,2005
4 任曉東,文 博./FPGA高級應(yīng)用開發(fā)指南[M].北京:電子工業(yè)出版社,2003

fpga相關(guān)文章:fpga是什么



上一頁 1 2 下一頁

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉