資源描述:
《利用fpga實現(xiàn)mmc2107與sdram接口設計》由會員上傳分享,免費在線閱讀,更多相關內容在工程資料-天天文庫。
1、利用FPGA實現(xiàn)MMC2107與SDRAM接口設計摘要:介紹基于現(xiàn)場可編程門陣列(FPGA),利用VHDL語言設計實現(xiàn)MMC2107與SDRAM接口電路。文中包括MMC2107組成結構、SDRAM存儲接口結構和SDRAM控制狀態(tài)機的設計。引言在嵌入式系統(tǒng)中,微控制器中通常有一定容量的存儲器,用來存放程序和數(shù)據(jù),但由于片內存儲器受器件規(guī)模和生產成本的制約,其容量通常不能滿足用戶實際需求,還需要使用半導體存儲器件來擴展存儲空間。如果采用SDRAM進行存儲擴展,可以大幅度地降低系統(tǒng)設計成本;但SDRAM控制時序比較復雜,給系統(tǒng)設計帶來
2、很大困難。為了方便使用SDRAM,實現(xiàn)嵌入式系統(tǒng)中存儲的大容量擴展,本文介紹一種新穎的解決方案:采用FPGA技術和VHDL語言,實現(xiàn)MMC2107微控制器與SDRAM的接口設計。1SDRAM內部結構SDRAM是一種具有同步接口的高速動態(tài)隨機存儲器。本文語選用的是三星公司生產的32M×8位SDRAM器件K4S560832A。K4S560832A存儲總容量256M位,內部分成4個全,每個體8M字節(jié),內部結構如圖1所示。K4S560832A為了能滿足各種系統(tǒng)的使用要求,提供了時鐘頻率、猝發(fā)長度、延時節(jié)拍等可編程參數(shù)。在芯片上電后可以通
3、過地址線A12~A0配置,芯片只有在完成配置后才能進入正常工作狀態(tài)。在具體操作SDRAM時,首先,必須進行初始化配置,即寫模式寄存器,以便確定DRAM列選延遲節(jié)拍數(shù)、猝發(fā)類型、猝發(fā)長度等工作模式。然后通過ACT命令激活對應地址的組,同時輸入行地址。最后,通過RD或MC2107組成結構及外部總線接口MMC2107是32位M-CORE系列MCU,是以M210microRISC核為CPU,最高系統(tǒng)時鐘可達33MHz;在MIPS。MMC2107是基于M210CPU的、通用MCU系列中的第一個成員,具有很低的功耗;在主模式下,以最大系統(tǒng)時
4、鐘運行,并且片內所有模塊全部處于運行狀態(tài)時,最大的工作電流為200mA,特別適合于由電池供電的應用場合。MMC2107的組成框圖如圖2所示。從圖2可以看出,MMC2107片內除了M210核以外,主要還有128KBFlash、8KBSRAM、外部總線接口、時鐘模塊、復位模塊、M-CORE到IPBUS之間的接口、中斷控制器模塊、8位邊沿端口葦、2個可編程間隔定時器(PIT1和PIT2)、看門狗定時器1和TIM2)、串行外圍接口SPI、2個串行通信接口(SCI1和SCI2)、ADC模塊、多個通用的輸入/輸出信號、TAP控制器等功能及模
5、塊。MMC2107在主模式和仿真模式下,支持MCORE訪問外部的存儲器或設備。這時,M-CORE的本地總線(內部總線)擴展到片外,由外部總線接口(EBI)負責控制M-CORE局部總線和外地址空間之間的信息傳送。EBI有23位地址總線A[22:0]和4個片選信號CS[3:0],使M-CORE的外部存儲存儲器地址空間可達32MB。EBI的數(shù)據(jù)傳送寬度可以是32位的,也可以是16位的,可以由片選模塊按4個片選通道分別予以設定,即片選通道0~3可各自編程選定。為了便于與各種速度的外設備相連,EB1在片選模塊的控制下,可以形成所需長度的外
6、總線周期。在EBI發(fā)起一個外部數(shù)據(jù)傳送以后,EBI驅動并保持傳送所需的各種信號,直到該總線周期結束。使EBI結束現(xiàn)行總線周期的方法有兩種:EBI收到了由外邏輯發(fā)來的傳送響應信號TA或TEA,或者收到了內部傳送響應信號,片選模塊可以為4個片選通道分別選擇總線周期結束的方法。圖2MMC2107組成框圖3FLEX10K系列FPGA隨著深亞微米VLSI技術的迅速發(fā)展,F(xiàn)PGA/CPLD等可編程器件的資源有極大的發(fā)展。尤其是FPGA,器件的集成度已達到上千萬門,系統(tǒng)工作頻率已達到幾百MHz。FLEX10K系列FPGA是工業(yè)界第一個嵌入式的
7、可編程邏輯器件。由于其具有高密度、低成本、低功率等特點,所以脫穎而出成為當今AlteraCPLD中應用前景最好的器件系列。到目前為止,F(xiàn)LEX10K系列已經(jīng)推出了FLEX10K、FLEX10KA、FLEX10KB、FLEX10KV和FLEX10KE等5種分支系列,其集成度也達到前所未有的250000門。FLEX10K主要由嵌入式陣列塊(EAB)、邏輯陣列塊(LAB)、快速布線通道(FastTrack)和I/O單元組成,具有如下特點: