亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于APB 總線的SD 卡控制器IP 設計

        2013-07-20 09:40:22劉鐘宇張振華
        微處理機 2013年6期
        關鍵詞:寄存器時序時鐘

        劉鐘宇,張振華

        (中國電子科技集團公司第四十七研究所,沈陽 110032)

        1 引言

        由于電子產(chǎn)品的高速發(fā)展和消費者需求,音頻、視頻多媒體技術隨之發(fā)展,數(shù)據(jù)存儲成為必須解決的一個主要問題。SD 卡以其資料儲存量高、傳輸資料速度快、攜帶方便與安全性極佳而被廣泛應用。隨著微電子技術的發(fā)展,多媒體技術逐漸成熟和降低成本的考慮,開始使用專門的ASIC 方案,SOC(System On Chip)芯片逐漸成為主流。一般SOC 系統(tǒng)上多采用AMBA 總線,基于此我們開發(fā)了一款AMBA-APB 總線的IP,該IP 還可以集成在FPGA系統(tǒng)中,應用于軍事、航空航天、測試和測量、消費類電子、醫(yī)療等領域。

        通過對SD 卡協(xié)議的分析和APB 總線的研究,設計中使用SPI 方式對SD 卡進行讀寫操作,完成各種時序電路的設計,最后掛載到ARM 系統(tǒng)的AHB—APB 總線橋上,進行仿真,并下載到FPGA 器件中進行驗證,編寫相應的驗證程序完成了SD 卡上塊數(shù)據(jù)的讀寫。

        2 SD 卡特性及接口簡介

        2.1 SD 卡特性

        ·容量:32MB/64MB/128MB/256MB/512MB/1Gbyte

        ·兼容規(guī)范版本1.01

        ·兩個可選的通信協(xié)議:SD 模式和SPI 模式

        ·可變時鐘頻率0-25MHz

        ·通信電壓范圍:2.0-3.6V,工作電壓范圍:2.0-3.6V

        ·低電壓消耗:自動斷電及自動睡醒,智能電源管理

        ·無需額外編程電壓

        ·卡片帶電插拔保護

        ·正向兼容MMC 卡

        ·高速串行接口帶隨機存取

        --支持雙通道閃存交叉存取

        --快寫技術:一個低成本的方案,能夠超高速

        訪問閃存和高可靠數(shù)據(jù)存儲

        --最大讀寫速率:10Mbyte/s

        ·數(shù)據(jù)壽命:10 萬次編程/擦除

        2.2 設計中采用的SD 卡接口類型定義

        該控制器的時序設計,采用SPI 方式與SD 卡進行數(shù)據(jù)傳輸,SPI時鐘極性為1,相位為1,其中SD卡在該方式下的引腳定義如表1 所示。

        表1 SPI 方式下的SD 卡引腳定義

        3 APB 總線介紹

        APB 主要用于低帶寬周邊外設之間的連接,例如UART、SPI、TIMER 等,它的總線架構不像AHB 支持多個主模塊,在APB 里面唯一的主模塊就是APB橋。其特性包括:兩個時鐘周期傳輸;無需等待周期和回應信號;控制邏輯簡單,只有四個控制信號。

        APB 上的傳輸可以用圖1 所示的狀態(tài)圖來說明。

        圖1 狀態(tài)轉(zhuǎn)換圖

        (1)系統(tǒng)初始化為IDLE 狀態(tài),此時沒有傳輸操作,也沒有選中任何從模塊。

        (2)當有傳輸要進行時,PSELx=1,PENABLE=0,系統(tǒng)進入SETUP 狀態(tài),并只會在SETUP 狀態(tài)停留一個周期。當PCLK的下一個上升沿時到來時,系統(tǒng)進入ENABLE 狀態(tài)。

        (3)系統(tǒng)進入ENABLE 狀態(tài)時,維持之前在SETUP 狀態(tài)的PADDR、PSEL、PWRITE 不變,并將PENABLE 置為1。傳輸也只會在ENABLE 狀態(tài)維持一個周期,在經(jīng)過SETUP 與ENABLE 狀態(tài)之后就已完成。之后如果沒有傳輸要進行,就進入IDLE狀態(tài)等待;如果有連續(xù)的傳輸,則進入SETUP 狀態(tài)。

        4 SD 卡—IP 實現(xiàn)

        該IP 能實現(xiàn)SD 卡復位、初始化、塊讀寫操作和CID、CSD 等狀態(tài)信息讀取等。該IP是通過SPI 方式訪問SD 卡的。SD 卡IP的接口信號如表2 所示。

        表2 IP 信號定義

        圖2 SD-IP 結構框圖

        4.1 寄存器的讀寫

        當APB 總線對寄存器進行寫操作時,從圖3APB的寫時序來分析,需要PWRITE=1,PSEL=1,PENABLE=1,則寫信號可以表示為APB_WRITE=PWRITE & PSEL & PENABLE;要寫入的寄存器地址由PADDR 來做譯碼進行選擇,寫入的數(shù)據(jù)為PWDATA。

        當APB 總線對寄存器進行讀操作時,從APB的讀時序圖來分析,需要PWRITE=0,PSEL=1,PENABLE=1,則寫信號可以表示為APB_WRITE=~PWRITE & PSEL & PENABLE;要讀出的寄存器地址由PADDR 來做譯碼進行選擇,讀出的數(shù)據(jù)為PRDATA,通過APB 總線橋傳輸?shù)紺PU AHB 總線的HRDATA。

        圖3 APB 寫時序圖

        圖4 APB 讀時序圖

        基于以上時序分析,讀寫信號的邏輯設計如圖5 所示。

        圖5 APB 讀寫控制信號

        4.2 分頻模塊設計

        分頻時鐘為SD_CLK,該時鐘主要是與外部的SD 卡進行SPI 通信,完成數(shù)據(jù)的讀和寫兩個過程。模塊輸入時鐘為PCLK,復位信號為PRESETn,8 位分頻寄存器的值SDIPRE,輸出信號則為SD_CLK,頻率值為:PCLK/2/(SDIPRE+1)。

        設計思想是在PCLK時鐘驅(qū)動下進行計數(shù),當計數(shù)器等于SDIPRE時,狀態(tài)個數(shù)或時鐘個數(shù)為SDIPRE+1,此時輸出信號SD_CLK 進行翻轉(zhuǎn);翻轉(zhuǎn)兩次則形成一個周期,從而得到所要求的分頻值PCLK/2/(SDIPRE+1)。

        另外需要考慮以下這種情況,當前SDIPRE 設定值為200,內(nèi)部計數(shù)器會出現(xiàn)0-200的任意一個值,假設當前值為13,此時通過APB 總線設置SDIPRE=10,則需要187個時鐘周期才能再次使計數(shù)器和SDIPRE相等,也即SD_CLK 才能發(fā)生動作,然后才開始按照設定值進行工作。為實現(xiàn)設置SDIPRE 以后立刻按照所設定的周期產(chǎn)生SD_CLK,使用一個比較器,當計數(shù)器值大于或等于SDIPRE時,SD_CLK 即發(fā)生翻轉(zhuǎn),實現(xiàn)工作頻率的立即變換。該模塊的結構設計見圖6。

        4.3 FIFO 設計

        CPU 在與SD 卡通信過程中,數(shù)據(jù)傳輸都是以塊操作來完成,數(shù)據(jù)量比較大,并且SD 卡接收時序比較慢,對于工作在AHB 總線上的CPU 來說,進行單個數(shù)據(jù)交換會大大影響系統(tǒng)的工作效率,因此在設計上加入了發(fā)送FIFO 和接收FIFO,這樣解決了異步傳輸,快速和慢速設備之間的數(shù)據(jù)交接。

        圖6 分頻模塊結構

        這兩塊FIFO 除了接口上信號不同外,內(nèi)部都一樣,只是被例化成兩個不同的模塊。FIFO 大小設計成64/4byte,有滿、半滿,空和半空標志,因此可以通過中斷使能的開啟,產(chǎn)生中斷信號int_sd 快速與CPU 進行協(xié)調(diào)。FIFO 設計的關鍵點也是這幾個信號的產(chǎn)生,以發(fā)送FIFO為例,寫入端:時鐘為PCLK,寫入使能winc是通過PSEL 與所分配的APB地址譯碼相與來產(chǎn)生。

        FIFO的設計框圖見圖7。主要由寫地址產(chǎn)生模塊wr_ptr、讀地址產(chǎn)生模塊rd_ptr、FIFO 滿空標志產(chǎn)生模塊status 和一個雙端口存儲器組成。讀寫地址采用格雷碼設計,并使用最高兩位來產(chǎn)生空還是滿的方向走勢。

        4.4 SD 卡接口時序設計

        SD-Card-Controller的讀寫時序由圖8 幾個狀態(tài)組成,在不同狀態(tài)下完成不同的時序,詳細時序見MMC 卡控制時序圖。該模塊具有初始化、復位、CSD 和CID 信息的讀取,BLOCK的讀和寫功能,主要完成在適當時間,通過SPI時序?qū)懭朊?、?shù)據(jù)或讀出各種信息和數(shù)據(jù),該過程中產(chǎn)生FIFO 讀時序、寫時序和相關寄存器的訪問。

        圖7 FIFO 模塊結構

        圖8 狀態(tài)機跳轉(zhuǎn)圖

        該狀態(tài)機根據(jù)不同的寄存器命令和如下代碼中的信號,進行各個狀態(tài)之間的跳轉(zhuǎn)。該狀態(tài)機設計采用三段式,其組合邏輯部分也即狀態(tài)跳轉(zhuǎn)部分Verilog 代碼如下:

        5 IP的FPGA 驗證

        該IP的驗證主要通過 ARM9 內(nèi)核外接AHB2APB-Briage 來產(chǎn)生APB時序,并外接程序存儲器和數(shù)據(jù)存儲器,具體驗證結構如圖9 所示。

        圖9 SD-IP的FPGA 驗證結構

        FPGA 采用Altera的EP3SL1150C2。首先在ADS 下編寫測試程序,對寄存器進行訪問,保證能夠讀寫,然后正確配置寄存器并通過FIFO 進行數(shù)據(jù)讀寫,根據(jù)FIFO 產(chǎn)生的中斷標志和狀態(tài)寄存器的兩種查詢方式,對SD-Card 進行塊讀寫操作。數(shù)據(jù)的讀寫正確性采用交叉驗證的方式,通過單片機在SD 卡上寫入一頁數(shù)據(jù),通過下面的系統(tǒng)讀取該區(qū)域的數(shù)據(jù);然后以該系統(tǒng)架構執(zhí)行程序在SD 卡上寫入一頁數(shù)據(jù),再通過單片機讀出數(shù)據(jù),經(jīng)過多次讀寫數(shù)據(jù)反復驗證,該模塊都能正常工作。驗證過程中使用嵌入在QuartusII 中的SignalTapII Logic Analayzer 對關鍵信號采集波形,其中圖10為CID信息的讀取波形。信號SPI_DIN是輸入到SD 卡的串行數(shù)據(jù),從波形來看SPI_CS 變低以后,其輸出命令為4AH,接著4個00H,最后產(chǎn)生一個CRC 校驗數(shù)據(jù),SPI_DOUT為SD 卡返回的信息。

        圖10 讀取CID的時序波形

        6 結束語

        該IP的設計思想主要是參考三星S3C2410 中的SDIO 應用資料,測試分析之后進行結構設計,經(jīng)過仿真驗證與設計規(guī)范相符合。目前接口為APB形式,并通過FPGA 驗證,可以進行頁寫入、讀出和相關信息(CID、CSD)的讀取。今后可以根據(jù)實際需要更改成各種類型的接口,嵌入到FPGA 或ASIC芯片等需要進行大量數(shù)據(jù)存儲的系統(tǒng)中。

        [1]閻石.數(shù)字電子技術基礎[M].北京:高等教育出版社,1997.

        [2]袁俊泉.Verilog HDL 數(shù)字系統(tǒng)設計及其應用[M].西安:西安電子科技大學出版社,2002.

        [3]Steve Furber.ARM SoC 體系結構[M].田澤,于敦山,盛世敏,譯.北京:北京航空航天大學出版社,2002.

        猜你喜歡
        寄存器時序時鐘
        時序坐標
        基于Sentinel-2時序NDVI的麥冬識別研究
        別樣的“時鐘”
        古代的時鐘
        Lite寄存器模型的設計與實現(xiàn)
        計算機應用(2020年5期)2020-06-07 07:06:44
        分簇結構向量寄存器分配策略研究*
        有趣的時鐘
        一種毫米波放大器時序直流電源的設計
        電子制作(2016年15期)2017-01-15 13:39:08
        時鐘會開“花”
        DPBUS時序及其設定方法
        河南科技(2014年15期)2014-02-27 14:12:36
        日韩一二三四区免费观看| 亚洲一区二区三区成人网站| 亚洲熟妇少妇69| 一本色道久久综合亚洲精品蜜臀| 成人激情视频在线手机观看| 人妻丰满av无码中文字幕| 亚洲中文字幕无码mv| 日韩av中出在线免费播放网站 | 国产亚洲精品在线播放| 成年美女黄的视频网站| 精品无码国产自产野外拍在线| 北岛玲日韩精品一区二区三区| 在线不卡精品免费视频| 国产毛多水多高潮高清 | 国产99久久无码精品| 亚洲成人色黄网站久久| 国产精品一区二区三区卡| 成人免费看www网址入口| 国产精品视频一区日韩丝袜| 久久色悠悠综合网亚洲| 亚洲精品国产成人片| 人妻熟妇乱又伦精品视频app | 精品亚洲麻豆1区2区3区| 18禁超污无遮挡无码免费游戏| 国产三级精品美女三级| av一区二区在线网站| 欧美狠狠入鲁的视频777色| 乱码一二区在线亚洲| 亚洲成人黄色av在线观看| av天堂精品久久综合网| 亚洲精品午睡沙发系列| 成人永久福利在线观看不卡| 永久中文字幕av在线免费| 白丝爆浆18禁一区二区三区| 日本a级特黄特黄刺激大片| 插入中文字幕在线一区二区三区 | 青青青伊人色综合久久| 亚洲综合一区中文字幕| 亚洲av日韩专区在线观看| 久久亚洲国产欧洲精品一 | 岛国av一区二区三区|