www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當(dāng)前位置:首頁(yè) > 電源 > 數(shù)字電源
[導(dǎo)讀] 采用雙端口RAM實(shí)現(xiàn)DSP與PCI總線芯片之間的數(shù)據(jù)交換接口電路。 提出了一種使用CPLD解決雙端口RAM地址譯碼和PCI接口芯片局部總線仲裁的的硬件設(shè)計(jì)方案,并給出了PCI總線接口芯片寄存器配置實(shí)例,介紹了軟件包Wi

 采用雙端口RAM實(shí)現(xiàn)DSP與PCI總線芯片之間的數(shù)據(jù)交換接口電路。

       提出了一種使用CPLD解決雙端口RAM地址譯碼和PCI接口芯片局部總線仲裁的的硬件設(shè)計(jì)方案,并給出了PCI總線接口芯片寄存器配置實(shí)例,介紹了軟件包WinDriver開(kāi)發(fā)設(shè)備驅(qū)動(dòng)程序的具體過(guò)程。
 

       隨著計(jì)算機(jī)技術(shù)的不斷發(fā)展,為滿足外設(shè)間以及外設(shè)與主機(jī)間的高速數(shù)據(jù)傳輸,Intel公司于1991年提出了PCI總線概念。PCI總線是一種能為主CPU及外設(shè)提供高性能數(shù)據(jù)通訊的總線,其局部總線在33MHz總線時(shí)鐘、32位數(shù)據(jù)通路時(shí),數(shù)據(jù)傳輸速率最高可達(dá)133Mbps。實(shí)際應(yīng)用中,可通過(guò)PCI總線實(shí)現(xiàn)主機(jī)與外部設(shè)備的高速數(shù)據(jù)傳輸,有效解決數(shù)據(jù)的實(shí)時(shí)傳輸和存儲(chǔ)問(wèn)題,為信號(hào)的實(shí)時(shí)處理打下良好基礎(chǔ)。
  

       本文主要提供一種基于PCI總線的數(shù)據(jù)傳輸系統(tǒng)設(shè)計(jì)方案,其中雙口RAM起橋梁作用,完成上位機(jī)與外圍主控單元之間的數(shù)據(jù)握手。


      1 雙端口RAM實(shí)現(xiàn)PCI總線接口方案
  

      本系統(tǒng)主要用于解決上位機(jī)與外圍控制單元的數(shù)據(jù)傳輸問(wèn)題。上位機(jī)運(yùn)行信息診斷程序,通過(guò)PCI總線與外圍控制單元以一定速率傳輸數(shù)據(jù),在主機(jī)中實(shí)時(shí)監(jiān)控并保存數(shù)據(jù)。由于實(shí)現(xiàn)高速實(shí)時(shí)數(shù)據(jù)傳輸,數(shù)據(jù)量大,所以在PCI局部總線上插入一個(gè)高速雙端口RAM。雙端口RAM一端作為PCI總線接口的本地端存儲(chǔ)器,一端作為DSP目標(biāo)存儲(chǔ)器。需要傳輸保存的數(shù)據(jù)經(jīng)DSP處理后借助雙端口RAM和PCI總線接口完成了上位機(jī)與DSP的數(shù)據(jù)握手。本文提出的雙端口RAM實(shí)現(xiàn)PCI總線接口方案如圖1。

考慮到PCI總線接口對(duì)局部總線的控制時(shí)序比較復(fù)雜,需要譯碼和控制電路來(lái)實(shí)現(xiàn)局部總線的訪問(wèn)及控制。本系統(tǒng)使用CPLD解決雙口RAM的地址訪問(wèn)競(jìng)爭(zhēng)沖突問(wèn)題。需解決的主要問(wèn)題有:①PCI接口電路設(shè)計(jì);②CPLD地址譯碼和總線仲裁;③PCI總線驅(qū)動(dòng)程序開(kāi)發(fā)。


       2 PCI接口電路設(shè)計(jì)
  

       PCI卡的設(shè)計(jì)一般采用兩種方案。一種是根據(jù)PCI協(xié)議在FPGA或CPLD中實(shí)現(xiàn)PCI總線接口控制器,但是由于PCI協(xié)議的復(fù)雜性,使得開(kāi)發(fā)難度大、周期長(zhǎng);另一種使用現(xiàn)成的PCI接口芯片,用戶開(kāi)發(fā)難度降低,只把重點(diǎn)放在PCI接口芯片局部總線的接口設(shè)計(jì)和PCI總線配置空間的初始化,而不用速度考慮PCI總線規(guī)范上眾多的協(xié)議規(guī)范,加快了開(kāi)發(fā)時(shí)間。
  

      本數(shù)據(jù)傳輸系統(tǒng)使用PLX公司的PCI 9030總線接口芯片,以CPLD完成邏輯控制及與外設(shè)的連接,整個(gè)系統(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公司開(kāi)發(fā)的PCI總線目標(biāo)接口芯片。其特點(diǎn):低功耗,PQFP176針?lè)庋b,符合PCI V2.2規(guī)范;在PCI總線上是從設(shè)備,但在局部總線上是主設(shè)備;PCI 9030支持突發(fā)傳輸,有5個(gè)PCI總線到局部總線地址空間,9個(gè)可編程的通用I/O,4個(gè)可編程的片選,支持熱插拔。PCI 9030主要由PCI總線接口邏輯、局部總線接口邏輯、串行E2PROM接口邏輯和內(nèi)部邏輯組成,結(jié)構(gòu)框圖見(jiàn)圖3。

 PCI 9030支持PCI主設(shè)備直接訪問(wèn)局部總線上的設(shè)備,數(shù)據(jù)傳輸方式分為內(nèi)存映射的突發(fā)傳輸和I/O映射的單次傳輸,并且由PCI基址寄存器設(shè)置在PCI內(nèi)存和I/O空間中的合適位置,另外局部映射寄存器允許PCI地址空間轉(zhuǎn)換到局部地址空間。


       2.2 配置實(shí)例
  

       系統(tǒng)訪問(wèn)的雙口RAM存儲(chǔ)空間為2KB,要求將這個(gè)存儲(chǔ)器空間映射到局部地址空間0,采用內(nèi)存方式映射,存儲(chǔ)器的數(shù)據(jù)寬度為 8位,并且不采用突發(fā)傳輸,讀寫(xiě)時(shí)不可預(yù)取。下面介紹這個(gè)地址空間各個(gè)寄存器的具體配置過(guò)程。
  (1)配置地址范圍寄存器
  

      根據(jù)PCI配置寄存器與LAS0RR的對(duì)應(yīng)關(guān)系以及雙口RAM的地址空間800H,取7FFH的補(bǔ)碼得到FFFFF800H。又因?yàn)榘凑赵O(shè)計(jì)要求,要映射到內(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)配置片選信號(hào)控制寄存器
  

       該寄存器的地址范圍和基地址必須與LAS0RR或LAS0BA所定義的范圍和空間相對(duì)應(yīng)??筛鶕?jù)PCI 9030提供的配置寄存器的方法確定CS0BASE的數(shù)值:板卡的2KB空間可以用十六進(jìn)制表示為800H,將800H右移一位得到400H,然后將基地址加到400H左邊的任何一位中。因?yàn)樗捎玫幕刂窞?0004000H,所以得到的值為00004400H;又因?yàn)榈?位為片選使能位,應(yīng)該設(shè)置為1。所以最終確定的數(shù)值為00004401H。
  

       由于局部總線采用8位的寬度,將工作方式定義在不使能突發(fā),不預(yù)取,配置總線區(qū)域描述寄存器的數(shù)值確定為400140A2H。另外,還要根據(jù)要求設(shè)置CNTRL寄存器控制PCI 9030的工作狀態(tài),確定為18784500H。當(dāng)所有這些數(shù)據(jù)都配置完成后,便可將這些數(shù)據(jù)按照加載順序?qū)懭氪蠩2PROM中,從而完成整個(gè)系統(tǒng)的配置。
  

      通過(guò)這幾個(gè)寄存器的配置,一個(gè)局部地址空間便可以確定下來(lái)。在系統(tǒng)上電后,系統(tǒng)BIOS根據(jù)這幾個(gè)寄存器的內(nèi)容將板卡上2KB的RAM空間重映射到PCI空間中,使主機(jī)可以像訪問(wèn)自己的地址空間一樣訪問(wèn)板卡上的RAM。


       2.3 CPLD控制邏輯
  

       對(duì)于雙口RAM同一個(gè)地址單元,不能同時(shí)進(jìn)行讀或?qū)懖僮?,但兩邊連接的主控芯片,都可以對(duì)其進(jìn)行讀、寫(xiě)操作,因此必須解決地址競(jìng)爭(zhēng)問(wèn)題。本系統(tǒng)中,使用XILINX公司的XC9536CPLD芯片完成PCI局部總線的譯碼和控制電路。由于系統(tǒng)控制計(jì)算主要在DSP中完成,上位機(jī)只起監(jiān)控和數(shù)據(jù)保存作用,因此規(guī)定對(duì)雙口RAM的操作DSP優(yōu)先于PCI 9030;同時(shí)CPLD也參與了DSP片外程序存儲(chǔ)器Flash和數(shù)據(jù)存儲(chǔ)器RAM的地址譯碼,控制邏輯用公式表示為:

3 設(shè)備驅(qū)動(dòng)程序設(shè)計(jì)
  

       設(shè)備驅(qū)動(dòng)程序開(kāi)發(fā)工具通常有DDK、VtoolsD、WinDrvr等。為加快開(kāi)發(fā)速度,采用JUNDO公司的WinDrvr開(kāi)發(fā)設(shè)備驅(qū)動(dòng)程序。其使用簡(jiǎn)單,支持多種操作系統(tǒng)。
  

       采用Windrvr開(kāi)發(fā)PCI橋接設(shè)備的驅(qū)動(dòng)程序有兩種方法。一種Wizard開(kāi)發(fā)向?qū)亲詣?dòng)生成驅(qū)動(dòng)程序框架代碼,然后根據(jù)實(shí)際需要,加入定制功能。這種方法生成的代碼較多,程序較復(fù)雜。另一種是在Vc++創(chuàng)建工程中直接利用Windrvr的API函數(shù)生成驅(qū)動(dòng)程序,比在Wizard生成的框架代碼上修改更為靈活。本文采用后一種方法。以下是用Windrvr開(kāi)發(fā)PCI9030橋芯片的驅(qū)動(dòng)代碼,只要稍加改動(dòng)就可以作為其他PCI芯片驅(qū)動(dòng)程序的一部分,例如PCI9050、PCI9052等。程序中出現(xiàn)的變量名都由其名稱(chēng)反映含義,具體可以參見(jiàn)Windrvr設(shè)計(jì)文檔說(shuō)明。
  PCI9030_RegisterWinDrvr();         //注冊(cè)WinDrvr
  hWD=W_Open();                //打開(kāi)Windrv設(shè)備,每次使用前要調(diào)用
  pciSan.searchId.dwVendoId=0x10b5;      //供貨號(hào)
  pciSan.searchId.dwDevice.Id=0x9030;     //設(shè)備號(hào)
  WD_pciScanCards(hWD,&pciScan);       //枚舉設(shè)備
  pciSlot=pciScan.cardSlot[0];         //得到設(shè)備槽號(hào)
  pciCardInfo.pciSlot=pciSlot;
  WD_PciGetCardInfo(hWD,&pciCardInfo);     //得到設(shè)備槽上的設(shè)備信息
  Card=pciCardInfo.Card;            //PCI卡上資源結(jié)構(gòu)
  cardReg.Card=Card;
  WD_CardRegister(hWD,&cardReg)        //鎖定卡上資源
  Item=Card.Item[2];              //資源賦給Item
  If(Item.item==ITEM>MEM0RY)
  { regAddr=Item.I.Mem.dwUserDirectAddr;
                          //得到PCI卡上內(nèi)存映射到用戶態(tài)地址
  }
  至此獲得了本地端映射到用戶的內(nèi)存地址,調(diào)用讀寫(xiě)函數(shù)就可以對(duì)本地芯片進(jìn)行操作。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專(zhuān)欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車(chē)的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國(guó)汽車(chē)技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車(chē)工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車(chē)。 SODA V工具的開(kāi)發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車(chē) 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來(lái)越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來(lái)越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場(chǎng)的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開(kāi)幕式在貴陽(yáng)舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱(chēng),數(shù)字世界的話語(yǔ)權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營(yíng)業(yè)績(jī)穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤(rùn)率延續(xù)升勢(shì) 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長(zhǎng) 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競(jìng)爭(zhēng)力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競(jìng)爭(zhēng)優(yōu)勢(shì)...

關(guān)鍵字: 通信 BSP 電信運(yùn)營(yíng)商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國(guó)電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場(chǎng) NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長(zhǎng)三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡(jiǎn)稱(chēng)"軟通動(dòng)力")與長(zhǎng)三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉