《電子技術應用》
您所在的位置:首頁 > 模擬設計 > 設計應用 > 雙口RAM在PCI總線與AVR接口設計中的應用
雙口RAM在PCI總線與AVR接口設計中的應用
鄧江濤,傅 煊 中國工程物理研究院
摘要: 為了提高PCI總線與AVR單片機之間的數據傳輸速度,利用雙口RAM通過共享的方式實現PCI總線與AVR單片機之間的高速數據交換。利用有限狀態機方法將PCI接口芯片局部端邏輯轉換為雙口RAM讀寫控制信號和地址數據信號,并通過仿真工具Modelsim Se對接口電路進行了驗證,得出的仿真波形符合要求;利用乒乓操作方法實現PCI接口芯片和AVR單片機交替讀/寫數據存儲區,有效提高了PCI總線與AVR單片機之間的數據傳輸速度。實踐證明該設計方法是解決高低速設備的傳輸瓶頸問題的有效途徑。
Abstract:
Key words :

    由于PCI總線工作在頻率33 MHz,AVR單片機工作在16 MHz,它們之間時鐘不同步,要進行有效通信,必須在它們中間設置數據緩沖區,作為雙方交換數據的單元。雙口RAM正好解決了這個問題,它既作為PCI總線的局部空間又作為AVR單片機的外部擴充存儲器,通過交替讀/寫達到交換數據的目的。下面以PLX公司的PCI總線接口芯片PCI9052和IDT公司的雙口RAMIDT7006為例,介紹實現數據交換的方法。

1 PCI9052和IDT7006
1.1 PCI9052簡介
    PCI9052是PLX公司為擴展適配板卡推出的低價位PCI總線目標接口芯片,低功耗,符合PCI V2.1規范,它的本地總線(Local Bus)可以通過編程設置為8/16/32位的復用或非復用總線。其主要性能特點如下:
    (1)異步操作。PCI9052的Local Bus與PCI總線的時鐘相互獨立運行,兩總線的異步運行方便了高、低速設備的兼容。Local Bus的時鐘頻率范圍為0~40 MHz,TTL電平;PCI的時鐘頻率范圍0~33MHz。
    (2)可編程的局部總線配置。PCI9052支持8位、16位或32位Local Bus,它們是復用或非復用。PCI9052有4個字節允許信號(LBE[3:0]#),26條地址線(LA[27:2])和32位、16位、8位數據線(LAD[31:0])。
    (3)直接從(目標)數據傳送模式。PCI9052具有雙向FIFO,可用于零等待狀態突發操作,支持從PCI總線到Local Bus的存儲器映射空間的突發傳送和I/O訪問。Local Bus能被設置成突發或持續單周期。
    (4)4個局部片選。PCI9052提供4個片選,每個片選的基地址和范圍被E2PROM或主機編程成唯一的。
    (5)5個局部地址空間。PCI9052提供5個局部地址空間,每個局部地址空間的基地址和范圍可以被E2PROM或主機編程成惟一的。
1.2 IDT7006簡介
    IDT7006是美國IDT公司開發研制的高速16K×8 B雙口靜態RAM。該雙口RAM提供兩個獨立的具有控制、地址和I/O引腳的端口。其主要性能特點如下:可同時訪問雙端口同一存儲器空間;高速存儲訪問,訪問速度最高可達到15 ns;低功耗運行;雙片選,允許不需要外部邏輯的深度擴展;使用級聯和主從選擇引腳可以擴展IDT7006的數據總線寬度到16位或更寬;具有硬件仲裁方式、中斷仲裁方式和信號燈仲裁方式,來防止訪問沖突。

2 PCI9052和IDT7006的時序轉換
    為將PCI9052的局部信號邏輯轉換為雙口RAMIDT7006的讀/寫控制信號邏輯,采用有限狀態機的方法來實現它們之間的邏輯轉換。在可編程器件設計中,狀態機的設計方法是應用最廣泛的設計方法之一,它是一種簡單、結構清晰、設計靈活的方法,易于建立、理解和維護,特別應用在具有大量狀態轉移和復雜時序控制的系統中,更顯其優勢。設計中用VerilogHDL描述的狀態機來實現接口的時序轉換。
2.1 硬件連接
    硬件上采用可編程邏輯器件MAXⅡ(EPM240)來實現PCI9052和IDT7006的接口電路,PCI9052采取非復用、8 b局部總線寬度和單周期讀/寫方式,信號連接關系如圖1所示。

a.jpg


2.2 有限狀態機
    PCI9052局部總線有4個基本的狀態:空閑狀態、地址狀態、數據/等待狀態和恢復狀態。一旦局部總線的主設備擁有總線并需要開始一個總線訪問,則進入地址狀態,b.jpg有效,此時一個有效的地址出現在地址/數據總線上;數據傳輸是在數據/等待狀態進行的,c.jpg或者內部等待產生器用來在此狀態插入等待狀態;d.jpg在最后的數據/等待狀態有效,用來申明最后的數據傳輸;在地址/數據復用的模式下,所有數據傳輸完畢后,總線會進入恢復狀態;隨后總線回到空閑狀態,等待下一次的總線訪問。
    整個狀態機分為外狀態機和內狀態機兩個大的部分,外狀態機識別PCI9052的讀周期和寫周期,并轉移到相應的內部狀態機,然后內部狀態機再進行讀/寫的內部狀態轉移,通過不同的狀態輸出不同的雙口RAM讀/寫控制等信號,達到時序轉換的目的。外狀態機狀態轉移圖如圖2所示。

e.jpg


    內狀態機中寫狀態機有5個狀態:S0,寫空閑狀態;S1,寫開始;S2,寫等待;S3,單周期寫;S4,寫結束。具體的狀態轉移圖如圖3所示。

f.jpg


    當系統復位后,狀態機輸出雙口RAM的片選信號g.jpg,輸出使能h.jpg,狀態機處于空閑狀態。
    寫操作的狀態機轉移過程是:當狀態機處于空閑狀態時,在每次時鐘的上升沿采樣到b.jpg有效和h1.jpg=1,并且如果雙口RAM的片選信號i.jpg有效,狀態機進入寫開始狀態,輸出j.jpgk.jpg有效,并將9052的局部有效地址輸出給雙口RAM;當采樣到l.jpg有效時,狀態機進入寫等待狀態,輸出m.jpg;當采樣到n.jpg且BUSYL=1、時,狀態機進入單周期寫狀態,輸出p.jpg,將有效數據輸出到雙口RAM;當采樣到m1.jpg無效,狀態機進入寫結束狀態,輸出q.jpg,g.jpg,h.jpg;之后如果采樣到b.jpg有效就進入下一次的寫操作循環,如果采樣到b.jpg無效且r.jpg無效,狀態機回到空閑狀態。
    讀狀態機也有5個狀態:S0,讀空閑狀態;S1,讀開始;S2,讀等待;S3,單周期讀;S4,讀結束。具體的狀態轉移圖如圖4所示。

u.jpg


    讀操作的狀態機轉移過程是:當狀態機處于空閑狀態時,在每次時鐘的上升沿采樣到b.jpg有效和h1.jpg=0,并且雙口RAM的片選信號i.jpg有效的話,狀態機進入讀開始狀態,輸出j.jpgk.jpg有效,并將9052的局部有效地址輸出給雙口RAM;當采樣到l.jpg有效時,狀態機進入讀等待狀態,輸出s.jpg;當采樣到n.jpg且BUSYL=1,o.jpg時,狀態機進入單周期讀狀態,輸出p.jpg,將有效數據輸出到PCI9052;當采樣到m1.jpg無效,狀態機進入讀結束狀態,輸出q.jpg,g.jpgh.jpg;之后如果采樣到b.jpg有效就進入下一次的讀操作循環,如果采樣到無效且無效,狀態機回到空閑狀態。
2.3 仿真結果
    在ModelsimSE仿真平臺下,實現了PCI9052讀/寫雙口RAM的讀/寫過程,讀操作仿真波形如圖5所示,寫操作仿真波形如圖6所示。從仿真波形可以看出,該代碼可以實現將PCI9052的讀/寫控制信號轉換成雙口RAM的讀/寫控制信號,完成時序的匹配。

v.jpg

w.jpg



3 雙口RAM的讀/寫程序
    為了達到用低速模塊處理高速數據流的效果,在雙口RAM的程序處理上采用乒乓操作的技巧。乒乓操作的最大特點是通過“輸入數據選擇單元”和“輸出數據選擇單元”按節拍、相互配合的切換,將經過緩沖的數據流沒有停頓地送到“數據流運算處理模塊”進行運算與
處理。把乒乓操作模塊當作一個整體,站在這個模塊的兩端看數據,輸入數據流和輸出數據流都是連續不斷的,沒有任何停頓,因此非常適合對數據流進行流水線式處理。所以乒乓操作常應用于流水線式算法,完成數據的無縫緩沖與處理。
    設計中將雙口RAM分為A,B兩個部分,各占8 KB空間。通過9052和AVR交替對兩個存儲器進行讀/寫操作到達交換數據的目的。在雙口RAM的仲裁方式選擇上選取中斷和硬件仲裁結合的方式,中斷仲裁在硬件電路設計上比較簡單,只要將雙口RAM兩側的INT引腳連接到AVR和PCI90 52的中斷引腳上,軟件設計上只要編寫雙口RAM操作程序和中斷服務程序兩部分。具體過程是:
    (1)數據下行(PCI9052寫,AVR讀)。在首次發起數據傳輸時,通過握手信號告訴AVR本次數據傳輸共多少個字節。然后發起本次數據傳輸,如果數據傳輸長度小于8 KB,9052向雙口RAM的A區寫入數據,并在數據全部寫完之后對地址3FFFH(右端口信箱)執行一個寫操作,這樣i.jpg引腳變為低電平,觸發AVR的一個中斷響應程序,該程序就是雙口RAM讀寫程序中的讀函數,該函數讀取雙口RAM A區中事先約定長度的數據,并在操作的最后對地址3FFFH(右端口信箱)執行一個讀操作以恢復x.jpg引腳為高電平,隨后退出中斷響應程序。
    如果數據傳輸長度大于8 KB,9052寫完A區后,立即對地址3FFFH(右端口信箱)執行一個寫操作,這樣x.jpg引腳變為低電平,觸發AVR的中斷響應程序,該程序讀取全部A區的數據,然后對地址3FFFH(右端口信箱)進行一個讀操作,使x.jpg恢復為高電平,之后繼續讀取B區的數據;這時9052如果在B區完成了全部數據的寫入,則AVR在B區讀到約定長度的數據后結束本次數據傳輸;如果9052在B區沒有寫完全部數據,則它查詢x.jpg是否為高,如果為高則繼續把剩下的數據寫入A區;AVR在讀完全部B區數據后進入暫停狀態,直到接到再次中斷信號繼續讀取A區數據;9052在A區的地址結束時繼續觸發x.jpg中斷使得AVR繼續讀取A區數據,A區沒完接著讀B區,這樣循環下去,直到完成約定數據的全部傳輸。具體的流程如圖7所示。

y.jpg


    (2)數據上行(PCI9052讀,AVR寫)。雙口RAM讀/寫程序中的寫函數會將數據寫入雙口RAM的A區,并在最后一步對左端口信箱3FFEH地址執行一個寫操作,引腳變為低電平,該引腳連至PCI9052的局部中斷引腳,通知9052讀取寫入的數據,9052在讀取數據之后會對左端口信箱3FFEH地址執行一個讀操作,這樣引腳恢復為高電平,使之退出中斷響應程序。整個數據傳輸程序流程和下行相似,具體的流程如圖8所示。

z.jpg



4 結語
    高性能雙口RAM可以有效解決上位機和下位機之間的復雜數據處理問題,實現時序的粘連;乒乓操作是一個常應用于數據流控制的處理技巧,是解決高速設備和低速設備交換數據的常用方法。實踐證明本文的設計方法是解決高低速設備的傳輸瓶頸問題,提高PCI總線與AVR單片機之間的數據傳輸速度的有效途徑。

此內容為AET網站原創,未經授權禁止轉載。
热re99久久精品国产66热_欧美小视频在线观看_日韩成人激情影院_庆余年2免费日韩剧观看大牛_91久久久久久国产精品_国产原创欧美精品_美女999久久久精品视频_欧美大成色www永久网站婷_国产色婷婷国产综合在线理论片a_国产精品电影在线观看_日韩精品视频在线观看网址_97在线观看免费_性欧美亚洲xxxx乳在线观看_久久精品美女视频网站_777国产偷窥盗摄精品视频_在线日韩第一页
  • <strike id="ygamy"></strike>
  • 
    
      • <del id="ygamy"></del>
        <tfoot id="ygamy"></tfoot>
          <strike id="ygamy"></strike>
          国产一本一道久久香蕉| 欧美高清在线一区二区| 国内精品久久久久影院 日本资源| 亚洲国产欧美久久| 欧美**人妖| 国产精品久久久久久久免费软件| 欧美一区二区网站| 国产精品白丝av嫩草影院| 性做久久久久久久免费看| 国产一区二区观看| 久久精品国产免费观看| 欧美午夜精品电影| 欧美精品一区在线| 亚洲在线观看| 久久精品国产99精品国产亚洲性色| 欧美在线亚洲一区| 欧美成人综合网站| 亚洲久久在线| 欧美久久精品午夜青青大伊人| 在线观看中文字幕不卡| 久久亚洲精品中文字幕冲田杏梨| 亚洲欧美视频一区| 欧美影片第一页| 亚洲综合导航| 久久久久在线观看| 黑人一区二区三区四区五区| 国产精品久久久久久久久久免费| 亚洲在线观看免费| 国产精品久久久一区二区三区| 激情另类综合| 国产亚洲欧美色| 欧美视频在线观看一区二区| 亚洲片区在线| 原创国产精品91| 欧美激情在线有限公司| 国产精品国产福利国产秒拍| 国产视频在线一区二区| 久久久精品日韩欧美| 国产精品国产三级国产普通话99| 亚洲视频在线观看视频| 亚洲午夜久久久久久久久电影网| 国产精品久久久999| 欧美亚洲在线| 亚洲欧美日韩一区在线观看| 国产精品久久久久一区| 国产精品综合久久久| 午夜精品网站| 欧美日韩久久不卡| 亚洲激情在线观看| 在线播放日韩| 久久精品中文字幕一区| 亚洲专区一二三| 黄色精品一区二区| 欧美日韩亚洲系列| 亚洲精品在线视频观看| 最新中文字幕一区二区三区| 亚洲区第一页| 美女视频一区免费观看| 蜜月aⅴ免费一区二区三区| 国产一区二区三区四区老人| 一区二区三区蜜桃网| 久久久久99精品国产片| 久久综合色天天久久综合图片| 久久精品盗摄| 一区二区三区在线免费播放| 一区二区三区欧美视频| 免费看精品久久片| 韩日欧美一区二区| 国产精品日日摸夜夜摸av| 国产精品久久久久久久久久ktv| 国产亚洲永久域名| 亚洲激情精品| 亚洲免费在线视频一区 二区| 国产日韩高清一区二区三区在线| 欧美日韩国产区| 黄色国产精品一区二区三区| 国产色综合天天综合网| 欧美日韩国产综合新一区| 欧美日韩国产综合在线| 久久香蕉国产线看观看网| 久久超碰97中文字幕| 136国产福利精品导航网址| 国产精品视频yy9099| 国产精品v欧美精品∨日韩| 亚洲一区二区三区四区视频| 欧美伦理视频网站| 亚洲专区一区二区三区| 欧美激情综合网| 久久久久一本一区二区青青蜜月| 99精品黄色片免费大全| 国产精品私拍pans大尺度在线| 国产精品v欧美精品v日韩| 欧美亚洲在线视频| 亚洲视频你懂的| 久久综合国产精品| 亚洲影院一区| 亚洲中午字幕| 一区二区精品在线观看| 久久综合中文色婷婷| 欧美日韩高清一区| 欧美日韩中文字幕日韩欧美| 国产一区二区三区高清| 国产精品久久久久久久久久ktv| 久久激情五月激情| 亚洲精品三级| 欧美一区二区三区日韩视频| 亚洲午夜精品福利| 欧美激情精品久久久久久黑人| 欧美亚洲日本国产| 亚洲精品一二三区| 能在线观看的日韩av| 看欧美日韩国产| 亚洲国产成人高清精品| 国产精品网站在线播放| 欧美特黄a级高清免费大片a级| 国产精品三级久久久久久电影| 激情综合五月天| 欧美一区三区三区高中清蜜桃| 日韩亚洲不卡在线| 性做久久久久久免费观看欧美| 狠狠色丁香婷婷综合久久片| 国产精品一区2区| 久久久噜噜噜久噜久久| 久久国产精品一区二区三区| 国产精品第一区| 久久夜色精品国产欧美乱| 99国产精品久久久| 在线观看一区视频| 午夜精品福利一区二区三区av| 欧美视频中文在线看| 欧美日韩第一页| 欧美日韩成人综合在线一区二区| 欧美日韩综合久久| 亚洲欧美在线网| 亚洲欧美另类在线| 国模大胆一区二区三区| 欧美一区二区精品久久911| 久久精品国产视频| 欧美国产乱视频| 亚洲日本va午夜在线影院| 亚洲午夜羞羞片| 亚洲伦理自拍| 欧美一区二区久久久| 一区二区三区精品视频在线观看| 性久久久久久久久久久久| 免费高清在线视频一区·| 亚洲欧美中文日韩v在线观看| 亚洲第一页中文字幕| 国产啪精品视频| 亚洲美女黄网| 久久综合色88| 亚洲欧美日韩国产成人| 亚洲伦理在线观看| 一本色道久久加勒比精品| 国产一区二区三区免费不卡| 久热这里只精品99re8久| 欧美日本在线视频| 一区在线视频观看| 欧美视频专区一二在线观看| 久久久久亚洲综合| 欧美成人免费小视频| 噜噜噜91成人网| 久久国产精品一区二区三区| 欧美亚洲第一页| 国产亚洲va综合人人澡精品| 日韩一级裸体免费视频| 欧美 日韩 国产一区二区在线视频| 日韩香蕉视频| 欧美日本韩国一区二区三区| 伊人精品成人久久综合软件| 国产午夜久久久久| 国产精品一区二区你懂得| 欧美fxxxxxx另类| 娇妻被交换粗又大又硬视频欧美| 欧美一区二区视频免费观看| 亚洲区在线播放| 亚洲国产视频一区二区| 亚洲日本aⅴ片在线观看香蕉| 亚洲国产精品成人一区二区| 亚洲狠狠丁香婷婷综合久久久| 亚洲高清资源| 亚洲第一精品福利| 久久av老司机精品网站导航| 国产欧美精品一区二区色综合| 亚洲伦理中文字幕| 国产日韩精品在线播放| 在线观看av一区| 亚洲精品自在在线观看| 欧美性jizz18性欧美| 亚洲精品乱码久久久久| 欧美国产专区| 欧美在线不卡视频| 欧美少妇一区二区| 欧美大片免费| 激情视频一区| 国产亚洲激情| 久久人人爽人人爽爽久久| 在线播放中文字幕一区| 国产精品自拍视频| 亚洲麻豆一区| 亚洲麻豆国产自偷在线| 亚洲无限av看| 免费不卡中文字幕视频| 国产精品盗摄一区二区三区| 一区二区三区日韩欧美精品| 欧美不卡在线| 老**午夜毛片一区二区三区| 亚洲福利国产| 欧美日韩aaaaa| 久久久欧美精品| 午夜欧美精品| 国产精品99久久久久久www| 久久aⅴ乱码一区二区三区| 欧美日韩在线播放三区四区| 久久超碰97中文字幕| 国产精品久久久久9999高清| 欧美成人四级电影| 欧美激情一区二区| 午夜久久黄色| 亚洲成色精品| 亚洲精华国产欧美| 欧美一级精品大片| 91久久久久久久久久久久久| 亚洲男人的天堂在线观看| 亚洲九九九在线观看| 国产一区二区三区黄| 久久精品五月婷婷| 亚洲精品在线一区二区| 国产日韩欧美中文| 日韩视频一区二区三区在线播放免费观看| 欧美精品一区二区三区一线天视频| 亚洲精品乱码久久久久久久久| 一区二区三区在线免费观看| 欧美一级片在线播放| 国内精品久久久久久| 18成人免费观看视频| 日韩视频一区二区| 欧美激情日韩| 在线免费观看一区二区三区| 在线观看视频免费一区二区三区| 麻豆九一精品爱看视频在线观看免费| 国产三区二区一区久久| 亚洲性av在线| 国产精品久久久久久久久久久久| 国产一区欧美日韩| 亚洲精品视频在线观看免费| 在线观看一区二区视频| 久久综合一区二区三区| 欧美一区二区三区在线观看| 国产亚洲一区二区精品| 亚洲欧美日韩综合aⅴ视频| 欧美精品aa| 亚洲一区二区视频在线| 久久久久成人网| 久热精品视频在线免费观看| 米奇777超碰欧美日韩亚洲| 国产精品伊人日日| 久久精品国产77777蜜臀| 国产欧美日韩中文字幕在线| 国产日韩欧美中文在线播放| 欧美日韩日本网| 欧美日韩三级| 99国产精品久久久久久久久久| 国产精品一区二区久久| 久久久久网站| 伊人久久噜噜噜躁狠狠躁| 久久精品日产第一区二区| 亚洲综合日韩中文字幕v在线| 亚洲女性裸体视频| 久久久久看片| 亚洲少妇自拍| 欧美激情一区在线| 亚洲综合日本| 亚洲视频久久| 欧美日韩不卡一区| 欧美在线免费观看| 国产精品ⅴa在线观看h| 国产精品sss| 国产日韩亚洲欧美| 国产一区观看| 亚洲最新中文字幕| 国产精品久久久久影院色老大| 国产资源精品在线观看| 久久一区国产| 欧美大学生性色视频| 香港成人在线视频| 欧美激情视频一区二区三区在线播放| 国产一区二区三区直播精品电影| 夜夜嗨av一区二区三区网站四季av| 欧美亚洲视频在线观看| 国产精品高清在线观看| 韩国一区二区在线观看| 亚洲一卡二卡三卡四卡五卡| 能在线观看的日韩av| 麻豆成人小视频| 好吊色欧美一区二区三区四区| 欧美一级日韩一级| 国产精品红桃| 国产一区视频在线观看免费| 久久成人人人人精品欧| 亚洲校园激情| 国产欧美日韩精品一区| 国产精品无码永久免费888| 日韩一级裸体免费视频| 久久久久久久久久久久久久一区| 欧美日韩一区在线视频| 久久精品女人的天堂av| 亚洲精品一区二区三区婷婷月| 亚洲高清电影| 久久亚洲精品一区二区| 国产美女扒开尿口久久久| 亚洲欧洲中文日韩久久av乱码| 狠狠色综合网站久久久久久久| 国产精品av一区二区| 99精品免费网| 亚洲精品乱码久久久久久蜜桃麻豆| 亚洲欧洲精品天堂一级| 国产亚洲精品高潮| 亚洲精品视频在线观看网站| 亚洲欧美日韩系列| 欧美v日韩v国产v| 狠狠色综合一区二区| 国产视频一区在线| 国产精品腿扒开做爽爽爽挤奶网站| 国产精品欧美久久| 国产午夜精品美女视频明星a级| 国内成人自拍视频| 欧美三级视频在线播放|