新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 基于FPGA 的ARM 并行總線研究與仿真

基于FPGA 的ARM 并行總線研究與仿真

作者: 時間:2013-07-31 來源:網(wǎng)絡(luò) 收藏

  0 引言

  在數(shù)字系統(tǒng)的設(shè)計中,+ 的系統(tǒng)架構(gòu)得到了越來越廣泛的應(yīng)用, 主要實現(xiàn)高速數(shù)據(jù)的處理; 主要實現(xiàn)系統(tǒng)的流程控制.人機交互.外部通信以及 控制等功能.I2C.SPI 等串行總線接口只能實現(xiàn)FPGA 和 之間的低速通信 ;當(dāng)傳輸?shù)臄?shù)據(jù)量較大.要求高速傳輸時,就需要用來進(jìn)行兩者之間的高速數(shù)據(jù)傳輸.

  下面基于ARM 處理器LPC2478 以及FPGA 器件EP2C20Q240,以ARM 外部總線的讀操作時序為例,研究兩者之間高速傳輸?shù)?a class="contentlabel" href="http://butianyuan.cn/news/listbylabel/label/并行總線">并行總線;其中,數(shù)據(jù)總線為32 位;并在FPGA 內(nèi)部構(gòu)造了1024x32bits 的SRAM 高速存儲緩沖器,以便于ARM 處理器快速讀寫FPGA 內(nèi)部數(shù)據(jù).

  1 ARM 的工作原理

  ARM 處理器LPC2478 的外部并行總線由24 根地址總線.32根數(shù)據(jù)總線和若干讀寫.片選等控制信號線組成.根據(jù)系統(tǒng)需求,數(shù)據(jù)總線寬度還可以配置為8 位.16 位和32 位等幾種工作模式.

  在本設(shè)計中,用到ARM 外部總線的信號有:CS.WE.OE.DATA[310].ADDR[230].BLS 等.CS 為片選信號,WE 為寫使能信號,OE 為讀使能信號,DATA 為數(shù)據(jù)總線,ADDR 地址總線,BLS 為字節(jié)組選擇信號.ARM 的外部總線讀操作時序圖,分別如圖1 所示.

  根據(jù)ARM 外部并行總線操作的時序,ARM 外部總線的讀寫操作均在CS 為低電平有效的情況下進(jìn)行.由于讀操作和寫操作不可能同時進(jìn)行,因此WE 和OE 信號不能同時出現(xiàn)低電平的情況.

  數(shù)據(jù)總線DATA 是雙向的總線,要求FPGA 也要實現(xiàn)雙向數(shù)據(jù)的傳輸.在時序圖中給出了時序之間的制約關(guān)系,設(shè)計FPGA 時應(yīng)該滿足ARM 信號的建立時間和保持時間的要求,否則可能出現(xiàn)讀寫不穩(wěn)定的情況.

  2 FPGA 的并行總線設(shè)計

  2.1 FPGA 的端口設(shè)計

  FPGA 和ARM 之間的外部并行總線連接框圖,如圖2 所示.由于FPGA 內(nèi)部的SRAM 存儲單元為32 位,不需要進(jìn)行字節(jié)組的選擇,因此BLS 信號可以不連接.為了便于實現(xiàn)ARM 和FPGA 之間數(shù)據(jù)的快速傳輸,F(xiàn)PGA 內(nèi)部的SRAM 既要與ARM 處理器進(jìn)行讀寫處理,還要跟FPGA 內(nèi)部的其他邏輯模塊進(jìn)行數(shù)據(jù)交換,因此SRAM 采用雙口RAM 來實現(xiàn).

  從端口的方向特性看,DATA 端口是INOUT(雙向)方式,其余端口均為IN(輸入)方式.從端口的功能看,clk20m 是全局時鐘,在實現(xiàn)時應(yīng)采用FPGA 的全局時鐘網(wǎng)絡(luò),這樣可以有效減少時鐘延時,保證FPGA 時序的正確性.ADDR 是16 位的地址總線,由ARM 器件輸入到FPGA.DATA 是32 位的雙向數(shù)據(jù)總線,雙向總線的設(shè)計是整個設(shè)計的重點.OE 為ARM 輸入到FPGA 的讀使能信號.


上一頁 1 2 下一頁

關(guān)鍵詞: FPGA ARM 并行總線

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉