999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于FT2000中LBC外接存儲器驅動程序設計

2021-06-17 07:12:22張鵬
電子制作 2021年5期
關鍵詞:設計

張鵬

(漢中職業技術學院汽車與機電工程學院,陜西漢中,723002)

1 LBC模塊及開發環境介紹

LBC(Local Bus Controller)即局部總線控制器,其主要負責對外部存貯器的訪問,該控制器提供了到多種類型存貯設備的接口,同時該控制器負責控制八個存貯體(bank),并由二個UPM機和一個GPCM機所共享,負責與Flash和nvRAM的通訊。

本設計的基本開發環境,即采用FT2000處理器Local Bus接口的八個存貯體不同片選模式,來訪問外接存儲器Flash和nvSRAM設備,以此實現對數據的各項讀寫擦等操作。FT2000芯片是一款集成了4個新一代高性能處理器內核FTC663的CPU,它采用亂序四發射超標量流水線,兼容64位ARMV8指令集并支持ARM64和ARM32兩種執行模式,支持單精度、雙精度浮點運算指令和ASIMD處理指令,支持硬件虛擬化。同時,該芯片適用于構建有更高性能、能耗比和安全需要的桌面終端、輕量級服務器和嵌入式低功耗產品。

2 外接存儲器介紹及配置相關操作

本設計中外接外接Flash(Am29LV256M)和nvSRAM(STK14CA8)存儲設備。

■2.1 Flash基本概述和操作

設計中應用 AM29LV256M(16M*16-Bit/32M*8Bit)芯片作為通用扇區Flash存儲器,該款芯片具有高性能,低功耗,單電壓支持讀、擦、寫等優點,同時,可通過BYTE引腳置位來選擇支持16bit/8bit寬度的數據總線。

在LBC模塊操作的初始化中,Flash支持GPCM(通用片選機)和UPM(可選寄存器)兩種不同的控制機模式訪問數據,并且,當寄存器BRn[7:5]配置為000時,即是GPCM模式,寄存器BRn[7:5]配置為100/101時,即是UPM模式。其中,GPCM模式為簡單、性能較低的存貯器和內存映射設備提供使用接口,其不支持突發傳輸。在Flash的操作中,還需要對兩個基本的寄存器組BRn和ORn配置,用來定義Flash的基地址和其地址屏蔽位。

而UPM模式可以用來產生較為靈活且用戶定義控制信號的定時操作,該模式還可以通過軟件啟動定義讀、寫、突發讀或突發寫期間的外部控制信號。同時,在設計Flash操作中用UPM的核心內部RAM陣列,并通過這個陣列確定給定時鐘周期在外部存貯器控制信號(字節選和片選)上驅動的信號線。

■2.2 nvSRAM概述及操作

設計中應用STK14CA8(128k*8)非易失性RAM存貯器作為另一存儲設備,該芯片具有較高的存貯性能和快速的訪問時間,同時可無限次進行Read、Write、Recall等操作。

類似外接設備Flash的操作,在LBC模塊操作的初始化中,nvSRAM也支持GPCM(通用片選機)和UPM(可選寄存器)兩種不同的控制機模式訪問數據,且配置寄存器BRn[7:5]的模式也是相同。

其中,在GPCM模式下,首先必須對兩個32位寄存器組基寄存器(BRn)和可選寄存器(ORn)進行配置,其中基寄存器(BRn)用于定義SRAM基地址和其地址屏蔽位AM,而最低的0bit位(V)即為BRn和ORn內容的有效位置位。而在UPM模式下,同樣用到UPM的核心內部RAM陣列,在對RAM陣列中,每一個RAM陣列都包含64個32位字,根據每一個字提供的比特位訪問外部SRAM總線時鐘周期。

3 LBC模塊的基本配置操作

本設計在LBC操作中,必須先對局部總線配置寄存器(LBCR)做出了相應配置,保證LBC處于空閑無數據傳輸狀態,然后對LBCR寄存器操作,當LBCR[BUSY_MM]置1時LBC位空閑狀態。

對于LBC初始化狀態,由于接口層傳入了不同外設的配置參數,故在初始化狀態中需要做出,對傳入不同片選和工作模式的設置、BRn寄存器和ORn寄存器各Bit位的配置、時鐘分頻和端口的配置等。對于不同的片選和工作模式,就是對外部的Flash和Sram分別選擇八個存貯體bank當中的某兩個進行的操作,接口層傳入的參數也需要完成GPCM和UPM工作模式進行配置,并根據Flash和Sram中需要不同功能,配置寄存器BRn和寄存器ORn。

設計中的時鐘分頻,即LBC的系統時鐘和外部設備總線時鐘(LCLK[2:0])之間2、4、8的比率配置,該比率主要通過對時鐘比率寄存器LCRR[CLKDIV]進行軟件設置的。在考慮時鐘分頻后,需要結合外部地址延時周期寄存器LCRR[EADC]進行配置不同的循環延時周期數,用以滿足訪問外部設備數據/地址/片選/讀寫等不同信號線的保持時間。

在底層LBC的操作中,外部設備Flash和nvSram通過訪問LBC模塊進行正常的讀寫擦等操作,其中,設計需要LBC模塊對不同外接設備端口大小進行讀寫,即進行LBC字節/字/雙字讀和寫的函數操作。

4 LBC驅動存儲器程序設計

■4.1 整體結構設計

(1)硬件總體結構

本設計LBC模塊外接存儲器件Flash(Am29LV256M)和nvSRAM(STK14CA8)的硬件連接方式如圖1所示。在硬件連接中,首先將FT2000主控中LBC模塊引出連接DM74HC573八路輸出鎖存器芯片,當LBC模塊與Flash(Am29LV256M)和nvSRAM(STK14CA8)進行數據交換時,通過DM74HC573片選其中兩路訪問控制向Flash和nvSram寫入指定地址,在存儲器設備接收到主控發過來的地址數據時,直接向LBC模塊反饋回讀寫擦相關數據。

圖1 硬件總體結構

(2)軟件設計框架

本設計軟件部分總體分為三部分:LBC Initialization、LBC Oprate、Application Interface,如圖2所示。

圖2 軟件設計框架

LBC Initialization:主要對LBC進行初始化配置,設置基地址偏移、片選有效、端口大小、選擇UPM或GPCM控制機工作模式、設置操作時鐘等配置。

LBC Oprate:主要實現對LBC總線的不同字節、字、雙字的讀寫等操作。

Application Interface:主要是對外接Flash進行Read、Program、Erase等操作及Flash工作模式配置,對外接nvSRAM進行Read、Write、Store等操作。

■4.2 驅動程序設計流程

本設計基于上文硬件結構及軟件設計框架,按照如下流程進行LBC驅動程序設計。

首先,對LBC模塊進行初始化,其中包括LBC模塊自由等待的相關配置操作,存儲器的基本配置,LBC中基地址、片選、時鐘分頻的基本操作。

其次,完成LBC模式選擇,當配置成GPCM模式時,直接進入Flash和nvSram存儲器選擇階段,同時進行LBC模塊端口bit位設置。當配置成UPM模式時,再次進行UPMA/UPMB操作,開始RAM 信號讀寫,Burst信號讀寫等操作,當UPM模式結束后,進入Flash和nvSram存儲器選擇階段,同時進行LBC模塊端口位設置。

然后,繼續進行LCB模塊數據交換操作,即分別對底層LBC中數據Byte、Word讀寫,Burst讀寫等操作。

最后,完成Flash和nvSram存儲器的配置操作。

5 驅動程序仿真

在本設計中,通過Vivado仿真環境中進行軟件波形仿真操作,同時借助串口調試工具打印數據,兩種方式來驗證Flash和nvSRAM不同工作模式下的數據讀寫擦等操作。在仿真中,首先在Vivado環境中完成相關配置生成SDK文件,同步在SDK生成的文件中,加載本設計的LBC驅動程序,進行編譯,鏈接調試等步驟,生成.elf文件,進行波形仿真操作。

對于Flash操作,設計通過仿真環境,加入測試程序調試,分別進行了Flash的GPCM模式和UPM模式的片擦、扇區擦、讀、寫的操作仿真。

例如應用4分頻/1 cycle 測試,測試代碼如下:

Flash_LBC_Init_();

Flash_LBC_Chip_Erase(LBC_CS0);

Flash_LBC_Sector_Erase(LBC_CS0,0x00000002);

Flash_LBC_Program_Byte(LBC_CS0,0x-00000008,0x78);

Flash_LBC_Program_Word(LBC_CS0,0x-0000000A,0x5678);

Flash_LBC_Read_Byte(0x00000008,data1);

Flash_LBC_Read_Word(0x0000000A,data2);

通過不同的測試程序,完成了GPCM和UPM兩種模式下的全部操作,抓取地址數據波形,對比通過串口寫入數據、讀取數據、擦除數據打印結果,所有結果完全一致,最終驅動程序完成Flash的數據讀寫擦等操作。例如:Read_Byte/Word操作仿真波形如圖3。

圖3 Read_Byte/Word

同理,在nvSRAM操作中通過抓取地址數據波形,加入測試程序調試,分別進行了nvSRAM的GPCM模式及UPM模式的讀、寫、存貯等的操作,同步通過串口打印數據對比和波形仿真圖抓取數據,數據結果一致,完成驅動nvSRAM的數據交換操作。

6 結語

本文完成了FT2000HK中LBC外接存儲器驅動程序設計,通過文中對硬件及軟件的介紹,讓人們對存儲器數據交換相關操作有了基本的了解,同時對外接存儲設備驅動技術有了掌握。隨著電子信息技術的飛速發展,數據的存儲穩定性、容量已經成為直接決定數據安全、可靠的基本保障,而如何高效驅動存儲器件在未來必將占據更重要的地位。

猜你喜歡
設計
二十四節氣在平面廣告設計中的應用
河北畫報(2020年8期)2020-10-27 02:54:06
何為設計的守護之道?
現代裝飾(2020年7期)2020-07-27 01:27:42
《豐收的喜悅展示設計》
流行色(2020年1期)2020-04-28 11:16:38
基于PWM的伺服控制系統設計
電子制作(2019年19期)2019-11-23 08:41:36
基于89C52的32只三色LED搖搖棒設計
電子制作(2019年15期)2019-08-27 01:11:50
基于ICL8038的波形發生器仿真設計
電子制作(2019年7期)2019-04-25 13:18:16
瞞天過?!律O計萌到家
藝術啟蒙(2018年7期)2018-08-23 09:14:18
設計秀
海峽姐妹(2017年7期)2017-07-31 19:08:17
有種設計叫而專
Coco薇(2017年5期)2017-06-05 08:53:16
從平面設計到“設計健康”
商周刊(2017年26期)2017-04-25 08:13:04
主站蜘蛛池模板: 成人午夜在线播放| 国产一级特黄aa级特黄裸毛片| 中文字幕在线视频免费| 免费无码AV片在线观看中文| 日韩精品无码免费一区二区三区| 71pao成人国产永久免费视频| 日本人又色又爽的视频| 91 九色视频丝袜| 一区二区在线视频免费观看| 天堂av综合网| 毛片网站在线看| 欧美另类一区| 国产乱子伦精品视频| 久久久成年黄色视频| 国内丰满少妇猛烈精品播| 毛片网站在线看| www.亚洲天堂| 日本国产精品| 久久99精品久久久久纯品| 欧美a级在线| 国产美女久久久久不卡| 国产成人亚洲精品无码电影| 日本成人在线不卡视频| 久久久久亚洲Av片无码观看| 五月婷婷综合网| 日本AⅤ精品一区二区三区日| 国产精品yjizz视频网一二区| 国产aⅴ无码专区亚洲av综合网| 亚洲欧美极品| 天天做天天爱夜夜爽毛片毛片| 国产日本欧美在线观看| 午夜精品久久久久久久无码软件 | 国产理论最新国产精品视频| 五月天久久综合| 国产女人18毛片水真多1| 国产黄色片在线看| 国内精品一区二区在线观看| 不卡无码网| 欧美人人干| 色婷婷视频在线| 中文字幕1区2区| 亚洲成人福利网站| 亚洲人成色77777在线观看| 亚洲精品色AV无码看| 中文字幕日韩久久综合影院| 日韩中文精品亚洲第三区| аⅴ资源中文在线天堂| 亚洲视屏在线观看| 台湾AV国片精品女同性| 国模视频一区二区| 毛片在线播放网址| 老司机精品久久| 有专无码视频| 国产一级小视频| 99尹人香蕉国产免费天天拍| 国产精品va免费视频| 9啪在线视频| 一本大道香蕉中文日本不卡高清二区 | 欧美日韩91| 欧美人与动牲交a欧美精品| 久久精品人妻中文系列| 国产精品不卡永久免费| 丁香婷婷在线视频| 中文成人在线视频| 伊人久久婷婷五月综合97色| 欧美精品在线看| 免费一极毛片| 99热这里只有精品2| 天堂网亚洲综合在线| 日本午夜影院| 国产成人综合久久| 99热这里只有成人精品国产| 久久五月天综合| 久久伊人久久亚洲综合| 波多野结衣久久高清免费| 一本色道久久88综合日韩精品| 亚洲天堂精品在线| 丰满少妇αⅴ无码区| 成人在线第一页| 国产精品毛片在线直播完整版| 亚洲av无码人妻| 免费人成视网站在线不卡 |