《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 業界動態 > 一種Windows 2000下連續輸出數據的PCI卡

一種Windows 2000下連續輸出數據的PCI卡

2008-08-29
作者:李向陽1 李 耀2

??? 摘 要:介紹PCF1536的設計原理和硬件結構;詳細討論了大容量" title="大容量">大容量FIFO的結構及用CPLD實現FIFO控制器;計算PCF1536工作于Windows2000操作系統下允許的最大中斷延遲;最后將PCF1536應用于多路D/A" title="D/A">D/A轉換器,指出Windows2000的中斷延遲遠遠小于41.2毫秒。
??? 關鍵詞:PCF1536? 連續數據流? FIFO控制器? 中斷延遲

?

??? 在視頻輸出、聲吶仿真等實際應用" title="實際應用">實際應用中,經常要求計算機能根據要求穩定輸出連續數據流。然而,當計算機工作于Windows2000操作系統下時,由于該操作系統是一個多任務的非實時操作系統,當它收到外部設備發來的中斷時,需要延遲一定時間間隔后,才開始執行中斷服務程序。這樣,從計算機I/O口直接輸出的數據流只能是間歇的數據流,無法提供連續數據流,不能滿足實際應用的需要。
??? 幸運的是,許多實際應用只需要低速的連續數據流。可以利用PCI總線的高速數據傳輸特性,在PCI接口后加入一個大容量FIFO存儲器,高速的PCI數據流從FIFO存儲器的輸入端輸入,在FIFO的輸出端就能獲得低速的連續數據流。這樣屏蔽了Windows2000的非實時性,成功滿足實際應用的需要。在圖1所示的具體應用中,計算機與PCI卡之間通過PCI總線形成峰值速率達132MB/s的間歇數據流;PCI卡通過局部總線與大容量存儲器之間同樣是峰值速率達132MB/s的間歇數據流;最后通過多路D/A轉換電路獲得了速率為16MB/s的連續數據流。

?


??? 為了便于應用,將PCI接口模塊與大容量存儲器結合,設計了一塊能在Windows2000下以16MB/s的速率連續輸出" title="連續輸出">連續輸出數據的PCI卡PCF1536。
1 PCF1536的工作原理
??? PCI卡PCF1536是一個帶有1536KB FIFO的通用PCI卡;在Windows2000操作系統下,它能以16MB/s的速度連續輸出數據。圖2是PCF1536的結構框圖,整個PCF1536包括PCI接口、大容量FIFO存儲器和驅動器三個模塊。

?


1.1 PCI接口模塊
??? PCI接口模塊由PCI9052和配置EEPROM 93LC46組成。PCI9052是PLX技術公司的產品,兼容于PCI協議(2.1版);它可作為PCI總線的從設備,支持32位數據突發傳輸。圖3是PCI9052與PCI金手指和存儲器模塊的連接示意圖。

?


??? PCI9052與存儲器有三種連接方式:數據地址復用、數據地址非復用和ISA方式[1]。在PCF1536中,PCI9052采用數據地址非復用方式連接FIFO存儲器。其時序參見文獻[1]。PCI9052與FIFO的連接信號中,表示一次突發傳輸的開始,表示一次突發傳輸的結束,LAD[0:31]為32位數據,LBE[0:3]為字節有效信號。緩存后的時鐘輸出信號BCLKO經74LS00送回PCI9052,同時也送到FIFO。FIFO半滿時發出的中斷信號通過LINTI1進入PCI9052,再通過INTA發送給CPU。由于FIFO的寫入不需要地址,因此PCI9052與FIFO之間沒有地址連接。
1.2 存儲器模塊
1.2.1 存儲器組織

??? 存儲器模塊由CPLD器件EPM7128SQC100和四片FIFO器件AL422B組成。AL422B是AVERLOGIC公司的產品,每片AL422B包含384K×8位DRAM,主要應用于視頻輸出。在現有的FIFO存儲器中,AL422B具有最低的價格/存儲位比。這是PCF1536選擇使用AL422B的主要原因。AL422B的結構框圖如圖4所示。它能完成初始化、復位、寫和讀等四種操作[2]。初始化操作發生在上電后0.1ms內,然后可以開始正常操作。復位操作中,則輸入數據地址設置為0且清空輸入緩存;則數據輸出地址設置為0且將數據預取到輸出緩存。完成寫操作,在WCK上升沿將DI7~DI0寫入寫數據寄存器;

?


??? 四片AL422B通過位擴展成384K×32位的FIFO存儲器,如圖5所示。

?


1.2.2 存儲器控制器
??? AL422B雖然有不同的數據輸入和輸出端口,但與通用FIFO存儲器不同,它并不提供半滿信號、數據有效信號等。因此AL422B不是完全意義上的FIFO存儲器[2]。在PCF1536上,使用一片可編程邏輯設備EPM7128作為FIFO控制器,全面控制AL422B的功能。從圖2和圖5可以看出,EPM7128為FIFO提供RCK、DI[0:31]、當FIFO半滿時提供半滿信號HF;另外EPM7128為外設提供正負數據有效信號、4MHz和8MHz的時鐘信號等,供外設靈活使用。圖6是用VHDL語言對EPM7128編程而成的FIFO控制器。該控制器由JTAG模塊、寫模塊、讀模塊和控制模塊組成。計算機通過JTAG接口對EPM7128現場編程。當PCI9052的數據準備好后,寫模塊按LCLK時鐘將數據讀入,接著按WCK時鐘將數據寫入AL422B。在FIFO控制器的控制下,整個384K×32位的FIFO存儲器被分為A、B兩部分。當數據從A部分讀出時,PCI9052將數據寫入B部分;反之,當數據從B部分讀出時,PCI9052將數據寫入A部分。數據讀出的速率為16MB/s。當A?穴或B?雪部分數據讀完后,FIFO控制器接著從B(或A)部分讀數,并通過中斷通知CPU向A(或B)部分寫入數據。如此循環往復。

?


1.2.3 最大允許中斷延遲
??? 要保證PCF1536輸出連續數據,就必須保證FIFO不會被讀空。FIFO輸出數據的同時,PC機必須及時補充數據。從上可知,整個FIFO存儲器被分成A、B兩部分,每部分容量均為192K×32位。下面分析當數據從存儲器B部分讀取、向存儲器A部分寫入時,讀寫FIFO存儲器的時間關系,如圖7所示。

?


??? 假定PC機的中斷延遲時間為TINT_LAT,PC機寫滿存儲器A部分所用時間為TPCI,剩余時間為TREM;讀完存儲器B部分所用時間為TOUT。如PCF1536輸出連續數據流,剩余時間TREM必須大于等于0。
???

??? 讀完存儲器B部分所用時間:
???

??? 通過以上計算,在Windows2000操作系統的最大中斷延遲不大于41.2ms的情況下,PCF1536能以16MB/s的傳輸率連續輸出數據。
??? 中斷延遲決定了硬件產生的中斷并得到PC機正確響應的最高頻率。實際上,根據各種資料分析[3],雖然Windows2000操作系統的中斷延遲會隨著應用條件不同而差異很大;但可以肯定的是,其中斷延遲遠遠小于41.2ms。
1.3 驅動器模塊
??? 驅動器模塊由七個74LS245構成。每個74LS245能為8位數據(信號)提供驅動,其中四個74LS245用作32位數據線的驅動器,另外三個用作控制信號的驅動。
??? 每個74LS245的輸出分別連接到16腳的插座。16腳插座中的8個腳接信號線,另外8個腳接地線,以提高輸出信號的抗干擾能力。采用這種輸出方式,PCF1536與外設之間可以用4m的排線連接而不會受明顯干擾。
2 測試過程及測試結果
??? 圖8是PCF1536卡的測試系統" title="測試系統">測試系統。計算機重復發送如下數據:0x20002000、0x32CF32CF、0x3E6F3E6F、0x3E6F3E6F、0x32CF32CF、0x20002000、0x0D300D30、0x01900190、0x019-00190、0x0D300D30。以上10個數據實際上是對一個正弦波的10個均勻采樣值。用示波器監視D/A轉換器的輸出。

?


??? 在示波器上可以觀測到:36路的D/A輸出都是穩定的20kHz正弦波。該測試系統經過連續48小時運行,沒有出現計算機死機和停止發送數據的現象。因此,結論顯而易見:在Windows 2000操作系統下,PCF1536能以16MB/s的速度連續輸出數據,它滿足某些系統對連續數據流的要求。利用該測試系統,雖然不能準確測出Windows2000的中斷延遲到底有多大,但可以肯定:Windows2000的中斷延遲遠遠小于41.2ms。
參考文獻
1 PLX Technology,Inc. PCI9052 Data Book.V2.0,September?2001.www.plxtech.com.
2 AverLogic Technologies,Inc. AL422 Data Sheets. Jan 2001.www.averlogic.com.
3 李圣怡,戴一帆.Windows環境下軟硬件接口技術.長沙:國防科技大學出版社,2001

本站內容除特別聲明的原創文章之外,轉載內容只為傳遞更多信息,并不代表本網站贊同其觀點。轉載的所有的文章、圖片、音/視頻文件等資料的版權歸版權所有權人所有。本站采用的非本站原創文章及圖片等內容無法一一聯系確認版權者。如涉及作品內容、版權和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當措施,避免給雙方造成不必要的經濟損失。聯系電話:010-82306118;郵箱:aet@chinaaet.com。
主站蜘蛛池模板: 亚洲综合涩 | 日韩中文在线 | heisi视频网在线观看 | 久久99毛片免费观看不卡 | 免费观看无遮挡www的小视频 | 久色网 | 日韩午夜影院 | 免费看黄的动漫永久免费 | 午夜影院伦理片 | 色戒吃奶动态图 | 夜色私人影院永久地址入口 | 一区二区午夜 | 免费看又黄又爽又猛的视频软件- | 一级做a爰片性色毛片视频图片 | www日韩精品 | 国产高清一区二区三区 | 欧美福利片在线观看 | jizzjizz日本老师 | 99热自拍 | 一级欧美在线的视频 | 欧美成人免费高清视频 | 国产一区二区三区在线看片 | 国产一级一级 | 色噜噜噜 | 免费在线看黄色片 | 欧美一欧美一区二三区性 | 国产成人精品一区二区不卡 | 亚洲第一影院 | 日韩成人精品日本亚洲 | 一区二区三区视频在线播放 | 国产无圣光高清一区二区 | 国产麻豆福利a v在线播放 | 青草香蕉视频 | 性a爱片免费视频性 | 99精品国产自在现线观看 | 黄色高清视频 | 精品一区二区三区免费视频 | 羞羞污视频 | 免费观看色 | 亚洲一区二区免费 | 一区二区三区精品国产欧美 |