用雙端口RAM實現(xiàn)與PCI總線接口的數(shù)據(jù)通訊
發(fā)布時間:2008/8/29 0:00:00 訪問次數(shù):475
采用雙端口ram實現(xiàn)dsp與pci總線芯片之間的數(shù)據(jù)交換接口電路。
提出了一種使用cpld解決雙端口ram地址譯碼和pci接口芯片局部總線仲裁的的硬件設(shè)計方案,并給出了pci總線接口芯片寄存器配置實例,介紹了軟件包windriver開發(fā)設(shè)備驅(qū)動程序的具體過程。
隨著計算機技術(shù)的不斷發(fā)展,為滿足外設(shè)間以及外設(shè)與主機間的高速數(shù)據(jù)傳輸,intel公司于1991年提出了pci總線概念。pci總線是一種能為主cpu及外設(shè)提供高性能數(shù)據(jù)通訊的總線,其局部總線在33mhz總線時鐘、32位數(shù)據(jù)通路時,數(shù)據(jù)傳輸速率最高可達(dá)133mbps。實際應(yīng)用中,可通過pci總線實現(xiàn)主機與外部設(shè)備的高速數(shù)據(jù)傳輸,有效解決數(shù)據(jù)的實時傳輸和存儲問題,為信號的實時處理打下良好基礎(chǔ)。
本文主要提供一種基于pci總線的數(shù)據(jù)傳輸系統(tǒng)設(shè)計方案,其中雙口ram起橋梁作用,完成上位機與外圍主控單元之間的數(shù)據(jù)握手。
1 雙端口ram實現(xiàn)pci總線接口方案
本系統(tǒng)主要用于解決上位機與外圍控制單元的數(shù)據(jù)傳輸問題。上位機運行信息診斷程序,通過pci總線與外圍控制單元以一定速率傳輸數(shù)據(jù),在主機中實時監(jiān)控并保存數(shù)據(jù)。由于實現(xiàn)高速實時數(shù)據(jù)傳輸,數(shù)據(jù)量大,所以在pci局部總線上插入一個高速雙端口ram。雙端口ram一端作為pci總線接口的本地端存儲器,一端作為dsp目標(biāo)存儲器。需要傳輸保存的數(shù)據(jù)經(jīng)dsp處理后借助雙端口ram和pci總線接口完成了上位機與dsp的數(shù)據(jù)握手。本文提出的雙端口ram實現(xiàn)pci總線接口方案如圖1。
考慮到pci總線接口對局部總線的控制時序比較復(fù)雜,需要譯碼和控制電路來實現(xiàn)局部總線的訪問及控制。本系統(tǒng)使用cpld解決雙口ram的地址訪問競爭沖突問題。需解決的主要問題有:①pci接口電路設(shè)計;②cpld地址譯碼和總線仲裁;③pci總線驅(qū)動程序開發(fā)。
2 pci接口電路設(shè)計
pci卡的設(shè)計一般采用兩種方案。一種是根據(jù)pci協(xié)議在fpga或cpld中實現(xiàn)pci總線接口控制器,但是由于pci協(xié)議的復(fù)雜性,使得開發(fā)難度大、周期長;另一種使用現(xiàn)成的pci接口芯片,用戶開發(fā)難度降低,只把重點放在pci接口芯片局部總線的接口設(shè)計和pci總線配置空間的初始化,而不用速度考慮pci總線規(guī)范上眾多的協(xié)議規(guī)范,加快了開發(fā)時間。
本數(shù)據(jù)傳輸系統(tǒng)使用plx公司的pci 9030總線接口芯片,以cpld完成邏輯控制及與外設(shè)的連接,整個系統(tǒng)的硬件框圖如圖 2。其中雙端口ram采用idt71v321,cpld選用xilinx公司的xc9536cpld芯片,eeprom選用ns公司的93cs56,控制單元dsp選用tms 320lf2407a。
2.1 pci 9030內(nèi)部結(jié)構(gòu)及其數(shù)據(jù)傳輸
pci 9030是plx公司開發(fā)的pci總線目標(biāo)接口芯片。其特點:低功耗,pqfp176針封裝,符合pci v2.2規(guī)范;在pci總線上是從設(shè)備,但在局部總線上是主設(shè)備;pci 9030支持突發(fā)傳輸,有5個pci總線到局部總線地址空間,9個可編程的通用i/o,4個可編程的片選,支持熱插拔。pci 9030主要由pci總線接口邏輯、局部總線接口邏輯、串行e2prom接口邏輯和內(nèi)部邏輯組成,結(jié)構(gòu)框圖見圖3。
pci 9030支持pci主設(shè)備直接訪問局部總線上的設(shè)備,數(shù)據(jù)傳輸方式分為內(nèi)存映射的突發(fā)傳輸和i/o映射的單次傳輸,并且由pci基址寄存器設(shè)置在pci內(nèi)存和i/o空間中的合適位置,另外局部映射寄存器允許pci地址空間轉(zhuǎn)換到局部地址空間。
2.2 配置實例
系統(tǒng)訪問的雙口ram存儲空間為2kb,要求將這個存儲器空間映射到局部地址空間0,采用內(nèi)存方式映射,存儲器的數(shù)據(jù)寬度為 8位,并且不采用突發(fā)傳輸,讀寫時不可預(yù)取。下面介紹這個地址空間各個寄存器的具體配置過程。
(1)配置地址范圍寄存器
根據(jù)pci配置寄存器與las0rr的對應(yīng)關(guān)系以及雙口ram的地址空間800h,取7ffh的補碼得到fffff800h。又因為按照設(shè)計要求,要映射到內(nèi)存空間的任何位置并且設(shè)置為不可預(yù)取的,這樣lasorr寄存器后3位應(yīng)該為000h。所以las0rr的值應(yīng)該最終確定為fffff800h。
(2)配置基址寄存器
該寄存器的基址必須是地址空間范圍的整數(shù)倍,在本例中必須是2k的整數(shù)倍,可將基地址定為 00004000h,又由于基址寄存器位0為空間使能位,所以應(yīng)將這一位設(shè)置1;至于位 2、位3,由于是映射到內(nèi)存空間,設(shè)為00h即可。所以las0ba的值最終被確定為00004001h。
(3)配置片選信號控制寄存器
該寄存器的地址范圍和基地址必須與las0rr或las0ba所定義 的范圍和空間相對應(yīng)?筛鶕(jù)pci 9030提供的配置寄存器的方法確定cs0base的數(shù)值:板卡的2kb空間可以用十六進(jìn)制表示為800h,將800h右移一位得到400h,然后將基地址加到400h左邊的任何一位中。因為所采用的基地址
采用雙端口ram實現(xiàn)dsp與pci總線芯片之間的數(shù)據(jù)交換接口電路。
提出了一種使用cpld解決雙端口ram地址譯碼和pci接口芯片局部總線仲裁的的硬件設(shè)計方案,并給出了pci總線接口芯片寄存器配置實例,介紹了軟件包windriver開發(fā)設(shè)備驅(qū)動程序的具體過程。
隨著計算機技術(shù)的不斷發(fā)展,為滿足外設(shè)間以及外設(shè)與主機間的高速數(shù)據(jù)傳輸,intel公司于1991年提出了pci總線概念。pci總線是一種能為主cpu及外設(shè)提供高性能數(shù)據(jù)通訊的總線,其局部總線在33mhz總線時鐘、32位數(shù)據(jù)通路時,數(shù)據(jù)傳輸速率最高可達(dá)133mbps。實際應(yīng)用中,可通過pci總線實現(xiàn)主機與外部設(shè)備的高速數(shù)據(jù)傳輸,有效解決數(shù)據(jù)的實時傳輸和存儲問題,為信號的實時處理打下良好基礎(chǔ)。
本文主要提供一種基于pci總線的數(shù)據(jù)傳輸系統(tǒng)設(shè)計方案,其中雙口ram起橋梁作用,完成上位機與外圍主控單元之間的數(shù)據(jù)握手。
1 雙端口ram實現(xiàn)pci總線接口方案
本系統(tǒng)主要用于解決上位機與外圍控制單元的數(shù)據(jù)傳輸問題。上位機運行信息診斷程序,通過pci總線與外圍控制單元以一定速率傳輸數(shù)據(jù),在主機中實時監(jiān)控并保存數(shù)據(jù)。由于實現(xiàn)高速實時數(shù)據(jù)傳輸,數(shù)據(jù)量大,所以在pci局部總線上插入一個高速雙端口ram。雙端口ram一端作為pci總線接口的本地端存儲器,一端作為dsp目標(biāo)存儲器。需要傳輸保存的數(shù)據(jù)經(jīng)dsp處理后借助雙端口ram和pci總線接口完成了上位機與dsp的數(shù)據(jù)握手。本文提出的雙端口ram實現(xiàn)pci總線接口方案如圖1。
考慮到pci總線接口對局部總線的控制時序比較復(fù)雜,需要譯碼和控制電路來實現(xiàn)局部總線的訪問及控制。本系統(tǒng)使用cpld解決雙口ram的地址訪問競爭沖突問題。需解決的主要問題有:①pci接口電路設(shè)計;②cpld地址譯碼和總線仲裁;③pci總線驅(qū)動程序開發(fā)。
2 pci接口電路設(shè)計
pci卡的設(shè)計一般采用兩種方案。一種是根據(jù)pci協(xié)議在fpga或cpld中實現(xiàn)pci總線接口控制器,但是由于pci協(xié)議的復(fù)雜性,使得開發(fā)難度大、周期長;另一種使用現(xiàn)成的pci接口芯片,用戶開發(fā)難度降低,只把重點放在pci接口芯片局部總線的接口設(shè)計和pci總線配置空間的初始化,而不用速度考慮pci總線規(guī)范上眾多的協(xié)議規(guī)范,加快了開發(fā)時間。
本數(shù)據(jù)傳輸系統(tǒng)使用plx公司的pci 9030總線接口芯片,以cpld完成邏輯控制及與外設(shè)的連接,整個系統(tǒng)的硬件框圖如圖 2。其中雙端口ram采用idt71v321,cpld選用xilinx公司的xc9536cpld芯片,eeprom選用ns公司的93cs56,控制單元dsp選用tms 320lf2407a。
2.1 pci 9030內(nèi)部結(jié)構(gòu)及其數(shù)據(jù)傳輸
pci 9030是plx公司開發(fā)的pci總線目標(biāo)接口芯片。其特點:低功耗,pqfp176針封裝,符合pci v2.2規(guī)范;在pci總線上是從設(shè)備,但在局部總線上是主設(shè)備;pci 9030支持突發(fā)傳輸,有5個pci總線到局部總線地址空間,9個可編程的通用i/o,4個可編程的片選,支持熱插拔。pci 9030主要由pci總線接口邏輯、局部總線接口邏輯、串行e2prom接口邏輯和內(nèi)部邏輯組成,結(jié)構(gòu)框圖見圖3。
pci 9030支持pci主設(shè)備直接訪問局部總線上的設(shè)備,數(shù)據(jù)傳輸方式分為內(nèi)存映射的突發(fā)傳輸和i/o映射的單次傳輸,并且由pci基址寄存器設(shè)置在pci內(nèi)存和i/o空間中的合適位置,另外局部映射寄存器允許pci地址空間轉(zhuǎn)換到局部地址空間。
2.2 配置實例
系統(tǒng)訪問的雙口ram存儲空間為2kb,要求將這個存儲器空間映射到局部地址空間0,采用內(nèi)存方式映射,存儲器的數(shù)據(jù)寬度為 8位,并且不采用突發(fā)傳輸,讀寫時不可預(yù)取。下面介紹這個地址空間各個寄存器的具體配置過程。
(1)配置地址范圍寄存器
根據(jù)pci配置寄存器與las0rr的對應(yīng)關(guān)系以及雙口ram的地址空間800h,取7ffh的補碼得到fffff800h。又因為按照設(shè)計要求,要映射到內(nèi)存空間的任何位置并且設(shè)置為不可預(yù)取的,這樣lasorr寄存器后3位應(yīng)該為000h。所以las0rr的值應(yīng)該最終確定為fffff800h。
(2)配置基址寄存器
該寄存器的基址必須是地址空間范圍的整數(shù)倍,在本例中必須是2k的整數(shù)倍,可將基地址定為 00004000h,又由于基址寄存器位0為空間使能位,所以應(yīng)將這一位設(shè)置1;至于位 2、位3,由于是映射到內(nèi)存空間,設(shè)為00h即可。所以las0ba的值最終被確定為00004001h。
(3)配置片選信號控制寄存器
該寄存器的地址范圍和基地址必須與las0rr或las0ba所定義 的范圍和空間相對應(yīng)?筛鶕(jù)pci 9030提供的配置寄存器的方法確定cs0base的數(shù)值:板卡的2kb空間可以用十六進(jìn)制表示為800h,將800h右移一位得到400h,然后將基地址加到400h左邊的任何一位中。因為所采用的基地址
熱門點擊
- 手機定位技術(shù)
- 通信有效性與可靠性
- SPI通信原理及通信協(xié)議
- EPON設(shè)備互通性
- RF器件的鄰道泄漏比(ACLR)來源
- Access數(shù)據(jù)庫出現(xiàn)0x80004005問
- 手機定位的定義
- GPS 格式解析
- Rockwell AB PLC和PROFIB
- 在控制中心點選數(shù)據(jù)庫時出現(xiàn)的SQL1031N
推薦技術(shù)資料
- 高頻、高效音頻功放IC模塊
- 8英寸180納米GaN固態(tài)變壓器(SST)
- 新一代光纖通信光收發(fā)器接收器芯
- 第三代半導(dǎo)體SiC(碳化硅)和
- 全球半導(dǎo)體產(chǎn)業(yè)終端市場需求及技
- GaN與SiC材料單片集成技術(shù)
- 多媒體協(xié)處理器SM501在嵌入式系統(tǒng)中的應(yīng)用
- 基于IEEE802.11b的EPA溫度變送器
- QUICCEngine新引擎推動IP網(wǎng)絡(luò)革新
- SoC面世八年后的產(chǎn)業(yè)機遇
- MPC8xx系列處理器的嵌入式系統(tǒng)電源設(shè)計
- dsPIC及其在交流變頻調(diào)速中的應(yīng)用研究