91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

利用CPLD技術和80C196XL時序特征實現DRAM控制器的設計

電子設計 ? 來源:郭婷 ? 作者:電子設計 ? 2019-01-07 08:27 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

80C186XL16位嵌入式微處理器[1]是Intel公司在嵌入式微處理器市場的上導產品之一,已廣泛應用于電腦終端、程控交換和工控等領域。在該嵌入式微處理器片內,集成有DRAM RCU單元,即DRAM刷新控制單元。RCU單元可以自動產生DRAM刷新總線周期,它工作于微處理器的增益模式下。經適當編程后,RCU將向將處理器的BIU(總線接口)單元產生存儲器讀請求。對微處理器的存儲器范圍編程后,BIU單元執(zhí)行刷新周期時,被編程的存儲器范圍片選有效。

利用CPLD技術和80C196XL時序特征實現DRAM控制器的設計

存儲器是嵌入式計算機系統(tǒng)的重要組成部分之一。通常采用靜態(tài)存儲器,但是在系統(tǒng)需要大容量存儲器的情況下,這種方式將使成本猛增。如果采用DRAM存儲器,則可以大幅度降低系統(tǒng)設計成本;但DRAM有復雜的時序要求,給系統(tǒng)設計帶來了很大的困難。

為了方便地使用DRAM,降低系統(tǒng)成本,本文提出一種新穎的解決方案:利用80C186XL的時序特征,采用CPLD技術,并使用VHDL語言設計實現DRAM控制器。

一、80C186XL RCU單元的資源

80C186XL的BIU單元提供20位地址總線,RCU單元也為刷新周期提供20位地址總線。80C186XL能夠產生刷新功能,并將刷新狀態(tài)編碼到控制信號中。

圖1是RCU單元的方框圖。它由1個9位遞減定時計數器、1個9位地址計數器、3個控制寄存器和接口邏輯組成。當RCU使能時,遞減定時計數器每一個CLKOUT周期減少1次,定時計數器的值減為1時,則產生刷新總線請求,遞減定時計數器重載,操作繼續(xù)。刷新總線周期具有高優(yōu)先級,旦80C186XL總線有空,就執(zhí)行刷新操作。

設計者可將刷新總線周期看成是“偽讀”周期。刷新周期像普通讀周期一樣出現在80C186XL總線上,只是沒有數據傳輸。從引腳BHE/RFSH和A0的狀態(tài)可以判別刷新周期,如表1所列。刷新總線周期的時序要求如圖2所示。

表1 刷新周期的引腳狀態(tài)

80C186XL引腳BHE/RFSHA0

引腳狀態(tài)11

二、80C186XL DRAM控制器的設計與運行

DRAM存在著大量、復雜的時序要求,其中訪問時間的選擇、等待狀態(tài)以及刷新方法是至關重要的。DRAM控制器必須正確響應80C186XL的所有總線周期,必須能將DRAM的部周期和其它訪問周期分辨出來,其訪問速度必須足夠快,以避免不必要的等待周期。

利用CPLD技術和80C196XL時序特征實現DRAM控制器的設計

在設計時,我們采用XC95C36-15 CPLD[2]以及4Mbits的V53C8258[3]DRAM作范例。15ns的CPLD,速度相對較高,價格比較便宜。用它設計成的DRAM控制器允許80C186XL的工作速度高達20MHz,并且XC95C36有異步時鐘選擇項。這種特性對本設計有很大的好處。

圖3是80C186XL DRAM控制器和存儲器的功能框圖。

DRAM控制器由80C186XL狀態(tài)信號S2、S1和S0的解碼來檢測總線的開始、類型和結束。這些狀態(tài)線是在CLKOUT的上升沿開始有效,在CLKOUT的下降沿失效的。DRAM控制器發(fā)出的RAS和CAS信號應該在CLKOUT的下降沿同時有效,行列地址應該在CLKOUT上升沿附近提供。

DRAM控制器應該在CLKOUT的兩個沿都應能正常操作。通過啟用XC95C36的異步時鐘選擇項,每個XC95C36宏單元可以從可編程與陣列獲得時鐘。DRAM控制器使用80C186XL的CLKOUT信號作時鐘輸入。

DRAM控制器主要由兩個相互聯(lián)的狀態(tài)機構成。這兩個狀態(tài)機,使得DRAM的控制與80C186XL是否進行等待狀態(tài)無關。

利用CPLD技術和80C196XL時序特征實現DRAM控制器的設計

狀態(tài)機A和地址多路控制信號(MUX)在CLKOUT的上升沿鎖存。狀態(tài)機B和RAS及CAS的邏輯在CLKOUT的下降沿鎖存。DRAM控制器完整的VHDL語言[4,5]的源代碼可Email給cnhsx@sina.com索取。

DRAM控制器的狀態(tài)圖如圖4所示,狀態(tài)機A和B的起始條件分別是A0和B0。狀態(tài)機A初始化DRAM控制器的序列,狀態(tài)機B終止該序列。

在T2的下降沿,RAS邏輯采樣狀態(tài)機A的狀態(tài),鎖存的地址線和總經狀態(tài)信號。如果狀態(tài)機A在A1狀態(tài)(存儲器讀、寫或刷新周期)并且總線周期為DRAM使用,則XC95C36插入RAS信號。

在T2的上升沿,狀態(tài)機A也采樣鎖存的地址線。如果總線周期被DRAM占用,狀態(tài)機A將從狀態(tài)A1轉移到A2,否則狀態(tài)機A轉換到A3。至此控制轉移到狀態(tài)機B。MUX邏輯采樣RAS和BHE引腳的狀態(tài)。如果RAS有效(指示DRAM在訪問),并且總線周期下是刷新周期,XC95C36將插入MUX。MUX在行列地址之間切換,以便進行DRAM的讀寫操作。

在T3的下降沿,狀態(tài)機B采樣狀態(tài)機A。如果狀態(tài)機A處于狀態(tài)A2(DRAM訪問)或狀態(tài)A3(存儲器讀或寫,但不是DRAM訪問),狀態(tài)機B從狀態(tài)B0轉到B1。如果總線周期是一個DRAM訪問周期,XC95C36繼續(xù)保持RAS有效。CAS邏輯采樣MUX的狀態(tài)、鎖存地址A0、BHE和總線周期狀態(tài)。如果MUX有效(指示DRAM讀或寫),并且訪問低字節(jié),則XC95C36插入LCAS;如果MUX有效,并且微處理器訪問高字節(jié),XC95C36插入UCAS。DRAM讀訪問和DRAM刷新訪問不同之處在于:對刷新來說,不需要MUX、UCAS和LCAS。

在T3的上升沿,狀態(tài)機A等待狀態(tài)機B中斷此序列。如果MUX有效(DRAM讀或寫),它將保持有效。

有下一個降沿,狀態(tài)機B采樣總線狀態(tài)信號。如果狀態(tài)信號仍然有效,則此狀態(tài)為等待狀態(tài)Tw,狀態(tài)機B保持在狀態(tài)B1。如果這個狀態(tài)是等待狀態(tài),并且RAS有效(DRAM訪問),RAS保持有效;如果狀態(tài)為等待狀態(tài),并且UCAS和LCAS有效(DRAM讀或寫),UCAS和LCAS保持有效。

在等待狀態(tài)的上升沿,狀態(tài)機A繼續(xù)等待狀態(tài)機B來中斷此序列。如果MUX有效(DRAM讀或寫),則它在T3狀態(tài)里保持有效。

如果微處理器狀態(tài)信號無效,這個狀態(tài)則是一個T4狀態(tài),狀態(tài)機B從B1轉到B2.如果狀態(tài)是一個T4狀態(tài),并且RAS有效(DRAM訪問),則RAST4狀態(tài),并且RAS有效(DRAM訪問),則RAS邏輯也檢測無效狀態(tài)信號,并且XC95C36關閉RAS信號;如果狀態(tài)是一個T4狀態(tài),并且UCAS和LCAS有效(DRAM讀或寫),則CAS邏輯也采樣總線狀態(tài)信號;如果狀態(tài)信號無效,則XC95C36關閉UCAS和LCAS信號。

利用CPLD技術和80C196XL時序特征實現DRAM控制器的設計

在T4的上升沿,狀態(tài)機A采樣狀態(tài)機B的狀態(tài)。在狀態(tài)機B處于B2狀態(tài)的情況下,狀態(tài)機A從A2狀態(tài)(DRAM訪問)或A3狀態(tài)(存儲器讀或寫,但不是DRAM訪問)轉到A0。如果MUX有效,MUX邏輯檢查RAS的狀態(tài);如果RAS無效(指示一個終止周期),XC95C36關閉MUX。

在下一個CLKOUT下降沿,狀態(tài)機B無條件地從狀態(tài)B2轉到B0,終止DRAM序列。控制轉移給狀態(tài)機A。

三、80C186XL RCU單元的編程

要使DRAM正常工作,就必須對80C186XL中與DRAM刷新有關的寄存器進行正確編程。這些寄存器包括:刷新時鐘間隔寄存器(RFTIME寄存器)、刷新基地址寄存器(RFBASE寄存器)和刷新控制寄存器(RFCON寄存器)。

刷新時鐘間隔寄存器(RFTIME寄存器)的編程公式為:Trefresh×fcpu/(Rrow+Rrows×補償因子)。V53C8258的技術參數規(guī)定,其刷新周期Trefresh為8ms,存儲陣列行數Rrows為512??紤]到RCU取得總線控制權的延時,補償因子取0.05。因此,微處理器在fcpu=20MHz工作頻率下,RFTIME寄存器的取值為:0.008×20×10 6/(512+512×0.05),約為297.

刷新基地址寄存器(RFBASE寄存器)的編程。該寄存器的高7位,規(guī)定了DRAM容量大小。系統(tǒng)使用兩片V53C8258情況下,RFBASE的取值為00H,DRAM占用微處理器的存儲空間的00000H~7FFFFH(512KB)。

最后通過將刷新控制寄存器(RFCON寄存器)的REN位置位,來啟動刷新控制單元。

若使用80C186XL的節(jié)電模式,則要求重新編程這些值。在寫節(jié)電控制寄存器前,必須先用要時鐘分頻值去除原先設置在刷新間隔寄存器的值,來重新設置寄存器。

結束語

現在DRAM、CPLD的價格非常低,這樣設計者有機會在嵌入式計算機系統(tǒng)設計中考慮采用DRAM。80C186XL嵌入式微處理器廣泛應用于嵌入式計算機、程控通信工業(yè)控制系統(tǒng)中,具有良好的性價比,其性能和功能是80C31、80C196等單片機無法比擬的,并能充分利用大量的PC平臺軟件。本解決方案已在家庭電子證券產品中采用,獲得了良好的經濟效益和社會效益。

掌握CPLD技術和VHDL語言設計技巧是提升產品技術含量的重要途徑。上述CPLD還留在一些引腳和內部資源未使用,只要設計者將VHDL源代碼稍微作一些修改,就可以用這些引腳控制新增加的DRAM,提供總線準備輸出信號或DMA響應信號。

如果采用引腳數和宏單元較多的XC9672或XC95108CPLD,就可以將D觸發(fā)器(74HC74)、多路地址切換器(74HC157)、數據收發(fā)器(74HC245)和地址總線鎖存器(74HC373)等其它分立邏輯器件的功能全部集成到CPLD中,這樣系統(tǒng)集成度和可靠性將更加提高。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • cpld
    +關注

    關注

    32

    文章

    1259

    瀏覽量

    173880
  • 控制器
    +關注

    關注

    114

    文章

    17786

    瀏覽量

    193050
  • 寄存器
    +關注

    關注

    31

    文章

    5608

    瀏覽量

    129951
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    深度剖析UC284xL:高性能經濟型電流模式PWM控制器

    深度剖析UC284xL:高性能經濟型電流模式PWM控制器 在電源設計領域,選擇一款合適的PWM控制器至關重要。UC284xL系列控制器憑借其
    的頭像 發(fā)表于 03-01 09:40 ?535次閱讀

    深入解析 Z80C30/Z85C30 CMOS SCC 串行通信控制器

    深入解析 Z80C30/Z85C30 CMOS SCC 串行通信控制器 在電子設計領域,串行通信控制器實現數據高效傳輸的關鍵組件。Zilo
    的頭像 發(fā)表于 01-27 14:35 ?209次閱讀

    Zilog Z80C30/Z85C30 SCC:高性能串行通信控制器的深度解析

    Zilog Z80C30/Z85C30 SCC:高性能串行通信控制器的深度解析 在電子工程師的日常工作中,選擇合適的串行通信控制器對于實現
    的頭像 發(fā)表于 01-13 17:00 ?542次閱讀

    深入解析Zilog Z80C30/Z85C30:多功能串口通信控制器技術精髓

    深入解析Zilog Z80C30/Z85C30:多功能串口通信控制器技術精髓 在電子工程師的世界里,串口通信控制器就像是連接各個電子設備的
    的頭像 發(fā)表于 01-08 15:00 ?275次閱讀

    探索 NXP MC56F80xxx 數字信號控制器:特性、應用與設計要點

    探索 NXP MC56F80xxx 數字信號控制器:特性、應用與設計要點 在電子工程領域,數字信號控制器(DSC)因其結合了數字信號處理(DSP)的強大處理能力和微
    的頭像 發(fā)表于 12-24 17:20 ?650次閱讀

    深入剖析Z80C30/Z85C30 CMOS SCC串行通信控制器

    深入剖析Z80C30/Z85C30 CMOS SCC串行通信控制器 在當今的電子通信領域,串行通信控制器扮演著至關重要的角色。Zilog公司的Z80
    的頭像 發(fā)表于 11-26 16:22 ?1015次閱讀
    深入剖析Z<b class='flag-5'>80C</b>30/Z85<b class='flag-5'>C</b>30 CMOS SCC串行通信<b class='flag-5'>控制器</b>

    AG32 內置的CPLD 的DMA功能如何實現?

    CPLD進行通信 2、DMA配置流程 ?在MCU端預先配置DMA控制器,設置讀取CPLD中已準備數據的參數 ?配置完成后,DMA控制器進入待命狀態(tài) 3、數據傳輸
    發(fā)表于 10-31 15:42

    基于FPGA的DDR控制器設計

    DDR控制協(xié)議 DDR3讀寫控制器主要用于生成片外存儲DDR3 SDRAM進行讀寫操作所需要的時序,繼而實現對片外存儲
    發(fā)表于 10-21 14:30

    MCP22350 USB Type-C? PD 3.1端口控制器技術解析

    MAC與合作伙伴的USB Type-C器件實現基帶通信。MCP22350控制器包括八個可配置的通用I/O引腳,采用4mm x 4mm 28-QFN封裝。
    的頭像 發(fā)表于 09-30 15:26 ?1012次閱讀
    MCP22350 USB Type-<b class='flag-5'>C</b>? PD 3.1端口<b class='flag-5'>控制器</b><b class='flag-5'>技術</b>解析

    ?MCP22301 USB Type-C? PD 3.1控制器技術解析與應用指南

    獨立的小尺寸控制器可為USB Type-C插座提供電纜插頭方向和檢測。MCP22301 PD控制器通過集成的USB PD 3.1 MAC實現與合作伙伴USB Type-
    的頭像 發(fā)表于 09-30 15:21 ?1300次閱讀
    ?MCP22301 USB Type-<b class='flag-5'>C</b>? PD 3.1<b class='flag-5'>控制器</b><b class='flag-5'>技術</b>解析與應用指南

    如何使用GPIO模擬ARGB2 LED定時序列,并在M258系列微控制器(MCU)上實現彩虹波ARGB2 LED效果?

    使用GPIO模擬ARGB2 LED定時序列,并在M258系列微控制器(MCU)上實現彩虹波ARGB2 LED效果
    發(fā)表于 08-20 06:55

    ?LM3880三軌簡單電源時序控制器技術文檔總結

    :ADAS系統(tǒng)、攝像頭模塊 工業(yè)設備:安防攝像頭、FPGA供電時序控制 計算領域:服務、網絡設備處理電源管理 ? 3. 技術
    的頭像 發(fā)表于 08-19 14:23 ?959次閱讀
    ?LM3880三軌簡單電源<b class='flag-5'>時序</b><b class='flag-5'>控制器</b><b class='flag-5'>技術</b>文檔總結

    Texas Instruments UC284xL/UC284xL-Q1 PWM控制器特性/應用/框圖

    Texas Instruments UC284xL/UC284xL-Q1 PWM控制器是引腳對引腳兼容控制器件,是一款UC284xAQ/UC284xA-Q1升級版本。該
    的頭像 發(fā)表于 07-02 15:20 ?746次閱讀
    Texas Instruments UC284<b class='flag-5'>xL</b>/UC284<b class='flag-5'>xL</b>-Q1 PWM<b class='flag-5'>控制器</b>特性/應用/框圖

    高性能系列微控制器XL32F001開發(fā)板

    控制器的工作溫度范圍為-40°C?~?85°C,工作電壓范圍? 1.7V?~?5.5V 。芯片提供?sleep/stop?低功耗工作模式,可以滿足不同的低功耗應用。 XL32F001
    的頭像 發(fā)表于 06-10 11:22 ?688次閱讀
    高性能系列微<b class='flag-5'>控制器</b><b class='flag-5'>XL</b>32F001開發(fā)板

    I3C控制器角色轉移如何實現?

    I3C 控制器角色轉移如何實現
    發(fā)表于 03-14 10:08