《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 可編程邏輯 > 設(shè)計(jì)應(yīng)用 > 基于FPGA的PXA270外設(shè)時(shí)序轉(zhuǎn)換接口設(shè)計(jì)方案
基于FPGA的PXA270外設(shè)時(shí)序轉(zhuǎn)換接口設(shè)計(jì)方案
電子發(fā)燒友
摘要: ARCNET協(xié)議應(yīng)用于高速動(dòng)車組列車通信網(wǎng)絡(luò)時(shí),產(chǎn)生中央控制單元處理器PXA270與專用協(xié)議控制器件COM20020相連的時(shí)序不匹配問題,若用通用數(shù)字電路模塊進(jìn)行時(shí)序轉(zhuǎn)換,PXA270需占用PXA270專門的資源(CPU時(shí)間片)對(duì) COM20020的寄存器、數(shù)據(jù)包緩沖區(qū)進(jìn)行低速讀寫訪問(對(duì)COM20020的相鄰兩次讀操作相隔至少300 ns),這樣將增加處理器的負(fù)擔(dān)?;谶@種現(xiàn)狀,提出一種基于FPGA的PXA270外設(shè)時(shí)序轉(zhuǎn)換接口設(shè)計(jì)方案,以FPGA為橋梁進(jìn)行時(shí)序轉(zhuǎn)換,并增加存儲(chǔ)器直接訪問DMA(Direct Memory Aeeess)功能,即FPGA自動(dòng)完成數(shù)據(jù)包的收發(fā)工作,PXA270則只需高速讀寫訪問FPGA中的同步雙口RAM。
Abstract:
Key words :

  1 引言

  ARCNET協(xié)議應(yīng)用于高速動(dòng)車組列車通信網(wǎng)絡(luò)時(shí),產(chǎn)生中央控制單元處理器PXA270與專用協(xié)議控制器件COM20020相連的時(shí)序不匹配問題,若用通用數(shù)字電路模塊進(jìn)行時(shí)序轉(zhuǎn)換,PXA270需占用PXA270專門的資源(CPU時(shí)間片)對(duì) COM20020的寄存器、數(shù)據(jù)包緩沖區(qū)進(jìn)行低速讀寫訪問(對(duì)COM20020的相鄰兩次讀操作相隔至少300 ns),這樣將增加處理器的負(fù)擔(dān)?;谶@種現(xiàn)狀,提出一種基于FPGA的PXA270外設(shè)時(shí)序轉(zhuǎn)換接口設(shè)計(jì)方案,以FPGA為橋梁進(jìn)行時(shí)序轉(zhuǎn)換,并增加存儲(chǔ)器直接訪問DMA(Direct Memory Aeeess)功能,即FPGA自動(dòng)完成數(shù)據(jù)包的收發(fā)工作,PXA270則只需高速讀寫訪問FPGA中的同步雙口RAM。

  2 時(shí)序轉(zhuǎn)換接口整體設(shè)計(jì)

  2.1 FPGA對(duì)外接白

  采用FPGA連接PXA270處理器與外設(shè)以解決PXA270處理器與外設(shè)直接連接時(shí)的時(shí)序不匹配問題。如圖1所示,F(xiàn)PGA從PXA270處理器獲得地址總線(ADDRBUS[17..14], ADDRBUS[9..0]),片選信號(hào)(SYSCS5),讀允許(SYSOE),寫允許(SYSWE),并提供雙向數(shù)據(jù)端口DATABUS[7..0] (可根據(jù)實(shí)際應(yīng)用修改為32位或16位等),中斷(interrupt);同時(shí),F(xiàn)PGA向COM20020提供特定的總線接口,包括 COM20020_DS,COM20020_CS,COM20020_DIR,COM20020_DATABUS [7..0],COM20020_ADDRBUS[2..0]等。

  PXA270時(shí)序轉(zhuǎn)換接口原理圖 www.elecfans.com

  2.2 內(nèi)部功能實(shí)現(xiàn)

  PXA270和外設(shè)之間的連接是將FPGA中的雙口RAM作為數(shù)據(jù)中轉(zhuǎn)站,以此間接相連。該設(shè)計(jì)由以下4個(gè)功能模塊組成。

  (1)PXA270對(duì)外設(shè)指定寄存器單次寫操作PXA270先將所要寫的數(shù)據(jù)送人雙口RAM,然后PXA270向FPGA的命令寄存器寫入對(duì)該外設(shè)指定寄存器的單次寫指令,然后FP-GA根據(jù)接收到的命令將RAM中的數(shù)據(jù)輸出到外設(shè)數(shù)據(jù)總線,同時(shí)給出對(duì)外設(shè)的寫時(shí)序。

  (2)PXA270對(duì)外設(shè)指定寄存器單次讀操作PXA270先向FPGA的命令寄存器寫入對(duì)該外設(shè)指定寄存器的單次讀指令,此時(shí),F(xiàn)PGA給出對(duì)外設(shè)的讀時(shí)序,并驅(qū)動(dòng)RAM的地址總線、寫時(shí)鐘等信號(hào),將外設(shè)數(shù)據(jù)總線上的數(shù)據(jù)傳送到RAM中。再延時(shí)1μs,PXA270從RAM中讀出數(shù)據(jù)。

  (3)PXA270對(duì)外設(shè)批數(shù)據(jù)寫操作與單次寫操作不同的是,PXA270需先將所要寫入的數(shù)據(jù)存儲(chǔ)到RAM的連續(xù)空間,然后向FPGA的命令寄存器寫入批數(shù)據(jù)寫操作指令,F(xiàn)P-GA根據(jù)接收到的命令將RAM中的數(shù)據(jù)分次送至外設(shè)數(shù)據(jù)總線,且需保證向COM20020的寫時(shí)序與之同步。

  (4)PXA270對(duì)外設(shè)批數(shù)據(jù)讀操作 由FPGA給出對(duì)外設(shè)的連續(xù)多次讀時(shí)序?qū)⑼庠O(shè)中的數(shù)據(jù)送人RAM,完成存儲(chǔ)工作。PXA270等待批數(shù)據(jù)讀完成中斷發(fā)生后對(duì)RAM進(jìn)行連續(xù)讀。

  3 功能模塊設(shè)計(jì)

  3.1 時(shí)序發(fā)生模塊設(shè)計(jì)

  COM20020有80xx-like和68xx-like兩種總線訪問方式。這里中實(shí)現(xiàn)68xx-like訪問方式,圖2為其讀寫訪問時(shí)序。

  

  讀寫時(shí)序的共同要求為:片選信號(hào)CS必須先于DS至少5 ns,并且只允許在DS無(wú)效之后CS才能恢復(fù)為高電平;讀寫方向信號(hào)DIR應(yīng)在DS有效前至少10 ns建立;DS高電平寬度不小于20 ns。兩者的不同要求:寫時(shí)序的地址總線先于操作脈沖DS至少15 ns建立,DS低電平不小于20 ns,數(shù)據(jù)總線有效數(shù)據(jù)必須在DS變高之前至少30 ns建立,保持至DS變高后至少10 ns;而讀時(shí)序的地址總線先于片選信號(hào)至少15 ns建立,DS低電平不小于60 ns,DS變低到數(shù)據(jù)總線數(shù)據(jù)有效的間隔最大為40 ns,DS變高到數(shù)據(jù)總線高阻抗的間隔最大為20 ns,這是COM20020作為數(shù)據(jù)輸出方給訪問設(shè)備提供的特性。針對(duì)以上讀寫時(shí)序的要求,具體設(shè)計(jì)如下:DIR在一次操作中只有高或低電平一種可能,通過命令寄存器在操作前事先給出,而后給出使能信號(hào),DS在CS有效之后變低,而在CS無(wú)效之前變高,以便數(shù)據(jù)可靠鎖存。

  圖3為COM20020的時(shí)序原理圖,從時(shí)序分析可得出如下設(shè)計(jì)方案:DIR用于指示操作是讀還是寫,DIR=‘1’為讀,否則為寫。在操作前先對(duì)DIR 賦值;在EN有效時(shí)選擇CS,CLK的下一次上升沿變?yōu)橛行А_@樣是給寫操作對(duì)COM20020數(shù)據(jù)總線準(zhǔn)備數(shù)據(jù)之用,不影響讀操作;DS選擇在CS有效的下一個(gè)CLK上升沿變?yōu)橛行В贑S無(wú)效前兩個(gè)時(shí)鐘周期給出上升沿,以滿足“片選信號(hào)CS必須先于DS至少5 ns,并且只能在DS無(wú)效之后恢復(fù)為高電平”,并且DS中間應(yīng)有至少60ns的時(shí)鐘寬度,因而保持3個(gè)CLK周期有效。圖4為CommandGenerator時(shí)序仿真圖。采用計(jì)數(shù)器進(jìn)行時(shí)序同步。以下給出VHDL源代碼。

    

 

  圖5為批數(shù)據(jù)從WRRAM向外設(shè)傳送的連續(xù)時(shí)鐘產(chǎn)生和自動(dòng)地址生成原理圖。其中,lpm_counter0為帶有異步清零和進(jìn)位信號(hào)的增計(jì)數(shù); AutoAccessDataNumsOnce在EN='1'時(shí),產(chǎn)生一次批傳送時(shí)鐘,根據(jù)COM20020的長(zhǎng)短數(shù)據(jù)包傳送要求,在CCESSTYPE =‘1’時(shí)傳送長(zhǎng)數(shù)據(jù)包(512 B),否則傳送短數(shù)據(jù)包(256 B)。FRE信號(hào)同時(shí)提供WRRAM的rdclock和lpm_counter0的clock信號(hào)。

 

  圖6為一次批數(shù)據(jù)向RAM中寫,而后啟動(dòng)DMA傳輸,將數(shù)據(jù)從RAM送至COM20020的時(shí)序仿真。在WRCLOCK上升沿時(shí),RAM將datain總線上的數(shù)據(jù)存儲(chǔ)到WR_AD-DRESS所指向的字節(jié)地址空間,WRCLOCK信號(hào)是由PXA270的WE信號(hào)與分配給RAM的片選信號(hào)(高電平有效)相與而得。對(duì)RAM進(jìn)行模擬寫時(shí)必須確保AUTOWREN無(wú)效(低電平);在檢驗(yàn)數(shù)據(jù)DMA傳輸?shù)腞AM輸出環(huán)節(jié),WRCLOCK應(yīng)不再出現(xiàn)上升沿信號(hào),以防RAM同時(shí)讀寫造成輸出不定值。此外,每個(gè)數(shù)據(jù)從outputdata端口輸出時(shí),CS、DS在一定延時(shí)后(1個(gè)CLK時(shí)鐘周期)給時(shí)序產(chǎn)生留足夠時(shí)間。需說明:COM20020內(nèi)部有2 K字節(jié)的RAM空間,用于存放待發(fā)送或已接收的數(shù)據(jù)包,在向RAM中寫數(shù)據(jù)包前,指定該數(shù)據(jù)包的存放位置,然后將COM20020中的指針自動(dòng)移動(dòng)位置 1,則只需連續(xù)的向該RAM中寫數(shù)據(jù),而不必給出地址信號(hào)。

  

  3.3 對(duì)外設(shè)指定寄存器操作

  對(duì)外設(shè)指定寄存器操作比批數(shù)據(jù)傳送實(shí)現(xiàn)簡(jiǎn)單,只需將操作次數(shù)降為1次,并對(duì) COM20020的A2~A0提供相應(yīng)的地址即可。指定寄存器操作將數(shù)據(jù)存儲(chǔ)在RAM的高512字節(jié)空間,并且只占用其中低8個(gè)字節(jié),在PXA270編程時(shí),需確保PXA270送入RAM的地址與命令寄存器中的RAM存儲(chǔ)地址COMMANDBYTE[2..0]相對(duì)應(yīng)。

  4 結(jié)論

  本設(shè)計(jì)解決ARCNET協(xié)議專用器件應(yīng)用于列車通信網(wǎng)絡(luò)中的時(shí)序匹配問題,實(shí)現(xiàn)了PXA270處理器與COM20020的時(shí)序轉(zhuǎn)換。此外,對(duì)擴(kuò)展其他總線訪問類型提供了參考框架,可通過修改CommandGenerator中COM20020時(shí)序,實(shí)現(xiàn)不同外設(shè)總線訪問類型的擴(kuò)展;修改 AutoAccessDataNun-sOnce中的ACCESSTYPE,可配置批數(shù)據(jù)操作的數(shù)據(jù)種類。


此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
性伦欧美刺激片在线观看| 亚洲精品中文字| 欧美精品一区二区久久婷婷| 久久免费视频这里只有精品| 欧美在线1区| 欧美在线播放一区| 欧美一区二区三区在线看| 亚洲欧美三级伦理| 亚洲欧美成人一区二区三区| 亚洲在线一区| 亚洲欧美日韩一区二区在线| 亚洲欧美精品在线| 亚洲专区在线| 亚洲男女自偷自拍| 香蕉国产精品偷在线观看不卡| 先锋影音国产一区| 性刺激综合网| 久久国产精品99国产精| 久久精品一区二区| 久久免费黄色| 女人香蕉久久**毛片精品| 欧美肥婆在线| 欧美日韩久久| 国产精品日韩在线观看| 国产伦精品一区二区三区免费迷| 国产欧美亚洲一区| 国内精品美女av在线播放| 亚洲大胆女人| 亚洲伦伦在线| 一区二区三区欧美成人| 亚洲你懂的在线视频| 性欧美xxxx视频在线观看| 久久成人精品无人区| 最新国产拍偷乱拍精品 | 欧美亚洲视频一区二区| 欧美在线高清| 亚洲精品视频免费观看| 亚洲一二三四久久| 欧美综合激情网| 欧美国产另类| 国产精品网红福利| 在线高清一区| 亚洲午夜精品一区二区三区他趣| 欧美一级专区| 日韩一区二区精品| 欧美一区二区三区四区夜夜大片| 另类天堂av| 欧美日精品一区视频| 国产亚洲欧美一区二区| 亚洲国内精品| 午夜精品一区二区三区在线视| 亚洲片区在线| 性久久久久久久久久久久| 能在线观看的日韩av| 欧美性生交xxxxx久久久| 激情懂色av一区av二区av| 亚洲免费观看高清在线观看 | 欧美一区综合| 一区二区三区精品视频在线观看| 欧美一区二区免费视频| 蜜臀av国产精品久久久久| 国产精品播放| 亚洲国产另类久久久精品极度| 亚洲视频一区二区免费在线观看| 亚洲国产精品久久久久秋霞不卡| 亚洲一区亚洲| 欧美激情性爽国产精品17p| 国产午夜精品一区二区三区欧美| 亚洲精品五月天| 亚洲二区三区四区| 午夜一区不卡| 欧美日韩高清不卡| 一区三区视频| 亚洲欧美一区二区三区在线 | 久久亚洲私人国产精品va| 欧美午夜电影完整版| 一区二区三区在线视频播放| 亚洲一区二区三区色| 亚洲乱码国产乱码精品精可以看 | 亚洲精品资源| 久久精品亚洲| 国产精品久久久久一区二区三区| 亚洲国产一区二区a毛片| 性欧美暴力猛交69hd| 亚洲一区二区三区777| 欧美高清视频一区| 国内精品久久久| 亚洲女女女同性video| 亚洲视频综合| 欧美国产精品| 在线播放一区| 久久精品二区三区| 欧美影院成年免费版| 国产精品电影观看| 99国产精品久久久| 亚洲精品在线视频观看| 免费中文日韩| 伊人精品视频| 亚洲福利免费| 久久久久久久久久看片| 国产欧美日韩一区| 亚洲一区精彩视频| 亚洲一区欧美二区| 国产精品v欧美精品v日韩| 亚洲精品中文字| 一区二区激情视频| 欧美日韩国产免费| 亚洲精品中文字幕有码专区| 日韩一区二区电影网| 欧美福利视频在线观看| 1000部国产精品成人观看| 91久久久亚洲精品| 欧美成人久久| 最新国产乱人伦偷精品免费网站| 亚洲欧洲三级| 欧美精品福利| 99热这里只有精品8| 亚洲性av在线| 国产精品国产精品| 亚洲综合不卡| 久久国产欧美精品| 国产亚洲人成网站在线观看| 性欧美video另类hd性玩具| 久久久精品2019中文字幕神马| 国产一区二区三区久久悠悠色av | 欧美系列电影免费观看| 夜夜嗨av一区二区三区四季av| 亚洲图片欧洲图片日韩av| 欧美性猛片xxxx免费看久爱 | 伊人久久综合| 亚洲啪啪91| 欧美日本亚洲视频| 中日韩高清电影网| 性欧美videos另类喷潮| 国产日本欧美一区二区三区| 久久精品1区| 女生裸体视频一区二区三区| 亚洲精品久久久久久一区二区| 亚洲图片在线| 国产区二精品视| 亚洲第一福利社区| 欧美激情第六页| 在线亚洲欧美视频| 久久精品国产一区二区三| 在线观看日韩www视频免费| 一区二区三区高清视频在线观看| 国产精品黄视频| 欧美一区二区三区免费视| 久久综合精品国产一区二区三区| 最新国产精品拍自在线播放| 亚洲欧美精品suv| 黄色精品一区| 亚洲视频在线看| 国产视频综合在线| 亚洲另类春色国产| 国产精品日韩欧美一区二区三区| 久久精品欧美| 欧美日韩综合在线免费观看| 欧美一级专区免费大片| 欧美激情精品久久久久久变态 | a4yy欧美一区二区三区| 国产精品久久久久免费a∨大胸 | 欧美一区二区三区的| 一区在线观看| 亚洲摸下面视频| 在线视频观看日韩| 亚洲欧美中文在线视频| 在线观看日韩| 午夜精品成人在线视频| 亚洲第一久久影院| 午夜精品一区二区在线观看| 在线日韩av片| 午夜精品久久久久久久99热浪潮| 亚洲第一综合天堂另类专| 亚洲专区在线视频| 1769国内精品视频在线播放| 午夜欧美大尺度福利影院在线看| 亚洲成人在线视频网站| 亚洲欧洲av一区二区| 亚洲电影自拍| 亚洲欧美日韩综合国产aⅴ| 亚洲成人在线免费| 欧美一区综合| 亚洲精品国偷自产在线99热| 欧美在线一二三| 日韩一级成人av| 免费观看不卡av| 香蕉免费一区二区三区在线观看| 欧美日韩精品一二三区| 亚洲高清一区二区三区| 国产精品男女猛烈高潮激情| 亚洲美女视频| 一区二区三区自拍| 欧美在线视频观看免费网站| av成人免费在线| 欧美韩日视频| 亚洲国产专区| 国产亚洲精品aa| 午夜精品一区二区三区四区| 日韩亚洲在线|